iTriangleMesh Struct Reference
This interface reprents a mesh of triangles. More...
Public Member Functions
|virtual uint32||GetChangeNumber () const =0|
|When this number changes you know the triangle mesh has changed (deformation has occured) since the last time you got another number from this function. |
|virtual csFlags &||GetFlags ()=0|
|Get flags for this triangle mesh. |
|virtual size_t||GetTriangleCount ()=0|
|Get the number of triangles for this mesh. |
|virtual csTriangle *||GetTriangles ()=0|
|Get the triangle table for this mesh. |
|virtual size_t||GetVertexCount ()=0|
|Get the number of vertices for this mesh. |
|virtual csVector3 *||GetVertices ()=0|
|Get the pointer to the array of vertices. |
|virtual void||Lock ()=0|
|Lock the triangle mesh. |
|virtual void||Unlock ()=0|
|Unlock the triangle mesh. |
This interface reprents a mesh of triangles.
It is useful to communicate geometry information outside of the engine. One place where this will be useful is for communicating geometry information to the collision detection plugin.
All Crystal Space mesh objects (things, sprites, ...) should implement and/or embed an implementation of this interface.
A triangle mesh has the concept of a vertex buffer and an array of triangles.
Main creators of instances implementing this interface:
- Almost all mesh objects have several implementations of this interface.
Main ways to get pointers to this interface:
Main users of this interface:
- Collision detection plugins (iCollideSystem)
- Visibility culler plugins (iVisibilityCuller)
- Shadow stencil plugin
Member Function Documentation
|virtual uint32 iTriangleMesh::GetChangeNumber||(||)|| const
|virtual csFlags& iTriangleMesh::GetFlags||(||)||
Get flags for this triangle mesh.
This is zero or a combination of the following flags:
- CS_TRIMESH_CLOSED: mesh is closed.
- CS_TRIMESH_NOTCLOSED: mesh is not closed.
- CS_TRIMESH_CONVEX: mesh is convex.
- CS_TRIMESH_NOTCONVEX: mesh is not convex.
- CS_TRIMESH_DEFORMABLE: mesh is deformable.
Note that if neither CS_TRIMESH_CLOSED nor CS_TRIMESH_NOTCLOSED are set then the closed state is not known. Setting both is illegal. Note that if neither CS_TRIMESH_CONVEX nor CS_TRIMESH_NOTCONVEX are set then the convex state is not known. Setting both is illegal.
|virtual size_t iTriangleMesh::GetTriangleCount||(||)||
|virtual csTriangle* iTriangleMesh::GetTriangles||(||)||
|virtual size_t iTriangleMesh::GetVertexCount||(||)||
|virtual csVector3* iTriangleMesh::GetVertices||(||)||
|virtual void iTriangleMesh::Lock||(||)||
|virtual void iTriangleMesh::Unlock||(||)||
The documentation for this struct was generated from the following file:
Generated for Crystal Space 2.1 by doxygen 1.6.1