| ## Public API Reference

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# iODEDynamicState Struct Reference

This class exposes parameters specific to odedynam as an implementation of iDynamics. More...

`#include <ivaria/ode.h>`

Inheritance diagram for iODEDynamicState:

[legend]
List of all members.

## Public Member Functions
virtual void | EnableEventProcessing (bool enable)=0
| This makes updates happen on the csevPreProcess and invalidates calls to Step() This should be used in conjuction with the FrameRate calls.
virtual void | EnableFastObjects (bool enable)=0
| The following enables special robustness checks for fast moving objects to determine if they will tunneling and adjusts the physics frame resolution (rate) to a double for that step (possible doing this recursively down to a potentially infinite resolution for a given step, depending on the speed of the objects being tested) Only enable this if you are experiencing tunneling problems and can't afford to increase the standard FrameRate in the settings above.
virtual void | EnableFrameRate (bool enable)=0
| The following code enables a constant framerate on processing this means if you set the frame rate to (default) 50 The stepsize passed into Step is treated as the elapsed time in seconds received from the virtual clock GetElapsedTicks.
virtual void | EnableStepFast (bool enable)=0
| Enables the experimental StepFast code in ode.
virtual void | SetGlobalCFM (float cfm)=0
| Sets ODE's Constraint Force Mixing (see ode docs for details).
virtual void | SetGlobalERP (float erp)=0
| Sets ODE's Error Resolution Parameter (see ode docs for details).

## Detailed Description

This class exposes parameters specific to odedynam as an implementation of iDynamics.

Definition at line 45 of file ode.h.

## Member Function Documentation

virtual void iODEDynamicState::EnableEventProcessing | ( | bool | enable | ) | `[pure virtual]`

This makes updates happen on the csevPreProcess and invalidates calls to Step() This should be used in conjuction with the FrameRate calls.

virtual void iODEDynamicState::EnableFastObjects | ( | bool | enable | ) | `[pure virtual]`

The following enables special robustness checks for fast moving objects to determine if they will tunneling and adjusts the physics frame resolution (rate) to a double for that step (possible doing this recursively down to a potentially infinite resolution for a given step, depending on the speed of the objects being tested) Only enable this if you are experiencing tunneling problems and can't afford to increase the standard FrameRate in the settings above.

virtual void iODEDynamicState::EnableFrameRate | ( | bool | enable | ) | `[pure virtual]`

The following code enables a constant framerate on processing this means if you set the frame rate to (default) 50 The stepsize passed into Step is treated as the elapsed time in seconds received from the virtual clock GetElapsedTicks.

The physics will iterate a number of steps at 1/50th of a second until enough time has passed to account for the time Beware the default setting for frame limit is 10, which means if the stepsize passed to Step is longer than 1/10 a second the physics will stop iterating and slow down. Never set this parameter to 0 or else you could incur cycle of death where the number of physics steps increases the amount of elapsed time between frames which increases the number of physics steps toward infinity

virtual void iODEDynamicState::EnableStepFast | ( | bool | enable | ) | `[pure virtual]`

Enables the experimental StepFast code in ode.

virtual void iODEDynamicState::SetGlobalCFM | ( | float | cfm | ) | `[pure virtual]`

Sets ODE's Constraint Force Mixing (see ode docs for details).

virtual void iODEDynamicState::SetGlobalERP | ( | float | erp | ) | `[pure virtual]`

Sets ODE's Error Resolution Parameter (see ode docs for details).

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

- ivaria/ode.h