The btGhostObject can keep track of all objects that are overlapping By default, this overlap is based on the AABB This is useful for creating a character controller, collision sensors/triggers, explosions etc. More...
#include <btGhostObject.h>
Public Member Functions | |
btGhostObject () | |
virtual | ~btGhostObject () |
void | convexSweepTest (const class btConvexShape *castShape, const btTransform &convexFromWorld, const btTransform &convexToWorld, btCollisionWorld::ConvexResultCallback &resultCallback, btScalar allowedCcdPenetration=0.f) const |
void | rayTest (const btVector3 &rayFromWorld, const btVector3 &rayToWorld, btCollisionWorld::RayResultCallback &resultCallback) const |
virtual void | addOverlappingObjectInternal (btBroadphaseProxy *otherProxy, btBroadphaseProxy *thisProxy=0) |
this method is mainly for expert/internal use only. | |
virtual void | removeOverlappingObjectInternal (btBroadphaseProxy *otherProxy, btDispatcher *dispatcher, btBroadphaseProxy *thisProxy=0) |
this method is mainly for expert/internal use only. | |
int | getNumOverlappingObjects () const |
btCollisionObject * | getOverlappingObject (int index) |
const btCollisionObject * | getOverlappingObject (int index) const |
btAlignedObjectArray < btCollisionObject * > & | getOverlappingPairs () |
const btAlignedObjectArray < btCollisionObject * > | getOverlappingPairs () const |
Static Public Member Functions | |
static const btGhostObject * | upcast (const btCollisionObject *colObj) |
static btGhostObject * | upcast (btCollisionObject *colObj) |
Protected Attributes | |
btAlignedObjectArray < btCollisionObject * > | m_overlappingObjects |
The btGhostObject can keep track of all objects that are overlapping By default, this overlap is based on the AABB This is useful for creating a character controller, collision sensors/triggers, explosions etc.
We plan on adding rayTest and other queries for the btGhostObject
Definition at line 34 of file btGhostObject.h.
btGhostObject::btGhostObject | ( | ) |
Definition at line 21 of file btGhostObject.cpp.
btGhostObject::~btGhostObject | ( | ) | [virtual] |
btGhostObject should have been removed from the world, so no overlapping objects
Definition at line 26 of file btGhostObject.cpp.
void btGhostObject::addOverlappingObjectInternal | ( | btBroadphaseProxy * | otherProxy, | |
btBroadphaseProxy * | thisProxy = 0 | |||
) | [virtual] |
this method is mainly for expert/internal use only.
if this linearSearch becomes too slow (too many overlapping objects) we should add a more appropriate data structure
Reimplemented in btPairCachingGhostObject.
Definition at line 33 of file btGhostObject.cpp.
void btGhostObject::convexSweepTest | ( | const class btConvexShape * | castShape, | |
const btTransform & | convexFromWorld, | |||
const btTransform & | convexToWorld, | |||
btCollisionWorld::ConvexResultCallback & | resultCallback, | |||
btScalar | allowedCcdPenetration = 0.f | |||
) | const |
int btGhostObject::getNumOverlappingObjects | ( | ) | const [inline] |
Definition at line 55 of file btGhostObject.h.
btCollisionObject* btGhostObject::getOverlappingObject | ( | int | index | ) | [inline] |
Definition at line 60 of file btGhostObject.h.
const btCollisionObject* btGhostObject::getOverlappingObject | ( | int | index | ) | const [inline] |
Definition at line 65 of file btGhostObject.h.
btAlignedObjectArray<btCollisionObject*>& btGhostObject::getOverlappingPairs | ( | ) | [inline] |
Definition at line 70 of file btGhostObject.h.
const btAlignedObjectArray<btCollisionObject*> btGhostObject::getOverlappingPairs | ( | ) | const [inline] |
Definition at line 75 of file btGhostObject.h.
void btGhostObject::rayTest | ( | const btVector3 & | rayFromWorld, | |
const btVector3 & | rayToWorld, | |||
btCollisionWorld::RayResultCallback & | resultCallback | |||
) | const |
Definition at line 146 of file btGhostObject.cpp.
void btGhostObject::removeOverlappingObjectInternal | ( | btBroadphaseProxy * | otherProxy, | |
btDispatcher * | dispatcher, | |||
btBroadphaseProxy * | thisProxy = 0 | |||
) | [virtual] |
this method is mainly for expert/internal use only.
Reimplemented in btPairCachingGhostObject.
Definition at line 46 of file btGhostObject.cpp.
static const btGhostObject* btGhostObject::upcast | ( | const btCollisionObject * | colObj | ) | [inline, static] |
Definition at line 84 of file btGhostObject.h.
static btGhostObject* btGhostObject::upcast | ( | btCollisionObject * | colObj | ) | [inline, static] |
Definition at line 90 of file btGhostObject.h.
Definition at line 38 of file btGhostObject.h.