+ 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:
Binary file not shown.
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user