+ improved split impulse constraint solver option

+ improved friction warm starting
+ made constraint solver configuration more consistent (moved m_solverMode into btContactSolverInfo)
+ reset timing in CDTestFramework after initialization (SAP init destorts timings)
+ make it easier to change default sizes for stack allocator in btDefaultCollisionConfiguration
This commit is contained in:
erwin.coumans
2008-05-29 03:33:32 +00:00
parent 6457f5a961
commit d49aeb9dff
25 changed files with 386 additions and 149 deletions

View File

@@ -537,7 +537,6 @@ void BulletSAPCompleteBoxPruningTest::PerformTest()
if (m_firstTime)
{
numUpdatedBoxes = mNbBoxes;
m_firstTime = false;
}
mProfiler.Start();
UpdateBoxes(numUpdatedBoxes);
@@ -567,6 +566,13 @@ void BulletSAPCompleteBoxPruningTest::PerformTest()
mProfiler.End();
mProfiler.Accum();
if (m_firstTime)
{
//initialization messes up timings
m_firstTime = false;
mProfiler.Reset();
}
// printf("%d pairs colliding\r ", mPairs.GetNbPairs());
ZeroMemory(mFlags,sizeof(bool)*mNbBoxes);

View File

@@ -59,7 +59,7 @@ enum TestIndex
// TEST_OBB_MESH_QUERY,
// TEST_CAPSULE_MESH_QUERY,
// TEST_COMPLETE_BOX_PRUNING=0,
// TEST_COMPLETE_BOX_PRUNING_8192,
TEST_COMPLETE_BOX_PRUNING_8192,
// TEST_BULLET_SAP_1024,
// TEST_BULLET_SAP_8192,
// TEST_BULLET_SAP_SORTEDPAIRS_8192,
@@ -286,7 +286,7 @@ int main(int argc, char** argv)
// {TEST_OBB_MESH_QUERY, "OBB-mesh query"},
// {TEST_CAPSULE_MESH_QUERY, "Capsule-mesh query"},
// {TEST_COMPLETE_BOX_PRUNING, "OPCODE SAP 1024"},
// {TEST_COMPLETE_BOX_PRUNING_8192, "OPCODE SAP 8192"},
{TEST_COMPLETE_BOX_PRUNING_8192, "OPCODE SAP 8192"},
// {TEST_BULLET_SAP_1024, "Bullet SAP HASHPAIR 1024"},
// {TEST_BULLET_SAP_8192, "Bullet SAP HASHPAIR 8192"},
// {TEST_BULLET_SAP_SORTEDPAIRS_8192, "Bullet SAP SORTEDPAIR 8192"},
@@ -306,7 +306,7 @@ int main(int argc, char** argv)
// gCollisionTests[TEST_CAPSULE_MESH_QUERY] = new CapsuleMeshQuery;
// gCollisionTests[TEST_COMPLETE_BOX_PRUNING] = new CompleteBoxPruningTest(NUM_SAP_BOXES);
// gCollisionTests[TEST_COMPLETE_BOX_PRUNING_8192] = new CompleteBoxPruningTest(NUM_SAP_BOXES);
// gCollisionTests[TEST_COMPLETE_BOX_PRUNING_8192] = new CompleteBoxPruningTest(NUM_SAP_BOXES);
gCollisionTests[TEST_COMPLETE_BOX_PRUNING_8192] = new CompleteBoxPruningTest(NUM_SAP_BOXES);
// gCollisionTests[TEST_BULLET_SAP_1024] = new BulletSAPCompleteBoxPruningTest(NUM_SAP_BOXES,1);
// gCollisionTests[TEST_BULLET_SAP_8192] = new BulletSAPCompleteBoxPruningTest(NUM_SAP_BOXES,1);
// gCollisionTests[TEST_BULLET_SAP_SORTEDPAIRS_8192] = new BulletSAPCompleteBoxPruningTest(NUM_SAP_BOXES,3);

View File

@@ -60,6 +60,14 @@ subject to the following restrictions:
QueryPerformanceCounter((LARGE_INTEGER*)&mCounter1);
}
void Reset()
{
mCycles = 0;
mTime = 0.0f;
mNbQueries = 0;
mMsTime=0.0f;
}
void Accum()
{
double t = ((double)mCounter1 - (double)mCounter0)/(double)mFreq;