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,139 +0,0 @@
1
- /*
2
- Bullet Continuous Collision Detection and Physics Library
3
- Copyright (c) 2003-2009 Erwin Coumans http://bulletphysics.org
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_BVH_TRIANGLE_MESH_SHAPE_H
17
- #define BT_BVH_TRIANGLE_MESH_SHAPE_H
18
-
19
- #include "btTriangleMeshShape.h"
20
- #include "btOptimizedBvh.h"
21
- #include "LinearMath/btAlignedAllocator.h"
22
- #include "btTriangleInfoMap.h"
23
-
24
- ///The btBvhTriangleMeshShape is a static-triangle mesh shape with several optimizations, such as bounding volume hierarchy and cache friendly traversal for PlayStation 3 Cell SPU. It is recommended to enable useQuantizedAabbCompression for better memory usage.
25
- ///It takes a triangle mesh as input, for example a btTriangleMesh or btTriangleIndexVertexArray. The btBvhTriangleMeshShape class allows for triangle mesh deformations by a refit or partialRefit method.
26
- ///Instead of building the bounding volume hierarchy acceleration structure, it is also possible to serialize (save) and deserialize (load) the structure from disk.
27
- ///See Demos\ConcaveDemo\ConcavePhysicsDemo.cpp for an example.
28
- ATTRIBUTE_ALIGNED16(class) btBvhTriangleMeshShape : public btTriangleMeshShape
29
- {
30
-
31
- btOptimizedBvh* m_bvh;
32
- btTriangleInfoMap* m_triangleInfoMap;
33
-
34
- bool m_useQuantizedAabbCompression;
35
- bool m_ownsBvh;
36
- bool m_pad[11];////need padding due to alignment
37
-
38
- public:
39
-
40
- BT_DECLARE_ALIGNED_ALLOCATOR();
41
-
42
-
43
- btBvhTriangleMeshShape(btStridingMeshInterface* meshInterface, bool useQuantizedAabbCompression, bool buildBvh = true);
44
-
45
- ///optionally pass in a larger bvh aabb, used for quantization. This allows for deformations within this aabb
46
- btBvhTriangleMeshShape(btStridingMeshInterface* meshInterface, bool useQuantizedAabbCompression,const btVector3& bvhAabbMin,const btVector3& bvhAabbMax, bool buildBvh = true);
47
-
48
- virtual ~btBvhTriangleMeshShape();
49
-
50
- bool getOwnsBvh () const
51
- {
52
- return m_ownsBvh;
53
- }
54
-
55
-
56
-
57
- void performRaycast (btTriangleCallback* callback, const btVector3& raySource, const btVector3& rayTarget);
58
- void performConvexcast (btTriangleCallback* callback, const btVector3& boxSource, const btVector3& boxTarget, const btVector3& boxMin, const btVector3& boxMax);
59
-
60
- virtual void processAllTriangles(btTriangleCallback* callback,const btVector3& aabbMin,const btVector3& aabbMax) const;
61
-
62
- void refitTree(const btVector3& aabbMin,const btVector3& aabbMax);
63
-
64
- ///for a fast incremental refit of parts of the tree. Note: the entire AABB of the tree will become more conservative, it never shrinks
65
- void partialRefitTree(const btVector3& aabbMin,const btVector3& aabbMax);
66
-
67
- //debugging
68
- virtual const char* getName()const {return "BVHTRIANGLEMESH";}
69
-
70
-
71
- virtual void setLocalScaling(const btVector3& scaling);
72
-
73
- btOptimizedBvh* getOptimizedBvh()
74
- {
75
- return m_bvh;
76
- }
77
-
78
- void setOptimizedBvh(btOptimizedBvh* bvh, const btVector3& localScaling=btVector3(1,1,1));
79
-
80
- void buildOptimizedBvh();
81
-
82
- bool usesQuantizedAabbCompression() const
83
- {
84
- return m_useQuantizedAabbCompression;
85
- }
86
-
87
- void setTriangleInfoMap(btTriangleInfoMap* triangleInfoMap)
88
- {
89
- m_triangleInfoMap = triangleInfoMap;
90
- }
91
-
92
- const btTriangleInfoMap* getTriangleInfoMap() const
93
- {
94
- return m_triangleInfoMap;
95
- }
96
-
97
- btTriangleInfoMap* getTriangleInfoMap()
98
- {
99
- return m_triangleInfoMap;
100
- }
101
-
102
- virtual int calculateSerializeBufferSize() const;
103
-
104
- ///fills the dataBuffer and returns the struct name (and 0 on failure)
105
- virtual const char* serialize(void* dataBuffer, btSerializer* serializer) const;
106
-
107
- virtual void serializeSingleBvh(btSerializer* serializer) const;
108
-
109
- virtual void serializeSingleTriangleInfoMap(btSerializer* serializer) const;
110
-
111
- };
112
-
113
- ///do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64
114
- struct btTriangleMeshShapeData
115
- {
116
- btCollisionShapeData m_collisionShapeData;
117
-
118
- btStridingMeshInterfaceData m_meshInterface;
119
-
120
- btQuantizedBvhFloatData *m_quantizedFloatBvh;
121
- btQuantizedBvhDoubleData *m_quantizedDoubleBvh;
122
-
123
- btTriangleInfoMapData *m_triangleInfoMap;
124
-
125
- float m_collisionMargin;
126
-
127
- char m_pad3[4];
128
-
129
- };
130
-
131
-
132
- SIMD_FORCE_INLINE int btBvhTriangleMeshShape::calculateSerializeBufferSize() const
133
- {
134
- return sizeof(btTriangleMeshShapeData);
135
- }
136
-
137
-
138
-
139
- #endif //BT_BVH_TRIANGLE_MESH_SHAPE_H
@@ -1,173 +0,0 @@
1
- /*
2
- Bullet Continuous Collision Detection and Physics Library
3
- Copyright (c) 2003-2009 Erwin Coumans http://bulletphysics.org
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_CAPSULE_SHAPE_H
17
- #define BT_CAPSULE_SHAPE_H
18
-
19
- #include "btConvexInternalShape.h"
20
- #include "BulletCollision/BroadphaseCollision/btBroadphaseProxy.h" // for the types
21
-
22
-
23
- ///The btCapsuleShape represents a capsule around the Y axis, there is also the btCapsuleShapeX aligned around the X axis and btCapsuleShapeZ around the Z axis.
24
- ///The total height is height+2*radius, so the height is just the height between the center of each 'sphere' of the capsule caps.
25
- ///The btCapsuleShape is a convex hull of two spheres. The btMultiSphereShape is a more general collision shape that takes the convex hull of multiple sphere, so it can also represent a capsule when just using two spheres.
26
- class btCapsuleShape : public btConvexInternalShape
27
- {
28
- protected:
29
- int m_upAxis;
30
-
31
- protected:
32
- ///only used for btCapsuleShapeZ and btCapsuleShapeX subclasses.
33
- btCapsuleShape() : btConvexInternalShape() {m_shapeType = CAPSULE_SHAPE_PROXYTYPE;};
34
-
35
- public:
36
- btCapsuleShape(btScalar radius,btScalar height);
37
-
38
- ///CollisionShape Interface
39
- virtual void calculateLocalInertia(btScalar mass,btVector3& inertia) const;
40
-
41
- /// btConvexShape Interface
42
- virtual btVector3 localGetSupportingVertexWithoutMargin(const btVector3& vec)const;
43
-
44
- virtual void batchedUnitVectorGetSupportingVertexWithoutMargin(const btVector3* vectors,btVector3* supportVerticesOut,int numVectors) const;
45
-
46
- virtual void setMargin(btScalar collisionMargin)
47
- {
48
- //correct the m_implicitShapeDimensions for the margin
49
- btVector3 oldMargin(getMargin(),getMargin(),getMargin());
50
- btVector3 implicitShapeDimensionsWithMargin = m_implicitShapeDimensions+oldMargin;
51
-
52
- btConvexInternalShape::setMargin(collisionMargin);
53
- btVector3 newMargin(getMargin(),getMargin(),getMargin());
54
- m_implicitShapeDimensions = implicitShapeDimensionsWithMargin - newMargin;
55
-
56
- }
57
-
58
- virtual void getAabb (const btTransform& t, btVector3& aabbMin, btVector3& aabbMax) const
59
- {
60
- btVector3 halfExtents(getRadius(),getRadius(),getRadius());
61
- halfExtents[m_upAxis] = getRadius() + getHalfHeight();
62
- halfExtents += btVector3(getMargin(),getMargin(),getMargin());
63
- btMatrix3x3 abs_b = t.getBasis().absolute();
64
- btVector3 center = t.getOrigin();
65
- btVector3 extent = btVector3(abs_b[0].dot(halfExtents),abs_b[1].dot(halfExtents),abs_b[2].dot(halfExtents));
66
-
67
- aabbMin = center - extent;
68
- aabbMax = center + extent;
69
- }
70
-
71
- virtual const char* getName()const
72
- {
73
- return "CapsuleShape";
74
- }
75
-
76
- int getUpAxis() const
77
- {
78
- return m_upAxis;
79
- }
80
-
81
- btScalar getRadius() const
82
- {
83
- int radiusAxis = (m_upAxis+2)%3;
84
- return m_implicitShapeDimensions[radiusAxis];
85
- }
86
-
87
- btScalar getHalfHeight() const
88
- {
89
- return m_implicitShapeDimensions[m_upAxis];
90
- }
91
-
92
- virtual void setLocalScaling(const btVector3& scaling)
93
- {
94
- btVector3 oldMargin(getMargin(),getMargin(),getMargin());
95
- btVector3 implicitShapeDimensionsWithMargin = m_implicitShapeDimensions+oldMargin;
96
- btVector3 unScaledImplicitShapeDimensionsWithMargin = implicitShapeDimensionsWithMargin / m_localScaling;
97
-
98
- btConvexInternalShape::setLocalScaling(scaling);
99
-
100
- m_implicitShapeDimensions = (unScaledImplicitShapeDimensionsWithMargin * m_localScaling) - oldMargin;
101
-
102
- }
103
-
104
- virtual int calculateSerializeBufferSize() const;
105
-
106
- ///fills the dataBuffer and returns the struct name (and 0 on failure)
107
- virtual const char* serialize(void* dataBuffer, btSerializer* serializer) const;
108
-
109
-
110
- };
111
-
112
- ///btCapsuleShapeX represents a capsule around the Z axis
113
- ///the total height is height+2*radius, so the height is just the height between the center of each 'sphere' of the capsule caps.
114
- class btCapsuleShapeX : public btCapsuleShape
115
- {
116
- public:
117
-
118
- btCapsuleShapeX(btScalar radius,btScalar height);
119
-
120
- //debugging
121
- virtual const char* getName()const
122
- {
123
- return "CapsuleX";
124
- }
125
-
126
-
127
-
128
- };
129
-
130
- ///btCapsuleShapeZ represents a capsule around the Z axis
131
- ///the total height is height+2*radius, so the height is just the height between the center of each 'sphere' of the capsule caps.
132
- class btCapsuleShapeZ : public btCapsuleShape
133
- {
134
- public:
135
- btCapsuleShapeZ(btScalar radius,btScalar height);
136
-
137
- //debugging
138
- virtual const char* getName()const
139
- {
140
- return "CapsuleZ";
141
- }
142
-
143
-
144
- };
145
-
146
- ///do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64
147
- struct btCapsuleShapeData
148
- {
149
- btConvexInternalShapeData m_convexInternalShapeData;
150
-
151
- int m_upAxis;
152
-
153
- char m_padding[4];
154
- };
155
-
156
- SIMD_FORCE_INLINE int btCapsuleShape::calculateSerializeBufferSize() const
157
- {
158
- return sizeof(btCapsuleShapeData);
159
- }
160
-
161
- ///fills the dataBuffer and returns the struct name (and 0 on failure)
162
- SIMD_FORCE_INLINE const char* btCapsuleShape::serialize(void* dataBuffer, btSerializer* serializer) const
163
- {
164
- btCapsuleShapeData* shapeData = (btCapsuleShapeData*) dataBuffer;
165
-
166
- btConvexInternalShape::serialize(&shapeData->m_convexInternalShapeData,serializer);
167
-
168
- shapeData->m_upAxis = m_upAxis;
169
-
170
- return "btCapsuleShapeData";
171
- }
172
-
173
- #endif //BT_CAPSULE_SHAPE_H
@@ -1,27 +0,0 @@
1
- /*
2
- Bullet Continuous Collision Detection and Physics Library
3
- Copyright (c) 2003-2009 Erwin Coumans http://bulletphysics.org
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_COLLISION_MARGIN_H
17
- #define BT_COLLISION_MARGIN_H
18
-
19
- ///The CONVEX_DISTANCE_MARGIN is a default collision margin for convex collision shapes derived from btConvexInternalShape.
20
- ///This collision margin is used by Gjk and some other algorithms
21
- ///Note that when creating small objects, you need to make sure to set a smaller collision margin, using the 'setMargin' API
22
- #define CONVEX_DISTANCE_MARGIN btScalar(0.04)// btScalar(0.1)//;//btScalar(0.01)
23
-
24
-
25
-
26
- #endif //BT_COLLISION_MARGIN_H
27
-
@@ -1,150 +0,0 @@
1
- /*
2
- Bullet Continuous Collision Detection and Physics Library
3
- Copyright (c) 2003-2009 Erwin Coumans http://bulletphysics.org
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_COLLISION_SHAPE_H
17
- #define BT_COLLISION_SHAPE_H
18
-
19
- #include "LinearMath/btTransform.h"
20
- #include "LinearMath/btVector3.h"
21
- #include "LinearMath/btMatrix3x3.h"
22
- #include "BulletCollision/BroadphaseCollision/btBroadphaseProxy.h" //for the shape types
23
- class btSerializer;
24
-
25
-
26
- ///The btCollisionShape class provides an interface for collision shapes that can be shared among btCollisionObjects.
27
- class btCollisionShape
28
- {
29
- protected:
30
- int m_shapeType;
31
- void* m_userPointer;
32
-
33
- public:
34
-
35
- btCollisionShape() : m_shapeType (INVALID_SHAPE_PROXYTYPE), m_userPointer(0)
36
- {
37
- }
38
-
39
- virtual ~btCollisionShape()
40
- {
41
- }
42
-
43
- ///getAabb returns the axis aligned bounding box in the coordinate frame of the given transform t.
44
- virtual void getAabb(const btTransform& t,btVector3& aabbMin,btVector3& aabbMax) const =0;
45
-
46
- virtual void getBoundingSphere(btVector3& center,btScalar& radius) const;
47
-
48
- ///getAngularMotionDisc returns the maximus radius needed for Conservative Advancement to handle time-of-impact with rotations.
49
- virtual btScalar getAngularMotionDisc() const;
50
-
51
- virtual btScalar getContactBreakingThreshold(btScalar defaultContactThresholdFactor) const;
52
-
53
-
54
- ///calculateTemporalAabb calculates the enclosing aabb for the moving object over interval [0..timeStep)
55
- ///result is conservative
56
- void calculateTemporalAabb(const btTransform& curTrans,const btVector3& linvel,const btVector3& angvel,btScalar timeStep, btVector3& temporalAabbMin,btVector3& temporalAabbMax) const;
57
-
58
-
59
-
60
- SIMD_FORCE_INLINE bool isPolyhedral() const
61
- {
62
- return btBroadphaseProxy::isPolyhedral(getShapeType());
63
- }
64
-
65
- SIMD_FORCE_INLINE bool isConvex2d() const
66
- {
67
- return btBroadphaseProxy::isConvex2d(getShapeType());
68
- }
69
-
70
- SIMD_FORCE_INLINE bool isConvex() const
71
- {
72
- return btBroadphaseProxy::isConvex(getShapeType());
73
- }
74
- SIMD_FORCE_INLINE bool isNonMoving() const
75
- {
76
- return btBroadphaseProxy::isNonMoving(getShapeType());
77
- }
78
- SIMD_FORCE_INLINE bool isConcave() const
79
- {
80
- return btBroadphaseProxy::isConcave(getShapeType());
81
- }
82
- SIMD_FORCE_INLINE bool isCompound() const
83
- {
84
- return btBroadphaseProxy::isCompound(getShapeType());
85
- }
86
-
87
- SIMD_FORCE_INLINE bool isSoftBody() const
88
- {
89
- return btBroadphaseProxy::isSoftBody(getShapeType());
90
- }
91
-
92
- ///isInfinite is used to catch simulation error (aabb check)
93
- SIMD_FORCE_INLINE bool isInfinite() const
94
- {
95
- return btBroadphaseProxy::isInfinite(getShapeType());
96
- }
97
-
98
- #ifndef __SPU__
99
- virtual void setLocalScaling(const btVector3& scaling) =0;
100
- virtual const btVector3& getLocalScaling() const =0;
101
- virtual void calculateLocalInertia(btScalar mass,btVector3& inertia) const = 0;
102
-
103
-
104
- //debugging support
105
- virtual const char* getName()const =0 ;
106
- #endif //__SPU__
107
-
108
-
109
- int getShapeType() const { return m_shapeType; }
110
- virtual void setMargin(btScalar margin) = 0;
111
- virtual btScalar getMargin() const = 0;
112
-
113
-
114
- ///optional user data pointer
115
- void setUserPointer(void* userPtr)
116
- {
117
- m_userPointer = userPtr;
118
- }
119
-
120
- void* getUserPointer() const
121
- {
122
- return m_userPointer;
123
- }
124
-
125
- virtual int calculateSerializeBufferSize() const;
126
-
127
- ///fills the dataBuffer and returns the struct name (and 0 on failure)
128
- virtual const char* serialize(void* dataBuffer, btSerializer* serializer) const;
129
-
130
- virtual void serializeSingleShape(btSerializer* serializer) const;
131
-
132
- };
133
-
134
- ///do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64
135
- struct btCollisionShapeData
136
- {
137
- char *m_name;
138
- int m_shapeType;
139
- char m_padding[4];
140
- };
141
-
142
- SIMD_FORCE_INLINE int btCollisionShape::calculateSerializeBufferSize() const
143
- {
144
- return sizeof(btCollisionShapeData);
145
- }
146
-
147
-
148
-
149
- #endif //BT_COLLISION_SHAPE_H
150
-
@@ -1,212 +0,0 @@
1
- /*
2
- Bullet Continuous Collision Detection and Physics Library
3
- Copyright (c) 2003-2009 Erwin Coumans http://bulletphysics.org
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_COMPOUND_SHAPE_H
17
- #define BT_COMPOUND_SHAPE_H
18
-
19
- #include "btCollisionShape.h"
20
-
21
- #include "LinearMath/btVector3.h"
22
- #include "LinearMath/btTransform.h"
23
- #include "LinearMath/btMatrix3x3.h"
24
- #include "btCollisionMargin.h"
25
- #include "LinearMath/btAlignedObjectArray.h"
26
-
27
- //class btOptimizedBvh;
28
- struct btDbvt;
29
-
30
- ATTRIBUTE_ALIGNED16(struct) btCompoundShapeChild
31
- {
32
- BT_DECLARE_ALIGNED_ALLOCATOR();
33
-
34
- btTransform m_transform;
35
- btCollisionShape* m_childShape;
36
- int m_childShapeType;
37
- btScalar m_childMargin;
38
- struct btDbvtNode* m_node;
39
- };
40
-
41
- SIMD_FORCE_INLINE bool operator==(const btCompoundShapeChild& c1, const btCompoundShapeChild& c2)
42
- {
43
- return ( c1.m_transform == c2.m_transform &&
44
- c1.m_childShape == c2.m_childShape &&
45
- c1.m_childShapeType == c2.m_childShapeType &&
46
- c1.m_childMargin == c2.m_childMargin );
47
- }
48
-
49
- /// The btCompoundShape allows to store multiple other btCollisionShapes
50
- /// This allows for moving concave collision objects. This is more general then the static concave btBvhTriangleMeshShape.
51
- /// It has an (optional) dynamic aabb tree to accelerate early rejection tests.
52
- /// @todo: This aabb tree can also be use to speed up ray tests on btCompoundShape, see http://code.google.com/p/bullet/issues/detail?id=25
53
- /// Currently, removal of child shapes is only supported when disabling the aabb tree (pass 'false' in the constructor of btCompoundShape)
54
- ATTRIBUTE_ALIGNED16(class) btCompoundShape : public btCollisionShape
55
- {
56
- btAlignedObjectArray<btCompoundShapeChild> m_children;
57
- btVector3 m_localAabbMin;
58
- btVector3 m_localAabbMax;
59
-
60
- btDbvt* m_dynamicAabbTree;
61
-
62
- ///increment m_updateRevision when adding/removing/replacing child shapes, so that some caches can be updated
63
- int m_updateRevision;
64
-
65
- btScalar m_collisionMargin;
66
-
67
- protected:
68
- btVector3 m_localScaling;
69
-
70
- public:
71
- BT_DECLARE_ALIGNED_ALLOCATOR();
72
-
73
- btCompoundShape(bool enableDynamicAabbTree = true);
74
-
75
- virtual ~btCompoundShape();
76
-
77
- void addChildShape(const btTransform& localTransform,btCollisionShape* shape);
78
-
79
- /// Remove all children shapes that contain the specified shape
80
- virtual void removeChildShape(btCollisionShape* shape);
81
-
82
- void removeChildShapeByIndex(int childShapeindex);
83
-
84
-
85
- int getNumChildShapes() const
86
- {
87
- return int (m_children.size());
88
- }
89
-
90
- btCollisionShape* getChildShape(int index)
91
- {
92
- return m_children[index].m_childShape;
93
- }
94
- const btCollisionShape* getChildShape(int index) const
95
- {
96
- return m_children[index].m_childShape;
97
- }
98
-
99
- btTransform& getChildTransform(int index)
100
- {
101
- return m_children[index].m_transform;
102
- }
103
- const btTransform& getChildTransform(int index) const
104
- {
105
- return m_children[index].m_transform;
106
- }
107
-
108
- ///set a new transform for a child, and update internal data structures (local aabb and dynamic tree)
109
- void updateChildTransform(int childIndex, const btTransform& newChildTransform, bool shouldRecalculateLocalAabb = true);
110
-
111
-
112
- btCompoundShapeChild* getChildList()
113
- {
114
- return &m_children[0];
115
- }
116
-
117
- ///getAabb's default implementation is brute force, expected derived classes to implement a fast dedicated version
118
- virtual void getAabb(const btTransform& t,btVector3& aabbMin,btVector3& aabbMax) const;
119
-
120
- /** Re-calculate the local Aabb. Is called at the end of removeChildShapes.
121
- Use this yourself if you modify the children or their transforms. */
122
- virtual void recalculateLocalAabb();
123
-
124
- virtual void setLocalScaling(const btVector3& scaling);
125
-
126
- virtual const btVector3& getLocalScaling() const
127
- {
128
- return m_localScaling;
129
- }
130
-
131
- virtual void calculateLocalInertia(btScalar mass,btVector3& inertia) const;
132
-
133
- virtual void setMargin(btScalar margin)
134
- {
135
- m_collisionMargin = margin;
136
- }
137
- virtual btScalar getMargin() const
138
- {
139
- return m_collisionMargin;
140
- }
141
- virtual const char* getName()const
142
- {
143
- return "Compound";
144
- }
145
-
146
- const btDbvt* getDynamicAabbTree() const
147
- {
148
- return m_dynamicAabbTree;
149
- }
150
-
151
- btDbvt* getDynamicAabbTree()
152
- {
153
- return m_dynamicAabbTree;
154
- }
155
-
156
- void createAabbTreeFromChildren();
157
-
158
- ///computes the exact moment of inertia and the transform from the coordinate system defined by the principal axes of the moment of inertia
159
- ///and the center of mass to the current coordinate system. "masses" points to an array of masses of the children. The resulting transform
160
- ///"principal" has to be applied inversely to all children transforms in order for the local coordinate system of the compound
161
- ///shape to be centered at the center of mass and to coincide with the principal axes. This also necessitates a correction of the world transform
162
- ///of the collision object by the principal transform.
163
- void calculatePrincipalAxisTransform(btScalar* masses, btTransform& principal, btVector3& inertia) const;
164
-
165
- int getUpdateRevision() const
166
- {
167
- return m_updateRevision;
168
- }
169
-
170
- virtual int calculateSerializeBufferSize() const;
171
-
172
- ///fills the dataBuffer and returns the struct name (and 0 on failure)
173
- virtual const char* serialize(void* dataBuffer, btSerializer* serializer) const;
174
-
175
-
176
- };
177
-
178
- ///do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64
179
- struct btCompoundShapeChildData
180
- {
181
- btTransformFloatData m_transform;
182
- btCollisionShapeData *m_childShape;
183
- int m_childShapeType;
184
- float m_childMargin;
185
- };
186
-
187
- ///do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64
188
- struct btCompoundShapeData
189
- {
190
- btCollisionShapeData m_collisionShapeData;
191
-
192
- btCompoundShapeChildData *m_childShapePtr;
193
-
194
- int m_numChildShapes;
195
-
196
- float m_collisionMargin;
197
-
198
- };
199
-
200
-
201
- SIMD_FORCE_INLINE int btCompoundShape::calculateSerializeBufferSize() const
202
- {
203
- return sizeof(btCompoundShapeData);
204
- }
205
-
206
-
207
-
208
-
209
-
210
-
211
-
212
- #endif //BT_COMPOUND_SHAPE_H