PxVisualizationParameter Struct Reference

Debug visualization parameters. More...

#include <PxVisualizationParameter.h>

Public Types

enum  Enum {
  eSCALE, eWORLD_AXES, eBODY_AXES, eBODY_MASS_AXES,
  eBODY_LIN_VELOCITY, eBODY_ANG_VELOCITY, eCONTACT_POINT, eCONTACT_NORMAL,
  eCONTACT_ERROR, eCONTACT_FORCE, eACTOR_AXES, eCOLLISION_AABBS,
  eCOLLISION_SHAPES, eCOLLISION_AXES, eCOLLISION_COMPOUNDS, eCOLLISION_FNORMALS,
  eCOLLISION_EDGES, eCOLLISION_STATIC, eCOLLISION_DYNAMIC, eDEPRECATED_COLLISION_PAIRS,
  eJOINT_LOCAL_FRAMES, eJOINT_LIMITS, eCULL_BOX, eMBP_REGIONS,
  eNUM_VALUES, eFORCE_DWORD = 0x7fffffff
}
 

Detailed Description

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()

Member Enumeration Documentation

◆ Enum

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, ...). Contacts are visualized if they involve a body which is being visualized. 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

eWORLD_AXES 

Visualize the world axes.

eBODY_AXES 

Visualize a bodies axes.

See also
PxActor.globalPose PxActor
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
eBODY_LIN_VELOCITY 

Visualize the bodies linear velocity.

See also
PxBodyDesc.linearVelocity PxActor
eBODY_ANG_VELOCITY 

Visualize the bodies angular velocity.

See also
PxBodyDesc.angularVelocity PxActor
eCONTACT_POINT 

Visualize contact points. Will enable contact information.

eCONTACT_NORMAL 

Visualize contact normals. Will enable contact information.

eCONTACT_ERROR 

Visualize contact errors. Will enable contact information.

eCONTACT_FORCE 

Visualize Contact forces. Will enable contact information.

eACTOR_AXES 

Visualize actor axes.

See also
PxRigidStatic PxRigidDynamic PxArticulationLink
eCOLLISION_AABBS 

Visualize bounds (AABBs in world space)

eCOLLISION_SHAPES 

Shape visualization.

See also
PxShape
eCOLLISION_AXES 

Shape axis visualization.

See also
PxShape
eCOLLISION_COMPOUNDS 

Compound visualization (compound AABBs in world space)

eCOLLISION_FNORMALS 

Mesh & convex face normals.

See also
PxTriangleMesh PxConvexMesh
eCOLLISION_EDGES 

Active edges for meshes.

See also
PxTriangleMesh
eCOLLISION_STATIC 

Static pruning structures.

eCOLLISION_DYNAMIC 

Dynamic pruning structures.

eDEPRECATED_COLLISION_PAIRS 

Visualizes pairwise state.

eJOINT_LOCAL_FRAMES 

Joint local axes.

eJOINT_LIMITS 

Joint limits.

eCULL_BOX 

Visualize culling box.

eMBP_REGIONS 

MBP regions.

eNUM_VALUES 

This is not a parameter, it just records the current number of parameters (as maximum(PxVisualizationParameter)+1) for use in loops.

eFORCE_DWORD 

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