NVIDIA(R) PhysX(R) SDK 3.4 API Reference: RaycastCCDManager Class Reference

NVIDIA PhysX SDK 3.4 API

RaycastCCDManager Class Reference
[Extensions]

Raycast-CCD manager. More...

#include <PxRaycastCCD.h>

List of all members.


Public Member Functions

 RaycastCCDManager (PxScene *scene)
 ~RaycastCCDManager ()
bool registerRaycastCCDObject (PxRigidDynamic *actor, PxShape *shape)
 Register dynamic object for raycast CCD.
void doRaycastCCD (bool doDynamicDynamicCCD)
 Perform raycast CCD. Call this after your simulate/fetchResults calls.

Private Attributes

RaycastCCDManagerInternal * mImpl

Detailed Description

Raycast-CCD manager.

Raycast-CCD is a simple and potentially cheaper alternative to the SDK's built-in continuous collision detection algorithm.

This implementation has some limitations:

Also, since it is raycast-based, the solution is not perfect. In particular:

  • small dynamic objects can still go through the static world if the ray goes through a crack between edges, or a small hole in the world (like the keyhole from a door).
  • dynamic-vs-dynamic CCD is very approximate. It only works well for fast-moving dynamic objects colliding against slow-moving dynamic objects.

Finally, since it is using the SDK's scene queries under the hood, it only works provided the simulation shapes also have scene-query shapes associated with them. That is, if the objects in the scene only use PxShapeFlag::eSIMULATION_SHAPE (and no PxShapeFlag::eSCENE_QUERY_SHAPE), then the raycast-CCD system will not work.


Constructor & Destructor Documentation

RaycastCCDManager::RaycastCCDManager ( PxScene scene  ) 

RaycastCCDManager::~RaycastCCDManager (  ) 


Member Function Documentation

void RaycastCCDManager::doRaycastCCD ( bool  doDynamicDynamicCCD  ) 

Perform raycast CCD. Call this after your simulate/fetchResults calls.

Parameters:
[in] doDynamicDynamicCCD True to enable dynamic-vs-dynamic CCD (more expensive, not always needed)

bool RaycastCCDManager::registerRaycastCCDObject ( PxRigidDynamic actor,
PxShape shape 
)

Register dynamic object for raycast CCD.

Parameters:
[in] actor object's actor
[in] shape object's shape
Returns:
True if success


Member Data Documentation

RaycastCCDManagerInternal* RaycastCCDManager::mImpl [private]


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



Copyright © 2008-2017 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved. www.nvidia.com