add re-usable createGraphicsSphere method in GpuDemo.
introduce and use maxContactCapacity (needs to be fixed in various other contact kernels) implement sphere versus trimesh disable new/sequential GPU batching (only uses 1 thread in a warp, slow but works on NVIDIA/Apple OpenCL)
This commit is contained in:
@@ -708,6 +708,15 @@ static const char* satKernelsCL= \
|
||||
" int shapeIndexA = collidables[collidableIndexA].m_shapeIndex;\n"
|
||||
" int shapeIndexB = collidables[collidableIndexB].m_shapeIndex;\n"
|
||||
" \n"
|
||||
" int shapeTypeA = collidables[collidableIndexA].m_shapeType;\n"
|
||||
" int shapeTypeB = collidables[collidableIndexB].m_shapeType;\n"
|
||||
" \n"
|
||||
"\n"
|
||||
" if ((shapeTypeA != SHAPE_CONVEX_HULL) || (shapeTypeB != SHAPE_CONVEX_HULL))\n"
|
||||
" {\n"
|
||||
" return;\n"
|
||||
" }\n"
|
||||
"\n"
|
||||
" int hasSeparatingAxis = 5;\n"
|
||||
" \n"
|
||||
" int numFacesA = convexShapes[shapeIndexA].m_numFaces;\n"
|
||||
@@ -1074,6 +1083,13 @@ static const char* satKernelsCL= \
|
||||
" int shapeIndexA = collidables[collidableIndexA].m_shapeIndex;\n"
|
||||
" int shapeIndexB = collidables[collidableIndexB].m_shapeIndex;\n"
|
||||
"\n"
|
||||
" if (collidables[collidableIndexB].m_shapeType!=SHAPE_CONVEX_HULL)\n"
|
||||
" {\n"
|
||||
" concavePairs[pairIdx].w = 0;\n"
|
||||
" return;\n"
|
||||
" }\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"\n"
|
||||
" int numFacesA = convexShapes[shapeIndexA].m_numFaces;\n"
|
||||
" int numActualConcaveConvexTests = 0;\n"
|
||||
|
||||
Reference in New Issue
Block a user