18 #ifndef BT_MULTIMATERIAL_TRIANGLE_INDEX_VERTEX_ARRAY_H
19 #define BT_MULTIMATERIAL_TRIANGLE_INDEX_VERTEX_ARRAY_H
63 int numVertices,
btScalar* vertexBase,
int vertexStride,
64 int numMaterials,
unsigned char* materialBase,
int materialStride,
65 int* triangleMaterialsBase,
int materialIndexStride);
72 m_materials[m_materials.
size()-1].m_triangleType = triangleType;
75 virtual void getLockedMaterialBase(
unsigned char **materialBase,
int& numMaterials,
PHY_ScalarType& materialType,
int& materialStride,
76 unsigned char ** triangleMaterialBase,
int& numTriangles,
int& triangleMaterialStride,
PHY_ScalarType& triangleType ,
int subpart = 0);
78 virtual void getLockedReadOnlyMaterialBase(
const unsigned char **materialBase,
int& numMaterials,
PHY_ScalarType& materialType,
int& materialStride,
79 const unsigned char ** triangleMaterialBase,
int& numTriangles,
int& triangleMaterialStride,
PHY_ScalarType& triangleType,
int subpart = 0);
84 #endif //BT_MULTIMATERIAL_TRIANGLE_INDEX_VERTEX_ARRAY_H
int m_numMaterials
m_materialBase ==========> 2 btScalar values make up one material, friction then restitution ...
int m_numTriangles
m_numTriangles <=========== This exists in the btIndexedMesh object for the same subpart, but since we're padding the structure, it can be reproduced at no real cost m_triangleMaterials =====> 1 integer value makes up one entry eg: m_triangleMaterials[1] = 5; // This will set triangle 2 to use material 5
void push_back(const T &_Val)
btTriangleIndexVertexMaterialArray()
const unsigned char * m_triangleMaterialsBase
void addMaterialProperties(const btMaterialProperties &mat, PHY_ScalarType triangleType=PHY_INTEGER)
The btTriangleIndexVertexArray allows to access multiple triangle meshes, by indexing into existing t...
int size() const
return the number of elements in the array
PHY_ScalarType m_materialType
Teh btTriangleIndexVertexMaterialArray is built on TriangleIndexVertexArray The addition of a materia...
#define ATTRIBUTE_ALIGNED16(a)
MaterialArray m_materials
btAlignedObjectArray< btMaterialProperties > MaterialArray
PHY_ScalarType m_triangleType
m_triangleType <========== Automatically set in addMaterialProperties
#define BT_DECLARE_ALIGNED_ALLOCATOR()
int m_triangleMaterialStride
const unsigned char * m_materialBase
virtual ~btTriangleIndexVertexMaterialArray()
This file was created by Alex Silverman.
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
PHY_ScalarType
PHY_ScalarType enumerates possible scalar types.