[ODE] Auto Disable Improvement patch #1586738
jsinecky at tiscali.cz
Thu Nov 2 01:10:22 MST 2006
Trying to repost my earlier post which was probably rejected because
sent from different e-address. Basically expressing the same doubt as
-------- Original Message --------
Subject: Re: [ODE] Auto Disable Improvement patch #1586738
Date: Tue, 31 Oct 2006 14:39:10 +0100
From: Jaroslav Sinecky <sinecky at telefonica.net>
To: David Walters <hidden.asbestos at googlemail.com>
CC: ode-list <ode at q12.org>
References: <8e5891450610310207x3c529ec9l1b7efaa0c0beb78c at mail.gmail.com>
Hm, I think this patch cannot make much harm apart that single objects
never get autodisabled, which is valid case for example for objects
without gravity or if someone is applying some other external forces. At
the same time, single objects without joints are really cheap to
simulate, so this shouldn't be a big deal.
What I don't like about this patch, is that it's really not general. I
can think of planty of cases of objects in contacts or whole mechanism
reaching it's "dead points". Just a simple example: ball on a halfpipe.
I can think only of one simple solution for all these cases: tune
correctly your autodisable tresholds/steps/time. For example if you know
the gravity of your world, and you set
autodisableTime >= 2*adisLinearTreshold/gravity
single objects should never get autodisabled in the air.
I want to say, if you set linear threshold high and disable time low,
you will have problems in many cases, that this patch will not catch.
David Walters wrote:
> Francisco has submitted a patch among his seemingly hundreds of other
> fixes and improvements that I think is similarly beneficial, but may
> have been lost in all of the confusion!
> I'm refering to this patch:
> Which prevents a body from disabling unless it has at least one joint
> (of any type) attached to it. As the patch describes, this should fix
> the case where a projectile in flight reaches the top of it's porabola
> and is ready to start it's descent under gravity - when the
> auto-disable tolerances kick in and suspend it in mid air.
> With this simple patch applied you should be able to prevent this
> happening and allow you to raise the global disable velocities, etc.
> thus potentially improving performance.
> I've writing this mail to the list instead of simply applying the
> patch as there may be undesirable behaviour that occurs as a result of
> this change in how auto-disable works, and so I want to make sure that
> the majority agree with it.
> Please, if you get a moment, try out this patch and report any
> problems or reservations you have - conversely if you feel I'm being
> over-cautious let it be known and I'll apply it sooner.
> ODE mailing list
> ODE at q12.org
More information about the ODE