Logo Search packages:      
Sourcecode: blender version File versions  Download package

KX_MeshProxy::KX_MeshProxy Class Reference

List of all members.


Detailed Description

A mesh object.

You can only change the vertex properties of a mesh object, not the mesh topology.

To use mesh objects effectively, you should know a bit about how the game engine handles them.
      1. Mesh Objects are converted from Blender at scene load.
      2. The Converter groups polygons by Material.  This means they can be sent to the
         renderer efficiently.  A material holds:
            1. The texture.
            2. The Blender material.
            3. The Tile properties
            4. The face properties - (From the "Texture Face" panel)
            5. Transparency & z sorting
            6. Light layer
            7. Polygon shape (triangle/quad)
            8. Game Object
      3. Verticies will be split by face if necessary.  Verticies can only be shared between
         faces if:
            1. They are at the same position
            2. UV coordinates are the same
            3. Their normals are the same (both polygons are "Set Smooth")
            4. They are the same colour
         For example: a cube has 24 verticies: 6 faces with 4 verticies per face.
         
The correct method of iterating over every L{KX_VertexProxy} in a game object::
      import GameLogic
      
      co = GameLogic.getcurrentController()
      obj = co.getOwner()
      
      m_i = 0
      mesh = obj.getMesh(m_i) # There can be more than one mesh...
      while mesh != None:
            for mat in range(mesh.getNumMaterials()):
                  for v_index in range(mesh.getVertexArrayLength(mat)):
                        vertex = mesh.getVertex(mat, v_index)
                        # Do something with vertex here...
                        # ... eg: colour the vertex red.
                        vertex.colour = [1.0, 0.0, 0.0, 1.0]
            m_i += 1
            mesh = obj.getMesh(m_i)

            

Definition at line 4 of file KX_MeshProxy.py.


Public Member Functions

def getMaterialName
def getNumMaterials
def getTextureName
def getVertex
def getVertexArrayLength
def reinstancePhysicsMesh

The documentation for this class was generated from the following file:

Generated by  Doxygen 1.6.0   Back to index