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,369 +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_OBB_BOX_2D_SHAPE_H
17
- #define BT_OBB_BOX_2D_SHAPE_H
18
-
19
- #include "BulletCollision/CollisionShapes/btPolyhedralConvexShape.h"
20
- #include "BulletCollision/CollisionShapes/btCollisionMargin.h"
21
- #include "BulletCollision/BroadphaseCollision/btBroadphaseProxy.h"
22
- #include "LinearMath/btVector3.h"
23
- #include "LinearMath/btMinMax.h"
24
-
25
- ///The btBox2dShape is a box primitive around the origin, its sides axis aligned with length specified by half extents, in local shape coordinates. When used as part of a btCollisionObject or btRigidBody it will be an oriented box in world space.
26
- class btBox2dShape: public btPolyhedralConvexShape
27
- {
28
-
29
- //btVector3 m_boxHalfExtents1; //use m_implicitShapeDimensions instead
30
-
31
- btVector3 m_centroid;
32
- btVector3 m_vertices[4];
33
- btVector3 m_normals[4];
34
-
35
- public:
36
-
37
- btVector3 getHalfExtentsWithMargin() const
38
- {
39
- btVector3 halfExtents = getHalfExtentsWithoutMargin();
40
- btVector3 margin(getMargin(),getMargin(),getMargin());
41
- halfExtents += margin;
42
- return halfExtents;
43
- }
44
-
45
- const btVector3& getHalfExtentsWithoutMargin() const
46
- {
47
- return m_implicitShapeDimensions;//changed in Bullet 2.63: assume the scaling and margin are included
48
- }
49
-
50
-
51
- virtual btVector3 localGetSupportingVertex(const btVector3& vec) const
52
- {
53
- btVector3 halfExtents = getHalfExtentsWithoutMargin();
54
- btVector3 margin(getMargin(),getMargin(),getMargin());
55
- halfExtents += margin;
56
-
57
- return btVector3(btFsels(vec.x(), halfExtents.x(), -halfExtents.x()),
58
- btFsels(vec.y(), halfExtents.y(), -halfExtents.y()),
59
- btFsels(vec.z(), halfExtents.z(), -halfExtents.z()));
60
- }
61
-
62
- SIMD_FORCE_INLINE btVector3 localGetSupportingVertexWithoutMargin(const btVector3& vec)const
63
- {
64
- const btVector3& halfExtents = getHalfExtentsWithoutMargin();
65
-
66
- return btVector3(btFsels(vec.x(), halfExtents.x(), -halfExtents.x()),
67
- btFsels(vec.y(), halfExtents.y(), -halfExtents.y()),
68
- btFsels(vec.z(), halfExtents.z(), -halfExtents.z()));
69
- }
70
-
71
- virtual void batchedUnitVectorGetSupportingVertexWithoutMargin(const btVector3* vectors,btVector3* supportVerticesOut,int numVectors) const
72
- {
73
- const btVector3& halfExtents = getHalfExtentsWithoutMargin();
74
-
75
- for (int i=0;i<numVectors;i++)
76
- {
77
- const btVector3& vec = vectors[i];
78
- supportVerticesOut[i].setValue(btFsels(vec.x(), halfExtents.x(), -halfExtents.x()),
79
- btFsels(vec.y(), halfExtents.y(), -halfExtents.y()),
80
- btFsels(vec.z(), halfExtents.z(), -halfExtents.z()));
81
- }
82
-
83
- }
84
-
85
-
86
- ///a btBox2dShape is a flat 2D box in the X-Y plane (Z extents are zero)
87
- btBox2dShape( const btVector3& boxHalfExtents)
88
- : btPolyhedralConvexShape(),
89
- m_centroid(0,0,0)
90
- {
91
- m_vertices[0].setValue(-boxHalfExtents.getX(),-boxHalfExtents.getY(),0);
92
- m_vertices[1].setValue(boxHalfExtents.getX(),-boxHalfExtents.getY(),0);
93
- m_vertices[2].setValue(boxHalfExtents.getX(),boxHalfExtents.getY(),0);
94
- m_vertices[3].setValue(-boxHalfExtents.getX(),boxHalfExtents.getY(),0);
95
-
96
- m_normals[0].setValue(0,-1,0);
97
- m_normals[1].setValue(1,0,0);
98
- m_normals[2].setValue(0,1,0);
99
- m_normals[3].setValue(-1,0,0);
100
-
101
- btScalar minDimension = boxHalfExtents.getX();
102
- if (minDimension>boxHalfExtents.getY())
103
- minDimension = boxHalfExtents.getY();
104
- setSafeMargin(minDimension);
105
-
106
- m_shapeType = BOX_2D_SHAPE_PROXYTYPE;
107
- btVector3 margin(getMargin(),getMargin(),getMargin());
108
- m_implicitShapeDimensions = (boxHalfExtents * m_localScaling) - margin;
109
- };
110
-
111
- virtual void setMargin(btScalar collisionMargin)
112
- {
113
- //correct the m_implicitShapeDimensions for the margin
114
- btVector3 oldMargin(getMargin(),getMargin(),getMargin());
115
- btVector3 implicitShapeDimensionsWithMargin = m_implicitShapeDimensions+oldMargin;
116
-
117
- btConvexInternalShape::setMargin(collisionMargin);
118
- btVector3 newMargin(getMargin(),getMargin(),getMargin());
119
- m_implicitShapeDimensions = implicitShapeDimensionsWithMargin - newMargin;
120
-
121
- }
122
- virtual void setLocalScaling(const btVector3& scaling)
123
- {
124
- btVector3 oldMargin(getMargin(),getMargin(),getMargin());
125
- btVector3 implicitShapeDimensionsWithMargin = m_implicitShapeDimensions+oldMargin;
126
- btVector3 unScaledImplicitShapeDimensionsWithMargin = implicitShapeDimensionsWithMargin / m_localScaling;
127
-
128
- btConvexInternalShape::setLocalScaling(scaling);
129
-
130
- m_implicitShapeDimensions = (unScaledImplicitShapeDimensionsWithMargin * m_localScaling) - oldMargin;
131
-
132
- }
133
-
134
- virtual void getAabb(const btTransform& t,btVector3& aabbMin,btVector3& aabbMax) const;
135
-
136
-
137
-
138
- virtual void calculateLocalInertia(btScalar mass,btVector3& inertia) const;
139
-
140
-
141
-
142
-
143
-
144
- int getVertexCount() const
145
- {
146
- return 4;
147
- }
148
-
149
- virtual int getNumVertices()const
150
- {
151
- return 4;
152
- }
153
-
154
- const btVector3* getVertices() const
155
- {
156
- return &m_vertices[0];
157
- }
158
-
159
- const btVector3* getNormals() const
160
- {
161
- return &m_normals[0];
162
- }
163
-
164
-
165
-
166
-
167
-
168
-
169
-
170
- virtual void getPlane(btVector3& planeNormal,btVector3& planeSupport,int i ) const
171
- {
172
- //this plane might not be aligned...
173
- btVector4 plane ;
174
- getPlaneEquation(plane,i);
175
- planeNormal = btVector3(plane.getX(),plane.getY(),plane.getZ());
176
- planeSupport = localGetSupportingVertex(-planeNormal);
177
- }
178
-
179
-
180
- const btVector3& getCentroid() const
181
- {
182
- return m_centroid;
183
- }
184
-
185
- virtual int getNumPlanes() const
186
- {
187
- return 6;
188
- }
189
-
190
-
191
-
192
- virtual int getNumEdges() const
193
- {
194
- return 12;
195
- }
196
-
197
-
198
- virtual void getVertex(int i,btVector3& vtx) const
199
- {
200
- btVector3 halfExtents = getHalfExtentsWithoutMargin();
201
-
202
- vtx = btVector3(
203
- halfExtents.x() * (1-(i&1)) - halfExtents.x() * (i&1),
204
- halfExtents.y() * (1-((i&2)>>1)) - halfExtents.y() * ((i&2)>>1),
205
- halfExtents.z() * (1-((i&4)>>2)) - halfExtents.z() * ((i&4)>>2));
206
- }
207
-
208
-
209
- virtual void getPlaneEquation(btVector4& plane,int i) const
210
- {
211
- btVector3 halfExtents = getHalfExtentsWithoutMargin();
212
-
213
- switch (i)
214
- {
215
- case 0:
216
- plane.setValue(btScalar(1.),btScalar(0.),btScalar(0.),-halfExtents.x());
217
- break;
218
- case 1:
219
- plane.setValue(btScalar(-1.),btScalar(0.),btScalar(0.),-halfExtents.x());
220
- break;
221
- case 2:
222
- plane.setValue(btScalar(0.),btScalar(1.),btScalar(0.),-halfExtents.y());
223
- break;
224
- case 3:
225
- plane.setValue(btScalar(0.),btScalar(-1.),btScalar(0.),-halfExtents.y());
226
- break;
227
- case 4:
228
- plane.setValue(btScalar(0.),btScalar(0.),btScalar(1.),-halfExtents.z());
229
- break;
230
- case 5:
231
- plane.setValue(btScalar(0.),btScalar(0.),btScalar(-1.),-halfExtents.z());
232
- break;
233
- default:
234
- btAssert(0);
235
- }
236
- }
237
-
238
-
239
- virtual void getEdge(int i,btVector3& pa,btVector3& pb) const
240
- //virtual void getEdge(int i,Edge& edge) const
241
- {
242
- int edgeVert0 = 0;
243
- int edgeVert1 = 0;
244
-
245
- switch (i)
246
- {
247
- case 0:
248
- edgeVert0 = 0;
249
- edgeVert1 = 1;
250
- break;
251
- case 1:
252
- edgeVert0 = 0;
253
- edgeVert1 = 2;
254
- break;
255
- case 2:
256
- edgeVert0 = 1;
257
- edgeVert1 = 3;
258
-
259
- break;
260
- case 3:
261
- edgeVert0 = 2;
262
- edgeVert1 = 3;
263
- break;
264
- case 4:
265
- edgeVert0 = 0;
266
- edgeVert1 = 4;
267
- break;
268
- case 5:
269
- edgeVert0 = 1;
270
- edgeVert1 = 5;
271
-
272
- break;
273
- case 6:
274
- edgeVert0 = 2;
275
- edgeVert1 = 6;
276
- break;
277
- case 7:
278
- edgeVert0 = 3;
279
- edgeVert1 = 7;
280
- break;
281
- case 8:
282
- edgeVert0 = 4;
283
- edgeVert1 = 5;
284
- break;
285
- case 9:
286
- edgeVert0 = 4;
287
- edgeVert1 = 6;
288
- break;
289
- case 10:
290
- edgeVert0 = 5;
291
- edgeVert1 = 7;
292
- break;
293
- case 11:
294
- edgeVert0 = 6;
295
- edgeVert1 = 7;
296
- break;
297
- default:
298
- btAssert(0);
299
-
300
- }
301
-
302
- getVertex(edgeVert0,pa );
303
- getVertex(edgeVert1,pb );
304
- }
305
-
306
-
307
-
308
-
309
-
310
- virtual bool isInside(const btVector3& pt,btScalar tolerance) const
311
- {
312
- btVector3 halfExtents = getHalfExtentsWithoutMargin();
313
-
314
- //btScalar minDist = 2*tolerance;
315
-
316
- bool result = (pt.x() <= (halfExtents.x()+tolerance)) &&
317
- (pt.x() >= (-halfExtents.x()-tolerance)) &&
318
- (pt.y() <= (halfExtents.y()+tolerance)) &&
319
- (pt.y() >= (-halfExtents.y()-tolerance)) &&
320
- (pt.z() <= (halfExtents.z()+tolerance)) &&
321
- (pt.z() >= (-halfExtents.z()-tolerance));
322
-
323
- return result;
324
- }
325
-
326
-
327
- //debugging
328
- virtual const char* getName()const
329
- {
330
- return "Box2d";
331
- }
332
-
333
- virtual int getNumPreferredPenetrationDirections() const
334
- {
335
- return 6;
336
- }
337
-
338
- virtual void getPreferredPenetrationDirection(int index, btVector3& penetrationVector) const
339
- {
340
- switch (index)
341
- {
342
- case 0:
343
- penetrationVector.setValue(btScalar(1.),btScalar(0.),btScalar(0.));
344
- break;
345
- case 1:
346
- penetrationVector.setValue(btScalar(-1.),btScalar(0.),btScalar(0.));
347
- break;
348
- case 2:
349
- penetrationVector.setValue(btScalar(0.),btScalar(1.),btScalar(0.));
350
- break;
351
- case 3:
352
- penetrationVector.setValue(btScalar(0.),btScalar(-1.),btScalar(0.));
353
- break;
354
- case 4:
355
- penetrationVector.setValue(btScalar(0.),btScalar(0.),btScalar(1.));
356
- break;
357
- case 5:
358
- penetrationVector.setValue(btScalar(0.),btScalar(0.),btScalar(-1.));
359
- break;
360
- default:
361
- btAssert(0);
362
- }
363
- }
364
-
365
- };
366
-
367
- #endif //BT_OBB_BOX_2D_SHAPE_H
368
-
369
-
@@ -1,312 +0,0 @@
1
- /*
2
- Bullet Continuous Collision Detection and Physics Library
3
- Copyright (c) 2003-2009 Erwin Coumans http://bulletphysics.org
4
-
5
- This software is provided 'as-is', without any express or implied warranty.
6
- In no event will the authors be held liable for any damages arising from the use of this software.
7
- Permission is granted to anyone to use this software for any purpose,
8
- including commercial applications, and to alter it and redistribute it freely,
9
- subject to the following restrictions:
10
-
11
- 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
12
- 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
13
- 3. This notice may not be removed or altered from any source distribution.
14
- */
15
-
16
- #ifndef BT_OBB_BOX_MINKOWSKI_H
17
- #define BT_OBB_BOX_MINKOWSKI_H
18
-
19
- #include "btPolyhedralConvexShape.h"
20
- #include "btCollisionMargin.h"
21
- #include "BulletCollision/BroadphaseCollision/btBroadphaseProxy.h"
22
- #include "LinearMath/btVector3.h"
23
- #include "LinearMath/btMinMax.h"
24
-
25
- ///The btBoxShape is a box primitive around the origin, its sides axis aligned with length specified by half extents, in local shape coordinates. When used as part of a btCollisionObject or btRigidBody it will be an oriented box in world space.
26
- class btBoxShape: public btPolyhedralConvexShape
27
- {
28
-
29
- //btVector3 m_boxHalfExtents1; //use m_implicitShapeDimensions instead
30
-
31
-
32
- public:
33
-
34
- btVector3 getHalfExtentsWithMargin() const
35
- {
36
- btVector3 halfExtents = getHalfExtentsWithoutMargin();
37
- btVector3 margin(getMargin(),getMargin(),getMargin());
38
- halfExtents += margin;
39
- return halfExtents;
40
- }
41
-
42
- const btVector3& getHalfExtentsWithoutMargin() const
43
- {
44
- return m_implicitShapeDimensions;//scaling is included, margin is not
45
- }
46
-
47
-
48
- virtual btVector3 localGetSupportingVertex(const btVector3& vec) const
49
- {
50
- btVector3 halfExtents = getHalfExtentsWithoutMargin();
51
- btVector3 margin(getMargin(),getMargin(),getMargin());
52
- halfExtents += margin;
53
-
54
- return btVector3(btFsels(vec.x(), halfExtents.x(), -halfExtents.x()),
55
- btFsels(vec.y(), halfExtents.y(), -halfExtents.y()),
56
- btFsels(vec.z(), halfExtents.z(), -halfExtents.z()));
57
- }
58
-
59
- SIMD_FORCE_INLINE btVector3 localGetSupportingVertexWithoutMargin(const btVector3& vec)const
60
- {
61
- const btVector3& halfExtents = getHalfExtentsWithoutMargin();
62
-
63
- return btVector3(btFsels(vec.x(), halfExtents.x(), -halfExtents.x()),
64
- btFsels(vec.y(), halfExtents.y(), -halfExtents.y()),
65
- btFsels(vec.z(), halfExtents.z(), -halfExtents.z()));
66
- }
67
-
68
- virtual void batchedUnitVectorGetSupportingVertexWithoutMargin(const btVector3* vectors,btVector3* supportVerticesOut,int numVectors) const
69
- {
70
- const btVector3& halfExtents = getHalfExtentsWithoutMargin();
71
-
72
- for (int i=0;i<numVectors;i++)
73
- {
74
- const btVector3& vec = vectors[i];
75
- supportVerticesOut[i].setValue(btFsels(vec.x(), halfExtents.x(), -halfExtents.x()),
76
- btFsels(vec.y(), halfExtents.y(), -halfExtents.y()),
77
- btFsels(vec.z(), halfExtents.z(), -halfExtents.z()));
78
- }
79
-
80
- }
81
-
82
-
83
- btBoxShape( const btVector3& boxHalfExtents);
84
-
85
- virtual void setMargin(btScalar collisionMargin)
86
- {
87
- //correct the m_implicitShapeDimensions for the margin
88
- btVector3 oldMargin(getMargin(),getMargin(),getMargin());
89
- btVector3 implicitShapeDimensionsWithMargin = m_implicitShapeDimensions+oldMargin;
90
-
91
- btConvexInternalShape::setMargin(collisionMargin);
92
- btVector3 newMargin(getMargin(),getMargin(),getMargin());
93
- m_implicitShapeDimensions = implicitShapeDimensionsWithMargin - newMargin;
94
-
95
- }
96
- virtual void setLocalScaling(const btVector3& scaling)
97
- {
98
- btVector3 oldMargin(getMargin(),getMargin(),getMargin());
99
- btVector3 implicitShapeDimensionsWithMargin = m_implicitShapeDimensions+oldMargin;
100
- btVector3 unScaledImplicitShapeDimensionsWithMargin = implicitShapeDimensionsWithMargin / m_localScaling;
101
-
102
- btConvexInternalShape::setLocalScaling(scaling);
103
-
104
- m_implicitShapeDimensions = (unScaledImplicitShapeDimensionsWithMargin * m_localScaling) - oldMargin;
105
-
106
- }
107
-
108
- virtual void getAabb(const btTransform& t,btVector3& aabbMin,btVector3& aabbMax) const;
109
-
110
-
111
-
112
- virtual void calculateLocalInertia(btScalar mass,btVector3& inertia) const;
113
-
114
- virtual void getPlane(btVector3& planeNormal,btVector3& planeSupport,int i ) const
115
- {
116
- //this plane might not be aligned...
117
- btVector4 plane ;
118
- getPlaneEquation(plane,i);
119
- planeNormal = btVector3(plane.getX(),plane.getY(),plane.getZ());
120
- planeSupport = localGetSupportingVertex(-planeNormal);
121
- }
122
-
123
-
124
- virtual int getNumPlanes() const
125
- {
126
- return 6;
127
- }
128
-
129
- virtual int getNumVertices() const
130
- {
131
- return 8;
132
- }
133
-
134
- virtual int getNumEdges() const
135
- {
136
- return 12;
137
- }
138
-
139
-
140
- virtual void getVertex(int i,btVector3& vtx) const
141
- {
142
- btVector3 halfExtents = getHalfExtentsWithMargin();
143
-
144
- vtx = btVector3(
145
- halfExtents.x() * (1-(i&1)) - halfExtents.x() * (i&1),
146
- halfExtents.y() * (1-((i&2)>>1)) - halfExtents.y() * ((i&2)>>1),
147
- halfExtents.z() * (1-((i&4)>>2)) - halfExtents.z() * ((i&4)>>2));
148
- }
149
-
150
-
151
- virtual void getPlaneEquation(btVector4& plane,int i) const
152
- {
153
- btVector3 halfExtents = getHalfExtentsWithoutMargin();
154
-
155
- switch (i)
156
- {
157
- case 0:
158
- plane.setValue(btScalar(1.),btScalar(0.),btScalar(0.),-halfExtents.x());
159
- break;
160
- case 1:
161
- plane.setValue(btScalar(-1.),btScalar(0.),btScalar(0.),-halfExtents.x());
162
- break;
163
- case 2:
164
- plane.setValue(btScalar(0.),btScalar(1.),btScalar(0.),-halfExtents.y());
165
- break;
166
- case 3:
167
- plane.setValue(btScalar(0.),btScalar(-1.),btScalar(0.),-halfExtents.y());
168
- break;
169
- case 4:
170
- plane.setValue(btScalar(0.),btScalar(0.),btScalar(1.),-halfExtents.z());
171
- break;
172
- case 5:
173
- plane.setValue(btScalar(0.),btScalar(0.),btScalar(-1.),-halfExtents.z());
174
- break;
175
- default:
176
- btAssert(0);
177
- }
178
- }
179
-
180
-
181
- virtual void getEdge(int i,btVector3& pa,btVector3& pb) const
182
- //virtual void getEdge(int i,Edge& edge) const
183
- {
184
- int edgeVert0 = 0;
185
- int edgeVert1 = 0;
186
-
187
- switch (i)
188
- {
189
- case 0:
190
- edgeVert0 = 0;
191
- edgeVert1 = 1;
192
- break;
193
- case 1:
194
- edgeVert0 = 0;
195
- edgeVert1 = 2;
196
- break;
197
- case 2:
198
- edgeVert0 = 1;
199
- edgeVert1 = 3;
200
-
201
- break;
202
- case 3:
203
- edgeVert0 = 2;
204
- edgeVert1 = 3;
205
- break;
206
- case 4:
207
- edgeVert0 = 0;
208
- edgeVert1 = 4;
209
- break;
210
- case 5:
211
- edgeVert0 = 1;
212
- edgeVert1 = 5;
213
-
214
- break;
215
- case 6:
216
- edgeVert0 = 2;
217
- edgeVert1 = 6;
218
- break;
219
- case 7:
220
- edgeVert0 = 3;
221
- edgeVert1 = 7;
222
- break;
223
- case 8:
224
- edgeVert0 = 4;
225
- edgeVert1 = 5;
226
- break;
227
- case 9:
228
- edgeVert0 = 4;
229
- edgeVert1 = 6;
230
- break;
231
- case 10:
232
- edgeVert0 = 5;
233
- edgeVert1 = 7;
234
- break;
235
- case 11:
236
- edgeVert0 = 6;
237
- edgeVert1 = 7;
238
- break;
239
- default:
240
- btAssert(0);
241
-
242
- }
243
-
244
- getVertex(edgeVert0,pa );
245
- getVertex(edgeVert1,pb );
246
- }
247
-
248
-
249
-
250
-
251
-
252
- virtual bool isInside(const btVector3& pt,btScalar tolerance) const
253
- {
254
- btVector3 halfExtents = getHalfExtentsWithoutMargin();
255
-
256
- //btScalar minDist = 2*tolerance;
257
-
258
- bool result = (pt.x() <= (halfExtents.x()+tolerance)) &&
259
- (pt.x() >= (-halfExtents.x()-tolerance)) &&
260
- (pt.y() <= (halfExtents.y()+tolerance)) &&
261
- (pt.y() >= (-halfExtents.y()-tolerance)) &&
262
- (pt.z() <= (halfExtents.z()+tolerance)) &&
263
- (pt.z() >= (-halfExtents.z()-tolerance));
264
-
265
- return result;
266
- }
267
-
268
-
269
- //debugging
270
- virtual const char* getName()const
271
- {
272
- return "Box";
273
- }
274
-
275
- virtual int getNumPreferredPenetrationDirections() const
276
- {
277
- return 6;
278
- }
279
-
280
- virtual void getPreferredPenetrationDirection(int index, btVector3& penetrationVector) const
281
- {
282
- switch (index)
283
- {
284
- case 0:
285
- penetrationVector.setValue(btScalar(1.),btScalar(0.),btScalar(0.));
286
- break;
287
- case 1:
288
- penetrationVector.setValue(btScalar(-1.),btScalar(0.),btScalar(0.));
289
- break;
290
- case 2:
291
- penetrationVector.setValue(btScalar(0.),btScalar(1.),btScalar(0.));
292
- break;
293
- case 3:
294
- penetrationVector.setValue(btScalar(0.),btScalar(-1.),btScalar(0.));
295
- break;
296
- case 4:
297
- penetrationVector.setValue(btScalar(0.),btScalar(0.),btScalar(1.));
298
- break;
299
- case 5:
300
- penetrationVector.setValue(btScalar(0.),btScalar(0.),btScalar(-1.));
301
- break;
302
- default:
303
- btAssert(0);
304
- }
305
- }
306
-
307
- };
308
-
309
-
310
- #endif //BT_OBB_BOX_MINKOWSKI_H
311
-
312
-