[ODE] 3 beginner questions

david@csworkbench.com david at csworkbench.com
Thu Apr 3 07:53:02 2003


>
>
> Hi.  I´m just starting out integrating Ode into our game engine.  So far
> I find the api clean and comfortable to work with. But I have a few
> beginner type questions that I cannot find answers to either in the
> latest manual, searching the list, or in the community FAQ.
>
> 1. HashSpace levels....  how should I apply a knowledge of typical
> object sizes and/or world space size to the call dHashSpaceSetLevels() ?
>  Is the rule maybe that 2^minlevel <= smallest object dimension and
> 2^maxlevel <= biggest world space size, or something else completely...?

Not sure about this one.

> 2.  Drag.  After implimenting simple drag as described in the wiki faq,
> I found that objects still take a considerable time to come to rest
> after colliding, despite increasing the drag coefficients.  I thought to
> experiment with the density argument I give in dMassSetSphere, but
> surprisingly found that increasing density leads to the object slipping
> for more time before coming to rest, and vice-versa.  I also found that
> with more density there was a contant interpenetration of my objects
> sphere with the ground plane.  I wonder if the slip is somehow caused by
> a longer time resolving contacts between the ground and the moving body.

Set the dContactApprox1 flag in your contact mode parameter if you want
friction to act more Coulomb-ish.... i.e. more mass = more friction. 
Without dContactApprox1, friction opposes motion in a direction
perpendicular to it's normal by a max of mu.  So heavier objects would
take longer to slide to a stop than lighter ones.

> 3.  Finally I was wondering about replacing my ground plane with a box
> that contain the action.  My first try leaves all objects pushed quickly
> to the outside of the box. Is there a way to invert this behaviour...?
> I thought this was being done in the buggy demo, but if so the method
> escapes me.

There's no easy way to "invert" a geom that I know of.  You probably just
want to define each side of the box with it's own plane.

> Thanks for any advice,
>
> Bob Ives
>
>
>
> _______________________________________________
> ODE mailing list
> ODE@q12.org
> http://q12.org/mailman/listinfo/ode