PxVisualizationParameter
Defined in include/PxVisualizationParameter.h
-
struct PxVisualizationParameter
Debug visualization parameters.
PxVisualizationParameter::eSCALE is the master switch for enabling visualization, please read the corresponding documentation for further details.
See also
PxScene.setVisualizationParameter() PxScene.getVisualizationParameter() PxScene.getRenderBuffer()
Public Types
-
enum Enum
Values:
-
enumerator eSCALE
This overall visualization scale gets multiplied with the individual scales.
Setting to zero ignores all visualizations. Default is 0.
The below settings permit the debug visualization of various simulation properties. The setting is either zero, in which case the property is not drawn. Otherwise it is a scaling factor that determines the size of the visualization widgets.
Only objects for which visualization is turned on using setFlag(eVISUALIZATION) are visualized (see PxActorFlag::eVISUALIZATION, PxShapeFlag::eVISUALIZATION, …). Default is 0.
Notes:
to see any visualization, you have to set PxVisualizationParameter::eSCALE to nonzero first.
the scale factor has been introduced because it’s difficult (if not impossible) to come up with a good scale for 3D vectors. Normals are normalized and their length is always 1. But it doesn’t mean we should render a line of length 1. Depending on your objects/scene, this might be completely invisible or extremely huge. That’s why the scale factor is here, to let you tune the length until it’s ok in your scene.
however, things like collision shapes aren’t ambiguous. They are clearly defined for example by the triangles & polygons themselves, and there’s no point in scaling that. So the visualization widgets are only scaled when it makes sense.
Range: [0, PX_MAX_F32)Default: 0
-
enumerator eWORLD_AXES
Visualize the world axes.
-
enumerator eBODY_MASS_AXES
Visualize a body’s mass axes.
This visualization is also useful for visualizing the sleep state of bodies. Sleeping bodies are drawn in black, while awake bodies are drawn in white. If the body is sleeping and part of a sleeping group, it is drawn in red.
See also
PxBodyDesc.massLocalPose PxActor
-
enumerator eBODY_LIN_VELOCITY
Visualize the bodies linear velocity.
See also
PxBodyDesc.linearVelocity PxActor
-
enumerator eBODY_ANG_VELOCITY
Visualize the bodies angular velocity.
See also
PxBodyDesc.angularVelocity PxActor
-
enumerator eCONTACT_POINT
Visualize contact points.
Will enable contact information.
-
enumerator eCONTACT_NORMAL
Visualize contact normals.
Will enable contact information.
-
enumerator eCONTACT_ERROR
Visualize contact errors.
Will enable contact information.
-
enumerator eCONTACT_FORCE
Visualize Contact forces.
Will enable contact information.
-
enumerator eACTOR_AXES
Visualize actor axes.
-
enumerator eCOLLISION_AABBS
Visualize bounds (AABBs in world space)
-
enumerator eCOLLISION_COMPOUNDS
Compound visualization (compound AABBs in world space)
-
enumerator eCOLLISION_FNORMALS
Mesh & convex face normals.
See also
-
enumerator eCOLLISION_EDGES
Active edges for meshes.
See also
-
enumerator eCOLLISION_STATIC
Static pruning structures.
-
enumerator eCOLLISION_DYNAMIC
Dynamic pruning structures.
-
enumerator eJOINT_LOCAL_FRAMES
Joint local axes.
-
enumerator eJOINT_LIMITS
Joint limits.
-
enumerator eCULL_BOX
Visualize culling box.
-
enumerator eMBP_REGIONS
MBP regions.
-
enumerator eSIMULATION_MESH
Renders the simulation mesh instead of the collision mesh (only available for tetmeshes)
-
enumerator eSDF
Renders the SDF of a mesh instead of the collision mesh (only available for triangle meshes with SDFs)
-
enumerator eNUM_VALUES
This is not a parameter, it just records the current number of parameters (as maximum(PxVisualizationParameter)+1) for use in loops.
-
enumerator eFORCE_DWORD
-
enumerator eSCALE
-
enum Enum