[ODE] auto-enable problem solutions?
Aras Pranckevicius
nearaz at interamotion.com
Mon Mar 1 18:09:21 MST 2004
> If I construct e.g. high tower and set it disabled by default and
> then slowly push the lowest box somewhat ahead, then some boxes are
> left floating in the air, upper boxes are not re-enabled because no
> contacts occur with the enabled lower boxes.
I haven't tried this (i.e. building a tower or a wall), but if your ERP is
<1.0, then shouldn't there always be a contact between boxes? This way, once
you re-enable the lowest box (push it), it collides with the rest
immediately - hence all get re-enabled.
That's theory, of course. In practice, some box might be pushed into a state
that it doesn't collide with the lower box (due to various inaccuracies), and
get disabled then.
> 1. extend a reenabled body's AABB a little, and checking
> which disabled bodies' AABBs are now intersecting, then re-enabling
> those (comment from ql at ntlworld.com)
>
> 2. same than upper but temporarily expand the raw geom's dimensions
> (comment from adam)
These are a bit hacky. Not only that, but it ties dynamic and collision in
some way. Where do you check AABBs? Where do you expand/restore them?
Besides, bodies don't have AABBs, geoms do (and a body can have any number of
geoms in funky configurations)...
Aras Pranckevicius aka NeARAZ
http://www.gim.ktu.lt/nesnausk/nearaz/
More information about the ODE
mailing list