16 #ifndef BT_STRIDING_MESHINTERFACE_H
17 #define BT_STRIDING_MESHINTERFACE_H
58 virtual void getLockedVertexIndexBase(
unsigned char **vertexbase,
int& numverts,
PHY_ScalarType& type,
int& stride,
unsigned char **indexbase,
int & indexstride,
int& numfaces,
PHY_ScalarType& indicestype,
int subpart=0)=0;
60 virtual void getLockedReadOnlyVertexIndexBase(
const unsigned char **vertexbase,
int& numverts,
PHY_ScalarType& type,
int& stride,
const unsigned char **indexbase,
int & indexstride,
int& numfaces,
PHY_ScalarType& indicestype,
int subpart=0)
const=0;
64 virtual void unLockVertexBase(
int subpart)=0;
66 virtual void unLockReadOnlyVertexBase(
int subpart)
const=0;
71 virtual int getNumSubParts()
const=0;
73 virtual void preallocateVertices(
int numverts)=0;
74 virtual void preallocateIndices(
int numindices)=0;
96 virtual int calculateSerializeBufferSize()
const;
99 virtual const char* serialize(
void* dataBuffer,
btSerializer* serializer)
const;
164 #endif //BT_STRIDING_MESHINTERFACE_H
btMeshPartData * m_meshPartsPtr
const btVector3 & getScaling() const
#define SIMD_FORCE_INLINE
virtual void getPremadeAabb(btVector3 *aabbMin, btVector3 *aabbMax) const
virtual int calculateSerializeBufferSize() const
void setScaling(const btVector3 &scaling)
do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64 ...
btVector3FloatData * m_vertices3f
btShortIntIndexData * m_indices16
btCharIndexTripletData * m_3indices8
do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64 ...
btShortIntIndexTripletData * m_3indices16
virtual void setPremadeAabb(const btVector3 &aabbMin, const btVector3 &aabbMax) const
virtual bool hasPremadeAabb() const
btStridingMeshInterface()
unsigned char m_values[3]
btVector3FloatData m_scaling
btVector3 can be used to represent 3D points and vectors.
#define ATTRIBUTE_ALIGNED16(a)
The btStridingMeshInterface is the interface class for high performance generic access to triangle me...
#define BT_DECLARE_ALIGNED_ALLOCATOR()
btIntIndexData * m_indices32
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.
btVector3DoubleData * m_vertices3d