[ODE] Is a variable frame rate possible?

Nagymathe Denes denes at invictus.hu
Thu Dec 8 01:39:07 MST 2005


> <<  hinge2 is very stepsize-dependent for example, but its sensibility can 
> be seriously reduced by minimal internal changes to ODE. >>
>
> Do you have any recommendations on this ?

Without going into the math of ODE, i've experimented a bit about CFM a 
while ago. It came out that changing the CMF scaling in dxQuickStepper() (i 
use quickstep) to _quadratic_ stepsize-dependency mostly eliminates the 
problem.
My change looks like this:

  // scale CFM
  for (i=0; i<m; i++) cfm[i] *= (stepsize1*stepsize1)/50.0;  // 50 is 
'compatibility magic constant' to work with the original CFM values

(The magic const should be removed of course, and i didn't check the other 
steppers.)
I have originally tested it with the test_buggy example; using the original 
code if you decrease stepsize, the suspension gets more stiff, increasing it 
results in more soft 'springs'. This little change made it much better, and 
not only in hinge2 joints.

But i only have guesses why it works like that; i'd recommend asking Russ 
about. (: Russell, do you read this? :)


Denes




More information about the ODE mailing list