RavEngine
Loading...
Searching...
No Matches
Physics
Collaboration diagram for Physics:

Namespaces

namespace  physx
 Sorts an array of objects in ascending order, assuming that the predicate implements the < operator:
 

Classes

struct  physx::PxArticulationAxis
 
struct  physx::PxArticulationMotion
 
struct  physx::PxArticulationJointType
 
struct  physx::PxArticulationFlag
 
struct  physx::PxArticulationDriveType
 
struct  physx::PxArticulationLimit
 Data structure to set articulation joint limits. More...
 
struct  physx::PxArticulationDrive
 Data structure for articulation joint drive configuration. More...
 

Typedefs

typedef PxFlags< PxArticulationMotion::Enum, PxU8 > physx::PxArticulationMotions
 
typedef PxFlags< PxArticulationFlag::Enum, PxU8 > physx::PxArticulationFlags
 

Functions

PX_C_EXPORT PX_PHYSX_CORE_API physx::PxParticleClothPreProcessor *PX_CALL_CONV PxCreateParticleClothPreProcessor (physx::PxCudaContextManager *cudaContextManager)
 Create a particle cloth preprocessor.
 
PX_DEPRECATED PX_C_EXPORT PX_PHYSX_CORE_API void PX_CALL_CONV PxRegisterArticulationsReducedCoordinate (physx::PxPhysics &physics)
 Enables the usage of the reduced coordinate articulations feature. This function is called automatically inside PxCreatePhysics(). On resource constrained platforms, it is possible to call PxCreateBasePhysics() and then NOT call this function to save on code memory if your application does not use reduced coordinate articulations. In this case the linker should strip out the relevant implementation code from the library. If you need to use reduced coordinate articulations but not some other optional component, you shoud call PxCreateBasePhysics() followed by this call.
 
PX_DEPRECATED PX_C_EXPORT PX_PHYSX_CORE_API void PX_CALL_CONV PxRegisterHeightFields (physx::PxPhysics &physics)
 Enables the usage of the heightfield feature.
 
PX_DEPRECATED PX_C_EXPORT PX_PHYSX_CORE_API physx::PxPhysics *PX_CALL_CONV PxCreateBasePhysics (physx::PxU32 version, physx::PxFoundation &foundation, const physx::PxTolerancesScale &scale, bool trackOutstandingAllocations=false, physx::PxPvd *pvd=NULL, physx::PxOmniPvd *omniPvd=NULL)
 Creates an instance of the physics SDK with minimal additional components registered.
 
PX_INLINE physx::PxPhysics * PxCreatePhysics (physx::PxU32 version, physx::PxFoundation &foundation, const physx::PxTolerancesScale &scale, bool trackOutstandingAllocations=false, physx::PxPvd *pvd=NULL, physx::PxOmniPvd *omniPvd=NULL)
 Creates an instance of the physics SDK.
 
PX_C_EXPORT PX_PHYSX_CORE_API physx::PxPhysics &PX_CALL_CONV PxGetPhysics ()
 Retrieves the Physics SDK after it has been created.
 

Detailed Description

Configuration include file for PhysX SDK

Function Documentation

◆ PxCreateBasePhysics()

PX_DEPRECATED PX_C_EXPORT PX_PHYSX_CORE_API physx::PxPhysics *PX_CALL_CONV PxCreateBasePhysics ( physx::PxU32  version,
physx::PxFoundation &  foundation,
const physx::PxTolerancesScale &  scale,
bool  trackOutstandingAllocations = false,
physx::PxPvd *  pvd = NULL,
physx::PxOmniPvd *  omniPvd = NULL 
)

Creates an instance of the physics SDK with minimal additional components registered.

Creates an instance of this class. May not be a class member to avoid name mangling. Pass the constant PX_PHYSICS_VERSION as the argument. There may be only one instance of this class per process. Calling this method after an instance has been created already will result in an error message and NULL will be returned.

Parameters
versionVersion number we are expecting (should be PX_PHYSICS_VERSION)
foundationFoundation instance (see PxFoundation)
scalevalues used to determine default tolerances for objects at creation time
trackOutstandingAllocationstrue if you want to track memory allocations so a debugger connection partway through your physics simulation will get an accurate map of everything that has been allocated so far. This could have a memory and performance impact on your simulation hence it defaults to off.
pvdWhen pvd points to a valid PxPvd instance (PhysX Visual Debugger), a connection to the specified PxPvd instance is created. If pvd is NULL no connection will be attempted.
omniPvdWhen omniPvd points to a valid PxOmniPvd instance PhysX will sample its internal structures to the defined OmniPvd output streams set in the PxOmniPvd object.
Returns
PxPhysics instance on success, NULL if operation failed
See also
PxPhysics, PxFoundation, PxTolerancesScale, PxPvd, PxOmniPvd
Deprecated:

