[ODE] AutoDisable issue?
Aras Pranckevicius
nearaz at interamotion.com
Mon May 24 14:10:39 MST 2004
> the joints to 0. Since after falling there are a lot of contact
joints, this
> count must have grown considerably. Even though all the bodies have
been
> disabled the tagging is still being done on all the joints. I haven't
really
> gone into the detail of what's the purpose of tag so I'm not sure why
it is
> being done here. Any comments?
You shouldn't be creating contact joints between disabled-disabled and
disabled-nobody pairs.
Probably this could be done in ODE itself; right now the solution is to
add some code to your collision callback, like:
b1 = get body of geom1
b2 = get body of geom2
if b1 and b2 are disabled return
if (b1 is disabled) and !b2 return
if (b2 is disabled) and !b1 return
do usual collision and create contacts
This should reduce number of contact joints; and reduce the amount of
collision work.
Aras Pranckevicius aka NeARAZ
http://www.gim.ktu.lt/nesnausk/nearaz/
More information about the ODE
mailing list