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

Sign up to get free protection for your applications and to get access to all the features.
Files changed (284) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +3 -0
  3. data/Rakefile +14 -2
  4. data/bindings/bullet/interface/BulletCollision/CollisionDispatch/btCollisionWorld.i +2 -2
  5. data/bindings/bullet/interface/bullet_wrap.cpp +17548 -6035
  6. data/bindings/bullet/interface/bullet_wrap.h +7 -7
  7. data/bindings/bullet/interface/bullet_wrap.o +0 -0
  8. data/lib/bullet.so +0 -0
  9. data/lib/ruby-bullet/version.rb +1 -1
  10. data/ruby-bullet.gemspec +0 -3
  11. metadata +169 -444
  12. data/deps/include/bullet/Bullet-C-Api.h +0 -176
  13. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btAxisSweep3.h +0 -1051
  14. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h +0 -82
  15. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h +0 -270
  16. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h +0 -80
  17. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btDbvt.h +0 -1257
  18. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h +0 -146
  19. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btDispatcher.h +0 -110
  20. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h +0 -151
  21. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h +0 -469
  22. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h +0 -40
  23. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btQuantizedBvh.h +0 -579
  24. data/deps/include/bullet/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h +0 -171
  25. data/deps/include/bullet/BulletCollision/CollisionDispatch/SphereTriangleDetector.h +0 -51
  26. data/deps/include/bullet/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h +0 -36
  27. data/deps/include/bullet/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h +0 -66
  28. data/deps/include/bullet/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h +0 -66
  29. data/deps/include/bullet/BulletCollision/CollisionDispatch/btBoxBoxDetector.h +0 -44
  30. data/deps/include/bullet/BulletCollision/CollisionDispatch/btCollisionConfiguration.h +0 -48
  31. data/deps/include/bullet/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h +0 -45
  32. data/deps/include/bullet/BulletCollision/CollisionDispatch/btCollisionDispatcher.h +0 -172
  33. data/deps/include/bullet/BulletCollision/CollisionDispatch/btCollisionObject.h +0 -524
  34. data/deps/include/bullet/BulletCollision/CollisionDispatch/btCollisionWorld.h +0 -509
  35. data/deps/include/bullet/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h +0 -86
  36. data/deps/include/bullet/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h +0 -95
  37. data/deps/include/bullet/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h +0 -116
  38. data/deps/include/bullet/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h +0 -109
  39. data/deps/include/bullet/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h +0 -84
  40. data/deps/include/bullet/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h +0 -137
  41. data/deps/include/bullet/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h +0 -54
  42. data/deps/include/bullet/BulletCollision/CollisionDispatch/btGhostObject.h +0 -175
  43. data/deps/include/bullet/BulletCollision/CollisionDispatch/btInternalEdgeUtility.h +0 -46
  44. data/deps/include/bullet/BulletCollision/CollisionDispatch/btManifoldResult.h +0 -128
  45. data/deps/include/bullet/BulletCollision/CollisionDispatch/btSimulationIslandManager.h +0 -81
  46. data/deps/include/bullet/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h +0 -75
  47. data/deps/include/bullet/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h +0 -66
  48. data/deps/include/bullet/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h +0 -69
  49. data/deps/include/bullet/BulletCollision/CollisionDispatch/btUnionFind.h +0 -129
  50. data/deps/include/bullet/BulletCollision/CollisionShapes/btBox2dShape.h +0 -369
  51. data/deps/include/bullet/BulletCollision/CollisionShapes/btBoxShape.h +0 -312
  52. data/deps/include/bullet/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h +0 -139
  53. data/deps/include/bullet/BulletCollision/CollisionShapes/btCapsuleShape.h +0 -173
  54. data/deps/include/bullet/BulletCollision/CollisionShapes/btCollisionMargin.h +0 -27
  55. data/deps/include/bullet/BulletCollision/CollisionShapes/btCollisionShape.h +0 -150
  56. data/deps/include/bullet/BulletCollision/CollisionShapes/btCompoundShape.h +0 -212
  57. data/deps/include/bullet/BulletCollision/CollisionShapes/btConcaveShape.h +0 -60
  58. data/deps/include/bullet/BulletCollision/CollisionShapes/btConeShape.h +0 -103
  59. data/deps/include/bullet/BulletCollision/CollisionShapes/btConvex2dShape.h +0 -80
  60. data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexHullShape.h +0 -122
  61. data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexInternalShape.h +0 -224
  62. data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexPointCloudShape.h +0 -105
  63. data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexPolyhedron.h +0 -62
  64. data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexShape.h +0 -84
  65. data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h +0 -75
  66. data/deps/include/bullet/BulletCollision/CollisionShapes/btCylinderShape.h +0 -200
  67. data/deps/include/bullet/BulletCollision/CollisionShapes/btEmptyShape.h +0 -70
  68. data/deps/include/bullet/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h +0 -161
  69. data/deps/include/bullet/BulletCollision/CollisionShapes/btMaterial.h +0 -35
  70. data/deps/include/bullet/BulletCollision/CollisionShapes/btMinkowskiSumShape.h +0 -60
  71. data/deps/include/bullet/BulletCollision/CollisionShapes/btMultiSphereShape.h +0 -99
  72. data/deps/include/bullet/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h +0 -120
  73. data/deps/include/bullet/BulletCollision/CollisionShapes/btOptimizedBvh.h +0 -65
  74. data/deps/include/bullet/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h +0 -112
  75. data/deps/include/bullet/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h +0 -93
  76. data/deps/include/bullet/BulletCollision/CollisionShapes/btShapeHull.h +0 -59
  77. data/deps/include/bullet/BulletCollision/CollisionShapes/btSphereShape.h +0 -73
  78. data/deps/include/bullet/BulletCollision/CollisionShapes/btStaticPlaneShape.h +0 -103
  79. data/deps/include/bullet/BulletCollision/CollisionShapes/btStridingMeshInterface.h +0 -162
  80. data/deps/include/bullet/BulletCollision/CollisionShapes/btTetrahedronShape.h +0 -74
  81. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleBuffer.h +0 -69
  82. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleCallback.h +0 -42
  83. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h +0 -133
  84. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h +0 -84
  85. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleInfoMap.h +0 -241
  86. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleMesh.h +0 -69
  87. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleMeshShape.h +0 -89
  88. data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleShape.h +0 -182
  89. data/deps/include/bullet/BulletCollision/CollisionShapes/btUniformScalingShape.h +0 -87
  90. data/deps/include/bullet/BulletCollision/Gimpact/btBoxCollision.h +0 -647
  91. data/deps/include/bullet/BulletCollision/Gimpact/btClipPolygon.h +0 -182
  92. data/deps/include/bullet/BulletCollision/Gimpact/btContactProcessing.h +0 -145
  93. data/deps/include/bullet/BulletCollision/Gimpact/btGImpactBvh.h +0 -396
  94. data/deps/include/bullet/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.h +0 -306
  95. data/deps/include/bullet/BulletCollision/Gimpact/btGImpactMassUtil.h +0 -60
  96. data/deps/include/bullet/BulletCollision/Gimpact/btGImpactQuantizedBvh.h +0 -372
  97. data/deps/include/bullet/BulletCollision/Gimpact/btGImpactShape.h +0 -1171
  98. data/deps/include/bullet/BulletCollision/Gimpact/btGenericPoolAllocator.h +0 -163
  99. data/deps/include/bullet/BulletCollision/Gimpact/btGeometryOperations.h +0 -212
  100. data/deps/include/bullet/BulletCollision/Gimpact/btQuantization.h +0 -88
  101. data/deps/include/bullet/BulletCollision/Gimpact/btTriangleShapeEx.h +0 -180
  102. data/deps/include/bullet/BulletCollision/Gimpact/gim_array.h +0 -326
  103. data/deps/include/bullet/BulletCollision/Gimpact/gim_basic_geometry_operations.h +0 -543
  104. data/deps/include/bullet/BulletCollision/Gimpact/gim_bitset.h +0 -123
  105. data/deps/include/bullet/BulletCollision/Gimpact/gim_box_collision.h +0 -590
  106. data/deps/include/bullet/BulletCollision/Gimpact/gim_box_set.h +0 -674
  107. data/deps/include/bullet/BulletCollision/Gimpact/gim_clip_polygon.h +0 -210
  108. data/deps/include/bullet/BulletCollision/Gimpact/gim_contact.h +0 -164
  109. data/deps/include/bullet/BulletCollision/Gimpact/gim_geom_types.h +0 -97
  110. data/deps/include/bullet/BulletCollision/Gimpact/gim_geometry.h +0 -42
  111. data/deps/include/bullet/BulletCollision/Gimpact/gim_hash_table.h +0 -902
  112. data/deps/include/bullet/BulletCollision/Gimpact/gim_linear_math.h +0 -1573
  113. data/deps/include/bullet/BulletCollision/Gimpact/gim_math.h +0 -157
  114. data/deps/include/bullet/BulletCollision/Gimpact/gim_memory.h +0 -190
  115. data/deps/include/bullet/BulletCollision/Gimpact/gim_radixsort.h +0 -406
  116. data/deps/include/bullet/BulletCollision/Gimpact/gim_tri_collision.h +0 -379
  117. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h +0 -59
  118. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btConvexCast.h +0 -73
  119. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h +0 -42
  120. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h +0 -91
  121. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h +0 -50
  122. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h +0 -75
  123. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h +0 -43
  124. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h +0 -103
  125. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h +0 -158
  126. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h +0 -40
  127. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h +0 -228
  128. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btPointCollector.h +0 -64
  129. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h +0 -46
  130. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h +0 -72
  131. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h +0 -63
  132. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h +0 -50
  133. data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h +0 -179
  134. data/deps/include/bullet/BulletCollision/btBulletCollisionCommon.h +0 -69
  135. data/deps/include/bullet/BulletDynamics/Character/btCharacterControllerInterface.h +0 -46
  136. data/deps/include/bullet/BulletDynamics/Character/btKinematicCharacterController.h +0 -163
  137. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h +0 -346
  138. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btConstraintSolver.h +0 -52
  139. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btContactConstraint.h +0 -71
  140. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btContactSolverInfo.h +0 -87
  141. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h +0 -614
  142. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h +0 -99
  143. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btHinge2Constraint.h +0 -58
  144. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btHingeConstraint.h +0 -381
  145. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btJacobianEntry.h +0 -156
  146. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h +0 -161
  147. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h +0 -130
  148. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btSliderConstraint.h +0 -333
  149. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h +0 -107
  150. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btSolverBody.h +0 -191
  151. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btSolverConstraint.h +0 -98
  152. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btTypedConstraint.h +0 -452
  153. data/deps/include/bullet/BulletDynamics/ConstraintSolver/btUniversalConstraint.h +0 -62
  154. data/deps/include/bullet/BulletDynamics/Dynamics/btActionInterface.h +0 -46
  155. data/deps/include/bullet/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h +0 -203
  156. data/deps/include/bullet/BulletDynamics/Dynamics/btDynamicsWorld.h +0 -151
  157. data/deps/include/bullet/BulletDynamics/Dynamics/btRigidBody.h +0 -691
  158. data/deps/include/bullet/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h +0 -89
  159. data/deps/include/bullet/BulletDynamics/Vehicle/btRaycastVehicle.h +0 -236
  160. data/deps/include/bullet/BulletDynamics/Vehicle/btVehicleRaycaster.h +0 -35
  161. data/deps/include/bullet/BulletDynamics/Vehicle/btWheelInfo.h +0 -119
  162. data/deps/include/bullet/BulletDynamics/btBulletDynamicsCommon.h +0 -48
  163. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverBuffer_DX11.h +0 -323
  164. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverLinkData_DX11.h +0 -103
  165. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverLinkData_DX11SIMDAware.h +0 -173
  166. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverTriangleData_DX11.h +0 -96
  167. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverVertexBuffer_DX11.h +0 -107
  168. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverVertexData_DX11.h +0 -63
  169. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolver_DX11.h +0 -691
  170. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolver_DX11SIMDAware.h +0 -81
  171. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverBuffer_OpenCL.h +0 -209
  172. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverLinkData_OpenCL.h +0 -99
  173. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverLinkData_OpenCLSIMDAware.h +0 -169
  174. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverOutputCLtoGL.h +0 -62
  175. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverTriangleData_OpenCL.h +0 -84
  176. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverVertexBuffer_OpenGL.h +0 -166
  177. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverVertexData_OpenCL.h +0 -52
  178. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.h +0 -527
  179. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCLSIMDAware.h +0 -81
  180. data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h +0 -748
  181. data/deps/include/bullet/BulletMultiThreaded/HeapManager.h +0 -117
  182. data/deps/include/bullet/BulletMultiThreaded/PlatformDefinitions.h +0 -99
  183. data/deps/include/bullet/BulletMultiThreaded/PosixThreadSupport.h +0 -142
  184. data/deps/include/bullet/BulletMultiThreaded/PpuAddressSpace.h +0 -37
  185. data/deps/include/bullet/BulletMultiThreaded/SequentialThreadSupport.h +0 -96
  186. data/deps/include/bullet/BulletMultiThreaded/SpuCollisionObjectWrapper.h +0 -40
  187. data/deps/include/bullet/BulletMultiThreaded/SpuCollisionTaskProcess.h +0 -163
  188. data/deps/include/bullet/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.h +0 -120
  189. data/deps/include/bullet/BulletMultiThreaded/SpuDoubleBuffer.h +0 -126
  190. data/deps/include/bullet/BulletMultiThreaded/SpuFakeDma.h +0 -135
  191. data/deps/include/bullet/BulletMultiThreaded/SpuGatheringCollisionDispatcher.h +0 -72
  192. data/deps/include/bullet/BulletMultiThreaded/SpuLibspe2Support.h +0 -180
  193. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/Box.h +0 -167
  194. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h +0 -128
  195. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h +0 -106
  196. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuConvexPenetrationDepthSolver.h +0 -51
  197. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h +0 -140
  198. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuLocalSupport.h +0 -19
  199. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.h +0 -48
  200. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuPreferredPenetrationDirections.h +0 -70
  201. data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.h +0 -65
  202. data/deps/include/bullet/BulletMultiThreaded/SpuSampleTask/SpuSampleTask.h +0 -54
  203. data/deps/include/bullet/BulletMultiThreaded/SpuSampleTaskProcess.h +0 -153
  204. data/deps/include/bullet/BulletMultiThreaded/SpuSync.h +0 -149
  205. data/deps/include/bullet/BulletMultiThreaded/TrbDynBody.h +0 -79
  206. data/deps/include/bullet/BulletMultiThreaded/TrbStateVec.h +0 -339
  207. data/deps/include/bullet/BulletMultiThreaded/Win32ThreadSupport.h +0 -138
  208. data/deps/include/bullet/BulletMultiThreaded/btGpu3DGridBroadphase.h +0 -138
  209. data/deps/include/bullet/BulletMultiThreaded/btGpu3DGridBroadphaseSharedCode.h +0 -430
  210. data/deps/include/bullet/BulletMultiThreaded/btGpu3DGridBroadphaseSharedDefs.h +0 -61
  211. data/deps/include/bullet/BulletMultiThreaded/btGpu3DGridBroadphaseSharedTypes.h +0 -67
  212. data/deps/include/bullet/BulletMultiThreaded/btGpuDefines.h +0 -211
  213. data/deps/include/bullet/BulletMultiThreaded/btGpuUtilsSharedCode.h +0 -55
  214. data/deps/include/bullet/BulletMultiThreaded/btGpuUtilsSharedDefs.h +0 -52
  215. data/deps/include/bullet/BulletMultiThreaded/btParallelConstraintSolver.h +0 -285
  216. data/deps/include/bullet/BulletMultiThreaded/btThreadSupportInterface.h +0 -85
  217. data/deps/include/bullet/BulletMultiThreaded/vectormath2bullet.h +0 -73
  218. data/deps/include/bullet/BulletSoftBody/btDefaultSoftBodySolver.h +0 -63
  219. data/deps/include/bullet/BulletSoftBody/btSoftBody.h +0 -987
  220. data/deps/include/bullet/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h +0 -153
  221. data/deps/include/bullet/BulletSoftBody/btSoftBodyData.h +0 -217
  222. data/deps/include/bullet/BulletSoftBody/btSoftBodyHelpers.h +0 -143
  223. data/deps/include/bullet/BulletSoftBody/btSoftBodyInternals.h +0 -930
  224. data/deps/include/bullet/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.h +0 -48
  225. data/deps/include/bullet/BulletSoftBody/btSoftBodySolverVertexBuffer.h +0 -165
  226. data/deps/include/bullet/BulletSoftBody/btSoftBodySolvers.h +0 -154
  227. data/deps/include/bullet/BulletSoftBody/btSoftRigidCollisionAlgorithm.h +0 -75
  228. data/deps/include/bullet/BulletSoftBody/btSoftRigidDynamicsWorld.h +0 -107
  229. data/deps/include/bullet/BulletSoftBody/btSoftSoftCollisionAlgorithm.h +0 -69
  230. data/deps/include/bullet/BulletSoftBody/btSparseSDF.h +0 -306
  231. data/deps/include/bullet/LinearMath/btAabbUtil2.h +0 -236
  232. data/deps/include/bullet/LinearMath/btAlignedAllocator.h +0 -107
  233. data/deps/include/bullet/LinearMath/btAlignedObjectArray.h +0 -494
  234. data/deps/include/bullet/LinearMath/btConvexHull.h +0 -241
  235. data/deps/include/bullet/LinearMath/btConvexHullComputer.h +0 -103
  236. data/deps/include/bullet/LinearMath/btDefaultMotionState.h +0 -40
  237. data/deps/include/bullet/LinearMath/btGeometryUtil.h +0 -42
  238. data/deps/include/bullet/LinearMath/btGrahamScan2dConvexHull.h +0 -110
  239. data/deps/include/bullet/LinearMath/btHashMap.h +0 -450
  240. data/deps/include/bullet/LinearMath/btIDebugDraw.h +0 -418
  241. data/deps/include/bullet/LinearMath/btList.h +0 -73
  242. data/deps/include/bullet/LinearMath/btMatrix3x3.h +0 -771
  243. data/deps/include/bullet/LinearMath/btMinMax.h +0 -71
  244. data/deps/include/bullet/LinearMath/btMotionState.h +0 -40
  245. data/deps/include/bullet/LinearMath/btPoolAllocator.h +0 -121
  246. data/deps/include/bullet/LinearMath/btQuadWord.h +0 -180
  247. data/deps/include/bullet/LinearMath/btQuaternion.h +0 -430
  248. data/deps/include/bullet/LinearMath/btQuickprof.h +0 -203
  249. data/deps/include/bullet/LinearMath/btRandom.h +0 -42
  250. data/deps/include/bullet/LinearMath/btScalar.h +0 -539
  251. data/deps/include/bullet/LinearMath/btSerializer.h +0 -639
  252. data/deps/include/bullet/LinearMath/btStackAlloc.h +0 -116
  253. data/deps/include/bullet/LinearMath/btTransform.h +0 -307
  254. data/deps/include/bullet/LinearMath/btTransformUtil.h +0 -228
  255. data/deps/include/bullet/LinearMath/btVector3.h +0 -766
  256. data/deps/include/bullet/MiniCL/MiniCLTask/MiniCLTask.h +0 -62
  257. data/deps/include/bullet/MiniCL/MiniCLTaskScheduler.h +0 -194
  258. data/deps/include/bullet/MiniCL/cl.h +0 -867
  259. data/deps/include/bullet/MiniCL/cl_MiniCL_Defs.h +0 -439
  260. data/deps/include/bullet/MiniCL/cl_gl.h +0 -113
  261. data/deps/include/bullet/MiniCL/cl_platform.h +0 -254
  262. data/deps/include/bullet/btBulletCollisionCommon.h +0 -69
  263. data/deps/include/bullet/btBulletDynamicsCommon.h +0 -48
  264. data/deps/include/bullet/vectormath/scalar/boolInVec.h +0 -225
  265. data/deps/include/bullet/vectormath/scalar/floatInVec.h +0 -343
  266. data/deps/include/bullet/vectormath/scalar/mat_aos.h +0 -1630
  267. data/deps/include/bullet/vectormath/scalar/quat_aos.h +0 -433
  268. data/deps/include/bullet/vectormath/scalar/vec_aos.h +0 -1426
  269. data/deps/include/bullet/vectormath/scalar/vectormath_aos.h +0 -1872
  270. data/deps/include/bullet/vectormath/sse/boolInVec.h +0 -247
  271. data/deps/include/bullet/vectormath/sse/floatInVec.h +0 -340
  272. data/deps/include/bullet/vectormath/sse/mat_aos.h +0 -2190
  273. data/deps/include/bullet/vectormath/sse/quat_aos.h +0 -579
  274. data/deps/include/bullet/vectormath/sse/vec_aos.h +0 -1455
  275. data/deps/include/bullet/vectormath/sse/vecidx_aos.h +0 -80
  276. data/deps/include/bullet/vectormath/sse/vectormath_aos.h +0 -2547
  277. data/deps/include/bullet/vectormath/vmInclude.h +0 -27
  278. data/deps/lib/libBulletCollision.a +0 -0
  279. data/deps/lib/libBulletDynamics.a +0 -0
  280. data/deps/lib/libBulletMultiThreaded.a +0 -0
  281. data/deps/lib/libBulletSoftBody.a +0 -0
  282. data/deps/lib/libBulletSoftBodySolvers_OpenCL_Mini.a +0 -0
  283. data/deps/lib/libLinearMath.a +0 -0
  284. data/deps/lib/libMiniCL.a +0 -0
@@ -1,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