◆ PxCreateParticleClothPreProcessor()

PX_C_EXPORT PX_PHYSX_CORE_API physx::PxParticleClothPreProcessor *PX_CALL_CONV PxCreateParticleClothPreProcessor ( physx::PxCudaContextManager *  cudaContextManager)

Create a particle cloth preprocessor.

Parameters
[in]cudaContextManagerA cuda context manager.

See #PxParticleClothDesc, #PxPartitionedParticleCloth.

◆ PxCreatePhysics()

PX_INLINE physx::PxPhysics * PxCreatePhysics ( physx::PxU32  version,
physx::PxFoundation &  foundation,
const physx::PxTolerancesScale &  scale,
bool  trackOutstandingAllocations = false,
physx::PxPvd *  pvd = NULL,
physx::PxOmniPvd *  omniPvd = NULL 
)

Creates an instance of the physics SDK.

Creates an instance of this class. May not be a class member to avoid name mangling. Pass the constant PX_PHYSICS_VERSION as the argument. There may be only one instance of this class per process. Calling this method after an instance has been created already will result in an error message and NULL will be returned.

Calling this will register all optional code modules (Articulations and HeightFields), preparing them for use. If you do not need some of these modules, consider calling PxCreateBasePhysics() instead and registering needed modules manually.

Parameters
versionVersion number we are expecting (should be PX_PHYSICS_VERSION)
foundationFoundation instance (see PxFoundation)
scalevalues used to determine default tolerances for objects at creation time
trackOutstandingAllocationstrue if you want to track memory allocations so a debugger connection partway through your physics simulation will get an accurate map of everything that has been allocated so far. This could have a memory and performance impact on your simulation hence it defaults to off.
pvdWhen pvd points to a valid PxPvd instance (PhysX Visual Debugger), a connection to the specified PxPvd instance is created. If pvd is NULL no connection will be attempted.
omniPvdWhen omniPvd points to a valid PxOmniPvd instance PhysX will sample its internal structures to the defined OmniPvd output streams set in the PxOmniPvd object.
Returns
PxPhysics instance on success, NULL if operation failed
See also
PxPhysics, PxCreateBasePhysics, PxRegisterArticulationsReducedCoordinate, PxRegisterHeightFields

◆ PxGetPhysics()

PX_C_EXPORT PX_PHYSX_CORE_API physx::PxPhysics &PX_CALL_CONV PxGetPhysics ( )

Retrieves the Physics SDK after it has been created.

Before using this function the user must call PxCreatePhysics() or PxCreateBasePhysics().

Note
The behavior of this method is undefined if the Physics SDK instance has not been created already.

◆ PxRegisterArticulationsReducedCoordinate()

PX_DEPRECATED PX_C_EXPORT PX_PHYSX_CORE_API void PX_CALL_CONV PxRegisterArticulationsReducedCoordinate ( physx::PxPhysics &  physics)

Enables the usage of the reduced coordinate articulations feature. This function is called automatically inside PxCreatePhysics(). On resource constrained platforms, it is possible to call PxCreateBasePhysics() and then NOT call this function to save on code memory if your application does not use reduced coordinate articulations. In this case the linker should strip out the relevant implementation code from the library. If you need to use reduced coordinate articulations but not some other optional component, you shoud call PxCreateBasePhysics() followed by this call.

Deprecated:

◆ PxRegisterHeightFields()

PX_DEPRECATED PX_C_EXPORT PX_PHYSX_CORE_API void PX_CALL_CONV PxRegisterHeightFields ( physx::PxPhysics &  physics)

Enables the usage of the heightfield feature.

This call will link the default 'unified' implementation of heightfields which is identical to the narrow phase of triangle meshes. This function is called automatically inside PxCreatePhysics().

On resource constrained platforms, it is possible to call PxCreateBasePhysics() and then NOT call this function to save on code memory if your application does not use heightfields. In this case the linker should strip out the relevant implementation code from the library. If you need to use heightfield but not some other optional component, you shoud call PxCreateBasePhysics() followed by this call.

You must call this function at a time where no ::PxScene instance exists, typically before calling PxPhysics::createScene(). This is to prevent a change to the heightfield implementation code at runtime which would have undefined results.

Calling PxCreateBasePhysics() and then attempting to create a heightfield shape without first calling PxRegisterHeightFields(), will result in an error.

Deprecated: