ruby-bullet 0.1.0-x86-linux → 0.1.1-x86-linux

Sign up to get free protection for your applications and to get access to all the features.
Files changed (284) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +3 -0
  3. data/Rakefile +14 -2
  4. data/bindings/bullet/interface/BulletCollision/CollisionDispatch/btCollisionWorld.i +2 -2
  5. data/bindings/bullet/interface/bullet_wrap.cpp +17548 -6035
  6. data/bindings/bullet/interface/bullet_wrap.h +7 -7
  7. data/bindings/bullet/interface/bullet_wrap.o +0 -0
  8. data/lib/bullet.so +0 -0
  9. data/lib/ruby-bullet/version.rb +1 -1
  10. data/ruby-bullet.gemspec +0 -3
  11. metadata +169 -444
  12. data/deps/include/bullet/Bullet-C-Api.h +0 -176
  13. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btAxisSweep3.h +0 -1051
  14. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h +0 -82
  15. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h +0 -270
  16. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h +0 -80
  17. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btDbvt.h +0 -1257
  18. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h +0 -146
  19. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btDispatcher.h +0 -110
  20. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h +0 -151
  21. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h +0 -469
  22. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h +0 -40
  23. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btQuantizedBvh.h +0 -579
  24. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h +0 -171
  25. data/deps/include/bullet/BulletCollision/CollisionDispatch/SphereTriangleDetector.h +0 -51
  26. data/deps/include/bullet/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h +0 -36
  27. data/deps/include/bullet/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h +0 -66
  28. data/deps/include/bullet/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h +0 -66
  29. data/deps/include/bullet/BulletCollision/CollisionDispatch/btBoxBoxDetector.h +0 -44
  30. data/deps/include/bullet/BulletCollision/CollisionDispatch/btCollisionConfiguration.h +0 -48
  31. data/deps/include/bullet/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h +0 -45
  32. data/deps/include/bullet/BulletCollision/CollisionDispatch/btCollisionDispatcher.h +0 -172
  33. data/deps/include/bullet/BulletCollision/CollisionDispatch/btCollisionObject.h +0 -524
  34. data/deps/include/bullet/BulletCollision/CollisionDispatch/btCollisionWorld.h +0 -509
  35. data/deps/include/bullet/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h +0 -86
  36. data/deps/include/bullet/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h +0 -95
  37. data/deps/include/bullet/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h +0 -116
  38. data/deps/include/bullet/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h +0 -109
  39. data/deps/include/bullet/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h +0 -84
  40. data/deps/include/bullet/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h +0 -137
  41. data/deps/include/bullet/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h +0 -54
  42. data/deps/include/bullet/BulletCollision/CollisionDispatch/btGhostObject.h +0 -175
  43. data/deps/include/bullet/BulletCollision/CollisionDispatch/btInternalEdgeUtility.h +0 -46
  44. data/deps/include/bullet/BulletCollision/CollisionDispatch/btManifoldResult.h +0 -128
  45. data/deps/include/bullet/BulletCollision/CollisionDispatch/btSimulationIslandManager.h +0 -81
  46. data/deps/include/bullet/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h +0 -75
  47. data/deps/include/bullet/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h +0 -66
  48. data/deps/include/bullet/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h +0 -69
  49. data/deps/include/bullet/BulletCollision/CollisionDispatch/btUnionFind.h +0 -129
  50. data/deps/include/bullet/BulletCollision/CollisionShapes/btBox2dShape.h +0 -369
  51. data/deps/include/bullet/BulletCollision/CollisionShapes/btBoxShape.h +0 -312
  52. data/deps/include/bullet/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h +0 -139
  53. data/deps/include/bullet/BulletCollision/CollisionShapes/btCapsuleShape.h +0 -173
  54. data/deps/include/bullet/BulletCollision/CollisionShapes/btCollisionMargin.h +0 -27
  55. data/deps/include/bullet/BulletCollision/CollisionShapes/btCollisionShape.h +0 -150
  56. data/deps/include/bullet/BulletCollision/CollisionShapes/btCompoundShape.h +0 -212
  57. data/deps/include/bullet/BulletCollision/CollisionShapes/btConcaveShape.h +0 -60
  58. data/deps/include/bullet/BulletCollision/CollisionShapes/btConeShape.h +0 -103
  59. data/deps/include/bullet/BulletCollision/CollisionShapes/btConvex2dShape.h +0 -80
  60. data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexHullShape.h +0 -122
  61. data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexInternalShape.h +0 -224
  62. data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexPointCloudShape.h +0 -105
  63. data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexPolyhedron.h +0 -62
  64. data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexShape.h +0 -84
  65. data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h +0 -75
  66. data/deps/include/bullet/BulletCollision/CollisionShapes/btCylinderShape.h +0 -200
  67. data/deps/include/bullet/BulletCollision/CollisionShapes/btEmptyShape.h +0 -70
  68. data/deps/include/bullet/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h +0 -161
  69. data/deps/include/bullet/BulletCollision/CollisionShapes/btMaterial.h +0 -35
  70. data/deps/include/bullet/BulletCollision/CollisionShapes/btMinkowskiSumShape.h +0 -60
  71. data/deps/include/bullet/BulletCollision/CollisionShapes/btMultiSphereShape.h +0 -99
  72. data/deps/include/bullet/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h +0 -120
  73. data/deps/include/bullet/BulletCollision/CollisionShapes/btOptimizedBvh.h +0 -65
  74. data/deps/include/bullet/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h +0 -112
  75. data/deps/include/bullet/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h +0 -93
  76. data/deps/include/bullet/BulletCollision/CollisionShapes/btShapeHull.h +0 -59
  77. data/deps/include/bullet/BulletCollision/CollisionShapes/btSphereShape.h +0 -73
  78. data/deps/include/bullet/BulletCollision/CollisionShapes/btStaticPlaneShape.h +0 -103
  79. data/deps/include/bullet/BulletCollision/CollisionShapes/btStridingMeshInterface.h +0 -162
  80. data/deps/include/bullet/BulletCollision/CollisionShapes/btTetrahedronShape.h +0 -74
  81. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleBuffer.h +0 -69
  82. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleCallback.h +0 -42
  83. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h +0 -133
  84. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h +0 -84
  85. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleInfoMap.h +0 -241
  86. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleMesh.h +0 -69
  87. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleMeshShape.h +0 -89
  88. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleShape.h +0 -182
  89. data/deps/include/bullet/BulletCollision/CollisionShapes/btUniformScalingShape.h +0 -87
  90. data/deps/include/bullet/BulletCollision/Gimpact/btBoxCollision.h +0 -647
  91. data/deps/include/bullet/BulletCollision/Gimpact/btClipPolygon.h +0 -182
  92. data/deps/include/bullet/BulletCollision/Gimpact/btContactProcessing.h +0 -145
  93. data/deps/include/bullet/BulletCollision/Gimpact/btGImpactBvh.h +0 -396
  94. data/deps/include/bullet/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.h +0 -306
  95. data/deps/include/bullet/BulletCollision/Gimpact/btGImpactMassUtil.h +0 -60
  96. data/deps/include/bullet/BulletCollision/Gimpact/btGImpactQuantizedBvh.h +0 -372
  97. data/deps/include/bullet/BulletCollision/Gimpact/btGImpactShape.h +0 -1171
  98. data/deps/include/bullet/BulletCollision/Gimpact/btGenericPoolAllocator.h +0 -163
  99. data/deps/include/bullet/BulletCollision/Gimpact/btGeometryOperations.h +0 -212
  100. data/deps/include/bullet/BulletCollision/Gimpact/btQuantization.h +0 -88
  101. data/deps/include/bullet/BulletCollision/Gimpact/btTriangleShapeEx.h +0 -180
  102. data/deps/include/bullet/BulletCollision/Gimpact/gim_array.h +0 -326
  103. data/deps/include/bullet/BulletCollision/Gimpact/gim_basic_geometry_operations.h +0 -543
  104. data/deps/include/bullet/BulletCollision/Gimpact/gim_bitset.h +0 -123
  105. data/deps/include/bullet/BulletCollision/Gimpact/gim_box_collision.h +0 -590
  106. data/deps/include/bullet/BulletCollision/Gimpact/gim_box_set.h +0 -674
  107. data/deps/include/bullet/BulletCollision/Gimpact/gim_clip_polygon.h +0 -210
  108. data/deps/include/bullet/BulletCollision/Gimpact/gim_contact.h +0 -164
  109. data/deps/include/bullet/BulletCollision/Gimpact/gim_geom_types.h +0 -97
  110. data/deps/include/bullet/BulletCollision/Gimpact/gim_geometry.h +0 -42
  111. data/deps/include/bullet/BulletCollision/Gimpact/gim_hash_table.h +0 -902
  112. data/deps/include/bullet/BulletCollision/Gimpact/gim_linear_math.h +0 -1573
  113. data/deps/include/bullet/BulletCollision/Gimpact/gim_math.h +0 -157
  114. data/deps/include/bullet/BulletCollision/Gimpact/gim_memory.h +0 -190
  115. data/deps/include/bullet/BulletCollision/Gimpact/gim_radixsort.h +0 -406
  116. data/deps/include/bullet/BulletCollision/Gimpact/gim_tri_collision.h +0 -379
  117. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h +0 -59
  118. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btConvexCast.h +0 -73
  119. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h +0 -42
  120. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h +0 -91
  121. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h +0 -50
  122. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h +0 -75
  123. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h +0 -43
  124. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h +0 -103
  125. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h +0 -158
  126. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h +0 -40
  127. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h +0 -228
  128. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btPointCollector.h +0 -64
  129. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h +0 -46
  130. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h +0 -72
  131. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h +0 -63
  132. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h +0 -50
  133. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h +0 -179
  134. data/deps/include/bullet/BulletCollision/btBulletCollisionCommon.h +0 -69
  135. data/deps/include/bullet/BulletDynamics/Character/btCharacterControllerInterface.h +0 -46
  136. data/deps/include/bullet/BulletDynamics/Character/btKinematicCharacterController.h +0 -163
  137. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h +0 -346
  138. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btConstraintSolver.h +0 -52
  139. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btContactConstraint.h +0 -71
  140. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btContactSolverInfo.h +0 -87
  141. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h +0 -614
  142. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h +0 -99
  143. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btHinge2Constraint.h +0 -58
  144. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btHingeConstraint.h +0 -381
  145. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btJacobianEntry.h +0 -156
  146. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h +0 -161
  147. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h +0 -130
  148. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btSliderConstraint.h +0 -333
  149. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h +0 -107
  150. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btSolverBody.h +0 -191
  151. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btSolverConstraint.h +0 -98
  152. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btTypedConstraint.h +0 -452
  153. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btUniversalConstraint.h +0 -62
  154. data/deps/include/bullet/BulletDynamics/Dynamics/btActionInterface.h +0 -46
  155. data/deps/include/bullet/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h +0 -203
  156. data/deps/include/bullet/BulletDynamics/Dynamics/btDynamicsWorld.h +0 -151
  157. data/deps/include/bullet/BulletDynamics/Dynamics/btRigidBody.h +0 -691
  158. data/deps/include/bullet/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h +0 -89
  159. data/deps/include/bullet/BulletDynamics/Vehicle/btRaycastVehicle.h +0 -236
  160. data/deps/include/bullet/BulletDynamics/Vehicle/btVehicleRaycaster.h +0 -35
  161. data/deps/include/bullet/BulletDynamics/Vehicle/btWheelInfo.h +0 -119
  162. data/deps/include/bullet/BulletDynamics/btBulletDynamicsCommon.h +0 -48
  163. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverBuffer_DX11.h +0 -323
  164. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverLinkData_DX11.h +0 -103
  165. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverLinkData_DX11SIMDAware.h +0 -173
  166. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverTriangleData_DX11.h +0 -96
  167. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverVertexBuffer_DX11.h +0 -107
  168. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverVertexData_DX11.h +0 -63
  169. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolver_DX11.h +0 -691
  170. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolver_DX11SIMDAware.h +0 -81
  171. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverBuffer_OpenCL.h +0 -209
  172. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverLinkData_OpenCL.h +0 -99
  173. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverLinkData_OpenCLSIMDAware.h +0 -169
  174. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverOutputCLtoGL.h +0 -62
  175. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverTriangleData_OpenCL.h +0 -84
  176. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverVertexBuffer_OpenGL.h +0 -166
  177. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverVertexData_OpenCL.h +0 -52
  178. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.h +0 -527
  179. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCLSIMDAware.h +0 -81
  180. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h +0 -748
  181. data/deps/include/bullet/BulletMultiThreaded/HeapManager.h +0 -117
  182. data/deps/include/bullet/BulletMultiThreaded/PlatformDefinitions.h +0 -99
  183. data/deps/include/bullet/BulletMultiThreaded/PosixThreadSupport.h +0 -142
  184. data/deps/include/bullet/BulletMultiThreaded/PpuAddressSpace.h +0 -37
  185. data/deps/include/bullet/BulletMultiThreaded/SequentialThreadSupport.h +0 -96
  186. data/deps/include/bullet/BulletMultiThreaded/SpuCollisionObjectWrapper.h +0 -40
  187. data/deps/include/bullet/BulletMultiThreaded/SpuCollisionTaskProcess.h +0 -163
  188. data/deps/include/bullet/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.h +0 -120
  189. data/deps/include/bullet/BulletMultiThreaded/SpuDoubleBuffer.h +0 -126
  190. data/deps/include/bullet/BulletMultiThreaded/SpuFakeDma.h +0 -135
  191. data/deps/include/bullet/BulletMultiThreaded/SpuGatheringCollisionDispatcher.h +0 -72
  192. data/deps/include/bullet/BulletMultiThreaded/SpuLibspe2Support.h +0 -180
  193. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/Box.h +0 -167
  194. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h +0 -128
  195. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h +0 -106
  196. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuConvexPenetrationDepthSolver.h +0 -51
  197. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h +0 -140
  198. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuLocalSupport.h +0 -19
  199. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.h +0 -48
  200. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuPreferredPenetrationDirections.h +0 -70
  201. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.h +0 -65
  202. data/deps/include/bullet/BulletMultiThreaded/SpuSampleTask/SpuSampleTask.h +0 -54
  203. data/deps/include/bullet/BulletMultiThreaded/SpuSampleTaskProcess.h +0 -153
  204. data/deps/include/bullet/BulletMultiThreaded/SpuSync.h +0 -149
  205. data/deps/include/bullet/BulletMultiThreaded/TrbDynBody.h +0 -79
  206. data/deps/include/bullet/BulletMultiThreaded/TrbStateVec.h +0 -339
  207. data/deps/include/bullet/BulletMultiThreaded/Win32ThreadSupport.h +0 -138
  208. data/deps/include/bullet/BulletMultiThreaded/btGpu3DGridBroadphase.h +0 -138
  209. data/deps/include/bullet/BulletMultiThreaded/btGpu3DGridBroadphaseSharedCode.h +0 -430
  210. data/deps/include/bullet/BulletMultiThreaded/btGpu3DGridBroadphaseSharedDefs.h +0 -61
  211. data/deps/include/bullet/BulletMultiThreaded/btGpu3DGridBroadphaseSharedTypes.h +0 -67
  212. data/deps/include/bullet/BulletMultiThreaded/btGpuDefines.h +0 -211
  213. data/deps/include/bullet/BulletMultiThreaded/btGpuUtilsSharedCode.h +0 -55
  214. data/deps/include/bullet/BulletMultiThreaded/btGpuUtilsSharedDefs.h +0 -52
  215. data/deps/include/bullet/BulletMultiThreaded/btParallelConstraintSolver.h +0 -285
  216. data/deps/include/bullet/BulletMultiThreaded/btThreadSupportInterface.h +0 -85
  217. data/deps/include/bullet/BulletMultiThreaded/vectormath2bullet.h +0 -73
  218. data/deps/include/bullet/BulletSoftBody/btDefaultSoftBodySolver.h +0 -63
  219. data/deps/include/bullet/BulletSoftBody/btSoftBody.h +0 -987
  220. data/deps/include/bullet/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h +0 -153
  221. data/deps/include/bullet/BulletSoftBody/btSoftBodyData.h +0 -217
  222. data/deps/include/bullet/BulletSoftBody/btSoftBodyHelpers.h +0 -143
  223. data/deps/include/bullet/BulletSoftBody/btSoftBodyInternals.h +0 -930
  224. data/deps/include/bullet/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.h +0 -48
  225. data/deps/include/bullet/BulletSoftBody/btSoftBodySolverVertexBuffer.h +0 -165
  226. data/deps/include/bullet/BulletSoftBody/btSoftBodySolvers.h +0 -154
  227. data/deps/include/bullet/BulletSoftBody/btSoftRigidCollisionAlgorithm.h +0 -75
  228. data/deps/include/bullet/BulletSoftBody/btSoftRigidDynamicsWorld.h +0 -107
  229. data/deps/include/bullet/BulletSoftBody/btSoftSoftCollisionAlgorithm.h +0 -69
  230. data/deps/include/bullet/BulletSoftBody/btSparseSDF.h +0 -306
  231. data/deps/include/bullet/LinearMath/btAabbUtil2.h +0 -236
  232. data/deps/include/bullet/LinearMath/btAlignedAllocator.h +0 -107
  233. data/deps/include/bullet/LinearMath/btAlignedObjectArray.h +0 -494
  234. data/deps/include/bullet/LinearMath/btConvexHull.h +0 -241
  235. data/deps/include/bullet/LinearMath/btConvexHullComputer.h +0 -103
  236. data/deps/include/bullet/LinearMath/btDefaultMotionState.h +0 -40
  237. data/deps/include/bullet/LinearMath/btGeometryUtil.h +0 -42
  238. data/deps/include/bullet/LinearMath/btGrahamScan2dConvexHull.h +0 -110
  239. data/deps/include/bullet/LinearMath/btHashMap.h +0 -450
  240. data/deps/include/bullet/LinearMath/btIDebugDraw.h +0 -418
  241. data/deps/include/bullet/LinearMath/btList.h +0 -73
  242. data/deps/include/bullet/LinearMath/btMatrix3x3.h +0 -771
  243. data/deps/include/bullet/LinearMath/btMinMax.h +0 -71
  244. data/deps/include/bullet/LinearMath/btMotionState.h +0 -40
  245. data/deps/include/bullet/LinearMath/btPoolAllocator.h +0 -121
  246. data/deps/include/bullet/LinearMath/btQuadWord.h +0 -180
  247. data/deps/include/bullet/LinearMath/btQuaternion.h +0 -430
  248. data/deps/include/bullet/LinearMath/btQuickprof.h +0 -203
  249. data/deps/include/bullet/LinearMath/btRandom.h +0 -42
  250. data/deps/include/bullet/LinearMath/btScalar.h +0 -539
  251. data/deps/include/bullet/LinearMath/btSerializer.h +0 -639
  252. data/deps/include/bullet/LinearMath/btStackAlloc.h +0 -116
  253. data/deps/include/bullet/LinearMath/btTransform.h +0 -307
  254. data/deps/include/bullet/LinearMath/btTransformUtil.h +0 -228
  255. data/deps/include/bullet/LinearMath/btVector3.h +0 -766
  256. data/deps/include/bullet/MiniCL/MiniCLTask/MiniCLTask.h +0 -62
  257. data/deps/include/bullet/MiniCL/MiniCLTaskScheduler.h +0 -194
  258. data/deps/include/bullet/MiniCL/cl.h +0 -867
  259. data/deps/include/bullet/MiniCL/cl_MiniCL_Defs.h +0 -439
  260. data/deps/include/bullet/MiniCL/cl_gl.h +0 -113
  261. data/deps/include/bullet/MiniCL/cl_platform.h +0 -254
  262. data/deps/include/bullet/btBulletCollisionCommon.h +0 -69
  263. data/deps/include/bullet/btBulletDynamicsCommon.h +0 -48
  264. data/deps/include/bullet/vectormath/scalar/boolInVec.h +0 -225
  265. data/deps/include/bullet/vectormath/scalar/floatInVec.h +0 -343
  266. data/deps/include/bullet/vectormath/scalar/mat_aos.h +0 -1630
  267. data/deps/include/bullet/vectormath/scalar/quat_aos.h +0 -433
  268. data/deps/include/bullet/vectormath/scalar/vec_aos.h +0 -1426
  269. data/deps/include/bullet/vectormath/scalar/vectormath_aos.h +0 -1872
  270. data/deps/include/bullet/vectormath/sse/boolInVec.h +0 -247
  271. data/deps/include/bullet/vectormath/sse/floatInVec.h +0 -340
  272. data/deps/include/bullet/vectormath/sse/mat_aos.h +0 -2190
  273. data/deps/include/bullet/vectormath/sse/quat_aos.h +0 -579
  274. data/deps/include/bullet/vectormath/sse/vec_aos.h +0 -1455
  275. data/deps/include/bullet/vectormath/sse/vecidx_aos.h +0 -80
  276. data/deps/include/bullet/vectormath/sse/vectormath_aos.h +0 -2547
  277. data/deps/include/bullet/vectormath/vmInclude.h +0 -27
  278. data/deps/lib/libBulletCollision.a +0 -0
  279. data/deps/lib/libBulletDynamics.a +0 -0
  280. data/deps/lib/libBulletMultiThreaded.a +0 -0
  281. data/deps/lib/libBulletSoftBody.a +0 -0
  282. data/deps/lib/libBulletSoftBodySolvers_OpenCL_Mini.a +0 -0
  283. data/deps/lib/libLinearMath.a +0 -0
  284. data/deps/lib/libMiniCL.a +0 -0
