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,99 +0,0 @@
1
- /*
2
- Bullet Continuous Collision Detection and Physics Library, http://bulletphysics.org
3
- Copyright (C) 2006, 2007 Sony Computer Entertainment Inc.
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_GENERIC_6DOF_SPRING_CONSTRAINT_H
17
- #define BT_GENERIC_6DOF_SPRING_CONSTRAINT_H
18
-
19
-
20
- #include "LinearMath/btVector3.h"
21
- #include "btTypedConstraint.h"
22
- #include "btGeneric6DofConstraint.h"
23
-
24
-
25
- /// Generic 6 DOF constraint that allows to set spring motors to any translational and rotational DOF
26
-
27
- /// DOF index used in enableSpring() and setStiffness() means:
28
- /// 0 : translation X
29
- /// 1 : translation Y
30
- /// 2 : translation Z
31
- /// 3 : rotation X (3rd Euler rotational around new position of X axis, range [-PI+epsilon, PI-epsilon] )
32
- /// 4 : rotation Y (2nd Euler rotational around new position of Y axis, range [-PI/2+epsilon, PI/2-epsilon] )
33
- /// 5 : rotation Z (1st Euler rotational around Z axis, range [-PI+epsilon, PI-epsilon] )
34
-
35
- class btGeneric6DofSpringConstraint : public btGeneric6DofConstraint
36
- {
37
- protected:
38
- bool m_springEnabled[6];
39
- btScalar m_equilibriumPoint[6];
40
- btScalar m_springStiffness[6];
41
- btScalar m_springDamping[6]; // between 0 and 1 (1 == no damping)
42
- void init();
43
- void internalUpdateSprings(btConstraintInfo2* info);
44
- public:
45
- btGeneric6DofSpringConstraint(btRigidBody& rbA, btRigidBody& rbB, const btTransform& frameInA, const btTransform& frameInB ,bool useLinearReferenceFrameA);
46
- btGeneric6DofSpringConstraint(btRigidBody& rbB, const btTransform& frameInB, bool useLinearReferenceFrameB);
47
- void enableSpring(int index, bool onOff);
48
- void setStiffness(int index, btScalar stiffness);
49
- void setDamping(int index, btScalar damping);
50
- void setEquilibriumPoint(); // set the current constraint position/orientation as an equilibrium point for all DOF
51
- void setEquilibriumPoint(int index); // set the current constraint position/orientation as an equilibrium point for given DOF
52
- void setEquilibriumPoint(int index, btScalar val);
53
-
54
- virtual void setAxis( const btVector3& axis1, const btVector3& axis2);
55
-
56
- virtual void getInfo2 (btConstraintInfo2* info);
57
-
58
- virtual int calculateSerializeBufferSize() const;
59
- ///fills the dataBuffer and returns the struct name (and 0 on failure)
60
- virtual const char* serialize(void* dataBuffer, btSerializer* serializer) const;
61
-
62
- };
63
-
64
-
65
- ///do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64
66
- struct btGeneric6DofSpringConstraintData
67
- {
68
- btGeneric6DofConstraintData m_6dofData;
69
-
70
- int m_springEnabled[6];
71
- float m_equilibriumPoint[6];
72
- float m_springStiffness[6];
73
- float m_springDamping[6];
74
- };
75
-
76
- SIMD_FORCE_INLINE int btGeneric6DofSpringConstraint::calculateSerializeBufferSize() const
77
- {
78
- return sizeof(btGeneric6DofSpringConstraintData);
79
- }
80
-
81
- ///fills the dataBuffer and returns the struct name (and 0 on failure)
82
- SIMD_FORCE_INLINE const char* btGeneric6DofSpringConstraint::serialize(void* dataBuffer, btSerializer* serializer) const
83
- {
84
- btGeneric6DofSpringConstraintData* dof = (btGeneric6DofSpringConstraintData*)dataBuffer;
85
- btGeneric6DofConstraint::serialize(&dof->m_6dofData,serializer);
86
-
87
- int i;
88
- for (i=0;i<6;i++)
89
- {
90
- dof->m_equilibriumPoint[i] = m_equilibriumPoint[i];
91
- dof->m_springDamping[i] = m_springDamping[i];
92
- dof->m_springEnabled[i] = m_springEnabled[i]? 1 : 0;
93
- dof->m_springStiffness[i] = m_springStiffness[i];
94
- }
95
- return "btGeneric6DofConstraintData";
96
- }
97
-
98
- #endif // BT_GENERIC_6DOF_SPRING_CONSTRAINT_H
99
-
@@ -1,58 +0,0 @@
1
- /*
2
- Bullet Continuous Collision Detection and Physics Library, http://bulletphysics.org
3
- Copyright (C) 2006, 2007 Sony Computer Entertainment Inc.
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_HINGE2_CONSTRAINT_H
17
- #define BT_HINGE2_CONSTRAINT_H
18
-
19
-
20
-
21
- #include "LinearMath/btVector3.h"
22
- #include "btTypedConstraint.h"
23
- #include "btGeneric6DofSpringConstraint.h"
24
-
25
-
26
-
27
- // Constraint similar to ODE Hinge2 Joint
28
- // has 3 degrees of frredom:
29
- // 2 rotational degrees of freedom, similar to Euler rotations around Z (axis 1) and X (axis 2)
30
- // 1 translational (along axis Z) with suspension spring
31
-
32
- class btHinge2Constraint : public btGeneric6DofSpringConstraint
33
- {
34
- protected:
35
- btVector3 m_anchor;
36
- btVector3 m_axis1;
37
- btVector3 m_axis2;
38
- public:
39
- // constructor
40
- // anchor, axis1 and axis2 are in world coordinate system
41
- // axis1 must be orthogonal to axis2
42
- btHinge2Constraint(btRigidBody& rbA, btRigidBody& rbB, btVector3& anchor, btVector3& axis1, btVector3& axis2);
43
- // access
44
- const btVector3& getAnchor() { return m_calculatedTransformA.getOrigin(); }
45
- const btVector3& getAnchor2() { return m_calculatedTransformB.getOrigin(); }
46
- const btVector3& getAxis1() { return m_axis1; }
47
- const btVector3& getAxis2() { return m_axis2; }
48
- btScalar getAngle1() { return getAngle(2); }
49
- btScalar getAngle2() { return getAngle(0); }
50
- // limits
51
- void setUpperLimit(btScalar ang1max) { setAngularUpperLimit(btVector3(-1.f, 0.f, ang1max)); }
52
- void setLowerLimit(btScalar ang1min) { setAngularLowerLimit(btVector3( 1.f, 0.f, ang1min)); }
53
- };
54
-
55
-
56
-
57
- #endif // BT_HINGE2_CONSTRAINT_H
58
-
@@ -1,381 +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
- /* Hinge Constraint by Dirk Gregorius. Limits added by Marcus Hennix at Starbreeze Studios */
17
-
18
- #ifndef BT_HINGECONSTRAINT_H
19
- #define BT_HINGECONSTRAINT_H
20
-
21
- #define _BT_USE_CENTER_LIMIT_ 1
22
-
23
-
24
- #include "LinearMath/btVector3.h"
25
- #include "btJacobianEntry.h"
26
- #include "btTypedConstraint.h"
27
-
28
- class btRigidBody;
29
-
30
- #ifdef BT_USE_DOUBLE_PRECISION
31
- #define btHingeConstraintData btHingeConstraintDoubleData
32
- #define btHingeConstraintDataName "btHingeConstraintDoubleData"
33
- #else
34
- #define btHingeConstraintData btHingeConstraintFloatData
35
- #define btHingeConstraintDataName "btHingeConstraintFloatData"
36
- #endif //BT_USE_DOUBLE_PRECISION
37
-
38
-
39
-
40
- enum btHingeFlags
41
- {
42
- BT_HINGE_FLAGS_CFM_STOP = 1,
43
- BT_HINGE_FLAGS_ERP_STOP = 2,
44
- BT_HINGE_FLAGS_CFM_NORM = 4
45
- };
46
-
47
-
48
- /// hinge constraint between two rigidbodies each with a pivotpoint that descibes the axis location in local space
49
- /// axis defines the orientation of the hinge axis
50
- ATTRIBUTE_ALIGNED16(class) btHingeConstraint : public btTypedConstraint
51
- {
52
- #ifdef IN_PARALLELL_SOLVER
53
- public:
54
- #endif
55
- btJacobianEntry m_jac[3]; //3 orthogonal linear constraints
56
- btJacobianEntry m_jacAng[3]; //2 orthogonal angular constraints+ 1 for limit/motor
57
-
58
- btTransform m_rbAFrame; // constraint axii. Assumes z is hinge axis.
59
- btTransform m_rbBFrame;
60
-
61
- btScalar m_motorTargetVelocity;
62
- btScalar m_maxMotorImpulse;
63
-
64
-
65
- #ifdef _BT_USE_CENTER_LIMIT_
66
- btAngularLimit m_limit;
67
- #else
68
- btScalar m_lowerLimit;
69
- btScalar m_upperLimit;
70
- btScalar m_limitSign;
71
- btScalar m_correction;
72
-
73
- btScalar m_limitSoftness;
74
- btScalar m_biasFactor;
75
- btScalar m_relaxationFactor;
76
-
77
- bool m_solveLimit;
78
- #endif
79
-
80
- btScalar m_kHinge;
81
-
82
-
83
- btScalar m_accLimitImpulse;
84
- btScalar m_hingeAngle;
85
- btScalar m_referenceSign;
86
-
87
- bool m_angularOnly;
88
- bool m_enableAngularMotor;
89
- bool m_useSolveConstraintObsolete;
90
- bool m_useOffsetForConstraintFrame;
91
- bool m_useReferenceFrameA;
92
-
93
- btScalar m_accMotorImpulse;
94
-
95
- int m_flags;
96
- btScalar m_normalCFM;
97
- btScalar m_stopCFM;
98
- btScalar m_stopERP;
99
-
100
-
101
- public:
102
-
103
- btHingeConstraint(btRigidBody& rbA,btRigidBody& rbB, const btVector3& pivotInA,const btVector3& pivotInB, const btVector3& axisInA,const btVector3& axisInB, bool useReferenceFrameA = false);
104
-
105
- btHingeConstraint(btRigidBody& rbA,const btVector3& pivotInA,const btVector3& axisInA, bool useReferenceFrameA = false);
106
-
107
- btHingeConstraint(btRigidBody& rbA,btRigidBody& rbB, const btTransform& rbAFrame, const btTransform& rbBFrame, bool useReferenceFrameA = false);
108
-
109
- btHingeConstraint(btRigidBody& rbA,const btTransform& rbAFrame, bool useReferenceFrameA = false);
110
-
111
-
112
- virtual void buildJacobian();
113
-
114
- virtual void getInfo1 (btConstraintInfo1* info);
115
-
116
- void getInfo1NonVirtual(btConstraintInfo1* info);
117
-
118
- virtual void getInfo2 (btConstraintInfo2* info);
119
-
120
- void getInfo2NonVirtual(btConstraintInfo2* info,const btTransform& transA,const btTransform& transB,const btVector3& angVelA,const btVector3& angVelB);
121
-
122
- void getInfo2Internal(btConstraintInfo2* info,const btTransform& transA,const btTransform& transB,const btVector3& angVelA,const btVector3& angVelB);
123
- void getInfo2InternalUsingFrameOffset(btConstraintInfo2* info,const btTransform& transA,const btTransform& transB,const btVector3& angVelA,const btVector3& angVelB);
124
-
125
-
126
- void updateRHS(btScalar timeStep);
127
-
128
- const btRigidBody& getRigidBodyA() const
129
- {
130
- return m_rbA;
131
- }
132
- const btRigidBody& getRigidBodyB() const
133
- {
134
- return m_rbB;
135
- }
136
-
137
- btRigidBody& getRigidBodyA()
138
- {
139
- return m_rbA;
140
- }
141
-
142
- btRigidBody& getRigidBodyB()
143
- {
144
- return m_rbB;
145
- }
146
-
147
- btTransform& getFrameOffsetA()
148
- {
149
- return m_rbAFrame;
150
- }
151
-
152
- btTransform& getFrameOffsetB()
153
- {
154
- return m_rbBFrame;
155
- }
156
-
157
- void setFrames(const btTransform& frameA, const btTransform& frameB);
158
-
159
- void setAngularOnly(bool angularOnly)
160
- {
161
- m_angularOnly = angularOnly;
162
- }
163
-
164
- void enableAngularMotor(bool enableMotor,btScalar targetVelocity,btScalar maxMotorImpulse)
165
- {
166
- m_enableAngularMotor = enableMotor;
167
- m_motorTargetVelocity = targetVelocity;
168
- m_maxMotorImpulse = maxMotorImpulse;
169
- }
170
-
171
- // extra motor API, including ability to set a target rotation (as opposed to angular velocity)
172
- // note: setMotorTarget sets angular velocity under the hood, so you must call it every tick to
173
- // maintain a given angular target.
174
- void enableMotor(bool enableMotor) { m_enableAngularMotor = enableMotor; }
175
- void setMaxMotorImpulse(btScalar maxMotorImpulse) { m_maxMotorImpulse = maxMotorImpulse; }
176
- void setMotorTarget(const btQuaternion& qAinB, btScalar dt); // qAinB is rotation of body A wrt body B.
177
- void setMotorTarget(btScalar targetAngle, btScalar dt);
178
-
179
-
180
- void setLimit(btScalar low,btScalar high,btScalar _softness = 0.9f, btScalar _biasFactor = 0.3f, btScalar _relaxationFactor = 1.0f)
181
- {
182
- #ifdef _BT_USE_CENTER_LIMIT_
183
- m_limit.set(low, high, _softness, _biasFactor, _relaxationFactor);
184
- #else
185
- m_lowerLimit = btNormalizeAngle(low);
186
- m_upperLimit = btNormalizeAngle(high);
187
- m_limitSoftness = _softness;
188
- m_biasFactor = _biasFactor;
189
- m_relaxationFactor = _relaxationFactor;
190
- #endif
191
- }
192
-
193
- void setAxis(btVector3& axisInA)
194
- {
195
- btVector3 rbAxisA1, rbAxisA2;
196
- btPlaneSpace1(axisInA, rbAxisA1, rbAxisA2);
197
- btVector3 pivotInA = m_rbAFrame.getOrigin();
198
- // m_rbAFrame.getOrigin() = pivotInA;
199
- m_rbAFrame.getBasis().setValue( rbAxisA1.getX(),rbAxisA2.getX(),axisInA.getX(),
200
- rbAxisA1.getY(),rbAxisA2.getY(),axisInA.getY(),
201
- rbAxisA1.getZ(),rbAxisA2.getZ(),axisInA.getZ() );
202
-
203
- btVector3 axisInB = m_rbA.getCenterOfMassTransform().getBasis() * axisInA;
204
-
205
- btQuaternion rotationArc = shortestArcQuat(axisInA,axisInB);
206
- btVector3 rbAxisB1 = quatRotate(rotationArc,rbAxisA1);
207
- btVector3 rbAxisB2 = axisInB.cross(rbAxisB1);
208
-
209
- m_rbBFrame.getOrigin() = m_rbB.getCenterOfMassTransform().inverse()(m_rbA.getCenterOfMassTransform()(pivotInA));
210
-
211
- m_rbBFrame.getBasis().setValue( rbAxisB1.getX(),rbAxisB2.getX(),axisInB.getX(),
212
- rbAxisB1.getY(),rbAxisB2.getY(),axisInB.getY(),
213
- rbAxisB1.getZ(),rbAxisB2.getZ(),axisInB.getZ() );
214
- m_rbBFrame.getBasis() = m_rbB.getCenterOfMassTransform().getBasis().inverse() * m_rbBFrame.getBasis();
215
-
216
- }
217
-
218
- btScalar getLowerLimit() const
219
- {
220
- #ifdef _BT_USE_CENTER_LIMIT_
221
- return m_limit.getLow();
222
- #else
223
- return m_lowerLimit;
224
- #endif
225
- }
226
-
227
- btScalar getUpperLimit() const
228
- {
229
- #ifdef _BT_USE_CENTER_LIMIT_
230
- return m_limit.getHigh();
231
- #else
232
- return m_upperLimit;
233
- #endif
234
- }
235
-
236
-
237
- btScalar getHingeAngle();
238
-
239
- btScalar getHingeAngle(const btTransform& transA,const btTransform& transB);
240
-
241
- void testLimit(const btTransform& transA,const btTransform& transB);
242
-
243
-
244
- const btTransform& getAFrame() const { return m_rbAFrame; };
245
- const btTransform& getBFrame() const { return m_rbBFrame; };
246
-
247
- btTransform& getAFrame() { return m_rbAFrame; };
248
- btTransform& getBFrame() { return m_rbBFrame; };
249
-
250
- inline int getSolveLimit()
251
- {
252
- #ifdef _BT_USE_CENTER_LIMIT_
253
- return m_limit.isLimit();
254
- #else
255
- return m_solveLimit;
256
- #endif
257
- }
258
-
259
- inline btScalar getLimitSign()
260
- {
261
- #ifdef _BT_USE_CENTER_LIMIT_
262
- return m_limit.getSign();
263
- #else
264
- return m_limitSign;
265
- #endif
266
- }
267
-
268
- inline bool getAngularOnly()
269
- {
270
- return m_angularOnly;
271
- }
272
- inline bool getEnableAngularMotor()
273
- {
274
- return m_enableAngularMotor;
275
- }
276
- inline btScalar getMotorTargetVelosity()
277
- {
278
- return m_motorTargetVelocity;
279
- }
280
- inline btScalar getMaxMotorImpulse()
281
- {
282
- return m_maxMotorImpulse;
283
- }
284
- // access for UseFrameOffset
285
- bool getUseFrameOffset() { return m_useOffsetForConstraintFrame; }
286
- void setUseFrameOffset(bool frameOffsetOnOff) { m_useOffsetForConstraintFrame = frameOffsetOnOff; }
287
-
288
-
289
- ///override the default global value of a parameter (such as ERP or CFM), optionally provide the axis (0..5).
290
- ///If no axis is provided, it uses the default axis for this constraint.
291
- virtual void setParam(int num, btScalar value, int axis = -1);
292
- ///return the local value of parameter
293
- virtual btScalar getParam(int num, int axis = -1) const;
294
-
295
- virtual int calculateSerializeBufferSize() const;
296
-
297
- ///fills the dataBuffer and returns the struct name (and 0 on failure)
298
- virtual const char* serialize(void* dataBuffer, btSerializer* serializer) const;
299
-
300
-
301
- };
302
-
303
- ///do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64
304
- struct btHingeConstraintDoubleData
305
- {
306
- btTypedConstraintData m_typeConstraintData;
307
- btTransformDoubleData m_rbAFrame; // constraint axii. Assumes z is hinge axis.
308
- btTransformDoubleData m_rbBFrame;
309
- int m_useReferenceFrameA;
310
- int m_angularOnly;
311
- int m_enableAngularMotor;
312
- float m_motorTargetVelocity;
313
- float m_maxMotorImpulse;
314
-
315
- float m_lowerLimit;
316
- float m_upperLimit;
317
- float m_limitSoftness;
318
- float m_biasFactor;
319
- float m_relaxationFactor;
320
-
321
- };
322
- ///do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64
323
- struct btHingeConstraintFloatData
324
- {
325
- btTypedConstraintData m_typeConstraintData;
326
- btTransformFloatData m_rbAFrame; // constraint axii. Assumes z is hinge axis.
327
- btTransformFloatData m_rbBFrame;
328
- int m_useReferenceFrameA;
329
- int m_angularOnly;
330
-
331
- int m_enableAngularMotor;
332
- float m_motorTargetVelocity;
333
- float m_maxMotorImpulse;
334
-
335
- float m_lowerLimit;
336
- float m_upperLimit;
337
- float m_limitSoftness;
338
- float m_biasFactor;
339
- float m_relaxationFactor;
340
-
341
- };
342
-
343
-
344
-
345
- SIMD_FORCE_INLINE int btHingeConstraint::calculateSerializeBufferSize() const
346
- {
347
- return sizeof(btHingeConstraintData);
348
- }
349
-
350
- ///fills the dataBuffer and returns the struct name (and 0 on failure)
351
- SIMD_FORCE_INLINE const char* btHingeConstraint::serialize(void* dataBuffer, btSerializer* serializer) const
352
- {
353
- btHingeConstraintData* hingeData = (btHingeConstraintData*)dataBuffer;
354
- btTypedConstraint::serialize(&hingeData->m_typeConstraintData,serializer);
355
-
356
- m_rbAFrame.serialize(hingeData->m_rbAFrame);
357
- m_rbBFrame.serialize(hingeData->m_rbBFrame);
358
-
359
- hingeData->m_angularOnly = m_angularOnly;
360
- hingeData->m_enableAngularMotor = m_enableAngularMotor;
361
- hingeData->m_maxMotorImpulse = float(m_maxMotorImpulse);
362
- hingeData->m_motorTargetVelocity = float(m_motorTargetVelocity);
363
- hingeData->m_useReferenceFrameA = m_useReferenceFrameA;
364
- #ifdef _BT_USE_CENTER_LIMIT_
365
- hingeData->m_lowerLimit = float(m_limit.getLow());
366
- hingeData->m_upperLimit = float(m_limit.getHigh());
367
- hingeData->m_limitSoftness = float(m_limit.getSoftness());
368
- hingeData->m_biasFactor = float(m_limit.getBiasFactor());
369
- hingeData->m_relaxationFactor = float(m_limit.getRelaxationFactor());
370
- #else
371
- hingeData->m_lowerLimit = float(m_lowerLimit);
372
- hingeData->m_upperLimit = float(m_upperLimit);
373
- hingeData->m_limitSoftness = float(m_limitSoftness);
374
- hingeData->m_biasFactor = float(m_biasFactor);
375
- hingeData->m_relaxationFactor = float(m_relaxationFactor);
376
- #endif
377
-
378
- return btHingeConstraintDataName;
379
- }
380
-
381
- #endif //BT_HINGECONSTRAINT_H
@@ -1,156 +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_JACOBIAN_ENTRY_H
17
- #define BT_JACOBIAN_ENTRY_H
18
-
19
- #include "LinearMath/btVector3.h"
20
- #include "BulletDynamics/Dynamics/btRigidBody.h"
21
-
22
-
23
- //notes:
24
- // Another memory optimization would be to store m_1MinvJt in the remaining 3 w components
25
- // which makes the btJacobianEntry memory layout 16 bytes
26
- // if you only are interested in angular part, just feed massInvA and massInvB zero
27
-
28
- /// Jacobian entry is an abstraction that allows to describe constraints
29
- /// it can be used in combination with a constraint solver
30
- /// Can be used to relate the effect of an impulse to the constraint error
31
- ATTRIBUTE_ALIGNED16(class) btJacobianEntry
32
- {
33
- public:
34
- btJacobianEntry() {};
35
- //constraint between two different rigidbodies
36
- btJacobianEntry(
37
- const btMatrix3x3& world2A,
38
- const btMatrix3x3& world2B,
39
- const btVector3& rel_pos1,const btVector3& rel_pos2,
40
- const btVector3& jointAxis,
41
- const btVector3& inertiaInvA,
42
- const btScalar massInvA,
43
- const btVector3& inertiaInvB,
44
- const btScalar massInvB)
45
- :m_linearJointAxis(jointAxis)
46
- {
47
- m_aJ = world2A*(rel_pos1.cross(m_linearJointAxis));
48
- m_bJ = world2B*(rel_pos2.cross(-m_linearJointAxis));
49
- m_0MinvJt = inertiaInvA * m_aJ;
50
- m_1MinvJt = inertiaInvB * m_bJ;
51
- m_Adiag = massInvA + m_0MinvJt.dot(m_aJ) + massInvB + m_1MinvJt.dot(m_bJ);
52
-
53
- btAssert(m_Adiag > btScalar(0.0));
54
- }
55
-
56
- //angular constraint between two different rigidbodies
57
- btJacobianEntry(const btVector3& jointAxis,
58
- const btMatrix3x3& world2A,
59
- const btMatrix3x3& world2B,
60
- const btVector3& inertiaInvA,
61
- const btVector3& inertiaInvB)
62
- :m_linearJointAxis(btVector3(btScalar(0.),btScalar(0.),btScalar(0.)))
63
- {
64
- m_aJ= world2A*jointAxis;
65
- m_bJ = world2B*-jointAxis;
66
- m_0MinvJt = inertiaInvA * m_aJ;
67
- m_1MinvJt = inertiaInvB * m_bJ;
68
- m_Adiag = m_0MinvJt.dot(m_aJ) + m_1MinvJt.dot(m_bJ);
69
-
70
- btAssert(m_Adiag > btScalar(0.0));
71
- }
72
-
73
- //angular constraint between two different rigidbodies
74
- btJacobianEntry(const btVector3& axisInA,
75
- const btVector3& axisInB,
76
- const btVector3& inertiaInvA,
77
- const btVector3& inertiaInvB)
78
- : m_linearJointAxis(btVector3(btScalar(0.),btScalar(0.),btScalar(0.)))
79
- , m_aJ(axisInA)
80
- , m_bJ(-axisInB)
81
- {
82
- m_0MinvJt = inertiaInvA * m_aJ;
83
- m_1MinvJt = inertiaInvB * m_bJ;
84
- m_Adiag = m_0MinvJt.dot(m_aJ) + m_1MinvJt.dot(m_bJ);
85
-
86
- btAssert(m_Adiag > btScalar(0.0));
87
- }
88
-
89
- //constraint on one rigidbody
90
- btJacobianEntry(
91
- const btMatrix3x3& world2A,
92
- const btVector3& rel_pos1,const btVector3& rel_pos2,
93
- const btVector3& jointAxis,
94
- const btVector3& inertiaInvA,
95
- const btScalar massInvA)
96
- :m_linearJointAxis(jointAxis)
97
- {
98
- m_aJ= world2A*(rel_pos1.cross(jointAxis));
99
- m_bJ = world2A*(rel_pos2.cross(-jointAxis));
100
- m_0MinvJt = inertiaInvA * m_aJ;
101
- m_1MinvJt = btVector3(btScalar(0.),btScalar(0.),btScalar(0.));
102
- m_Adiag = massInvA + m_0MinvJt.dot(m_aJ);
103
-
104
- btAssert(m_Adiag > btScalar(0.0));
105
- }
106
-
107
- btScalar getDiagonal() const { return m_Adiag; }
108
-
109
- // for two constraints on the same rigidbody (for example vehicle friction)
110
- btScalar getNonDiagonal(const btJacobianEntry& jacB, const btScalar massInvA) const
111
- {
112
- const btJacobianEntry& jacA = *this;
113
- btScalar lin = massInvA * jacA.m_linearJointAxis.dot(jacB.m_linearJointAxis);
114
- btScalar ang = jacA.m_0MinvJt.dot(jacB.m_aJ);
115
- return lin + ang;
116
- }
117
-
118
-
119
-
120
- // for two constraints on sharing two same rigidbodies (for example two contact points between two rigidbodies)
121
- btScalar getNonDiagonal(const btJacobianEntry& jacB,const btScalar massInvA,const btScalar massInvB) const
122
- {
123
- const btJacobianEntry& jacA = *this;
124
- btVector3 lin = jacA.m_linearJointAxis * jacB.m_linearJointAxis;
125
- btVector3 ang0 = jacA.m_0MinvJt * jacB.m_aJ;
126
- btVector3 ang1 = jacA.m_1MinvJt * jacB.m_bJ;
127
- btVector3 lin0 = massInvA * lin ;
128
- btVector3 lin1 = massInvB * lin;
129
- btVector3 sum = ang0+ang1+lin0+lin1;
130
- return sum[0]+sum[1]+sum[2];
131
- }
132
-
133
- btScalar getRelativeVelocity(const btVector3& linvelA,const btVector3& angvelA,const btVector3& linvelB,const btVector3& angvelB)
134
- {
135
- btVector3 linrel = linvelA - linvelB;
136
- btVector3 angvela = angvelA * m_aJ;
137
- btVector3 angvelb = angvelB * m_bJ;
138
- linrel *= m_linearJointAxis;
139
- angvela += angvelb;
140
- angvela += linrel;
141
- btScalar rel_vel2 = angvela[0]+angvela[1]+angvela[2];
142
- return rel_vel2 + SIMD_EPSILON;
143
- }
144
- //private:
145
-
146
- btVector3 m_linearJointAxis;
147
- btVector3 m_aJ;
148
- btVector3 m_bJ;
149
- btVector3 m_0MinvJt;
150
- btVector3 m_1MinvJt;
151
- //Optimization: can be stored in the w/last component of one of the vectors
152
- btScalar m_Adiag;
153
-
154
- };
155
-
156
- #endif //BT_JACOBIAN_ENTRY_H