The current supported features include :

  • Ragdoll Animations : The character will naturally die down based on gravity and other collisions. The future extension includes adding mechanisms for the character to naturally get back from a lie down pose. 
  • Proportional Derivative (PD) Motion Tracking : The character will track an input kinematic motion as much as possible. This enables the character to execute a motion under physical simulation, and at the same time respond directly to external push or collisions. The current implementation does not control the character balance. Instead, the root joint is driven directly by the kinematic motion to prevent character from falling down.
  • Kinematic Constraint : A physics-based character is simulated by a set of connected body links. Instead of using  physical simulation, each body link can also be constrained to follow a kinematic motion. This allows the user to "pin" a body link in a fixed position, or have a specific link to follow the original kinematic motion. 
  • Collision Events : A collision event will be sent out from the simulation system when a physics character is collided with other objects. User can provide a python script to handle this collision. For example, the character can gaze at the object that is hitting him, or execute a reaction motion. This helps enhance realism and interactivity of a character with the virtual environment.