[ODE] New stuff

David McClurg dmcclurg at pandemicstudios.com.au
Sun Sep 1 23:31:01 2002


Not sure if this is still useful, but here's my feedback from the sources you posted on August 18th...

- opcode 1.2 wraps the Point and other math classes in a IceMath namespace.  you assume they are in the Opcode namespace.
- dRay_Box.cpp: Clip() does not return a value from all control paths
- dRay.cpp: dGeomRayGet/Set() use " * 4" instead of " * 3" on the Rotation[] matrix and cause illegal access violations
- dxTriList.h: FetchVertex() has a comma operator in it.  i don't think you intended that...

// Fetches a vertex
inline const dcVector3& FetchVertex(dxTriListData* TLData, int Index){
	return (const dcVector3&)(((char*)TLData->Vertices)[TLData, Index * TLData->VertexStride]);
										    ^-- did you mean this??
}

The new contact point generation is much better!  My sphere vs mesh collision problems went away.

-----Original Message-----
From: Erwin de Vries [mailto:erwin@vo.com]
Sent: Sunday, 18 August 2002 11:54 PM
To: ode@q12.org
Subject: [ODE] New stuff


The dRay class now returns reflection normals, and penetation depths. The
penetration depth of a line is the distance between the contactpoint and the
endpoint of the line.

The dTriList class now supports moving geometry, has better algorithms for
determining contacts, uses Opcode 1.2, generates an AABB for the ODE space,
and supports the dRay class. The test_trilist is a bit messed up. I need to
clean it.

I will post another update for the TriList later. I already have some other
things in mind which might provide much better results for the box
collision. But i dont have the time right now. Now if anyone would be so
kind to implement the missing (CCylinder and TriList) colliders... =P

Hope this helps for you guys.

Erwin