diff --git a/Demos3/GpuDemos/rigidbody/GpuRigidBodyDemo.cpp b/Demos3/GpuDemos/rigidbody/GpuRigidBodyDemo.cpp index 838ebcb5a..f2c9f4915 100644 --- a/Demos3/GpuDemos/rigidbody/GpuRigidBodyDemo.cpp +++ b/Demos3/GpuDemos/rigidbody/GpuRigidBodyDemo.cpp @@ -115,7 +115,7 @@ void GpuRigidBodyDemo::initPhysics(const ConstructionInfo& ci) m_data->m_config.m_maxConvexBodies = b3Max(m_data->m_config.m_maxConvexBodies,ci.arraySizeX*ci.arraySizeY*ci.arraySizeZ+10); m_data->m_config.m_maxConvexShapes = m_data->m_config.m_maxConvexBodies; - int maxPairsPerBody = 128; + int maxPairsPerBody = 16; m_data->m_config.m_maxBroadphasePairs = maxPairsPerBody*m_data->m_config.m_maxConvexBodies; m_data->m_config.m_maxContactCapacity = m_data->m_config.m_maxBroadphasePairs; diff --git a/src/Bullet3OpenCL/BroadphaseCollision/b3GpuGridBroadphase.cpp b/src/Bullet3OpenCL/BroadphaseCollision/b3GpuGridBroadphase.cpp index 354434f43..97c730b2d 100644 --- a/src/Bullet3OpenCL/BroadphaseCollision/b3GpuGridBroadphase.cpp +++ b/src/Bullet3OpenCL/BroadphaseCollision/b3GpuGridBroadphase.cpp @@ -115,8 +115,21 @@ void b3GpuGridBroadphase::createLargeProxy(const b3Vector3& aabbMin, const b3Ve void b3GpuGridBroadphase::calculateOverlappingPairs(int maxPairs) { + B3_PROFILE("b3GpuGridBroadphase::calculateOverlappingPairs"); + /* calculateOverlappingPairsHost(maxPairs); - return; + { + + b3AlignedObjectArray cpuPairs; + m_gpuPairs.copyToHost(cpuPairs); + printf("host m_gpuPairs.size()=%d\n",m_gpuPairs.size()); + for (int i=0;i pairsCpu; m_gpuPairs.resize(actualCount); - //m_gpuPairs.copyToHost(pairsCpu); - //printf("?!?\n"); + /* + b3AlignedObjectArray pairsCpu; + m_gpuPairs.copyToHost(pairsCpu); + + printf("m_gpuPairs.size()=%d\n",m_gpuPairs.size()); + for (int i=0;i