Physics Locator

The Physics Locator defines the physics environment used by the Physicalize, Force and Detach behaviors and the Crowd Rigid Bodies. This environment is loaded from a Bullet Environment file or a default plane.

CREATION

A Physics Locator is automatically created when a Physicalize, a Force or a Detach behavior or a Crowd Rigid Body is added to the simulation.

  • Golaem Shelf:  / right click / Physics Locator
  • Golaem Menu: Environments / Physics Locator
  • MEL command: glmPhysicsLocatorCmd;

Note that several Physics Locators can be used in a simulation and can be chosen in the Crowd Manager and in each Crowd Field. Thus, if two Crowd Fields are using two different Physics Locators, their Entities will not be able to collide with each other.

Configuration

Physics World Attributes

 
Environment Mode

There are 3 environment modes : 

  • Default Plane : use a default 0 height infinite plane as physics world
  • File : physical objects are loaded from an external file
  • None : no physical object is instanciated, but gravity is still applied.
Gravity Gravity to use for the physics environment.
PhysX Environment File (.xml file) PhysX Environment File to load and display. By default even if no file is loaded, the Physics Locator use a center plane. This file can be generated with the 'Save Rigid Bodies' button (see bellow), or from Maya with the PhysX plugin.
In Rigid Bodies Crowd Rigid Body nodes to add the current PhysX Environment.
Force Refresh Display It may happens that the display of Crowd Rigid Bodies is not automatically refreshed. In such a case, click on this button to manually force a display refresh.
Save Rigid Bodies By clicking on this button, all rigid bodies in the 'In Rigid Bodies' list can be saved in a single file, that can later be used in the 'Environment File' attribute.
Plane Static Friction Plane static friction factor if the Environment Mode was set to Default Plane (Static friction is what happens when one object stands on the plane without moving)
Plane Dynamic Friction Plane dynamic friction factor if the Environment Mode was set to Default Plane (Dynamic friction is what happens when one object is moving on the plane: less force is needed to move the object than when it's still)
Plane Restitution Plane restitution factor if the Environment Mode was set to Default Plane

Nvidia PhsyX Solver Attributes

Physics Substeps

Number of substeps for the Physics simulations. The highest frequency used for physics simulation, the best results will be achieved for fast and small objects, but the slowest it will be to simulate.

It is usually advised to choose a number of substeps that allows the physics simulation to run at least at 60fps. For instance, if Maya is set to 24fps, 3 substeps means a physics simulation running at 3*24 = 72fps.

Threads Count Number of threads to use for the physics simulation. The best value is usually the number of cores of your processor.

Ragdoll Advanced attributes

Joint Solver Iterations (pos) Number of iterations that helps stabilizing the joint positions
Joint Solver Iterations (speed) Number of iterations that helps stabilizing the joint orientations
Joints Use Spring Limits True to use spring limits instead of hard limits (spring limits are more easy to stabilize)
Joint Limits Stiffness Stiffness of the joint limits' spring (the force proportional to the position error)
Joint Limits Damping Damping of the joint limits' spring (the force proportional to the velocity error)
Max Angular Velocity The maximum angular velocity that is allowed in physX

Display Attributes

Draw Collision shapes Show or hide the PhysX collision shapes. This option is only read when a simulation is initialized (this option considerably slows down the physics simulation: use it to check the PhysX simulation in case of problems).
Joint Limits scale Size of the joint limits displayed in PhysX
Contact Point scale Size of the contact points displayed in PhysX
Physics display color Color to use for the display of the physics world

PhysX Visual Debugger Attributes

These options allows to connect to the NVIDIA Physx Visual Debugger (PVD).

The Nvidia PVD is a tool provided by Nvidia to debug PhysX scenes, and can be useful when trying to understands what costs the most CPU time in a physics simulation.

Enable PVD Enable or disable the connection to the PVD
PVD Transmit Constraints Enable or disable constraint in PVD
PVD Transmit Contacts Enable or disable contacts in PVD
PVD Transmit Scene queries Enable or disable scene queries in PVD
PVD Host IP IP address of the host running PVD
PVD port PVD port on the host running PVD
PVD Timeout PVD timeout configuration

Extra Attributes

Use GPU Broadphase GPU acceleration for the collision detection part of the physX engine. This is a beta version, and only available on Windows platforms.
Use GPU GRB GPU acceleration for the rigid bodies of the phsyX engine. This is a beta version, and only available on Windows platforms.
PhysX Scratch Memory Size Increasing this value might accelerate the physics simulation on some really heavy scenes
Disable Triggers

Disable collisions Triggers. This can be used to speed up simulation when collision triggers are not used in the scene

Disable Collisions Disable every collisions between ragdolls. This can be used to speed up simulation when collisions are not necessary