17 #ifndef BT_COLLISION_WORLD_IMPORTER_H 18 #define BT_COLLISION_WORLD_IMPORTER_H 30 struct ConstraintInput;
166 #ifdef SUPPORT_GIMPACT_SHAPE_IMPORT 168 #endif //SUPPORT_GIMPACT_SHAPE_IMPORT 189 #endif //BT_WORLD_IMPORTER_H int getNumRigidBodies() const
btAlignedObjectArray< btTriangleIndexVertexArray * > m_allocatedTriangleIndexArrays
point to point constraint between two rigidbodies each with a pivotpoint that descibes the 'ballsocke...
btAlignedObjectArray< btCollisionShape * > m_allocatedCollisionShapes
virtual btOptimizedBvh * createOptimizedBvh()
acceleration and connectivity structures
btHashMap< btHashPtr, btTriangleInfoMap * > m_timMap
btAlignedObjectArray< int * > m_indexArrays
virtual btCollisionObject * createCollisionObject(const btTransform &startTransform, btCollisionShape *shape, const char *bodyName)
those virtuals are called by load and can be overridden by the user
The btAlignedObjectArray template class uses a subset of the stl::vector interface for its methods It...
virtual btTriangleIndexVertexArray * createMeshInterface(btStridingMeshInterfaceData &meshData)
virtual btCollisionShape * createCylinderShapeZ(btScalar radius, btScalar height)
btAlignedObjectArray< btVector3DoubleData * > m_doubleVertexArrays
virtual btCollisionShape * createCylinderShapeX(btScalar radius, btScalar height)
char * duplicateName(const char *name)
virtual btTriangleInfoMap * createTriangleInfoMap()
The btGeatConstraint will couple the angular velocity for two bodies around given local axis and rati...
The btMultiSphereShape represents the convex hull of a collection of spheres.
btGeneric6DofConstraint between two rigidbodies each with a pivotpoint that descibes the axis locatio...
virtual btCollisionShape * createSphereShape(btScalar radius)
btAlignedObjectArray< btStridingMeshInterfaceData * > m_allocatedbtStridingMeshInterfaceDatas
int getNumTriangleInfoMaps() const
The btCollisionShape class provides an interface for collision shapes that can be shared among btColl...
btCollisionWorld * m_collisionWorld
virtual btCollisionShape * createCapsuleShapeX(btScalar radius, btScalar height)
virtual class btConvexHullShape * createConvexHullShape()
This class manages a mesh supplied by the btStridingMeshInterface interface.
virtual btCollisionShape * createPlaneShape(const btVector3 &planeNormal, btScalar planeConstant)
shapes
hinge constraint between two rigidbodies each with a pivotpoint that descibes the axis location in lo...
btHashMap< btHashString, btCollisionObject * > m_nameColObjMap
virtual btBvhTriangleMeshShape * createBvhTriangleMeshShape(btStridingMeshInterface *trimesh, btOptimizedBvh *bvh)
btHashMap< btHashPtr, btCollisionObject * > m_bodyMap
The btHashMap template class implements a generic and lightweight hashmap.
btAlignedObjectArray< char * > m_allocatedNames
int getNumCollisionShapes() const
btAlignedObjectArray< unsigned char * > m_charIndexArrays
const char * getNameForPointer(const void *ptr) const
btCollisionObject * getRigidBodyByIndex(int index) const
void setVerboseMode(int verboseMode)
The btBvhTriangleMeshShape is a static-triangle mesh shape, it can only be used for fixed/non-moving ...
do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64 ...
virtual class btCompoundShape * createCompoundShape()
The btTriangleIndexVertexArray allows to access multiple triangle meshes, by indexing into existing t...
virtual btCollisionShape * createCapsuleShapeZ(btScalar radius, btScalar height)
btOptimizedBvh * getBvhByIndex(int index) const
virtual class btScaledBvhTriangleMeshShape * createScaledTrangleMeshShape(btBvhTriangleMeshShape *meshShape, const btVector3 &localScalingbtBvhTriangleMeshShape)
btCollisionShape * convertCollisionShape(btCollisionShapeData *shapeData)
btCollisionObject can be used to manage collision detection objects.
btAlignedObjectArray< btVector3FloatData * > m_floatVertexArrays
The btOptimizedBvh extends the btQuantizedBvh to create AABB tree for triangle meshes, through the btStridingMeshInterface.
btAlignedObjectArray< btCollisionObject * > m_allocatedRigidBodies
btHashMap< btHashPtr, btCollisionShape * > m_shapeMap
btVector3 can be used to represent 3D points and vectors.
btHashMap< btHashString, btCollisionShape * > m_nameShapeMap
btAlignedObjectArray< btCollisionObject * > m_allocatedCollisionObjects
btHashMap< btHashPtr, const char * > m_objectNameMap
btConeTwistConstraint can be used to simulate ragdoll joints (upper arm, leg etc) ...
The btStridingMeshInterface is the interface class for high performance generic access to triangle me...
CollisionWorld is interface and container for the collision detection.
btCollisionShape * getCollisionShapeByIndex(int index)
virtual btCollisionShape * createConeShapeY(btScalar radius, btScalar height)
virtual btStridingMeshInterfaceData * createStridingMeshInterfaceData(btStridingMeshInterfaceData *interfaceData)
btAlignedObjectArray< btTriangleInfoMap * > m_allocatedTriangleInfoMaps
bool convertAllObjects(btBulletSerializedArrays *arrays)
virtual class btMultiSphereShape * createMultiSphereShape(const btVector3 *positions, const btScalar *radi, int numSpheres)
virtual btCollisionShape * createBoxShape(const btVector3 &halfExtents)
virtual btCollisionShape * createCylinderShapeY(btScalar radius, btScalar height)
virtual class btTriangleIndexVertexArray * createTriangleMeshContainer()
virtual btCollisionShape * createConeShapeZ(btScalar radius, btScalar height)
The btScaledBvhTriangleMeshShape allows to instance a scaled version of an existing btBvhTriangleMesh...
virtual void deleteAllData()
delete all memory collision shapes, rigid bodies, constraints etc.
btHashMap< btHashPtr, btOptimizedBvh * > m_bvhMap
The btConvexHullShape implements an implicit convex hull of an array of vertices. ...
int getVerboseMode() const
virtual btCollisionShape * createConeShapeX(btScalar radius, btScalar height)
The btTriangleInfoMap stores edge angle information for some triangles. You can compute this informat...
The btCompoundShape allows to store multiple other btCollisionShapes This allows for moving concave c...
virtual ~btCollisionWorldImporter()
btAlignedObjectArray< short int * > m_shortIndexArrays
virtual btCollisionShape * createCapsuleShapeY(btScalar radius, btScalar height)
btCollisionObject * getCollisionObjectByName(const char *name)
btTriangleInfoMap * getTriangleInfoMapByIndex(int index) const
Generic 6 DOF constraint that allows to set spring motors to any translational and rotational DOF...
do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64 ...
btCollisionShape * getCollisionShapeByName(const char *name)
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
virtual btCollisionShape * createConvexTriangleMeshShape(btStridingMeshInterface *trimesh)
btCollisionWorldImporter(btCollisionWorld *world)
btAlignedObjectArray< btOptimizedBvh * > m_allocatedBvhs