@@ -1,527 +0,0 @@
1
- /*
2
- Bullet Continuous Collision Detection and Physics Library
3
- Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
4
-
5
- This software is provided 'as-is', without any express or implied warranty.
6
- In no event will the authors be held liable for any damages arising from the use of this software.
7
- Permission is granted to anyone to use this software for any purpose,
8
- including commercial applications, and to alter it and redistribute it freely,
9
- subject to the following restrictions:
10
-
11
- 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
12
- 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
13
- 3. This notice may not be removed or altered from any source distribution.
14
- */
15
-
16
- #ifndef BT_SOFT_BODY_SOLVER_OPENCL_H
17
- #define BT_SOFT_BODY_SOLVER_OPENCL_H
18
-
19
- #include "stddef.h" //for size_t
20
- #include "vectormath/vmInclude.h"
21
-
22
- #include "BulletSoftBody/btSoftBodySolvers.h"
23
- #include "BulletSoftBody/btSoftBody.h"
24
- #include "btSoftBodySolverBuffer_OpenCL.h"
25
- #include "btSoftBodySolverLinkData_OpenCL.h"
26
- #include "btSoftBodySolverVertexData_OpenCL.h"
27
- #include "btSoftBodySolverTriangleData_OpenCL.h"
28
-
29
- class CLFunctions
30
- {
31
- protected:
32
- cl_command_queue m_cqCommandQue;
33
- cl_context m_cxMainContext;
34
-
35
- int m_kernelCompilationFailures;
36
-
37
-
38
- public:
39
- CLFunctions(cl_command_queue cqCommandQue, cl_context cxMainContext) :
40
- m_cqCommandQue( cqCommandQue ),
41
- m_cxMainContext( cxMainContext ),
42
- m_kernelCompilationFailures(0)
43
- {
44
- }
45
-
46
- int getKernelCompilationFailures() const
47
- {
48
- return m_kernelCompilationFailures;
49
- }
50
-
51
- /**
52
- * Compile a compute shader kernel from a string and return the appropriate cl_kernel object.
53
- */
54
- virtual cl_kernel compileCLKernelFromString( const char* kernelSource, const char* kernelName, const char* additionalMacros, const char* srcFileNameForCaching);
55
-
56
- void clearKernelCompilationFailures()
57
- {
58
- m_kernelCompilationFailures=0;
59
- }
60
- };
61
-
62
- /**
63
- * Entry in the collision shape array.
64
- * Specifies the shape type, the transform matrix and the necessary details of the collisionShape.
65
- */
66
- struct CollisionShapeDescription
67
- {
68
- Vectormath::Aos::Transform3 shapeTransform;
69
- Vectormath::Aos::Vector3 linearVelocity;
70
- Vectormath::Aos::Vector3 angularVelocity;
71
-
72
- int softBodyIdentifier;
73
- int collisionShapeType;
74
-
75
- // Both needed for capsule
76
- float radius;
77
- float halfHeight;
78
- int upAxis;
79
-
80
- float margin;
81
- float friction;
82
-
83
- CollisionShapeDescription()
84
- {
85
- collisionShapeType = 0;
86
- margin = 0;
87
- friction = 0;
88
- }
89
- };
90
-
91
- /**
92
- * SoftBody class to maintain information about a soft body instance
93
- * within a solver.
94
- * This data addresses the main solver arrays.
95
- */
96
- class btOpenCLAcceleratedSoftBodyInterface
97
- {
98
- protected:
99
- /** Current number of vertices that are part of this cloth */
100
- int m_numVertices;
101
- /** Maximum number of vertices allocated to be part of this cloth */
102
- int m_maxVertices;
103
- /** Current number of triangles that are part of this cloth */
104
- int m_numTriangles;
105
- /** Maximum number of triangles allocated to be part of this cloth */
106
- int m_maxTriangles;
107
- /** Index of first vertex in the world allocated to this cloth */
108
- int m_firstVertex;
109
- /** Index of first triangle in the world allocated to this cloth */
110
- int m_firstTriangle;
111
- /** Index of first link in the world allocated to this cloth */
112
- int m_firstLink;
113
- /** Maximum number of links allocated to this cloth */
114
- int m_maxLinks;
115
- /** Current number of links allocated to this cloth */
116
- int m_numLinks;
117
-
118
- /** The actual soft body this data represents */
119
- btSoftBody *m_softBody;
120
-
121
-
122
- public:
123
- btOpenCLAcceleratedSoftBodyInterface( btSoftBody *softBody ) :
124
- m_softBody( softBody )
125
- {
126
- m_numVertices = 0;
127
- m_maxVertices = 0;
128
- m_numTriangles = 0;
129
- m_maxTriangles = 0;
130
- m_firstVertex = 0;
131
- m_firstTriangle = 0;
132
- m_firstLink = 0;
133
- m_maxLinks = 0;
134
- m_numLinks = 0;
135
- }
136
- int getNumVertices()
137
- {
138
- return m_numVertices;
139
- }
140
-
141
- int getNumTriangles()
142
- {
143
- return m_numTriangles;
144
- }
145
-
146
- int getMaxVertices()
147
- {
148
- return m_maxVertices;
149
- }
150
-
151
- int getMaxTriangles()
152
- {
153
- return m_maxTriangles;
154
- }
155
-
156
- int getFirstVertex()
157
- {
158
- return m_firstVertex;
159
- }
160
-
161
- int getFirstTriangle()
162
- {
163
- return m_firstTriangle;
164
- }
165
-
166
- /**
167
- * Update the bounds in the btSoftBody object
168
- */
169
- void updateBounds( const btVector3 &lowerBound, const btVector3 &upperBound );
170
-
171
- // TODO: All of these set functions will have to do checks and
172
- // update the world because restructuring of the arrays will be necessary
173
- // Reasonable use of "friend"?
174
- void setNumVertices( int numVertices )
175
- {
176
- m_numVertices = numVertices;
177
- }
178
-
179
- void setNumTriangles( int numTriangles )
180
- {
181
- m_numTriangles = numTriangles;
182
- }
183
-
184
- void setMaxVertices( int maxVertices )
185
- {
186
- m_maxVertices = maxVertices;
187
- }
188
-
189
- void setMaxTriangles( int maxTriangles )
190
- {
191
- m_maxTriangles = maxTriangles;
192
- }
193
-
194
- void setFirstVertex( int firstVertex )
195
- {
196
- m_firstVertex = firstVertex;
197
- }
198
-
199
- void setFirstTriangle( int firstTriangle )
200
- {
201
- m_firstTriangle = firstTriangle;
202
- }
203
-
204
- void setMaxLinks( int maxLinks )
205
- {
206
- m_maxLinks = maxLinks;
207
- }
208
-
209
- void setNumLinks( int numLinks )
210
- {
211
- m_numLinks = numLinks;
212
- }
213
-
214
- void setFirstLink( int firstLink )
215
- {
216
- m_firstLink = firstLink;
217
- }
218
-
219
- int getMaxLinks()
220
- {
221
- return m_maxLinks;
222
- }
223
-
224
- int getNumLinks()
225
- {
226
- return m_numLinks;
227
- }
228
-
229
- int getFirstLink()
230
- {
231
- return m_firstLink;
232
- }
233
-
234
- btSoftBody* getSoftBody()
235
- {
236
- return m_softBody;
237
- }
238
-
239
- };
240
-
241
-
242
-
243
- class btOpenCLSoftBodySolver : public btSoftBodySolver
244
- {
245
- public:
246
-
247
-
248
- struct UIntVector3
249
- {
250
- UIntVector3()
251
- {
252
- x = 0;
253
- y = 0;
254
- z = 0;
255
- _padding = 0;
256
- }
257
-
258
- UIntVector3( unsigned int x_, unsigned int y_, unsigned int z_ )
259
- {
260
- x = x_;
261
- y = y_;
262
- z = z_;
263
- _padding = 0;
264
- }
265
-
266
- unsigned int x;
267
- unsigned int y;
268
- unsigned int z;
269
- unsigned int _padding;
270
- };
271
-
272
- struct CollisionObjectIndices
273
- {
274
- CollisionObjectIndices( int f, int e )
275
- {
276
- firstObject = f;
277
- endObject = e;
278
- }
279
-
280
- int firstObject;
281
- int endObject;
282
- };
283
-
284
- btSoftBodyLinkDataOpenCL m_linkData;
285
- btSoftBodyVertexDataOpenCL m_vertexData;
286
- btSoftBodyTriangleDataOpenCL m_triangleData;
287
-
288
- protected:
289
-
290
- CLFunctions m_defaultCLFunctions;
291
- CLFunctions* m_currentCLFunctions;
292
-
293
- /** Variable to define whether we need to update solver constants on the next iteration */
294
- bool m_updateSolverConstants;
295
-
296
- bool m_shadersInitialized;
297
-
298
- /**
299
- * Cloths owned by this solver.
300
- * Only our cloths are in this array.
301
- */
302
- btAlignedObjectArray< btOpenCLAcceleratedSoftBodyInterface * > m_softBodySet;
303
-
304
- /** Acceleration value to be applied to all non-static vertices in the solver.
305
- * Index n is cloth n, array sized by number of cloths in the world not the solver.
306
- */
307
- btAlignedObjectArray< Vectormath::Aos::Vector3 > m_perClothAcceleration;
308
- btOpenCLBuffer<Vectormath::Aos::Vector3> m_clPerClothAcceleration;
309
-
310
- /** Wind velocity to be applied normal to all non-static vertices in the solver.
311
- * Index n is cloth n, array sized by number of cloths in the world not the solver.
312
- */
313
- btAlignedObjectArray< Vectormath::Aos::Vector3 > m_perClothWindVelocity;
314
- btOpenCLBuffer<Vectormath::Aos::Vector3> m_clPerClothWindVelocity;
315
-
316
- /** Velocity damping factor */
317
- btAlignedObjectArray< float > m_perClothDampingFactor;
318
- btOpenCLBuffer<float> m_clPerClothDampingFactor;
319
-
320
- /** Velocity correction coefficient */
321
- btAlignedObjectArray< float > m_perClothVelocityCorrectionCoefficient;
322
- btOpenCLBuffer<float> m_clPerClothVelocityCorrectionCoefficient;
323
-
324
- /** Lift parameter for wind effect on cloth. */
325
- btAlignedObjectArray< float > m_perClothLiftFactor;
326
- btOpenCLBuffer<float> m_clPerClothLiftFactor;
327
-
328
- /** Drag parameter for wind effect on cloth. */
329
- btAlignedObjectArray< float > m_perClothDragFactor;
330
- btOpenCLBuffer<float> m_clPerClothDragFactor;
331
-
332
- /** Density of the medium in which each cloth sits */
333
- btAlignedObjectArray< float > m_perClothMediumDensity;
334
- btOpenCLBuffer<float> m_clPerClothMediumDensity;
335
-
336
- /**
337
- * Collision shape details: pair of index of first collision shape for the cloth and number of collision objects.
338
- */
339
- btAlignedObjectArray< CollisionObjectIndices > m_perClothCollisionObjects;
340
- btOpenCLBuffer<CollisionObjectIndices> m_clPerClothCollisionObjects;
341
-
342
- /**
343
- * Collision shapes being passed across to the cloths in this solver.
344
- */
345
- btAlignedObjectArray< CollisionShapeDescription > m_collisionObjectDetails;
346
- btOpenCLBuffer< CollisionShapeDescription > m_clCollisionObjectDetails;
347
-
348
-
349
-
350
- /**
351
- * Friction coefficient for each cloth
352
- */
353
- btAlignedObjectArray< float > m_perClothFriction;
354
- btOpenCLBuffer< float > m_clPerClothFriction;
355
-
356
- // anchor node info
357
- struct AnchorNodeInfoCL
358
- {
359
- int clVertexIndex;
360
- btSoftBody::Node* pNode;
361
- };
362
-
363
- btAlignedObjectArray<AnchorNodeInfoCL> m_anchorNodeInfoArray;
364
- btAlignedObjectArray<Vectormath::Aos::Point3> m_anchorPosition;
365
- btOpenCLBuffer<Vectormath::Aos::Point3> m_clAnchorPosition;
366
- btAlignedObjectArray<int> m_anchorIndex;
367
- btOpenCLBuffer<int> m_clAnchorIndex;
368
-
369
- bool m_bUpdateAnchoredNodePos;
370
-
371
- cl_kernel m_prepareLinksKernel;
372
- cl_kernel m_solvePositionsFromLinksKernel;
373
- cl_kernel m_updateConstantsKernel;
374
- cl_kernel m_integrateKernel;
375
- cl_kernel m_addVelocityKernel;
376
- cl_kernel m_updatePositionsFromVelocitiesKernel;
377
- cl_kernel m_updateVelocitiesFromPositionsWithoutVelocitiesKernel;
378
- cl_kernel m_updateVelocitiesFromPositionsWithVelocitiesKernel;
379
- cl_kernel m_vSolveLinksKernel;
380
- cl_kernel m_solveCollisionsAndUpdateVelocitiesKernel;
381
- cl_kernel m_resetNormalsAndAreasKernel;
382
- cl_kernel m_normalizeNormalsAndAreasKernel;
383
- cl_kernel m_updateSoftBodiesKernel;
384
-
385
- cl_kernel m_outputToVertexArrayKernel;
386
- cl_kernel m_applyForcesKernel;
387
- cl_kernel m_updateFixedVertexPositionsKernel;
388
-
389
- cl_command_queue m_cqCommandQue;
390
- cl_context m_cxMainContext;
391
-
392
- size_t m_defaultWorkGroupSize;
393
-
394
-
395
- virtual bool buildShaders();
396
-
397
- void resetNormalsAndAreas( int numVertices );
398
-
399
- void normalizeNormalsAndAreas( int numVertices );
400
-
401
- void executeUpdateSoftBodies( int firstTriangle, int numTriangles );
402
-
403
- void prepareCollisionConstraints();
404
-
405
- Vectormath::Aos::Vector3 ProjectOnAxis( const Vectormath::Aos::Vector3 &v, const Vectormath::Aos::Vector3 &a );
406
-
407
- void ApplyClampedForce( float solverdt, const Vectormath::Aos::Vector3 &force, const Vectormath::Aos::Vector3 &vertexVelocity, float inverseMass, Vectormath::Aos::Vector3 &vertexForce );
408
-
409
-
410
- int findSoftBodyIndex( const btSoftBody* const softBody );
411
-
412
- virtual void applyForces( float solverdt );
413
-
414
- void updateFixedVertexPositions();
415
-
416
- /**
417
- * Integrate motion on the solver.
418
- */
419
- virtual void integrate( float solverdt );
420
-
421
- virtual void updateConstants( float timeStep );
422
-
423
- float computeTriangleArea(
424
- const Vectormath::Aos::Point3 &vertex0,
425
- const Vectormath::Aos::Point3 &vertex1,
426
- const Vectormath::Aos::Point3 &vertex2 );
427
-
428
-
429
- //////////////////////////////////////
430
- // Kernel dispatches
431
- void prepareLinks();
432
-
433
- void solveLinksForVelocity( int startLink, int numLinks, float kst );
434
-
435
- void updatePositionsFromVelocities( float solverdt );
436
-
437
- virtual void solveLinksForPosition( int startLink, int numLinks, float kst, float ti );
438
-
439
- void updateVelocitiesFromPositionsWithVelocities( float isolverdt );
440
-
441
- void updateVelocitiesFromPositionsWithoutVelocities( float isolverdt );
442
- virtual void solveCollisionsAndUpdateVelocities( float isolverdt );
443
-
444
- // End kernel dispatches
445
- /////////////////////////////////////
446
-
447
- void updateBounds();
448
-
449
- void releaseKernels();
450
-
451
- public:
452
- btOpenCLSoftBodySolver(cl_command_queue queue,cl_context ctx, bool bUpdateAchchoredNodePos = false);
453
-
454
- virtual ~btOpenCLSoftBodySolver();
455
-
456
-
457
-
458
- btOpenCLAcceleratedSoftBodyInterface *findSoftBodyInterface( const btSoftBody* const softBody );
459
-
460
- virtual btSoftBodyLinkData &getLinkData();
461
-
462
- virtual btSoftBodyVertexData &getVertexData();
463
-
464
- virtual btSoftBodyTriangleData &getTriangleData();
465
-
466
- virtual SolverTypes getSolverType() const
467
- {
468
- return CL_SOLVER;
469
- }
470
-
471
-
472
- virtual bool checkInitialized();
473
-
474
- virtual void updateSoftBodies( );
475
-
476
- virtual void optimize( btAlignedObjectArray< btSoftBody * > &softBodies , bool forceUpdate=false);
477
-
478
- virtual void copyBackToSoftBodies(bool bMove = true);
479
-
480
- virtual void solveConstraints( float solverdt );
481
-
482
- virtual void predictMotion( float solverdt );
483
-
484
- virtual void processCollision( btSoftBody *, btCollisionObject* );
485
-
486
- virtual void processCollision( btSoftBody*, btSoftBody* );
487
-
488
- virtual void setDefaultWorkgroupSize(size_t workGroupSize)
489
- {
490
- m_defaultWorkGroupSize = workGroupSize;
491
- }
492
- virtual size_t getDefaultWorkGroupSize() const
493
- {
494
- return m_defaultWorkGroupSize;
495
- }
496
-
497
- void setCLFunctions(CLFunctions* funcs)
498
- {
499
- if (funcs)
500
- m_currentCLFunctions = funcs;
501
- else
502
- m_currentCLFunctions = &m_defaultCLFunctions;
503
- }
504
-
505
- }; // btOpenCLSoftBodySolver
506
-
507
-
508
- /**
509
- * Class to manage movement of data from a solver to a given target.
510
- * This version is the CL to CPU version.
511
- */
512
- class btSoftBodySolverOutputCLtoCPU : public btSoftBodySolverOutput
513
- {
514
- protected:
515
-
516
- public:
517
- btSoftBodySolverOutputCLtoCPU()
518
- {
519
- }
520
-
521
- /** Output current computed vertex data to the vertex buffers for all cloths in the solver. */
522
- virtual void copySoftBodyToVertexBuffer( const btSoftBody * const softBody, btVertexBufferDescriptor *vertexBuffer );
523
- };
524
-
525
-
526
-
527
- #endif // #ifndef BT_SOFT_BODY_SOLVER_OPENCL_H
@@ -1,81 +0,0 @@
1
- /*
2
- Bullet Continuous Collision Detection and Physics Library
3
- Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
4
-
5
- This software is provided 'as-is', without any express or implied warranty.
6
- In no event will the authors be held liable for any damages arising from the use of this software.
7
- Permission is granted to anyone to use this software for any purpose,
8
- including commercial applications, and to alter it and redistribute it freely,
9
- subject to the following restrictions:
10
-
11
- 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
12
- 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
13
- 3. This notice may not be removed or altered from any source distribution.
14
- */
15
-
16
- #ifndef BT_SOFT_BODY_SOLVER_OPENCL_SIMDAWARE_H
17
- #define BT_SOFT_BODY_SOLVER_OPENCL_SIMDAWARE_H
18
-
19
- #include "stddef.h" //for size_t
20
- #include "vectormath/vmInclude.h"
21
-
22
- #include "btSoftBodySolver_OpenCL.h"
23
- #include "btSoftBodySolverBuffer_OpenCL.h"
24
- #include "btSoftBodySolverLinkData_OpenCLSIMDAware.h"
25
- #include "btSoftBodySolverVertexData_OpenCL.h"
26
- #include "btSoftBodySolverTriangleData_OpenCL.h"
27
-
28
-
29
-
30
-
31
-
32
- class btOpenCLSoftBodySolverSIMDAware : public btOpenCLSoftBodySolver
33
- {
34
- protected:
35
-
36
-
37
- btSoftBodyLinkDataOpenCLSIMDAware m_linkData;
38
-
39
-
40
-
41
-
42
- virtual bool buildShaders();
43
-
44
-
45
- void updateConstants( float timeStep );
46
-
47
- float computeTriangleArea(
48
- const Vectormath::Aos::Point3 &vertex0,
49
- const Vectormath::Aos::Point3 &vertex1,
50
- const Vectormath::Aos::Point3 &vertex2 );
51
-
52
-
53
- //////////////////////////////////////
54
- // Kernel dispatches
55
- void solveLinksForPosition( int startLink, int numLinks, float kst, float ti );
56
-
57
- void solveCollisionsAndUpdateVelocities( float isolverdt );
58
- // End kernel dispatches
59
- /////////////////////////////////////
60
-
61
- public:
62
- btOpenCLSoftBodySolverSIMDAware(cl_command_queue queue,cl_context ctx, bool bUpdateAchchoredNodePos = false);
63
-
64
- virtual ~btOpenCLSoftBodySolverSIMDAware();
65
-
66
- virtual SolverTypes getSolverType() const
67
- {
68
- return CL_SIMD_SOLVER;
69
- }
70
-
71
-
72
- virtual btSoftBodyLinkData &getLinkData();
73
-
74
-
75
- virtual void optimize( btAlignedObjectArray< btSoftBody * > &softBodies , bool forceUpdate=false);
76
-
77
- virtual void solveConstraints( float solverdt );
78
-
79
- }; // btOpenCLSoftBodySolverSIMDAware
80
-
81
- #endif // #ifndef BT_SOFT_BODY_SOLVER_OPENCL_SIMDAWARE_H