NVIDIA(R) PhysX(R) SDK 3.4 API Reference: PxVisualizationParameter Struct Reference

NVIDIA PhysX SDK 3.4 API

PxVisualizationParameter Struct Reference
[Physics]

Debug visualization parameters. More...

#include <PxVisualizationParameter.h>

List of all members.


Public Types

enum  Enum {
  eSCALE,
  eWORLD_AXES,
  eBODY_AXES,
  eBODY_MASS_AXES,
  eBODY_LIN_VELOCITY,
  eBODY_ANG_VELOCITY,
  eDEPRECATED_BODY_JOINT_GROUPS,
  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,
  ePARTICLE_SYSTEM_POSITION,
  ePARTICLE_SYSTEM_VELOCITY,
  ePARTICLE_SYSTEM_COLLISION_NORMAL,
  ePARTICLE_SYSTEM_BOUNDS,
  ePARTICLE_SYSTEM_GRID,
  ePARTICLE_SYSTEM_BROADPHASE_BOUNDS,
  ePARTICLE_SYSTEM_MAX_MOTION_DISTANCE,
  eCULL_BOX,
  eCLOTH_VERTICAL,
  eCLOTH_HORIZONTAL,
  eCLOTH_BENDING,
  eCLOTH_SHEARING,
  eCLOTH_VIRTUAL_PARTICLES,
  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

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

eDEPRECATED_BODY_JOINT_GROUPS  Visualize the bodies joint projection group.

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.
ePARTICLE_SYSTEM_POSITION  Particle position visualization.
ePARTICLE_SYSTEM_VELOCITY  Particle velocity visualization.
ePARTICLE_SYSTEM_COLLISION_NORMAL  Particle collision normal visualization.
ePARTICLE_SYSTEM_BOUNDS  ParticleSystem AABB visualization.
ePARTICLE_SYSTEM_GRID  Particle grid visualization.
ePARTICLE_SYSTEM_BROADPHASE_BOUNDS  Particle system broad phase bounds.
ePARTICLE_SYSTEM_MAX_MOTION_DISTANCE  ParticleSystem maximum motion distance visualization.
eCULL_BOX  Visualize culling box.
eCLOTH_VERTICAL  Cloth fabric vertical sets.
eCLOTH_HORIZONTAL  Cloth fabric horizontal sets.
eCLOTH_BENDING  Cloth fabric bending sets.
eCLOTH_SHEARING  Cloth fabric shearing sets.
eCLOTH_VIRTUAL_PARTICLES  Cloth virtual particles.
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:



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