ruby-bullet 0.1.0-x86-linux → 0.1.1-x86-linux
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/README.md +3 -0
- data/Rakefile +14 -2
- data/bindings/bullet/interface/BulletCollision/CollisionDispatch/btCollisionWorld.i +2 -2
- data/bindings/bullet/interface/bullet_wrap.cpp +17548 -6035
- data/bindings/bullet/interface/bullet_wrap.h +7 -7
- data/bindings/bullet/interface/bullet_wrap.o +0 -0
- data/lib/bullet.so +0 -0
- data/lib/ruby-bullet/version.rb +1 -1
- data/ruby-bullet.gemspec +0 -3
- metadata +169 -444
- data/deps/include/bullet/Bullet-C-Api.h +0 -176
- data/deps/include/bullet/BulletCollision/BroadphaseCollision/btAxisSweep3.h +0 -1051
- data/deps/include/bullet/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h +0 -82
- data/deps/include/bullet/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h +0 -270
- data/deps/include/bullet/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h +0 -80
- data/deps/include/bullet/BulletCollision/BroadphaseCollision/btDbvt.h +0 -1257
- data/deps/include/bullet/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h +0 -146
- data/deps/include/bullet/BulletCollision/BroadphaseCollision/btDispatcher.h +0 -110
- data/deps/include/bullet/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h +0 -151
- data/deps/include/bullet/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h +0 -469
- data/deps/include/bullet/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h +0 -40
- data/deps/include/bullet/BulletCollision/BroadphaseCollision/btQuantizedBvh.h +0 -579
- data/deps/include/bullet/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h +0 -171
- data/deps/include/bullet/BulletCollision/CollisionDispatch/SphereTriangleDetector.h +0 -51
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h +0 -36
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h +0 -66
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h +0 -66
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btBoxBoxDetector.h +0 -44
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btCollisionConfiguration.h +0 -48
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h +0 -45
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btCollisionDispatcher.h +0 -172
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btCollisionObject.h +0 -524
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btCollisionWorld.h +0 -509
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h +0 -86
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h +0 -95
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h +0 -116
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h +0 -109
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h +0 -84
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h +0 -137
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h +0 -54
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btGhostObject.h +0 -175
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btInternalEdgeUtility.h +0 -46
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btManifoldResult.h +0 -128
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btSimulationIslandManager.h +0 -81
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h +0 -75
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h +0 -66
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h +0 -69
- data/deps/include/bullet/BulletCollision/CollisionDispatch/btUnionFind.h +0 -129
- data/deps/include/bullet/BulletCollision/CollisionShapes/btBox2dShape.h +0 -369
- data/deps/include/bullet/BulletCollision/CollisionShapes/btBoxShape.h +0 -312
- data/deps/include/bullet/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h +0 -139
- data/deps/include/bullet/BulletCollision/CollisionShapes/btCapsuleShape.h +0 -173
- data/deps/include/bullet/BulletCollision/CollisionShapes/btCollisionMargin.h +0 -27
- data/deps/include/bullet/BulletCollision/CollisionShapes/btCollisionShape.h +0 -150
- data/deps/include/bullet/BulletCollision/CollisionShapes/btCompoundShape.h +0 -212
- data/deps/include/bullet/BulletCollision/CollisionShapes/btConcaveShape.h +0 -60
- data/deps/include/bullet/BulletCollision/CollisionShapes/btConeShape.h +0 -103
- data/deps/include/bullet/BulletCollision/CollisionShapes/btConvex2dShape.h +0 -80
- data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexHullShape.h +0 -122
- data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexInternalShape.h +0 -224
- data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexPointCloudShape.h +0 -105
- data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexPolyhedron.h +0 -62
- data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexShape.h +0 -84
- data/deps/include/bullet/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h +0 -75
- data/deps/include/bullet/BulletCollision/CollisionShapes/btCylinderShape.h +0 -200
- data/deps/include/bullet/BulletCollision/CollisionShapes/btEmptyShape.h +0 -70
- data/deps/include/bullet/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h +0 -161
- data/deps/include/bullet/BulletCollision/CollisionShapes/btMaterial.h +0 -35
- data/deps/include/bullet/BulletCollision/CollisionShapes/btMinkowskiSumShape.h +0 -60
- data/deps/include/bullet/BulletCollision/CollisionShapes/btMultiSphereShape.h +0 -99
- data/deps/include/bullet/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h +0 -120
- data/deps/include/bullet/BulletCollision/CollisionShapes/btOptimizedBvh.h +0 -65
- data/deps/include/bullet/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h +0 -112
- data/deps/include/bullet/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h +0 -93
- data/deps/include/bullet/BulletCollision/CollisionShapes/btShapeHull.h +0 -59
- data/deps/include/bullet/BulletCollision/CollisionShapes/btSphereShape.h +0 -73
- data/deps/include/bullet/BulletCollision/CollisionShapes/btStaticPlaneShape.h +0 -103
- data/deps/include/bullet/BulletCollision/CollisionShapes/btStridingMeshInterface.h +0 -162
- data/deps/include/bullet/BulletCollision/CollisionShapes/btTetrahedronShape.h +0 -74
- data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleBuffer.h +0 -69
- data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleCallback.h +0 -42
- data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h +0 -133
- data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h +0 -84
- data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleInfoMap.h +0 -241
- data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleMesh.h +0 -69
- data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleMeshShape.h +0 -89
- data/deps/include/bullet/BulletCollision/CollisionShapes/btTriangleShape.h +0 -182
- data/deps/include/bullet/BulletCollision/CollisionShapes/btUniformScalingShape.h +0 -87
- data/deps/include/bullet/BulletCollision/Gimpact/btBoxCollision.h +0 -647
- data/deps/include/bullet/BulletCollision/Gimpact/btClipPolygon.h +0 -182
- data/deps/include/bullet/BulletCollision/Gimpact/btContactProcessing.h +0 -145
- data/deps/include/bullet/BulletCollision/Gimpact/btGImpactBvh.h +0 -396
- data/deps/include/bullet/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.h +0 -306
- data/deps/include/bullet/BulletCollision/Gimpact/btGImpactMassUtil.h +0 -60
- data/deps/include/bullet/BulletCollision/Gimpact/btGImpactQuantizedBvh.h +0 -372
- data/deps/include/bullet/BulletCollision/Gimpact/btGImpactShape.h +0 -1171
- data/deps/include/bullet/BulletCollision/Gimpact/btGenericPoolAllocator.h +0 -163
- data/deps/include/bullet/BulletCollision/Gimpact/btGeometryOperations.h +0 -212
- data/deps/include/bullet/BulletCollision/Gimpact/btQuantization.h +0 -88
- data/deps/include/bullet/BulletCollision/Gimpact/btTriangleShapeEx.h +0 -180
- data/deps/include/bullet/BulletCollision/Gimpact/gim_array.h +0 -326
- data/deps/include/bullet/BulletCollision/Gimpact/gim_basic_geometry_operations.h +0 -543
- data/deps/include/bullet/BulletCollision/Gimpact/gim_bitset.h +0 -123
- data/deps/include/bullet/BulletCollision/Gimpact/gim_box_collision.h +0 -590
- data/deps/include/bullet/BulletCollision/Gimpact/gim_box_set.h +0 -674
- data/deps/include/bullet/BulletCollision/Gimpact/gim_clip_polygon.h +0 -210
- data/deps/include/bullet/BulletCollision/Gimpact/gim_contact.h +0 -164
- data/deps/include/bullet/BulletCollision/Gimpact/gim_geom_types.h +0 -97
- data/deps/include/bullet/BulletCollision/Gimpact/gim_geometry.h +0 -42
- data/deps/include/bullet/BulletCollision/Gimpact/gim_hash_table.h +0 -902
- data/deps/include/bullet/BulletCollision/Gimpact/gim_linear_math.h +0 -1573
- data/deps/include/bullet/BulletCollision/Gimpact/gim_math.h +0 -157
- data/deps/include/bullet/BulletCollision/Gimpact/gim_memory.h +0 -190
- data/deps/include/bullet/BulletCollision/Gimpact/gim_radixsort.h +0 -406
- data/deps/include/bullet/BulletCollision/Gimpact/gim_tri_collision.h +0 -379
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h +0 -59
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btConvexCast.h +0 -73
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h +0 -42
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h +0 -91
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h +0 -50
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h +0 -75
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h +0 -43
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h +0 -103
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h +0 -158
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h +0 -40
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h +0 -228
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btPointCollector.h +0 -64
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h +0 -46
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h +0 -72
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h +0 -63
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h +0 -50
- data/deps/include/bullet/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h +0 -179
- data/deps/include/bullet/BulletCollision/btBulletCollisionCommon.h +0 -69
- data/deps/include/bullet/BulletDynamics/Character/btCharacterControllerInterface.h +0 -46
- data/deps/include/bullet/BulletDynamics/Character/btKinematicCharacterController.h +0 -163
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h +0 -346
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btConstraintSolver.h +0 -52
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btContactConstraint.h +0 -71
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btContactSolverInfo.h +0 -87
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h +0 -614
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h +0 -99
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btHinge2Constraint.h +0 -58
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btHingeConstraint.h +0 -381
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btJacobianEntry.h +0 -156
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h +0 -161
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h +0 -130
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btSliderConstraint.h +0 -333
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h +0 -107
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btSolverBody.h +0 -191
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btSolverConstraint.h +0 -98
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btTypedConstraint.h +0 -452
- data/deps/include/bullet/BulletDynamics/ConstraintSolver/btUniversalConstraint.h +0 -62
- data/deps/include/bullet/BulletDynamics/Dynamics/btActionInterface.h +0 -46
- data/deps/include/bullet/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h +0 -203
- data/deps/include/bullet/BulletDynamics/Dynamics/btDynamicsWorld.h +0 -151
- data/deps/include/bullet/BulletDynamics/Dynamics/btRigidBody.h +0 -691
- data/deps/include/bullet/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h +0 -89
- data/deps/include/bullet/BulletDynamics/Vehicle/btRaycastVehicle.h +0 -236
- data/deps/include/bullet/BulletDynamics/Vehicle/btVehicleRaycaster.h +0 -35
- data/deps/include/bullet/BulletDynamics/Vehicle/btWheelInfo.h +0 -119
- data/deps/include/bullet/BulletDynamics/btBulletDynamicsCommon.h +0 -48
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverBuffer_DX11.h +0 -323
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverLinkData_DX11.h +0 -103
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverLinkData_DX11SIMDAware.h +0 -173
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverTriangleData_DX11.h +0 -96
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverVertexBuffer_DX11.h +0 -107
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolverVertexData_DX11.h +0 -63
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolver_DX11.h +0 -691
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/DX11/btSoftBodySolver_DX11SIMDAware.h +0 -81
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverBuffer_OpenCL.h +0 -209
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverLinkData_OpenCL.h +0 -99
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverLinkData_OpenCLSIMDAware.h +0 -169
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverOutputCLtoGL.h +0 -62
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverTriangleData_OpenCL.h +0 -84
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverVertexBuffer_OpenGL.h +0 -166
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverVertexData_OpenCL.h +0 -52
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.h +0 -527
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCLSIMDAware.h +0 -81
- data/deps/include/bullet/BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h +0 -748
- data/deps/include/bullet/BulletMultiThreaded/HeapManager.h +0 -117
- data/deps/include/bullet/BulletMultiThreaded/PlatformDefinitions.h +0 -99
- data/deps/include/bullet/BulletMultiThreaded/PosixThreadSupport.h +0 -142
- data/deps/include/bullet/BulletMultiThreaded/PpuAddressSpace.h +0 -37
- data/deps/include/bullet/BulletMultiThreaded/SequentialThreadSupport.h +0 -96
- data/deps/include/bullet/BulletMultiThreaded/SpuCollisionObjectWrapper.h +0 -40
- data/deps/include/bullet/BulletMultiThreaded/SpuCollisionTaskProcess.h +0 -163
- data/deps/include/bullet/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.h +0 -120
- data/deps/include/bullet/BulletMultiThreaded/SpuDoubleBuffer.h +0 -126
- data/deps/include/bullet/BulletMultiThreaded/SpuFakeDma.h +0 -135
- data/deps/include/bullet/BulletMultiThreaded/SpuGatheringCollisionDispatcher.h +0 -72
- data/deps/include/bullet/BulletMultiThreaded/SpuLibspe2Support.h +0 -180
- data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/Box.h +0 -167
- data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h +0 -128
- data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h +0 -106
- data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuConvexPenetrationDepthSolver.h +0 -51
- data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h +0 -140
- data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuLocalSupport.h +0 -19
- data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.h +0 -48
- data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuPreferredPenetrationDirections.h +0 -70
- data/deps/include/bullet/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.h +0 -65
- data/deps/include/bullet/BulletMultiThreaded/SpuSampleTask/SpuSampleTask.h +0 -54
- data/deps/include/bullet/BulletMultiThreaded/SpuSampleTaskProcess.h +0 -153
- data/deps/include/bullet/BulletMultiThreaded/SpuSync.h +0 -149
- data/deps/include/bullet/BulletMultiThreaded/TrbDynBody.h +0 -79
- data/deps/include/bullet/BulletMultiThreaded/TrbStateVec.h +0 -339
- data/deps/include/bullet/BulletMultiThreaded/Win32ThreadSupport.h +0 -138
- data/deps/include/bullet/BulletMultiThreaded/btGpu3DGridBroadphase.h +0 -138
- data/deps/include/bullet/BulletMultiThreaded/btGpu3DGridBroadphaseSharedCode.h +0 -430
- data/deps/include/bullet/BulletMultiThreaded/btGpu3DGridBroadphaseSharedDefs.h +0 -61
- data/deps/include/bullet/BulletMultiThreaded/btGpu3DGridBroadphaseSharedTypes.h +0 -67
- data/deps/include/bullet/BulletMultiThreaded/btGpuDefines.h +0 -211
- data/deps/include/bullet/BulletMultiThreaded/btGpuUtilsSharedCode.h +0 -55
- data/deps/include/bullet/BulletMultiThreaded/btGpuUtilsSharedDefs.h +0 -52
- data/deps/include/bullet/BulletMultiThreaded/btParallelConstraintSolver.h +0 -285
- data/deps/include/bullet/BulletMultiThreaded/btThreadSupportInterface.h +0 -85
- data/deps/include/bullet/BulletMultiThreaded/vectormath2bullet.h +0 -73
- data/deps/include/bullet/BulletSoftBody/btDefaultSoftBodySolver.h +0 -63
- data/deps/include/bullet/BulletSoftBody/btSoftBody.h +0 -987
- data/deps/include/bullet/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h +0 -153
- data/deps/include/bullet/BulletSoftBody/btSoftBodyData.h +0 -217
- data/deps/include/bullet/BulletSoftBody/btSoftBodyHelpers.h +0 -143
- data/deps/include/bullet/BulletSoftBody/btSoftBodyInternals.h +0 -930
- data/deps/include/bullet/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.h +0 -48
- data/deps/include/bullet/BulletSoftBody/btSoftBodySolverVertexBuffer.h +0 -165
- data/deps/include/bullet/BulletSoftBody/btSoftBodySolvers.h +0 -154
- data/deps/include/bullet/BulletSoftBody/btSoftRigidCollisionAlgorithm.h +0 -75
- data/deps/include/bullet/BulletSoftBody/btSoftRigidDynamicsWorld.h +0 -107
- data/deps/include/bullet/BulletSoftBody/btSoftSoftCollisionAlgorithm.h +0 -69
- data/deps/include/bullet/BulletSoftBody/btSparseSDF.h +0 -306
- data/deps/include/bullet/LinearMath/btAabbUtil2.h +0 -236
- data/deps/include/bullet/LinearMath/btAlignedAllocator.h +0 -107
- data/deps/include/bullet/LinearMath/btAlignedObjectArray.h +0 -494
- data/deps/include/bullet/LinearMath/btConvexHull.h +0 -241
- data/deps/include/bullet/LinearMath/btConvexHullComputer.h +0 -103
- data/deps/include/bullet/LinearMath/btDefaultMotionState.h +0 -40
- data/deps/include/bullet/LinearMath/btGeometryUtil.h +0 -42
- data/deps/include/bullet/LinearMath/btGrahamScan2dConvexHull.h +0 -110
- data/deps/include/bullet/LinearMath/btHashMap.h +0 -450
- data/deps/include/bullet/LinearMath/btIDebugDraw.h +0 -418
- data/deps/include/bullet/LinearMath/btList.h +0 -73
- data/deps/include/bullet/LinearMath/btMatrix3x3.h +0 -771
- data/deps/include/bullet/LinearMath/btMinMax.h +0 -71
- data/deps/include/bullet/LinearMath/btMotionState.h +0 -40
- data/deps/include/bullet/LinearMath/btPoolAllocator.h +0 -121
- data/deps/include/bullet/LinearMath/btQuadWord.h +0 -180
- data/deps/include/bullet/LinearMath/btQuaternion.h +0 -430
- data/deps/include/bullet/LinearMath/btQuickprof.h +0 -203
- data/deps/include/bullet/LinearMath/btRandom.h +0 -42
- data/deps/include/bullet/LinearMath/btScalar.h +0 -539
- data/deps/include/bullet/LinearMath/btSerializer.h +0 -639
- data/deps/include/bullet/LinearMath/btStackAlloc.h +0 -116
- data/deps/include/bullet/LinearMath/btTransform.h +0 -307
- data/deps/include/bullet/LinearMath/btTransformUtil.h +0 -228
- data/deps/include/bullet/LinearMath/btVector3.h +0 -766
- data/deps/include/bullet/MiniCL/MiniCLTask/MiniCLTask.h +0 -62
- data/deps/include/bullet/MiniCL/MiniCLTaskScheduler.h +0 -194
- data/deps/include/bullet/MiniCL/cl.h +0 -867
- data/deps/include/bullet/MiniCL/cl_MiniCL_Defs.h +0 -439
- data/deps/include/bullet/MiniCL/cl_gl.h +0 -113
- data/deps/include/bullet/MiniCL/cl_platform.h +0 -254
- data/deps/include/bullet/btBulletCollisionCommon.h +0 -69
- data/deps/include/bullet/btBulletDynamicsCommon.h +0 -48
- data/deps/include/bullet/vectormath/scalar/boolInVec.h +0 -225
- data/deps/include/bullet/vectormath/scalar/floatInVec.h +0 -343
- data/deps/include/bullet/vectormath/scalar/mat_aos.h +0 -1630
- data/deps/include/bullet/vectormath/scalar/quat_aos.h +0 -433
- data/deps/include/bullet/vectormath/scalar/vec_aos.h +0 -1426
- data/deps/include/bullet/vectormath/scalar/vectormath_aos.h +0 -1872
- data/deps/include/bullet/vectormath/sse/boolInVec.h +0 -247
- data/deps/include/bullet/vectormath/sse/floatInVec.h +0 -340
- data/deps/include/bullet/vectormath/sse/mat_aos.h +0 -2190
- data/deps/include/bullet/vectormath/sse/quat_aos.h +0 -579
- data/deps/include/bullet/vectormath/sse/vec_aos.h +0 -1455
- data/deps/include/bullet/vectormath/sse/vecidx_aos.h +0 -80
- data/deps/include/bullet/vectormath/sse/vectormath_aos.h +0 -2547
- data/deps/include/bullet/vectormath/vmInclude.h +0 -27
- data/deps/lib/libBulletCollision.a +0 -0
- data/deps/lib/libBulletDynamics.a +0 -0
- data/deps/lib/libBulletMultiThreaded.a +0 -0
- data/deps/lib/libBulletSoftBody.a +0 -0
- data/deps/lib/libBulletSoftBodySolvers_OpenCL_Mini.a +0 -0
- data/deps/lib/libLinearMath.a +0 -0
- data/deps/lib/libMiniCL.a +0 -0
@@ -1,211 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
Bullet Continuous Collision Detection and Physics Library, http://bulletphysics.org
|
3
|
-
Copyright (C) 2006, 2009 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
|
-
|
17
|
-
|
18
|
-
// definitions for "GPU on CPU" code
|
19
|
-
|
20
|
-
|
21
|
-
#ifndef BT_GPU_DEFINES_H
|
22
|
-
#define BT_GPU_DEFINES_H
|
23
|
-
|
24
|
-
typedef unsigned int uint;
|
25
|
-
|
26
|
-
struct int2
|
27
|
-
{
|
28
|
-
int x, y;
|
29
|
-
};
|
30
|
-
|
31
|
-
struct uint2
|
32
|
-
{
|
33
|
-
unsigned int x, y;
|
34
|
-
};
|
35
|
-
|
36
|
-
struct int3
|
37
|
-
{
|
38
|
-
int x, y, z;
|
39
|
-
};
|
40
|
-
|
41
|
-
struct uint3
|
42
|
-
{
|
43
|
-
unsigned int x, y, z;
|
44
|
-
};
|
45
|
-
|
46
|
-
struct float4
|
47
|
-
{
|
48
|
-
float x, y, z, w;
|
49
|
-
};
|
50
|
-
|
51
|
-
struct float3
|
52
|
-
{
|
53
|
-
float x, y, z;
|
54
|
-
};
|
55
|
-
|
56
|
-
|
57
|
-
#define BT_GPU___device__ inline
|
58
|
-
#define BT_GPU___devdata__
|
59
|
-
#define BT_GPU___constant__
|
60
|
-
#define BT_GPU_max(a, b) ((a) > (b) ? (a) : (b))
|
61
|
-
#define BT_GPU_min(a, b) ((a) < (b) ? (a) : (b))
|
62
|
-
#define BT_GPU_params s3DGridBroadphaseParams
|
63
|
-
#define BT_GPU___mul24(a, b) ((a)*(b))
|
64
|
-
#define BT_GPU___global__ inline
|
65
|
-
#define BT_GPU___shared__ static
|
66
|
-
#define BT_GPU___syncthreads()
|
67
|
-
#define CUDART_PI_F SIMD_PI
|
68
|
-
|
69
|
-
static inline uint2 bt3dGrid_make_uint2(unsigned int x, unsigned int y)
|
70
|
-
{
|
71
|
-
uint2 t; t.x = x; t.y = y; return t;
|
72
|
-
}
|
73
|
-
#define BT_GPU_make_uint2(x, y) bt3dGrid_make_uint2(x, y)
|
74
|
-
|
75
|
-
static inline int3 bt3dGrid_make_int3(int x, int y, int z)
|
76
|
-
{
|
77
|
-
int3 t; t.x = x; t.y = y; t.z = z; return t;
|
78
|
-
}
|
79
|
-
#define BT_GPU_make_int3(x, y, z) bt3dGrid_make_int3(x, y, z)
|
80
|
-
|
81
|
-
static inline float3 bt3dGrid_make_float3(float x, float y, float z)
|
82
|
-
{
|
83
|
-
float3 t; t.x = x; t.y = y; t.z = z; return t;
|
84
|
-
}
|
85
|
-
#define BT_GPU_make_float3(x, y, z) bt3dGrid_make_float3(x, y, z)
|
86
|
-
|
87
|
-
static inline float3 bt3dGrid_make_float34(float4 f)
|
88
|
-
{
|
89
|
-
float3 t; t.x = f.x; t.y = f.y; t.z = f.z; return t;
|
90
|
-
}
|
91
|
-
#define BT_GPU_make_float34(f) bt3dGrid_make_float34(f)
|
92
|
-
|
93
|
-
static inline float3 bt3dGrid_make_float31(float f)
|
94
|
-
{
|
95
|
-
float3 t; t.x = t.y = t.z = f; return t;
|
96
|
-
}
|
97
|
-
#define BT_GPU_make_float31(x) bt3dGrid_make_float31(x)
|
98
|
-
|
99
|
-
static inline float4 bt3dGrid_make_float42(float3 v, float f)
|
100
|
-
{
|
101
|
-
float4 t; t.x = v.x; t.y = v.y; t.z = v.z; t.w = f; return t;
|
102
|
-
}
|
103
|
-
#define BT_GPU_make_float42(a, b) bt3dGrid_make_float42(a, b)
|
104
|
-
|
105
|
-
static inline float4 bt3dGrid_make_float44(float a, float b, float c, float d)
|
106
|
-
{
|
107
|
-
float4 t; t.x = a; t.y = b; t.z = c; t.w = d; return t;
|
108
|
-
}
|
109
|
-
#define BT_GPU_make_float44(a, b, c, d) bt3dGrid_make_float44(a, b, c, d)
|
110
|
-
|
111
|
-
inline int3 operator+(int3 a, int3 b)
|
112
|
-
{
|
113
|
-
return bt3dGrid_make_int3(a.x + b.x, a.y + b.y, a.z + b.z);
|
114
|
-
}
|
115
|
-
|
116
|
-
inline float4 operator+(const float4& a, const float4& b)
|
117
|
-
{
|
118
|
-
float4 r; r.x = a.x+b.x; r.y = a.y+b.y; r.z = a.z+b.z; r.w = a.w+b.w; return r;
|
119
|
-
}
|
120
|
-
inline float4 operator*(const float4& a, float fact)
|
121
|
-
{
|
122
|
-
float4 r; r.x = a.x*fact; r.y = a.y*fact; r.z = a.z*fact; r.w = a.w*fact; return r;
|
123
|
-
}
|
124
|
-
inline float4 operator*(float fact, float4& a)
|
125
|
-
{
|
126
|
-
return (a * fact);
|
127
|
-
}
|
128
|
-
inline float4& operator*=(float4& a, float fact)
|
129
|
-
{
|
130
|
-
a = fact * a;
|
131
|
-
return a;
|
132
|
-
}
|
133
|
-
inline float4& operator+=(float4& a, const float4& b)
|
134
|
-
{
|
135
|
-
a = a + b;
|
136
|
-
return a;
|
137
|
-
}
|
138
|
-
|
139
|
-
inline float3 operator+(const float3& a, const float3& b)
|
140
|
-
{
|
141
|
-
float3 r; r.x = a.x+b.x; r.y = a.y+b.y; r.z = a.z+b.z; return r;
|
142
|
-
}
|
143
|
-
inline float3 operator-(const float3& a, const float3& b)
|
144
|
-
{
|
145
|
-
float3 r; r.x = a.x-b.x; r.y = a.y-b.y; r.z = a.z-b.z; return r;
|
146
|
-
}
|
147
|
-
static inline float bt3dGrid_dot(float3& a, float3& b)
|
148
|
-
{
|
149
|
-
return a.x*b.x+a.y*b.y+a.z*b.z;
|
150
|
-
}
|
151
|
-
#define BT_GPU_dot(a,b) bt3dGrid_dot(a,b)
|
152
|
-
|
153
|
-
static inline float bt3dGrid_dot4(float4& a, float4& b)
|
154
|
-
{
|
155
|
-
return a.x*b.x+a.y*b.y+a.z*b.z+a.w*b.w;
|
156
|
-
}
|
157
|
-
#define BT_GPU_dot4(a,b) bt3dGrid_dot4(a,b)
|
158
|
-
|
159
|
-
static inline float3 bt3dGrid_cross(const float3& a, const float3& b)
|
160
|
-
{
|
161
|
-
float3 r; r.x = a.y*b.z-a.z*b.y; r.y = -a.x*b.z+a.z*b.x; r.z = a.x*b.y-a.y*b.x; return r;
|
162
|
-
}
|
163
|
-
#define BT_GPU_cross(a,b) bt3dGrid_cross(a,b)
|
164
|
-
|
165
|
-
|
166
|
-
inline float3 operator*(const float3& a, float fact)
|
167
|
-
{
|
168
|
-
float3 r; r.x = a.x*fact; r.y = a.y*fact; r.z = a.z*fact; return r;
|
169
|
-
}
|
170
|
-
|
171
|
-
|
172
|
-
inline float3& operator+=(float3& a, const float3& b)
|
173
|
-
{
|
174
|
-
a = a + b;
|
175
|
-
return a;
|
176
|
-
}
|
177
|
-
inline float3& operator-=(float3& a, const float3& b)
|
178
|
-
{
|
179
|
-
a = a - b;
|
180
|
-
return a;
|
181
|
-
}
|
182
|
-
inline float3& operator*=(float3& a, float fact)
|
183
|
-
{
|
184
|
-
a = a * fact;
|
185
|
-
return a;
|
186
|
-
}
|
187
|
-
inline float3 operator-(const float3& v)
|
188
|
-
{
|
189
|
-
float3 r; r.x = -v.x; r.y = -v.y; r.z = -v.z; return r;
|
190
|
-
}
|
191
|
-
|
192
|
-
|
193
|
-
#define BT_GPU_FETCH(a, b) a[b]
|
194
|
-
#define BT_GPU_FETCH4(a, b) a[b]
|
195
|
-
#define BT_GPU_PREF(func) btGpu_##func
|
196
|
-
#define BT_GPU_SAFE_CALL(func) func
|
197
|
-
#define BT_GPU_Memset memset
|
198
|
-
#define BT_GPU_MemcpyToSymbol(a, b, c) memcpy(&a, b, c)
|
199
|
-
#define BT_GPU_BindTexture(a, b, c, d)
|
200
|
-
#define BT_GPU_UnbindTexture(a)
|
201
|
-
|
202
|
-
static uint2 s_blockIdx, s_blockDim, s_threadIdx;
|
203
|
-
#define BT_GPU_blockIdx s_blockIdx
|
204
|
-
#define BT_GPU_blockDim s_blockDim
|
205
|
-
#define BT_GPU_threadIdx s_threadIdx
|
206
|
-
#define BT_GPU_EXECKERNEL(numb, numt, kfunc, args) {s_blockDim.x=numt;for(int nb=0;nb<numb;nb++){s_blockIdx.x=nb;for(int nt=0;nt<numt;nt++){s_threadIdx.x=nt;kfunc args;}}}
|
207
|
-
|
208
|
-
#define BT_GPU_CHECK_ERROR(s)
|
209
|
-
|
210
|
-
|
211
|
-
#endif //BT_GPU_DEFINES_H
|
@@ -1,55 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
Bullet Continuous Collision Detection and Physics Library, http://bulletphysics.org
|
3
|
-
Copyright (C) 2006, 2009 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
|
-
//----------------------------------------------------------------------------------------
|
17
|
-
|
18
|
-
// Shared code for GPU-based utilities
|
19
|
-
|
20
|
-
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
21
|
-
// Keep this file free from Bullet headers
|
22
|
-
// will be compiled by both CPU and CUDA compilers
|
23
|
-
// file with definitions of BT_GPU_xxx should be included first
|
24
|
-
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
25
|
-
|
26
|
-
//----------------------------------------------------------------------------------------
|
27
|
-
|
28
|
-
#include "btGpuUtilsSharedDefs.h"
|
29
|
-
|
30
|
-
//----------------------------------------------------------------------------------------
|
31
|
-
|
32
|
-
extern "C"
|
33
|
-
{
|
34
|
-
|
35
|
-
//----------------------------------------------------------------------------------------
|
36
|
-
|
37
|
-
//Round a / b to nearest higher integer value
|
38
|
-
int BT_GPU_PREF(iDivUp)(int a, int b)
|
39
|
-
{
|
40
|
-
return (a % b != 0) ? (a / b + 1) : (a / b);
|
41
|
-
} // iDivUp()
|
42
|
-
|
43
|
-
//----------------------------------------------------------------------------------------
|
44
|
-
|
45
|
-
// compute grid and thread block size for a given number of elements
|
46
|
-
void BT_GPU_PREF(computeGridSize)(int n, int blockSize, int &numBlocks, int &numThreads)
|
47
|
-
{
|
48
|
-
numThreads = BT_GPU_min(blockSize, n);
|
49
|
-
numBlocks = BT_GPU_PREF(iDivUp)(n, numThreads);
|
50
|
-
} // computeGridSize()
|
51
|
-
|
52
|
-
//----------------------------------------------------------------------------------------
|
53
|
-
|
54
|
-
} // extern "C"
|
55
|
-
|
@@ -1,52 +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
|
-
// Shared definitions for GPU-based utilities
|
17
|
-
|
18
|
-
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
19
|
-
// Keep this file free from Bullet headers
|
20
|
-
// it is included into both CUDA and CPU code
|
21
|
-
// file with definitions of BT_GPU_xxx should be included first
|
22
|
-
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
23
|
-
|
24
|
-
|
25
|
-
#ifndef BTGPUUTILSDHAREDDEFS_H
|
26
|
-
#define BTGPUUTILSDHAREDDEFS_H
|
27
|
-
|
28
|
-
|
29
|
-
extern "C"
|
30
|
-
{
|
31
|
-
|
32
|
-
|
33
|
-
//Round a / b to nearest higher integer value
|
34
|
-
int BT_GPU_PREF(iDivUp)(int a, int b);
|
35
|
-
|
36
|
-
// compute grid and thread block size for a given number of elements
|
37
|
-
void BT_GPU_PREF(computeGridSize)(int n, int blockSize, int &numBlocks, int &numThreads);
|
38
|
-
|
39
|
-
void BT_GPU_PREF(allocateArray)(void** devPtr, unsigned int size);
|
40
|
-
void BT_GPU_PREF(freeArray)(void* devPtr);
|
41
|
-
void BT_GPU_PREF(copyArrayFromDevice)(void* host, const void* device, unsigned int size);
|
42
|
-
void BT_GPU_PREF(copyArrayToDevice)(void* device, const void* host, unsigned int size);
|
43
|
-
void BT_GPU_PREF(registerGLBufferObject(unsigned int vbo));
|
44
|
-
void* BT_GPU_PREF(mapGLBufferObject(unsigned int vbo));
|
45
|
-
void BT_GPU_PREF(unmapGLBufferObject(unsigned int vbo));
|
46
|
-
|
47
|
-
|
48
|
-
} // extern "C"
|
49
|
-
|
50
|
-
|
51
|
-
#endif // BTGPUUTILSDHAREDDEFS_H
|
52
|
-
|
@@ -1,285 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
Copyright (C) 2010 Sony Computer Entertainment Inc.
|
3
|
-
All rights reserved.
|
4
|
-
|
5
|
-
This software is provided 'as-is', without any express or implied warranty.
|
6
|
-
In no event will the authors be held liable for any damages arising from the use of this software.
|
7
|
-
Permission is granted to anyone to use this software for any purpose,
|
8
|
-
including commercial applications, and to alter it and redistribute it freely,
|
9
|
-
subject to the following restrictions:
|
10
|
-
|
11
|
-
1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
|
12
|
-
2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
|
13
|
-
3. This notice may not be removed or altered from any source distribution.
|
14
|
-
|
15
|
-
*/
|
16
|
-
|
17
|
-
#ifndef __BT_PARALLEL_CONSTRAINT_SOLVER_H
|
18
|
-
#define __BT_PARALLEL_CONSTRAINT_SOLVER_H
|
19
|
-
|
20
|
-
#include "BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h"
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
#include "LinearMath/btScalar.h"
|
26
|
-
#include "PlatformDefinitions.h"
|
27
|
-
|
28
|
-
|
29
|
-
#define PFX_MAX_SOLVER_PHASES 64
|
30
|
-
#define PFX_MAX_SOLVER_BATCHES 16
|
31
|
-
#define PFX_MAX_SOLVER_PAIRS 128
|
32
|
-
#define PFX_MIN_SOLVER_PAIRS 16
|
33
|
-
|
34
|
-
#ifdef __CELLOS_LV2__
|
35
|
-
ATTRIBUTE_ALIGNED128(struct) PfxParallelBatch {
|
36
|
-
#else
|
37
|
-
ATTRIBUTE_ALIGNED16(struct) PfxParallelBatch {
|
38
|
-
#endif
|
39
|
-
uint16_t pairIndices[PFX_MAX_SOLVER_PAIRS];
|
40
|
-
};
|
41
|
-
|
42
|
-
#ifdef __CELLOS_LV2__
|
43
|
-
ATTRIBUTE_ALIGNED128(struct) PfxParallelGroup {
|
44
|
-
#else
|
45
|
-
ATTRIBUTE_ALIGNED16(struct) PfxParallelGroup {
|
46
|
-
#endif
|
47
|
-
uint16_t numPhases;
|
48
|
-
uint16_t numBatches[PFX_MAX_SOLVER_PHASES];
|
49
|
-
uint16_t numPairs[PFX_MAX_SOLVER_PHASES*PFX_MAX_SOLVER_BATCHES];
|
50
|
-
};
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
ATTRIBUTE_ALIGNED16(struct) PfxSortData16 {
|
55
|
-
union {
|
56
|
-
uint8_t i8data[16];
|
57
|
-
uint16_t i16data[8];
|
58
|
-
uint32_t i32data[4];
|
59
|
-
#ifdef __SPU__
|
60
|
-
vec_uint4 vdata;
|
61
|
-
#endif
|
62
|
-
};
|
63
|
-
|
64
|
-
#ifdef __SPU__
|
65
|
-
void set8(int elem,uint8_t data) {vdata=(vec_uint4)spu_insert(data,(vec_uchar16)vdata,elem);}
|
66
|
-
void set16(int elem,uint16_t data) {vdata=(vec_uint4)spu_insert(data,(vec_ushort8)vdata,elem);}
|
67
|
-
void set32(int elem,uint32_t data) {vdata=(vec_uint4)spu_insert(data,(vec_uint4)vdata,elem);}
|
68
|
-
uint8_t get8(int elem) const {return spu_extract((vec_uchar16)vdata,elem);}
|
69
|
-
uint16_t get16(int elem) const {return spu_extract((vec_ushort8)vdata,elem);}
|
70
|
-
uint32_t get32(int elem) const {return spu_extract((vec_uint4)vdata,elem);}
|
71
|
-
#else
|
72
|
-
void set8(int elem,uint8_t data) {i8data[elem] = data;}
|
73
|
-
void set16(int elem,uint16_t data) {i16data[elem] = data;}
|
74
|
-
void set32(int elem,uint32_t data) {i32data[elem] = data;}
|
75
|
-
uint8_t get8(int elem) const {return i8data[elem];}
|
76
|
-
uint16_t get16(int elem) const {return i16data[elem];}
|
77
|
-
uint32_t get32(int elem) const {return i32data[elem];}
|
78
|
-
#endif
|
79
|
-
};
|
80
|
-
|
81
|
-
typedef PfxSortData16 PfxConstraintPair;
|
82
|
-
|
83
|
-
|
84
|
-
//J PfxBroadphasePair�Ƌ���
|
85
|
-
|
86
|
-
SIMD_FORCE_INLINE void pfxSetConstraintId(PfxConstraintPair &pair,uint32_t i) {pair.set32(2,i);}
|
87
|
-
SIMD_FORCE_INLINE void pfxSetNumConstraints(PfxConstraintPair &pair,uint8_t n) {pair.set8(7,n);}
|
88
|
-
|
89
|
-
SIMD_FORCE_INLINE uint32_t pfxGetConstraintId1(const PfxConstraintPair &pair) {return pair.get32(2);}
|
90
|
-
SIMD_FORCE_INLINE uint8_t pfxGetNumConstraints(const PfxConstraintPair &pair) {return pair.get8(7);}
|
91
|
-
|
92
|
-
typedef PfxSortData16 PfxBroadphasePair;
|
93
|
-
|
94
|
-
SIMD_FORCE_INLINE void pfxSetRigidBodyIdA(PfxBroadphasePair &pair,uint16_t i) {pair.set16(0,i);}
|
95
|
-
SIMD_FORCE_INLINE void pfxSetRigidBodyIdB(PfxBroadphasePair &pair,uint16_t i) {pair.set16(1,i);}
|
96
|
-
SIMD_FORCE_INLINE void pfxSetMotionMaskA(PfxBroadphasePair &pair,uint8_t i) {pair.set8(4,i);}
|
97
|
-
SIMD_FORCE_INLINE void pfxSetMotionMaskB(PfxBroadphasePair &pair,uint8_t i) {pair.set8(5,i);}
|
98
|
-
SIMD_FORCE_INLINE void pfxSetBroadphaseFlag(PfxBroadphasePair &pair,uint8_t f) {pair.set8(6,(pair.get8(6)&0xf0)|(f&0x0f));}
|
99
|
-
SIMD_FORCE_INLINE void pfxSetActive(PfxBroadphasePair &pair,bool b) {pair.set8(6,(pair.get8(6)&0x0f)|((b?1:0)<<4));}
|
100
|
-
SIMD_FORCE_INLINE void pfxSetContactId(PfxBroadphasePair &pair,uint32_t i) {pair.set32(2,i);}
|
101
|
-
|
102
|
-
SIMD_FORCE_INLINE uint16_t pfxGetRigidBodyIdA(const PfxBroadphasePair &pair) {return pair.get16(0);}
|
103
|
-
SIMD_FORCE_INLINE uint16_t pfxGetRigidBodyIdB(const PfxBroadphasePair &pair) {return pair.get16(1);}
|
104
|
-
SIMD_FORCE_INLINE uint8_t pfxGetMotionMaskA(const PfxBroadphasePair &pair) {return pair.get8(4);}
|
105
|
-
SIMD_FORCE_INLINE uint8_t pfxGetMotionMaskB(const PfxBroadphasePair &pair) {return pair.get8(5);}
|
106
|
-
SIMD_FORCE_INLINE uint8_t pfxGetBroadphaseFlag(const PfxBroadphasePair &pair) {return pair.get8(6)&0x0f;}
|
107
|
-
SIMD_FORCE_INLINE bool pfxGetActive(const PfxBroadphasePair &pair) {return (pair.get8(6)>>4)!=0;}
|
108
|
-
SIMD_FORCE_INLINE uint32_t pfxGetContactId1(const PfxBroadphasePair &pair) {return pair.get32(2);}
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
#if defined(__PPU__) || defined (__SPU__)
|
113
|
-
ATTRIBUTE_ALIGNED128(struct) PfxSolverBody {
|
114
|
-
#else
|
115
|
-
ATTRIBUTE_ALIGNED16(struct) PfxSolverBody {
|
116
|
-
#endif
|
117
|
-
vmVector3 mDeltaLinearVelocity;
|
118
|
-
vmVector3 mDeltaAngularVelocity;
|
119
|
-
vmMatrix3 mInertiaInv;
|
120
|
-
vmQuat mOrientation;
|
121
|
-
float mMassInv;
|
122
|
-
float friction;
|
123
|
-
float restitution;
|
124
|
-
float unused;
|
125
|
-
float unused2;
|
126
|
-
float unused3;
|
127
|
-
float unused4;
|
128
|
-
float unused5;
|
129
|
-
};
|
130
|
-
|
131
|
-
|
132
|
-
#ifdef __PPU__
|
133
|
-
#include "SpuDispatch/BulletPE2ConstraintSolverSpursSupport.h"
|
134
|
-
#endif
|
135
|
-
|
136
|
-
static SIMD_FORCE_INLINE vmVector3 btReadVector3(const double* p)
|
137
|
-
{
|
138
|
-
float tmp[3] = {float(p[0]),float(p[1]),float(p[2])};
|
139
|
-
vmVector3 v;
|
140
|
-
loadXYZ(v, tmp);
|
141
|
-
return v;
|
142
|
-
}
|
143
|
-
|
144
|
-
static SIMD_FORCE_INLINE vmQuat btReadQuat(const double* p)
|
145
|
-
{
|
146
|
-
float tmp[4] = {float(p[0]),float(p[1]),float(p[2]),float(p[4])};
|
147
|
-
vmQuat vq;
|
148
|
-
loadXYZW(vq, tmp);
|
149
|
-
return vq;
|
150
|
-
}
|
151
|
-
|
152
|
-
static SIMD_FORCE_INLINE void btStoreVector3(const vmVector3 &src, double* p)
|
153
|
-
{
|
154
|
-
float tmp[3];
|
155
|
-
vmVector3 v = src;
|
156
|
-
storeXYZ(v, tmp);
|
157
|
-
p[0] = tmp[0];
|
158
|
-
p[1] = tmp[1];
|
159
|
-
p[2] = tmp[2];
|
160
|
-
}
|
161
|
-
|
162
|
-
|
163
|
-
static SIMD_FORCE_INLINE vmVector3 btReadVector3(const float* p)
|
164
|
-
{
|
165
|
-
vmVector3 v;
|
166
|
-
loadXYZ(v, p);
|
167
|
-
return v;
|
168
|
-
}
|
169
|
-
|
170
|
-
static SIMD_FORCE_INLINE vmQuat btReadQuat(const float* p)
|
171
|
-
{
|
172
|
-
vmQuat vq;
|
173
|
-
loadXYZW(vq, p);
|
174
|
-
return vq;
|
175
|
-
}
|
176
|
-
|
177
|
-
static SIMD_FORCE_INLINE void btStoreVector3(const vmVector3 &src, float* p)
|
178
|
-
{
|
179
|
-
vmVector3 v = src;
|
180
|
-
storeXYZ(v, p);
|
181
|
-
}
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
class btPersistentManifold;
|
187
|
-
|
188
|
-
enum {
|
189
|
-
PFX_CONSTRAINT_SOLVER_CMD_SETUP_SOLVER_BODIES,
|
190
|
-
PFX_CONSTRAINT_SOLVER_CMD_SETUP_CONTACT_CONSTRAINTS,
|
191
|
-
PFX_CONSTRAINT_SOLVER_CMD_SETUP_JOINT_CONSTRAINTS,
|
192
|
-
PFX_CONSTRAINT_SOLVER_CMD_SOLVE_CONSTRAINTS,
|
193
|
-
PFX_CONSTRAINT_SOLVER_CMD_POST_SOLVER
|
194
|
-
};
|
195
|
-
|
196
|
-
|
197
|
-
struct PfxSetupContactConstraintsIO {
|
198
|
-
PfxConstraintPair *offsetContactPairs;
|
199
|
-
uint32_t numContactPairs1;
|
200
|
-
btPersistentManifold* offsetContactManifolds;
|
201
|
-
class TrbState *offsetRigStates;
|
202
|
-
struct PfxSolverBody *offsetSolverBodies;
|
203
|
-
uint32_t numRigidBodies;
|
204
|
-
float separateBias;
|
205
|
-
float timeStep;
|
206
|
-
class btCriticalSection* criticalSection;
|
207
|
-
};
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
struct PfxSolveConstraintsIO {
|
212
|
-
PfxParallelGroup *contactParallelGroup;
|
213
|
-
PfxParallelBatch *contactParallelBatches;
|
214
|
-
PfxConstraintPair *contactPairs;
|
215
|
-
uint32_t numContactPairs;
|
216
|
-
btPersistentManifold *offsetContactManifolds;
|
217
|
-
PfxParallelGroup *jointParallelGroup;
|
218
|
-
PfxParallelBatch *jointParallelBatches;
|
219
|
-
PfxConstraintPair *jointPairs;
|
220
|
-
uint32_t numJointPairs;
|
221
|
-
struct btSolverConstraint* offsetSolverConstraints;
|
222
|
-
TrbState *offsetRigStates1;
|
223
|
-
PfxSolverBody *offsetSolverBodies;
|
224
|
-
uint32_t numRigidBodies;
|
225
|
-
uint32_t iteration;
|
226
|
-
|
227
|
-
uint32_t taskId;
|
228
|
-
|
229
|
-
class btBarrier* barrier;
|
230
|
-
|
231
|
-
};
|
232
|
-
|
233
|
-
struct PfxPostSolverIO {
|
234
|
-
TrbState *states;
|
235
|
-
PfxSolverBody *solverBodies;
|
236
|
-
uint32_t numRigidBodies;
|
237
|
-
};
|
238
|
-
|
239
|
-
ATTRIBUTE_ALIGNED16(struct) btConstraintSolverIO {
|
240
|
-
uint8_t cmd;
|
241
|
-
union {
|
242
|
-
PfxSetupContactConstraintsIO setupContactConstraints;
|
243
|
-
PfxSolveConstraintsIO solveConstraints;
|
244
|
-
PfxPostSolverIO postSolver;
|
245
|
-
};
|
246
|
-
|
247
|
-
//SPU only
|
248
|
-
uint32_t barrierAddr2;
|
249
|
-
uint32_t criticalsectionAddr2;
|
250
|
-
uint32_t maxTasks1;
|
251
|
-
};
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
void SolverThreadFunc(void* userPtr,void* lsMemory);
|
257
|
-
void* SolverlsMemoryFunc();
|
258
|
-
///The btParallelConstraintSolver performs computations on constraint rows in parallel
|
259
|
-
///Using the cross-platform threading it supports Windows, Linux, Mac OSX and PlayStation 3 Cell SPUs
|
260
|
-
class btParallelConstraintSolver : public btSequentialImpulseConstraintSolver
|
261
|
-
{
|
262
|
-
|
263
|
-
protected:
|
264
|
-
struct btParallelSolverMemoryCache* m_memoryCache;
|
265
|
-
|
266
|
-
class btThreadSupportInterface* m_solverThreadSupport;
|
267
|
-
|
268
|
-
struct btConstraintSolverIO* m_solverIO;
|
269
|
-
class btBarrier* m_barrier;
|
270
|
-
class btCriticalSection* m_criticalSection;
|
271
|
-
|
272
|
-
|
273
|
-
public:
|
274
|
-
|
275
|
-
btParallelConstraintSolver(class btThreadSupportInterface* solverThreadSupport);
|
276
|
-
|
277
|
-
virtual ~btParallelConstraintSolver();
|
278
|
-
|
279
|
-
virtual btScalar solveGroup(btCollisionObject** bodies,int numBodies,btPersistentManifold** manifold,int numManifolds,btTypedConstraint** constraints,int numConstraints,const btContactSolverInfo& info, btIDebugDraw* debugDrawer, btStackAlloc* stackAlloc,btDispatcher* dispatcher);
|
280
|
-
|
281
|
-
};
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
#endif //__BT_PARALLEL_CONSTRAINT_SOLVER_H
|
@@ -1,85 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
Bullet Continuous Collision Detection and Physics Library
|
3
|
-
Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
|
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_THREAD_SUPPORT_INTERFACE_H
|
17
|
-
#define BT_THREAD_SUPPORT_INTERFACE_H
|
18
|
-
|
19
|
-
|
20
|
-
#include <LinearMath/btScalar.h> //for ATTRIBUTE_ALIGNED16
|
21
|
-
#include "PlatformDefinitions.h"
|
22
|
-
#include "PpuAddressSpace.h"
|
23
|
-
|
24
|
-
class btBarrier {
|
25
|
-
public:
|
26
|
-
btBarrier() {}
|
27
|
-
virtual ~btBarrier() {}
|
28
|
-
|
29
|
-
virtual void sync() = 0;
|
30
|
-
virtual void setMaxCount(int n) = 0;
|
31
|
-
virtual int getMaxCount() = 0;
|
32
|
-
};
|
33
|
-
|
34
|
-
class btCriticalSection {
|
35
|
-
public:
|
36
|
-
btCriticalSection() {}
|
37
|
-
virtual ~btCriticalSection() {}
|
38
|
-
|
39
|
-
ATTRIBUTE_ALIGNED16(unsigned int mCommonBuff[32]);
|
40
|
-
|
41
|
-
virtual unsigned int getSharedParam(int i) = 0;
|
42
|
-
virtual void setSharedParam(int i,unsigned int p) = 0;
|
43
|
-
|
44
|
-
virtual void lock() = 0;
|
45
|
-
virtual void unlock() = 0;
|
46
|
-
};
|
47
|
-
|
48
|
-
|
49
|
-
class btThreadSupportInterface
|
50
|
-
{
|
51
|
-
public:
|
52
|
-
|
53
|
-
virtual ~btThreadSupportInterface();
|
54
|
-
|
55
|
-
///send messages to SPUs
|
56
|
-
virtual void sendRequest(uint32_t uiCommand, ppu_address_t uiArgument0, uint32_t uiArgument1) =0;
|
57
|
-
|
58
|
-
///check for messages from SPUs
|
59
|
-
virtual void waitForResponse(unsigned int *puiArgument0, unsigned int *puiArgument1) =0;
|
60
|
-
|
61
|
-
|
62
|
-
///non-blocking test if a task is completed. First implement all versions, and then enable this API
|
63
|
-
///virtual bool isTaskCompleted(unsigned int *puiArgument0, unsigned int *puiArgument1, int timeOutInMilliseconds)=0;
|
64
|
-
|
65
|
-
///start the spus (can be called at the beginning of each frame, to make sure that the right SPU program is loaded)
|
66
|
-
virtual void startSPU() =0;
|
67
|
-
|
68
|
-
///tell the task scheduler we are done with the SPU tasks
|
69
|
-
virtual void stopSPU()=0;
|
70
|
-
|
71
|
-
///tell the task scheduler to use no more than numTasks tasks
|
72
|
-
virtual void setNumTasks(int numTasks)=0;
|
73
|
-
|
74
|
-
virtual int getNumTasks() const = 0;
|
75
|
-
|
76
|
-
virtual btBarrier* createBarrier() = 0;
|
77
|
-
|
78
|
-
virtual btCriticalSection* createCriticalSection() = 0;
|
79
|
-
|
80
|
-
virtual void* getThreadLocalMemory(int taskId) { return 0; }
|
81
|
-
|
82
|
-
};
|
83
|
-
|
84
|
-
#endif //BT_THREAD_SUPPORT_INTERFACE_H
|
85
|
-
|