Deterministic simulation for concave and compound collision shapes: added childShapeA/B to b3Contact4 + sort on them

Use tetrahedra instead of barrel for convex demo (until performance for edge-edge is improved)
Increased #overlapping pair capacity from 12 to 16 / objec
This commit is contained in:
erwincoumans
2013-07-17 22:42:50 -07:00
parent ab125fbb6d
commit 733f9027fb
26 changed files with 358 additions and 70 deletions

View File

@@ -64,9 +64,15 @@ void GpuConvexScene::destroyScene()
int GpuConvexScene::createDynamicsObjects(const ConstructionInfo& ci)
{
int strideInBytes = 9*sizeof(float);
int numVertices = sizeof(barrel_vertices)/strideInBytes;
/*int numVertices = sizeof(barrel_vertices)/strideInBytes;
int numIndices = sizeof(barrel_indices)/sizeof(int);
return createDynamicsObjects2(ci,barrel_vertices,numVertices,barrel_indices,numIndices);
*/
int numVertices = sizeof(tetra_vertices)/strideInBytes;
int numIndices = sizeof(tetra_indices)/sizeof(int);
return createDynamicsObjects2(ci,tetra_vertices,numVertices,tetra_indices,numIndices);
}
int GpuBoxPlaneScene::createDynamicsObjects(const ConstructionInfo& ci)

View File

@@ -110,7 +110,7 @@ void GpuRigidBodyDemo::initPhysics(const ConstructionInfo& ci)
b3Config config;
config.m_maxConvexBodies = b3Max(config.m_maxConvexBodies,ci.arraySizeX*ci.arraySizeY*ci.arraySizeZ+10);
config.m_maxConvexShapes = config.m_maxConvexBodies;
config.m_maxBroadphasePairs = 12*config.m_maxConvexBodies;
config.m_maxBroadphasePairs = 16*config.m_maxConvexBodies;
config.m_maxContactCapacity = config.m_maxBroadphasePairs;