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.
| const btCollisionObject* btGhostObject::getOverlappingObject | ( | int | index | ) | const [inline] |
Definition at line 65 of file btGhostObject.h.
| btCollisionObject* btGhostObject::getOverlappingObject | ( | int | index | ) | [inline] |
Definition at line 60 of file btGhostObject.h.
| const btAlignedObjectArray<btCollisionObject*> btGhostObject::getOverlappingPairs | ( | ) | const [inline] |
Definition at line 75 of file btGhostObject.h.
| btAlignedObjectArray<btCollisionObject*>& btGhostObject::getOverlappingPairs | ( | ) | [inline] |
Definition at line 70 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 btGhostObject* btGhostObject::upcast | ( | btCollisionObject * | colObj | ) | [inline, static] |
Definition at line 90 of file btGhostObject.h.
| static const btGhostObject* btGhostObject::upcast | ( | const btCollisionObject * | colObj | ) | [inline, static] |
Definition at line 84 of file btGhostObject.h.
Definition at line 38 of file btGhostObject.h.
1.6.1