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.
- 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,117 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
Copyright (C) 2009 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_HEAP_MANAGER_H__
|
18
|
-
#define BT_HEAP_MANAGER_H__
|
19
|
-
|
20
|
-
#ifdef __SPU__
|
21
|
-
#define HEAP_STACK_SIZE 32
|
22
|
-
#else
|
23
|
-
#define HEAP_STACK_SIZE 64
|
24
|
-
#endif
|
25
|
-
|
26
|
-
#define MIN_ALLOC_SIZE 16
|
27
|
-
|
28
|
-
|
29
|
-
class HeapManager
|
30
|
-
{
|
31
|
-
private:
|
32
|
-
ATTRIBUTE_ALIGNED16(unsigned char *mHeap);
|
33
|
-
ATTRIBUTE_ALIGNED16(unsigned int mHeapBytes);
|
34
|
-
ATTRIBUTE_ALIGNED16(unsigned char *mPoolStack[HEAP_STACK_SIZE]);
|
35
|
-
ATTRIBUTE_ALIGNED16(unsigned int mCurStack);
|
36
|
-
|
37
|
-
public:
|
38
|
-
enum {ALIGN16,ALIGN128};
|
39
|
-
|
40
|
-
HeapManager(unsigned char *buf,int bytes)
|
41
|
-
{
|
42
|
-
mHeap = buf;
|
43
|
-
mHeapBytes = bytes;
|
44
|
-
clear();
|
45
|
-
}
|
46
|
-
|
47
|
-
~HeapManager()
|
48
|
-
{
|
49
|
-
}
|
50
|
-
|
51
|
-
int getAllocated()
|
52
|
-
{
|
53
|
-
return (int)(mPoolStack[mCurStack]-mHeap);
|
54
|
-
}
|
55
|
-
|
56
|
-
int getRest()
|
57
|
-
{
|
58
|
-
return mHeapBytes-getAllocated();
|
59
|
-
}
|
60
|
-
|
61
|
-
void *allocate(size_t bytes,int alignment = ALIGN16)
|
62
|
-
{
|
63
|
-
if(bytes <= 0) bytes = MIN_ALLOC_SIZE;
|
64
|
-
btAssert(mCurStack < (HEAP_STACK_SIZE-1));
|
65
|
-
|
66
|
-
|
67
|
-
#if defined(_WIN64) || defined(__LP64__) || defined(__x86_64__)
|
68
|
-
unsigned long long p = (unsigned long long )mPoolStack[mCurStack];
|
69
|
-
if(alignment == ALIGN128) {
|
70
|
-
p = ((p+127) & 0xffffffffffffff80);
|
71
|
-
bytes = (bytes+127) & 0xffffffffffffff80;
|
72
|
-
}
|
73
|
-
else {
|
74
|
-
bytes = (bytes+15) & 0xfffffffffffffff0;
|
75
|
-
}
|
76
|
-
|
77
|
-
btAssert(bytes <=(mHeapBytes-(p-(unsigned long long )mHeap)) );
|
78
|
-
|
79
|
-
#else
|
80
|
-
unsigned long p = (unsigned long )mPoolStack[mCurStack];
|
81
|
-
if(alignment == ALIGN128) {
|
82
|
-
p = ((p+127) & 0xffffff80);
|
83
|
-
bytes = (bytes+127) & 0xffffff80;
|
84
|
-
}
|
85
|
-
else {
|
86
|
-
bytes = (bytes+15) & 0xfffffff0;
|
87
|
-
}
|
88
|
-
btAssert(bytes <=(mHeapBytes-(p-(unsigned long)mHeap)) );
|
89
|
-
#endif
|
90
|
-
unsigned char * bla = (unsigned char *)(p + bytes);
|
91
|
-
mPoolStack[++mCurStack] = bla;
|
92
|
-
return (void*)p;
|
93
|
-
}
|
94
|
-
|
95
|
-
void deallocate(void *p)
|
96
|
-
{
|
97
|
-
(void) p;
|
98
|
-
mCurStack--;
|
99
|
-
}
|
100
|
-
|
101
|
-
void clear()
|
102
|
-
{
|
103
|
-
mPoolStack[0] = mHeap;
|
104
|
-
mCurStack = 0;
|
105
|
-
}
|
106
|
-
|
107
|
-
// void printStack()
|
108
|
-
// {
|
109
|
-
// for(unsigned int i=0;i<=mCurStack;i++) {
|
110
|
-
// PRINTF("memStack %2d 0x%x\n",i,(uint32_t)mPoolStack[i]);
|
111
|
-
// }
|
112
|
-
// }
|
113
|
-
|
114
|
-
};
|
115
|
-
|
116
|
-
#endif //BT_HEAP_MANAGER_H__
|
117
|
-
|
@@ -1,99 +0,0 @@
|
|
1
|
-
#ifndef BT_TYPE_DEFINITIONS_H
|
2
|
-
#define BT_TYPE_DEFINITIONS_H
|
3
|
-
|
4
|
-
///This file provides some platform/compiler checks for common definitions
|
5
|
-
#include "LinearMath/btScalar.h"
|
6
|
-
#include "LinearMath/btMinMax.h"
|
7
|
-
|
8
|
-
#ifdef PFX_USE_FREE_VECTORMATH
|
9
|
-
#include "physics_effects/base_level/base/pfx_vectormath_include.win32.h"
|
10
|
-
typedef Vectormath::Aos::Vector3 vmVector3;
|
11
|
-
typedef Vectormath::Aos::Quat vmQuat;
|
12
|
-
typedef Vectormath::Aos::Matrix3 vmMatrix3;
|
13
|
-
typedef Vectormath::Aos::Transform3 vmTransform3;
|
14
|
-
typedef Vectormath::Aos::Point3 vmPoint3;
|
15
|
-
#else
|
16
|
-
#include "vectormath/vmInclude.h"
|
17
|
-
#endif//PFX_USE_FREE_VECTORMATH
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
#ifdef _WIN32
|
24
|
-
|
25
|
-
typedef union
|
26
|
-
{
|
27
|
-
unsigned int u;
|
28
|
-
void *p;
|
29
|
-
} addr64;
|
30
|
-
|
31
|
-
#define USE_WIN32_THREADING 1
|
32
|
-
|
33
|
-
#if defined(__MINGW32__) || defined(__CYGWIN__) || (defined (_MSC_VER) && _MSC_VER < 1300)
|
34
|
-
#else
|
35
|
-
#endif //__MINGW32__
|
36
|
-
|
37
|
-
typedef unsigned char uint8_t;
|
38
|
-
#ifndef __PHYSICS_COMMON_H__
|
39
|
-
#ifndef PFX_USE_FREE_VECTORMATH
|
40
|
-
#ifndef __BT_SKIP_UINT64_H
|
41
|
-
typedef unsigned long int uint64_t;
|
42
|
-
#endif //__BT_SKIP_UINT64_H
|
43
|
-
#endif //PFX_USE_FREE_VECTORMATH
|
44
|
-
typedef unsigned int uint32_t;
|
45
|
-
#endif //__PHYSICS_COMMON_H__
|
46
|
-
typedef unsigned short uint16_t;
|
47
|
-
|
48
|
-
#include <malloc.h>
|
49
|
-
#define memalign(alignment, size) malloc(size);
|
50
|
-
|
51
|
-
#include <string.h> //memcpy
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
#include <stdio.h>
|
56
|
-
#define spu_printf printf
|
57
|
-
|
58
|
-
#else
|
59
|
-
#include <stdint.h>
|
60
|
-
#include <stdlib.h>
|
61
|
-
#include <string.h> //for memcpy
|
62
|
-
|
63
|
-
#if defined (__CELLOS_LV2__)
|
64
|
-
// Playstation 3 Cell SDK
|
65
|
-
#include <spu_printf.h>
|
66
|
-
|
67
|
-
#else
|
68
|
-
// posix system
|
69
|
-
|
70
|
-
#define USE_PTHREADS (1)
|
71
|
-
|
72
|
-
#ifdef USE_LIBSPE2
|
73
|
-
#include <stdio.h>
|
74
|
-
#define spu_printf printf
|
75
|
-
#define DWORD unsigned int
|
76
|
-
typedef union
|
77
|
-
{
|
78
|
-
unsigned long long ull;
|
79
|
-
unsigned int ui[2];
|
80
|
-
void *p;
|
81
|
-
} addr64;
|
82
|
-
#endif // USE_LIBSPE2
|
83
|
-
|
84
|
-
#endif //__CELLOS_LV2__
|
85
|
-
|
86
|
-
#endif
|
87
|
-
|
88
|
-
#ifdef __SPU__
|
89
|
-
#include <stdio.h>
|
90
|
-
#define printf spu_printf
|
91
|
-
#endif
|
92
|
-
|
93
|
-
/* Included here because we need uint*_t typedefs */
|
94
|
-
#include "PpuAddressSpace.h"
|
95
|
-
|
96
|
-
#endif //BT_TYPE_DEFINITIONS_H
|
97
|
-
|
98
|
-
|
99
|
-
|
@@ -1,142 +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_POSIX_THREAD_SUPPORT_H
|
17
|
-
#define BT_POSIX_THREAD_SUPPORT_H
|
18
|
-
|
19
|
-
|
20
|
-
#include "LinearMath/btScalar.h"
|
21
|
-
#include "PlatformDefinitions.h"
|
22
|
-
|
23
|
-
#ifdef USE_PTHREADS //platform specifc defines are defined in PlatformDefinitions.h
|
24
|
-
|
25
|
-
#ifndef _XOPEN_SOURCE
|
26
|
-
#define _XOPEN_SOURCE 600 //for definition of pthread_barrier_t, see http://pages.cs.wisc.edu/~travitch/pthreads_primer.html
|
27
|
-
#endif //_XOPEN_SOURCE
|
28
|
-
#include <pthread.h>
|
29
|
-
#include <semaphore.h>
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
#include "LinearMath/btAlignedObjectArray.h"
|
34
|
-
|
35
|
-
#include "btThreadSupportInterface.h"
|
36
|
-
|
37
|
-
|
38
|
-
typedef void (*PosixThreadFunc)(void* userPtr,void* lsMemory);
|
39
|
-
typedef void* (*PosixlsMemorySetupFunc)();
|
40
|
-
|
41
|
-
// PosixThreadSupport helps to initialize/shutdown libspe2, start/stop SPU tasks and communication
|
42
|
-
class PosixThreadSupport : public btThreadSupportInterface
|
43
|
-
{
|
44
|
-
public:
|
45
|
-
typedef enum sStatus {
|
46
|
-
STATUS_BUSY,
|
47
|
-
STATUS_READY,
|
48
|
-
STATUS_FINISHED
|
49
|
-
} Status;
|
50
|
-
|
51
|
-
// placeholder, until libspe2 support is there
|
52
|
-
struct btSpuStatus
|
53
|
-
{
|
54
|
-
uint32_t m_taskId;
|
55
|
-
uint32_t m_commandId;
|
56
|
-
uint32_t m_status;
|
57
|
-
|
58
|
-
PosixThreadFunc m_userThreadFunc;
|
59
|
-
void* m_userPtr; //for taskDesc etc
|
60
|
-
void* m_lsMemory; //initialized using PosixLocalStoreMemorySetupFunc
|
61
|
-
|
62
|
-
pthread_t thread;
|
63
|
-
sem_t* startSemaphore;
|
64
|
-
|
65
|
-
unsigned long threadUsed;
|
66
|
-
};
|
67
|
-
private:
|
68
|
-
|
69
|
-
btAlignedObjectArray<btSpuStatus> m_activeSpuStatus;
|
70
|
-
public:
|
71
|
-
///Setup and initialize SPU/CELL/Libspe2
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
struct ThreadConstructionInfo
|
76
|
-
{
|
77
|
-
ThreadConstructionInfo(const char* uniqueName,
|
78
|
-
PosixThreadFunc userThreadFunc,
|
79
|
-
PosixlsMemorySetupFunc lsMemoryFunc,
|
80
|
-
int numThreads=1,
|
81
|
-
int threadStackSize=65535
|
82
|
-
)
|
83
|
-
:m_uniqueName(uniqueName),
|
84
|
-
m_userThreadFunc(userThreadFunc),
|
85
|
-
m_lsMemoryFunc(lsMemoryFunc),
|
86
|
-
m_numThreads(numThreads),
|
87
|
-
m_threadStackSize(threadStackSize)
|
88
|
-
{
|
89
|
-
|
90
|
-
}
|
91
|
-
|
92
|
-
const char* m_uniqueName;
|
93
|
-
PosixThreadFunc m_userThreadFunc;
|
94
|
-
PosixlsMemorySetupFunc m_lsMemoryFunc;
|
95
|
-
int m_numThreads;
|
96
|
-
int m_threadStackSize;
|
97
|
-
|
98
|
-
};
|
99
|
-
|
100
|
-
PosixThreadSupport(ThreadConstructionInfo& threadConstructionInfo);
|
101
|
-
|
102
|
-
///cleanup/shutdown Libspe2
|
103
|
-
virtual ~PosixThreadSupport();
|
104
|
-
|
105
|
-
void startThreads(ThreadConstructionInfo& threadInfo);
|
106
|
-
|
107
|
-
|
108
|
-
///send messages to SPUs
|
109
|
-
virtual void sendRequest(uint32_t uiCommand, ppu_address_t uiArgument0, uint32_t uiArgument1);
|
110
|
-
|
111
|
-
///check for messages from SPUs
|
112
|
-
virtual void waitForResponse(unsigned int *puiArgument0, unsigned int *puiArgument1);
|
113
|
-
|
114
|
-
///start the spus (can be called at the beginning of each frame, to make sure that the right SPU program is loaded)
|
115
|
-
virtual void startSPU();
|
116
|
-
|
117
|
-
///tell the task scheduler we are done with the SPU tasks
|
118
|
-
virtual void stopSPU();
|
119
|
-
|
120
|
-
virtual void setNumTasks(int numTasks) {}
|
121
|
-
|
122
|
-
virtual int getNumTasks() const
|
123
|
-
{
|
124
|
-
return m_activeSpuStatus.size();
|
125
|
-
}
|
126
|
-
|
127
|
-
virtual btBarrier* createBarrier();
|
128
|
-
|
129
|
-
virtual btCriticalSection* createCriticalSection();
|
130
|
-
|
131
|
-
virtual void* getThreadLocalMemory(int taskId)
|
132
|
-
{
|
133
|
-
return m_activeSpuStatus[taskId].m_lsMemory;
|
134
|
-
}
|
135
|
-
|
136
|
-
};
|
137
|
-
|
138
|
-
#endif // USE_PTHREADS
|
139
|
-
|
140
|
-
#endif // BT_POSIX_THREAD_SUPPORT_H
|
141
|
-
|
142
|
-
|
@@ -1,37 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
Bullet Continuous Collision Detection and Physics Library
|
3
|
-
Copyright (c) 2003-2010 Erwin Coumans http://bulletphysics.org
|
4
|
-
|
5
|
-
This software is provided 'as-is', without any express or implied warranty.
|
6
|
-
In no event will the authors be held liable for any damages arising from the use of this software.
|
7
|
-
Permission is granted to anyone to use this software for any purpose,
|
8
|
-
including commercial applications, and to alter it and redistribute it freely,
|
9
|
-
subject to the following restrictions:
|
10
|
-
|
11
|
-
1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
|
12
|
-
2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
|
13
|
-
3. This notice may not be removed or altered from any source distribution.
|
14
|
-
*/
|
15
|
-
|
16
|
-
|
17
|
-
#ifndef BT_PPU_ADDRESS_SPACE_H
|
18
|
-
#define BT_PPU_ADDRESS_SPACE_H
|
19
|
-
|
20
|
-
|
21
|
-
#ifdef _WIN32
|
22
|
-
//stop those casting warnings until we have a better solution for ppu_address_t / void* / uint64 conversions
|
23
|
-
#pragma warning (disable: 4311)
|
24
|
-
#pragma warning (disable: 4312)
|
25
|
-
#endif //_WIN32
|
26
|
-
|
27
|
-
|
28
|
-
#if defined(_WIN64)
|
29
|
-
typedef unsigned __int64 ppu_address_t;
|
30
|
-
#elif defined(__LP64__) || defined(__x86_64__)
|
31
|
-
typedef uint64_t ppu_address_t;
|
32
|
-
#else
|
33
|
-
typedef uint32_t ppu_address_t;
|
34
|
-
#endif //defined(_WIN64)
|
35
|
-
|
36
|
-
#endif //BT_PPU_ADDRESS_SPACE_H
|
37
|
-
|
@@ -1,96 +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
|
-
#include "LinearMath/btScalar.h"
|
17
|
-
#include "PlatformDefinitions.h"
|
18
|
-
|
19
|
-
|
20
|
-
#ifndef BT_SEQUENTIAL_THREAD_SUPPORT_H
|
21
|
-
#define BT_SEQUENTIAL_THREAD_SUPPORT_H
|
22
|
-
|
23
|
-
#include "LinearMath/btAlignedObjectArray.h"
|
24
|
-
|
25
|
-
#include "btThreadSupportInterface.h"
|
26
|
-
|
27
|
-
typedef void (*SequentialThreadFunc)(void* userPtr,void* lsMemory);
|
28
|
-
typedef void* (*SequentiallsMemorySetupFunc)();
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
///The SequentialThreadSupport is a portable non-parallel implementation of the btThreadSupportInterface
|
33
|
-
///This is useful for debugging and porting SPU Tasks to other platforms.
|
34
|
-
class SequentialThreadSupport : public btThreadSupportInterface
|
35
|
-
{
|
36
|
-
public:
|
37
|
-
struct btSpuStatus
|
38
|
-
{
|
39
|
-
uint32_t m_taskId;
|
40
|
-
uint32_t m_commandId;
|
41
|
-
uint32_t m_status;
|
42
|
-
|
43
|
-
SequentialThreadFunc m_userThreadFunc;
|
44
|
-
|
45
|
-
void* m_userPtr; //for taskDesc etc
|
46
|
-
void* m_lsMemory; //initialized using SequentiallsMemorySetupFunc
|
47
|
-
};
|
48
|
-
private:
|
49
|
-
btAlignedObjectArray<btSpuStatus> m_activeSpuStatus;
|
50
|
-
btAlignedObjectArray<void*> m_completeHandles;
|
51
|
-
public:
|
52
|
-
struct SequentialThreadConstructionInfo
|
53
|
-
{
|
54
|
-
SequentialThreadConstructionInfo (const char* uniqueName,
|
55
|
-
SequentialThreadFunc userThreadFunc,
|
56
|
-
SequentiallsMemorySetupFunc lsMemoryFunc
|
57
|
-
)
|
58
|
-
:m_uniqueName(uniqueName),
|
59
|
-
m_userThreadFunc(userThreadFunc),
|
60
|
-
m_lsMemoryFunc(lsMemoryFunc)
|
61
|
-
{
|
62
|
-
|
63
|
-
}
|
64
|
-
|
65
|
-
const char* m_uniqueName;
|
66
|
-
SequentialThreadFunc m_userThreadFunc;
|
67
|
-
SequentiallsMemorySetupFunc m_lsMemoryFunc;
|
68
|
-
};
|
69
|
-
|
70
|
-
SequentialThreadSupport(SequentialThreadConstructionInfo& threadConstructionInfo);
|
71
|
-
virtual ~SequentialThreadSupport();
|
72
|
-
void startThreads(SequentialThreadConstructionInfo& threadInfo);
|
73
|
-
///send messages to SPUs
|
74
|
-
virtual void sendRequest(uint32_t uiCommand, ppu_address_t uiArgument0, uint32_t uiArgument1);
|
75
|
-
///check for messages from SPUs
|
76
|
-
virtual void waitForResponse(unsigned int *puiArgument0, unsigned int *puiArgument1);
|
77
|
-
///start the spus (can be called at the beginning of each frame, to make sure that the right SPU program is loaded)
|
78
|
-
virtual void startSPU();
|
79
|
-
///tell the task scheduler we are done with the SPU tasks
|
80
|
-
virtual void stopSPU();
|
81
|
-
|
82
|
-
virtual void setNumTasks(int numTasks);
|
83
|
-
|
84
|
-
virtual int getNumTasks() const
|
85
|
-
{
|
86
|
-
return 1;
|
87
|
-
}
|
88
|
-
virtual btBarrier* createBarrier();
|
89
|
-
|
90
|
-
virtual btCriticalSection* createCriticalSection();
|
91
|
-
|
92
|
-
|
93
|
-
};
|
94
|
-
|
95
|
-
#endif //BT_SEQUENTIAL_THREAD_SUPPORT_H
|
96
|
-
|
@@ -1,40 +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_SPU_COLLISION_OBJECT_WRAPPER_H
|
17
|
-
#define BT_SPU_COLLISION_OBJECT_WRAPPER_H
|
18
|
-
|
19
|
-
#include "PlatformDefinitions.h"
|
20
|
-
#include "BulletCollision/CollisionDispatch/btCollisionObject.h"
|
21
|
-
|
22
|
-
ATTRIBUTE_ALIGNED16(class) SpuCollisionObjectWrapper
|
23
|
-
{
|
24
|
-
protected:
|
25
|
-
int m_shapeType;
|
26
|
-
float m_margin;
|
27
|
-
ppu_address_t m_collisionObjectPtr;
|
28
|
-
|
29
|
-
public:
|
30
|
-
SpuCollisionObjectWrapper ();
|
31
|
-
|
32
|
-
SpuCollisionObjectWrapper (const btCollisionObject* collisionObject);
|
33
|
-
|
34
|
-
int getShapeType () const;
|
35
|
-
float getCollisionMargin () const;
|
36
|
-
ppu_address_t getCollisionObjectPtr () const;
|
37
|
-
};
|
38
|
-
|
39
|
-
|
40
|
-
#endif //BT_SPU_COLLISION_OBJECT_WRAPPER_H
|
@@ -1,163 +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_SPU_COLLISION_TASK_PROCESS_H
|
17
|
-
#define BT_SPU_COLLISION_TASK_PROCESS_H
|
18
|
-
|
19
|
-
#include <assert.h>
|
20
|
-
|
21
|
-
#include "LinearMath/btScalar.h"
|
22
|
-
|
23
|
-
#include "PlatformDefinitions.h"
|
24
|
-
#include "LinearMath/btAlignedObjectArray.h"
|
25
|
-
#include "SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h" // for definitions processCollisionTask and createCollisionLocalStoreMemory
|
26
|
-
|
27
|
-
#include "btThreadSupportInterface.h"
|
28
|
-
|
29
|
-
|
30
|
-
//#include "SPUAssert.h"
|
31
|
-
#include <string.h>
|
32
|
-
|
33
|
-
|
34
|
-
#include "BulletCollision/CollisionDispatch/btCollisionObject.h"
|
35
|
-
#include "BulletCollision/CollisionShapes/btCollisionShape.h"
|
36
|
-
#include "BulletCollision/CollisionShapes/btConvexShape.h"
|
37
|
-
|
38
|
-
#include "LinearMath/btAlignedAllocator.h"
|
39
|
-
|
40
|
-
#include <stdio.h>
|
41
|
-
|
42
|
-
|
43
|
-
#define DEBUG_SpuCollisionTaskProcess 1
|
44
|
-
|
45
|
-
|
46
|
-
#define CMD_GATHER_AND_PROCESS_PAIRLIST 1
|
47
|
-
|
48
|
-
class btCollisionObject;
|
49
|
-
class btPersistentManifold;
|
50
|
-
class btDispatcher;
|
51
|
-
|
52
|
-
|
53
|
-
/////Task Description for SPU collision detection
|
54
|
-
//struct SpuGatherAndProcessPairsTaskDesc
|
55
|
-
//{
|
56
|
-
// uint64_t inPtr;//m_pairArrayPtr;
|
57
|
-
// //mutex variable
|
58
|
-
// uint32_t m_someMutexVariableInMainMemory;
|
59
|
-
//
|
60
|
-
// uint64_t m_dispatcher;
|
61
|
-
//
|
62
|
-
// uint32_t numOnLastPage;
|
63
|
-
//
|
64
|
-
// uint16_t numPages;
|
65
|
-
// uint16_t taskId;
|
66
|
-
//
|
67
|
-
// struct CollisionTask_LocalStoreMemory* m_lsMemory;
|
68
|
-
//}
|
69
|
-
//
|
70
|
-
//#if defined(__CELLOS_LV2__) || defined(USE_LIBSPE2)
|
71
|
-
//__attribute__ ((aligned (16)))
|
72
|
-
//#endif
|
73
|
-
//;
|
74
|
-
|
75
|
-
|
76
|
-
///MidphaseWorkUnitInput stores individual primitive versus mesh collision detection input, to be processed by the SPU.
|
77
|
-
ATTRIBUTE_ALIGNED16(struct) SpuGatherAndProcessWorkUnitInput
|
78
|
-
{
|
79
|
-
uint64_t m_pairArrayPtr;
|
80
|
-
int m_startIndex;
|
81
|
-
int m_endIndex;
|
82
|
-
};
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
/// SpuCollisionTaskProcess handles SPU processing of collision pairs.
|
88
|
-
/// Maintains a set of task buffers.
|
89
|
-
/// When the task is full, the task is issued for SPUs to process. Contact output goes into btPersistentManifold
|
90
|
-
/// associated with each task.
|
91
|
-
/// When PPU issues a task, it will look for completed task buffers
|
92
|
-
/// PPU will do postprocessing, dependent on workunit output (not likely)
|
93
|
-
class SpuCollisionTaskProcess
|
94
|
-
{
|
95
|
-
|
96
|
-
unsigned char *m_workUnitTaskBuffers;
|
97
|
-
|
98
|
-
|
99
|
-
// track task buffers that are being used, and total busy tasks
|
100
|
-
btAlignedObjectArray<bool> m_taskBusy;
|
101
|
-
btAlignedObjectArray<SpuGatherAndProcessPairsTaskDesc> m_spuGatherTaskDesc;
|
102
|
-
|
103
|
-
class btThreadSupportInterface* m_threadInterface;
|
104
|
-
|
105
|
-
unsigned int m_maxNumOutstandingTasks;
|
106
|
-
|
107
|
-
unsigned int m_numBusyTasks;
|
108
|
-
|
109
|
-
// the current task and the current entry to insert a new work unit
|
110
|
-
unsigned int m_currentTask;
|
111
|
-
unsigned int m_currentPage;
|
112
|
-
unsigned int m_currentPageEntry;
|
113
|
-
|
114
|
-
bool m_useEpa;
|
115
|
-
|
116
|
-
#ifdef DEBUG_SpuCollisionTaskProcess
|
117
|
-
bool m_initialized;
|
118
|
-
#endif
|
119
|
-
void issueTask2();
|
120
|
-
//void postProcess(unsigned int taskId, int outputSize);
|
121
|
-
|
122
|
-
public:
|
123
|
-
SpuCollisionTaskProcess(btThreadSupportInterface* threadInterface, unsigned int maxNumOutstandingTasks);
|
124
|
-
|
125
|
-
~SpuCollisionTaskProcess();
|
126
|
-
|
127
|
-
///call initialize in the beginning of the frame, before addCollisionPairToTask
|
128
|
-
void initialize2(bool useEpa = false);
|
129
|
-
|
130
|
-
///batch up additional work to a current task for SPU processing. When batch is full, it issues the task.
|
131
|
-
void addWorkToTask(void* pairArrayPtr,int startIndex,int endIndex);
|
132
|
-
|
133
|
-
///call flush to submit potential outstanding work to SPUs and wait for all involved SPUs to be finished
|
134
|
-
void flush2();
|
135
|
-
|
136
|
-
/// set the maximum number of SPU tasks allocated
|
137
|
-
void setNumTasks(int maxNumTasks);
|
138
|
-
|
139
|
-
int getNumTasks() const
|
140
|
-
{
|
141
|
-
return m_maxNumOutstandingTasks;
|
142
|
-
}
|
143
|
-
};
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
#define MIDPHASE_TASK_PTR(task) (&m_workUnitTaskBuffers[0] + MIDPHASE_WORKUNIT_TASK_SIZE*task)
|
148
|
-
#define MIDPHASE_ENTRY_PTR(task,page,entry) (MIDPHASE_TASK_PTR(task) + MIDPHASE_WORKUNIT_PAGE_SIZE*page + sizeof(SpuGatherAndProcessWorkUnitInput)*entry)
|
149
|
-
#define MIDPHASE_OUTPUT_PTR(task) (&m_contactOutputBuffers[0] + MIDPHASE_MAX_CONTACT_BUFFER_SIZE*task)
|
150
|
-
#define MIDPHASE_TREENODES_PTR(task) (&m_complexShapeBuffers[0] + MIDPHASE_COMPLEX_SHAPE_BUFFER_SIZE*task)
|
151
|
-
|
152
|
-
|
153
|
-
#define MIDPHASE_WORKUNIT_PAGE_SIZE (16)
|
154
|
-
//#define MIDPHASE_WORKUNIT_PAGE_SIZE (128)
|
155
|
-
|
156
|
-
#define MIDPHASE_NUM_WORKUNIT_PAGES 1
|
157
|
-
#define MIDPHASE_WORKUNIT_TASK_SIZE (MIDPHASE_WORKUNIT_PAGE_SIZE*MIDPHASE_NUM_WORKUNIT_PAGES)
|
158
|
-
#define MIDPHASE_NUM_WORKUNITS_PER_PAGE (MIDPHASE_WORKUNIT_PAGE_SIZE / sizeof(SpuGatherAndProcessWorkUnitInput))
|
159
|
-
#define MIDPHASE_NUM_WORKUNITS_PER_TASK (MIDPHASE_NUM_WORKUNITS_PER_PAGE*MIDPHASE_NUM_WORKUNIT_PAGES)
|
160
|
-
|
161
|
-
|
162
|
-
#endif // BT_SPU_COLLISION_TASK_PROCESS_H
|
163
|
-
|