WIP example for real-time collision detection features of Bullet
This commit is contained in:
42
examples/Collision/Internal/RealTimeBullet3CollisionSdk.h
Normal file
42
examples/Collision/Internal/RealTimeBullet3CollisionSdk.h
Normal file
@@ -0,0 +1,42 @@
|
||||
#ifndef REAL_TIME_COLLISION_SDK_H
|
||||
#define REAL_TIME_COLLISION_SDK_H
|
||||
|
||||
#include "CollisionSdkInterface.h"
|
||||
|
||||
class RealTimeBullet3CollisionSdk : public CollisionSdkInterface
|
||||
{
|
||||
struct RealTimeBullet3CollisionSdkInternalData* m_internalData;
|
||||
|
||||
public:
|
||||
|
||||
RealTimeBullet3CollisionSdk();
|
||||
|
||||
virtual ~RealTimeBullet3CollisionSdk();
|
||||
|
||||
virtual plCollisionWorldHandle createCollisionWorld(int maxNumObjsCapacity, int maxNumShapesCapacity, int maxNumPairsCapacity);
|
||||
|
||||
virtual void deleteCollisionWorld(plCollisionWorldHandle worldHandle);
|
||||
|
||||
virtual plCollisionShapeHandle createSphereShape(plCollisionWorldHandle worldHandle, plReal radius);
|
||||
virtual void deleteShape(plCollisionWorldHandle worldHandle, plCollisionShapeHandle shape);
|
||||
|
||||
virtual void addCollisionObject(plCollisionWorldHandle world, plCollisionObjectHandle object);
|
||||
virtual void removeCollisionObject(plCollisionWorldHandle world, plCollisionObjectHandle object);
|
||||
|
||||
virtual plCollisionObjectHandle createCollisionObject( void* userPointer, int userIndex, plCollisionShapeHandle cshape ,
|
||||
plVector3 startPosition,plQuaternion startOrientation );
|
||||
virtual void deleteCollisionObject(plCollisionObjectHandle body);
|
||||
virtual void setCollisionObjectTransform(plCollisionObjectHandle body,
|
||||
plVector3 position,plQuaternion orientation );
|
||||
|
||||
virtual int collide(plCollisionWorldHandle world,plCollisionObjectHandle colA, plCollisionObjectHandle colB,
|
||||
lwContactPoint* pointsOut, int pointCapacity);
|
||||
|
||||
virtual void collideWorld( plCollisionWorldHandle world,
|
||||
plNearCallback filter, void* userData);
|
||||
|
||||
static plCollisionSdkHandle createRealTimeBullet3CollisionSdkHandle();
|
||||
};
|
||||
|
||||
|
||||
#endif //REAL_TIME_COLLISION_SDK_H
|
||||
Reference in New Issue
Block a user