CollisionInterface
Engine/source/T3D/components/collision/collisionInterfaces.h
Classes:
Public Types
PublicConstants { CollisionTimeoutValue = 250 }
Public Attributes
Signal< void(PhysicsCollision *collision) >
Signal< void(SceneObject *) >
Protected Attributes
Protected Static Attributes
Protected Functions
bool
checkEarlyOut(Point3F start, VectorF velocity, F32 time, Box3F objectBox, Point3F objectScale, Box3F collisionBox, U32 collisionMask, CollisionWorkingList & colWorkingList)
checkEarlyOut This function lets you trying and early out of any expensive collision checks by using simple extruded poly boxes representing our objects If it returns true, we know we won't hit with the given parameters and can successfully early out.
queueCollision(SceneObject * obj, const VectorF & vec)
Public Functions
bool
buildPolyList(PolyListContext context, AbstractPolyList * polyList, const Box3F & box, const SphereF & sphere)
bool
getCollision(S32 col)
checkCollisions
Convex *
handleCollision(Collision & col, VectorF velocity)
handleCollision This will take a collision and queue the collision info for the object so that in knows about the collision.
handleCollisionList(CollisionList & collisionList, VectorF velocity)
handleCollisionList This basically takes in a CollisionList and calls handleCollision for each.
Detailed Description
Public Types
PublicConstants
Enumerator
- CollisionTimeoutValue = 250
Public Attributes
Signal< void(PhysicsCollision *collision) > onCollisionChanged
Signal< void(SceneObject *) > onCollisionSignal
Signal< void(SceneObject *) > onContactSignal
Protected Attributes
U32 CollisionMoveMask
bool mBlockColliding
CollisionList mCollisionList
Vector< CollisionInterface * > mCollisionNotifyList
ContactInfo mContactInfo
Convex * mConvexList
CollisionTimeout * mTimeoutList
Box3F mWorkingQueryBox
Protected Static Attributes
CollisionTimeout * sFreeTimeoutList
Protected Functions
checkEarlyOut(Point3F start, VectorF velocity, F32 time, Box3F objectBox, Point3F objectScale, Box3F collisionBox, U32 collisionMask, CollisionWorkingList & colWorkingList)
checkEarlyOut This function lets you trying and early out of any expensive collision checks by using simple extruded poly boxes representing our objects If it returns true, we know we won't hit with the given parameters and can successfully early out.
If it returns false, our test case collided and we should do the full collision sim.
handleCollisionNotifyList()
queueCollision(SceneObject * obj, const VectorF & vec)
Public Functions
buildPolyList(PolyListContext context, AbstractPolyList * polyList, const Box3F & box, const SphereF & sphere)
Reimplemented by: CollisionComponent
clearCollisionList()
clearCollisionNotifyList()
doesBlockColliding()
getCollision(S32 col)
getCollisionData()
Reimplemented by: CollisionComponent
getCollisionList()
checkCollisions
getContactInfo()
getConvexList()
handleCollision(Collision & col, VectorF velocity)
handleCollision This will take a collision and queue the collision info for the object so that in knows about the collision.
handleCollisionList(CollisionList & collisionList, VectorF velocity)
handleCollisionList This basically takes in a CollisionList and calls handleCollision for each.
