PxTriangleMeshDesc
Defined in include/cooking/PxTriangleMeshDesc.h
-
class PxTriangleMeshDesc : public PxSimpleTriangleMesh
Descriptor class for PxTriangleMesh.
Note that this class is derived from PxSimpleTriangleMesh which contains the members that describe the basic mesh. The mesh data is copied when an PxTriangleMesh object is created from this descriptor. After the call the user may discard the triangle data.
See also
PxTriangleMesh PxTriangleMeshGeometry PxShape
Public Functions
-
inline PxTriangleMeshDesc()
Constructor sets to default.
-
inline void setToDefault()
(re)sets the structure to the default.
-
inline bool isValid() const
Returns true if the descriptor is valid.
- Returns
true if the current settings are valid
Public Members
-
PxTypedStridedData<const PxMaterialTableIndex> materialIndices
Optional pointer to first material index, or NULL.
There are PxSimpleTriangleMesh::numTriangles indices in total. Caller may add materialIndexStride bytes to the pointer to access the next triangle.
When a triangle mesh collides with another object, a material is required at the collision point. If materialIndices is NULL, then the material of the PxShape instance is used. Otherwise, if the point of contact is on a triangle with index i, then the material index is determined as: PxMaterialTableIndex index = *(PxMaterialTableIndex *)(((PxU8*)materialIndices) + materialIndexStride * i);
If the contact point falls on a vertex or an edge, a triangle adjacent to the vertex or edge is selected, and its index used to look up a material. The selection is arbitrary but consistent over time.
Default: NULL
See also
materialIndexStride
-
PxSDFDesc *sdfDesc
SDF descriptor.
When this descriptor is set, a signed distance field (SDF) is calculated. SDF collisions only work when the GPU solver is used to run the simulation. The GPU solver is enabled by setting the flag PxSceneFlag::eENABLE_GPU_DYNAMICS in the scene description.
Default: NULL
-
PxBoundedData points
Pointer to first vertex point.
-
PxBoundedData triangles
Pointer to first triangle.
Caller may add triangleStrideBytes bytes to the pointer to access the next triangle.
These are triplets of 0 based indices: vert0 vert1 vert2 vert0 vert1 vert2 vert0 vert1 vert2 …
where vertex is either a 32 or 16 bit unsigned integer. There are numTriangles*3 indices.
This is declared as a void pointer because it is actually either an PxU16 or a PxU32 pointer.
-
PxMeshFlags flags
Flags bits, combined from values of the enum PxMeshFlag.
-
inline PxTriangleMeshDesc()