PxWorld

Engine/source/T3D/physics/physx/pxWorld.h

More...

Static Methods

bool
restartSDK(bool destroyOnly, PxWorld * clientWorld, PxWorld * serverWorld)

Protected Static Attributes

The console stream for PhysX error reporting.

NxCookingInterface *

The mesh cooking interface which is loaded on first use.

Protected Functions

bool
_init(bool isServer, ProcessList * processList)

Public Functions

castRay(const Point3F & start, const Point3F & end, U32 bodyTypes)
bool
castRay(const Point3F & startPnt, const Point3F & endPnt, RayInfo * ri, const Point3F & impulse)

An abstract way to raycast into any type of PhysicsWorld, in a way that mirrors a Torque-style raycast.

NxController *
createController(NxControllerDesc & desc)
NxMaterial *
createMaterial(NxMaterialDesc & material)

Tears down the physics world destroying any existing bodies, joints, and controllers.

explosion(const Point3F & pos, F32 radius, F32 forceMagnitude)

Returns the contact reporter for this scene.

bool
NxScene *
bool
initWorld(bool isServer, ProcessList * processList)

Prepare the physics world for use.

bool

Returns true if the physics world is active and simulating.

bool

Overloaded to do debug drawing.

releaseActor(NxActor & actor)
releaseCloth(NxCloth & cloth)
releaseClothMesh(NxClothMesh & clothMesh)
releaseController(NxController & controller)
releaseFluid(NxFluid & fluid)
releaseHeightField(NxHeightField & heightfield)
releaseJoint(NxJoint & joint)
releaseMaterial(NxMaterial & mat)
setEnabled(bool enabled)
tickPhysics(U32 elapsedMs)

Public Static Functions

NxCookingInterface *

Returns the cooking interface.

Detailed Description

Static Methods

restartSDK(bool destroyOnly, PxWorld * clientWorld, PxWorld * serverWorld)

releaseWriteLocks()

Protected Attributes

Vector< NxActor * > mCatchupQueue 
PxContactReporter * mConactReporter 
CharacterControllerManager * mControllerManager 
F32 mEditorTimeScale 
bool mErrorReport 
bool mIsEnabled 
bool mIsSimulating 
ProcessList * mProcessList 
Vector< NxActor * > mReleaseActorQueue 
Vector< NxCloth * > mReleaseClothQueue 
Vector< NxFluid * > mReleaseFluidQueue 
Vector< NxHeightField * > mReleaseHeightFieldQueue 
Vector< NxJoint * > mReleaseJointQueue 
Vector< NxMaterial * > mReleaseMaterialQueue 
NxScene * mScene 
U32 mTickCount 
PxUserNotify * mUserNotify 

Protected Static Attributes

PxConsoleStream * smConsoleStream 

The console stream for PhysX error reporting.

NxCookingInterface * smCooking 

The mesh cooking interface which is loaded on first use.

Protected Functions

_destroy()

_init(bool isServer, ProcessList * processList)

_releaseQueues()

_updateScheduledStatics()

Public Functions

PxWorld()

~PxWorld()

castRay(const Point3F & start, const Point3F & end, U32 bodyTypes)

Reimplemented from: PhysicsWorld

castRay(const Point3F & startPnt, const Point3F & endPnt, RayInfo * ri, const Point3F & impulse)

Reimplemented from: PhysicsWorld

createController(NxControllerDesc & desc)

createMaterial(NxMaterialDesc & material)

destroyWorld()

Reimplemented from: PhysicsWorld

explosion(const Point3F & pos, F32 radius, F32 forceMagnitude)

Reimplemented from: PhysicsWorld

getContactReporter()

Returns the contact reporter for this scene.

getEditorTimeScale()

getEnabled()

getPhysicsResults()

getScene()

getTick()

initWorld(bool isServer, ProcessList * processList)

Reimplemented from: PhysicsWorld

isEnabled()

Reimplemented from: PhysicsWorld

isWritable()

onDebugDraw(const SceneRenderState * state)

Reimplemented from: PhysicsWorld

releaseActor(NxActor & actor)

releaseCloth(NxCloth & cloth)

releaseClothMesh(NxClothMesh & clothMesh)

releaseController(NxController & controller)

releaseFluid(NxFluid & fluid)

releaseHeightField(NxHeightField & heightfield)

releaseJoint(NxJoint & joint)

releaseMaterial(NxMaterial & mat)

releaseWriteLock()

reset()

Reimplemented from: PhysicsWorld

setEditorTimeScale(F32 timeScale)

setEnabled(bool enabled)

tickPhysics(U32 elapsedMs)

Public Static Functions

getCooking()

Returns the cooking interface.

Will only return NULL in the case of a missing or bad PhysX install.