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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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