[ODE] trimesh vs plane

Jon Watte (ODE) hplus-ode at mindcontrol.org
Sat Mar 25 08:53:46 MST 2006


A really hacky plane/trimesh would just give you one penetration per 
vertex that's on the "wrong" side of the plane. It requires walking each 
of the vertices, but it's really simple to implement (and works for 
convex shapes, etc). Bounding-box early-outs should make this less 
expensive for the stupid cases. Using only vertices of the convex hull 
would further optimize this for non-convex meshes.

Cheers,

			/ h+

Bram Stolk wrote:
> Jean-Sebastien Guay wrote:
> 
> 
>>- In test_trimesh, the trimeshes collide well between them but fall straight
>>  through the floor while primitives collide with the trimeshes and the floor.
> 
> 
> This is because the plane-trimesh isect is not implemented in ode.
> These are currently implemented:
> 
> (dSphereClass,dSphereClass,&dCollideSphereSphere);
> (dSphereClass,dBoxClass,&dCollideSphereBox);
> (dSphereClass,dPlaneClass,&dCollideSpherePlane);
> (dBoxClass,dBoxClass,&dCollideBoxBox);
> (dBoxClass,dPlaneClass,&dCollideBoxPlane);
> (dCapsuleClass,dSphereClass,&dCollideCapsuleSphere);
> (dCapsuleClass,dBoxClass,&dCollideCapsuleBox);
> (dCapsuleClass,dCapsuleClass,&dCollideCapsuleCapsule);
> (dCapsuleClass,dPlaneClass,&dCollideCapsulePlane);
> (dRayClass,dSphereClass,&dCollideRaySphere);
> (dRayClass,dBoxClass,&dCollideRayBox);
> (dRayClass,dCapsuleClass,&dCollideRayCapsule);
> (dRayClass,dPlaneClass,&dCollideRayPlane);
> (dTriMeshClass,dSphereClass,&dCollideSTL);
> (dTriMeshClass,dBoxClass,&dCollideBTL);
> (dTriMeshClass,dRayClass,&dCollideRTL);
> (dTriMeshClass,dTriMeshClass,&dCollideTTL);
> (dTriMeshClass,dCapsuleClass,&dCollideCCTL);
> (dCylinderClass,dTriMeshClass,&dCollideCylinderTrimesh);
> (dCylinderClass,dBoxClass,&dCollideCylinderBox);
> (dCylinderClass,dSphereClass,&dCollideCylinderSphere);
> (dCylinderClass,dPlaneClass,&dCollideCylinderPlane);
> 
> cyl-cyl, also missing, is a hard problem, but trimesh-plane should
> not be too difficult to implement, as it is an easier problem than
> trimesh-trimesh.
> 
>    Bram
> _______________________________________________
> ODE mailing list
> ODE at q12.org
> http://q12.org/mailman/listinfo/ode
> 
> 



More information about the ODE mailing list