[ODE] new Auto Disable feature "TeeterFactor"
Christoph Beyer
boernerb at web.de
Fri Nov 3 07:11:30 MST 2006
The idea is, that if a box teeters, it has a very low average velocity,
but is still moving/rotating!
To avoid it from disabling, the auto-disable handler checks, if the body
has less or equal than 2 contactjoint,
and then, the "teeter - totter" - situation appears. bodys in teetering
conditions has an additional factor,
which affects all thresholds.
this is, because teetering bodys needs a lower threshold, to avoid
disabling them to soon.
This patch adds the feature to the revision 1127!
the API gets four new functions:
ODE_API dReal dBodyGetAutoDisableTeeterFactor (dBodyID);
ODE_API void dBodySetAutoDisableTeeterFactor (dBodyID, dReal teeter_factor);
ODE_API dReal dWorldGetAutoDisableTeeterFactor (dWorldID);
ODE_API void dWorldSetAutoDisableTeeterFactor (dWorldID, dReal
teeter_factor );
by default the teeter_factor is 1, this means, that teeter-feature is
like disabled.
this patch fixes also a little bug:
the "not freeze in mid-air"-check is now only for contactjoints, other
joints are ignored.
If you know a better name than "teeter", please replace it ;-)
cheers
Christoph
More information about the ODE
mailing list