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,509 +0,0 @@
1
- /*
2
- Bullet Continuous Collision Detection and Physics Library
3
- Copyright (c) 2003-2006 Erwin Coumans http://bulletphysics.com/Bullet/
4
-
5
- This software is provided 'as-is', without any express or implied warranty.
6
- In no event will the authors be held liable for any damages arising from the use of this software.
7
- Permission is granted to anyone to use this software for any purpose,
8
- including commercial applications, and to alter it and redistribute it freely,
9
- subject to the following restrictions:
10
-
11
- 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
12
- 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
13
- 3. This notice may not be removed or altered from any source distribution.
14
- */
15
-
16
-
17
- /**
18
- * @mainpage Bullet Documentation
19
- *
20
- * @section intro_sec Introduction
21
- * Bullet Collision Detection & Physics SDK
22
- *
23
- * Bullet is a Collision Detection and Rigid Body Dynamics Library. The Library is Open Source and free for commercial use, under the ZLib license ( http://opensource.org/licenses/zlib-license.php ).
24
- *
25
- * The main documentation is Bullet_User_Manual.pdf, included in the source code distribution.
26
- * There is the Physics Forum for feedback and general Collision Detection and Physics discussions.
27
- * Please visit http://www.bulletphysics.com
28
- *
29
- * @section install_sec Installation
30
- *
31
- * @subsection step1 Step 1: Download
32
- * You can download the Bullet Physics Library from the Google Code repository: http://code.google.com/p/bullet/downloads/list
33
- *
34
- * @subsection step2 Step 2: Building
35
- * Bullet main build system for all platforms is cmake, you can download http://www.cmake.org
36
- * cmake can autogenerate projectfiles for Microsoft Visual Studio, Apple Xcode, KDevelop and Unix Makefiles.
37
- * The easiest is to run the CMake cmake-gui graphical user interface and choose the options and generate projectfiles.
38
- * You can also use cmake in the command-line. Here are some examples for various platforms:
39
- * cmake . -G "Visual Studio 9 2008"
40
- * cmake . -G Xcode
41
- * cmake . -G "Unix Makefiles"
42
- * Although cmake is recommended, you can also use autotools for UNIX: ./autogen.sh ./configure to create a Makefile and then run make.
43
- *
44
- * @subsection step3 Step 3: Testing demos
45
- * Try to run and experiment with BasicDemo executable as a starting point.
46
- * Bullet can be used in several ways, as Full Rigid Body simulation, as Collision Detector Library or Low Level / Snippets like the GJK Closest Point calculation.
47
- * The Dependencies can be seen in this documentation under Directories
48
- *
49
- * @subsection step4 Step 4: Integrating in your application, full Rigid Body and Soft Body simulation
50
- * Check out BasicDemo how to create a btDynamicsWorld, btRigidBody and btCollisionShape, Stepping the simulation and synchronizing your graphics object transform.
51
- * Check out SoftDemo how to use soft body dynamics, using btSoftRigidDynamicsWorld.
52
- * @subsection step5 Step 5 : Integrate the Collision Detection Library (without Dynamics and other Extras)
53
- * Bullet Collision Detection can also be used without the Dynamics/Extras.
54
- * Check out btCollisionWorld and btCollisionObject, and the CollisionInterfaceDemo.
55
- * @subsection step6 Step 6 : Use Snippets like the GJK Closest Point calculation.
56
- * Bullet has been designed in a modular way keeping dependencies to a minimum. The ConvexHullDistance demo demonstrates direct use of btGjkPairDetector.
57
- *
58
- * @section copyright Copyright
59
- * For up-to-data information and copyright and contributors list check out the Bullet_User_Manual.pdf
60
- *
61
- */
62
-
63
-
64
-
65
- #ifndef BT_COLLISION_WORLD_H
66
- #define BT_COLLISION_WORLD_H
67
-
68
- class btStackAlloc;
69
- class btCollisionShape;
70
- class btConvexShape;
71
- class btBroadphaseInterface;
72
- class btSerializer;
73
-
74
- #include "LinearMath/btVector3.h"
75
- #include "LinearMath/btTransform.h"
76
- #include "btCollisionObject.h"
77
- #include "btCollisionDispatcher.h"
78
- #include "BulletCollision/BroadphaseCollision/btOverlappingPairCache.h"
79
- #include "LinearMath/btAlignedObjectArray.h"
80
-
81
- ///CollisionWorld is interface and container for the collision detection
82
- class btCollisionWorld
83
- {
84
-
85
-
86
- protected:
87
-
88
- btAlignedObjectArray<btCollisionObject*> m_collisionObjects;
89
-
90
- btDispatcher* m_dispatcher1;
91
-
92
- btDispatcherInfo m_dispatchInfo;
93
-
94
- btStackAlloc* m_stackAlloc;
95
-
96
- btBroadphaseInterface* m_broadphasePairCache;
97
-
98
- btIDebugDraw* m_debugDrawer;
99
-
100
- ///m_forceUpdateAllAabbs can be set to false as an optimization to only update active object AABBs
101
- ///it is true by default, because it is error-prone (setting the position of static objects wouldn't update their AABB)
102
- bool m_forceUpdateAllAabbs;
103
-
104
- void serializeCollisionObjects(btSerializer* serializer);
105
-
106
- public:
107
-
108
- //this constructor doesn't own the dispatcher and paircache/broadphase
109
- btCollisionWorld(btDispatcher* dispatcher,btBroadphaseInterface* broadphasePairCache, btCollisionConfiguration* collisionConfiguration);
110
-
111
- virtual ~btCollisionWorld();
112
-
113
- void setBroadphase(btBroadphaseInterface* pairCache)
114
- {
115
- m_broadphasePairCache = pairCache;
116
- }
117
-
118
- const btBroadphaseInterface* getBroadphase() const
119
- {
120
- return m_broadphasePairCache;
121
- }
122
-
123
- btBroadphaseInterface* getBroadphase()
124
- {
125
- return m_broadphasePairCache;
126
- }
127
-
128
- btOverlappingPairCache* getPairCache()
129
- {
130
- return m_broadphasePairCache->getOverlappingPairCache();
131
- }
132
-
133
-
134
- btDispatcher* getDispatcher()
135
- {
136
- return m_dispatcher1;
137
- }
138
-
139
- const btDispatcher* getDispatcher() const
140
- {
141
- return m_dispatcher1;
142
- }
143
-
144
- void updateSingleAabb(btCollisionObject* colObj);
145
-
146
- virtual void updateAabbs();
147
-
148
- virtual void setDebugDrawer(btIDebugDraw* debugDrawer)
149
- {
150
- m_debugDrawer = debugDrawer;
151
- }
152
-
153
- virtual btIDebugDraw* getDebugDrawer()
154
- {
155
- return m_debugDrawer;
156
- }
157
-
158
- virtual void debugDrawWorld();
159
-
160
- virtual void debugDrawObject(const btTransform& worldTransform, const btCollisionShape* shape, const btVector3& color);
161
-
162
-
163
- ///LocalShapeInfo gives extra information for complex shapes
164
- ///Currently, only btTriangleMeshShape is available, so it just contains triangleIndex and subpart
165
- struct LocalShapeInfo
166
- {
167
- int m_shapePart;
168
- int m_triangleIndex;
169
-
170
- //const btCollisionShape* m_shapeTemp;
171
- //const btTransform* m_shapeLocalTransform;
172
- };
173
-
174
- struct LocalRayResult
175
- {
176
- LocalRayResult(btCollisionObject* collisionObject,
177
- LocalShapeInfo* localShapeInfo,
178
- const btVector3& hitNormalLocal,
179
- btScalar hitFraction)
180
- :m_collisionObject(collisionObject),
181
- m_localShapeInfo(localShapeInfo),
182
- m_hitNormalLocal(hitNormalLocal),
183
- m_hitFraction(hitFraction)
184
- {
185
- }
186
-
187
- btCollisionObject* m_collisionObject;
188
- LocalShapeInfo* m_localShapeInfo;
189
- btVector3 m_hitNormalLocal;
190
- btScalar m_hitFraction;
191
-
192
- };
193
-
194
- ///RayResultCallback is used to report new raycast results
195
- struct RayResultCallback
196
- {
197
- btScalar m_closestHitFraction;
198
- btCollisionObject* m_collisionObject;
199
- short int m_collisionFilterGroup;
200
- short int m_collisionFilterMask;
201
- //@BP Mod - Custom flags, currently used to enable backface culling on tri-meshes, see btRaycastCallback
202
- unsigned int m_flags;
203
-
204
- virtual ~RayResultCallback()
205
- {
206
- }
207
- bool hasHit() const
208
- {
209
- return (m_collisionObject != 0);
210
- }
211
-
212
- RayResultCallback()
213
- :m_closestHitFraction(btScalar(1.)),
214
- m_collisionObject(0),
215
- m_collisionFilterGroup(btBroadphaseProxy::DefaultFilter),
216
- m_collisionFilterMask(btBroadphaseProxy::AllFilter),
217
- //@BP Mod
218
- m_flags(0)
219
- {
220
- }
221
-
222
- virtual bool needsCollision(btBroadphaseProxy* proxy0) const
223
- {
224
- bool collides = (proxy0->m_collisionFilterGroup & m_collisionFilterMask) != 0;
225
- collides = collides && (m_collisionFilterGroup & proxy0->m_collisionFilterMask);
226
- return collides;
227
- }
228
-
229
-
230
- virtual btScalar addSingleResult(LocalRayResult& rayResult,bool normalInWorldSpace) = 0;
231
- };
232
-
233
- struct ClosestRayResultCallback : public RayResultCallback
234
- {
235
- ClosestRayResultCallback(const btVector3& rayFromWorld,const btVector3& rayToWorld)
236
- :m_rayFromWorld(rayFromWorld),
237
- m_rayToWorld(rayToWorld)
238
- {
239
- }
240
-
241
- btVector3 m_rayFromWorld;//used to calculate hitPointWorld from hitFraction
242
- btVector3 m_rayToWorld;
243
-
244
- btVector3 m_hitNormalWorld;
245
- btVector3 m_hitPointWorld;
246
-
247
- virtual btScalar addSingleResult(LocalRayResult& rayResult,bool normalInWorldSpace)
248
- {
249
- //caller already does the filter on the m_closestHitFraction
250
- btAssert(rayResult.m_hitFraction <= m_closestHitFraction);
251
-
252
- m_closestHitFraction = rayResult.m_hitFraction;
253
- m_collisionObject = rayResult.m_collisionObject;
254
- if (normalInWorldSpace)
255
- {
256
- m_hitNormalWorld = rayResult.m_hitNormalLocal;
257
- } else
258
- {
259
- ///need to transform normal into worldspace
260
- m_hitNormalWorld = m_collisionObject->getWorldTransform().getBasis()*rayResult.m_hitNormalLocal;
261
- }
262
- m_hitPointWorld.setInterpolate3(m_rayFromWorld,m_rayToWorld,rayResult.m_hitFraction);
263
- return rayResult.m_hitFraction;
264
- }
265
- };
266
-
267
- struct AllHitsRayResultCallback : public RayResultCallback
268
- {
269
- AllHitsRayResultCallback(const btVector3& rayFromWorld,const btVector3& rayToWorld)
270
- :m_rayFromWorld(rayFromWorld),
271
- m_rayToWorld(rayToWorld)
272
- {
273
- }
274
-
275
- btAlignedObjectArray<btCollisionObject*> m_collisionObjects;
276
-
277
- btVector3 m_rayFromWorld;//used to calculate hitPointWorld from hitFraction
278
- btVector3 m_rayToWorld;
279
-
280
- btAlignedObjectArray<btVector3> m_hitNormalWorld;
281
- btAlignedObjectArray<btVector3> m_hitPointWorld;
282
- btAlignedObjectArray<btScalar> m_hitFractions;
283
-
284
- virtual btScalar addSingleResult(LocalRayResult& rayResult,bool normalInWorldSpace)
285
- {
286
- m_collisionObject = rayResult.m_collisionObject;
287
- m_collisionObjects.push_back(rayResult.m_collisionObject);
288
- btVector3 hitNormalWorld;
289
- if (normalInWorldSpace)
290
- {
291
- hitNormalWorld = rayResult.m_hitNormalLocal;
292
- } else
293
- {
294
- ///need to transform normal into worldspace
295
- hitNormalWorld = m_collisionObject->getWorldTransform().getBasis()*rayResult.m_hitNormalLocal;
296
- }
297
- m_hitNormalWorld.push_back(hitNormalWorld);
298
- btVector3 hitPointWorld;
299
- hitPointWorld.setInterpolate3(m_rayFromWorld,m_rayToWorld,rayResult.m_hitFraction);
300
- m_hitPointWorld.push_back(hitPointWorld);
301
- m_hitFractions.push_back(rayResult.m_hitFraction);
302
- return m_closestHitFraction;
303
- }
304
- };
305
-
306
-
307
- struct LocalConvexResult
308
- {
309
- LocalConvexResult(btCollisionObject* hitCollisionObject,
310
- LocalShapeInfo* localShapeInfo,
311
- const btVector3& hitNormalLocal,
312
- const btVector3& hitPointLocal,
313
- btScalar hitFraction
314
- )
315
- :m_hitCollisionObject(hitCollisionObject),
316
- m_localShapeInfo(localShapeInfo),
317
- m_hitNormalLocal(hitNormalLocal),
318
- m_hitPointLocal(hitPointLocal),
319
- m_hitFraction(hitFraction)
320
- {
321
- }
322
-
323
- btCollisionObject* m_hitCollisionObject;
324
- LocalShapeInfo* m_localShapeInfo;
325
- btVector3 m_hitNormalLocal;
326
- btVector3 m_hitPointLocal;
327
- btScalar m_hitFraction;
328
- };
329
-
330
- ///RayResultCallback is used to report new raycast results
331
- struct ConvexResultCallback
332
- {
333
- btScalar m_closestHitFraction;
334
- short int m_collisionFilterGroup;
335
- short int m_collisionFilterMask;
336
-
337
- ConvexResultCallback()
338
- :m_closestHitFraction(btScalar(1.)),
339
- m_collisionFilterGroup(btBroadphaseProxy::DefaultFilter),
340
- m_collisionFilterMask(btBroadphaseProxy::AllFilter)
341
- {
342
- }
343
-
344
- virtual ~ConvexResultCallback()
345
- {
346
- }
347
-
348
- bool hasHit() const
349
- {
350
- return (m_closestHitFraction < btScalar(1.));
351
- }
352
-
353
-
354
-
355
- virtual bool needsCollision(btBroadphaseProxy* proxy0) const
356
- {
357
- bool collides = (proxy0->m_collisionFilterGroup & m_collisionFilterMask) != 0;
358
- collides = collides && (m_collisionFilterGroup & proxy0->m_collisionFilterMask);
359
- return collides;
360
- }
361
-
362
- virtual btScalar addSingleResult(LocalConvexResult& convexResult,bool normalInWorldSpace) = 0;
363
- };
364
-
365
- struct ClosestConvexResultCallback : public ConvexResultCallback
366
- {
367
- ClosestConvexResultCallback(const btVector3& convexFromWorld,const btVector3& convexToWorld)
368
- :m_convexFromWorld(convexFromWorld),
369
- m_convexToWorld(convexToWorld),
370
- m_hitCollisionObject(0)
371
- {
372
- }
373
-
374
- btVector3 m_convexFromWorld;//used to calculate hitPointWorld from hitFraction
375
- btVector3 m_convexToWorld;
376
-
377
- btVector3 m_hitNormalWorld;
378
- btVector3 m_hitPointWorld;
379
- btCollisionObject* m_hitCollisionObject;
380
-
381
- virtual btScalar addSingleResult(LocalConvexResult& convexResult,bool normalInWorldSpace)
382
- {
383
- //caller already does the filter on the m_closestHitFraction
384
- btAssert(convexResult.m_hitFraction <= m_closestHitFraction);
385
-
386
- m_closestHitFraction = convexResult.m_hitFraction;
387
- m_hitCollisionObject = convexResult.m_hitCollisionObject;
388
- if (normalInWorldSpace)
389
- {
390
- m_hitNormalWorld = convexResult.m_hitNormalLocal;
391
- } else
392
- {
393
- ///need to transform normal into worldspace
394
- m_hitNormalWorld = m_hitCollisionObject->getWorldTransform().getBasis()*convexResult.m_hitNormalLocal;
395
- }
396
- m_hitPointWorld = convexResult.m_hitPointLocal;
397
- return convexResult.m_hitFraction;
398
- }
399
- };
400
-
401
- ///ContactResultCallback is used to report contact points
402
- struct ContactResultCallback
403
- {
404
- short int m_collisionFilterGroup;
405
- short int m_collisionFilterMask;
406
-
407
- ContactResultCallback()
408
- :m_collisionFilterGroup(btBroadphaseProxy::DefaultFilter),
409
- m_collisionFilterMask(btBroadphaseProxy::AllFilter)
410
- {
411
- }
412
-
413
- virtual ~ContactResultCallback()
414
- {
415
- }
416
-
417
- virtual bool needsCollision(btBroadphaseProxy* proxy0) const
418
- {
419
- bool collides = (proxy0->m_collisionFilterGroup & m_collisionFilterMask) != 0;
420
- collides = collides && (m_collisionFilterGroup & proxy0->m_collisionFilterMask);
421
- return collides;
422
- }
423
-
424
- virtual btScalar addSingleResult(btManifoldPoint& cp, const btCollisionObject* colObj0,int partId0,int index0,const btCollisionObject* colObj1,int partId1,int index1) = 0;
425
- };
426
-
427
-
428
-
429
- int getNumCollisionObjects() const
430
- {
431
- return int(m_collisionObjects.size());
432
- }
433
-
434
- /// rayTest performs a raycast on all objects in the btCollisionWorld, and calls the resultCallback
435
- /// This allows for several queries: first hit, all hits, any hit, dependent on the value returned by the callback.
436
- virtual void rayTest(const btVector3& rayFromWorld, const btVector3& rayToWorld, RayResultCallback& resultCallback) const;
437
-
438
- /// convexTest performs a swept convex cast on all objects in the btCollisionWorld, and calls the resultCallback
439
- /// This allows for several queries: first hit, all hits, any hit, dependent on the value return by the callback.
440
- void convexSweepTest (const btConvexShape* castShape, const btTransform& from, const btTransform& to, ConvexResultCallback& resultCallback, btScalar allowedCcdPenetration = btScalar(0.)) const;
441
-
442
- ///contactTest performs a discrete collision test between colObj against all objects in the btCollisionWorld, and calls the resultCallback.
443
- ///it reports one or more contact points for every overlapping object (including the one with deepest penetration)
444
- void contactTest(btCollisionObject* colObj, ContactResultCallback& resultCallback);
445
-
446
- ///contactTest performs a discrete collision test between two collision objects and calls the resultCallback if overlap if detected.
447
- ///it reports one or more contact points (including the one with deepest penetration)
448
- void contactPairTest(btCollisionObject* colObjA, btCollisionObject* colObjB, ContactResultCallback& resultCallback);
449
-
450
-
451
- /// rayTestSingle performs a raycast call and calls the resultCallback. It is used internally by rayTest.
452
- /// In a future implementation, we consider moving the ray test as a virtual method in btCollisionShape.
453
- /// This allows more customization.
454
- static void rayTestSingle(const btTransform& rayFromTrans,const btTransform& rayToTrans,
455
- btCollisionObject* collisionObject,
456
- const btCollisionShape* collisionShape,
457
- const btTransform& colObjWorldTransform,
458
- RayResultCallback& resultCallback);
459
-
460
- /// objectQuerySingle performs a collision detection query and calls the resultCallback. It is used internally by rayTest.
461
- static void objectQuerySingle(const btConvexShape* castShape, const btTransform& rayFromTrans,const btTransform& rayToTrans,
462
- btCollisionObject* collisionObject,
463
- const btCollisionShape* collisionShape,
464
- const btTransform& colObjWorldTransform,
465
- ConvexResultCallback& resultCallback, btScalar allowedPenetration);
466
-
467
- virtual void addCollisionObject(btCollisionObject* collisionObject,short int collisionFilterGroup=btBroadphaseProxy::DefaultFilter,short int collisionFilterMask=btBroadphaseProxy::AllFilter);
468
-
469
- btCollisionObjectArray& getCollisionObjectArray()
470
- {
471
- return m_collisionObjects;
472
- }
473
-
474
- const btCollisionObjectArray& getCollisionObjectArray() const
475
- {
476
- return m_collisionObjects;
477
- }
478
-
479
-
480
- virtual void removeCollisionObject(btCollisionObject* collisionObject);
481
-
482
- virtual void performDiscreteCollisionDetection();
483
-
484
- btDispatcherInfo& getDispatchInfo()
485
- {
486
- return m_dispatchInfo;
487
- }
488
-
489
- const btDispatcherInfo& getDispatchInfo() const
490
- {
491
- return m_dispatchInfo;
492
- }
493
-
494
- bool getForceUpdateAllAabbs() const
495
- {
496
- return m_forceUpdateAllAabbs;
497
- }
498
- void setForceUpdateAllAabbs( bool forceUpdateAllAabbs)
499
- {
500
- m_forceUpdateAllAabbs = forceUpdateAllAabbs;
501
- }
502
-
503
- ///Preliminary serialization test for Bullet 2.76. Loading those files requires a separate parser (Bullet/Demos/SerializeDemo)
504
- virtual void serialize(btSerializer* serializer);
505
-
506
- };
507
-
508
-
509
- #endif //BT_COLLISION_WORLD_H
@@ -1,86 +0,0 @@
1
- /*
2
- Bullet Continuous Collision Detection and Physics Library
3
- Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
4
-
5
- This software is provided 'as-is', without any express or implied warranty.
6
- In no event will the authors be held liable for any damages arising from the use of this software.
7
- Permission is granted to anyone to use this software for any purpose,
8
- including commercial applications, and to alter it and redistribute it freely,
9
- subject to the following restrictions:
10
-
11
- 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
12
- 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
13
- 3. This notice may not be removed or altered from any source distribution.
14
- */
15
-
16
- #ifndef BT_COMPOUND_COLLISION_ALGORITHM_H
17
- #define BT_COMPOUND_COLLISION_ALGORITHM_H
18
-
19
- #include "btActivatingCollisionAlgorithm.h"
20
- #include "BulletCollision/BroadphaseCollision/btDispatcher.h"
21
- #include "BulletCollision/BroadphaseCollision/btBroadphaseInterface.h"
22
-
23
- #include "BulletCollision/NarrowPhaseCollision/btPersistentManifold.h"
24
- class btDispatcher;
25
- #include "BulletCollision/BroadphaseCollision/btBroadphaseProxy.h"
26
- #include "btCollisionCreateFunc.h"
27
- #include "LinearMath/btAlignedObjectArray.h"
28
- class btDispatcher;
29
- class btCollisionObject;
30
-
31
- /// btCompoundCollisionAlgorithm supports collision between CompoundCollisionShapes and other collision shapes
32
- class btCompoundCollisionAlgorithm : public btActivatingCollisionAlgorithm
33
- {
34
- btAlignedObjectArray<btCollisionAlgorithm*> m_childCollisionAlgorithms;
35
- bool m_isSwapped;
36
-
37
- class btPersistentManifold* m_sharedManifold;
38
- bool m_ownsManifold;
39
-
40
- int m_compoundShapeRevision;//to keep track of changes, so that childAlgorithm array can be updated
41
-
42
- void removeChildAlgorithms();
43
-
44
- void preallocateChildAlgorithms(btCollisionObject* body0,btCollisionObject* body1);
45
-
46
- public:
47
-
48
- btCompoundCollisionAlgorithm( const btCollisionAlgorithmConstructionInfo& ci,btCollisionObject* body0,btCollisionObject* body1,bool isSwapped);
49
-
50
- virtual ~btCompoundCollisionAlgorithm();
51
-
52
- virtual void processCollision (btCollisionObject* body0,btCollisionObject* body1,const btDispatcherInfo& dispatchInfo,btManifoldResult* resultOut);
53
-
54
- btScalar calculateTimeOfImpact(btCollisionObject* body0,btCollisionObject* body1,const btDispatcherInfo& dispatchInfo,btManifoldResult* resultOut);
55
-
56
- virtual void getAllContactManifolds(btManifoldArray& manifoldArray)
57
- {
58
- int i;
59
- for (i=0;i<m_childCollisionAlgorithms.size();i++)
60
- {
61
- if (m_childCollisionAlgorithms[i])
62
- m_childCollisionAlgorithms[i]->getAllContactManifolds(manifoldArray);
63
- }
64
- }
65
-
66
- struct CreateFunc :public btCollisionAlgorithmCreateFunc
67
- {
68
- virtual btCollisionAlgorithm* CreateCollisionAlgorithm(btCollisionAlgorithmConstructionInfo& ci, btCollisionObject* body0,btCollisionObject* body1)
69
- {
70
- void* mem = ci.m_dispatcher1->allocateCollisionAlgorithm(sizeof(btCompoundCollisionAlgorithm));
71
- return new(mem) btCompoundCollisionAlgorithm(ci,body0,body1,false);
72
- }
73
- };
74
-
75
- struct SwappedCreateFunc :public btCollisionAlgorithmCreateFunc
76
- {
77
- virtual btCollisionAlgorithm* CreateCollisionAlgorithm(btCollisionAlgorithmConstructionInfo& ci, btCollisionObject* body0,btCollisionObject* body1)
78
- {
79
- void* mem = ci.m_dispatcher1->allocateCollisionAlgorithm(sizeof(btCompoundCollisionAlgorithm));
80
- return new(mem) btCompoundCollisionAlgorithm(ci,body0,body1,true);
81
- }
82
- };
83
-
84
- };
85
-
86
- #endif //BT_COMPOUND_COLLISION_ALGORITHM_H
@@ -1,95 +0,0 @@
1
- /*
2
- Bullet Continuous Collision Detection and Physics Library
3
- Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
4
-
5
- This software is provided 'as-is', without any express or implied warranty.
6
- In no event will the authors be held liable for any damages arising from the use of this software.
7
- Permission is granted to anyone to use this software for any purpose,
8
- including commercial applications, and to alter it and redistribute it freely,
9
- subject to the following restrictions:
10
-
11
- 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
12
- 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
13
- 3. This notice may not be removed or altered from any source distribution.
14
- */
15
-
16
- #ifndef BT_CONVEX_2D_CONVEX_2D_ALGORITHM_H
17
- #define BT_CONVEX_2D_CONVEX_2D_ALGORITHM_H
18
-
19
- #include "BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h"
20
- #include "BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h"
21
- #include "BulletCollision/NarrowPhaseCollision/btPersistentManifold.h"
22
- #include "BulletCollision/BroadphaseCollision/btBroadphaseProxy.h"
23
- #include "BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h"
24
- #include "BulletCollision/CollisionDispatch/btCollisionCreateFunc.h"
25
- #include "BulletCollision/CollisionDispatch/btCollisionDispatcher.h"
26
- #include "LinearMath/btTransformUtil.h" //for btConvexSeparatingDistanceUtil
27
-
28
- class btConvexPenetrationDepthSolver;
29
-
30
-
31
- ///The convex2dConvex2dAlgorithm collision algorithm support 2d collision detection for btConvex2dShape
32
- ///Currently it requires the btMinkowskiPenetrationDepthSolver, it has support for 2d penetration depth computation
33
- class btConvex2dConvex2dAlgorithm : public btActivatingCollisionAlgorithm
34
- {
35
- btSimplexSolverInterface* m_simplexSolver;
36
- btConvexPenetrationDepthSolver* m_pdSolver;
37
-
38
-
39
- bool m_ownManifold;
40
- btPersistentManifold* m_manifoldPtr;
41
- bool m_lowLevelOfDetail;
42
-
43
- int m_numPerturbationIterations;
44
- int m_minimumPointsPerturbationThreshold;
45
-
46
- public:
47
-
48
- btConvex2dConvex2dAlgorithm(btPersistentManifold* mf,const btCollisionAlgorithmConstructionInfo& ci,btCollisionObject* body0,btCollisionObject* body1, btSimplexSolverInterface* simplexSolver, btConvexPenetrationDepthSolver* pdSolver, int numPerturbationIterations, int minimumPointsPerturbationThreshold);
49
-
50
-
51
- virtual ~btConvex2dConvex2dAlgorithm();
52
-
53
- virtual void processCollision (btCollisionObject* body0,btCollisionObject* body1,const btDispatcherInfo& dispatchInfo,btManifoldResult* resultOut);
54
-
55
- virtual btScalar calculateTimeOfImpact(btCollisionObject* body0,btCollisionObject* body1,const btDispatcherInfo& dispatchInfo,btManifoldResult* resultOut);
56
-
57
- virtual void getAllContactManifolds(btManifoldArray& manifoldArray)
58
- {
59
- ///should we use m_ownManifold to avoid adding duplicates?
60
- if (m_manifoldPtr && m_ownManifold)
61
- manifoldArray.push_back(m_manifoldPtr);
62
- }
63
-
64
-
65
- void setLowLevelOfDetail(bool useLowLevel);
66
-
67
-
68
- const btPersistentManifold* getManifold()
69
- {
70
- return m_manifoldPtr;
71
- }
72
-
73
- struct CreateFunc :public btCollisionAlgorithmCreateFunc
74
- {
75
-
76
- btConvexPenetrationDepthSolver* m_pdSolver;
77
- btSimplexSolverInterface* m_simplexSolver;
78
- int m_numPerturbationIterations;
79
- int m_minimumPointsPerturbationThreshold;
80
-
81
- CreateFunc(btSimplexSolverInterface* simplexSolver, btConvexPenetrationDepthSolver* pdSolver);
82
-
83
- virtual ~CreateFunc();
84
-
85
- virtual btCollisionAlgorithm* CreateCollisionAlgorithm(btCollisionAlgorithmConstructionInfo& ci, btCollisionObject* body0,btCollisionObject* body1)
86
- {
87
- void* mem = ci.m_dispatcher1->allocateCollisionAlgorithm(sizeof(btConvex2dConvex2dAlgorithm));
88
- return new(mem) btConvex2dConvex2dAlgorithm(ci.m_manifold,ci,body0,body1,m_simplexSolver,m_pdSolver,m_numPerturbationIterations,m_minimumPointsPerturbationThreshold);
89
- }
90
- };
91
-
92
-
93
- };
94
-
95
- #endif //BT_CONVEX_2D_CONVEX_2D_ALGORITHM_H