[ODE] 0.8.2 candidate

Jon Watte (ODE) hplus-ode at mindcontrol.org
Sun Sep 30 10:11:22 MST 2007

Oleh Derevenko wrote:
>> - in demo_moving_trimesh, when dropping a trimesh with 'm', I get
>> "assertion "dFabs(dVector3Length((dVector3&)*normal) - REAL(1.0)) <
>> dEpsilon" failed in
>> ..\..\ode\src\collision_trimesh_trimesh_new.cpp:328". Is this expected
>> with the new trimesh collider?
> Fixed.
> I have loosed tolerance to 1e-2, as precision for float is really poor.

An alternative (and perhaps better) solution is to make the epsilon 
depend on the magnitude of the values involved. For example, when 
testing triangles/planes/rays before, I've used an epsilon like 
(max(abs(components)) * 1e-6).

Note that the specific assertion, though, just says "the normal should 
be normalized." If you generate a normal that isn't normalized, it might 
be better to just normalize it, rather than accept normals that are off 
the required length by one whole percent.


          / h+

More information about the ODE mailing list