ScummVM API documentation
dgCollisionConvex Class Reference
Inheritance diagram for dgCollisionConvex:
dgCollision dgCollisionBox dgCollisionCapsule dgCollisionChamferCylinder dgCollisionCompoundBreakable::dgCollisionConvexIntance dgCollisionCone dgCollisionConvexHull dgCollisionConvexModifier dgCollisionCylinder dgCollisionMesh::dgCollisionConvexPolygon dgCollisionNull dgCollisionSphere

Public Member Functions

virtual void CalcAABB (const dgMatrix &matrix, dgVector &p0, dgVector &p1) const
 
virtual void CalcAABBSimd (const dgMatrix &matrix, dgVector &p0, dgVector &p1) const
 
virtual bool OOBBTest (const dgMatrix &matrix, const dgCollisionConvex *const shape, void *const cacheOrder) const
 
virtual dgFloat32 RayCast (const dgVector &localP0, const dgVector &localP1, dgContactPoint &contactOut, OnRayPrecastAction preFilter, const dgBody *const body, void *const userData) const
 
virtual dgFloat32 RayCastSimd (const dgVector &localP0, const dgVector &localP1, dgContactPoint &contactOut, OnRayPrecastAction preFilter, const dgBody *const body, void *const userData) const
 
virtual dgVector SupportVertex (const dgVector &dir) const
 
virtual dgVector SupportVertexSimd (const dgVector &dir) const
 
virtual dgInt32 CalculatePlaneIntersection (const dgVector &normal, const dgVector &point, dgVector *const contactsOut) const
 
virtual dgInt32 CalculatePlaneIntersectionSimd (const dgVector &normal, const dgVector &point, dgVector *const contactsOut) const
 
dgInt32 GetVertexCount () const
 
virtual bool IsTriggerVolume () const
 
- Public Member Functions inherited from dgCollision
const dgMatrixGetOffsetMatrix () const
 
void SetOffsetMatrix (const dgMatrix &matrix)
 
dgCollisionID GetCollisionPrimityType () const
 
dgUnsigned32 SetUserDataID () const
 
void SetUserDataID (dgUnsigned32 userData)
 
dgInt32 IsType (RTTI type) const
 
virtual void SetCollisionBBox (const dgVector &p0, const dgVector &p1)=0
 
virtual bool IsEdgeIntersection () const
 
virtual void Serialize (dgSerialize callback, void *const userData) const =0
 
virtual void GetCollisionInfo (dgCollisionInfo *info) const
 
dgUnsigned32 GetSignature () const
 
virtual dgMatrix ModifierGetMatrix () const
 
virtual void ModifierSetMatrix (const dgMatrix &matrix)
 
virtual void SetBreakImpulse (dgFloat32 force)
 
virtual dgFloat32 GetBreakImpulse () const
 
dgCollisionAddRef ()
 
virtual dgInt32 Release ()
 
dgInt32 GetRefCount () const
 
dgMemoryAllocatorGetAllocator () const
 

Protected Member Functions

virtual void * GetUserData () const
 
virtual void SetUserData (void *const userData)
 
 dgCollisionConvex (dgMemoryAllocator *const allocator, dgUnsigned32 signature, const dgMatrix &matrix, dgCollisionID id)
 
 dgCollisionConvex (dgWorld *const world, dgDeserialize deserialization, void *const userData)
 
virtual void SetAsTriggerVolume (bool mode)
 
virtual void SerializeLow (dgSerialize callback, void *const userData) const
 
dgVector CalculateVolumeIntegral (const dgPlane &plane) const
 
dgFloat32 GetDiscretedAngleStep (dgFloat32 radius) const
 
dgConvexSimplexEdgeGetSupportEdge (const dgVector &dir) const
 
void SetVolumeAndCG ()
 
bool SanityCheck (dgPolyhedra &hull) const
 
virtual void DebugCollision (const dgMatrix &matrix, OnDebugCollisionMeshCallback callback, void *const userData) const
 
virtual dgFloat32 CalculateMassProperties (dgVector &inertia, dgVector &crossInertia, dgVector &centerOfMass) const
 
bool SanityCheck (dgInt32 count, const dgVector &normal, dgVector *const contactsOut) const
 
dgInt32 RectifyConvexSlice (dgInt32 count, const dgVector &normal, dgVector *const contactsOut) const
 
- Protected Member Functions inherited from dgCollision
 dgCollision (dgMemoryAllocator *const allocator, dgUnsigned32 signature, const dgMatrix &matrix, dgCollisionID id)
 
 dgCollision (dgWorld *const world, dgDeserialize deserialization, void *const userData)
 
void SetSignature (dgInt32 signature)
 
virtual dgInt32 CalculateSignature () const =0
 

Protected Attributes

dgVector m_volume
 
dgVector m_boxSize
 
dgVector m_boxOrigin
 
dgVector m_size_x
 
dgVector m_size_y
 
dgVector m_size_z
 
dgConvexSimplexEdgem_supportVertexStarCuadrant [8]
 
void * m_userData
 
dgVectorm_vertex
 
dgConvexSimplexEdgem_simplex
 
dgFloat32 m_boxMinRadius
 
dgFloat32 m_boxMaxRadius
 
dgFloat32 m_simplexVolume
 
dgUnsigned16 m_edgeCount
 
dgUnsigned16 m_vertexCount
 
dgUnsigned32 m_isTriggerVolume: 1
 
- Protected Attributes inherited from dgCollision
dgMatrix m_offset
 
dgMemoryAllocatorm_allocator
 
dgInt32 m_rtti
 
dgInt32 m_refCount
 
dgUnsigned32 m_userDataID
 
dgUnsigned32 m_signature
 
dgCollisionID m_collsionId
 

Static Protected Attributes

static dgVector m_multiResDir [8]
 
static dgVector m_multiResDir_sse [6]
 
static dgTriplex m_hullDirs [14]
 
static dgInt32 m_iniliazised
 
static dgInt32 m_rayCastSimplex [4][4]
 

Additional Inherited Members

- Public Types inherited from dgCollision
enum  RTTI {
  dgCollisionNull_RTTI = 1 << 0, dgCollisionBox_RTTI = 1 << 1, dgCollisionCone_RTTI = 1 << 2, dgCollisionSphere_RTTI = 1 << 3,
  dgCollisionEllipse_RTTI = 1 << 4, dgCollisionCapsule_RTTI = 1 << 5, dgCollisionCylinder_RTTI = 1 << 6, dgCollisionConvexHull_RTTI = 1 << 7,
  dgCollisionChamferCylinder_RTTI = 1 << 8, dgCollisionConvexModifier_RTTI = 1 << 9, dgCollisionConvexPolygon_RTTI = 1 << 10, dgConvexCollision_RTTI = 1 << 11,
  dgCollisionCompound_RTTI = 1 << 12, dgCollisionBVH_RTTI = 1 << 13, dgCollisionMesh_RTTI = 1 << 14, dgCollisionUserMesh_RTTI = 1 << 15,
  dgCollisionHeightField_RTTI = 1 << 16, dgCollisionScene_RTTI = 1 << 17, dgCollisionCompoundBreakable_RTTI = 1 << 18
}
 
- Static Public Member Functions inherited from dgCollision
static dgUnsigned32 Quantize (dgFloat32 value)
 
static dgUnsigned32 MakeCRC (void *buffer, int size)
 

The documentation for this class was generated from the following file: