[ODE] Collision constraint
Joakim Eriksson
jme at snowcode.com
Tue Jun 24 01:30:02 2003
Isn't there anyone that knows if this is an issue with ODE?
/Joakim E.
> -----Original Message-----
> From: Bob Dowland [mailto:Bob.Dowland@blue52.co.uk]
> Sent: den 19 juni 2003 15:24
> To: ode@q12.org
> Subject: RE: [ODE] Collision constraint
>
>
> I think you've hit the nail on the head here - this is the
> main snag with "penalty methods" (penetration correction
> force). I don't know how ODE's "correction" works, perhaps
> someone can explain but using a simple spring model (force
> proportional to error) can give rise to these additional
> "bouncing" effects.
>
> If you think of the penetration as an error call it e and
> note that it is a function of time e = e(t) then a simple
> spring correction also called "proportional controller"
> generates a force proportional to that error
>
> F = F (e(t)) = kp.e(t)
>
> this is the same ode as for a spring (giving "shm"). It's
> nice and simple but does produce, well, a certain
> springyness. An improvement on this is "proportional,
> derivative control":
>
> F = kp.e(t) + kd.d/dt{e(t)}
>
> a spring with a damper. A little more complicated but gives
> you a fighting chance at least. The trick, then, is to find
> "good values" for kp and kd, (ie ones that make e go to zero
> as quick as poss, not overshoot, and not oscillate about zero
> - aka "critically damped") unfortunately this often comes
> down to manual tweaking - depending on the situ.
>
> I don't know if this helps in any way - I guess it would be
> more useful to hear what some of the ODE vets have to say on this.
>
>
> > -----Original Message-----
> > From: Joakim Eriksson [mailto:jme@snowcode.com]
> > Sent: 18 June 2003 09:42
> > To: ode@q12.org
> > Subject: [ODE] Collision constraint
> >
> >
> > I have been looking a bit at the constraint system and there is one
> > thing I wonder.
> >
> > As far as I can tell so does the constraint solver only
> > return a force.
> > That force
> > is then applied to the bodies. So the force turns into a
> velocity that
> > changes the body.
> > Now what happens if a body is far into for example a plane. So the
> > penetration
> > depth is large. That would force the 'c' part of the
> > constraint equation
> > to have a
> > large value (To fix the penetration). If we would set the ERP to 1.0
> > then he
> > would need to fix the error as quickly as possible. Now
> > because we calc
> > a force
> > wont that mean that the body will get a velocity that forces
> > it not only
> > to quickly
> > move out of plane but also to continue away from the plane? Or am I
> > missing
> > something?
> >
> > If the problem actually does exists it would show in the
> > following way.
> > A fast moving object with a coeffiecent of resitition that
> equals 0.0f
> > that collides
> > with for example a plane would still get a bounce effect.
> How high the
> > bounce would be would depend on the ERP and the penetration depth.
> >
> > /Joakim E.
> >
> >
> > _______________________________________________
> > ODE mailing list
> > ODE@q12.org
> > http://q12.org/mailman/listinfo/ode
> >
>
> _______________________________________________
> ODE mailing list
> ODE@q12.org
> http://q12.org/mailman/listinfo/ode
>