Blender  V3.3
Classes | Functions | Variables
btConvexConcaveCollisionAlgorithm.h File Reference
#include "btActivatingCollisionAlgorithm.h"
#include "BulletCollision/BroadphaseCollision/btDispatcher.h"
#include "BulletCollision/BroadphaseCollision/btBroadphaseInterface.h"
#include "BulletCollision/CollisionShapes/btTriangleCallback.h"
#include "BulletCollision/NarrowPhaseCollision/btPersistentManifold.h"
#include "BulletCollision/BroadphaseCollision/btBroadphaseProxy.h"
#include "btCollisionCreateFunc.h"

Go to the source code of this file.

Classes

struct  CreateFunc
 
struct  SwappedCreateFunc
 

Functions

 BT_DECLARE_ALIGNED_ALLOCATOR ()
 
 btConvexTriangleCallback (btDispatcher *dispatcher, const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap, bool isSwapped)
 
void setTimeStepAndCounters (btScalar collisionMarginTriangle, const btDispatcherInfo &dispatchInfo, const btCollisionObjectWrapper *convexBodyWrap, const btCollisionObjectWrapper *triBodyWrap, btManifoldResult *resultOut)
 
void clearWrapperData ()
 
virtual ~btConvexTriangleCallback ()
 
virtual void processTriangle (btVector3 *triangle, int partId, int triangleIndex)
 
void clearCache ()
 
SIMD_FORCE_INLINE const btVector3getAabbMin () const
 
SIMD_FORCE_INLINE const btVector3getAabbMax () const
 
 btConvexConcaveCollisionAlgorithm (const btCollisionAlgorithmConstructionInfo &ci, const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap, bool isSwapped)
 
virtual ~btConvexConcaveCollisionAlgorithm ()
 
virtual void processCollision (const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap, const btDispatcherInfo &dispatchInfo, btManifoldResult *resultOut)
 
btScalar calculateTimeOfImpact (btCollisionObject *body0, btCollisionObject *body1, const btDispatcherInfo &dispatchInfo, btManifoldResult *resultOut)
 
virtual void getAllContactManifolds (btManifoldArray &manifoldArray)
 

Variables

btConvexTriangleCallback __pad0__
 For each triangle in the concave mesh that overlaps with the AABB of a convex (m_convexProxy), processTriangle is called. More...
 
btVector3 m_aabbMax
 
const btCollisionObjectWrapperm_convexBodyWrap
 
const btCollisionObjectWrapperm_triBodyWrap
 
btManifoldResultm_resultOut
 
btDispatcherm_dispatcher
 
const btDispatcherInfom_dispatchInfoPtr
 
btScalar m_collisionMarginTriangle
 
int m_triangleCount
 
btPersistentManifoldm_manifoldPtr
 
btConvexConcaveCollisionAlgorithm __pad1__
 btConvexConcaveCollisionAlgorithm supports collision between convex shapes and (concave) trianges meshes. More...
 
bool m_isSwapped
 

Function Documentation

◆ BT_DECLARE_ALIGNED_ALLOCATOR()

BT_DECLARE_ALIGNED_ALLOCATOR ( )

◆ btConvexConcaveCollisionAlgorithm()

btConvexConcaveCollisionAlgorithm::btConvexConcaveCollisionAlgorithm ( const btCollisionAlgorithmConstructionInfo ci,
const btCollisionObjectWrapper body0Wrap,
const btCollisionObjectWrapper body1Wrap,
bool  isSwapped 
)

◆ btConvexTriangleCallback()

btConvexTriangleCallback::btConvexTriangleCallback ( btDispatcher dispatcher,
const btCollisionObjectWrapper body0Wrap,
const btCollisionObjectWrapper body1Wrap,
bool  isSwapped 
)

◆ calculateTimeOfImpact()

btScalar calculateTimeOfImpact ( btCollisionObject body0,
btCollisionObject body1,
const btDispatcherInfo dispatchInfo,
btManifoldResult resultOut 
)

◆ clearCache()

void clearCache ( )

◆ clearWrapperData()

void clearWrapperData ( )

Definition at line 54 of file btConvexConcaveCollisionAlgorithm.h.

References m_convexBodyWrap, and m_triBodyWrap.

◆ getAabbMax()

SIMD_FORCE_INLINE const btVector3& getAabbMax ( ) const

Definition at line 69 of file btConvexConcaveCollisionAlgorithm.h.

References m_aabbMax.

◆ getAabbMin()

SIMD_FORCE_INLINE const btVector3& getAabbMin ( ) const

Definition at line 65 of file btConvexConcaveCollisionAlgorithm.h.

References m_aabbMin.

◆ getAllContactManifolds()

virtual void getAllContactManifolds ( btManifoldArray manifoldArray)
virtual

Definition at line 7 of file btEmptyCollisionAlgorithm.h.

◆ processCollision()

virtual void processCollision ( const btCollisionObjectWrapper body0Wrap,
const btCollisionObjectWrapper body1Wrap,
const btDispatcherInfo dispatchInfo,
btManifoldResult resultOut 
)
virtual

◆ processTriangle()

virtual void processTriangle ( btVector3 triangle,
int  partId,
int  triangleIndex 
)
virtual

◆ setTimeStepAndCounters()

void setTimeStepAndCounters ( btScalar  collisionMarginTriangle,
const btDispatcherInfo dispatchInfo,
const btCollisionObjectWrapper convexBodyWrap,
const btCollisionObjectWrapper triBodyWrap,
btManifoldResult resultOut 
)

◆ ~btConvexConcaveCollisionAlgorithm()

btConvexConcaveCollisionAlgorithm::~btConvexConcaveCollisionAlgorithm ( )
virtual

Definition at line 38 of file btConvexConcaveCollisionAlgorithm.cpp.

◆ ~btConvexTriangleCallback()

btConvexTriangleCallback::~btConvexTriangleCallback ( )
virtual

Variable Documentation

◆ __pad0__

For each triangle in the concave mesh that overlaps with the AABB of a convex (m_convexProxy), processTriangle is called.

Definition at line 30 of file btConvexConcaveCollisionAlgorithm.h.

◆ __pad1__

btConvexConcaveCollisionAlgorithm supports collision between convex shapes and (concave) trianges meshes.

Definition at line 77 of file btConvexConcaveCollisionAlgorithm.h.

◆ m_aabbMax

btVector3 m_aabbMax

Definition at line 33 of file btConvexConcaveCollisionAlgorithm.h.

Referenced by getAabbMax().

◆ m_collisionMarginTriangle

btScalar m_collisionMarginTriangle

Definition at line 41 of file btConvexConcaveCollisionAlgorithm.h.

◆ m_convexBodyWrap

const btCollisionObjectWrapper* m_convexBodyWrap

◆ m_dispatcher

btDispatcher* m_dispatcher

◆ m_dispatchInfoPtr

const btDispatcherInfo* m_dispatchInfoPtr

Definition at line 40 of file btConvexConcaveCollisionAlgorithm.h.

◆ m_isSwapped

bool m_isSwapped

Definition at line 81 of file btConvexConcaveCollisionAlgorithm.h.

◆ m_manifoldPtr

btPersistentManifold* m_manifoldPtr

◆ m_resultOut

btManifoldResult* m_resultOut

Definition at line 38 of file btConvexConcaveCollisionAlgorithm.h.

◆ m_triangleCount

int m_triangleCount

Definition at line 46 of file btConvexConcaveCollisionAlgorithm.h.

◆ m_triBodyWrap

const btCollisionObjectWrapper* m_triBodyWrap