improved robustness of penetrations involving triangles and boxes, by adding their 'preferred' penetration directions.

added wireframe/solid mode for meshes
updated solid penetration depth solver (comparison in Extras)
This commit is contained in:
ejcoumans
2006-11-05 05:12:10 +00:00
parent 6c61060339
commit 074e2b2d3b
9 changed files with 189 additions and 33 deletions

View File

@@ -255,6 +255,37 @@ public:
return "Box";
}
virtual int getNumPreferredPenetrationDirections() const
{
return 6;
}
virtual void getPreferredPenetrationDirection(int index, btVector3& penetrationVector) const
{
switch (index)
{
case 0:
penetrationVector.setValue(1.f,0.f,0.f);
break;
case 1:
penetrationVector.setValue(-1.f,0.f,0.f);
break;
case 2:
penetrationVector.setValue(0.f,1.f,0.f);
break;
case 3:
penetrationVector.setValue(0.f,-1.f,0.f);
break;
case 4:
penetrationVector.setValue(0.f,0.f,1.f);
break;
case 5:
penetrationVector.setValue(0.f,0.f,-1.f);
break;
default:
assert(0);
}
}
};