+ disable perturbation for btConvexPlaneCollisionAlgorithm, it introduces artifacts (additional points cause spheres/cylinders and other curved objects to move)
+ applied patch to mix double/single precision meshes independent from double/single precision Bullet build Thanks to Ole for the patch, http://code.google.com/p/bullet/issues/detail?id=213 + re-enable warming starting in constraint solver, it was disabled by accident + fix btConvexHullShape constructor, so accept vertices with non-16-byte striding Thanks Shawn Baird for report and fix: http://code.google.com/p/bullet/issues/detail?id=204
This commit is contained in:
@@ -24,12 +24,13 @@ btConvexHullShape ::btConvexHullShape (const btScalar* points,int numPoints,int
|
||||
m_shapeType = CONVEX_HULL_SHAPE_PROXYTYPE;
|
||||
m_unscaledPoints.resize(numPoints);
|
||||
|
||||
unsigned char* pointsBaseAddress = (unsigned char*)points;
|
||||
unsigned char* pointsAddress = (unsigned char*)points;
|
||||
|
||||
for (int i=0;i<numPoints;i++)
|
||||
{
|
||||
btVector3* point = (btVector3*)(pointsBaseAddress + i*stride);
|
||||
m_unscaledPoints[i] = point[0];
|
||||
btScalar* point = (btScalar*)pointsAddress;
|
||||
m_unscaledPoints[i] = btVector3(point[0], point[1], point[2]);
|
||||
pointsAddress += stride;
|
||||
}
|
||||
|
||||
recalcLocalAabb();
|
||||
|
||||
Reference in New Issue
Block a user