TODO:RoboVM doesn't support NewWeakGlobalRef.It causes memory leak.
--- /dev/null
+#IncludeRegexLine: ^[ ]*#[ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btAxisSweep3.cpp
+btAxisSweep3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btAxisSweep3.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btAxisSweep3.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+btOverlappingPairCache.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+btBroadphaseInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btOverlappingPairCallback.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+btDbvtBroadphase.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp
+btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp
+btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+btDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDispatcher.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvt.cpp
+btDbvt.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvt.h
+stdio.h
+-
+stdlib.h
+-
+LinearMath/btQuickProf.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btQuickProf.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvt.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btTransform.h
+LinearMath/btAabbUtil2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btAabbUtil2.h
+emmintrin.h
+-
+memory.h
+-
+string.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp
+btDbvtBroadphase.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
+BulletCollision/BroadphaseCollision/btDbvt.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/BulletCollision/BroadphaseCollision/btDbvt.h
+BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+LinearMath/btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btQuickprof.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDispatcher.cpp
+btDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDispatcher.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDispatcher.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp
+btMultiSapBroadphase.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h
+btSimpleBroadphase.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+LinearMath/btAabbUtil2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btAabbUtil2.h
+btQuantizedBvh.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h
+btBroadphaseInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+btOverlappingPairCache.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp
+btOverlappingPairCache.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+btDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDispatcher.h
+btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+LinearMath/btAabbUtil2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btAabbUtil2.h
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+btBroadphaseInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btOverlappingPairCallback.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp
+btQuantizedBvh.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+LinearMath/btAabbUtil2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btAabbUtil2.h
+LinearMath/btIDebugDraw.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btIDebugDraw.h
+LinearMath/btSerializer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btSerializer.h
+new
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+stdio.h
+-
+stdlib.h
+-
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp
+btSimpleBroadphase.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btTransform.h
+LinearMath/btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btMatrix3x3.h
+LinearMath/btAabbUtil2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/LinearMath/btAabbUtil2.h
+new
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+btOverlappingPairCache.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btScalar.h
+SphereTriangleDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/SphereTriangleDetector.h
+BulletCollision/CollisionShapes/btTriangleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btTriangleShape.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btSphereShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/SphereTriangleDetector.h
+BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp
+btActivatingCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp
+btBox2dBox2dCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/CollisionShapes/btBoxShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btBoxShape.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+BulletCollision/CollisionShapes/btBox2dShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btBox2dShape.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp
+btBoxBoxCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/CollisionShapes/btBoxShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btBoxShape.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+btBoxBoxDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h
+btActivatingCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp
+btBoxBoxDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+BulletCollision/CollisionShapes/btBoxShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btBoxShape.h
+float.h
+-
+string.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp
+btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+BulletCollision/CollisionShapes/btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btCollisionShape.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+LinearMath/btPoolAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btPoolAllocator.h
+BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/CollisionDispatch/btManifoldResult.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.cpp
+btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.h
+LinearMath/btSerializer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btSerializer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+LinearMath/btMotionState.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btMotionState.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp
+btCollisionWorld.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionShapes/btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btCollisionShape.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btConvexShape.h
+BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btSphereShape.h
+BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+BulletCollision/CollisionShapes/btCompoundShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btCompoundShape.h
+BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+BulletCollision/BroadphaseCollision/btDbvt.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btDbvt.h
+LinearMath/btAabbUtil2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btAabbUtil2.h
+LinearMath/btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btQuickprof.h
+LinearMath/btStackAlloc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btStackAlloc.h
+LinearMath/btSerializer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btSerializer.h
+BulletCollision/CollisionShapes/btConvexPolyhedron.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btConvexPolyhedron.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+BulletCollision/CollisionShapes/btBoxShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btBoxShape.h
+BulletCollision/CollisionShapes/btCapsuleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btCapsuleShape.h
+BulletCollision/CollisionShapes/btCompoundShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btCompoundShape.h
+BulletCollision/CollisionShapes/btConeShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btConeShape.h
+BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
+BulletCollision/CollisionShapes/btCylinderShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btCylinderShape.h
+BulletCollision/CollisionShapes/btMultiSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btMultiSphereShape.h
+BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btSphereShape.h
+BulletCollision/CollisionShapes/btTriangleCallback.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btTriangleCallback.h
+BulletCollision/CollisionShapes/btTriangleMeshShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+BulletCollision/CollisionShapes/btStaticPlaneShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btVector3.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.h
+btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp
+BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionShapes/btCompoundShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btCompoundShape.h
+BulletCollision/BroadphaseCollision/btDbvt.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btDbvt.h
+LinearMath/btIDebugDraw.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btIDebugDraw.h
+LinearMath/btAabbUtil2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btAabbUtil2.h
+btManifoldResult.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp
+btConvex2dConvex2dAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h
+BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btConvexShape.h
+BulletCollision/CollisionShapes/btCapsuleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btCapsuleShape.h
+BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/CollisionShapes/btBoxShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btBoxShape.h
+BulletCollision/CollisionDispatch/btManifoldResult.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btSphereShape.h
+BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h
+BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btTransformUtil.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp
+btConvexConcaveCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionShapes/btMultiSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btMultiSphereShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionShapes/btConcaveShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btConcaveShape.h
+BulletCollision/CollisionDispatch/btManifoldResult.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+BulletCollision/CollisionShapes/btTriangleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btTriangleShape.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btSphereShape.h
+LinearMath/btIDebugDraw.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btIDebugDraw.h
+BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h
+btActivatingCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+BulletCollision/CollisionShapes/btTriangleCallback.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btTriangleCallback.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp
+btConvexConvexAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
+BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btConvexShape.h
+BulletCollision/CollisionShapes/btCapsuleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btCapsuleShape.h
+BulletCollision/CollisionShapes/btTriangleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btTriangleShape.h
+BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/CollisionShapes/btBoxShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btBoxShape.h
+BulletCollision/CollisionDispatch/btManifoldResult.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btSphereShape.h
+BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
+btActivatingCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btTransformUtil.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp
+btConvexPlaneCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btConvexShape.h
+BulletCollision/CollisionShapes/btStaticPlaneShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btVector3.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp
+btDefaultCollisionConfiguration.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
+BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
+BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
+BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+LinearMath/btStackAlloc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btStackAlloc.h
+LinearMath/btPoolAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btPoolAllocator.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
+btCollisionConfiguration.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp
+btEmptyCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btGhostObject.cpp
+btGhostObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btGhostObject.h
+btCollisionWorld.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btConvexShape.h
+LinearMath/btAabbUtil2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btAabbUtil2.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btGhostObject.h
+btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btAlignedAllocator.h
+BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+btCollisionWorld.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp
+btInternalEdgeUtility.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.h
+BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
+BulletCollision/CollisionShapes/btTriangleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btTriangleShape.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+LinearMath/btIDebugDraw.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btIDebugDraw.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.h
+LinearMath/btHashMap.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btHashMap.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btVector3.h
+BulletCollision/CollisionShapes/btTriangleInfoMap.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btManifoldResult.cpp
+btManifoldResult.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btScalar.h
+btSimulationIslandManager.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSimulationIslandManager.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionDispatch/btCollisionWorld.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionWorld.h
+LinearMath/btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btQuickprof.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSimulationIslandManager.h
+BulletCollision/CollisionDispatch/btUnionFind.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btUnionFind.h
+btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
+btSphereBoxCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btSphereShape.h
+BulletCollision/CollisionShapes/btBoxShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btBoxShape.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h
+btActivatingCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btVector3.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp
+btSphereSphereCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btSphereShape.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+btActivatingCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
+btSphereTriangleCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btSphereShape.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+SphereTriangleDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/SphereTriangleDetector.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
+btActivatingCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btUnionFind.cpp
+btUnionFind.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btUnionFind.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btUnionFind.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBox2dShape.cpp
+btBox2dShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBox2dShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBox2dShape.h
+BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btCollisionMargin.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btMinMax.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBoxShape.cpp
+btBoxShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBoxShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBoxShape.h
+btPolyhedralConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+btCollisionMargin.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btMinMax.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp
+BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+BulletCollision/CollisionShapes/btOptimizedBvh.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btOptimizedBvh.h
+LinearMath/btSerializer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btSerializer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCapsuleShape.cpp
+btCapsuleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCapsuleShape.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btQuaternion.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btQuaternion.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCapsuleShape.h
+btConvexInternalShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.cpp
+BulletCollision/CollisionShapes/btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btSerializer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btSerializer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCompoundShape.cpp
+btCompoundShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCompoundShape.h
+btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+BulletCollision/BroadphaseCollision/btDbvt.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btDbvt.h
+LinearMath/btSerializer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btSerializer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCompoundShape.h
+btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btCollisionMargin.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.cpp
+btConcaveShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btTriangleCallback.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConeShape.cpp
+btConeShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConeShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConeShape.h
+btConvexInternalShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvex2dShape.cpp
+btConvex2dShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvex2dShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvex2dShape.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexHullShape.cpp
+btConvexHullShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexHullShape.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btQuaternion.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btQuaternion.h
+LinearMath/btSerializer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btSerializer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexHullShape.h
+btPolyhedralConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.cpp
+btConvexInternalShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+LinearMath/btAabbUtil2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btAabbUtil2.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp
+btConvexPointCloudShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPointCloudShape.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btQuaternion.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btQuaternion.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPointCloudShape.h
+btPolyhedralConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp
+btConvexPolyhedron.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
+LinearMath/btHashMap.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btHashMap.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.cpp
+btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+btTriangleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleShape.h
+btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btSphereShape.h
+btCylinderShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCylinderShape.h
+btCapsuleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCapsuleShape.h
+btConvexHullShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexHullShape.h
+btConvexPointCloudShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPointCloudShape.h
+spu_intrinsics.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btCollisionMargin.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btAlignedAllocator.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp
+btConvexTriangleMeshShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btQuaternion.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btQuaternion.h
+BulletCollision/CollisionShapes/btStridingMeshInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
+btPolyhedralConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCylinderShape.cpp
+btCylinderShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCylinderShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCylinderShape.h
+btBoxShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBoxShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btEmptyShape.cpp
+btEmptyShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btEmptyShape.h
+btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btEmptyShape.h
+btConcaveShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btCollisionMargin.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp
+btHeightfieldTerrainShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btTransformUtil.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h
+btConcaveShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp
+btMinkowskiSumShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
+btConvexInternalShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp
+btMultiSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btQuaternion.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btQuaternion.h
+LinearMath/btSerializer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btSerializer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+btConvexInternalShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+LinearMath/btAabbUtil2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btAabbUtil2.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp
+BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h
+BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp
+btOptimizedBvh.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+btStridingMeshInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+LinearMath/btAabbUtil2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btAabbUtil2.h
+LinearMath/btIDebugDraw.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btIDebugDraw.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
+BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+btConvexPolyhedron.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
+LinearMath/btConvexHullComputer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btConvexHullComputer.h
+new
+-
+LinearMath/btGeometryUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btGeometryUtil.h
+LinearMath/btGrahamScan2dConvexHull.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btGrahamScan2dConvexHull.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+LinearMath/btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btConvexInternalShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp
+btScaledBvhTriangleMeshShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
+BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btShapeHull.cpp
+btShapeHull.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btShapeHull.h
+LinearMath/btConvexHull.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btConvexHull.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btShapeHull.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btConvexShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btSphereShape.cpp
+btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btSphereShape.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btQuaternion.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btQuaternion.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btSphereShape.h
+btConvexInternalShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStaticPlaneShape.cpp
+btStaticPlaneShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btTransformUtil.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+btConcaveShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp
+btStridingMeshInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+LinearMath/btSerializer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btSerializer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+btTriangleCallback.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+btConcaveShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTetrahedronShape.cpp
+btTetrahedronShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+LinearMath/btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+btPolyhedralConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleBuffer.cpp
+btTriangleBuffer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleBuffer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleBuffer.h
+btTriangleCallback.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.cpp
+btTriangleCallback.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp
+btTriangleIndexVertexArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+btStridingMeshInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btScalar.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp
+btTriangleIndexVertexMaterialArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h
+btTriangleIndexVertexArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMesh.cpp
+btTriangleMesh.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMesh.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMesh.h
+btTriangleIndexVertexArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp
+btTriangleMeshShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btQuaternion.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btQuaternion.h
+btStridingMeshInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+LinearMath/btAabbUtil2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/LinearMath/btAabbUtil2.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btCollisionMargin.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+btConcaveShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+btStridingMeshInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleShape.h
+btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+btBoxShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBoxShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btUniformScalingShape.cpp
+btUniformScalingShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btUniformScalingShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btUniformScalingShape.h
+btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btBoxCollision.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btTransform.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btClipPolygon.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btTransform.h
+LinearMath/btGeometryUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btGeometryUtil.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btContactProcessing.cpp
+btContactProcessing.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btContactProcessing.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btContactProcessing.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btTransform.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btAlignedObjectArray.h
+btTriangleShapeEx.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactBvh.cpp
+btGImpactBvh.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactBvh.h
+LinearMath/btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btQuickprof.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactBvh.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btAlignedObjectArray.h
+btBoxCollision.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btBoxCollision.h
+btTriangleShapeEx.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp
+BulletCollision/CollisionDispatch/btManifoldResult.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionDispatch/btManifoldResult.h
+LinearMath/btIDebugDraw.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btIDebugDraw.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionShapes/btBoxShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionShapes/btBoxShape.h
+btGImpactCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.h
+btContactProcessing.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btContactProcessing.h
+LinearMath/btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btQuickprof.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btAlignedObjectArray.h
+btGImpactShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactShape.h
+BulletCollision/CollisionShapes/btStaticPlaneShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+BulletCollision/CollisionShapes/btCompoundShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionShapes/btCompoundShape.h
+BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
+LinearMath/btIDebugDraw.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btIDebugDraw.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactMassUtil.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btTransform.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp
+btGImpactQuantizedBvh.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactQuantizedBvh.h
+LinearMath/btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btQuickprof.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactQuantizedBvh.h
+btGImpactBvh.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactBvh.h
+btQuantization.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btQuantization.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactShape.cpp
+btGImpactShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactShape.h
+btGImpactMassUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactMassUtil.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactShape.h
+BulletCollision/CollisionShapes/btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionShapes/btCollisionShape.h
+BulletCollision/CollisionShapes/btTriangleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionShapes/btTriangleShape.h
+BulletCollision/CollisionShapes/btStridingMeshInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionShapes/btCollisionMargin.h
+BulletCollision/CollisionDispatch/btCollisionWorld.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionDispatch/btCollisionWorld.h
+BulletCollision/CollisionShapes/btConcaveShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionShapes/btConcaveShape.h
+BulletCollision/CollisionShapes/btTetrahedronShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionShapes/btTetrahedronShape.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btVector3.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btTransform.h
+LinearMath/btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btMatrix3x3.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btAlignedObjectArray.h
+btGImpactQuantizedBvh.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactQuantizedBvh.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGenericPoolAllocator.cpp
+btGenericPoolAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGenericPoolAllocator.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGenericPoolAllocator.h
+limits.h
+-
+stdio.h
+-
+string.h
+-
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btAlignedAllocator.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGeometryOperations.h
+btBoxCollision.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btBoxCollision.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btQuantization.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btTransform.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.cpp
+btTriangleShapeEx.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.h
+BulletCollision/CollisionShapes/btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionShapes/btCollisionShape.h
+BulletCollision/CollisionShapes/btTriangleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/BulletCollision/CollisionShapes/btTriangleShape.h
+btBoxCollision.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btBoxCollision.h
+btClipPolygon.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btClipPolygon.h
+btGeometryOperations.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGeometryOperations.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_array.h
+gim_memory.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_memory.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_basic_geometry_operations.h
+gim_linear_math.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_linear_math.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_collision.h
+gim_basic_geometry_operations.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_basic_geometry_operations.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btTransform.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_set.cpp
+gim_box_set.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_set.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_set.h
+gim_array.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_array.h
+gim_radixsort.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_radixsort.h
+gim_box_collision.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_collision.h
+gim_tri_collision.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_tri_collision.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_clip_polygon.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_contact.cpp
+gim_contact.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_contact.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_contact.h
+gim_geometry.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_geometry.h
+gim_radixsort.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_radixsort.h
+gim_array.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_array.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_geom_types.h
+gim_math.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_math.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_geometry.h
+gim_basic_geometry_operations.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_basic_geometry_operations.h
+gim_clip_polygon.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_clip_polygon.h
+gim_box_collision.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_collision.h
+gim_tri_collision.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_tri_collision.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_linear_math.h
+gim_math.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_math.h
+gim_geom_types.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_geom_types.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_math.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btScalar.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_memory.cpp
+gim_memory.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_memory.h
+stdlib.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/stdlib.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/LinearMath/btAlignedAllocator.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_memory.h
+gim_math.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_math.h
+string.h
+-
+xmmintrin.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_radixsort.h
+gim_memory.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_memory.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_tri_collision.cpp
+gim_tri_collision.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_tri_collision.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_tri_collision.h
+gim_box_collision.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_collision.h
+gim_clip_polygon.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_clip_polygon.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp
+btContinuousConvexCollision.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btConvexShape.h
+BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransformUtil.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btSphereShape.h
+btGjkPairDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+btPointCollector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
+BulletCollision/CollisionShapes/btStaticPlaneShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+btConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+btSimplexSolverInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexCast.cpp
+btConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btScalar.h
+LinearMath/btIDebugDraw.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btIDebugDraw.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+btSimplexSolverInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp
+btGjkConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btSphereShape.h
+btGjkPairDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+btPointCollector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransformUtil.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+btConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+btSimplexSolverInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp
+BulletCollision/CollisionShapes/btConvexInternalShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btSphereShape.h
+btGjkEpa2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+stdio.h
+-
+spu_printf.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btConvexShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btConvexShape.h
+btGjkEpaPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+btConvexPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp
+btGjkPairDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btConvexShape.h
+BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+stdio.h
+-
+spu_printf.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+btDiscreteCollisionDetectorInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btCollisionMargin.h
+btSimplexSolverInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransformUtil.h
+physics_effects/base_level/solver/pfx_constraint_row.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/physics_effects/base_level/solver/pfx_constraint_row.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp
+btMinkowskiPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btConvexShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+btConvexPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp
+btPersistentManifold.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+btManifoldPoint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btAlignedAllocator.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
+btDiscreteCollisionDetectorInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp
+btPolyhedralContactClipping.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h
+BulletCollision/CollisionShapes/btConvexPolyhedron.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btConvexPolyhedron.h
+float.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btAlignedObjectArray.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+btDiscreteCollisionDetectorInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btConvexShape.h
+BulletCollision/CollisionShapes/btTriangleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btTriangleShape.h
+BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+btRaycastCallback.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+BulletCollision/CollisionShapes/btTriangleCallback.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btTriangleCallback.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+btVoronoiSimplexSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp
+btSubSimplexConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btConvexShape.h
+BulletCollision/CollisionShapes/btMinkowskiSumShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
+BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+btPointCollector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransformUtil.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+btConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+btSimplexSolverInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp
+btVoronoiSimplexSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+btSimplexSolverInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+btBroadphaseProxy.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+
+src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btScalar.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+
+src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+LinearMath/btScalar.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/BroadphaseCollision/btDbvt.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btTransform.h
+LinearMath/btAabbUtil2.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAabbUtil2.h
+emmintrin.h
+-
+memory.h
+-
+string.h
+-
+
+src/BulletCollision/BroadphaseCollision/btDispatcher.h
+LinearMath/btScalar.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+btBroadphaseInterface.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+btBroadphaseProxy.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btOverlappingPairCallback.h
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+
+src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+stdio.h
+-
+stdlib.h
+-
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+btOverlappingPairCache.h
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+
+src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+
+src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h
+btActivatingCollisionAlgorithm.h
+src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+
+src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+
+src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+
+src/BulletCollision/CollisionDispatch/btCollisionObject.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+LinearMath/btMotionState.h
+src/BulletCollision/CollisionDispatch/LinearMath/btMotionState.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+LinearMath/btScalar.h
+src/BulletCollision/CollisionDispatch/LinearMath/btScalar.h
+
+src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionDispatch/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+btCollisionObject.h
+src/BulletCollision/CollisionDispatch/btCollisionObject.h
+btCollisionDispatcher.h
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h
+btActivatingCollisionAlgorithm.h
+src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h
+btActivatingCollisionAlgorithm.h
+src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionShapes/btTriangleCallback.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+
+src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
+btActivatingCollisionAlgorithm.h
+src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btCollisionDispatcher.h
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+LinearMath/btTransformUtil.h
+src/BulletCollision/CollisionDispatch/LinearMath/btTransformUtil.h
+
+src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btCollisionDispatcher.h
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionDispatch/LinearMath/btVector3.h
+
+src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btCollisionDispatcher.h
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+
+src/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+
+src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h
+btActivatingCollisionAlgorithm.h
+src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btCollisionDispatcher.h
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionDispatch/LinearMath/btVector3.h
+
+src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+btActivatingCollisionAlgorithm.h
+src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btCollisionDispatcher.h
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+
+src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
+btActivatingCollisionAlgorithm.h
+src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btCollisionDispatcher.h
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+
+src/BulletCollision/CollisionDispatch/btUnionFind.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionShapes/btBox2dShape.h
+BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btCollisionMargin.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btMinMax.h
+src/BulletCollision/CollisionShapes/LinearMath/btMinMax.h
+
+src/BulletCollision/CollisionShapes/btBoxShape.h
+btPolyhedralConvexShape.h
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+btCollisionMargin.h
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btMinMax.h
+src/BulletCollision/CollisionShapes/LinearMath/btMinMax.h
+
+src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+btTriangleMeshShape.h
+src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+btOptimizedBvh.h
+src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedAllocator.h
+btTriangleInfoMap.h
+src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+
+src/BulletCollision/CollisionShapes/btCapsuleShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btCompoundShape.h
+btCollisionShape.h
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btCollisionMargin.h
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+btCollisionShape.h
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btTriangleCallback.h
+src/BulletCollision/CollisionShapes/btTriangleCallback.h
+
+src/BulletCollision/CollisionShapes/btConeShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+btConvexShape.h
+src/BulletCollision/CollisionShapes/btConvexShape.h
+LinearMath/btAabbUtil2.h
+src/BulletCollision/CollisionShapes/LinearMath/btAabbUtil2.h
+
+src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionShapes/btConvexShape.h
+btCollisionShape.h
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btCollisionMargin.h
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedAllocator.h
+
+src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
+btPolyhedralConvexShape.h
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btCylinderShape.h
+btBoxShape.h
+src/BulletCollision/CollisionShapes/btBoxShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+
+src/BulletCollision/CollisionShapes/btMaterial.h
+
+src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+LinearMath/btAabbUtil2.h
+src/BulletCollision/CollisionShapes/LinearMath/btAabbUtil2.h
+
+src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h
+btBvhTriangleMeshShape.h
+src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+btMaterial.h
+src/BulletCollision/CollisionShapes/btMaterial.h
+
+src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+
+src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
+BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+
+src/BulletCollision/CollisionShapes/btSphereShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+btConcaveShape.h
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+
+src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+btTriangleCallback.h
+src/BulletCollision/CollisionShapes/btTriangleCallback.h
+btConcaveShape.h
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+
+src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+btPolyhedralConvexShape.h
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btTriangleCallback.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+
+src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+btStridingMeshInterface.h
+src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+LinearMath/btScalar.h
+src/BulletCollision/CollisionShapes/LinearMath/btScalar.h
+
+src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h
+btTriangleIndexVertexArray.h
+src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+
+src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+LinearMath/btHashMap.h
+src/BulletCollision/CollisionShapes/LinearMath/btHashMap.h
+LinearMath/btSerializer.h
+src/BulletCollision/CollisionShapes/LinearMath/btSerializer.h
+
+src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+btConcaveShape.h
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+btStridingMeshInterface.h
+src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+
+src/BulletCollision/CollisionShapes/btTriangleShape.h
+btConvexShape.h
+src/BulletCollision/CollisionShapes/btConvexShape.h
+btBoxShape.h
+src/BulletCollision/CollisionShapes/btBoxShape.h
+
+src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+btConvexCast.h
+src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+btSimplexSolverInterface.h
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btScalar.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btScalar.h
+LinearMath/btIDebugDraw.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btIDebugDraw.h
+
+src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+btSimplexSolverInterface.h
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+
+src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+btConvexCast.h
+src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+btSimplexSolverInterface.h
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btConvexShape.h
+
+src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+btConvexPenetrationDepthSolver.h
+src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+
+src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btCollisionMargin.h
+btSimplexSolverInterface.h
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btTransformUtil.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransformUtil.h
+physics_effects/base_level/solver/pfx_constraint_row.h
+src/BulletCollision/NarrowPhaseCollision/physics_effects/base_level/solver/pfx_constraint_row.h
+
+src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+btConvexPenetrationDepthSolver.h
+src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+
+src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+btManifoldPoint.h
+src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btAlignedAllocator.h
+
+src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btAlignedObjectArray.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+
+src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btTriangleCallback.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+btVoronoiSimplexSolver.h
+src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+
+src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+btConvexCast.h
+src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+btSimplexSolverInterface.h
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+btSimplexSolverInterface.h
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/LinearMath/btAabbUtil2.h
+btTransform.h
+src/LinearMath/btTransform.h
+btVector3.h
+src/LinearMath/btVector3.h
+btMinMax.h
+src/LinearMath/btMinMax.h
+
+src/LinearMath/btAlignedAllocator.h
+btScalar.h
+src/LinearMath/btScalar.h
+
+src/LinearMath/btAlignedObjectArray.h
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+memory.h
+-
+string.h
+-
+new
+-
+
+src/LinearMath/btConvexHull.h
+btVector3.h
+src/LinearMath/btVector3.h
+btAlignedObjectArray.h
+src/LinearMath/btAlignedObjectArray.h
+
+src/LinearMath/btConvexHullComputer.h
+btVector3.h
+src/LinearMath/btVector3.h
+btAlignedObjectArray.h
+src/LinearMath/btAlignedObjectArray.h
+
+src/LinearMath/btGeometryUtil.h
+btVector3.h
+src/LinearMath/btVector3.h
+btAlignedObjectArray.h
+src/LinearMath/btAlignedObjectArray.h
+
+src/LinearMath/btGrahamScan2dConvexHull.h
+btVector3.h
+src/LinearMath/btVector3.h
+btAlignedObjectArray.h
+src/LinearMath/btAlignedObjectArray.h
+
+src/LinearMath/btHashMap.h
+btAlignedObjectArray.h
+src/LinearMath/btAlignedObjectArray.h
+
+src/LinearMath/btIDebugDraw.h
+btVector3.h
+src/LinearMath/btVector3.h
+btTransform.h
+src/LinearMath/btTransform.h
+
+src/LinearMath/btMatrix3x3.h
+btVector3.h
+src/LinearMath/btVector3.h
+btQuaternion.h
+src/LinearMath/btQuaternion.h
+stdio.h
+-
+
+src/LinearMath/btMinMax.h
+btScalar.h
+src/LinearMath/btScalar.h
+
+src/LinearMath/btMotionState.h
+btTransform.h
+src/LinearMath/btTransform.h
+
+src/LinearMath/btPoolAllocator.h
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+
+src/LinearMath/btQuadWord.h
+btScalar.h
+src/LinearMath/btScalar.h
+btMinMax.h
+src/LinearMath/btMinMax.h
+altivec.h
+-
+
+src/LinearMath/btQuaternion.h
+btVector3.h
+src/LinearMath/btVector3.h
+btQuadWord.h
+src/LinearMath/btQuadWord.h
+
+src/LinearMath/btQuickProf.h
+stdio.h
+-
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+new
+-
+
+src/LinearMath/btQuickprof.h
+stdio.h
+-
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+new
+-
+
+src/LinearMath/btScalar.h
+math.h
+-
+stdlib.h
+-
+float.h
+-
+ppcintrinsics.h
+-
+emmintrin.h
+-
+stdio.h
+-
+assert.h
+-
+assert.h
+-
+spu_printf.h
+-
+assert.h
+-
+smmintrin.h
+-
+tmmintrin.h
+-
+pmmintrin.h
+-
+emmintrin.h
+-
+arm_neon.h
+-
+assert.h
+-
+stdio.h
+-
+assert.h
+-
+arm_neon.h
+-
+
+src/LinearMath/btSerializer.h
+btScalar.h
+src/LinearMath/btScalar.h
+btStackAlloc.h
+src/LinearMath/btStackAlloc.h
+btHashMap.h
+src/LinearMath/btHashMap.h
+memory.h
+-
+string.h
+-
+
+src/LinearMath/btStackAlloc.h
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+
+src/LinearMath/btTransform.h
+btMatrix3x3.h
+src/LinearMath/btMatrix3x3.h
+
+src/LinearMath/btTransformUtil.h
+btTransform.h
+src/LinearMath/btTransform.h
+
+src/LinearMath/btVector3.h
+btScalar.h
+src/LinearMath/btScalar.h
+btMinMax.h
+src/LinearMath/btMinMax.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+
--- /dev/null
+# The set of languages for which implicit dependencies are needed:
+SET(CMAKE_DEPENDS_LANGUAGES
+ "CXX"
+ )
+# The set of files for implicit dependencies of each language:
+SET(CMAKE_DEPENDS_CHECK_CXX
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btAxisSweep3.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvt.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDispatcher.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btGhostObject.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btManifoldResult.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btUnionFind.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBox2dShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBoxShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCapsuleShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCompoundShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConeShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvex2dShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexHullShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCylinderShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btEmptyShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btShapeHull.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btSphereShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStaticPlaneShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTetrahedronShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleBuffer.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMesh.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btUniformScalingShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btContactProcessing.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactBvh.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactShape.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGenericPoolAllocator.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_set.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_contact.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_memory.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_tri_collision.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexCast.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o"
+ )
+SET(CMAKE_CXX_COMPILER_ID "GNU")
+
+# Preprocessor definitions for this target.
+SET(CMAKE_TARGET_DEFINITIONS
+ "USE_GRAPHICAL_BENCHMARK"
+ )
+
+# Targets to which this target links.
+SET(CMAKE_TARGET_LINKED_INFO_FILES
+ )
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# Include any dependencies generated for this target.
+include src/BulletCollision/CMakeFiles/BulletCollision.dir/depend.make
+
+# Include the progress variables for this target.
+include src/BulletCollision/CMakeFiles/BulletCollision.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/BulletCollision/BroadphaseCollision/btAxisSweep3.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_1)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btAxisSweep3.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btAxisSweep3.cpp > CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btAxisSweep3.cpp -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_2)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp > CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_3)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp > CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o: src/BulletCollision/BroadphaseCollision/btDbvt.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_4)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvt.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvt.cpp > CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvt.cpp -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_5)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp > CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o: src/BulletCollision/BroadphaseCollision/btDispatcher.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_6)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDispatcher.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDispatcher.cpp > CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDispatcher.cpp -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_7)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp > CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_8)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp > CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_9)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp > CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_10)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp > CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp -o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_11)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_12)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_13)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_14)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_15)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/BulletCollision/CollisionDispatch/btCollisionObject.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_16)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_17)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_18)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_19)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_20)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_21)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_22)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_23)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_24)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/CollisionDispatch/btGhostObject.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_25)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btGhostObject.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btGhostObject.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btGhostObject.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_26)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/BulletCollision/CollisionDispatch/btManifoldResult.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_27)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btManifoldResult.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btManifoldResult.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btManifoldResult.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_28)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_29)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_30)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_31)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o: src/BulletCollision/CollisionDispatch/btUnionFind.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_32)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btUnionFind.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btUnionFind.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btUnionFind.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_33)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp > CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp -o CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/BulletCollision/CollisionShapes/btBoxShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_34)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBoxShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBoxShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBoxShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/BulletCollision/CollisionShapes/btBox2dShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_35)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBox2dShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBox2dShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBox2dShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_36)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/BulletCollision/CollisionShapes/btCapsuleShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_37)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCapsuleShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCapsuleShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCapsuleShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_38)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/BulletCollision/CollisionShapes/btCompoundShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_39)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCompoundShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCompoundShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCompoundShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o: src/BulletCollision/CollisionShapes/btConcaveShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_40)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/BulletCollision/CollisionShapes/btConeShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_41)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConeShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConeShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConeShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/BulletCollision/CollisionShapes/btConvexHullShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_42)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexHullShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexHullShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexHullShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_43)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_44)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o: src/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_45)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/CollisionShapes/btConvexShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_46)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/BulletCollision/CollisionShapes/btConvex2dShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_47)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvex2dShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvex2dShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvex2dShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_48)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/BulletCollision/CollisionShapes/btCylinderShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_49)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCylinderShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCylinderShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCylinderShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/BulletCollision/CollisionShapes/btEmptyShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_50)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btEmptyShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btEmptyShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btEmptyShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_51)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_52)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_53)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_54)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_55)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_56)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_57)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/BulletCollision/CollisionShapes/btShapeHull.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_58)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btShapeHull.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btShapeHull.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btShapeHull.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/BulletCollision/CollisionShapes/btSphereShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_59)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btSphereShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btSphereShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btSphereShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/BulletCollision/CollisionShapes/btStaticPlaneShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_60)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStaticPlaneShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStaticPlaneShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStaticPlaneShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_61)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/BulletCollision/CollisionShapes/btTetrahedronShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_62)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTetrahedronShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTetrahedronShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTetrahedronShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o: src/BulletCollision/CollisionShapes/btTriangleBuffer.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_63)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleBuffer.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleBuffer.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleBuffer.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o: src/BulletCollision/CollisionShapes/btTriangleCallback.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_64)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_65)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_66)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/BulletCollision/CollisionShapes/btTriangleMesh.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_67)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMesh.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMesh.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMesh.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_68)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/BulletCollision/CollisionShapes/btUniformScalingShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_69)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btUniformScalingShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btUniformScalingShape.cpp > CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btUniformScalingShape.cpp -o CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/Gimpact/btContactProcessing.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_70)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btContactProcessing.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btContactProcessing.cpp > CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btContactProcessing.cpp -o CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o: src/BulletCollision/Gimpact/btGenericPoolAllocator.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_71)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGenericPoolAllocator.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGenericPoolAllocator.cpp > CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGenericPoolAllocator.cpp -o CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/Gimpact/btGImpactBvh.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_72)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactBvh.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactBvh.cpp > CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactBvh.cpp -o CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_73)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp > CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp -o CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_74)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp > CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp -o CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/Gimpact/btGImpactShape.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_75)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactShape.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactShape.cpp > CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactShape.cpp -o CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/BulletCollision/Gimpact/btTriangleShapeEx.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_76)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.cpp > CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.cpp -o CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/BulletCollision/Gimpact/gim_box_set.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_77)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_set.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_set.cpp > CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_set.cpp -o CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/BulletCollision/Gimpact/gim_contact.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_78)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_contact.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_contact.cpp > CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_contact.cpp -o CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o: src/BulletCollision/Gimpact/gim_memory.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_79)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_memory.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_memory.cpp > CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_memory.cpp -o CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/BulletCollision/Gimpact/gim_tri_collision.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_80)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_tri_collision.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_tri_collision.cpp > CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_tri_collision.cpp -o CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_81)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp > CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btConvexCast.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_82)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexCast.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexCast.cpp > CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexCast.cpp -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_83)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp > CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_84)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp > CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_85)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp > CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_86)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp > CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_87)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp > CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_88)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp > CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_89)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp > CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_90)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp > CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_91)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp > CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o: src/BulletCollision/CMakeFiles/BulletCollision.dir/flags.make
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o: src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_92)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp > CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.i
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp -o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.s
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o.requires:
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o.requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o.provides: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o.requires
+ $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o.provides.build
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o.provides
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o.provides.build: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o
+
+# Object files for target BulletCollision
+BulletCollision_OBJECTS = \
+"CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o" \
+"CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o" \
+"CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o" \
+"CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o" \
+"CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o" \
+"CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o" \
+"CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o" \
+"CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o" \
+"CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o" \
+"CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o" \
+"CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o" \
+"CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o" \
+"CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o" \
+"CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o" \
+"CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o" \
+"CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o" \
+"CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o" \
+"CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o" \
+"CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o" \
+"CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o" \
+"CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o" \
+"CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o" \
+"CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o" \
+"CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o" \
+"CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o" \
+"CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o" \
+"CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o" \
+"CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o" \
+"CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o" \
+"CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o" \
+"CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o" \
+"CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o" \
+"CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o" \
+"CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o" \
+"CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o"
+
+# External object files for target BulletCollision
+BulletCollision_EXTERNAL_OBJECTS =
+
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make
+src/BulletCollision/libBulletCollision.a: src/BulletCollision/CMakeFiles/BulletCollision.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX static library libBulletCollision.a"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && $(CMAKE_COMMAND) -P CMakeFiles/BulletCollision.dir/cmake_clean_target.cmake
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/BulletCollision.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+src/BulletCollision/CMakeFiles/BulletCollision.dir/build: src/BulletCollision/libBulletCollision.a
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/build
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o.requires
+src/BulletCollision/CMakeFiles/BulletCollision.dir/requires: src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o.requires
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/requires
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision && $(CMAKE_COMMAND) -P CMakeFiles/BulletCollision.dir/cmake_clean.cmake
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/clean
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/BulletCollision.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/depend
+
--- /dev/null
+FILE(REMOVE_RECURSE
+ "CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o"
+ "CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o"
+ "CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o"
+ "CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o"
+ "CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o"
+ "CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o"
+ "CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o"
+ "CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o"
+ "CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o"
+ "CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o"
+ "CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o"
+ "CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o"
+ "CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o"
+ "CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o"
+ "CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o"
+ "CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o"
+ "CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o"
+ "CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o"
+ "CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o"
+ "CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o"
+ "CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o"
+ "CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o"
+ "CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o"
+ "CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o"
+ "CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o"
+ "CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o"
+ "CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o"
+ "CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o"
+ "CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o"
+ "CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o"
+ "CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o"
+ "CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o"
+ "CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o"
+ "CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o"
+ "CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o"
+ "libBulletCollision.pdb"
+ "libBulletCollision.a"
+)
+
+# Per-language clean rules from dependency scanning.
+FOREACH(lang CXX)
+ INCLUDE(CMakeFiles/BulletCollision.dir/cmake_clean_${lang}.cmake OPTIONAL)
+ENDFOREACH(lang)
--- /dev/null
+FILE(REMOVE_RECURSE
+ "libBulletCollision.a"
+)
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btAxisSweep3.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btAxisSweep3.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/BulletCollision/BroadphaseCollision/btDbvt.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvt.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvt.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickProf.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btDbvt.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDispatcher.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/SphereTriangleDetector.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/CollisionShapes/btTriangleShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btBox2dShape.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btPoolAllocator.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDbvt.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+ src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+ src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btCapsuleShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btCompoundShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConeShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btCylinderShape.h
+ src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+ src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+ src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+ src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+ src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDbvt.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btCompoundShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCapsuleShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleShape.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+ src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCapsuleShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/CollisionShapes/btTriangleShape.h
+ src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h
+ src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btPoolAllocator.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btGhostObject.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btGhostObject.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+ src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btTriangleShape.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btManifoldResult.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSimulationIslandManager.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionDispatch/btUnionFind.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/SphereTriangleDetector.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btUnionFind.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionDispatch/btUnionFind.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBox2dShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBox2dShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBoxShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBoxShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+ src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+ src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCapsuleShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCapsuleShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.cpp
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCompoundShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCompoundShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btDbvt.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConeShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConeShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvex2dShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvex2dShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexHullShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexHullShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPointCloudShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBoxShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCapsuleShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexHullShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPointCloudShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCylinderShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btSphereShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btBoxShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCylinderShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCylinderShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btEmptyShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btEmptyShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+ src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btMaterial.h
+ src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+ src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h
+ src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+ src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btConvexHullComputer.h
+ src/LinearMath/btGeometryUtil.h
+ src/LinearMath/btGrahamScan2dConvexHull.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+ src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+ src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btShapeHull.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btShapeHull.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btConvexHull.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btSphereShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStaticPlaneShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTetrahedronShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleBuffer.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleBuffer.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMesh.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMesh.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConcaveShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btCollisionShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btConvexShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btUniformScalingShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CollisionShapes/btUniformScalingShape.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btBoxCollision.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btClipPolygon.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btContactProcessing.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btContactProcessing.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGeometryOperations.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btTriangleShape.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btGeometryUtil.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btBoxCollision.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btClipPolygon.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactBvh.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactBvh.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGeometryOperations.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btTriangleShape.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btGeometryUtil.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btBoxCollision.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btClipPolygon.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btContactProcessing.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactBvh.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactQuantizedBvh.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGeometryOperations.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btQuantization.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+ src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btCompoundShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btGeometryUtil.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btBoxCollision.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btClipPolygon.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactBvh.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactQuantizedBvh.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGeometryOperations.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btQuantization.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btTriangleShape.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btGeometryUtil.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btBoxCollision.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btClipPolygon.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactBvh.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactMassUtil.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactQuantizedBvh.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactShape.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGImpactShape.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGeometryOperations.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btQuantization.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btGeometryUtil.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGenericPoolAllocator.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGenericPoolAllocator.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btBoxCollision.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btClipPolygon.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btGeometryOperations.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/btTriangleShapeEx.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btTriangleShape.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btGeometryUtil.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_array.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_basic_geometry_operations.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_collision.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_set.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_set.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_clip_polygon.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_geom_types.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_linear_math.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_math.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_memory.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_radixsort.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_tri_collision.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_array.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_basic_geometry_operations.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_collision.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_clip_polygon.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_contact.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_contact.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_geom_types.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_geometry.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_linear_math.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_math.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_memory.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_radixsort.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_tri_collision.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_math.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_memory.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_memory.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_basic_geometry_operations.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_box_collision.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_clip_polygon.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_geom_types.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_linear_math.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_math.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_tri_collision.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/Gimpact/gim_tri_collision.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexCast.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+ src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h
+ src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleShape.h
+ src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
+ src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btVector3.h
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/BulletCollision/BroadphaseCollision/btAxisSweep3.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/BulletCollision/BroadphaseCollision/btAxisSweep3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/LinearMath/btQuickprof.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o: src/LinearMath/btScalar.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o: src/BulletCollision/BroadphaseCollision/btDbvt.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o: src/BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o: src/LinearMath/btQuickProf.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/LinearMath/btQuickprof.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o: src/BulletCollision/BroadphaseCollision/btDispatcher.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o: src/LinearMath/btScalar.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/LinearMath/btHashMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/LinearMath/btIDebugDraw.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/LinearMath/btSerializer.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/LinearMath/btStackAlloc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/BulletCollision/CollisionDispatch/SphereTriangleDetector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/BulletCollision/CollisionShapes/btTriangleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btBox2dShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/LinearMath/btPoolAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/BulletCollision/CollisionDispatch/btCollisionObject.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/LinearMath/btHashMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/LinearMath/btSerializer.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/LinearMath/btStackAlloc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btCapsuleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btCompoundShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btConeShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btCylinderShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btHashMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btIDebugDraw.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btQuickprof.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btSerializer.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btStackAlloc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCompoundShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/LinearMath/btIDebugDraw.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionShapes/btCapsuleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/LinearMath/btIDebugDraw.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btTriangleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/LinearMath/btIDebugDraw.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionShapes/btCapsuleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/CollisionShapes/btTriangleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/LinearMath/btIDebugDraw.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/LinearMath/btPoolAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/LinearMath/btStackAlloc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/CollisionDispatch/btGhostObject.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/CollisionDispatch/btGhostObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/CollisionShapes/btTriangleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btHashMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btIDebugDraw.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btSerializer.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btStackAlloc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/BulletCollision/CollisionDispatch/btManifoldResult.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/CollisionDispatch/btSimulationIslandManager.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/CollisionDispatch/btUnionFind.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/LinearMath/btQuickprof.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/SphereTriangleDetector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o: src/BulletCollision/CollisionDispatch/btUnionFind.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o: src/BulletCollision/CollisionDispatch/btUnionFind.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o: src/LinearMath/btScalar.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/BulletCollision/CollisionShapes/btBox2dShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/BulletCollision/CollisionShapes/btBox2dShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/BulletCollision/CollisionShapes/btBoxShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/LinearMath/btHashMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/LinearMath/btSerializer.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/LinearMath/btStackAlloc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/BulletCollision/CollisionShapes/btCapsuleShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/BulletCollision/CollisionShapes/btCapsuleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/LinearMath/btHashMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/LinearMath/btSerializer.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/LinearMath/btStackAlloc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/BulletCollision/CollisionShapes/btCompoundShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/BulletCollision/CollisionShapes/btCompoundShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/LinearMath/btHashMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/LinearMath/btSerializer.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/LinearMath/btStackAlloc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o: src/BulletCollision/CollisionShapes/btConcaveShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/BulletCollision/CollisionShapes/btConeShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/BulletCollision/CollisionShapes/btConeShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/BulletCollision/CollisionShapes/btConvex2dShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/BulletCollision/CollisionShapes/btConvex2dShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/BulletCollision/CollisionShapes/btConvexHullShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/BulletCollision/CollisionShapes/btConvexHullShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/LinearMath/btHashMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/LinearMath/btSerializer.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/LinearMath/btStackAlloc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/BulletCollision/CollisionShapes/btConvexPointCloudShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o: src/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o: src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o: src/LinearMath/btHashMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/CollisionShapes/btCapsuleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/CollisionShapes/btConvexHullShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/CollisionShapes/btConvexPointCloudShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/CollisionShapes/btConvexShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/CollisionShapes/btCylinderShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/CollisionShapes/btTriangleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/BulletCollision/CollisionShapes/btCylinderShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/BulletCollision/CollisionShapes/btCylinderShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/BulletCollision/CollisionShapes/btEmptyShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/BulletCollision/CollisionShapes/btEmptyShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/LinearMath/btHashMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/LinearMath/btSerializer.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/LinearMath/btStackAlloc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btMaterial.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/LinearMath/btHashMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/LinearMath/btSerializer.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/LinearMath/btStackAlloc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/LinearMath/btIDebugDraw.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/LinearMath/btConvexHullComputer.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/LinearMath/btGeometryUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/LinearMath/btGrahamScan2dConvexHull.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/LinearMath/btHashMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/LinearMath/btSerializer.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/LinearMath/btStackAlloc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/BulletCollision/CollisionShapes/btShapeHull.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/BulletCollision/CollisionShapes/btShapeHull.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/LinearMath/btConvexHull.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/BulletCollision/CollisionShapes/btSphereShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/BulletCollision/CollisionShapes/btStaticPlaneShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/LinearMath/btHashMap.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/LinearMath/btSerializer.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/LinearMath/btStackAlloc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/BulletCollision/CollisionShapes/btTetrahedronShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o: src/BulletCollision/CollisionShapes/btTriangleBuffer.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o: src/BulletCollision/CollisionShapes/btTriangleBuffer.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o: src/BulletCollision/CollisionShapes/btTriangleCallback.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/BulletCollision/CollisionShapes/btTriangleMesh.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/BulletCollision/CollisionShapes/btTriangleMesh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/BulletCollision/CollisionShapes/btUniformScalingShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/BulletCollision/CollisionShapes/btUniformScalingShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/Gimpact/btBoxCollision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/Gimpact/btClipPolygon.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/Gimpact/btContactProcessing.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/Gimpact/btContactProcessing.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/Gimpact/btGeometryOperations.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/Gimpact/btTriangleShapeEx.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/BulletCollision/CollisionShapes/btTriangleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/LinearMath/btGeometryUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/Gimpact/btBoxCollision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/Gimpact/btClipPolygon.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/Gimpact/btGImpactBvh.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/Gimpact/btGImpactBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/Gimpact/btGeometryOperations.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/Gimpact/btTriangleShapeEx.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/BulletCollision/CollisionShapes/btTriangleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/LinearMath/btGeometryUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/LinearMath/btQuickprof.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/Gimpact/btBoxCollision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/Gimpact/btClipPolygon.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/Gimpact/btContactProcessing.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/Gimpact/btGImpactBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/Gimpact/btGImpactQuantizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/Gimpact/btGImpactShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/Gimpact/btGeometryOperations.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/Gimpact/btQuantization.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/Gimpact/btTriangleShapeEx.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCompoundShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btTriangleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/LinearMath/btGeometryUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/LinearMath/btIDebugDraw.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/LinearMath/btQuickprof.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/Gimpact/btBoxCollision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/Gimpact/btClipPolygon.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/Gimpact/btGImpactBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/Gimpact/btGImpactQuantizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/Gimpact/btGeometryOperations.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/Gimpact/btQuantization.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/Gimpact/btTriangleShapeEx.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/BulletCollision/CollisionShapes/btTriangleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/LinearMath/btGeometryUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/LinearMath/btQuickprof.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/Gimpact/btBoxCollision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/Gimpact/btClipPolygon.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/Gimpact/btGImpactBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/Gimpact/btGImpactMassUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/Gimpact/btGImpactQuantizedBvh.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/Gimpact/btGImpactShape.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/Gimpact/btGImpactShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/Gimpact/btGeometryOperations.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/Gimpact/btQuantization.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/Gimpact/btTriangleShapeEx.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/CollisionShapes/btTriangleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/LinearMath/btGeometryUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/LinearMath/btMotionState.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o: src/BulletCollision/Gimpact/btGenericPoolAllocator.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o: src/BulletCollision/Gimpact/btGenericPoolAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o: src/LinearMath/btScalar.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/BulletCollision/Gimpact/btBoxCollision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/BulletCollision/Gimpact/btClipPolygon.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/BulletCollision/Gimpact/btGeometryOperations.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/BulletCollision/Gimpact/btTriangleShapeEx.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/BulletCollision/Gimpact/btTriangleShapeEx.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/BulletCollision/CollisionShapes/btTriangleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/LinearMath/btGeometryUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/BulletCollision/Gimpact/gim_array.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/BulletCollision/Gimpact/gim_basic_geometry_operations.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/BulletCollision/Gimpact/gim_box_collision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/BulletCollision/Gimpact/gim_box_set.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/BulletCollision/Gimpact/gim_box_set.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/BulletCollision/Gimpact/gim_clip_polygon.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/BulletCollision/Gimpact/gim_geom_types.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/BulletCollision/Gimpact/gim_linear_math.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/BulletCollision/Gimpact/gim_math.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/BulletCollision/Gimpact/gim_memory.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/BulletCollision/Gimpact/gim_radixsort.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/BulletCollision/Gimpact/gim_tri_collision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/BulletCollision/Gimpact/gim_array.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/BulletCollision/Gimpact/gim_basic_geometry_operations.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/BulletCollision/Gimpact/gim_box_collision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/BulletCollision/Gimpact/gim_clip_polygon.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/BulletCollision/Gimpact/gim_contact.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/BulletCollision/Gimpact/gim_contact.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/BulletCollision/Gimpact/gim_geom_types.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/BulletCollision/Gimpact/gim_geometry.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/BulletCollision/Gimpact/gim_linear_math.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/BulletCollision/Gimpact/gim_math.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/BulletCollision/Gimpact/gim_memory.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/BulletCollision/Gimpact/gim_radixsort.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/BulletCollision/Gimpact/gim_tri_collision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o: src/BulletCollision/Gimpact/gim_math.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o: src/BulletCollision/Gimpact/gim_memory.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o: src/BulletCollision/Gimpact/gim_memory.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o: src/LinearMath/btScalar.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/BulletCollision/Gimpact/gim_basic_geometry_operations.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/BulletCollision/Gimpact/gim_box_collision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/BulletCollision/Gimpact/gim_clip_polygon.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/BulletCollision/Gimpact/gim_geom_types.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/BulletCollision/Gimpact/gim_linear_math.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/BulletCollision/Gimpact/gim_math.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/BulletCollision/Gimpact/gim_tri_collision.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/BulletCollision/Gimpact/gim_tri_collision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/LinearMath/btIDebugDraw.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btConvexCast.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o: src/LinearMath/btIDebugDraw.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/LinearMath/btIDebugDraw.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/LinearMath/btIDebugDraw.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o: src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o: src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o: src/BulletCollision/CollisionShapes/btConvexPolyhedron.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/CollisionShapes/btTriangleShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/LinearMath/btIDebugDraw.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/LinearMath/btAabbUtil2.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/LinearMath/btIDebugDraw.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/LinearMath/btMatrix3x3.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/LinearMath/btQuadWord.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/LinearMath/btQuaternion.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/LinearMath/btTransform.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/LinearMath/btTransformUtil.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o: src/LinearMath/btVector3.h
+
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o: src/LinearMath/btAlignedAllocator.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o: src/LinearMath/btMinMax.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o: src/LinearMath/btScalar.h
+src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o: src/LinearMath/btVector3.h
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -O3 -DNDEBUG -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk -I/usr/local/include -I/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src
+
+CXX_DEFINES = -DUSE_GRAPHICAL_BENCHMARK
+
--- /dev/null
+/usr/bin/ar cr libBulletCollision.a CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o
+/usr/bin/ranlib libBulletCollision.a
--- /dev/null
+CMAKE_PROGRESS_1 =
+CMAKE_PROGRESS_2 = 1
+CMAKE_PROGRESS_3 = 2
+CMAKE_PROGRESS_4 =
+CMAKE_PROGRESS_5 = 3
+CMAKE_PROGRESS_6 = 4
+CMAKE_PROGRESS_7 =
+CMAKE_PROGRESS_8 = 5
+CMAKE_PROGRESS_9 = 6
+CMAKE_PROGRESS_10 =
+CMAKE_PROGRESS_11 = 7
+CMAKE_PROGRESS_12 = 8
+CMAKE_PROGRESS_13 =
+CMAKE_PROGRESS_14 = 9
+CMAKE_PROGRESS_15 = 10
+CMAKE_PROGRESS_16 =
+CMAKE_PROGRESS_17 = 11
+CMAKE_PROGRESS_18 = 12
+CMAKE_PROGRESS_19 =
+CMAKE_PROGRESS_20 = 13
+CMAKE_PROGRESS_21 = 14
+CMAKE_PROGRESS_22 =
+CMAKE_PROGRESS_23 = 15
+CMAKE_PROGRESS_24 = 16
+CMAKE_PROGRESS_25 =
+CMAKE_PROGRESS_26 = 17
+CMAKE_PROGRESS_27 = 18
+CMAKE_PROGRESS_28 =
+CMAKE_PROGRESS_29 = 19
+CMAKE_PROGRESS_30 = 20
+CMAKE_PROGRESS_31 =
+CMAKE_PROGRESS_32 = 21
+CMAKE_PROGRESS_33 = 22
+CMAKE_PROGRESS_34 =
+CMAKE_PROGRESS_35 = 23
+CMAKE_PROGRESS_36 = 24
+CMAKE_PROGRESS_37 =
+CMAKE_PROGRESS_38 = 25
+CMAKE_PROGRESS_39 = 26
+CMAKE_PROGRESS_40 =
+CMAKE_PROGRESS_41 = 27
+CMAKE_PROGRESS_42 = 28
+CMAKE_PROGRESS_43 =
+CMAKE_PROGRESS_44 = 29
+CMAKE_PROGRESS_45 = 30
+CMAKE_PROGRESS_46 =
+CMAKE_PROGRESS_47 = 31
+CMAKE_PROGRESS_48 = 32
+CMAKE_PROGRESS_49 =
+CMAKE_PROGRESS_50 = 33
+CMAKE_PROGRESS_51 = 34
+CMAKE_PROGRESS_52 =
+CMAKE_PROGRESS_53 = 35
+CMAKE_PROGRESS_54 = 36
+CMAKE_PROGRESS_55 =
+CMAKE_PROGRESS_56 = 37
+CMAKE_PROGRESS_57 = 38
+CMAKE_PROGRESS_58 =
+CMAKE_PROGRESS_59 = 39
+CMAKE_PROGRESS_60 = 40
+CMAKE_PROGRESS_61 =
+CMAKE_PROGRESS_62 = 41
+CMAKE_PROGRESS_63 = 42
+CMAKE_PROGRESS_64 =
+CMAKE_PROGRESS_65 = 43
+CMAKE_PROGRESS_66 = 44
+CMAKE_PROGRESS_67 =
+CMAKE_PROGRESS_68 = 45
+CMAKE_PROGRESS_69 = 46
+CMAKE_PROGRESS_70 =
+CMAKE_PROGRESS_71 = 47
+CMAKE_PROGRESS_72 = 48
+CMAKE_PROGRESS_73 =
+CMAKE_PROGRESS_74 = 49
+CMAKE_PROGRESS_75 = 50
+CMAKE_PROGRESS_76 =
+CMAKE_PROGRESS_77 = 51
+CMAKE_PROGRESS_78 = 52
+CMAKE_PROGRESS_79 =
+CMAKE_PROGRESS_80 = 53
+CMAKE_PROGRESS_81 = 54
+CMAKE_PROGRESS_82 =
+CMAKE_PROGRESS_83 = 55
+CMAKE_PROGRESS_84 = 56
+CMAKE_PROGRESS_85 =
+CMAKE_PROGRESS_86 = 57
+CMAKE_PROGRESS_87 = 58
+CMAKE_PROGRESS_88 =
+CMAKE_PROGRESS_89 = 59
+CMAKE_PROGRESS_90 = 60
+CMAKE_PROGRESS_91 =
+CMAKE_PROGRESS_92 = 61
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Relative path conversion top directories.
+SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+
+# Force unix paths in dependencies.
+SET(CMAKE_FORCE_UNIX_PATHS 1)
+
+# The C and CXX include file search paths:
+SET(CMAKE_C_INCLUDE_PATH
+ "/usr/local/include"
+ "src"
+ )
+SET(CMAKE_CXX_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+SET(CMAKE_Fortran_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+
+# The C and CXX include file regular expressions for this directory.
+SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/ccmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target install
+install: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install
+
+# Special rule for the target install
+install/fast: preinstall/fast
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install/fast
+
+# Special rule for the target install/local
+install/local: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
+.PHONY : install/local
+
+# Special rule for the target install/local
+install/local/fast: install/local
+.PHONY : install/local/fast
+
+# Special rule for the target install/strip
+install/strip: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
+.PHONY : install/strip
+
+# Special rule for the target install/strip
+install/strip/fast: install/strip
+.PHONY : install/strip/fast
+
+# Special rule for the target list_install_components
+list_install_components:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
+.PHONY : list_install_components
+
+# Special rule for the target list_install_components
+list_install_components/fast: list_install_components
+.PHONY : list_install_components/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/CMakeFiles/progress.marks
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletCollision/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletCollision/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletCollision/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletCollision/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Convenience name for target.
+src/BulletCollision/CMakeFiles/BulletCollision.dir/rule:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletCollision/CMakeFiles/BulletCollision.dir/rule
+.PHONY : src/BulletCollision/CMakeFiles/BulletCollision.dir/rule
+
+# Convenience name for target.
+BulletCollision: src/BulletCollision/CMakeFiles/BulletCollision.dir/rule
+.PHONY : BulletCollision
+
+# fast build rule for target.
+BulletCollision/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/build
+.PHONY : BulletCollision/fast
+
+# target to build an object file
+BroadphaseCollision/btAxisSweep3.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.o
+.PHONY : BroadphaseCollision/btAxisSweep3.o
+
+# target to preprocess a source file
+BroadphaseCollision/btAxisSweep3.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.i
+.PHONY : BroadphaseCollision/btAxisSweep3.i
+
+# target to generate assembly for a file
+BroadphaseCollision/btAxisSweep3.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btAxisSweep3.s
+.PHONY : BroadphaseCollision/btAxisSweep3.s
+
+# target to build an object file
+BroadphaseCollision/btBroadphaseProxy.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.o
+.PHONY : BroadphaseCollision/btBroadphaseProxy.o
+
+# target to preprocess a source file
+BroadphaseCollision/btBroadphaseProxy.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.i
+.PHONY : BroadphaseCollision/btBroadphaseProxy.i
+
+# target to generate assembly for a file
+BroadphaseCollision/btBroadphaseProxy.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btBroadphaseProxy.s
+.PHONY : BroadphaseCollision/btBroadphaseProxy.s
+
+# target to build an object file
+BroadphaseCollision/btCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.o
+.PHONY : BroadphaseCollision/btCollisionAlgorithm.o
+
+# target to preprocess a source file
+BroadphaseCollision/btCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.i
+.PHONY : BroadphaseCollision/btCollisionAlgorithm.i
+
+# target to generate assembly for a file
+BroadphaseCollision/btCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btCollisionAlgorithm.s
+.PHONY : BroadphaseCollision/btCollisionAlgorithm.s
+
+# target to build an object file
+BroadphaseCollision/btDbvt.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.o
+.PHONY : BroadphaseCollision/btDbvt.o
+
+# target to preprocess a source file
+BroadphaseCollision/btDbvt.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.i
+.PHONY : BroadphaseCollision/btDbvt.i
+
+# target to generate assembly for a file
+BroadphaseCollision/btDbvt.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvt.s
+.PHONY : BroadphaseCollision/btDbvt.s
+
+# target to build an object file
+BroadphaseCollision/btDbvtBroadphase.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.o
+.PHONY : BroadphaseCollision/btDbvtBroadphase.o
+
+# target to preprocess a source file
+BroadphaseCollision/btDbvtBroadphase.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.i
+.PHONY : BroadphaseCollision/btDbvtBroadphase.i
+
+# target to generate assembly for a file
+BroadphaseCollision/btDbvtBroadphase.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDbvtBroadphase.s
+.PHONY : BroadphaseCollision/btDbvtBroadphase.s
+
+# target to build an object file
+BroadphaseCollision/btDispatcher.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.o
+.PHONY : BroadphaseCollision/btDispatcher.o
+
+# target to preprocess a source file
+BroadphaseCollision/btDispatcher.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.i
+.PHONY : BroadphaseCollision/btDispatcher.i
+
+# target to generate assembly for a file
+BroadphaseCollision/btDispatcher.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btDispatcher.s
+.PHONY : BroadphaseCollision/btDispatcher.s
+
+# target to build an object file
+BroadphaseCollision/btMultiSapBroadphase.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.o
+.PHONY : BroadphaseCollision/btMultiSapBroadphase.o
+
+# target to preprocess a source file
+BroadphaseCollision/btMultiSapBroadphase.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.i
+.PHONY : BroadphaseCollision/btMultiSapBroadphase.i
+
+# target to generate assembly for a file
+BroadphaseCollision/btMultiSapBroadphase.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btMultiSapBroadphase.s
+.PHONY : BroadphaseCollision/btMultiSapBroadphase.s
+
+# target to build an object file
+BroadphaseCollision/btOverlappingPairCache.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.o
+.PHONY : BroadphaseCollision/btOverlappingPairCache.o
+
+# target to preprocess a source file
+BroadphaseCollision/btOverlappingPairCache.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.i
+.PHONY : BroadphaseCollision/btOverlappingPairCache.i
+
+# target to generate assembly for a file
+BroadphaseCollision/btOverlappingPairCache.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btOverlappingPairCache.s
+.PHONY : BroadphaseCollision/btOverlappingPairCache.s
+
+# target to build an object file
+BroadphaseCollision/btQuantizedBvh.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.o
+.PHONY : BroadphaseCollision/btQuantizedBvh.o
+
+# target to preprocess a source file
+BroadphaseCollision/btQuantizedBvh.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.i
+.PHONY : BroadphaseCollision/btQuantizedBvh.i
+
+# target to generate assembly for a file
+BroadphaseCollision/btQuantizedBvh.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btQuantizedBvh.s
+.PHONY : BroadphaseCollision/btQuantizedBvh.s
+
+# target to build an object file
+BroadphaseCollision/btSimpleBroadphase.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.o
+.PHONY : BroadphaseCollision/btSimpleBroadphase.o
+
+# target to preprocess a source file
+BroadphaseCollision/btSimpleBroadphase.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.i
+.PHONY : BroadphaseCollision/btSimpleBroadphase.i
+
+# target to generate assembly for a file
+BroadphaseCollision/btSimpleBroadphase.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/BroadphaseCollision/btSimpleBroadphase.s
+.PHONY : BroadphaseCollision/btSimpleBroadphase.s
+
+# target to build an object file
+CollisionDispatch/SphereTriangleDetector.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.o
+.PHONY : CollisionDispatch/SphereTriangleDetector.o
+
+# target to preprocess a source file
+CollisionDispatch/SphereTriangleDetector.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.i
+.PHONY : CollisionDispatch/SphereTriangleDetector.i
+
+# target to generate assembly for a file
+CollisionDispatch/SphereTriangleDetector.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/SphereTriangleDetector.s
+.PHONY : CollisionDispatch/SphereTriangleDetector.s
+
+# target to build an object file
+CollisionDispatch/btActivatingCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.o
+.PHONY : CollisionDispatch/btActivatingCollisionAlgorithm.o
+
+# target to preprocess a source file
+CollisionDispatch/btActivatingCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.i
+.PHONY : CollisionDispatch/btActivatingCollisionAlgorithm.i
+
+# target to generate assembly for a file
+CollisionDispatch/btActivatingCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btActivatingCollisionAlgorithm.s
+.PHONY : CollisionDispatch/btActivatingCollisionAlgorithm.s
+
+# target to build an object file
+CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o
+.PHONY : CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o
+
+# target to preprocess a source file
+CollisionDispatch/btBox2dBox2dCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.i
+.PHONY : CollisionDispatch/btBox2dBox2dCollisionAlgorithm.i
+
+# target to generate assembly for a file
+CollisionDispatch/btBox2dBox2dCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.s
+.PHONY : CollisionDispatch/btBox2dBox2dCollisionAlgorithm.s
+
+# target to build an object file
+CollisionDispatch/btBoxBoxCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.o
+.PHONY : CollisionDispatch/btBoxBoxCollisionAlgorithm.o
+
+# target to preprocess a source file
+CollisionDispatch/btBoxBoxCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.i
+.PHONY : CollisionDispatch/btBoxBoxCollisionAlgorithm.i
+
+# target to generate assembly for a file
+CollisionDispatch/btBoxBoxCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxCollisionAlgorithm.s
+.PHONY : CollisionDispatch/btBoxBoxCollisionAlgorithm.s
+
+# target to build an object file
+CollisionDispatch/btBoxBoxDetector.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.o
+.PHONY : CollisionDispatch/btBoxBoxDetector.o
+
+# target to preprocess a source file
+CollisionDispatch/btBoxBoxDetector.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.i
+.PHONY : CollisionDispatch/btBoxBoxDetector.i
+
+# target to generate assembly for a file
+CollisionDispatch/btBoxBoxDetector.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btBoxBoxDetector.s
+.PHONY : CollisionDispatch/btBoxBoxDetector.s
+
+# target to build an object file
+CollisionDispatch/btCollisionDispatcher.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.o
+.PHONY : CollisionDispatch/btCollisionDispatcher.o
+
+# target to preprocess a source file
+CollisionDispatch/btCollisionDispatcher.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.i
+.PHONY : CollisionDispatch/btCollisionDispatcher.i
+
+# target to generate assembly for a file
+CollisionDispatch/btCollisionDispatcher.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionDispatcher.s
+.PHONY : CollisionDispatch/btCollisionDispatcher.s
+
+# target to build an object file
+CollisionDispatch/btCollisionObject.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.o
+.PHONY : CollisionDispatch/btCollisionObject.o
+
+# target to preprocess a source file
+CollisionDispatch/btCollisionObject.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.i
+.PHONY : CollisionDispatch/btCollisionObject.i
+
+# target to generate assembly for a file
+CollisionDispatch/btCollisionObject.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionObject.s
+.PHONY : CollisionDispatch/btCollisionObject.s
+
+# target to build an object file
+CollisionDispatch/btCollisionWorld.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.o
+.PHONY : CollisionDispatch/btCollisionWorld.o
+
+# target to preprocess a source file
+CollisionDispatch/btCollisionWorld.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.i
+.PHONY : CollisionDispatch/btCollisionWorld.i
+
+# target to generate assembly for a file
+CollisionDispatch/btCollisionWorld.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCollisionWorld.s
+.PHONY : CollisionDispatch/btCollisionWorld.s
+
+# target to build an object file
+CollisionDispatch/btCompoundCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.o
+.PHONY : CollisionDispatch/btCompoundCollisionAlgorithm.o
+
+# target to preprocess a source file
+CollisionDispatch/btCompoundCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.i
+.PHONY : CollisionDispatch/btCompoundCollisionAlgorithm.i
+
+# target to generate assembly for a file
+CollisionDispatch/btCompoundCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btCompoundCollisionAlgorithm.s
+.PHONY : CollisionDispatch/btCompoundCollisionAlgorithm.s
+
+# target to build an object file
+CollisionDispatch/btConvex2dConvex2dAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.o
+.PHONY : CollisionDispatch/btConvex2dConvex2dAlgorithm.o
+
+# target to preprocess a source file
+CollisionDispatch/btConvex2dConvex2dAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.i
+.PHONY : CollisionDispatch/btConvex2dConvex2dAlgorithm.i
+
+# target to generate assembly for a file
+CollisionDispatch/btConvex2dConvex2dAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvex2dConvex2dAlgorithm.s
+.PHONY : CollisionDispatch/btConvex2dConvex2dAlgorithm.s
+
+# target to build an object file
+CollisionDispatch/btConvexConcaveCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.o
+.PHONY : CollisionDispatch/btConvexConcaveCollisionAlgorithm.o
+
+# target to preprocess a source file
+CollisionDispatch/btConvexConcaveCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.i
+.PHONY : CollisionDispatch/btConvexConcaveCollisionAlgorithm.i
+
+# target to generate assembly for a file
+CollisionDispatch/btConvexConcaveCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConcaveCollisionAlgorithm.s
+.PHONY : CollisionDispatch/btConvexConcaveCollisionAlgorithm.s
+
+# target to build an object file
+CollisionDispatch/btConvexConvexAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.o
+.PHONY : CollisionDispatch/btConvexConvexAlgorithm.o
+
+# target to preprocess a source file
+CollisionDispatch/btConvexConvexAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.i
+.PHONY : CollisionDispatch/btConvexConvexAlgorithm.i
+
+# target to generate assembly for a file
+CollisionDispatch/btConvexConvexAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexConvexAlgorithm.s
+.PHONY : CollisionDispatch/btConvexConvexAlgorithm.s
+
+# target to build an object file
+CollisionDispatch/btConvexPlaneCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.o
+.PHONY : CollisionDispatch/btConvexPlaneCollisionAlgorithm.o
+
+# target to preprocess a source file
+CollisionDispatch/btConvexPlaneCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.i
+.PHONY : CollisionDispatch/btConvexPlaneCollisionAlgorithm.i
+
+# target to generate assembly for a file
+CollisionDispatch/btConvexPlaneCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btConvexPlaneCollisionAlgorithm.s
+.PHONY : CollisionDispatch/btConvexPlaneCollisionAlgorithm.s
+
+# target to build an object file
+CollisionDispatch/btDefaultCollisionConfiguration.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.o
+.PHONY : CollisionDispatch/btDefaultCollisionConfiguration.o
+
+# target to preprocess a source file
+CollisionDispatch/btDefaultCollisionConfiguration.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.i
+.PHONY : CollisionDispatch/btDefaultCollisionConfiguration.i
+
+# target to generate assembly for a file
+CollisionDispatch/btDefaultCollisionConfiguration.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btDefaultCollisionConfiguration.s
+.PHONY : CollisionDispatch/btDefaultCollisionConfiguration.s
+
+# target to build an object file
+CollisionDispatch/btEmptyCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.o
+.PHONY : CollisionDispatch/btEmptyCollisionAlgorithm.o
+
+# target to preprocess a source file
+CollisionDispatch/btEmptyCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.i
+.PHONY : CollisionDispatch/btEmptyCollisionAlgorithm.i
+
+# target to generate assembly for a file
+CollisionDispatch/btEmptyCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btEmptyCollisionAlgorithm.s
+.PHONY : CollisionDispatch/btEmptyCollisionAlgorithm.s
+
+# target to build an object file
+CollisionDispatch/btGhostObject.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.o
+.PHONY : CollisionDispatch/btGhostObject.o
+
+# target to preprocess a source file
+CollisionDispatch/btGhostObject.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.i
+.PHONY : CollisionDispatch/btGhostObject.i
+
+# target to generate assembly for a file
+CollisionDispatch/btGhostObject.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btGhostObject.s
+.PHONY : CollisionDispatch/btGhostObject.s
+
+# target to build an object file
+CollisionDispatch/btInternalEdgeUtility.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.o
+.PHONY : CollisionDispatch/btInternalEdgeUtility.o
+
+# target to preprocess a source file
+CollisionDispatch/btInternalEdgeUtility.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.i
+.PHONY : CollisionDispatch/btInternalEdgeUtility.i
+
+# target to generate assembly for a file
+CollisionDispatch/btInternalEdgeUtility.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btInternalEdgeUtility.s
+.PHONY : CollisionDispatch/btInternalEdgeUtility.s
+
+# target to build an object file
+CollisionDispatch/btManifoldResult.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.o
+.PHONY : CollisionDispatch/btManifoldResult.o
+
+# target to preprocess a source file
+CollisionDispatch/btManifoldResult.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.i
+.PHONY : CollisionDispatch/btManifoldResult.i
+
+# target to generate assembly for a file
+CollisionDispatch/btManifoldResult.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btManifoldResult.s
+.PHONY : CollisionDispatch/btManifoldResult.s
+
+# target to build an object file
+CollisionDispatch/btSimulationIslandManager.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.o
+.PHONY : CollisionDispatch/btSimulationIslandManager.o
+
+# target to preprocess a source file
+CollisionDispatch/btSimulationIslandManager.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.i
+.PHONY : CollisionDispatch/btSimulationIslandManager.i
+
+# target to generate assembly for a file
+CollisionDispatch/btSimulationIslandManager.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSimulationIslandManager.s
+.PHONY : CollisionDispatch/btSimulationIslandManager.s
+
+# target to build an object file
+CollisionDispatch/btSphereBoxCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.o
+.PHONY : CollisionDispatch/btSphereBoxCollisionAlgorithm.o
+
+# target to preprocess a source file
+CollisionDispatch/btSphereBoxCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.i
+.PHONY : CollisionDispatch/btSphereBoxCollisionAlgorithm.i
+
+# target to generate assembly for a file
+CollisionDispatch/btSphereBoxCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereBoxCollisionAlgorithm.s
+.PHONY : CollisionDispatch/btSphereBoxCollisionAlgorithm.s
+
+# target to build an object file
+CollisionDispatch/btSphereSphereCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.o
+.PHONY : CollisionDispatch/btSphereSphereCollisionAlgorithm.o
+
+# target to preprocess a source file
+CollisionDispatch/btSphereSphereCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.i
+.PHONY : CollisionDispatch/btSphereSphereCollisionAlgorithm.i
+
+# target to generate assembly for a file
+CollisionDispatch/btSphereSphereCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereSphereCollisionAlgorithm.s
+.PHONY : CollisionDispatch/btSphereSphereCollisionAlgorithm.s
+
+# target to build an object file
+CollisionDispatch/btSphereTriangleCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.o
+.PHONY : CollisionDispatch/btSphereTriangleCollisionAlgorithm.o
+
+# target to preprocess a source file
+CollisionDispatch/btSphereTriangleCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.i
+.PHONY : CollisionDispatch/btSphereTriangleCollisionAlgorithm.i
+
+# target to generate assembly for a file
+CollisionDispatch/btSphereTriangleCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btSphereTriangleCollisionAlgorithm.s
+.PHONY : CollisionDispatch/btSphereTriangleCollisionAlgorithm.s
+
+# target to build an object file
+CollisionDispatch/btUnionFind.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.o
+.PHONY : CollisionDispatch/btUnionFind.o
+
+# target to preprocess a source file
+CollisionDispatch/btUnionFind.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.i
+.PHONY : CollisionDispatch/btUnionFind.i
+
+# target to generate assembly for a file
+CollisionDispatch/btUnionFind.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionDispatch/btUnionFind.s
+.PHONY : CollisionDispatch/btUnionFind.s
+
+# target to build an object file
+CollisionShapes/btBox2dShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.o
+.PHONY : CollisionShapes/btBox2dShape.o
+
+# target to preprocess a source file
+CollisionShapes/btBox2dShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.i
+.PHONY : CollisionShapes/btBox2dShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btBox2dShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBox2dShape.s
+.PHONY : CollisionShapes/btBox2dShape.s
+
+# target to build an object file
+CollisionShapes/btBoxShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.o
+.PHONY : CollisionShapes/btBoxShape.o
+
+# target to preprocess a source file
+CollisionShapes/btBoxShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.i
+.PHONY : CollisionShapes/btBoxShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btBoxShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBoxShape.s
+.PHONY : CollisionShapes/btBoxShape.s
+
+# target to build an object file
+CollisionShapes/btBvhTriangleMeshShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.o
+.PHONY : CollisionShapes/btBvhTriangleMeshShape.o
+
+# target to preprocess a source file
+CollisionShapes/btBvhTriangleMeshShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.i
+.PHONY : CollisionShapes/btBvhTriangleMeshShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btBvhTriangleMeshShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btBvhTriangleMeshShape.s
+.PHONY : CollisionShapes/btBvhTriangleMeshShape.s
+
+# target to build an object file
+CollisionShapes/btCapsuleShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.o
+.PHONY : CollisionShapes/btCapsuleShape.o
+
+# target to preprocess a source file
+CollisionShapes/btCapsuleShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.i
+.PHONY : CollisionShapes/btCapsuleShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btCapsuleShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCapsuleShape.s
+.PHONY : CollisionShapes/btCapsuleShape.s
+
+# target to build an object file
+CollisionShapes/btCollisionShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.o
+.PHONY : CollisionShapes/btCollisionShape.o
+
+# target to preprocess a source file
+CollisionShapes/btCollisionShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.i
+.PHONY : CollisionShapes/btCollisionShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btCollisionShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCollisionShape.s
+.PHONY : CollisionShapes/btCollisionShape.s
+
+# target to build an object file
+CollisionShapes/btCompoundShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.o
+.PHONY : CollisionShapes/btCompoundShape.o
+
+# target to preprocess a source file
+CollisionShapes/btCompoundShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.i
+.PHONY : CollisionShapes/btCompoundShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btCompoundShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCompoundShape.s
+.PHONY : CollisionShapes/btCompoundShape.s
+
+# target to build an object file
+CollisionShapes/btConcaveShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.o
+.PHONY : CollisionShapes/btConcaveShape.o
+
+# target to preprocess a source file
+CollisionShapes/btConcaveShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.i
+.PHONY : CollisionShapes/btConcaveShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btConcaveShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConcaveShape.s
+.PHONY : CollisionShapes/btConcaveShape.s
+
+# target to build an object file
+CollisionShapes/btConeShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.o
+.PHONY : CollisionShapes/btConeShape.o
+
+# target to preprocess a source file
+CollisionShapes/btConeShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.i
+.PHONY : CollisionShapes/btConeShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btConeShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConeShape.s
+.PHONY : CollisionShapes/btConeShape.s
+
+# target to build an object file
+CollisionShapes/btConvex2dShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.o
+.PHONY : CollisionShapes/btConvex2dShape.o
+
+# target to preprocess a source file
+CollisionShapes/btConvex2dShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.i
+.PHONY : CollisionShapes/btConvex2dShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btConvex2dShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvex2dShape.s
+.PHONY : CollisionShapes/btConvex2dShape.s
+
+# target to build an object file
+CollisionShapes/btConvexHullShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.o
+.PHONY : CollisionShapes/btConvexHullShape.o
+
+# target to preprocess a source file
+CollisionShapes/btConvexHullShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.i
+.PHONY : CollisionShapes/btConvexHullShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btConvexHullShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexHullShape.s
+.PHONY : CollisionShapes/btConvexHullShape.s
+
+# target to build an object file
+CollisionShapes/btConvexInternalShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.o
+.PHONY : CollisionShapes/btConvexInternalShape.o
+
+# target to preprocess a source file
+CollisionShapes/btConvexInternalShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.i
+.PHONY : CollisionShapes/btConvexInternalShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btConvexInternalShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexInternalShape.s
+.PHONY : CollisionShapes/btConvexInternalShape.s
+
+# target to build an object file
+CollisionShapes/btConvexPointCloudShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.o
+.PHONY : CollisionShapes/btConvexPointCloudShape.o
+
+# target to preprocess a source file
+CollisionShapes/btConvexPointCloudShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.i
+.PHONY : CollisionShapes/btConvexPointCloudShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btConvexPointCloudShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPointCloudShape.s
+.PHONY : CollisionShapes/btConvexPointCloudShape.s
+
+# target to build an object file
+CollisionShapes/btConvexPolyhedron.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.o
+.PHONY : CollisionShapes/btConvexPolyhedron.o
+
+# target to preprocess a source file
+CollisionShapes/btConvexPolyhedron.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.i
+.PHONY : CollisionShapes/btConvexPolyhedron.i
+
+# target to generate assembly for a file
+CollisionShapes/btConvexPolyhedron.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexPolyhedron.s
+.PHONY : CollisionShapes/btConvexPolyhedron.s
+
+# target to build an object file
+CollisionShapes/btConvexShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.o
+.PHONY : CollisionShapes/btConvexShape.o
+
+# target to preprocess a source file
+CollisionShapes/btConvexShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.i
+.PHONY : CollisionShapes/btConvexShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btConvexShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexShape.s
+.PHONY : CollisionShapes/btConvexShape.s
+
+# target to build an object file
+CollisionShapes/btConvexTriangleMeshShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.o
+.PHONY : CollisionShapes/btConvexTriangleMeshShape.o
+
+# target to preprocess a source file
+CollisionShapes/btConvexTriangleMeshShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.i
+.PHONY : CollisionShapes/btConvexTriangleMeshShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btConvexTriangleMeshShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btConvexTriangleMeshShape.s
+.PHONY : CollisionShapes/btConvexTriangleMeshShape.s
+
+# target to build an object file
+CollisionShapes/btCylinderShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.o
+.PHONY : CollisionShapes/btCylinderShape.o
+
+# target to preprocess a source file
+CollisionShapes/btCylinderShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.i
+.PHONY : CollisionShapes/btCylinderShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btCylinderShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btCylinderShape.s
+.PHONY : CollisionShapes/btCylinderShape.s
+
+# target to build an object file
+CollisionShapes/btEmptyShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.o
+.PHONY : CollisionShapes/btEmptyShape.o
+
+# target to preprocess a source file
+CollisionShapes/btEmptyShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.i
+.PHONY : CollisionShapes/btEmptyShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btEmptyShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btEmptyShape.s
+.PHONY : CollisionShapes/btEmptyShape.s
+
+# target to build an object file
+CollisionShapes/btHeightfieldTerrainShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.o
+.PHONY : CollisionShapes/btHeightfieldTerrainShape.o
+
+# target to preprocess a source file
+CollisionShapes/btHeightfieldTerrainShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.i
+.PHONY : CollisionShapes/btHeightfieldTerrainShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btHeightfieldTerrainShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btHeightfieldTerrainShape.s
+.PHONY : CollisionShapes/btHeightfieldTerrainShape.s
+
+# target to build an object file
+CollisionShapes/btMinkowskiSumShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.o
+.PHONY : CollisionShapes/btMinkowskiSumShape.o
+
+# target to preprocess a source file
+CollisionShapes/btMinkowskiSumShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.i
+.PHONY : CollisionShapes/btMinkowskiSumShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btMinkowskiSumShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMinkowskiSumShape.s
+.PHONY : CollisionShapes/btMinkowskiSumShape.s
+
+# target to build an object file
+CollisionShapes/btMultiSphereShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.o
+.PHONY : CollisionShapes/btMultiSphereShape.o
+
+# target to preprocess a source file
+CollisionShapes/btMultiSphereShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.i
+.PHONY : CollisionShapes/btMultiSphereShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btMultiSphereShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultiSphereShape.s
+.PHONY : CollisionShapes/btMultiSphereShape.s
+
+# target to build an object file
+CollisionShapes/btMultimaterialTriangleMeshShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.o
+.PHONY : CollisionShapes/btMultimaterialTriangleMeshShape.o
+
+# target to preprocess a source file
+CollisionShapes/btMultimaterialTriangleMeshShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.i
+.PHONY : CollisionShapes/btMultimaterialTriangleMeshShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btMultimaterialTriangleMeshShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btMultimaterialTriangleMeshShape.s
+.PHONY : CollisionShapes/btMultimaterialTriangleMeshShape.s
+
+# target to build an object file
+CollisionShapes/btOptimizedBvh.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.o
+.PHONY : CollisionShapes/btOptimizedBvh.o
+
+# target to preprocess a source file
+CollisionShapes/btOptimizedBvh.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.i
+.PHONY : CollisionShapes/btOptimizedBvh.i
+
+# target to generate assembly for a file
+CollisionShapes/btOptimizedBvh.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btOptimizedBvh.s
+.PHONY : CollisionShapes/btOptimizedBvh.s
+
+# target to build an object file
+CollisionShapes/btPolyhedralConvexShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.o
+.PHONY : CollisionShapes/btPolyhedralConvexShape.o
+
+# target to preprocess a source file
+CollisionShapes/btPolyhedralConvexShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.i
+.PHONY : CollisionShapes/btPolyhedralConvexShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btPolyhedralConvexShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btPolyhedralConvexShape.s
+.PHONY : CollisionShapes/btPolyhedralConvexShape.s
+
+# target to build an object file
+CollisionShapes/btScaledBvhTriangleMeshShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.o
+.PHONY : CollisionShapes/btScaledBvhTriangleMeshShape.o
+
+# target to preprocess a source file
+CollisionShapes/btScaledBvhTriangleMeshShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.i
+.PHONY : CollisionShapes/btScaledBvhTriangleMeshShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btScaledBvhTriangleMeshShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btScaledBvhTriangleMeshShape.s
+.PHONY : CollisionShapes/btScaledBvhTriangleMeshShape.s
+
+# target to build an object file
+CollisionShapes/btShapeHull.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.o
+.PHONY : CollisionShapes/btShapeHull.o
+
+# target to preprocess a source file
+CollisionShapes/btShapeHull.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.i
+.PHONY : CollisionShapes/btShapeHull.i
+
+# target to generate assembly for a file
+CollisionShapes/btShapeHull.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btShapeHull.s
+.PHONY : CollisionShapes/btShapeHull.s
+
+# target to build an object file
+CollisionShapes/btSphereShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.o
+.PHONY : CollisionShapes/btSphereShape.o
+
+# target to preprocess a source file
+CollisionShapes/btSphereShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.i
+.PHONY : CollisionShapes/btSphereShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btSphereShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btSphereShape.s
+.PHONY : CollisionShapes/btSphereShape.s
+
+# target to build an object file
+CollisionShapes/btStaticPlaneShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.o
+.PHONY : CollisionShapes/btStaticPlaneShape.o
+
+# target to preprocess a source file
+CollisionShapes/btStaticPlaneShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.i
+.PHONY : CollisionShapes/btStaticPlaneShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btStaticPlaneShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStaticPlaneShape.s
+.PHONY : CollisionShapes/btStaticPlaneShape.s
+
+# target to build an object file
+CollisionShapes/btStridingMeshInterface.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.o
+.PHONY : CollisionShapes/btStridingMeshInterface.o
+
+# target to preprocess a source file
+CollisionShapes/btStridingMeshInterface.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.i
+.PHONY : CollisionShapes/btStridingMeshInterface.i
+
+# target to generate assembly for a file
+CollisionShapes/btStridingMeshInterface.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btStridingMeshInterface.s
+.PHONY : CollisionShapes/btStridingMeshInterface.s
+
+# target to build an object file
+CollisionShapes/btTetrahedronShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.o
+.PHONY : CollisionShapes/btTetrahedronShape.o
+
+# target to preprocess a source file
+CollisionShapes/btTetrahedronShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.i
+.PHONY : CollisionShapes/btTetrahedronShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btTetrahedronShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTetrahedronShape.s
+.PHONY : CollisionShapes/btTetrahedronShape.s
+
+# target to build an object file
+CollisionShapes/btTriangleBuffer.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.o
+.PHONY : CollisionShapes/btTriangleBuffer.o
+
+# target to preprocess a source file
+CollisionShapes/btTriangleBuffer.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.i
+.PHONY : CollisionShapes/btTriangleBuffer.i
+
+# target to generate assembly for a file
+CollisionShapes/btTriangleBuffer.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleBuffer.s
+.PHONY : CollisionShapes/btTriangleBuffer.s
+
+# target to build an object file
+CollisionShapes/btTriangleCallback.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.o
+.PHONY : CollisionShapes/btTriangleCallback.o
+
+# target to preprocess a source file
+CollisionShapes/btTriangleCallback.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.i
+.PHONY : CollisionShapes/btTriangleCallback.i
+
+# target to generate assembly for a file
+CollisionShapes/btTriangleCallback.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleCallback.s
+.PHONY : CollisionShapes/btTriangleCallback.s
+
+# target to build an object file
+CollisionShapes/btTriangleIndexVertexArray.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.o
+.PHONY : CollisionShapes/btTriangleIndexVertexArray.o
+
+# target to preprocess a source file
+CollisionShapes/btTriangleIndexVertexArray.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.i
+.PHONY : CollisionShapes/btTriangleIndexVertexArray.i
+
+# target to generate assembly for a file
+CollisionShapes/btTriangleIndexVertexArray.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexArray.s
+.PHONY : CollisionShapes/btTriangleIndexVertexArray.s
+
+# target to build an object file
+CollisionShapes/btTriangleIndexVertexMaterialArray.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.o
+.PHONY : CollisionShapes/btTriangleIndexVertexMaterialArray.o
+
+# target to preprocess a source file
+CollisionShapes/btTriangleIndexVertexMaterialArray.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.i
+.PHONY : CollisionShapes/btTriangleIndexVertexMaterialArray.i
+
+# target to generate assembly for a file
+CollisionShapes/btTriangleIndexVertexMaterialArray.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleIndexVertexMaterialArray.s
+.PHONY : CollisionShapes/btTriangleIndexVertexMaterialArray.s
+
+# target to build an object file
+CollisionShapes/btTriangleMesh.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.o
+.PHONY : CollisionShapes/btTriangleMesh.o
+
+# target to preprocess a source file
+CollisionShapes/btTriangleMesh.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.i
+.PHONY : CollisionShapes/btTriangleMesh.i
+
+# target to generate assembly for a file
+CollisionShapes/btTriangleMesh.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMesh.s
+.PHONY : CollisionShapes/btTriangleMesh.s
+
+# target to build an object file
+CollisionShapes/btTriangleMeshShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.o
+.PHONY : CollisionShapes/btTriangleMeshShape.o
+
+# target to preprocess a source file
+CollisionShapes/btTriangleMeshShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.i
+.PHONY : CollisionShapes/btTriangleMeshShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btTriangleMeshShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btTriangleMeshShape.s
+.PHONY : CollisionShapes/btTriangleMeshShape.s
+
+# target to build an object file
+CollisionShapes/btUniformScalingShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.o
+.PHONY : CollisionShapes/btUniformScalingShape.o
+
+# target to preprocess a source file
+CollisionShapes/btUniformScalingShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.i
+.PHONY : CollisionShapes/btUniformScalingShape.i
+
+# target to generate assembly for a file
+CollisionShapes/btUniformScalingShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/CollisionShapes/btUniformScalingShape.s
+.PHONY : CollisionShapes/btUniformScalingShape.s
+
+# target to build an object file
+Gimpact/btContactProcessing.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.o
+.PHONY : Gimpact/btContactProcessing.o
+
+# target to preprocess a source file
+Gimpact/btContactProcessing.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.i
+.PHONY : Gimpact/btContactProcessing.i
+
+# target to generate assembly for a file
+Gimpact/btContactProcessing.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btContactProcessing.s
+.PHONY : Gimpact/btContactProcessing.s
+
+# target to build an object file
+Gimpact/btGImpactBvh.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.o
+.PHONY : Gimpact/btGImpactBvh.o
+
+# target to preprocess a source file
+Gimpact/btGImpactBvh.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.i
+.PHONY : Gimpact/btGImpactBvh.i
+
+# target to generate assembly for a file
+Gimpact/btGImpactBvh.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactBvh.s
+.PHONY : Gimpact/btGImpactBvh.s
+
+# target to build an object file
+Gimpact/btGImpactCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.o
+.PHONY : Gimpact/btGImpactCollisionAlgorithm.o
+
+# target to preprocess a source file
+Gimpact/btGImpactCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.i
+.PHONY : Gimpact/btGImpactCollisionAlgorithm.i
+
+# target to generate assembly for a file
+Gimpact/btGImpactCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactCollisionAlgorithm.s
+.PHONY : Gimpact/btGImpactCollisionAlgorithm.s
+
+# target to build an object file
+Gimpact/btGImpactQuantizedBvh.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.o
+.PHONY : Gimpact/btGImpactQuantizedBvh.o
+
+# target to preprocess a source file
+Gimpact/btGImpactQuantizedBvh.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.i
+.PHONY : Gimpact/btGImpactQuantizedBvh.i
+
+# target to generate assembly for a file
+Gimpact/btGImpactQuantizedBvh.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactQuantizedBvh.s
+.PHONY : Gimpact/btGImpactQuantizedBvh.s
+
+# target to build an object file
+Gimpact/btGImpactShape.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.o
+.PHONY : Gimpact/btGImpactShape.o
+
+# target to preprocess a source file
+Gimpact/btGImpactShape.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.i
+.PHONY : Gimpact/btGImpactShape.i
+
+# target to generate assembly for a file
+Gimpact/btGImpactShape.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGImpactShape.s
+.PHONY : Gimpact/btGImpactShape.s
+
+# target to build an object file
+Gimpact/btGenericPoolAllocator.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.o
+.PHONY : Gimpact/btGenericPoolAllocator.o
+
+# target to preprocess a source file
+Gimpact/btGenericPoolAllocator.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.i
+.PHONY : Gimpact/btGenericPoolAllocator.i
+
+# target to generate assembly for a file
+Gimpact/btGenericPoolAllocator.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btGenericPoolAllocator.s
+.PHONY : Gimpact/btGenericPoolAllocator.s
+
+# target to build an object file
+Gimpact/btTriangleShapeEx.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.o
+.PHONY : Gimpact/btTriangleShapeEx.o
+
+# target to preprocess a source file
+Gimpact/btTriangleShapeEx.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.i
+.PHONY : Gimpact/btTriangleShapeEx.i
+
+# target to generate assembly for a file
+Gimpact/btTriangleShapeEx.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/btTriangleShapeEx.s
+.PHONY : Gimpact/btTriangleShapeEx.s
+
+# target to build an object file
+Gimpact/gim_box_set.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.o
+.PHONY : Gimpact/gim_box_set.o
+
+# target to preprocess a source file
+Gimpact/gim_box_set.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.i
+.PHONY : Gimpact/gim_box_set.i
+
+# target to generate assembly for a file
+Gimpact/gim_box_set.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_box_set.s
+.PHONY : Gimpact/gim_box_set.s
+
+# target to build an object file
+Gimpact/gim_contact.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.o
+.PHONY : Gimpact/gim_contact.o
+
+# target to preprocess a source file
+Gimpact/gim_contact.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.i
+.PHONY : Gimpact/gim_contact.i
+
+# target to generate assembly for a file
+Gimpact/gim_contact.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_contact.s
+.PHONY : Gimpact/gim_contact.s
+
+# target to build an object file
+Gimpact/gim_memory.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.o
+.PHONY : Gimpact/gim_memory.o
+
+# target to preprocess a source file
+Gimpact/gim_memory.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.i
+.PHONY : Gimpact/gim_memory.i
+
+# target to generate assembly for a file
+Gimpact/gim_memory.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_memory.s
+.PHONY : Gimpact/gim_memory.s
+
+# target to build an object file
+Gimpact/gim_tri_collision.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.o
+.PHONY : Gimpact/gim_tri_collision.o
+
+# target to preprocess a source file
+Gimpact/gim_tri_collision.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.i
+.PHONY : Gimpact/gim_tri_collision.i
+
+# target to generate assembly for a file
+Gimpact/gim_tri_collision.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/Gimpact/gim_tri_collision.s
+.PHONY : Gimpact/gim_tri_collision.s
+
+# target to build an object file
+NarrowPhaseCollision/btContinuousConvexCollision.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.o
+.PHONY : NarrowPhaseCollision/btContinuousConvexCollision.o
+
+# target to preprocess a source file
+NarrowPhaseCollision/btContinuousConvexCollision.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.i
+.PHONY : NarrowPhaseCollision/btContinuousConvexCollision.i
+
+# target to generate assembly for a file
+NarrowPhaseCollision/btContinuousConvexCollision.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btContinuousConvexCollision.s
+.PHONY : NarrowPhaseCollision/btContinuousConvexCollision.s
+
+# target to build an object file
+NarrowPhaseCollision/btConvexCast.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.o
+.PHONY : NarrowPhaseCollision/btConvexCast.o
+
+# target to preprocess a source file
+NarrowPhaseCollision/btConvexCast.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.i
+.PHONY : NarrowPhaseCollision/btConvexCast.i
+
+# target to generate assembly for a file
+NarrowPhaseCollision/btConvexCast.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btConvexCast.s
+.PHONY : NarrowPhaseCollision/btConvexCast.s
+
+# target to build an object file
+NarrowPhaseCollision/btGjkConvexCast.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.o
+.PHONY : NarrowPhaseCollision/btGjkConvexCast.o
+
+# target to preprocess a source file
+NarrowPhaseCollision/btGjkConvexCast.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.i
+.PHONY : NarrowPhaseCollision/btGjkConvexCast.i
+
+# target to generate assembly for a file
+NarrowPhaseCollision/btGjkConvexCast.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkConvexCast.s
+.PHONY : NarrowPhaseCollision/btGjkConvexCast.s
+
+# target to build an object file
+NarrowPhaseCollision/btGjkEpa2.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.o
+.PHONY : NarrowPhaseCollision/btGjkEpa2.o
+
+# target to preprocess a source file
+NarrowPhaseCollision/btGjkEpa2.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.i
+.PHONY : NarrowPhaseCollision/btGjkEpa2.i
+
+# target to generate assembly for a file
+NarrowPhaseCollision/btGjkEpa2.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpa2.s
+.PHONY : NarrowPhaseCollision/btGjkEpa2.s
+
+# target to build an object file
+NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o
+.PHONY : NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o
+
+# target to preprocess a source file
+NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.i
+.PHONY : NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.i
+
+# target to generate assembly for a file
+NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.s
+.PHONY : NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.s
+
+# target to build an object file
+NarrowPhaseCollision/btGjkPairDetector.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.o
+.PHONY : NarrowPhaseCollision/btGjkPairDetector.o
+
+# target to preprocess a source file
+NarrowPhaseCollision/btGjkPairDetector.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.i
+.PHONY : NarrowPhaseCollision/btGjkPairDetector.i
+
+# target to generate assembly for a file
+NarrowPhaseCollision/btGjkPairDetector.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btGjkPairDetector.s
+.PHONY : NarrowPhaseCollision/btGjkPairDetector.s
+
+# target to build an object file
+NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o
+.PHONY : NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o
+
+# target to preprocess a source file
+NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.i
+.PHONY : NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.i
+
+# target to generate assembly for a file
+NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.s
+.PHONY : NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.s
+
+# target to build an object file
+NarrowPhaseCollision/btPersistentManifold.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.o
+.PHONY : NarrowPhaseCollision/btPersistentManifold.o
+
+# target to preprocess a source file
+NarrowPhaseCollision/btPersistentManifold.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.i
+.PHONY : NarrowPhaseCollision/btPersistentManifold.i
+
+# target to generate assembly for a file
+NarrowPhaseCollision/btPersistentManifold.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPersistentManifold.s
+.PHONY : NarrowPhaseCollision/btPersistentManifold.s
+
+# target to build an object file
+NarrowPhaseCollision/btPolyhedralContactClipping.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.o
+.PHONY : NarrowPhaseCollision/btPolyhedralContactClipping.o
+
+# target to preprocess a source file
+NarrowPhaseCollision/btPolyhedralContactClipping.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.i
+.PHONY : NarrowPhaseCollision/btPolyhedralContactClipping.i
+
+# target to generate assembly for a file
+NarrowPhaseCollision/btPolyhedralContactClipping.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btPolyhedralContactClipping.s
+.PHONY : NarrowPhaseCollision/btPolyhedralContactClipping.s
+
+# target to build an object file
+NarrowPhaseCollision/btRaycastCallback.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.o
+.PHONY : NarrowPhaseCollision/btRaycastCallback.o
+
+# target to preprocess a source file
+NarrowPhaseCollision/btRaycastCallback.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.i
+.PHONY : NarrowPhaseCollision/btRaycastCallback.i
+
+# target to generate assembly for a file
+NarrowPhaseCollision/btRaycastCallback.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btRaycastCallback.s
+.PHONY : NarrowPhaseCollision/btRaycastCallback.s
+
+# target to build an object file
+NarrowPhaseCollision/btSubSimplexConvexCast.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.o
+.PHONY : NarrowPhaseCollision/btSubSimplexConvexCast.o
+
+# target to preprocess a source file
+NarrowPhaseCollision/btSubSimplexConvexCast.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.i
+.PHONY : NarrowPhaseCollision/btSubSimplexConvexCast.i
+
+# target to generate assembly for a file
+NarrowPhaseCollision/btSubSimplexConvexCast.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btSubSimplexConvexCast.s
+.PHONY : NarrowPhaseCollision/btSubSimplexConvexCast.s
+
+# target to build an object file
+NarrowPhaseCollision/btVoronoiSimplexSolver.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.o
+.PHONY : NarrowPhaseCollision/btVoronoiSimplexSolver.o
+
+# target to preprocess a source file
+NarrowPhaseCollision/btVoronoiSimplexSolver.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.i
+.PHONY : NarrowPhaseCollision/btVoronoiSimplexSolver.i
+
+# target to generate assembly for a file
+NarrowPhaseCollision/btVoronoiSimplexSolver.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletCollision/CMakeFiles/BulletCollision.dir/build.make src/BulletCollision/CMakeFiles/BulletCollision.dir/NarrowPhaseCollision/btVoronoiSimplexSolver.s
+.PHONY : NarrowPhaseCollision/btVoronoiSimplexSolver.s
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... BulletCollision"
+ @echo "... edit_cache"
+ @echo "... install"
+ @echo "... install/local"
+ @echo "... install/strip"
+ @echo "... list_install_components"
+ @echo "... rebuild_cache"
+ @echo "... BroadphaseCollision/btAxisSweep3.o"
+ @echo "... BroadphaseCollision/btAxisSweep3.i"
+ @echo "... BroadphaseCollision/btAxisSweep3.s"
+ @echo "... BroadphaseCollision/btBroadphaseProxy.o"
+ @echo "... BroadphaseCollision/btBroadphaseProxy.i"
+ @echo "... BroadphaseCollision/btBroadphaseProxy.s"
+ @echo "... BroadphaseCollision/btCollisionAlgorithm.o"
+ @echo "... BroadphaseCollision/btCollisionAlgorithm.i"
+ @echo "... BroadphaseCollision/btCollisionAlgorithm.s"
+ @echo "... BroadphaseCollision/btDbvt.o"
+ @echo "... BroadphaseCollision/btDbvt.i"
+ @echo "... BroadphaseCollision/btDbvt.s"
+ @echo "... BroadphaseCollision/btDbvtBroadphase.o"
+ @echo "... BroadphaseCollision/btDbvtBroadphase.i"
+ @echo "... BroadphaseCollision/btDbvtBroadphase.s"
+ @echo "... BroadphaseCollision/btDispatcher.o"
+ @echo "... BroadphaseCollision/btDispatcher.i"
+ @echo "... BroadphaseCollision/btDispatcher.s"
+ @echo "... BroadphaseCollision/btMultiSapBroadphase.o"
+ @echo "... BroadphaseCollision/btMultiSapBroadphase.i"
+ @echo "... BroadphaseCollision/btMultiSapBroadphase.s"
+ @echo "... BroadphaseCollision/btOverlappingPairCache.o"
+ @echo "... BroadphaseCollision/btOverlappingPairCache.i"
+ @echo "... BroadphaseCollision/btOverlappingPairCache.s"
+ @echo "... BroadphaseCollision/btQuantizedBvh.o"
+ @echo "... BroadphaseCollision/btQuantizedBvh.i"
+ @echo "... BroadphaseCollision/btQuantizedBvh.s"
+ @echo "... BroadphaseCollision/btSimpleBroadphase.o"
+ @echo "... BroadphaseCollision/btSimpleBroadphase.i"
+ @echo "... BroadphaseCollision/btSimpleBroadphase.s"
+ @echo "... CollisionDispatch/SphereTriangleDetector.o"
+ @echo "... CollisionDispatch/SphereTriangleDetector.i"
+ @echo "... CollisionDispatch/SphereTriangleDetector.s"
+ @echo "... CollisionDispatch/btActivatingCollisionAlgorithm.o"
+ @echo "... CollisionDispatch/btActivatingCollisionAlgorithm.i"
+ @echo "... CollisionDispatch/btActivatingCollisionAlgorithm.s"
+ @echo "... CollisionDispatch/btBox2dBox2dCollisionAlgorithm.o"
+ @echo "... CollisionDispatch/btBox2dBox2dCollisionAlgorithm.i"
+ @echo "... CollisionDispatch/btBox2dBox2dCollisionAlgorithm.s"
+ @echo "... CollisionDispatch/btBoxBoxCollisionAlgorithm.o"
+ @echo "... CollisionDispatch/btBoxBoxCollisionAlgorithm.i"
+ @echo "... CollisionDispatch/btBoxBoxCollisionAlgorithm.s"
+ @echo "... CollisionDispatch/btBoxBoxDetector.o"
+ @echo "... CollisionDispatch/btBoxBoxDetector.i"
+ @echo "... CollisionDispatch/btBoxBoxDetector.s"
+ @echo "... CollisionDispatch/btCollisionDispatcher.o"
+ @echo "... CollisionDispatch/btCollisionDispatcher.i"
+ @echo "... CollisionDispatch/btCollisionDispatcher.s"
+ @echo "... CollisionDispatch/btCollisionObject.o"
+ @echo "... CollisionDispatch/btCollisionObject.i"
+ @echo "... CollisionDispatch/btCollisionObject.s"
+ @echo "... CollisionDispatch/btCollisionWorld.o"
+ @echo "... CollisionDispatch/btCollisionWorld.i"
+ @echo "... CollisionDispatch/btCollisionWorld.s"
+ @echo "... CollisionDispatch/btCompoundCollisionAlgorithm.o"
+ @echo "... CollisionDispatch/btCompoundCollisionAlgorithm.i"
+ @echo "... CollisionDispatch/btCompoundCollisionAlgorithm.s"
+ @echo "... CollisionDispatch/btConvex2dConvex2dAlgorithm.o"
+ @echo "... CollisionDispatch/btConvex2dConvex2dAlgorithm.i"
+ @echo "... CollisionDispatch/btConvex2dConvex2dAlgorithm.s"
+ @echo "... CollisionDispatch/btConvexConcaveCollisionAlgorithm.o"
+ @echo "... CollisionDispatch/btConvexConcaveCollisionAlgorithm.i"
+ @echo "... CollisionDispatch/btConvexConcaveCollisionAlgorithm.s"
+ @echo "... CollisionDispatch/btConvexConvexAlgorithm.o"
+ @echo "... CollisionDispatch/btConvexConvexAlgorithm.i"
+ @echo "... CollisionDispatch/btConvexConvexAlgorithm.s"
+ @echo "... CollisionDispatch/btConvexPlaneCollisionAlgorithm.o"
+ @echo "... CollisionDispatch/btConvexPlaneCollisionAlgorithm.i"
+ @echo "... CollisionDispatch/btConvexPlaneCollisionAlgorithm.s"
+ @echo "... CollisionDispatch/btDefaultCollisionConfiguration.o"
+ @echo "... CollisionDispatch/btDefaultCollisionConfiguration.i"
+ @echo "... CollisionDispatch/btDefaultCollisionConfiguration.s"
+ @echo "... CollisionDispatch/btEmptyCollisionAlgorithm.o"
+ @echo "... CollisionDispatch/btEmptyCollisionAlgorithm.i"
+ @echo "... CollisionDispatch/btEmptyCollisionAlgorithm.s"
+ @echo "... CollisionDispatch/btGhostObject.o"
+ @echo "... CollisionDispatch/btGhostObject.i"
+ @echo "... CollisionDispatch/btGhostObject.s"
+ @echo "... CollisionDispatch/btInternalEdgeUtility.o"
+ @echo "... CollisionDispatch/btInternalEdgeUtility.i"
+ @echo "... CollisionDispatch/btInternalEdgeUtility.s"
+ @echo "... CollisionDispatch/btManifoldResult.o"
+ @echo "... CollisionDispatch/btManifoldResult.i"
+ @echo "... CollisionDispatch/btManifoldResult.s"
+ @echo "... CollisionDispatch/btSimulationIslandManager.o"
+ @echo "... CollisionDispatch/btSimulationIslandManager.i"
+ @echo "... CollisionDispatch/btSimulationIslandManager.s"
+ @echo "... CollisionDispatch/btSphereBoxCollisionAlgorithm.o"
+ @echo "... CollisionDispatch/btSphereBoxCollisionAlgorithm.i"
+ @echo "... CollisionDispatch/btSphereBoxCollisionAlgorithm.s"
+ @echo "... CollisionDispatch/btSphereSphereCollisionAlgorithm.o"
+ @echo "... CollisionDispatch/btSphereSphereCollisionAlgorithm.i"
+ @echo "... CollisionDispatch/btSphereSphereCollisionAlgorithm.s"
+ @echo "... CollisionDispatch/btSphereTriangleCollisionAlgorithm.o"
+ @echo "... CollisionDispatch/btSphereTriangleCollisionAlgorithm.i"
+ @echo "... CollisionDispatch/btSphereTriangleCollisionAlgorithm.s"
+ @echo "... CollisionDispatch/btUnionFind.o"
+ @echo "... CollisionDispatch/btUnionFind.i"
+ @echo "... CollisionDispatch/btUnionFind.s"
+ @echo "... CollisionShapes/btBox2dShape.o"
+ @echo "... CollisionShapes/btBox2dShape.i"
+ @echo "... CollisionShapes/btBox2dShape.s"
+ @echo "... CollisionShapes/btBoxShape.o"
+ @echo "... CollisionShapes/btBoxShape.i"
+ @echo "... CollisionShapes/btBoxShape.s"
+ @echo "... CollisionShapes/btBvhTriangleMeshShape.o"
+ @echo "... CollisionShapes/btBvhTriangleMeshShape.i"
+ @echo "... CollisionShapes/btBvhTriangleMeshShape.s"
+ @echo "... CollisionShapes/btCapsuleShape.o"
+ @echo "... CollisionShapes/btCapsuleShape.i"
+ @echo "... CollisionShapes/btCapsuleShape.s"
+ @echo "... CollisionShapes/btCollisionShape.o"
+ @echo "... CollisionShapes/btCollisionShape.i"
+ @echo "... CollisionShapes/btCollisionShape.s"
+ @echo "... CollisionShapes/btCompoundShape.o"
+ @echo "... CollisionShapes/btCompoundShape.i"
+ @echo "... CollisionShapes/btCompoundShape.s"
+ @echo "... CollisionShapes/btConcaveShape.o"
+ @echo "... CollisionShapes/btConcaveShape.i"
+ @echo "... CollisionShapes/btConcaveShape.s"
+ @echo "... CollisionShapes/btConeShape.o"
+ @echo "... CollisionShapes/btConeShape.i"
+ @echo "... CollisionShapes/btConeShape.s"
+ @echo "... CollisionShapes/btConvex2dShape.o"
+ @echo "... CollisionShapes/btConvex2dShape.i"
+ @echo "... CollisionShapes/btConvex2dShape.s"
+ @echo "... CollisionShapes/btConvexHullShape.o"
+ @echo "... CollisionShapes/btConvexHullShape.i"
+ @echo "... CollisionShapes/btConvexHullShape.s"
+ @echo "... CollisionShapes/btConvexInternalShape.o"
+ @echo "... CollisionShapes/btConvexInternalShape.i"
+ @echo "... CollisionShapes/btConvexInternalShape.s"
+ @echo "... CollisionShapes/btConvexPointCloudShape.o"
+ @echo "... CollisionShapes/btConvexPointCloudShape.i"
+ @echo "... CollisionShapes/btConvexPointCloudShape.s"
+ @echo "... CollisionShapes/btConvexPolyhedron.o"
+ @echo "... CollisionShapes/btConvexPolyhedron.i"
+ @echo "... CollisionShapes/btConvexPolyhedron.s"
+ @echo "... CollisionShapes/btConvexShape.o"
+ @echo "... CollisionShapes/btConvexShape.i"
+ @echo "... CollisionShapes/btConvexShape.s"
+ @echo "... CollisionShapes/btConvexTriangleMeshShape.o"
+ @echo "... CollisionShapes/btConvexTriangleMeshShape.i"
+ @echo "... CollisionShapes/btConvexTriangleMeshShape.s"
+ @echo "... CollisionShapes/btCylinderShape.o"
+ @echo "... CollisionShapes/btCylinderShape.i"
+ @echo "... CollisionShapes/btCylinderShape.s"
+ @echo "... CollisionShapes/btEmptyShape.o"
+ @echo "... CollisionShapes/btEmptyShape.i"
+ @echo "... CollisionShapes/btEmptyShape.s"
+ @echo "... CollisionShapes/btHeightfieldTerrainShape.o"
+ @echo "... CollisionShapes/btHeightfieldTerrainShape.i"
+ @echo "... CollisionShapes/btHeightfieldTerrainShape.s"
+ @echo "... CollisionShapes/btMinkowskiSumShape.o"
+ @echo "... CollisionShapes/btMinkowskiSumShape.i"
+ @echo "... CollisionShapes/btMinkowskiSumShape.s"
+ @echo "... CollisionShapes/btMultiSphereShape.o"
+ @echo "... CollisionShapes/btMultiSphereShape.i"
+ @echo "... CollisionShapes/btMultiSphereShape.s"
+ @echo "... CollisionShapes/btMultimaterialTriangleMeshShape.o"
+ @echo "... CollisionShapes/btMultimaterialTriangleMeshShape.i"
+ @echo "... CollisionShapes/btMultimaterialTriangleMeshShape.s"
+ @echo "... CollisionShapes/btOptimizedBvh.o"
+ @echo "... CollisionShapes/btOptimizedBvh.i"
+ @echo "... CollisionShapes/btOptimizedBvh.s"
+ @echo "... CollisionShapes/btPolyhedralConvexShape.o"
+ @echo "... CollisionShapes/btPolyhedralConvexShape.i"
+ @echo "... CollisionShapes/btPolyhedralConvexShape.s"
+ @echo "... CollisionShapes/btScaledBvhTriangleMeshShape.o"
+ @echo "... CollisionShapes/btScaledBvhTriangleMeshShape.i"
+ @echo "... CollisionShapes/btScaledBvhTriangleMeshShape.s"
+ @echo "... CollisionShapes/btShapeHull.o"
+ @echo "... CollisionShapes/btShapeHull.i"
+ @echo "... CollisionShapes/btShapeHull.s"
+ @echo "... CollisionShapes/btSphereShape.o"
+ @echo "... CollisionShapes/btSphereShape.i"
+ @echo "... CollisionShapes/btSphereShape.s"
+ @echo "... CollisionShapes/btStaticPlaneShape.o"
+ @echo "... CollisionShapes/btStaticPlaneShape.i"
+ @echo "... CollisionShapes/btStaticPlaneShape.s"
+ @echo "... CollisionShapes/btStridingMeshInterface.o"
+ @echo "... CollisionShapes/btStridingMeshInterface.i"
+ @echo "... CollisionShapes/btStridingMeshInterface.s"
+ @echo "... CollisionShapes/btTetrahedronShape.o"
+ @echo "... CollisionShapes/btTetrahedronShape.i"
+ @echo "... CollisionShapes/btTetrahedronShape.s"
+ @echo "... CollisionShapes/btTriangleBuffer.o"
+ @echo "... CollisionShapes/btTriangleBuffer.i"
+ @echo "... CollisionShapes/btTriangleBuffer.s"
+ @echo "... CollisionShapes/btTriangleCallback.o"
+ @echo "... CollisionShapes/btTriangleCallback.i"
+ @echo "... CollisionShapes/btTriangleCallback.s"
+ @echo "... CollisionShapes/btTriangleIndexVertexArray.o"
+ @echo "... CollisionShapes/btTriangleIndexVertexArray.i"
+ @echo "... CollisionShapes/btTriangleIndexVertexArray.s"
+ @echo "... CollisionShapes/btTriangleIndexVertexMaterialArray.o"
+ @echo "... CollisionShapes/btTriangleIndexVertexMaterialArray.i"
+ @echo "... CollisionShapes/btTriangleIndexVertexMaterialArray.s"
+ @echo "... CollisionShapes/btTriangleMesh.o"
+ @echo "... CollisionShapes/btTriangleMesh.i"
+ @echo "... CollisionShapes/btTriangleMesh.s"
+ @echo "... CollisionShapes/btTriangleMeshShape.o"
+ @echo "... CollisionShapes/btTriangleMeshShape.i"
+ @echo "... CollisionShapes/btTriangleMeshShape.s"
+ @echo "... CollisionShapes/btUniformScalingShape.o"
+ @echo "... CollisionShapes/btUniformScalingShape.i"
+ @echo "... CollisionShapes/btUniformScalingShape.s"
+ @echo "... Gimpact/btContactProcessing.o"
+ @echo "... Gimpact/btContactProcessing.i"
+ @echo "... Gimpact/btContactProcessing.s"
+ @echo "... Gimpact/btGImpactBvh.o"
+ @echo "... Gimpact/btGImpactBvh.i"
+ @echo "... Gimpact/btGImpactBvh.s"
+ @echo "... Gimpact/btGImpactCollisionAlgorithm.o"
+ @echo "... Gimpact/btGImpactCollisionAlgorithm.i"
+ @echo "... Gimpact/btGImpactCollisionAlgorithm.s"
+ @echo "... Gimpact/btGImpactQuantizedBvh.o"
+ @echo "... Gimpact/btGImpactQuantizedBvh.i"
+ @echo "... Gimpact/btGImpactQuantizedBvh.s"
+ @echo "... Gimpact/btGImpactShape.o"
+ @echo "... Gimpact/btGImpactShape.i"
+ @echo "... Gimpact/btGImpactShape.s"
+ @echo "... Gimpact/btGenericPoolAllocator.o"
+ @echo "... Gimpact/btGenericPoolAllocator.i"
+ @echo "... Gimpact/btGenericPoolAllocator.s"
+ @echo "... Gimpact/btTriangleShapeEx.o"
+ @echo "... Gimpact/btTriangleShapeEx.i"
+ @echo "... Gimpact/btTriangleShapeEx.s"
+ @echo "... Gimpact/gim_box_set.o"
+ @echo "... Gimpact/gim_box_set.i"
+ @echo "... Gimpact/gim_box_set.s"
+ @echo "... Gimpact/gim_contact.o"
+ @echo "... Gimpact/gim_contact.i"
+ @echo "... Gimpact/gim_contact.s"
+ @echo "... Gimpact/gim_memory.o"
+ @echo "... Gimpact/gim_memory.i"
+ @echo "... Gimpact/gim_memory.s"
+ @echo "... Gimpact/gim_tri_collision.o"
+ @echo "... Gimpact/gim_tri_collision.i"
+ @echo "... Gimpact/gim_tri_collision.s"
+ @echo "... NarrowPhaseCollision/btContinuousConvexCollision.o"
+ @echo "... NarrowPhaseCollision/btContinuousConvexCollision.i"
+ @echo "... NarrowPhaseCollision/btContinuousConvexCollision.s"
+ @echo "... NarrowPhaseCollision/btConvexCast.o"
+ @echo "... NarrowPhaseCollision/btConvexCast.i"
+ @echo "... NarrowPhaseCollision/btConvexCast.s"
+ @echo "... NarrowPhaseCollision/btGjkConvexCast.o"
+ @echo "... NarrowPhaseCollision/btGjkConvexCast.i"
+ @echo "... NarrowPhaseCollision/btGjkConvexCast.s"
+ @echo "... NarrowPhaseCollision/btGjkEpa2.o"
+ @echo "... NarrowPhaseCollision/btGjkEpa2.i"
+ @echo "... NarrowPhaseCollision/btGjkEpa2.s"
+ @echo "... NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.o"
+ @echo "... NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.i"
+ @echo "... NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.s"
+ @echo "... NarrowPhaseCollision/btGjkPairDetector.o"
+ @echo "... NarrowPhaseCollision/btGjkPairDetector.i"
+ @echo "... NarrowPhaseCollision/btGjkPairDetector.s"
+ @echo "... NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.o"
+ @echo "... NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.i"
+ @echo "... NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.s"
+ @echo "... NarrowPhaseCollision/btPersistentManifold.o"
+ @echo "... NarrowPhaseCollision/btPersistentManifold.i"
+ @echo "... NarrowPhaseCollision/btPersistentManifold.s"
+ @echo "... NarrowPhaseCollision/btPolyhedralContactClipping.o"
+ @echo "... NarrowPhaseCollision/btPolyhedralContactClipping.i"
+ @echo "... NarrowPhaseCollision/btPolyhedralContactClipping.s"
+ @echo "... NarrowPhaseCollision/btRaycastCallback.o"
+ @echo "... NarrowPhaseCollision/btRaycastCallback.i"
+ @echo "... NarrowPhaseCollision/btRaycastCallback.s"
+ @echo "... NarrowPhaseCollision/btSubSimplexConvexCast.o"
+ @echo "... NarrowPhaseCollision/btSubSimplexConvexCast.i"
+ @echo "... NarrowPhaseCollision/btSubSimplexConvexCast.s"
+ @echo "... NarrowPhaseCollision/btVoronoiSimplexSolver.o"
+ @echo "... NarrowPhaseCollision/btVoronoiSimplexSolver.i"
+ @echo "... NarrowPhaseCollision/btVoronoiSimplexSolver.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
--- /dev/null
+# Install script for directory: /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision
+
+# Set the install prefix
+IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ SET(CMAKE_INSTALL_PREFIX "/usr/local")
+ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ IF(BUILD_TYPE)
+ STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ ELSE(BUILD_TYPE)
+ SET(CMAKE_INSTALL_CONFIG_NAME "Release")
+ ENDIF(BUILD_TYPE)
+ MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+
+# Set the component getting installed.
+IF(NOT CMAKE_INSTALL_COMPONENT)
+ IF(COMPONENT)
+ MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
+ SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ ELSE(COMPONENT)
+ SET(CMAKE_INSTALL_COMPONENT)
+ ENDIF(COMPONENT)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT)
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE STATIC_LIBRARY FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/libBulletCollision.a")
+ IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libBulletCollision.a" AND
+ NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libBulletCollision.a")
+ EXECUTE_PROCESS(COMMAND "/usr/bin/ranlib" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libBulletCollision.a")
+ ENDIF()
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ list(APPEND CPACK_ABSOLUTE_DESTINATION_FILES
+ "/usr/local/include/bullet/BulletCollision")
+FILE(INSTALL DESTINATION "/usr/local/include/bullet" TYPE DIRECTORY FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision" FILES_MATCHING REGEX "/[^/]*\\.h$" REGEX "/\\.svn$" EXCLUDE REGEX "/cmakefiles$" EXCLUDE)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ list(APPEND CPACK_ABSOLUTE_DESTINATION_FILES
+ "/usr/local/include/bullet/BulletCollision/btBulletCollisionCommon.h")
+FILE(INSTALL DESTINATION "/usr/local/include/bullet/BulletCollision" TYPE FILE FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/../btBulletCollisionCommon.h")
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
--- /dev/null
+#IncludeRegexLine: ^[ ]*#[ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/btCharacterControllerInterface.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/LinearMath/btVector3.h
+BulletDynamics/Dynamics/btActionInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/BulletDynamics/Dynamics/btActionInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/btKinematicCharacterController.cpp
+LinearMath/btIDebugDraw.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/LinearMath/btIDebugDraw.h
+BulletCollision/CollisionDispatch/btGhostObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/BulletCollision/CollisionDispatch/btGhostObject.h
+BulletCollision/CollisionShapes/btMultiSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/BulletCollision/CollisionShapes/btMultiSphereShape.h
+BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCollisionWorld.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/BulletCollision/CollisionDispatch/btCollisionWorld.h
+LinearMath/btDefaultMotionState.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/LinearMath/btDefaultMotionState.h
+btKinematicCharacterController.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/btKinematicCharacterController.h
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/btKinematicCharacterController.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/LinearMath/btVector3.h
+btCharacterControllerInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/btCharacterControllerInterface.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp
+btConeTwistConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btTransformUtil.h
+LinearMath/btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btMinMax.h
+new
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btJacobianEntry.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btContactConstraint.cpp
+btContactConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btContactConstraint.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btJacobianEntry.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+btContactSolverInfo.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+LinearMath/btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btMinMax.h
+BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+btContactConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btContactConstraint.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btJacobianEntry.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+btContactSolverInfo.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+LinearMath/btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btMinMax.h
+BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btContactConstraint.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btJacobianEntry.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btScalar.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGearConstraint.cpp
+btGearConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGearConstraint.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGearConstraint.h
+BulletDynamics/ConstraintSolver/btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp
+btGeneric6DofConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btTransformUtil.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btTransformUtil.h
+new
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btJacobianEntry.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp
+btGeneric6DofSpringConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btTransformUtil.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+btGeneric6DofConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp
+btHinge2Constraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHinge2Constraint.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btTransformUtil.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHinge2Constraint.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+btGeneric6DofSpringConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp
+btHingeConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHingeConstraint.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btTransformUtil.h
+LinearMath/btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btMinMax.h
+new
+-
+btSolverBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverBody.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHingeConstraint.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btJacobianEntry.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+LinearMath/btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btMatrix3x3.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp
+btPoint2PointConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+new
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btJacobianEntry.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp
+btSequentialImpulseConstraintSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+LinearMath/btIDebugDraw.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btIDebugDraw.h
+LinearMath/btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btMinMax.h
+BulletDynamics/ConstraintSolver/btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+new
+-
+LinearMath/btStackAlloc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btStackAlloc.h
+LinearMath/btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btQuickprof.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btAlignedObjectArray.h
+string.h
+-
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+emmintrin.h
+-
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+BulletDynamics/ConstraintSolver/btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+BulletDynamics/ConstraintSolver/btSolverBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btSolverBody.h
+BulletDynamics/ConstraintSolver/btSolverConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+BulletDynamics/ConstraintSolver/btConstraintSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp
+btSliderConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSliderConstraint.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btTransformUtil.h
+new
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSliderConstraint.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btJacobianEntry.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp
+btSolve2LinearConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btJacobianEntry.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h
+LinearMath/btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btMatrix3x3.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverBody.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+LinearMath/btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btMatrix3x3.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btAlignedAllocator.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btTransformUtil.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+LinearMath/btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btMatrix3x3.h
+btJacobianEntry.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btAlignedObjectArray.h
+btSolverBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverBody.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp
+btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btSerializer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btSerializer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btScalar.h
+btSolverConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp
+btUniversalConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btTransformUtil.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+btGeneric6DofConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/Bullet-C-API.cpp
+Bullet-C-Api.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/Bullet-C-Api.h
+btBulletDynamicsCommon.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btBulletDynamicsCommon.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btAlignedAllocator.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btVector3.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btScalar.h
+LinearMath/btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btMatrix3x3.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btTransform.h
+BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+BulletCollision/CollisionShapes/btTriangleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/CollisionShapes/btTriangleShape.h
+BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+BulletCollision/NarrowPhaseCollision/btPointCollector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/NarrowPhaseCollision/btPointCollector.h
+BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+BulletCollision/CollisionShapes/btMinkowskiSumShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
+BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp
+btDiscreteDynamicsWorld.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+BulletCollision/CollisionShapes/btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/CollisionShapes/btCollisionShape.h
+BulletCollision/CollisionDispatch/btSimulationIslandManager.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/CollisionDispatch/btSimulationIslandManager.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btTransformUtil.h
+LinearMath/btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btQuickprof.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/Dynamics/btRigidBody.h
+BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+BulletDynamics/ConstraintSolver/btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
+BulletDynamics/ConstraintSolver/btHingeConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/ConstraintSolver/btHingeConstraint.h
+BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
+BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+BulletDynamics/ConstraintSolver/btSliderConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/ConstraintSolver/btSliderConstraint.h
+BulletDynamics/ConstraintSolver/btContactConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/ConstraintSolver/btContactConstraint.h
+LinearMath/btIDebugDraw.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btIDebugDraw.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/CollisionShapes/btSphereShape.h
+BulletDynamics/Dynamics/btActionInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/Dynamics/btActionInterface.h
+LinearMath/btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btQuickprof.h
+LinearMath/btMotionState.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btMotionState.h
+LinearMath/btSerializer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btSerializer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
+btDynamicsWorld.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btDynamicsWorld.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btDynamicsWorld.h
+BulletCollision/CollisionDispatch/btCollisionWorld.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/CollisionDispatch/btCollisionWorld.h
+BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btRigidBody.cpp
+btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btRigidBody.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/CollisionShapes/btConvexShape.h
+LinearMath/btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btMinMax.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btTransformUtil.h
+LinearMath/btMotionState.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btMotionState.h
+BulletDynamics/ConstraintSolver/btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+LinearMath/btSerializer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btSerializer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btAlignedObjectArray.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/LinearMath/btTransform.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/CollisionDispatch/btCollisionObject.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp
+btSimpleDynamicsWorld.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+BulletCollision/CollisionShapes/btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletCollision/CollisionShapes/btCollisionShape.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/Dynamics/btRigidBody.h
+BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h
+btDynamicsWorld.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btDynamicsWorld.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/LinearMath/btVector3.h
+btRaycastVehicle.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btRaycastVehicle.h
+BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h
+BulletDynamics/ConstraintSolver/btJacobianEntry.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+LinearMath/btQuaternion.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/LinearMath/btQuaternion.h
+BulletDynamics/Dynamics/btDynamicsWorld.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/BulletDynamics/Dynamics/btDynamicsWorld.h
+btVehicleRaycaster.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btVehicleRaycaster.h
+btWheelInfo.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btWheelInfo.h
+LinearMath/btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/LinearMath/btMinMax.h
+LinearMath/btIDebugDraw.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/LinearMath/btIDebugDraw.h
+BulletDynamics/ConstraintSolver/btContactConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/BulletDynamics/ConstraintSolver/btContactConstraint.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btRaycastVehicle.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/BulletDynamics/Dynamics/btRigidBody.h
+BulletDynamics/ConstraintSolver/btTypedConstraint.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+btVehicleRaycaster.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btVehicleRaycaster.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/LinearMath/btAlignedObjectArray.h
+btWheelInfo.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btWheelInfo.h
+BulletDynamics/Dynamics/btActionInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/BulletDynamics/Dynamics/btActionInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btVehicleRaycaster.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/LinearMath/btVector3.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btWheelInfo.cpp
+btWheelInfo.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btWheelInfo.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/BulletDynamics/Dynamics/btRigidBody.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btWheelInfo.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/LinearMath/btVector3.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/LinearMath/btTransform.h
+
+src/Bullet-C-Api.h
+
+src/BulletCollision/BroadphaseCollision/btAxisSweep3.h
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+btOverlappingPairCache.h
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+btBroadphaseInterface.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+btBroadphaseProxy.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btOverlappingPairCallback.h
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+btDbvtBroadphase.h
+src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
+stdio.h
+-
+
+src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+btBroadphaseProxy.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+
+src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btScalar.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+
+src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+LinearMath/btScalar.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/BroadphaseCollision/btDbvt.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btTransform.h
+LinearMath/btAabbUtil2.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAabbUtil2.h
+emmintrin.h
+-
+memory.h
+-
+string.h
+-
+
+src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
+BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletCollision/BroadphaseCollision/BulletCollision/BroadphaseCollision/btDbvt.h
+BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/BroadphaseCollision/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+LinearMath/btQuickprof.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btQuickprof.h
+
+src/BulletCollision/BroadphaseCollision/btDispatcher.h
+LinearMath/btScalar.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+
+src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h
+btBroadphaseInterface.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+btOverlappingPairCache.h
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+btBroadphaseInterface.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+btBroadphaseProxy.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btOverlappingPairCallback.h
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+
+src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+stdio.h
+-
+stdlib.h
+-
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+btOverlappingPairCache.h
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+
+src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+
+src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+
+src/BulletCollision/CollisionDispatch/btCollisionObject.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+LinearMath/btMotionState.h
+src/BulletCollision/CollisionDispatch/LinearMath/btMotionState.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+LinearMath/btScalar.h
+src/BulletCollision/CollisionDispatch/LinearMath/btScalar.h
+
+src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionDispatch/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+btCollisionObject.h
+src/BulletCollision/CollisionDispatch/btCollisionObject.h
+btCollisionDispatcher.h
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
+btCollisionConfiguration.h
+src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+
+src/BulletCollision/CollisionDispatch/btGhostObject.h
+btCollisionObject.h
+src/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedAllocator.h
+BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+btCollisionWorld.h
+src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+
+src/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+
+src/BulletCollision/CollisionDispatch/btSimulationIslandManager.h
+BulletCollision/CollisionDispatch/btUnionFind.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btUnionFind.h
+btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+btCollisionObject.h
+src/BulletCollision/CollisionDispatch/btCollisionObject.h
+
+src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+btActivatingCollisionAlgorithm.h
+src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btCollisionDispatcher.h
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+
+src/BulletCollision/CollisionDispatch/btUnionFind.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionShapes/btBoxShape.h
+btPolyhedralConvexShape.h
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+btCollisionMargin.h
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btMinMax.h
+src/BulletCollision/CollisionShapes/LinearMath/btMinMax.h
+
+src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+btTriangleMeshShape.h
+src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+btOptimizedBvh.h
+src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedAllocator.h
+btTriangleInfoMap.h
+src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+
+src/BulletCollision/CollisionShapes/btCapsuleShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btCompoundShape.h
+btCollisionShape.h
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btCollisionMargin.h
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+btCollisionShape.h
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btTriangleCallback.h
+src/BulletCollision/CollisionShapes/btTriangleCallback.h
+
+src/BulletCollision/CollisionShapes/btConeShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btConvexHullShape.h
+btPolyhedralConvexShape.h
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+btConvexShape.h
+src/BulletCollision/CollisionShapes/btConvexShape.h
+LinearMath/btAabbUtil2.h
+src/BulletCollision/CollisionShapes/LinearMath/btAabbUtil2.h
+
+src/BulletCollision/CollisionShapes/btConvexShape.h
+btCollisionShape.h
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btCollisionMargin.h
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedAllocator.h
+
+src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
+btPolyhedralConvexShape.h
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btCylinderShape.h
+btBoxShape.h
+src/BulletCollision/CollisionShapes/btBoxShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+
+src/BulletCollision/CollisionShapes/btEmptyShape.h
+btConcaveShape.h
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btCollisionMargin.h
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+
+src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+LinearMath/btAabbUtil2.h
+src/BulletCollision/CollisionShapes/LinearMath/btAabbUtil2.h
+
+src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+
+src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
+BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+src/BulletCollision/CollisionShapes/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+
+src/BulletCollision/CollisionShapes/btSphereShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+btConcaveShape.h
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+
+src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+btTriangleCallback.h
+src/BulletCollision/CollisionShapes/btTriangleCallback.h
+btConcaveShape.h
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+
+src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+btPolyhedralConvexShape.h
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btTriangleCallback.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+
+src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+btStridingMeshInterface.h
+src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+LinearMath/btScalar.h
+src/BulletCollision/CollisionShapes/LinearMath/btScalar.h
+
+src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+LinearMath/btHashMap.h
+src/BulletCollision/CollisionShapes/LinearMath/btHashMap.h
+LinearMath/btSerializer.h
+src/BulletCollision/CollisionShapes/LinearMath/btSerializer.h
+
+src/BulletCollision/CollisionShapes/btTriangleMesh.h
+btTriangleIndexVertexArray.h
+src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+btConcaveShape.h
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+btStridingMeshInterface.h
+src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+
+src/BulletCollision/CollisionShapes/btTriangleShape.h
+btConvexShape.h
+src/BulletCollision/CollisionShapes/btConvexShape.h
+btBoxShape.h
+src/BulletCollision/CollisionShapes/btBoxShape.h
+
+src/BulletCollision/CollisionShapes/btUniformScalingShape.h
+btConvexShape.h
+src/BulletCollision/CollisionShapes/btConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btScalar.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btScalar.h
+LinearMath/btIDebugDraw.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btIDebugDraw.h
+
+src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+btSimplexSolverInterface.h
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+
+src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btConvexShape.h
+
+src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+btConvexPenetrationDepthSolver.h
+src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+
+src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btCollisionMargin.h
+btSimplexSolverInterface.h
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btTransformUtil.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransformUtil.h
+physics_effects/base_level/solver/pfx_constraint_row.h
+src/BulletCollision/NarrowPhaseCollision/physics_effects/base_level/solver/pfx_constraint_row.h
+
+src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+btConvexPenetrationDepthSolver.h
+src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+
+src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+btManifoldPoint.h
+src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btAlignedAllocator.h
+
+src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
+btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+btVoronoiSimplexSolver.h
+src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+
+src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+btConvexCast.h
+src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+btSimplexSolverInterface.h
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+btSimplexSolverInterface.h
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
+LinearMath/btVector3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btJacobianEntry.h
+src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+btTypedConstraint.h
+src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+
+src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+LinearMath/btScalar.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btScalar.h
+
+src/BulletDynamics/ConstraintSolver/btContactConstraint.h
+LinearMath/btVector3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btJacobianEntry.h
+src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+btTypedConstraint.h
+src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletDynamics/ConstraintSolver/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+
+src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+LinearMath/btScalar.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btScalar.h
+
+src/BulletDynamics/ConstraintSolver/btGearConstraint.h
+BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+
+src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+LinearMath/btVector3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btJacobianEntry.h
+src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+btTypedConstraint.h
+src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+
+src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
+LinearMath/btVector3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btTypedConstraint.h
+src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+btGeneric6DofConstraint.h
+src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+
+src/BulletDynamics/ConstraintSolver/btHinge2Constraint.h
+LinearMath/btVector3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btTypedConstraint.h
+src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+btGeneric6DofSpringConstraint.h
+src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
+
+src/BulletDynamics/ConstraintSolver/btHingeConstraint.h
+LinearMath/btVector3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btJacobianEntry.h
+src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+btTypedConstraint.h
+src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+
+src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+LinearMath/btMatrix3x3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btMatrix3x3.h
+
+src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
+LinearMath/btVector3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btJacobianEntry.h
+src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+btTypedConstraint.h
+src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+
+src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btSolverBody.h
+BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletDynamics/ConstraintSolver/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+BulletDynamics/ConstraintSolver/btConstraintSolver.h
+src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+
+src/BulletDynamics/ConstraintSolver/btSliderConstraint.h
+LinearMath/btVector3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btJacobianEntry.h
+src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+btTypedConstraint.h
+src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+
+src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h
+LinearMath/btMatrix3x3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btMatrix3x3.h
+LinearMath/btVector3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+
+src/BulletDynamics/ConstraintSolver/btSolverBody.h
+LinearMath/btVector3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+LinearMath/btMatrix3x3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btMatrix3x3.h
+LinearMath/btAlignedAllocator.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btAlignedAllocator.h
+LinearMath/btTransformUtil.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btTransformUtil.h
+
+src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+LinearMath/btVector3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+LinearMath/btMatrix3x3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btMatrix3x3.h
+btJacobianEntry.h
+src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btAlignedObjectArray.h
+btSolverBody.h
+src/BulletDynamics/ConstraintSolver/btSolverBody.h
+
+src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+LinearMath/btScalar.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btScalar.h
+btSolverConstraint.h
+src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+
+src/BulletDynamics/ConstraintSolver/btUniversalConstraint.h
+LinearMath/btVector3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+btTypedConstraint.h
+src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+btGeneric6DofConstraint.h
+src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+
+src/BulletDynamics/Dynamics/btActionInterface.h
+LinearMath/btScalar.h
+src/BulletDynamics/Dynamics/LinearMath/btScalar.h
+btRigidBody.h
+src/BulletDynamics/Dynamics/btRigidBody.h
+
+src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
+btDynamicsWorld.h
+src/BulletDynamics/Dynamics/btDynamicsWorld.h
+LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/Dynamics/LinearMath/btAlignedObjectArray.h
+
+src/BulletDynamics/Dynamics/btDynamicsWorld.h
+BulletCollision/CollisionDispatch/btCollisionWorld.h
+src/BulletDynamics/Dynamics/BulletCollision/CollisionDispatch/btCollisionWorld.h
+BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+src/BulletDynamics/Dynamics/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+
+src/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/Dynamics/LinearMath/btAlignedObjectArray.h
+LinearMath/btTransform.h
+src/BulletDynamics/Dynamics/LinearMath/btTransform.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/Dynamics/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/Dynamics/BulletCollision/CollisionDispatch/btCollisionObject.h
+
+src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h
+btDynamicsWorld.h
+src/BulletDynamics/Dynamics/btDynamicsWorld.h
+
+src/BulletDynamics/Vehicle/btRaycastVehicle.h
+BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/Vehicle/BulletDynamics/Dynamics/btRigidBody.h
+BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/Vehicle/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+btVehicleRaycaster.h
+src/BulletDynamics/Vehicle/btVehicleRaycaster.h
+LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/Vehicle/LinearMath/btAlignedObjectArray.h
+btWheelInfo.h
+src/BulletDynamics/Vehicle/btWheelInfo.h
+BulletDynamics/Dynamics/btActionInterface.h
+src/BulletDynamics/Vehicle/BulletDynamics/Dynamics/btActionInterface.h
+
+src/BulletDynamics/Vehicle/btVehicleRaycaster.h
+LinearMath/btVector3.h
+src/BulletDynamics/Vehicle/LinearMath/btVector3.h
+
+src/BulletDynamics/Vehicle/btWheelInfo.h
+LinearMath/btVector3.h
+src/BulletDynamics/Vehicle/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletDynamics/Vehicle/LinearMath/btTransform.h
+
+src/LinearMath/btAabbUtil2.h
+btTransform.h
+src/LinearMath/btTransform.h
+btVector3.h
+src/LinearMath/btVector3.h
+btMinMax.h
+src/LinearMath/btMinMax.h
+
+src/LinearMath/btAlignedAllocator.h
+btScalar.h
+src/LinearMath/btScalar.h
+
+src/LinearMath/btAlignedObjectArray.h
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+memory.h
+-
+string.h
+-
+new
+-
+
+src/LinearMath/btDefaultMotionState.h
+btMotionState.h
+src/LinearMath/btMotionState.h
+
+src/LinearMath/btHashMap.h
+btAlignedObjectArray.h
+src/LinearMath/btAlignedObjectArray.h
+
+src/LinearMath/btIDebugDraw.h
+btVector3.h
+src/LinearMath/btVector3.h
+btTransform.h
+src/LinearMath/btTransform.h
+
+src/LinearMath/btMatrix3x3.h
+btVector3.h
+src/LinearMath/btVector3.h
+btQuaternion.h
+src/LinearMath/btQuaternion.h
+stdio.h
+-
+
+src/LinearMath/btMinMax.h
+btScalar.h
+src/LinearMath/btScalar.h
+
+src/LinearMath/btMotionState.h
+btTransform.h
+src/LinearMath/btTransform.h
+
+src/LinearMath/btQuadWord.h
+btScalar.h
+src/LinearMath/btScalar.h
+btMinMax.h
+src/LinearMath/btMinMax.h
+altivec.h
+-
+
+src/LinearMath/btQuaternion.h
+btVector3.h
+src/LinearMath/btVector3.h
+btQuadWord.h
+src/LinearMath/btQuadWord.h
+
+src/LinearMath/btQuickprof.h
+stdio.h
+-
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+new
+-
+
+src/LinearMath/btScalar.h
+math.h
+-
+stdlib.h
+-
+float.h
+-
+ppcintrinsics.h
+-
+emmintrin.h
+-
+stdio.h
+-
+assert.h
+-
+assert.h
+-
+spu_printf.h
+-
+assert.h
+-
+smmintrin.h
+-
+tmmintrin.h
+-
+pmmintrin.h
+-
+emmintrin.h
+-
+arm_neon.h
+-
+assert.h
+-
+stdio.h
+-
+assert.h
+-
+arm_neon.h
+-
+
+src/LinearMath/btSerializer.h
+btScalar.h
+src/LinearMath/btScalar.h
+btStackAlloc.h
+src/LinearMath/btStackAlloc.h
+btHashMap.h
+src/LinearMath/btHashMap.h
+memory.h
+-
+string.h
+-
+
+src/LinearMath/btStackAlloc.h
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+
+src/LinearMath/btTransform.h
+btMatrix3x3.h
+src/LinearMath/btMatrix3x3.h
+
+src/LinearMath/btTransformUtil.h
+btTransform.h
+src/LinearMath/btTransform.h
+
+src/LinearMath/btVector3.h
+btScalar.h
+src/LinearMath/btScalar.h
+btMinMax.h
+src/LinearMath/btMinMax.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+
+src/btBulletCollisionCommon.h
+BulletCollision/CollisionDispatch/btCollisionWorld.h
+src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletCollision/CollisionShapes/btBoxShape.h
+BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletCollision/CollisionShapes/btSphereShape.h
+BulletCollision/CollisionShapes/btCapsuleShape.h
+src/BulletCollision/CollisionShapes/btCapsuleShape.h
+BulletCollision/CollisionShapes/btCylinderShape.h
+src/BulletCollision/CollisionShapes/btCylinderShape.h
+BulletCollision/CollisionShapes/btConeShape.h
+src/BulletCollision/CollisionShapes/btConeShape.h
+BulletCollision/CollisionShapes/btStaticPlaneShape.h
+src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+BulletCollision/CollisionShapes/btConvexHullShape.h
+src/BulletCollision/CollisionShapes/btConvexHullShape.h
+BulletCollision/CollisionShapes/btTriangleMesh.h
+src/BulletCollision/CollisionShapes/btTriangleMesh.h
+BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
+src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
+BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
+src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
+BulletCollision/CollisionShapes/btTriangleMeshShape.h
+src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+BulletCollision/CollisionShapes/btCompoundShape.h
+src/BulletCollision/CollisionShapes/btCompoundShape.h
+BulletCollision/CollisionShapes/btTetrahedronShape.h
+src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+BulletCollision/CollisionShapes/btEmptyShape.h
+src/BulletCollision/CollisionShapes/btEmptyShape.h
+BulletCollision/CollisionShapes/btMultiSphereShape.h
+src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+BulletCollision/CollisionShapes/btUniformScalingShape.h
+src/BulletCollision/CollisionShapes/btUniformScalingShape.h
+BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
+src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+BulletCollision/BroadphaseCollision/btAxisSweep3.h
+src/BulletCollision/BroadphaseCollision/btAxisSweep3.h
+BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h
+src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h
+BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
+src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
+LinearMath/btQuaternion.h
+src/LinearMath/btQuaternion.h
+LinearMath/btTransform.h
+src/LinearMath/btTransform.h
+LinearMath/btDefaultMotionState.h
+src/LinearMath/btDefaultMotionState.h
+LinearMath/btQuickprof.h
+src/LinearMath/btQuickprof.h
+LinearMath/btIDebugDraw.h
+src/LinearMath/btIDebugDraw.h
+LinearMath/btSerializer.h
+src/LinearMath/btSerializer.h
+
+src/btBulletDynamicsCommon.h
+btBulletCollisionCommon.h
+src/btBulletCollisionCommon.h
+BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
+src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
+BulletDynamics/Dynamics/btSimpleDynamicsWorld.h
+src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h
+BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/Dynamics/btRigidBody.h
+BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
+src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
+BulletDynamics/ConstraintSolver/btHingeConstraint.h
+src/BulletDynamics/ConstraintSolver/btHingeConstraint.h
+BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
+src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
+BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+BulletDynamics/ConstraintSolver/btSliderConstraint.h
+src/BulletDynamics/ConstraintSolver/btSliderConstraint.h
+BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
+src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
+BulletDynamics/ConstraintSolver/btUniversalConstraint.h
+src/BulletDynamics/ConstraintSolver/btUniversalConstraint.h
+BulletDynamics/ConstraintSolver/btHinge2Constraint.h
+src/BulletDynamics/ConstraintSolver/btHinge2Constraint.h
+BulletDynamics/ConstraintSolver/btGearConstraint.h
+src/BulletDynamics/ConstraintSolver/btGearConstraint.h
+BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+BulletDynamics/Vehicle/btRaycastVehicle.h
+src/BulletDynamics/Vehicle/btRaycastVehicle.h
+
--- /dev/null
+# The set of languages for which implicit dependencies are needed:
+SET(CMAKE_DEPENDS_LANGUAGES
+ "CXX"
+ )
+# The set of files for implicit dependencies of each language:
+SET(CMAKE_DEPENDS_CHECK_CXX
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/btKinematicCharacterController.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btContactConstraint.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGearConstraint.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/Bullet-C-API.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btRigidBody.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btWheelInfo.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o"
+ )
+SET(CMAKE_CXX_COMPILER_ID "GNU")
+
+# Preprocessor definitions for this target.
+SET(CMAKE_TARGET_DEFINITIONS
+ "USE_GRAPHICAL_BENCHMARK"
+ )
+
+# Targets to which this target links.
+SET(CMAKE_TARGET_LINKED_INFO_FILES
+ )
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# Include any dependencies generated for this target.
+include src/BulletDynamics/CMakeFiles/BulletDynamics.dir/depend.make
+
+# Include the progress variables for this target.
+include src/BulletDynamics/CMakeFiles/BulletDynamics.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletDynamics/Character/btKinematicCharacterController.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_1)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/btKinematicCharacterController.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/btKinematicCharacterController.cpp > CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/btKinematicCharacterController.cpp -o CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_2)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp > CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/BulletDynamics/ConstraintSolver/btContactConstraint.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_3)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btContactConstraint.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btContactConstraint.cpp > CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btContactConstraint.cpp -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/BulletDynamics/ConstraintSolver/btGearConstraint.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_4)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGearConstraint.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGearConstraint.cpp > CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGearConstraint.cpp -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_5)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp > CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_6)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp > CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_7)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp > CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_8)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp > CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_9)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp > CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_10)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp > CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_11)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp > CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_12)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp > CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_13)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp > CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_14)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp > CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp -o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_15)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp > CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp -o CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/BulletDynamics/Dynamics/btRigidBody.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_16)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btRigidBody.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btRigidBody.cpp > CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btRigidBody.cpp -o CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_17)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp > CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp -o CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/Dynamics/Bullet-C-API.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_18)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/Bullet-C-API.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/Bullet-C-API.cpp > CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/Bullet-C-API.cpp -o CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/Vehicle/btRaycastVehicle.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_19)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp > CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp -o CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/flags.make
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/BulletDynamics/Vehicle/btWheelInfo.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_20)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btWheelInfo.cpp
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btWheelInfo.cpp > CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.i
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btWheelInfo.cpp -o CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.s
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o.requires:
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o.requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o.provides: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o.requires
+ $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o.provides.build
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o.provides
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o.provides.build: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o
+
+# Object files for target BulletDynamics
+BulletDynamics_OBJECTS = \
+"CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o" \
+"CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o" \
+"CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o" \
+"CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o" \
+"CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o" \
+"CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o" \
+"CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o" \
+"CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o" \
+"CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o" \
+"CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o" \
+"CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o" \
+"CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o" \
+"CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o" \
+"CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o" \
+"CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o" \
+"CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o" \
+"CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o" \
+"CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o" \
+"CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o" \
+"CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o"
+
+# External object files for target BulletDynamics
+BulletDynamics_EXTERNAL_OBJECTS =
+
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make
+src/BulletDynamics/libBulletDynamics.a: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX static library libBulletDynamics.a"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && $(CMAKE_COMMAND) -P CMakeFiles/BulletDynamics.dir/cmake_clean_target.cmake
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/BulletDynamics.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build: src/BulletDynamics/libBulletDynamics.a
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o.requires
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o.requires
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/requires
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics && $(CMAKE_COMMAND) -P CMakeFiles/BulletDynamics.dir/cmake_clean.cmake
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/clean
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/BulletDynamics.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/depend
+
--- /dev/null
+FILE(REMOVE_RECURSE
+ "CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o"
+ "CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o"
+ "CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o"
+ "CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o"
+ "CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o"
+ "CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o"
+ "CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o"
+ "CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o"
+ "CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o"
+ "CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o"
+ "CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o"
+ "CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o"
+ "CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o"
+ "CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o"
+ "CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o"
+ "CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o"
+ "CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o"
+ "CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o"
+ "CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o"
+ "CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o"
+ "libBulletDynamics.pdb"
+ "libBulletDynamics.a"
+)
+
+# Per-language clean rules from dependency scanning.
+FOREACH(lang CXX)
+ INCLUDE(CMakeFiles/BulletDynamics.dir/cmake_clean_${lang}.cmake OPTIONAL)
+ENDFOREACH(lang)
--- /dev/null
+FILE(REMOVE_RECURSE
+ "libBulletDynamics.a"
+)
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/btCharacterControllerInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/btKinematicCharacterController.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Character/btKinematicCharacterController.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+ src/BulletCollision/CollisionDispatch/btGhostObject.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletDynamics/Dynamics/btActionInterface.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btDefaultMotionState.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btContactConstraint.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btContactConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGearConstraint.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGearConstraint.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHinge2Constraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btHingeConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+ src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+ src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSliderConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/Bullet-C-API.cpp
+ src/Bullet-C-Api.h
+ src/BulletCollision/BroadphaseCollision/btAxisSweep3.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDbvt.h
+ src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+ src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+ src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+ src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btCapsuleShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btCompoundShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConeShape.h
+ src/BulletCollision/CollisionShapes/btConvexHullShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btCylinderShape.h
+ src/BulletCollision/CollisionShapes/btEmptyShape.h
+ src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
+ src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+ src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+ src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+ src/BulletCollision/CollisionShapes/btTriangleMesh.h
+ src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btTriangleShape.h
+ src/BulletCollision/CollisionShapes/btUniformScalingShape.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
+ src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
+ src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+ src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+ src/BulletDynamics/ConstraintSolver/btGearConstraint.h
+ src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+ src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
+ src/BulletDynamics/ConstraintSolver/btHinge2Constraint.h
+ src/BulletDynamics/ConstraintSolver/btHingeConstraint.h
+ src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
+ src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+ src/BulletDynamics/ConstraintSolver/btSliderConstraint.h
+ src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletDynamics/ConstraintSolver/btUniversalConstraint.h
+ src/BulletDynamics/Dynamics/btActionInterface.h
+ src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
+ src/BulletDynamics/Dynamics/btDynamicsWorld.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h
+ src/BulletDynamics/Vehicle/btRaycastVehicle.h
+ src/BulletDynamics/Vehicle/btVehicleRaycaster.h
+ src/BulletDynamics/Vehicle/btWheelInfo.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btDefaultMotionState.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+ src/btBulletCollisionCommon.h
+ src/btBulletDynamicsCommon.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btDynamicsWorld.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionDispatch/btSimulationIslandManager.h
+ src/BulletCollision/CollisionDispatch/btUnionFind.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
+ src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+ src/BulletDynamics/ConstraintSolver/btContactConstraint.h
+ src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+ src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+ src/BulletDynamics/ConstraintSolver/btHingeConstraint.h
+ src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
+ src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+ src/BulletDynamics/ConstraintSolver/btSliderConstraint.h
+ src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletDynamics/Dynamics/btActionInterface.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btRigidBody.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btRigidBody.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btDynamicsWorld.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+ src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+ src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+ src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btRaycastVehicle.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btVehicleRaycaster.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btWheelInfo.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletDynamics/ConstraintSolver/btContactConstraint.h
+ src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+ src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h
+ src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletDynamics/Dynamics/btActionInterface.h
+ src/BulletDynamics/Dynamics/btDynamicsWorld.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btWheelInfo.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/Vehicle/btWheelInfo.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletDynamics/Character/btCharacterControllerInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletDynamics/Character/btKinematicCharacterController.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletDynamics/Character/btKinematicCharacterController.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/CollisionDispatch/btGhostObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletDynamics/Dynamics/btActionInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/LinearMath/btAabbUtil2.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/LinearMath/btDefaultMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/LinearMath/btIDebugDraw.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/BulletDynamics/ConstraintSolver/btContactConstraint.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/BulletDynamics/ConstraintSolver/btContactConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/BulletDynamics/ConstraintSolver/btGearConstraint.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/BulletDynamics/ConstraintSolver/btGearConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/BulletDynamics/ConstraintSolver/btHinge2Constraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/BulletDynamics/ConstraintSolver/btHingeConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/LinearMath/btIDebugDraw.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/LinearMath/btQuickprof.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/LinearMath/btStackAlloc.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/BulletDynamics/ConstraintSolver/btSliderConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/LinearMath/btHashMap.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/LinearMath/btSerializer.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/LinearMath/btStackAlloc.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/BulletDynamics/ConstraintSolver/btUniversalConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/Dynamics/Bullet-C-API.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/Bullet-C-Api.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/BroadphaseCollision/btAxisSweep3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btCapsuleShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btCompoundShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btConeShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btConvexHullShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btCylinderShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btEmptyShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btTriangleMesh.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btTriangleShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/CollisionShapes/btUniformScalingShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/NarrowPhaseCollision/btPointCollector.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btGearConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btHinge2Constraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btHingeConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btSliderConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/ConstraintSolver/btUniversalConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/Dynamics/btActionInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/Dynamics/btDynamicsWorld.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/Vehicle/btRaycastVehicle.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/Vehicle/btVehicleRaycaster.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/BulletDynamics/Vehicle/btWheelInfo.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btAabbUtil2.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btDefaultMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btHashMap.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btIDebugDraw.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btQuickprof.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btSerializer.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btStackAlloc.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/LinearMath/btVector3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/btBulletCollisionCommon.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o: src/btBulletDynamicsCommon.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/Dynamics/btDynamicsWorld.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btSimulationIslandManager.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btUnionFind.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btContactConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btHingeConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btSliderConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/Dynamics/btActionInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btAabbUtil2.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btHashMap.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btIDebugDraw.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btQuickprof.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btSerializer.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btStackAlloc.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/BulletDynamics/Dynamics/btRigidBody.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/LinearMath/btHashMap.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/LinearMath/btSerializer.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/LinearMath/btStackAlloc.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletDynamics/Dynamics/btDynamicsWorld.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/Vehicle/btRaycastVehicle.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/Vehicle/btRaycastVehicle.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/Vehicle/btVehicleRaycaster.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/Vehicle/btWheelInfo.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/ConstraintSolver/btContactConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/Dynamics/btActionInterface.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/Dynamics/btDynamicsWorld.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/LinearMath/btIDebugDraw.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/LinearMath/btTransformUtil.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o: src/LinearMath/btVector3.h
+
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/BulletDynamics/Vehicle/btWheelInfo.cpp
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/BulletDynamics/Vehicle/btWheelInfo.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/LinearMath/btAlignedAllocator.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/LinearMath/btMatrix3x3.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/LinearMath/btMinMax.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/LinearMath/btMotionState.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/LinearMath/btQuadWord.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/LinearMath/btQuaternion.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/LinearMath/btScalar.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/LinearMath/btTransform.h
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o: src/LinearMath/btVector3.h
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -O3 -DNDEBUG -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk -I/usr/local/include -I/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src
+
+CXX_DEFINES = -DUSE_GRAPHICAL_BENCHMARK
+
--- /dev/null
+/usr/bin/ar cr libBulletDynamics.a CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o
+/usr/bin/ranlib libBulletDynamics.a
--- /dev/null
+CMAKE_PROGRESS_1 = 62
+CMAKE_PROGRESS_2 =
+CMAKE_PROGRESS_3 = 63
+CMAKE_PROGRESS_4 = 64
+CMAKE_PROGRESS_5 =
+CMAKE_PROGRESS_6 = 65
+CMAKE_PROGRESS_7 = 66
+CMAKE_PROGRESS_8 =
+CMAKE_PROGRESS_9 = 67
+CMAKE_PROGRESS_10 = 68
+CMAKE_PROGRESS_11 =
+CMAKE_PROGRESS_12 = 69
+CMAKE_PROGRESS_13 = 70
+CMAKE_PROGRESS_14 =
+CMAKE_PROGRESS_15 = 71
+CMAKE_PROGRESS_16 = 72
+CMAKE_PROGRESS_17 =
+CMAKE_PROGRESS_18 = 73
+CMAKE_PROGRESS_19 = 74
+CMAKE_PROGRESS_20 =
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Relative path conversion top directories.
+SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+
+# Force unix paths in dependencies.
+SET(CMAKE_FORCE_UNIX_PATHS 1)
+
+# The C and CXX include file search paths:
+SET(CMAKE_C_INCLUDE_PATH
+ "/usr/local/include"
+ "src"
+ )
+SET(CMAKE_CXX_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+SET(CMAKE_Fortran_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+
+# The C and CXX include file regular expressions for this directory.
+SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/ccmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target install
+install: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install
+
+# Special rule for the target install
+install/fast: preinstall/fast
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install/fast
+
+# Special rule for the target install/local
+install/local: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
+.PHONY : install/local
+
+# Special rule for the target install/local
+install/local/fast: install/local
+.PHONY : install/local/fast
+
+# Special rule for the target install/strip
+install/strip: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
+.PHONY : install/strip
+
+# Special rule for the target install/strip
+install/strip/fast: install/strip
+.PHONY : install/strip/fast
+
+# Special rule for the target list_install_components
+list_install_components:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
+.PHONY : list_install_components
+
+# Special rule for the target list_install_components
+list_install_components/fast: list_install_components
+.PHONY : list_install_components/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/CMakeFiles/progress.marks
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletDynamics/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletDynamics/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletDynamics/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletDynamics/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Convenience name for target.
+src/BulletDynamics/CMakeFiles/BulletDynamics.dir/rule:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletDynamics/CMakeFiles/BulletDynamics.dir/rule
+.PHONY : src/BulletDynamics/CMakeFiles/BulletDynamics.dir/rule
+
+# Convenience name for target.
+BulletDynamics: src/BulletDynamics/CMakeFiles/BulletDynamics.dir/rule
+.PHONY : BulletDynamics
+
+# fast build rule for target.
+BulletDynamics/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build
+.PHONY : BulletDynamics/fast
+
+# target to build an object file
+Character/btKinematicCharacterController.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.o
+.PHONY : Character/btKinematicCharacterController.o
+
+# target to preprocess a source file
+Character/btKinematicCharacterController.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.i
+.PHONY : Character/btKinematicCharacterController.i
+
+# target to generate assembly for a file
+Character/btKinematicCharacterController.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Character/btKinematicCharacterController.s
+.PHONY : Character/btKinematicCharacterController.s
+
+# target to build an object file
+ConstraintSolver/btConeTwistConstraint.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.o
+.PHONY : ConstraintSolver/btConeTwistConstraint.o
+
+# target to preprocess a source file
+ConstraintSolver/btConeTwistConstraint.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.i
+.PHONY : ConstraintSolver/btConeTwistConstraint.i
+
+# target to generate assembly for a file
+ConstraintSolver/btConeTwistConstraint.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btConeTwistConstraint.s
+.PHONY : ConstraintSolver/btConeTwistConstraint.s
+
+# target to build an object file
+ConstraintSolver/btContactConstraint.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.o
+.PHONY : ConstraintSolver/btContactConstraint.o
+
+# target to preprocess a source file
+ConstraintSolver/btContactConstraint.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.i
+.PHONY : ConstraintSolver/btContactConstraint.i
+
+# target to generate assembly for a file
+ConstraintSolver/btContactConstraint.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btContactConstraint.s
+.PHONY : ConstraintSolver/btContactConstraint.s
+
+# target to build an object file
+ConstraintSolver/btGearConstraint.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.o
+.PHONY : ConstraintSolver/btGearConstraint.o
+
+# target to preprocess a source file
+ConstraintSolver/btGearConstraint.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.i
+.PHONY : ConstraintSolver/btGearConstraint.i
+
+# target to generate assembly for a file
+ConstraintSolver/btGearConstraint.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGearConstraint.s
+.PHONY : ConstraintSolver/btGearConstraint.s
+
+# target to build an object file
+ConstraintSolver/btGeneric6DofConstraint.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.o
+.PHONY : ConstraintSolver/btGeneric6DofConstraint.o
+
+# target to preprocess a source file
+ConstraintSolver/btGeneric6DofConstraint.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.i
+.PHONY : ConstraintSolver/btGeneric6DofConstraint.i
+
+# target to generate assembly for a file
+ConstraintSolver/btGeneric6DofConstraint.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofConstraint.s
+.PHONY : ConstraintSolver/btGeneric6DofConstraint.s
+
+# target to build an object file
+ConstraintSolver/btGeneric6DofSpringConstraint.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.o
+.PHONY : ConstraintSolver/btGeneric6DofSpringConstraint.o
+
+# target to preprocess a source file
+ConstraintSolver/btGeneric6DofSpringConstraint.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.i
+.PHONY : ConstraintSolver/btGeneric6DofSpringConstraint.i
+
+# target to generate assembly for a file
+ConstraintSolver/btGeneric6DofSpringConstraint.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btGeneric6DofSpringConstraint.s
+.PHONY : ConstraintSolver/btGeneric6DofSpringConstraint.s
+
+# target to build an object file
+ConstraintSolver/btHinge2Constraint.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.o
+.PHONY : ConstraintSolver/btHinge2Constraint.o
+
+# target to preprocess a source file
+ConstraintSolver/btHinge2Constraint.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.i
+.PHONY : ConstraintSolver/btHinge2Constraint.i
+
+# target to generate assembly for a file
+ConstraintSolver/btHinge2Constraint.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHinge2Constraint.s
+.PHONY : ConstraintSolver/btHinge2Constraint.s
+
+# target to build an object file
+ConstraintSolver/btHingeConstraint.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.o
+.PHONY : ConstraintSolver/btHingeConstraint.o
+
+# target to preprocess a source file
+ConstraintSolver/btHingeConstraint.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.i
+.PHONY : ConstraintSolver/btHingeConstraint.i
+
+# target to generate assembly for a file
+ConstraintSolver/btHingeConstraint.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btHingeConstraint.s
+.PHONY : ConstraintSolver/btHingeConstraint.s
+
+# target to build an object file
+ConstraintSolver/btPoint2PointConstraint.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.o
+.PHONY : ConstraintSolver/btPoint2PointConstraint.o
+
+# target to preprocess a source file
+ConstraintSolver/btPoint2PointConstraint.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.i
+.PHONY : ConstraintSolver/btPoint2PointConstraint.i
+
+# target to generate assembly for a file
+ConstraintSolver/btPoint2PointConstraint.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btPoint2PointConstraint.s
+.PHONY : ConstraintSolver/btPoint2PointConstraint.s
+
+# target to build an object file
+ConstraintSolver/btSequentialImpulseConstraintSolver.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.o
+.PHONY : ConstraintSolver/btSequentialImpulseConstraintSolver.o
+
+# target to preprocess a source file
+ConstraintSolver/btSequentialImpulseConstraintSolver.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.i
+.PHONY : ConstraintSolver/btSequentialImpulseConstraintSolver.i
+
+# target to generate assembly for a file
+ConstraintSolver/btSequentialImpulseConstraintSolver.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSequentialImpulseConstraintSolver.s
+.PHONY : ConstraintSolver/btSequentialImpulseConstraintSolver.s
+
+# target to build an object file
+ConstraintSolver/btSliderConstraint.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.o
+.PHONY : ConstraintSolver/btSliderConstraint.o
+
+# target to preprocess a source file
+ConstraintSolver/btSliderConstraint.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.i
+.PHONY : ConstraintSolver/btSliderConstraint.i
+
+# target to generate assembly for a file
+ConstraintSolver/btSliderConstraint.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSliderConstraint.s
+.PHONY : ConstraintSolver/btSliderConstraint.s
+
+# target to build an object file
+ConstraintSolver/btSolve2LinearConstraint.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.o
+.PHONY : ConstraintSolver/btSolve2LinearConstraint.o
+
+# target to preprocess a source file
+ConstraintSolver/btSolve2LinearConstraint.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.i
+.PHONY : ConstraintSolver/btSolve2LinearConstraint.i
+
+# target to generate assembly for a file
+ConstraintSolver/btSolve2LinearConstraint.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btSolve2LinearConstraint.s
+.PHONY : ConstraintSolver/btSolve2LinearConstraint.s
+
+# target to build an object file
+ConstraintSolver/btTypedConstraint.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.o
+.PHONY : ConstraintSolver/btTypedConstraint.o
+
+# target to preprocess a source file
+ConstraintSolver/btTypedConstraint.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.i
+.PHONY : ConstraintSolver/btTypedConstraint.i
+
+# target to generate assembly for a file
+ConstraintSolver/btTypedConstraint.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btTypedConstraint.s
+.PHONY : ConstraintSolver/btTypedConstraint.s
+
+# target to build an object file
+ConstraintSolver/btUniversalConstraint.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.o
+.PHONY : ConstraintSolver/btUniversalConstraint.o
+
+# target to preprocess a source file
+ConstraintSolver/btUniversalConstraint.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.i
+.PHONY : ConstraintSolver/btUniversalConstraint.i
+
+# target to generate assembly for a file
+ConstraintSolver/btUniversalConstraint.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/ConstraintSolver/btUniversalConstraint.s
+.PHONY : ConstraintSolver/btUniversalConstraint.s
+
+# target to build an object file
+Dynamics/Bullet-C-API.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.o
+.PHONY : Dynamics/Bullet-C-API.o
+
+# target to preprocess a source file
+Dynamics/Bullet-C-API.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.i
+.PHONY : Dynamics/Bullet-C-API.i
+
+# target to generate assembly for a file
+Dynamics/Bullet-C-API.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/Bullet-C-API.s
+.PHONY : Dynamics/Bullet-C-API.s
+
+# target to build an object file
+Dynamics/btDiscreteDynamicsWorld.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.o
+.PHONY : Dynamics/btDiscreteDynamicsWorld.o
+
+# target to preprocess a source file
+Dynamics/btDiscreteDynamicsWorld.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.i
+.PHONY : Dynamics/btDiscreteDynamicsWorld.i
+
+# target to generate assembly for a file
+Dynamics/btDiscreteDynamicsWorld.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btDiscreteDynamicsWorld.s
+.PHONY : Dynamics/btDiscreteDynamicsWorld.s
+
+# target to build an object file
+Dynamics/btRigidBody.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.o
+.PHONY : Dynamics/btRigidBody.o
+
+# target to preprocess a source file
+Dynamics/btRigidBody.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.i
+.PHONY : Dynamics/btRigidBody.i
+
+# target to generate assembly for a file
+Dynamics/btRigidBody.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btRigidBody.s
+.PHONY : Dynamics/btRigidBody.s
+
+# target to build an object file
+Dynamics/btSimpleDynamicsWorld.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.o
+.PHONY : Dynamics/btSimpleDynamicsWorld.o
+
+# target to preprocess a source file
+Dynamics/btSimpleDynamicsWorld.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.i
+.PHONY : Dynamics/btSimpleDynamicsWorld.i
+
+# target to generate assembly for a file
+Dynamics/btSimpleDynamicsWorld.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Dynamics/btSimpleDynamicsWorld.s
+.PHONY : Dynamics/btSimpleDynamicsWorld.s
+
+# target to build an object file
+Vehicle/btRaycastVehicle.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.o
+.PHONY : Vehicle/btRaycastVehicle.o
+
+# target to preprocess a source file
+Vehicle/btRaycastVehicle.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.i
+.PHONY : Vehicle/btRaycastVehicle.i
+
+# target to generate assembly for a file
+Vehicle/btRaycastVehicle.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btRaycastVehicle.s
+.PHONY : Vehicle/btRaycastVehicle.s
+
+# target to build an object file
+Vehicle/btWheelInfo.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.o
+.PHONY : Vehicle/btWheelInfo.o
+
+# target to preprocess a source file
+Vehicle/btWheelInfo.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.i
+.PHONY : Vehicle/btWheelInfo.i
+
+# target to generate assembly for a file
+Vehicle/btWheelInfo.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletDynamics/CMakeFiles/BulletDynamics.dir/build.make src/BulletDynamics/CMakeFiles/BulletDynamics.dir/Vehicle/btWheelInfo.s
+.PHONY : Vehicle/btWheelInfo.s
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... BulletDynamics"
+ @echo "... edit_cache"
+ @echo "... install"
+ @echo "... install/local"
+ @echo "... install/strip"
+ @echo "... list_install_components"
+ @echo "... rebuild_cache"
+ @echo "... Character/btKinematicCharacterController.o"
+ @echo "... Character/btKinematicCharacterController.i"
+ @echo "... Character/btKinematicCharacterController.s"
+ @echo "... ConstraintSolver/btConeTwistConstraint.o"
+ @echo "... ConstraintSolver/btConeTwistConstraint.i"
+ @echo "... ConstraintSolver/btConeTwistConstraint.s"
+ @echo "... ConstraintSolver/btContactConstraint.o"
+ @echo "... ConstraintSolver/btContactConstraint.i"
+ @echo "... ConstraintSolver/btContactConstraint.s"
+ @echo "... ConstraintSolver/btGearConstraint.o"
+ @echo "... ConstraintSolver/btGearConstraint.i"
+ @echo "... ConstraintSolver/btGearConstraint.s"
+ @echo "... ConstraintSolver/btGeneric6DofConstraint.o"
+ @echo "... ConstraintSolver/btGeneric6DofConstraint.i"
+ @echo "... ConstraintSolver/btGeneric6DofConstraint.s"
+ @echo "... ConstraintSolver/btGeneric6DofSpringConstraint.o"
+ @echo "... ConstraintSolver/btGeneric6DofSpringConstraint.i"
+ @echo "... ConstraintSolver/btGeneric6DofSpringConstraint.s"
+ @echo "... ConstraintSolver/btHinge2Constraint.o"
+ @echo "... ConstraintSolver/btHinge2Constraint.i"
+ @echo "... ConstraintSolver/btHinge2Constraint.s"
+ @echo "... ConstraintSolver/btHingeConstraint.o"
+ @echo "... ConstraintSolver/btHingeConstraint.i"
+ @echo "... ConstraintSolver/btHingeConstraint.s"
+ @echo "... ConstraintSolver/btPoint2PointConstraint.o"
+ @echo "... ConstraintSolver/btPoint2PointConstraint.i"
+ @echo "... ConstraintSolver/btPoint2PointConstraint.s"
+ @echo "... ConstraintSolver/btSequentialImpulseConstraintSolver.o"
+ @echo "... ConstraintSolver/btSequentialImpulseConstraintSolver.i"
+ @echo "... ConstraintSolver/btSequentialImpulseConstraintSolver.s"
+ @echo "... ConstraintSolver/btSliderConstraint.o"
+ @echo "... ConstraintSolver/btSliderConstraint.i"
+ @echo "... ConstraintSolver/btSliderConstraint.s"
+ @echo "... ConstraintSolver/btSolve2LinearConstraint.o"
+ @echo "... ConstraintSolver/btSolve2LinearConstraint.i"
+ @echo "... ConstraintSolver/btSolve2LinearConstraint.s"
+ @echo "... ConstraintSolver/btTypedConstraint.o"
+ @echo "... ConstraintSolver/btTypedConstraint.i"
+ @echo "... ConstraintSolver/btTypedConstraint.s"
+ @echo "... ConstraintSolver/btUniversalConstraint.o"
+ @echo "... ConstraintSolver/btUniversalConstraint.i"
+ @echo "... ConstraintSolver/btUniversalConstraint.s"
+ @echo "... Dynamics/Bullet-C-API.o"
+ @echo "... Dynamics/Bullet-C-API.i"
+ @echo "... Dynamics/Bullet-C-API.s"
+ @echo "... Dynamics/btDiscreteDynamicsWorld.o"
+ @echo "... Dynamics/btDiscreteDynamicsWorld.i"
+ @echo "... Dynamics/btDiscreteDynamicsWorld.s"
+ @echo "... Dynamics/btRigidBody.o"
+ @echo "... Dynamics/btRigidBody.i"
+ @echo "... Dynamics/btRigidBody.s"
+ @echo "... Dynamics/btSimpleDynamicsWorld.o"
+ @echo "... Dynamics/btSimpleDynamicsWorld.i"
+ @echo "... Dynamics/btSimpleDynamicsWorld.s"
+ @echo "... Vehicle/btRaycastVehicle.o"
+ @echo "... Vehicle/btRaycastVehicle.i"
+ @echo "... Vehicle/btRaycastVehicle.s"
+ @echo "... Vehicle/btWheelInfo.o"
+ @echo "... Vehicle/btWheelInfo.i"
+ @echo "... Vehicle/btWheelInfo.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
--- /dev/null
+# Install script for directory: /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics
+
+# Set the install prefix
+IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ SET(CMAKE_INSTALL_PREFIX "/usr/local")
+ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ IF(BUILD_TYPE)
+ STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ ELSE(BUILD_TYPE)
+ SET(CMAKE_INSTALL_CONFIG_NAME "Release")
+ ENDIF(BUILD_TYPE)
+ MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+
+# Set the component getting installed.
+IF(NOT CMAKE_INSTALL_COMPONENT)
+ IF(COMPONENT)
+ MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
+ SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ ELSE(COMPONENT)
+ SET(CMAKE_INSTALL_COMPONENT)
+ ENDIF(COMPONENT)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT)
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE STATIC_LIBRARY FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/libBulletDynamics.a")
+ IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libBulletDynamics.a" AND
+ NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libBulletDynamics.a")
+ EXECUTE_PROCESS(COMMAND "/usr/bin/ranlib" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libBulletDynamics.a")
+ ENDIF()
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ list(APPEND CPACK_ABSOLUTE_DESTINATION_FILES
+ "/usr/local/include/bullet/BulletDynamics")
+FILE(INSTALL DESTINATION "/usr/local/include/bullet" TYPE DIRECTORY FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics" FILES_MATCHING REGEX "/[^/]*\\.h$" REGEX "/\\.svn$" EXCLUDE REGEX "/cmakefiles$" EXCLUDE)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ list(APPEND CPACK_ABSOLUTE_DESTINATION_FILES
+ "/usr/local/include/bullet/BulletDynamics/btBulletDynamicsCommon.h")
+FILE(INSTALL DESTINATION "/usr/local/include/bullet/BulletDynamics" TYPE FILE FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/../btBulletDynamicsCommon.h")
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
--- /dev/null
+#IncludeRegexLine: ^[ ]*#[ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/HeapManager.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btScalar.h
+LinearMath/btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btMinMax.h
+physics_effects/base_level/base/pfx_vectormath_include.win32.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/physics_effects/base_level/base/pfx_vectormath_include.win32.h
+vectormath/vmInclude.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/vectormath/vmInclude.h
+malloc.h
+-
+string.h
+-
+stdio.h
+-
+stdint.h
+-
+stdlib.h
+-
+string.h
+-
+spu_printf.h
+-
+stdio.h
+-
+stdio.h
+-
+PpuAddressSpace.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PpuAddressSpace.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PosixThreadSupport.cpp
+stdio.h
+-
+PosixThreadSupport.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PosixThreadSupport.h
+errno.h
+-
+unistd.h
+-
+SpuCollisionTaskProcess.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PosixThreadSupport.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btScalar.h
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+pthread.h
+-
+semaphore.h
+-
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btAlignedObjectArray.h
+btThreadSupportInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PpuAddressSpace.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SequentialThreadSupport.cpp
+SequentialThreadSupport.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SequentialThreadSupport.h
+SpuCollisionTaskProcess.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SequentialThreadSupport.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btScalar.h
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btAlignedObjectArray.h
+btThreadSupportInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionObjectWrapper.cpp
+SpuCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionObjectWrapper.h
+BulletCollision/CollisionShapes/btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionShapes/btCollisionShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionObjectWrapper.h
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionDispatch/btCollisionObject.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.cpp
+SpuCollisionTaskProcess.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+assert.h
+-
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btScalar.h
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btAlignedObjectArray.h
+SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+btThreadSupportInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+string.h
+-
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionShapes/btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionShapes/btCollisionShape.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionShapes/btConvexShape.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btAlignedAllocator.h
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp
+SpuContactManifoldCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionShapes/btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionShapes/btCollisionShape.h
+BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/BroadphaseCollision/btDispatcher.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btTransformUtil.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuFakeDma.cpp
+SpuFakeDma.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuFakeDma.h
+LinearMath/btScalar.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuFakeDma.h
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btScalar.h
+cell/dma.h
+-
+stdint.h
+-
+spu_mfcio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp
+SpuGatheringCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuGatheringCollisionDispatcher.h
+SpuCollisionTaskProcess.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
+SpuContactManifoldCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionShapes/btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btQuickprof.h
+BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+stdio.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/stdio.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuGatheringCollisionDispatcher.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuLibspe2Support.cpp
+SpuLibspe2Support.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuLibspe2Support.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuLibspe2Support.h
+LinearMath/btScalar.h
+-
+stdlib.h
+-
+stdio.h
+-
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btAlignedObjectArray.h
+SpuCollisionTaskProcess.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+SpuSampleTaskProcess.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTaskProcess.h
+btThreadSupportInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+libspe2.h
+-
+pthread.h
+-
+sched.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../LinearMath/btScalar.h
+LinearMath/btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../LinearMath/btMinMax.h
+physics_effects/base_level/base/pfx_vectormath_include.win32.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../physics_effects/base_level/base/pfx_vectormath_include.win32.h
+vectormath/vmInclude.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../vectormath/vmInclude.h
+malloc.h
+-
+string.h
+-
+stdio.h
+-
+stdint.h
+-
+stdlib.h
+-
+string.h
+-
+spu_printf.h
+-
+stdio.h
+-
+stdio.h
+-
+PpuAddressSpace.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PpuAddressSpace.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PpuAddressSpace.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuCollisionTaskProcess.h
+assert.h
+-
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../LinearMath/btScalar.h
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../LinearMath/btAlignedObjectArray.h
+SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+btThreadSupportInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../btThreadSupportInterface.h
+string.h
+-
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionShapes/btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../BulletCollision/CollisionShapes/btCollisionShape.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../BulletCollision/CollisionShapes/btConvexShape.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../LinearMath/btAlignedAllocator.h
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuContactManifoldCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../BulletCollision/BroadphaseCollision/btDispatcher.h
+LinearMath/btTransformUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../LinearMath/btTransformUtil.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+SpuFakeDma.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuFakeDma.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../LinearMath/btScalar.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuFakeDma.h
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../LinearMath/btScalar.h
+cell/dma.h
+-
+stdint.h
+-
+spu_mfcio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuGatheringCollisionDispatcher.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuLibspe2Support.h
+LinearMath/btScalar.h
+-
+stdlib.h
+-
+stdio.h
+-
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../LinearMath/btAlignedObjectArray.h
+SpuCollisionTaskProcess.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuCollisionTaskProcess.h
+SpuSampleTaskProcess.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTaskProcess.h
+btThreadSupportInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../btThreadSupportInterface.h
+libspe2.h
+-
+pthread.h
+-
+sched.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+../PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+../SpuLibspe2Support.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuNarrowPhaseCollisionTask/../SpuLibspe2Support.h
+spu_intrinsics.h
+-
+spu_mfcio.h
+-
+SpuFakeDma.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/SpuSampleTask.h
+../PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/../PlatformDefinitions.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/LinearMath/btScalar.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/LinearMath/btVector3.h
+LinearMath/btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/LinearMath/btMatrix3x3.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/LinearMath/btAlignedAllocator.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTaskProcess.h
+assert.h
+-
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+stdlib.h
+-
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../LinearMath/btAlignedObjectArray.h
+SpuSampleTask/SpuSampleTask.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/SpuSampleTask.h
+../SpuLibspe2Support.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../../SpuLibspe2Support.h
+spu_intrinsics.h
+-
+spu_mfcio.h
+-
+SpuFakeDma.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../btThreadSupportInterface.h
+LinearMath/btScalar.h
+-
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+PpuAddressSpace.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PpuAddressSpace.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/Box.h
+math.h
+-
+../PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp
+SpuCollisionShapes.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+spu_intrinsics.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+../SpuDoubleBuffer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionShapes/btConvexInternalShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/CollisionShapes/btCylinderShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btCylinderShape.h
+BulletCollision/CollisionShapes/btStaticPlaneShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+BulletCollision/CollisionShapes/btOptimizedBvh.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btOptimizedBvh.h
+BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btSphereShape.h
+BulletCollision/CollisionShapes/btCapsuleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btCapsuleShape.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btConvexShape.h
+BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+BulletCollision/CollisionShapes/btConvexHullShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btConvexHullShape.h
+BulletCollision/CollisionShapes/btCompoundShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btCompoundShape.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp
+SpuContactResult.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h
+stdint.h
+-
+../SpuDoubleBuffer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/LinearMath/btTransform.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp
+SpuGatheringCollisionTask.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+../SpuDoubleBuffer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+../SpuCollisionTaskProcess.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuCollisionTaskProcess.h
+../SpuGatheringCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuGatheringCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+../SpuContactManifoldCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuContactManifoldCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionDispatch/btCollisionObject.h
+SpuContactResult.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h
+BulletCollision/CollisionShapes/btOptimizedBvh.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btOptimizedBvh.h
+BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btSphereShape.h
+BulletCollision/CollisionShapes/btConvexPointCloudShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btConvexPointCloudShape.h
+BulletCollision/CollisionShapes/btCapsuleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btCapsuleShape.h
+BulletCollision/CollisionShapes/btConvexShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btConvexShape.h
+BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+BulletCollision/CollisionShapes/btConvexHullShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btConvexHullShape.h
+BulletCollision/CollisionShapes/btCompoundShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btCompoundShape.h
+SpuMinkowskiPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.h
+BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+boxBoxDistance.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.h
+BulletMultiThreaded/vectormath2bullet.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletMultiThreaded/vectormath2bullet.h
+SpuCollisionShapes.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+BulletCollision/CollisionShapes/btTriangleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btTriangleShape.h
+spu_intrinsics.h
+-
+sys/spu_thread.h
+-
+sys/spu_event.h
+-
+stdint.h
+-
+../Extras/software_cache/cache/include/spe_cache.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../Extras/software_cache/cache/include/spe_cache.h
+LibSN_SPU.h
+-
+spu_printf.h
+-
+stdio.h
+-
+stdlib.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+../PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+../SpuLibspe2Support.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuLibspe2Support.h
+spu_intrinsics.h
+-
+spu_mfcio.h
+-
+SpuFakeDma.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp
+SpuMinkowskiPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.h
+SpuContactResult.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h
+SpuPreferredPenetrationDirections.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuPreferredPenetrationDirections.h
+BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+SpuCollisionShapes.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.h
+BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuPreferredPenetrationDirections.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp
+math.h
+-
+../PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+boxBoxDistance.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.h
+Box.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/Box.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/../PlatformDefinitions.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/../LinearMath/btScalar.h
+LinearMath/btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/../LinearMath/btMinMax.h
+physics_effects/base_level/base/pfx_vectormath_include.win32.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/../physics_effects/base_level/base/pfx_vectormath_include.win32.h
+vectormath/vmInclude.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/../vectormath/vmInclude.h
+malloc.h
+-
+string.h
+-
+stdio.h
+-
+stdint.h
+-
+stdlib.h
+-
+string.h
+-
+spu_printf.h
+-
+stdio.h
+-
+stdio.h
+-
+PpuAddressSpace.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/../PpuAddressSpace.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/SpuSampleTask.h
+../PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/../PlatformDefinitions.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/LinearMath/btScalar.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/LinearMath/btVector3.h
+LinearMath/btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/LinearMath/btMatrix3x3.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/LinearMath/btAlignedAllocator.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTaskProcess.cpp
+SpuSampleTaskProcess.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTaskProcess.h
+stdio.h
+-
+btThreadSupportInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+string.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTaskProcess.h
+assert.h
+-
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+stdlib.h
+-
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btAlignedObjectArray.h
+SpuSampleTask/SpuSampleTask.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/SpuSampleTask.h
+../SpuLibspe2Support.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/../SpuLibspe2Support.h
+spu_intrinsics.h
+-
+spu_mfcio.h
+-
+SpuFakeDma.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/TrbStateVec.h
+stdlib.h
+-
+vecmath/vmInclude.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/vecmath/vmInclude.h
+vectormath/vmInclude.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/vectormath/vmInclude.h
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/Win32ThreadSupport.cpp
+Win32ThreadSupport.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/Win32ThreadSupport.h
+windows.h
+-
+SpuCollisionTaskProcess.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/Win32ThreadSupport.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btScalar.h
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btAlignedObjectArray.h
+btThreadSupportInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphase.cpp
+BulletMultiThreaded/btGpuDefines.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletMultiThreaded/btGpuDefines.h
+BulletMultiThreaded/btGpuUtilsSharedDefs.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletMultiThreaded/btGpuUtilsSharedDefs.h
+BulletMultiThreaded/btGpuUtilsSharedCode.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletMultiThreaded/btGpuUtilsSharedCode.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btAlignedAllocator.h
+LinearMath/btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btQuickprof.h
+BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+btGpuDefines.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpuDefines.h
+btGpuUtilsSharedDefs.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpuUtilsSharedDefs.h
+btGpu3DGridBroadphaseSharedDefs.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphaseSharedDefs.h
+btGpu3DGridBroadphase.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphase.h
+string.h
+-
+stdio.h
+-
+btGpu3DGridBroadphaseSharedCode.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphaseSharedCode.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphase.h
+BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+btGpu3DGridBroadphaseSharedTypes.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphaseSharedTypes.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphaseSharedCode.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphaseSharedDefs.h
+btGpu3DGridBroadphaseSharedTypes.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphaseSharedTypes.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphaseSharedTypes.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpuDefines.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpuUtilsSharedDefs.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btParallelConstraintSolver.cpp
+btParallelConstraintSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btParallelConstraintSolver.h
+BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/BroadphaseCollision/btDispatcher.h
+LinearMath/btPoolAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btPoolAllocator.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletMultiThreaded/vectormath2bullet.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletMultiThreaded/vectormath2bullet.h
+LinearMath/btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btQuickprof.h
+BulletMultiThreaded/btThreadSupportInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletMultiThreaded/btThreadSupportInterface.h
+vecmath/vmInclude.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/vecmath/vmInclude.h
+vectormath/vmInclude.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/vectormath/vmInclude.h
+HeapManager.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/HeapManager.h
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btScalar.h
+TrbStateVec.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/TrbStateVec.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btParallelConstraintSolver.h
+BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/LinearMath/btScalar.h
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+SpuDispatch/BulletPE2ConstraintSolverSpursSupport.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuDispatch/BulletPE2ConstraintSolverSpursSupport.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.cpp
+btThreadSupportInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+LinearMath/btScalar.h
+-
+PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+PpuAddressSpace.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PpuAddressSpace.h
+
+src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+btBroadphaseProxy.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+
+src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btScalar.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+
+src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+LinearMath/btScalar.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/BroadphaseCollision/btDispatcher.h
+LinearMath/btScalar.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+btBroadphaseInterface.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+btBroadphaseProxy.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btOverlappingPairCallback.h
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+
+src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+stdio.h
+-
+stdlib.h
+-
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+btOverlappingPairCache.h
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+
+src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+
+src/BulletCollision/CollisionDispatch/btCollisionObject.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+LinearMath/btMotionState.h
+src/BulletCollision/CollisionDispatch/LinearMath/btMotionState.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+LinearMath/btScalar.h
+src/BulletCollision/CollisionDispatch/LinearMath/btScalar.h
+
+src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btCollisionDispatcher.h
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+
+src/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+
+src/BulletCollision/CollisionShapes/btBoxShape.h
+btPolyhedralConvexShape.h
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+btCollisionMargin.h
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btMinMax.h
+src/BulletCollision/CollisionShapes/LinearMath/btMinMax.h
+
+src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+btTriangleMeshShape.h
+src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+btOptimizedBvh.h
+src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedAllocator.h
+btTriangleInfoMap.h
+src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+
+src/BulletCollision/CollisionShapes/btCapsuleShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btCompoundShape.h
+btCollisionShape.h
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btCollisionMargin.h
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+btCollisionShape.h
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btTriangleCallback.h
+src/BulletCollision/CollisionShapes/btTriangleCallback.h
+
+src/BulletCollision/CollisionShapes/btConvexHullShape.h
+btPolyhedralConvexShape.h
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+btConvexShape.h
+src/BulletCollision/CollisionShapes/btConvexShape.h
+LinearMath/btAabbUtil2.h
+src/BulletCollision/CollisionShapes/LinearMath/btAabbUtil2.h
+
+src/BulletCollision/CollisionShapes/btConvexPointCloudShape.h
+btPolyhedralConvexShape.h
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionShapes/btConvexShape.h
+btCollisionShape.h
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btCollisionMargin.h
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedAllocator.h
+
+src/BulletCollision/CollisionShapes/btCylinderShape.h
+btBoxShape.h
+src/BulletCollision/CollisionShapes/btBoxShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+
+src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+
+src/BulletCollision/CollisionShapes/btSphereShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+btConcaveShape.h
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+
+src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+btTriangleCallback.h
+src/BulletCollision/CollisionShapes/btTriangleCallback.h
+btConcaveShape.h
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+
+src/BulletCollision/CollisionShapes/btTriangleCallback.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+
+src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+btStridingMeshInterface.h
+src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+LinearMath/btScalar.h
+src/BulletCollision/CollisionShapes/LinearMath/btScalar.h
+
+src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+LinearMath/btHashMap.h
+src/BulletCollision/CollisionShapes/LinearMath/btHashMap.h
+LinearMath/btSerializer.h
+src/BulletCollision/CollisionShapes/LinearMath/btSerializer.h
+
+src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+btConcaveShape.h
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+btStridingMeshInterface.h
+src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+
+src/BulletCollision/CollisionShapes/btTriangleShape.h
+btConvexShape.h
+src/BulletCollision/CollisionShapes/btConvexShape.h
+btBoxShape.h
+src/BulletCollision/CollisionShapes/btBoxShape.h
+
+src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+btSimplexSolverInterface.h
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+
+src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+btConvexPenetrationDepthSolver.h
+src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+
+src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btCollisionMargin.h
+btSimplexSolverInterface.h
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btTransformUtil.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransformUtil.h
+physics_effects/base_level/solver/pfx_constraint_row.h
+src/BulletCollision/NarrowPhaseCollision/physics_effects/base_level/solver/pfx_constraint_row.h
+
+src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+btManifoldPoint.h
+src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btAlignedAllocator.h
+
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+btVoronoiSimplexSolver.h
+src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+
+src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+btSimplexSolverInterface.h
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+LinearMath/btScalar.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btScalar.h
+
+src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+LinearMath/btScalar.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btScalar.h
+
+src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+LinearMath/btMatrix3x3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btMatrix3x3.h
+
+src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btSolverBody.h
+BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletDynamics/ConstraintSolver/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+BulletDynamics/ConstraintSolver/btConstraintSolver.h
+src/BulletDynamics/ConstraintSolver/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+
+src/BulletDynamics/ConstraintSolver/btSolverBody.h
+LinearMath/btVector3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+LinearMath/btMatrix3x3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btMatrix3x3.h
+LinearMath/btAlignedAllocator.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btAlignedAllocator.h
+LinearMath/btTransformUtil.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btTransformUtil.h
+
+src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+LinearMath/btVector3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btVector3.h
+LinearMath/btMatrix3x3.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btMatrix3x3.h
+btJacobianEntry.h
+src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btAlignedObjectArray.h
+btSolverBody.h
+src/BulletDynamics/ConstraintSolver/btSolverBody.h
+
+src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+LinearMath/btScalar.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btScalar.h
+btSolverConstraint.h
+src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+BulletDynamics/Dynamics/btRigidBody.h
+src/BulletDynamics/ConstraintSolver/BulletDynamics/Dynamics/btRigidBody.h
+
+src/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/Dynamics/LinearMath/btAlignedObjectArray.h
+LinearMath/btTransform.h
+src/BulletDynamics/Dynamics/LinearMath/btTransform.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/Dynamics/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/Dynamics/BulletCollision/CollisionDispatch/btCollisionObject.h
+
+src/BulletMultiThreaded/PpuAddressSpace.h
+
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+SpuFakeDma.h
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuFakeDma.h
+LinearMath/btScalar.h
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../LinearMath/btScalar.h
+
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+../SpuDoubleBuffer.h
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/CollisionShapes/btCylinderShape.h
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btCylinderShape.h
+BulletCollision/CollisionShapes/btStaticPlaneShape.h
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+BulletCollision/CollisionShapes/btOptimizedBvh.h
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btOptimizedBvh.h
+BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btSphereShape.h
+BulletCollision/CollisionShapes/btCapsuleShape.h
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btCapsuleShape.h
+BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btConvexShape.h
+BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+BulletCollision/CollisionShapes/btConvexHullShape.h
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btConvexHullShape.h
+BulletCollision/CollisionShapes/btCompoundShape.h
+src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/BulletCollision/CollisionShapes/btCompoundShape.h
+
+src/BulletMultiThreaded/btGpuDefines.h
+
+src/BulletMultiThreaded/btGpuUtilsSharedCode.h
+btGpuUtilsSharedDefs.h
+src/BulletMultiThreaded/btGpuUtilsSharedDefs.h
+
+src/BulletMultiThreaded/btGpuUtilsSharedDefs.h
+
+src/BulletMultiThreaded/btThreadSupportInterface.h
+LinearMath/btScalar.h
+-
+PlatformDefinitions.h
+src/BulletMultiThreaded/PlatformDefinitions.h
+PpuAddressSpace.h
+src/BulletMultiThreaded/PpuAddressSpace.h
+
+src/BulletMultiThreaded/vectormath2bullet.h
+PlatformDefinitions.h
+src/BulletMultiThreaded/PlatformDefinitions.h
+LinearMath/btVector3.h
+src/BulletMultiThreaded/LinearMath/btVector3.h
+LinearMath/btQuaternion.h
+src/BulletMultiThreaded/LinearMath/btQuaternion.h
+LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/LinearMath/btMatrix3x3.h
+
+src/LinearMath/btAabbUtil2.h
+btTransform.h
+src/LinearMath/btTransform.h
+btVector3.h
+src/LinearMath/btVector3.h
+btMinMax.h
+src/LinearMath/btMinMax.h
+
+src/LinearMath/btAlignedAllocator.h
+btScalar.h
+src/LinearMath/btScalar.h
+
+src/LinearMath/btAlignedObjectArray.h
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+memory.h
+-
+string.h
+-
+new
+-
+
+src/LinearMath/btHashMap.h
+btAlignedObjectArray.h
+src/LinearMath/btAlignedObjectArray.h
+
+src/LinearMath/btMatrix3x3.h
+btVector3.h
+src/LinearMath/btVector3.h
+btQuaternion.h
+src/LinearMath/btQuaternion.h
+stdio.h
+-
+
+src/LinearMath/btMinMax.h
+btScalar.h
+src/LinearMath/btScalar.h
+
+src/LinearMath/btMotionState.h
+btTransform.h
+src/LinearMath/btTransform.h
+
+src/LinearMath/btPoolAllocator.h
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+
+src/LinearMath/btQuadWord.h
+btScalar.h
+src/LinearMath/btScalar.h
+btMinMax.h
+src/LinearMath/btMinMax.h
+altivec.h
+-
+
+src/LinearMath/btQuaternion.h
+btVector3.h
+src/LinearMath/btVector3.h
+btQuadWord.h
+src/LinearMath/btQuadWord.h
+
+src/LinearMath/btQuickprof.h
+stdio.h
+-
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+new
+-
+
+src/LinearMath/btScalar.h
+math.h
+-
+stdlib.h
+-
+float.h
+-
+ppcintrinsics.h
+-
+emmintrin.h
+-
+stdio.h
+-
+assert.h
+-
+assert.h
+-
+spu_printf.h
+-
+assert.h
+-
+smmintrin.h
+-
+tmmintrin.h
+-
+pmmintrin.h
+-
+emmintrin.h
+-
+arm_neon.h
+-
+assert.h
+-
+stdio.h
+-
+assert.h
+-
+arm_neon.h
+-
+
+src/LinearMath/btSerializer.h
+btScalar.h
+src/LinearMath/btScalar.h
+btStackAlloc.h
+src/LinearMath/btStackAlloc.h
+btHashMap.h
+src/LinearMath/btHashMap.h
+memory.h
+-
+string.h
+-
+
+src/LinearMath/btStackAlloc.h
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+
+src/LinearMath/btTransform.h
+btMatrix3x3.h
+src/LinearMath/btMatrix3x3.h
+
+src/LinearMath/btTransformUtil.h
+btTransform.h
+src/LinearMath/btTransform.h
+
+src/LinearMath/btVector3.h
+btScalar.h
+src/LinearMath/btScalar.h
+btMinMax.h
+src/LinearMath/btMinMax.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+
+src/vectormath/neon/vectormath_aos.h
+math.h
+-
+stdio.h
+-
+vec_aos.h
+src/vectormath/neon/vec_aos.h
+quat_aos.h
+src/vectormath/neon/quat_aos.h
+mat_aos.h
+src/vectormath/neon/mat_aos.h
+
+src/vectormath/scalar/vectormath_aos.h
+math.h
+-
+stdio.h
+-
+vec_aos.h
+src/vectormath/scalar/vec_aos.h
+quat_aos.h
+src/vectormath/scalar/quat_aos.h
+mat_aos.h
+src/vectormath/scalar/mat_aos.h
+
+src/vectormath/sse/boolInVec.h
+math.h
+-
+floatInVec.h
+src/vectormath/sse/floatInVec.h
+
+src/vectormath/sse/floatInVec.h
+math.h
+-
+xmmintrin.h
+-
+boolInVec.h
+src/vectormath/sse/boolInVec.h
+
+src/vectormath/sse/mat_aos.h
+
+src/vectormath/sse/quat_aos.h
+
+src/vectormath/sse/vec_aos.h
+
+src/vectormath/sse/vecidx_aos.h
+floatInVec.h
+src/vectormath/sse/floatInVec.h
+
+src/vectormath/sse/vectormath_aos.h
+math.h
+-
+xmmintrin.h
+-
+emmintrin.h
+-
+assert.h
+-
+pmmintrin.h
+-
+vecidx_aos.h
+src/vectormath/sse/vecidx_aos.h
+floatInVec.h
+src/vectormath/sse/floatInVec.h
+boolInVec.h
+src/vectormath/sse/boolInVec.h
+stdio.h
+-
+vec_aos.h
+src/vectormath/sse/vec_aos.h
+quat_aos.h
+src/vectormath/sse/quat_aos.h
+mat_aos.h
+src/vectormath/sse/mat_aos.h
+
+src/vectormath/vmInclude.h
+LinearMath/btScalar.h
+src/vectormath/LinearMath/btScalar.h
+vectormath_aos.h
+-
+sse/vectormath_aos.h
+src/vectormath/sse/vectormath_aos.h
+neon/vectormath_aos.h
+src/vectormath/neon/vectormath_aos.h
+scalar/vectormath_aos.h
+src/vectormath/scalar/vectormath_aos.h
+
--- /dev/null
+# The set of languages for which implicit dependencies are needed:
+SET(CMAKE_DEPENDS_LANGUAGES
+ "CXX"
+ )
+# The set of files for implicit dependencies of each language:
+SET(CMAKE_DEPENDS_CHECK_CXX
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PosixThreadSupport.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SequentialThreadSupport.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionObjectWrapper.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuFakeDma.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuLibspe2Support.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTaskProcess.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/Win32ThreadSupport.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphase.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btParallelConstraintSolver.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o"
+ )
+SET(CMAKE_CXX_COMPILER_ID "GNU")
+
+# Preprocessor definitions for this target.
+SET(CMAKE_TARGET_DEFINITIONS
+ "USE_GRAPHICAL_BENCHMARK"
+ )
+
+# Targets to which this target links.
+SET(CMAKE_TARGET_LINKED_INFO_FILES
+ )
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# Include any dependencies generated for this target.
+include src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/depend.make
+
+# Include the progress variables for this target.
+include src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/BulletMultiThreaded/SpuFakeDma.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_1)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuFakeDma.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuFakeDma.cpp > CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuFakeDma.cpp -o CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletMultiThreaded/SpuLibspe2Support.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_2)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuLibspe2Support.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuLibspe2Support.cpp > CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuLibspe2Support.cpp -o CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/BulletMultiThreaded/btThreadSupportInterface.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_3)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.cpp > CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.cpp -o CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletMultiThreaded/Win32ThreadSupport.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_4)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/Win32ThreadSupport.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/Win32ThreadSupport.cpp > CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/Win32ThreadSupport.cpp -o CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletMultiThreaded/PosixThreadSupport.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_5)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PosixThreadSupport.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PosixThreadSupport.cpp > CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PosixThreadSupport.cpp -o CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletMultiThreaded/SequentialThreadSupport.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_6)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SequentialThreadSupport.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SequentialThreadSupport.cpp > CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SequentialThreadSupport.cpp -o CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/BulletMultiThreaded/SpuSampleTaskProcess.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_7)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTaskProcess.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTaskProcess.cpp > CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTaskProcess.cpp -o CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/BulletMultiThreaded/SpuCollisionObjectWrapper.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_8)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionObjectWrapper.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionObjectWrapper.cpp > CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionObjectWrapper.cpp -o CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletMultiThreaded/SpuCollisionTaskProcess.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_9)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.cpp > CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.cpp -o CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_10)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp > CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp -o CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_11)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp > CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp -o CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletMultiThreaded/btParallelConstraintSolver.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_12)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btParallelConstraintSolver.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btParallelConstraintSolver.cpp > CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btParallelConstraintSolver.cpp -o CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_13)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp > CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp -o CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_14)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp > CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp -o CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_15)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp > CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp -o CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_16)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp > CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp -o CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_17)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp > CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp -o CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/flags.make
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletMultiThreaded/btGpu3DGridBroadphase.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_18)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphase.cpp
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphase.cpp > CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.i
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphase.cpp -o CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.s
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o.requires:
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o.requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o.provides: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o.provides.build
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o.provides
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o.provides.build: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o
+
+# Object files for target BulletMultiThreaded
+BulletMultiThreaded_OBJECTS = \
+"CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o" \
+"CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o" \
+"CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o" \
+"CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o" \
+"CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o" \
+"CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o" \
+"CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o" \
+"CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o" \
+"CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o" \
+"CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o" \
+"CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o" \
+"CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o" \
+"CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o" \
+"CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o" \
+"CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o" \
+"CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o" \
+"CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o" \
+"CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o"
+
+# External object files for target BulletMultiThreaded
+BulletMultiThreaded_EXTERNAL_OBJECTS =
+
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make
+src/BulletMultiThreaded/libBulletMultiThreaded.a: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX static library libBulletMultiThreaded.a"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && $(CMAKE_COMMAND) -P CMakeFiles/BulletMultiThreaded.dir/cmake_clean_target.cmake
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/BulletMultiThreaded.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build: src/BulletMultiThreaded/libBulletMultiThreaded.a
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o.requires
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o.requires
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/requires
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded && $(CMAKE_COMMAND) -P CMakeFiles/BulletMultiThreaded.dir/cmake_clean.cmake
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/clean
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/depend
+
--- /dev/null
+FILE(REMOVE_RECURSE
+ "CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o"
+ "CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o"
+ "CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o"
+ "CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o"
+ "CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o"
+ "CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o"
+ "CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o"
+ "CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o"
+ "CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o"
+ "CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o"
+ "CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o"
+ "CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o"
+ "CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o"
+ "CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o"
+ "CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o"
+ "CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o"
+ "CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o"
+ "CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o"
+ "libBulletMultiThreaded.pdb"
+ "libBulletMultiThreaded.a"
+)
+
+# Per-language clean rules from dependency scanning.
+FOREACH(lang CXX)
+ INCLUDE(CMakeFiles/BulletMultiThreaded.dir/cmake_clean_${lang}.cmake OPTIONAL)
+ENDFOREACH(lang)
--- /dev/null
+FILE(REMOVE_RECURSE
+ "libBulletMultiThreaded.a"
+)
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PosixThreadSupport.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PosixThreadSupport.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PpuAddressSpace.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuLibspe2Support.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/SpuSampleTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTaskProcess.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PpuAddressSpace.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SequentialThreadSupport.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SequentialThreadSupport.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuLibspe2Support.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/SpuSampleTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTaskProcess.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PpuAddressSpace.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionObjectWrapper.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionObjectWrapper.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PpuAddressSpace.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuLibspe2Support.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/SpuSampleTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTaskProcess.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PpuAddressSpace.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuFakeDma.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuFakeDma.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btScalar.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PpuAddressSpace.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuGatheringCollisionDispatcher.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuLibspe2Support.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/SpuSampleTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTaskProcess.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btCapsuleShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btCompoundShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexHullShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btCylinderShape.h
+ src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+ src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+ src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+ src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PpuAddressSpace.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuLibspe2Support.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuLibspe2Support.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/SpuSampleTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTaskProcess.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PpuAddressSpace.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuFakeDma.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btCapsuleShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btCompoundShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexHullShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btCylinderShape.h
+ src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+ src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+ src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PpuAddressSpace.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuFakeDma.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PpuAddressSpace.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuCollisionTaskProcess.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuContactManifoldCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuGatheringCollisionDispatcher.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuLibspe2Support.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/SpuSampleTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTaskProcess.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../btThreadSupportInterface.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/Box.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+ src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btCapsuleShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btCompoundShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexHullShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexPointCloudShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btCylinderShape.h
+ src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+ src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+ src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btTriangleShape.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/BulletMultiThreaded/vectormath2bullet.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PpuAddressSpace.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuFakeDma.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuPreferredPenetrationDirections.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+ src/BulletCollision/CollisionShapes/btCapsuleShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btCompoundShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexHullShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btCylinderShape.h
+ src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+ src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+ src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PpuAddressSpace.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/Box.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btScalar.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PpuAddressSpace.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/../PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTask/SpuSampleTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTaskProcess.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuSampleTaskProcess.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btVector3.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PpuAddressSpace.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuLibspe2Support.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/SpuSampleTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTaskProcess.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/Win32ThreadSupport.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/Win32ThreadSupport.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphase.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphase.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphaseSharedCode.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphaseSharedDefs.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpu3DGridBroadphaseSharedTypes.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpuDefines.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btGpuUtilsSharedDefs.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+ src/BulletMultiThreaded/btGpuDefines.h
+ src/BulletMultiThreaded/btGpuUtilsSharedCode.h
+ src/BulletMultiThreaded/btGpuUtilsSharedDefs.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btVector3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/HeapManager.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/TrbStateVec.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btParallelConstraintSolver.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btParallelConstraintSolver.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+ src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+ src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+ src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+ src/BulletDynamics/ConstraintSolver/btSolverBody.h
+ src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+ src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/BulletMultiThreaded/PpuAddressSpace.h
+ src/BulletMultiThreaded/btThreadSupportInterface.h
+ src/BulletMultiThreaded/vectormath2bullet.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btPoolAllocator.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PlatformDefinitions.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/PpuAddressSpace.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/btThreadSupportInterface.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btScalar.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletMultiThreaded/PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletMultiThreaded/PosixThreadSupport.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletMultiThreaded/PosixThreadSupport.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletMultiThreaded/PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuLibspe2Support.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/SpuSampleTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTaskProcess.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletMultiThreaded/btThreadSupportInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/LinearMath/btMotionState.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/LinearMath/btQuadWord.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/LinearMath/btQuaternion.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/LinearMath/btTransform.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/LinearMath/btVector3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o: src/vectormath/vmInclude.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletMultiThreaded/PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletMultiThreaded/PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletMultiThreaded/SequentialThreadSupport.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletMultiThreaded/SequentialThreadSupport.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuLibspe2Support.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/SpuSampleTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTaskProcess.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletMultiThreaded/btThreadSupportInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/LinearMath/btMotionState.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/LinearMath/btQuadWord.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/LinearMath/btQuaternion.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/LinearMath/btTransform.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/LinearMath/btVector3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o: src/vectormath/vmInclude.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/BulletMultiThreaded/PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/BulletMultiThreaded/PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/BulletMultiThreaded/SpuCollisionObjectWrapper.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/BulletMultiThreaded/SpuCollisionObjectWrapper.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/LinearMath/btMotionState.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/LinearMath/btQuadWord.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/LinearMath/btQuaternion.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/LinearMath/btTransform.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/LinearMath/btVector3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o: src/vectormath/vmInclude.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletMultiThreaded/PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletMultiThreaded/PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletMultiThreaded/SpuCollisionTaskProcess.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuLibspe2Support.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/SpuSampleTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTaskProcess.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletMultiThreaded/btThreadSupportInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/LinearMath/btMotionState.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/LinearMath/btQuadWord.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/LinearMath/btQuaternion.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/LinearMath/btTransform.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/LinearMath/btVector3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o: src/vectormath/vmInclude.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/LinearMath/btAabbUtil2.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/BulletMultiThreaded/PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/BulletMultiThreaded/PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/BulletMultiThreaded/SpuFakeDma.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/BulletMultiThreaded/SpuFakeDma.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o: src/vectormath/vmInclude.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/SpuGatheringCollisionDispatcher.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuLibspe2Support.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/SpuSampleTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTaskProcess.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/btThreadSupportInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btCapsuleShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btCompoundShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btConvexHullShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btCylinderShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btAabbUtil2.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btHashMap.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btMotionState.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btQuadWord.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btQuaternion.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btQuickprof.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btSerializer.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btStackAlloc.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btTransform.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btTransformUtil.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/LinearMath/btVector3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o: src/vectormath/vmInclude.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletMultiThreaded/PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletMultiThreaded/PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletMultiThreaded/SpuLibspe2Support.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletMultiThreaded/SpuLibspe2Support.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletMultiThreaded/SpuSampleTask/SpuSampleTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletMultiThreaded/SpuSampleTaskProcess.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletMultiThreaded/btThreadSupportInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/LinearMath/btMotionState.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/LinearMath/btQuadWord.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/LinearMath/btQuaternion.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/LinearMath/btTransform.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/LinearMath/btVector3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o: src/vectormath/vmInclude.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuFakeDma.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btCapsuleShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btCompoundShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btConvexHullShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btCylinderShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/LinearMath/btAabbUtil2.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/LinearMath/btHashMap.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/LinearMath/btQuadWord.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/LinearMath/btQuaternion.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/LinearMath/btSerializer.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/LinearMath/btStackAlloc.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/LinearMath/btTransform.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/LinearMath/btVector3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o: src/vectormath/vmInclude.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuFakeDma.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/LinearMath/btQuadWord.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/LinearMath/btQuaternion.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/LinearMath/btTransform.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/LinearMath/btTransformUtil.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/LinearMath/btVector3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o: src/vectormath/vmInclude.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuCollisionTaskProcess.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuContactManifoldCollisionAlgorithm.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuGatheringCollisionDispatcher.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuLibspe2Support.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/SpuSampleTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTaskProcess.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../btThreadSupportInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/Box.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btCapsuleShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btCompoundShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btConvexHullShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btConvexPointCloudShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btCylinderShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/CollisionShapes/btTriangleShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/BulletMultiThreaded/vectormath2bullet.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/LinearMath/btAabbUtil2.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/LinearMath/btHashMap.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/LinearMath/btMotionState.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/LinearMath/btQuadWord.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/LinearMath/btQuaternion.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/LinearMath/btSerializer.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/LinearMath/btStackAlloc.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/LinearMath/btTransform.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/LinearMath/btTransformUtil.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/LinearMath/btVector3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o: src/vectormath/vmInclude.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuDoubleBuffer.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuFakeDma.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuPreferredPenetrationDirections.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btCapsuleShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btCompoundShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btConvexHullShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btCylinderShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btOptimizedBvh.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btStaticPlaneShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btTriangleInfoMap.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/CollisionShapes/btTriangleMeshShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/LinearMath/btAabbUtil2.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/LinearMath/btHashMap.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/LinearMath/btQuadWord.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/LinearMath/btQuaternion.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/LinearMath/btSerializer.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/LinearMath/btStackAlloc.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/LinearMath/btTransform.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/LinearMath/btTransformUtil.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/LinearMath/btVector3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o: src/vectormath/vmInclude.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/Box.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o: src/vectormath/vmInclude.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/BulletMultiThreaded/PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/BulletMultiThreaded/PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/BulletMultiThreaded/SpuSampleTask/../PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/BulletMultiThreaded/SpuSampleTask/SpuSampleTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/BulletMultiThreaded/SpuSampleTaskProcess.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/BulletMultiThreaded/SpuSampleTaskProcess.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/BulletMultiThreaded/btThreadSupportInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/LinearMath/btQuadWord.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/LinearMath/btQuaternion.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/LinearMath/btVector3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o: src/vectormath/vmInclude.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletMultiThreaded/PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletMultiThreaded/PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletMultiThreaded/SpuCollisionTaskProcess.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuLibspe2Support.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTask/SpuSampleTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/../SpuSampleTaskProcess.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletMultiThreaded/Win32ThreadSupport.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletMultiThreaded/Win32ThreadSupport.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletMultiThreaded/btThreadSupportInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/LinearMath/btMotionState.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/LinearMath/btQuadWord.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/LinearMath/btQuaternion.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/LinearMath/btTransform.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/LinearMath/btVector3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o: src/vectormath/vmInclude.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletMultiThreaded/btGpu3DGridBroadphase.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletMultiThreaded/btGpu3DGridBroadphase.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletMultiThreaded/btGpu3DGridBroadphaseSharedCode.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletMultiThreaded/btGpu3DGridBroadphaseSharedDefs.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletMultiThreaded/btGpu3DGridBroadphaseSharedTypes.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletMultiThreaded/btGpuDefines.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletMultiThreaded/btGpuUtilsSharedDefs.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletMultiThreaded/btGpuDefines.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletMultiThreaded/btGpuUtilsSharedCode.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/BulletMultiThreaded/btGpuUtilsSharedDefs.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/LinearMath/btQuickprof.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o: src/LinearMath/btVector3.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletMultiThreaded/HeapManager.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletMultiThreaded/PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletMultiThreaded/TrbStateVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletMultiThreaded/btParallelConstraintSolver.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletMultiThreaded/btParallelConstraintSolver.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btConstraintSolver.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btJacobianEntry.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btSolverBody.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btSolverConstraint.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletDynamics/ConstraintSolver/btTypedConstraint.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletMultiThreaded/PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletMultiThreaded/btThreadSupportInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/BulletMultiThreaded/vectormath2bullet.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/LinearMath/btMotionState.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/LinearMath/btPoolAllocator.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/LinearMath/btQuadWord.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/LinearMath/btQuaternion.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/LinearMath/btQuickprof.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/LinearMath/btTransform.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/LinearMath/btTransformUtil.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/LinearMath/btVector3.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o: src/vectormath/vmInclude.h
+
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/BulletMultiThreaded/PlatformDefinitions.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/BulletMultiThreaded/PpuAddressSpace.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/BulletMultiThreaded/btThreadSupportInterface.cpp
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/BulletMultiThreaded/btThreadSupportInterface.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o: src/vectormath/vmInclude.h
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -O3 -DNDEBUG -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk -I/usr/local/include -I/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src
+
+CXX_DEFINES = -DUSE_GRAPHICAL_BENCHMARK
+
--- /dev/null
+/usr/bin/ar cr libBulletMultiThreaded.a CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o
+/usr/bin/ranlib libBulletMultiThreaded.a
--- /dev/null
+CMAKE_PROGRESS_1 = 75
+CMAKE_PROGRESS_2 = 76
+CMAKE_PROGRESS_3 =
+CMAKE_PROGRESS_4 = 77
+CMAKE_PROGRESS_5 = 78
+CMAKE_PROGRESS_6 =
+CMAKE_PROGRESS_7 = 79
+CMAKE_PROGRESS_8 = 80
+CMAKE_PROGRESS_9 =
+CMAKE_PROGRESS_10 = 81
+CMAKE_PROGRESS_11 = 82
+CMAKE_PROGRESS_12 =
+CMAKE_PROGRESS_13 = 83
+CMAKE_PROGRESS_14 = 84
+CMAKE_PROGRESS_15 =
+CMAKE_PROGRESS_16 = 85
+CMAKE_PROGRESS_17 = 86
+CMAKE_PROGRESS_18 =
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Relative path conversion top directories.
+SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+
+# Force unix paths in dependencies.
+SET(CMAKE_FORCE_UNIX_PATHS 1)
+
+# The C and CXX include file search paths:
+SET(CMAKE_C_INCLUDE_PATH
+ "/usr/local/include"
+ "src"
+ )
+SET(CMAKE_CXX_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+SET(CMAKE_Fortran_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+
+# The C and CXX include file regular expressions for this directory.
+SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
--- /dev/null
+INCLUDE_DIRECTORIES(
+ ${BULLET_PHYSICS_SOURCE_DIR}/src
+ ${VECTOR_MATH_INCLUDE}
+)
+
+SET(BulletMultiThreaded_SRCS
+ SpuFakeDma.cpp
+ SpuLibspe2Support.cpp
+ btThreadSupportInterface.cpp
+ Win32ThreadSupport.cpp
+ PosixThreadSupport.cpp
+ SequentialThreadSupport.cpp
+ SpuSampleTaskProcess.cpp
+ SpuCollisionObjectWrapper.cpp
+ SpuCollisionTaskProcess.cpp
+ SpuGatheringCollisionDispatcher.cpp
+ SpuContactManifoldCollisionAlgorithm.cpp
+ btParallelConstraintSolver.cpp
+
+ #SPURS_PEGatherScatterTask/SpuPEGatherScatterTask.cpp
+ #SpuPEGatherScatterTaskProcess.cpp
+
+ SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp
+ SpuNarrowPhaseCollisionTask/SpuContactResult.cpp
+ SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp
+ SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp
+ SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp
+
+ #Some GPU related stuff, mainly CUDA and perhaps OpenCL
+ btGpu3DGridBroadphase.cpp
+)
+
+SET(Root_HDRS
+ PlatformDefinitions.h
+ PpuAddressSpace.h
+ SpuFakeDma.h
+ SpuDoubleBuffer.h
+ SpuLibspe2Support.h
+ btThreadSupportInterface.h
+ Win32ThreadSupport.h
+ PosixThreadSupport.h
+ SequentialThreadSupport.h
+ SpuSampleTaskProcess.h
+ SpuCollisionObjectWrapper.cpp
+ SpuCollisionObjectWrapper.h
+ SpuCollisionTaskProcess.h
+ SpuGatheringCollisionDispatcher.h
+ SpuContactManifoldCollisionAlgorithm.h
+ btParallelConstraintSolver.h
+
+ #SPURS_PEGatherScatterTask/SpuPEGatherScatterTask.h
+ #SpuPEGatherScatterTaskProcess.h
+
+ #Some GPU related stuff, mainly CUDA and perhaps OpenCL
+ btGpu3DGridBroadphase.h
+ btGpu3DGridBroadphaseSharedCode.h
+ btGpu3DGridBroadphaseSharedDefs.h
+ btGpu3DGridBroadphaseSharedTypes.h
+ btGpuDefines.h
+ btGpuUtilsSharedCode.h
+ btGpuUtilsSharedDefs.h
+)
+
+SET(SpuNarrowPhaseCollisionTask_HDRS
+ SpuNarrowPhaseCollisionTask/Box.h
+ SpuNarrowPhaseCollisionTask/boxBoxDistance.h
+ SpuNarrowPhaseCollisionTask/SpuContactResult.h
+ SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.h
+ SpuNarrowPhaseCollisionTask/SpuConvexPenetrationDepthSolver.h
+ SpuNarrowPhaseCollisionTask/SpuPreferredPenetrationDirections.h
+ SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h
+ SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h
+)
+
+SET(BulletMultiThreaded_HDRS
+ ${Root_HDRS}
+ ${SpuNarrowPhaseCollisionTask_HDRS}
+)
+
+ADD_LIBRARY(BulletMultiThreaded ${BulletMultiThreaded_SRCS} ${BulletMultiThreaded_HDRS})
+SET_TARGET_PROPERTIES(BulletMultiThreaded PROPERTIES VERSION ${BULLET_VERSION})
+SET_TARGET_PROPERTIES(BulletMultiThreaded PROPERTIES SOVERSION ${BULLET_VERSION})
+
+
+SUBDIRS(GpuSoftBodySolvers)
+
+
+IF (BUILD_SHARED_LIBS)
+ IF (UNIX)
+ TARGET_LINK_LIBRARIES(BulletMultiThreaded BulletDynamics BulletCollision pthread)
+ ELSE()
+ TARGET_LINK_LIBRARIES(BulletMultiThreaded BulletDynamics BulletCollision)
+ ENDIF()
+ENDIF (BUILD_SHARED_LIBS)
+
+
+IF (INSTALL_LIBS)
+ IF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ #INSTALL of other files requires CMake 2.6
+ IF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+# IF(INSTALL_EXTRA_LIBS)
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS BulletMultiThreaded DESTINATION .)
+ ELSE (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS BulletMultiThreaded DESTINATION lib${LIB_SUFFIX})
+ INSTALL(DIRECTORY
+${CMAKE_CURRENT_SOURCE_DIR} DESTINATION ${INCLUDE_INSTALL_DIR} FILES_MATCHING
+PATTERN "*.h" PATTERN ".svn" EXCLUDE PATTERN "CMakeFiles" EXCLUDE)
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+# ENDIF (INSTALL_EXTRA_LIBS)
+ ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ SET_TARGET_PROPERTIES(BulletMultiThreaded PROPERTIES FRAMEWORK true)
+
+ SET_TARGET_PROPERTIES(BulletMultiThreaded PROPERTIES PUBLIC_HEADER "${Root_HDRS}")
+ # Have to list out sub-directories manually:
+ SET_PROPERTY(SOURCE ${SpuNarrowPhaseCollisionTask_HDRS} PROPERTY MACOSX_PACKAGE_LOCATION Headers/SpuNarrowPhaseCollisionTask)
+
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ ENDIF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ENDIF (INSTALL_LIBS)
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Relative path conversion top directories.
+SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+
+# Force unix paths in dependencies.
+SET(CMAKE_FORCE_UNIX_PATHS 1)
+
+# The C and CXX include file search paths:
+SET(CMAKE_C_INCLUDE_PATH
+ "/usr/local/include"
+ "src"
+ )
+SET(CMAKE_CXX_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+SET(CMAKE_Fortran_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+
+# The C and CXX include file regular expressions for this directory.
+SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
--- /dev/null
+
+INCLUDE_DIRECTORIES(
+${BULLET_PHYSICS_SOURCE_DIR}/src
+)
+
+
+SUBDIRS (
+ OpenCL
+)
+
+IF( USE_DX11 )
+ SUBDIRS( DX11 )
+ENDIF( USE_DX11 )
--- /dev/null
+
+INCLUDE_DIRECTORIES(
+${BULLET_PHYSICS_SOURCE_DIR}/src
+)
+
+SET(DXSDK_DIR $ENV{DXSDK_DIR})
+SET(DX11_INCLUDE_PATH "${DIRECTX_SDK_BASE_DIR}/Include" CACHE DOCSTRING "Microsoft directX SDK include path")
+
+
+INCLUDE_DIRECTORIES(
+${DX11_INCLUDE_PATH} "../Shared/"
+${VECTOR_MATH_INCLUDE}
+)
+
+SET(BulletSoftBodyDX11Solvers_SRCS
+ btSoftBodySolver_DX11.cpp
+ btSoftBodySolver_DX11SIMDAware.cpp
+)
+
+SET(BulletSoftBodyDX11Solvers_HDRS
+ btSoftBodySolver_DX11.h
+ btSoftBodySolver_DX11SIMDAware.h
+ ../Shared/btSoftBodySolverData.h
+ btSoftBodySolverVertexData_DX11.h
+ btSoftBodySolverTriangleData_DX11.h
+ btSoftBodySolverLinkData_DX11.h
+ btSoftBodySolverLinkData_DX11SIMDAware.h
+ btSoftBodySolverBuffer_DX11.h
+ btSoftBodySolverVertexBuffer_DX11.h
+
+)
+
+# OpenCL and HLSL Shaders.
+# Build rules generated to stringify these into headers
+# which are needed by some of the sources
+SET(BulletSoftBodyDX11Solvers_Shaders
+ OutputToVertexArray
+ UpdateNormals
+ Integrate
+ UpdatePositions
+ UpdateNodes
+ ComputeBounds
+ SolvePositions
+ SolvePositionsSIMDBatched
+ SolveCollisionsAndUpdateVelocities
+ SolveCollisionsAndUpdateVelocitiesSIMDBatched
+ UpdatePositionsFromVelocities
+ ApplyForces
+ PrepareLinks
+ VSolveLinks
+)
+
+foreach(f ${BulletSoftBodyDX11Solvers_Shaders})
+ LIST(APPEND BulletSoftBodyDX11Solvers_HLSL "HLSL/${f}.hlsl")
+endforeach(f)
+
+
+
+ADD_LIBRARY(BulletSoftBodySolvers_DX11 ${BulletSoftBodyDX11Solvers_SRCS} ${BulletSoftBodyDX11Solvers_HDRS} ${BulletSoftBodyDX11Solvers_HLSL})
+SET_TARGET_PROPERTIES(BulletSoftBodySolvers_DX11 PROPERTIES VERSION ${BULLET_VERSION})
+SET_TARGET_PROPERTIES(BulletSoftBodySolvers_DX11 PROPERTIES SOVERSION ${BULLET_VERSION})
+IF (BUILD_SHARED_LIBS)
+ TARGET_LINK_LIBRARIES(BulletSoftBodySolvers_DX11 BulletSoftBody BulletDynamics)
+ENDIF (BUILD_SHARED_LIBS)
+
+
+IF (INSTALL_LIBS)
+ IF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ IF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS BulletSoftBodySolvers_DX11 DESTINATION .)
+ ELSE (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS BulletSoftBodySolvers_DX11 DESTINATION lib${LIB_SUFFIX})
+#headers are already installed by BulletMultiThreaded library
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ SET_TARGET_PROPERTIES(BulletSoftBodySolvers_DX11 PROPERTIES FRAMEWORK true)
+ SET_TARGET_PROPERTIES(BulletSoftBodySolvers_DX11 PROPERTIES PUBLIC_HEADER "${BulletSoftBodyDX11Solvers_HDRS}")
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ ENDIF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ENDIF (INSTALL_LIBS)
--- /dev/null
+MSTRINGIFY(
+
+cbuffer ApplyForcesCB : register( b0 )
+{
+ unsigned int numNodes;
+ float solverdt;
+ float epsilon;
+ int padding3;
+};
+
+
+StructuredBuffer<int> g_vertexClothIdentifier : register( t0 );
+StructuredBuffer<float4> g_vertexNormal : register( t1 );
+StructuredBuffer<float> g_vertexArea : register( t2 );
+StructuredBuffer<float> g_vertexInverseMass : register( t3 );
+// TODO: These could be combined into a lift/drag factor array along with medium density
+StructuredBuffer<float> g_clothLiftFactor : register( t4 );
+StructuredBuffer<float> g_clothDragFactor : register( t5 );
+StructuredBuffer<float4> g_clothWindVelocity : register( t6 );
+StructuredBuffer<float4> g_clothAcceleration : register( t7 );
+StructuredBuffer<float> g_clothMediumDensity : register( t8 );
+
+RWStructuredBuffer<float4> g_vertexForceAccumulator : register( u0 );
+RWStructuredBuffer<float4> g_vertexVelocity : register( u1 );
+
+float3 projectOnAxis( float3 v, float3 a )
+{
+ return (a*dot(v, a));
+}
+
+[numthreads(128, 1, 1)]
+void
+ApplyForcesKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ unsigned int nodeID = DTid.x;
+ if( nodeID < numNodes )
+ {
+ int clothId = g_vertexClothIdentifier[nodeID];
+ float nodeIM = g_vertexInverseMass[nodeID];
+
+ if( nodeIM > 0.0f )
+ {
+ float3 nodeV = g_vertexVelocity[nodeID].xyz;
+ float3 normal = g_vertexNormal[nodeID].xyz;
+ float area = g_vertexArea[nodeID];
+ float3 nodeF = g_vertexForceAccumulator[nodeID].xyz;
+
+ // Read per-cloth values
+ float3 clothAcceleration = g_clothAcceleration[clothId].xyz;
+ float3 clothWindVelocity = g_clothWindVelocity[clothId].xyz;
+ float liftFactor = g_clothLiftFactor[clothId];
+ float dragFactor = g_clothDragFactor[clothId];
+ float mediumDensity = g_clothMediumDensity[clothId];
+
+ // Apply the acceleration to the cloth rather than do this via a force
+ nodeV += (clothAcceleration*solverdt);
+
+ g_vertexVelocity[nodeID] = float4(nodeV, 0.f);
+
+ float3 relativeWindVelocity = nodeV - clothWindVelocity;
+ float relativeSpeedSquared = dot(relativeWindVelocity, relativeWindVelocity);
+
+ if( relativeSpeedSquared > epsilon )
+ {
+ // Correct direction of normal relative to wind direction and get dot product
+ normal = normal * (dot(normal, relativeWindVelocity) < 0 ? -1.f : 1.f);
+ float dvNormal = dot(normal, relativeWindVelocity);
+ if( dvNormal > 0 )
+ {
+ float3 force = float3(0.f, 0.f, 0.f);
+ float c0 = area * dvNormal * relativeSpeedSquared / 2.f;
+ float c1 = c0 * mediumDensity;
+ force += normal * (-c1 * liftFactor);
+ force += normalize(relativeWindVelocity)*(-c1 * dragFactor);
+
+ float dtim = solverdt * nodeIM;
+ float3 forceDTIM = force * dtim;
+
+ float3 nodeFPlusForce = nodeF + force;
+
+ // m_nodesf[i] -= ProjectOnAxis(m_nodesv[i], force.normalized())/dtim;
+ float3 nodeFMinus = nodeF - (projectOnAxis(nodeV, normalize(force))/dtim);
+
+ nodeF = nodeFPlusForce;
+ if( dot(forceDTIM, forceDTIM) > dot(nodeV, nodeV) )
+ nodeF = nodeFMinus;
+
+ g_vertexForceAccumulator[nodeID] = float4(nodeF, 0.0f);
+ }
+ }
+ }
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+cbuffer ComputeBoundsCB : register( b0 )
+{
+ int numNodes;
+ int numSoftBodies;
+ int padding1;
+ int padding2;
+};
+
+// Node indices for each link
+StructuredBuffer<int> g_vertexClothIdentifier : register( t0 );
+StructuredBuffer<float4> g_vertexPositions : register( t1 );
+
+RWStructuredBuffer<uint4> g_clothMinBounds : register( u0 );
+RWStructuredBuffer<uint4> g_clothMaxBounds : register( u1 );
+
+groupshared uint4 clothMinBounds[256];
+groupshared uint4 clothMaxBounds[256];
+
+[numthreads(128, 1, 1)]
+void
+ComputeBoundsKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ const unsigned int UINT_MAX = 0xffffffff;
+
+ // Init min and max bounds arrays
+ if( GTid.x < numSoftBodies )
+ {
+ clothMinBounds[GTid.x] = uint4(UINT_MAX, UINT_MAX, UINT_MAX, UINT_MAX);
+ clothMaxBounds[GTid.x] = uint4(0,0,0,0);
+ }
+
+ AllMemoryBarrierWithGroupSync();
+
+ int nodeID = DTid.x;
+ if( nodeID < numNodes )
+ {
+ int clothIdentifier = g_vertexClothIdentifier[nodeID];
+ if( clothIdentifier >= 0 )
+ {
+ float3 position = g_vertexPositions[nodeID].xyz;
+
+ // Reinterpret position as uint
+ uint3 positionUInt = uint3(asuint(position.x), asuint(position.y), asuint(position.z));
+
+ // Invert sign bit of positives and whole of negatives to allow comparison as unsigned ints
+ //positionUInt.x ^= uint((-int(positionUInt.x >> 31) | 0x80000000));
+ //positionUInt.y ^= uint((-int(positionUInt.y >> 31) | 0x80000000));
+ //positionUInt.z ^= uint((-int(positionUInt.z >> 31) | 0x80000000));
+ positionUInt.x ^= (1+~(positionUInt.x >> 31) | 0x80000000);
+ positionUInt.y ^= (1+~(positionUInt.y >> 31) | 0x80000000);
+ positionUInt.z ^= (1+~(positionUInt.z >> 31) | 0x80000000);
+
+ // Min/max with the LDS values
+ InterlockedMin(clothMinBounds[clothIdentifier].x, positionUInt.x);
+ InterlockedMin(clothMinBounds[clothIdentifier].y, positionUInt.y);
+ InterlockedMin(clothMinBounds[clothIdentifier].z, positionUInt.z);
+
+ InterlockedMax(clothMaxBounds[clothIdentifier].x, positionUInt.x);
+ InterlockedMax(clothMaxBounds[clothIdentifier].y, positionUInt.y);
+ InterlockedMax(clothMaxBounds[clothIdentifier].z, positionUInt.z);
+ }
+ }
+
+ AllMemoryBarrierWithGroupSync();
+
+
+ // Use global atomics to update the global versions of the data
+ if( GTid.x < numSoftBodies )
+ {
+ InterlockedMin(g_clothMinBounds[GTid.x].x, clothMinBounds[GTid.x].x);
+ InterlockedMin(g_clothMinBounds[GTid.x].y, clothMinBounds[GTid.x].y);
+ InterlockedMin(g_clothMinBounds[GTid.x].z, clothMinBounds[GTid.x].z);
+
+ InterlockedMax(g_clothMaxBounds[GTid.x].x, clothMaxBounds[GTid.x].x);
+ InterlockedMax(g_clothMaxBounds[GTid.x].y, clothMaxBounds[GTid.x].y);
+ InterlockedMax(g_clothMaxBounds[GTid.x].z, clothMaxBounds[GTid.x].z);
+ }
+}
+
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+cbuffer IntegrateCB : register( b0 )
+{
+ int numNodes;
+ float solverdt;
+ int padding1;
+ int padding2;
+};
+
+// Node indices for each link
+StructuredBuffer<float> g_vertexInverseMasses : register( t0 );
+
+RWStructuredBuffer<float4> g_vertexPositions : register( u0 );
+RWStructuredBuffer<float4> g_vertexVelocity : register( u1 );
+RWStructuredBuffer<float4> g_vertexPreviousPositions : register( u2 );
+RWStructuredBuffer<float4> g_vertexForceAccumulator : register( u3 );
+
+[numthreads(128, 1, 1)]
+void
+IntegrateKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ int nodeID = DTid.x;
+ if( nodeID < numNodes )
+ {
+ float3 position = g_vertexPositions[nodeID].xyz;
+ float3 velocity = g_vertexVelocity[nodeID].xyz;
+ float3 force = g_vertexForceAccumulator[nodeID].xyz;
+ float inverseMass = g_vertexInverseMasses[nodeID];
+
+ g_vertexPreviousPositions[nodeID] = float4(position, 0.f);
+ velocity += force * inverseMass * solverdt;
+ position += velocity * solverdt;
+
+ g_vertexForceAccumulator[nodeID] = float4(0.f, 0.f, 0.f, 0.0f);
+ g_vertexPositions[nodeID] = float4(position, 0.f);
+ g_vertexVelocity[nodeID] = float4(velocity, 0.f);
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+cbuffer OutputToVertexArrayCB : register( b0 )
+{
+ int startNode;
+ int numNodes;
+ int positionOffset;
+ int positionStride;
+
+ int normalOffset;
+ int normalStride;
+ int padding1;
+ int padding2;
+};
+
+
+StructuredBuffer<float4> g_vertexPositions : register( t0 );
+StructuredBuffer<float4> g_vertexNormals : register( t1 );
+
+RWBuffer<float> g_vertexBuffer : register( u0 );
+
+
+[numthreads(128, 1, 1)]
+void
+OutputToVertexArrayWithNormalsKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ int nodeID = DTid.x;
+ if( nodeID < numNodes )
+ {
+ float4 position = g_vertexPositions[nodeID + startNode];
+ float4 normal = g_vertexNormals[nodeID + startNode];
+
+ // Stride should account for the float->float4 conversion
+ int positionDestination = nodeID * positionStride + positionOffset;
+ g_vertexBuffer[positionDestination] = position.x;
+ g_vertexBuffer[positionDestination+1] = position.y;
+ g_vertexBuffer[positionDestination+2] = position.z;
+
+ int normalDestination = nodeID * normalStride + normalOffset;
+ g_vertexBuffer[normalDestination] = normal.x;
+ g_vertexBuffer[normalDestination+1] = normal.y;
+ g_vertexBuffer[normalDestination+2] = normal.z;
+ }
+}
+
+[numthreads(128, 1, 1)]
+void
+OutputToVertexArrayWithoutNormalsKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ int nodeID = DTid.x;
+ if( nodeID < numNodes )
+ {
+ float4 position = g_vertexPositions[nodeID + startNode];
+ float4 normal = g_vertexNormals[nodeID + startNode];
+
+ // Stride should account for the float->float4 conversion
+ int positionDestination = nodeID * positionStride + positionOffset;
+ g_vertexBuffer[positionDestination] = position.x;
+ g_vertexBuffer[positionDestination+1] = position.y;
+ g_vertexBuffer[positionDestination+2] = position.z;
+ }
+}
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+cbuffer PrepareLinksCB : register( b0 )
+{
+ int numLinks;
+ int padding0;
+ int padding1;
+ int padding2;
+};
+
+// Node indices for each link
+StructuredBuffer<int2> g_linksVertexIndices : register( t0 );
+StructuredBuffer<float> g_linksMassLSC : register( t1 );
+StructuredBuffer<float4> g_nodesPreviousPosition : register( t2 );
+
+RWStructuredBuffer<float> g_linksLengthRatio : register( u0 );
+RWStructuredBuffer<float4> g_linksCurrentLength : register( u1 );
+
+[numthreads(128, 1, 1)]
+void
+PrepareLinksKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ int linkID = DTid.x;
+ if( linkID < numLinks )
+ {
+ int2 nodeIndices = g_linksVertexIndices[linkID];
+ int node0 = nodeIndices.x;
+ int node1 = nodeIndices.y;
+
+ float4 nodePreviousPosition0 = g_nodesPreviousPosition[node0];
+ float4 nodePreviousPosition1 = g_nodesPreviousPosition[node1];
+
+ float massLSC = g_linksMassLSC[linkID];
+
+ float4 linkCurrentLength = nodePreviousPosition1 - nodePreviousPosition0;
+
+ float linkLengthRatio = dot(linkCurrentLength, linkCurrentLength)*massLSC;
+ linkLengthRatio = 1./linkLengthRatio;
+
+ g_linksCurrentLength[linkID] = linkCurrentLength;
+ g_linksLengthRatio[linkID] = linkLengthRatio;
+ }
+}
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+cbuffer SolvePositionsFromLinksKernelCB : register( b0 )
+{
+ int startLink;
+ int numLinks;
+ float kst;
+ float ti;
+};
+
+// Node indices for each link
+StructuredBuffer<int2> g_linksVertexIndices : register( t0 );
+
+StructuredBuffer<float> g_linksMassLSC : register( t1 );
+StructuredBuffer<float> g_linksRestLengthSquared : register( t2 );
+StructuredBuffer<float> g_verticesInverseMass : register( t3 );
+
+RWStructuredBuffer<float4> g_vertexPositions : register( u0 );
+
+[numthreads(128, 1, 1)]
+void
+SolvePositionsFromLinksKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ int linkID = DTid.x + startLink;
+ if( DTid.x < numLinks )
+ {
+ float massLSC = g_linksMassLSC[linkID];
+ float restLengthSquared = g_linksRestLengthSquared[linkID];
+
+ if( massLSC > 0.0f )
+ {
+ int2 nodeIndices = g_linksVertexIndices[linkID];
+ int node0 = nodeIndices.x;
+ int node1 = nodeIndices.y;
+
+ float3 position0 = g_vertexPositions[node0].xyz;
+ float3 position1 = g_vertexPositions[node1].xyz;
+
+ float inverseMass0 = g_verticesInverseMass[node0];
+ float inverseMass1 = g_verticesInverseMass[node1];
+
+ float3 del = position1 - position0;
+ float len = dot(del, del);
+ float k = ((restLengthSquared - len)/(massLSC*(restLengthSquared+len)))*kst;
+ position0 = position0 - del*(k*inverseMass0);
+ position1 = position1 + del*(k*inverseMass1);
+
+ g_vertexPositions[node0] = float4(position0, 0.f);
+ g_vertexPositions[node1] = float4(position1, 0.f);
+
+ }
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+
+
+cbuffer SolvePositionsFromLinksKernelCB : register( b0 )
+{
+ int startWaveInBatch;
+ int numWaves;
+ float kst;
+ float ti;
+};
+
+
+// Number of batches per wavefront stored one element per logical wavefront
+StructuredBuffer<int2> g_wavefrontBatchCountsVertexCounts : register( t0 );
+// Set of up to maxNumVertices vertex addresses per wavefront
+StructuredBuffer<int> g_vertexAddressesPerWavefront : register( t1 );
+
+StructuredBuffer<float> g_verticesInverseMass : register( t2 );
+
+// Per-link data layed out structured in terms of sub batches within wavefronts
+StructuredBuffer<int2> g_linksVertexIndices : register( t3 );
+StructuredBuffer<float> g_linksMassLSC : register( t4 );
+StructuredBuffer<float> g_linksRestLengthSquared : register( t5 );
+
+RWStructuredBuffer<float4> g_vertexPositions : register( u0 );
+
+// Data loaded on a per-wave basis
+groupshared int2 wavefrontBatchCountsVertexCounts[WAVEFRONT_BLOCK_MULTIPLIER];
+groupshared float4 vertexPositionSharedData[MAX_NUM_VERTICES_PER_WAVE*WAVEFRONT_BLOCK_MULTIPLIER];
+groupshared float vertexInverseMassSharedData[MAX_NUM_VERTICES_PER_WAVE*WAVEFRONT_BLOCK_MULTIPLIER];
+
+// Storing the vertex addresses actually slowed things down a little
+//groupshared int vertexAddressSharedData[MAX_NUM_VERTICES_PER_WAVE*WAVEFRONT_BLOCK_MULTIPLIER];
+
+
+[numthreads(BLOCK_SIZE, 1, 1)]
+void
+SolvePositionsFromLinksKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ const int laneInWavefront = (DTid.x & (WAVEFRONT_SIZE-1));
+ const int wavefront = startWaveInBatch + (DTid.x / WAVEFRONT_SIZE);
+ const int firstWavefrontInBlock = startWaveInBatch + Gid.x * WAVEFRONT_BLOCK_MULTIPLIER;
+ const int localWavefront = wavefront - firstWavefrontInBlock;
+
+ int batchesWithinWavefront = 0;
+ int verticesUsedByWave = 0;
+ int cond = wavefront < (startWaveInBatch + numWaves);
+
+ // Mask out in case there's a stray "wavefront" at the end that's been forced in through the multiplier
+ if( cond)
+ {
+
+ // Load the batch counts for the wavefronts
+
+ int2 batchesAndVerticesWithinWavefront = g_wavefrontBatchCountsVertexCounts[wavefront];
+
+ batchesWithinWavefront = batchesAndVerticesWithinWavefront.x;
+ verticesUsedByWave = batchesAndVerticesWithinWavefront.y;
+
+ // Load the vertices for the wavefronts
+ for( int vertex = laneInWavefront; vertex < verticesUsedByWave; vertex+=WAVEFRONT_SIZE )
+ {
+ int vertexAddress = g_vertexAddressesPerWavefront[wavefront*MAX_NUM_VERTICES_PER_WAVE + vertex];
+
+ //vertexAddressSharedData[localWavefront*MAX_NUM_VERTICES_PER_WAVE + vertex] = vertexAddress;
+ vertexPositionSharedData[localWavefront*MAX_NUM_VERTICES_PER_WAVE + vertex] = g_vertexPositions[vertexAddress];
+ vertexInverseMassSharedData[localWavefront*MAX_NUM_VERTICES_PER_WAVE + vertex] = g_verticesInverseMass[vertexAddress];
+ }
+
+ }
+ // Ensure compiler does not re-order memory operations
+ //AllMemoryBarrier();
+ AllMemoryBarrierWithGroupSync ();
+
+ if( cond)
+ {
+ // Loop through the batches performing the solve on each in LDS
+ int baseDataLocationForWave = WAVEFRONT_SIZE * wavefront * MAX_BATCHES_PER_WAVE;
+
+ //for( int batch = 0; batch < batchesWithinWavefront; ++batch )
+
+ int batch = 0;
+ do
+ {
+ int baseDataLocation = baseDataLocationForWave + WAVEFRONT_SIZE * batch;
+ int locationOfValue = baseDataLocation + laneInWavefront;
+
+
+ // These loads should all be perfectly linear across the WF
+ int2 localVertexIndices = g_linksVertexIndices[locationOfValue];
+ float massLSC = g_linksMassLSC[locationOfValue];
+ float restLengthSquared = g_linksRestLengthSquared[locationOfValue];
+
+
+ // LDS vertex addresses based on logical wavefront number in block and loaded index
+ int vertexAddress0 = MAX_NUM_VERTICES_PER_WAVE * localWavefront + localVertexIndices.x;
+ int vertexAddress1 = MAX_NUM_VERTICES_PER_WAVE * localWavefront + localVertexIndices.y;
+
+ float3 position0 = vertexPositionSharedData[vertexAddress0].xyz;
+ float3 position1 = vertexPositionSharedData[vertexAddress1].xyz;
+
+ float inverseMass0 = vertexInverseMassSharedData[vertexAddress0];
+ float inverseMass1 = vertexInverseMassSharedData[vertexAddress1];
+
+ float3 del = position1 - position0;
+ float len = dot(del, del);
+
+ float k = 0;
+ if( massLSC > 0.0f )
+ {
+ k = ((restLengthSquared - len)/(massLSC*(restLengthSquared+len)))*kst;
+ }
+
+ position0 = position0 - del*(k*inverseMass0);
+ position1 = position1 + del*(k*inverseMass1);
+
+ // Ensure compiler does not re-order memory operations
+ AllMemoryBarrier();
+
+ vertexPositionSharedData[vertexAddress0] = float4(position0, 0.f);
+ vertexPositionSharedData[vertexAddress1] = float4(position1, 0.f);
+
+ // Ensure compiler does not re-order memory operations
+ AllMemoryBarrier();
+
+
+ ++batch;
+ } while( batch < batchesWithinWavefront );
+
+ // Update the global memory vertices for the wavefronts
+ for( int vertex = laneInWavefront; vertex < verticesUsedByWave; vertex+=WAVEFRONT_SIZE )
+ {
+ int vertexAddress = g_vertexAddressesPerWavefront[wavefront*MAX_NUM_VERTICES_PER_WAVE + vertex];
+
+ g_vertexPositions[vertexAddress] = vertexPositionSharedData[localWavefront*MAX_NUM_VERTICES_PER_WAVE + vertex];
+ }
+ }
+
+
+}
+
+
+
+
+);
+
--- /dev/null
+MSTRINGIFY(
+
+cbuffer UpdateConstantsCB : register( b0 )
+{
+ int numLinks;
+ int padding0;
+ int padding1;
+ int padding2;
+};
+
+// Node indices for each link
+StructuredBuffer<int2> g_linksVertexIndices : register( t0 );
+StructuredBuffer<float4> g_vertexPositions : register( t1 );
+StructuredBuffer<float> g_vertexInverseMasses : register( t2 );
+StructuredBuffer<float> g_linksMaterialLSC : register( t3 );
+
+RWStructuredBuffer<float> g_linksMassLSC : register( u0 );
+RWStructuredBuffer<float> g_linksRestLengthSquared : register( u1 );
+RWStructuredBuffer<float> g_linksRestLengths : register( u2 );
+
+[numthreads(128, 1, 1)]
+void
+UpdateConstantsKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ int linkID = DTid.x;
+ if( linkID < numLinks )
+ {
+ int2 nodeIndices = g_linksVertexIndices[linkID];
+ int node0 = nodeIndices.x;
+ int node1 = nodeIndices.y;
+ float linearStiffnessCoefficient = g_linksMaterialLSC[ linkID ];
+
+ float3 position0 = g_vertexPositions[node0].xyz;
+ float3 position1 = g_vertexPositions[node1].xyz;
+ float inverseMass0 = g_vertexInverseMasses[node0];
+ float inverseMass1 = g_vertexInverseMasses[node1];
+
+ float3 difference = position0 - position1;
+ float length2 = dot(difference, difference);
+ float length = sqrt(length2);
+
+ g_linksRestLengths[linkID] = length;
+ g_linksMassLSC[linkID] = (inverseMass0 + inverseMass1)/linearStiffnessCoefficient;
+ g_linksRestLengthSquared[linkID] = length*length;
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+cbuffer UpdateVelocitiesFromPositionsWithVelocitiesCB : register( b0 )
+{
+ int numNodes;
+ float isolverdt;
+ int padding1;
+ int padding2;
+};
+
+
+StructuredBuffer<float4> g_vertexPositions : register( t0 );
+StructuredBuffer<float4> g_vertexPreviousPositions : register( t1 );
+StructuredBuffer<int> g_vertexClothIndices : register( t2 );
+StructuredBuffer<float> g_clothVelocityCorrectionCoefficients : register( t3 );
+StructuredBuffer<float> g_clothDampingFactor : register( t4 );
+
+RWStructuredBuffer<float4> g_vertexVelocities : register( u0 );
+RWStructuredBuffer<float4> g_vertexForces : register( u1 );
+
+
+[numthreads(128, 1, 1)]
+void
+updateVelocitiesFromPositionsWithVelocitiesKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ int nodeID = DTid.x;
+ if( nodeID < numNodes )
+ {
+ float3 position = g_vertexPositions[nodeID].xyz;
+ float3 previousPosition = g_vertexPreviousPositions[nodeID].xyz;
+ float3 velocity = g_vertexVelocities[nodeID].xyz;
+ int clothIndex = g_vertexClothIndices[nodeID];
+ float velocityCorrectionCoefficient = g_clothVelocityCorrectionCoefficients[clothIndex];
+ float dampingFactor = g_clothDampingFactor[clothIndex];
+ float velocityCoefficient = (1.f - dampingFactor);
+
+ float3 difference = position - previousPosition;
+
+ velocity += difference*velocityCorrectionCoefficient*isolverdt;
+
+ // Damp the velocity
+ velocity *= velocityCoefficient;
+
+ g_vertexVelocities[nodeID] = float4(velocity, 0.f);
+ g_vertexForces[nodeID] = float4(0.f, 0.f, 0.f, 0.f);
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+cbuffer UpdateSoftBodiesCB : register( b0 )
+{
+ unsigned int numNodes;
+ unsigned int startFace;
+ unsigned int numFaces;
+ float epsilon;
+};
+
+
+// Node indices for each link
+StructuredBuffer<int4> g_triangleVertexIndexSet : register( t0 );
+StructuredBuffer<float4> g_vertexPositions : register( t1 );
+StructuredBuffer<int> g_vertexTriangleCount : register( t2 );
+
+RWStructuredBuffer<float4> g_vertexNormals : register( u0 );
+RWStructuredBuffer<float> g_vertexArea : register( u1 );
+RWStructuredBuffer<float4> g_triangleNormals : register( u2 );
+RWStructuredBuffer<float> g_triangleArea : register( u3 );
+
+
+[numthreads(128, 1, 1)]
+void
+ResetNormalsAndAreasKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ if( DTid.x < numNodes )
+ {
+ g_vertexNormals[DTid.x] = float4(0.0f, 0.0f, 0.0f, 0.0f);
+ g_vertexArea[DTid.x] = 0.0f;
+ }
+}
+
+
+[numthreads(128, 1, 1)]
+void
+UpdateSoftBodiesKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ int faceID = DTid.x + startFace;
+ if( DTid.x < numFaces )
+ {
+ int4 triangleIndexSet = g_triangleVertexIndexSet[ faceID ];
+ int nodeIndex0 = triangleIndexSet.x;
+ int nodeIndex1 = triangleIndexSet.y;
+ int nodeIndex2 = triangleIndexSet.z;
+
+ float3 node0 = g_vertexPositions[nodeIndex0].xyz;
+ float3 node1 = g_vertexPositions[nodeIndex1].xyz;
+ float3 node2 = g_vertexPositions[nodeIndex2].xyz;
+ float3 nodeNormal0 = g_vertexNormals[nodeIndex0].xyz;
+ float3 nodeNormal1 = g_vertexNormals[nodeIndex1].xyz;
+ float3 nodeNormal2 = g_vertexNormals[nodeIndex2].xyz;
+ float vertexArea0 = g_vertexArea[nodeIndex0];
+ float vertexArea1 = g_vertexArea[nodeIndex1];
+ float vertexArea2 = g_vertexArea[nodeIndex2];
+
+ float3 vector0 = node1 - node0;
+ float3 vector1 = node2 - node0;
+
+ float3 faceNormal = cross(vector0.xyz, vector1.xyz);
+ float triangleArea = length(faceNormal);
+
+ nodeNormal0 = nodeNormal0 + faceNormal;
+ nodeNormal1 = nodeNormal1 + faceNormal;
+ nodeNormal2 = nodeNormal2 + faceNormal;
+ vertexArea0 = vertexArea0 + triangleArea;
+ vertexArea1 = vertexArea1 + triangleArea;
+ vertexArea2 = vertexArea2 + triangleArea;
+
+ g_triangleNormals[faceID] = float4(normalize(faceNormal), 0.f);
+ g_vertexNormals[nodeIndex0] = float4(nodeNormal0, 0.f);
+ g_vertexNormals[nodeIndex1] = float4(nodeNormal1, 0.f);
+ g_vertexNormals[nodeIndex2] = float4(nodeNormal2, 0.f);
+ g_triangleArea[faceID] = triangleArea;
+ g_vertexArea[nodeIndex0] = vertexArea0;
+ g_vertexArea[nodeIndex1] = vertexArea1;
+ g_vertexArea[nodeIndex2] = vertexArea2;
+ }
+}
+
+[numthreads(128, 1, 1)]
+void
+NormalizeNormalsAndAreasKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ if( DTid.x < numNodes )
+ {
+ float4 normal = g_vertexNormals[DTid.x];
+ float area = g_vertexArea[DTid.x];
+ int numTriangles = g_vertexTriangleCount[DTid.x];
+
+ float vectorLength = length(normal);
+
+ g_vertexNormals[DTid.x] = normalize(normal);
+ g_vertexArea[DTid.x] = area/float(numTriangles);
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+cbuffer UpdateVelocitiesFromPositionsWithoutVelocitiesCB : register( b0 )
+{
+ int numNodes;
+ float isolverdt;
+ int padding1;
+ int padding2;
+};
+
+
+StructuredBuffer<float4> g_vertexPositions : register( t0 );
+StructuredBuffer<float4> g_vertexPreviousPositions : register( t1 );
+StructuredBuffer<int> g_vertexClothIndices : register( t2 );
+StructuredBuffer<float> g_clothDampingFactor : register( t3 );
+
+RWStructuredBuffer<float4> g_vertexVelocities : register( u0 );
+RWStructuredBuffer<float4> g_vertexForces : register( u1 );
+
+
+[numthreads(128, 1, 1)]
+void
+updateVelocitiesFromPositionsWithoutVelocitiesKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ int nodeID = DTid.x;
+ if( nodeID < numNodes )
+ {
+ float3 position = g_vertexPositions[nodeID].xyz;
+ float3 previousPosition = g_vertexPreviousPositions[nodeID].xyz;
+ float3 velocity = g_vertexVelocities[nodeID].xyz;
+ int clothIndex = g_vertexClothIndices[nodeID];
+ float dampingFactor = g_clothDampingFactor[clothIndex];
+ float velocityCoefficient = (1.f - dampingFactor);
+
+ float3 difference = position - previousPosition;
+
+ velocity = difference*velocityCoefficient*isolverdt;
+
+ g_vertexVelocities[nodeID] = float4(velocity, 0.f);
+ g_vertexForces[nodeID] = float4(0.f, 0.f, 0.f, 0.f);
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+cbuffer UpdatePositionsFromVelocitiesCB : register( b0 )
+{
+ int numNodes;
+ float solverSDT;
+ int padding1;
+ int padding2;
+};
+
+
+StructuredBuffer<float4> g_vertexVelocities : register( t0 );
+
+RWStructuredBuffer<float4> g_vertexPreviousPositions : register( u0 );
+RWStructuredBuffer<float4> g_vertexCurrentPosition : register( u1 );
+
+
+[numthreads(128, 1, 1)]
+void
+UpdatePositionsFromVelocitiesKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ int vertexID = DTid.x;
+ if( vertexID < numNodes )
+ {
+ float3 previousPosition = g_vertexPreviousPositions[vertexID].xyz;
+ float3 velocity = g_vertexVelocities[vertexID].xyz;
+
+ float3 newPosition = previousPosition + velocity*solverSDT;
+
+ g_vertexCurrentPosition[vertexID] = float4(newPosition, 0.f);
+ g_vertexPreviousPositions[vertexID] = float4(newPosition, 0.f);
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+cbuffer VSolveLinksCB : register( b0 )
+{
+ int startLink;
+ int numLinks;
+ float kst;
+ int padding;
+};
+
+// Node indices for each link
+StructuredBuffer<int2> g_linksVertexIndices : register( t0 );
+
+StructuredBuffer<float> g_linksLengthRatio : register( t1 );
+StructuredBuffer<float4> g_linksCurrentLength : register( t2 );
+StructuredBuffer<float> g_vertexInverseMass : register( t3 );
+
+RWStructuredBuffer<float4> g_vertexVelocity : register( u0 );
+
+[numthreads(128, 1, 1)]
+void
+VSolveLinksKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ int linkID = DTid.x + startLink;
+ if( DTid.x < numLinks )
+ {
+ int2 nodeIndices = g_linksVertexIndices[linkID];
+ int node0 = nodeIndices.x;
+ int node1 = nodeIndices.y;
+
+ float linkLengthRatio = g_linksLengthRatio[linkID];
+ float3 linkCurrentLength = g_linksCurrentLength[linkID].xyz;
+
+ float3 vertexVelocity0 = g_vertexVelocity[node0].xyz;
+ float3 vertexVelocity1 = g_vertexVelocity[node1].xyz;
+
+ float vertexInverseMass0 = g_vertexInverseMass[node0];
+ float vertexInverseMass1 = g_vertexInverseMass[node1];
+
+ float3 nodeDifference = vertexVelocity0 - vertexVelocity1;
+ float dotResult = dot(linkCurrentLength, nodeDifference);
+ float j = -dotResult*linkLengthRatio*kst;
+
+ float3 velocityChange0 = linkCurrentLength*(j*vertexInverseMass0);
+ float3 velocityChange1 = linkCurrentLength*(j*vertexInverseMass1);
+
+ vertexVelocity0 += velocityChange0;
+ vertexVelocity1 -= velocityChange1;
+
+ g_vertexVelocity[node0] = float4(vertexVelocity0, 0.f);
+ g_vertexVelocity[node1] = float4(vertexVelocity1, 0.f);
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+cbuffer SolvePositionsFromLinksKernelCB : register( b0 )
+{
+ unsigned int numNodes;
+ float isolverdt;
+ int padding0;
+ int padding1;
+};
+
+struct CollisionObjectIndices
+{
+ int firstObject;
+ int endObject;
+};
+
+struct CollisionShapeDescription
+{
+ float4x4 shapeTransform;
+ float4 linearVelocity;
+ float4 angularVelocity;
+
+ int softBodyIdentifier;
+ int collisionShapeType;
+
+
+ // Shape information
+ // Compressed from the union
+ float radius;
+ float halfHeight;
+
+ float margin;
+ float friction;
+
+ int padding0;
+ int padding1;
+
+};
+
+// From btBroadphaseProxy.h
+static const int CAPSULE_SHAPE_PROXYTYPE = 10;
+
+// Node indices for each link
+StructuredBuffer<int> g_vertexClothIdentifier : register( t0 );
+StructuredBuffer<float4> g_vertexPreviousPositions : register( t1 );
+StructuredBuffer<float> g_perClothFriction : register( t2 );
+StructuredBuffer<float> g_clothDampingFactor : register( t3 );
+StructuredBuffer<CollisionObjectIndices> g_perClothCollisionObjectIndices : register( t4 );
+StructuredBuffer<CollisionShapeDescription> g_collisionObjectDetails : register( t5 );
+
+RWStructuredBuffer<float4> g_vertexForces : register( u0 );
+RWStructuredBuffer<float4> g_vertexVelocities : register( u1 );
+RWStructuredBuffer<float4> g_vertexPositions : register( u2 );
+
+[numthreads(128, 1, 1)]
+void
+SolveCollisionsAndUpdateVelocitiesKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ int nodeID = DTid.x;
+ float3 forceOnVertex = float3(0.f, 0.f, 0.f);
+ if( DTid.x < numNodes )
+ {
+ int clothIdentifier = g_vertexClothIdentifier[nodeID];
+ float4 position = float4(g_vertexPositions[nodeID].xyz, 1.f);
+ float4 previousPosition = float4(g_vertexPreviousPositions[nodeID].xyz, 1.f);
+ float3 velocity;
+ float clothFriction = g_perClothFriction[clothIdentifier];
+ float dampingFactor = g_clothDampingFactor[clothIdentifier];
+ float velocityCoefficient = (1.f - dampingFactor);
+ CollisionObjectIndices collisionObjectIndices = g_perClothCollisionObjectIndices[clothIdentifier];
+
+ if( collisionObjectIndices.firstObject != collisionObjectIndices.endObject )
+ {
+ velocity = float3(15, 0, 0);
+
+ // We have some possible collisions to deal with
+ for( int collision = collisionObjectIndices.firstObject; collision < collisionObjectIndices.endObject; ++collision )
+ {
+ CollisionShapeDescription shapeDescription = g_collisionObjectDetails[collision];
+ float colliderFriction = shapeDescription.friction;
+
+ if( shapeDescription.collisionShapeType == CAPSULE_SHAPE_PROXYTYPE )
+ {
+ // Colliding with a capsule
+
+ float capsuleHalfHeight = shapeDescription.halfHeight;
+ float capsuleRadius = shapeDescription.radius;
+ float capsuleMargin = shapeDescription.margin;
+ float4x4 worldTransform = shapeDescription.shapeTransform;
+
+ float4 c1 = float4(0.f, -capsuleHalfHeight, 0.f, 1.f);
+ float4 c2 = float4(0.f, +capsuleHalfHeight, 0.f, 1.f);
+ float4 worldC1 = mul(worldTransform, c1);
+ float4 worldC2 = mul(worldTransform, c2);
+ float3 segment = (worldC2 - worldC1).xyz;
+
+ // compute distance of tangent to vertex along line segment in capsule
+ float distanceAlongSegment = -( dot( (worldC1 - position).xyz, segment ) / dot(segment, segment) );
+
+ float4 closestPoint = (worldC1 + float4(segment * distanceAlongSegment, 0.f));
+ float distanceFromLine = length(position - closestPoint);
+ float distanceFromC1 = length(worldC1 - position);
+ float distanceFromC2 = length(worldC2 - position);
+
+ // Final distance from collision, point to push from, direction to push in
+ // for impulse force
+ float dist;
+ float3 normalVector;
+ if( distanceAlongSegment < 0 )
+ {
+ dist = distanceFromC1;
+ normalVector = normalize(position - worldC1).xyz;
+ } else if( distanceAlongSegment > 1.f ) {
+ dist = distanceFromC2;
+ normalVector = normalize(position - worldC2).xyz;
+ } else {
+ dist = distanceFromLine;
+ normalVector = normalize(position - closestPoint).xyz;
+ }
+
+ float3 colliderLinearVelocity = shapeDescription.linearVelocity.xyz;
+ float3 colliderAngularVelocity = shapeDescription.angularVelocity.xyz;
+ float3 velocityOfSurfacePoint = colliderLinearVelocity + cross(colliderAngularVelocity, position.xyz - worldTransform._m03_m13_m23);
+
+ float minDistance = capsuleRadius + capsuleMargin;
+
+ // In case of no collision, this is the value of velocity
+ velocity = (position - previousPosition).xyz * velocityCoefficient * isolverdt;
+
+
+ // Check for a collision
+ if( dist < minDistance )
+ {
+ // Project back to surface along normal
+ position = position + float4((minDistance - dist)*normalVector*0.9, 0.f);
+ velocity = (position - previousPosition).xyz * velocityCoefficient * isolverdt;
+ float3 relativeVelocity = velocity - velocityOfSurfacePoint;
+
+ float3 p1 = normalize(cross(normalVector, segment));
+ float3 p2 = normalize(cross(p1, normalVector));
+ // Full friction is sum of velocities in each direction of plane
+ float3 frictionVector = p1*dot(relativeVelocity, p1) + p2*dot(relativeVelocity, p2);
+
+ // Real friction is peak friction corrected by friction coefficients
+ frictionVector = frictionVector * (colliderFriction*clothFriction);
+
+ float approachSpeed = dot(relativeVelocity, normalVector);
+
+ if( approachSpeed <= 0.0 )
+ forceOnVertex -= frictionVector;
+ }
+
+ }
+ }
+ } else {
+ // Update velocity
+ float3 difference = position.xyz - previousPosition.xyz;
+ velocity = difference*velocityCoefficient*isolverdt;
+ }
+
+ g_vertexVelocities[nodeID] = float4(velocity, 0.f);
+
+ // Update external force
+ g_vertexForces[nodeID] = float4(forceOnVertex, 0.f);
+
+ g_vertexPositions[nodeID] = float4(position.xyz, 0.f);
+ }
+}
+
+);
--- /dev/null
+MSTRINGIFY(
+
+cbuffer SolvePositionsFromLinksKernelCB : register( b0 )
+{
+ unsigned int numNodes;
+ float isolverdt;
+ int padding0;
+ int padding1;
+};
+
+struct CollisionObjectIndices
+{
+ int firstObject;
+ int endObject;
+};
+
+struct CollisionShapeDescription
+{
+ float4x4 shapeTransform;
+ float4 linearVelocity;
+ float4 angularVelocity;
+
+ int softBodyIdentifier;
+ int collisionShapeType;
+
+
+ // Shape information
+ // Compressed from the union
+ float radius;
+ float halfHeight;
+
+ float margin;
+ float friction;
+
+ int padding0;
+ int padding1;
+
+};
+
+// From btBroadphaseProxy.h
+static const int CAPSULE_SHAPE_PROXYTYPE = 10;
+
+// Node indices for each link
+StructuredBuffer<int> g_vertexClothIdentifier : register( t0 );
+StructuredBuffer<float4> g_vertexPreviousPositions : register( t1 );
+StructuredBuffer<float> g_perClothFriction : register( t2 );
+StructuredBuffer<float> g_clothDampingFactor : register( t3 );
+StructuredBuffer<CollisionObjectIndices> g_perClothCollisionObjectIndices : register( t4 );
+StructuredBuffer<CollisionShapeDescription> g_collisionObjectDetails : register( t5 );
+
+RWStructuredBuffer<float4> g_vertexForces : register( u0 );
+RWStructuredBuffer<float4> g_vertexVelocities : register( u1 );
+RWStructuredBuffer<float4> g_vertexPositions : register( u2 );
+
+// A buffer of local collision shapes
+// TODO: Iterate to support more than 16
+groupshared CollisionShapeDescription localCollisionShapes[16];
+
+[numthreads(128, 1, 1)]
+void
+SolveCollisionsAndUpdateVelocitiesKernel( uint3 Gid : SV_GroupID, uint3 DTid : SV_DispatchThreadID, uint3 GTid : SV_GroupThreadID, uint GI : SV_GroupIndex )
+{
+ int nodeID = DTid.x;
+ float3 forceOnVertex = float3(0.f, 0.f, 0.f);
+
+ int clothIdentifier = g_vertexClothIdentifier[nodeID];
+ float4 position = float4(g_vertexPositions[nodeID].xyz, 1.f);
+ float4 previousPosition = float4(g_vertexPreviousPositions[nodeID].xyz, 1.f);
+ float3 velocity;
+ float clothFriction = g_perClothFriction[clothIdentifier];
+ float dampingFactor = g_clothDampingFactor[clothIdentifier];
+ float velocityCoefficient = (1.f - dampingFactor);
+ CollisionObjectIndices collisionObjectIndices = g_perClothCollisionObjectIndices[clothIdentifier];
+
+ int numObjects = collisionObjectIndices.endObject - collisionObjectIndices.firstObject;
+ if( numObjects > 0 )
+ {
+ // We have some possible collisions to deal with
+
+ // First load all of the collision objects into LDS
+ int numObjects = collisionObjectIndices.endObject - collisionObjectIndices.firstObject;
+ if( GTid.x < numObjects )
+ {
+ localCollisionShapes[GTid.x] = g_collisionObjectDetails[ collisionObjectIndices.firstObject + GTid.x ];
+ }
+ }
+
+ // Safe as the vertices are padded so that not more than one soft body is in a group
+ AllMemoryBarrierWithGroupSync();
+
+ // Annoyingly, even though I know the flow control is not varying, the compiler will not let me skip this
+ if( numObjects > 0 )
+ {
+ velocity = float3(0, 0, 0);
+
+
+ // We have some possible collisions to deal with
+ for( int collision = 0; collision < numObjects; ++collision )
+ {
+ CollisionShapeDescription shapeDescription = localCollisionShapes[collision];
+ float colliderFriction = shapeDescription.friction;
+
+ if( shapeDescription.collisionShapeType == CAPSULE_SHAPE_PROXYTYPE )
+ {
+ // Colliding with a capsule
+
+ float capsuleHalfHeight = localCollisionShapes[collision].halfHeight;
+ float capsuleRadius = localCollisionShapes[collision].radius;
+ float capsuleMargin = localCollisionShapes[collision].margin;
+
+ float4x4 worldTransform = localCollisionShapes[collision].shapeTransform;
+
+ float4 c1 = float4(0.f, -capsuleHalfHeight, 0.f, 1.f);
+ float4 c2 = float4(0.f, +capsuleHalfHeight, 0.f, 1.f);
+ float4 worldC1 = mul(worldTransform, c1);
+ float4 worldC2 = mul(worldTransform, c2);
+ float3 segment = (worldC2 - worldC1).xyz;
+
+ // compute distance of tangent to vertex along line segment in capsule
+ float distanceAlongSegment = -( dot( (worldC1 - position).xyz, segment ) / dot(segment, segment) );
+
+ float4 closestPoint = (worldC1 + float4(segment * distanceAlongSegment, 0.f));
+ float distanceFromLine = length(position - closestPoint);
+ float distanceFromC1 = length(worldC1 - position);
+ float distanceFromC2 = length(worldC2 - position);
+
+ // Final distance from collision, point to push from, direction to push in
+ // for impulse force
+ float dist;
+ float3 normalVector;
+ if( distanceAlongSegment < 0 )
+ {
+ dist = distanceFromC1;
+ normalVector = normalize(position - worldC1).xyz;
+ } else if( distanceAlongSegment > 1.f ) {
+ dist = distanceFromC2;
+ normalVector = normalize(position - worldC2).xyz;
+ } else {
+ dist = distanceFromLine;
+ normalVector = normalize(position - closestPoint).xyz;
+ }
+
+ float3 colliderLinearVelocity = localCollisionShapes[collision].linearVelocity.xyz;
+ float3 colliderAngularVelocity = localCollisionShapes[collision].angularVelocity.xyz;
+ float3 velocityOfSurfacePoint = colliderLinearVelocity + cross(colliderAngularVelocity, position.xyz - worldTransform._m03_m13_m23);
+
+ float minDistance = capsuleRadius + capsuleMargin;
+
+ // In case of no collision, this is the value of velocity
+ velocity = (position - previousPosition).xyz * velocityCoefficient * isolverdt;
+
+
+ // Check for a collision
+ if( dist < minDistance )
+ {
+ // Project back to surface along normal
+ position = position + float4((minDistance - dist)*normalVector*0.9, 0.f);
+ velocity = (position - previousPosition).xyz * velocityCoefficient * isolverdt;
+ float3 relativeVelocity = velocity - velocityOfSurfacePoint;
+
+ float3 p1 = normalize(cross(normalVector, segment));
+ float3 p2 = normalize(cross(p1, normalVector));
+ // Full friction is sum of velocities in each direction of plane
+ float3 frictionVector = p1*dot(relativeVelocity, p1) + p2*dot(relativeVelocity, p2);
+
+ // Real friction is peak friction corrected by friction coefficients
+ frictionVector = frictionVector * (colliderFriction*clothFriction);
+
+ float approachSpeed = dot(relativeVelocity, normalVector);
+
+ if( approachSpeed <= 0.0 )
+ forceOnVertex -= frictionVector;
+ }
+
+ }
+ }
+ } else {
+ // Update velocity
+ float3 difference = position.xyz - previousPosition.xyz;
+ velocity = difference*velocityCoefficient*isolverdt;
+ }
+
+ g_vertexVelocities[nodeID] = float4(velocity, 0.f);
+
+ // Update external force
+ g_vertexForces[nodeID] = float4(forceOnVertex, 0.f);
+
+ g_vertexPositions[nodeID] = float4(position.xyz, 0.f);
+}
+
+);
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+#ifndef BT_SOFT_BODY_SOLVER_BUFFER_DX11_H
+#define BT_SOFT_BODY_SOLVER_BUFFER_DX11_H
+
+// DX11 support
+#include <windows.h>
+#include <crtdbg.h>
+#include <d3d11.h>
+#include <d3dx11.h>
+#include <d3dcompiler.h>
+
+#ifndef SAFE_RELEASE
+#define SAFE_RELEASE(p) { if(p) { (p)->Release(); (p)=NULL; } }
+#endif
+
+/**
+ * DX11 Buffer that tracks a host buffer on use to ensure size-correctness.
+ */
+template <typename ElementType> class btDX11Buffer
+{
+protected:
+ ID3D11Device* m_d3dDevice;
+ ID3D11DeviceContext* m_d3dDeviceContext;
+
+ ID3D11Buffer* m_Buffer;
+ ID3D11ShaderResourceView* m_SRV;
+ ID3D11UnorderedAccessView* m_UAV;
+ btAlignedObjectArray< ElementType >* m_CPUBuffer;
+
+ // TODO: Separate this from the main class
+ // as read back buffers can be shared between buffers
+ ID3D11Buffer* m_readBackBuffer;
+
+ int m_gpuSize;
+ bool m_onGPU;
+
+ bool m_readOnlyOnGPU;
+
+ bool createBuffer( ID3D11Buffer *preexistingBuffer = 0)
+ {
+ HRESULT hr = S_OK;
+
+ // Create all CS buffers
+ if( preexistingBuffer )
+ {
+ m_Buffer = preexistingBuffer;
+ } else {
+ D3D11_BUFFER_DESC buffer_desc;
+ ZeroMemory(&buffer_desc, sizeof(buffer_desc));
+ buffer_desc.Usage = D3D11_USAGE_DEFAULT;
+ if( m_readOnlyOnGPU )
+ buffer_desc.BindFlags = D3D11_BIND_SHADER_RESOURCE;
+ else
+ buffer_desc.BindFlags = D3D11_BIND_SHADER_RESOURCE | D3D11_BIND_UNORDERED_ACCESS;
+ buffer_desc.MiscFlags = D3D11_RESOURCE_MISC_BUFFER_STRUCTURED;
+
+ buffer_desc.ByteWidth = m_CPUBuffer->size() * sizeof(ElementType);
+ // At a minimum the buffer must exist
+ if( buffer_desc.ByteWidth == 0 )
+ buffer_desc.ByteWidth = sizeof(ElementType);
+ buffer_desc.StructureByteStride = sizeof(ElementType);
+ hr = m_d3dDevice->CreateBuffer(&buffer_desc, NULL, &m_Buffer);
+ if( FAILED( hr ) )
+ return (hr==S_OK);
+ }
+
+ if( m_readOnlyOnGPU )
+ {
+ D3D11_SHADER_RESOURCE_VIEW_DESC srvbuffer_desc;
+ ZeroMemory(&srvbuffer_desc, sizeof(srvbuffer_desc));
+ srvbuffer_desc.Format = DXGI_FORMAT_UNKNOWN;
+ srvbuffer_desc.ViewDimension = D3D11_SRV_DIMENSION_BUFFER;
+
+ srvbuffer_desc.Buffer.ElementWidth = m_CPUBuffer->size();
+ if( srvbuffer_desc.Buffer.ElementWidth == 0 )
+ srvbuffer_desc.Buffer.ElementWidth = 1;
+ hr = m_d3dDevice->CreateShaderResourceView(m_Buffer, &srvbuffer_desc, &m_SRV);
+ if( FAILED( hr ) )
+ return (hr==S_OK);
+ } else {
+ // Create SRV
+ D3D11_SHADER_RESOURCE_VIEW_DESC srvbuffer_desc;
+ ZeroMemory(&srvbuffer_desc, sizeof(srvbuffer_desc));
+ srvbuffer_desc.Format = DXGI_FORMAT_UNKNOWN;
+ srvbuffer_desc.ViewDimension = D3D11_SRV_DIMENSION_BUFFER;
+
+ srvbuffer_desc.Buffer.ElementWidth = m_CPUBuffer->size();
+ if( srvbuffer_desc.Buffer.ElementWidth == 0 )
+ srvbuffer_desc.Buffer.ElementWidth = 1;
+ hr = m_d3dDevice->CreateShaderResourceView(m_Buffer, &srvbuffer_desc, &m_SRV);
+ if( FAILED( hr ) )
+ return (hr==S_OK);
+
+ // Create UAV
+ D3D11_UNORDERED_ACCESS_VIEW_DESC uavbuffer_desc;
+ ZeroMemory(&uavbuffer_desc, sizeof(uavbuffer_desc));
+ uavbuffer_desc.Format = DXGI_FORMAT_UNKNOWN;
+ uavbuffer_desc.ViewDimension = D3D11_UAV_DIMENSION_BUFFER;
+
+ uavbuffer_desc.Buffer.NumElements = m_CPUBuffer->size();
+ if( uavbuffer_desc.Buffer.NumElements == 0 )
+ uavbuffer_desc.Buffer.NumElements = 1;
+ hr = m_d3dDevice->CreateUnorderedAccessView(m_Buffer, &uavbuffer_desc, &m_UAV);
+ if( FAILED( hr ) )
+ return (hr==S_OK);
+
+ // Create read back buffer
+ D3D11_BUFFER_DESC readback_buffer_desc;
+ ZeroMemory(&readback_buffer_desc, sizeof(readback_buffer_desc));
+
+ readback_buffer_desc.ByteWidth = m_CPUBuffer->size() * sizeof(ElementType);
+ readback_buffer_desc.Usage = D3D11_USAGE_STAGING;
+ readback_buffer_desc.CPUAccessFlags = D3D11_CPU_ACCESS_READ;
+ readback_buffer_desc.StructureByteStride = sizeof(ElementType);
+ hr = m_d3dDevice->CreateBuffer(&readback_buffer_desc, NULL, &m_readBackBuffer);
+ if( FAILED( hr ) )
+ return (hr==S_OK);
+ }
+
+ m_gpuSize = m_CPUBuffer->size();
+ return true;
+ }
+
+
+
+public:
+ btDX11Buffer( ID3D11Device *d3dDevice, ID3D11DeviceContext *d3dDeviceContext, btAlignedObjectArray< ElementType > *CPUBuffer, bool readOnly )
+ {
+ m_d3dDevice = d3dDevice;
+ m_d3dDeviceContext = d3dDeviceContext;
+ m_Buffer = 0;
+ m_SRV = 0;
+ m_UAV = 0;
+ m_readBackBuffer = 0;
+
+ m_CPUBuffer = CPUBuffer;
+
+ m_gpuSize = 0;
+ m_onGPU = false;
+
+ m_readOnlyOnGPU = readOnly;
+ }
+
+ virtual ~btDX11Buffer()
+ {
+ SAFE_RELEASE(m_Buffer);
+ SAFE_RELEASE(m_SRV);
+ SAFE_RELEASE(m_UAV);
+ SAFE_RELEASE(m_readBackBuffer);
+ }
+
+ ID3D11ShaderResourceView* &getSRV()
+ {
+ return m_SRV;
+ }
+
+ ID3D11UnorderedAccessView* &getUAV()
+ {
+ return m_UAV;
+ }
+
+ ID3D11Buffer* &getBuffer()
+ {
+ return m_Buffer;
+ }
+
+ /**
+ * Move the data to the GPU if it is not there already.
+ */
+ bool moveToGPU()
+ {
+ // Reallocate if GPU size is too small
+ if( (m_CPUBuffer->size() > m_gpuSize ) )
+ m_onGPU = false;
+ if( !m_onGPU && m_CPUBuffer->size() > 0 )
+ {
+ // If the buffer doesn't exist or the CPU-side buffer has changed size, create
+ // We should really delete the old one, too, but let's leave that for later
+ if( !m_Buffer || (m_CPUBuffer->size() != m_gpuSize) )
+ {
+ SAFE_RELEASE(m_Buffer);
+ SAFE_RELEASE(m_SRV);
+ SAFE_RELEASE(m_UAV);
+ SAFE_RELEASE(m_readBackBuffer);
+ if( !createBuffer() )
+ {
+ btAssert("Buffer creation failed.");
+ return false;
+ }
+ }
+
+ if( m_gpuSize > 0 )
+ {
+ D3D11_BOX destRegion;
+ destRegion.left = 0;
+ destRegion.front = 0;
+ destRegion.top = 0;
+ destRegion.bottom = 1;
+ destRegion.back = 1;
+ destRegion.right = (m_CPUBuffer->size())*sizeof(ElementType);
+ m_d3dDeviceContext->UpdateSubresource(m_Buffer, 0, &destRegion, &((*m_CPUBuffer)[0]), 0, 0);
+
+ m_onGPU = true;
+ }
+
+ }
+
+ return true;
+ }
+
+ /**
+ * Move the data back from the GPU if it is on there and isn't read only.
+ */
+ bool moveFromGPU()
+ {
+ if( m_CPUBuffer->size() > 0 )
+ {
+ if( m_onGPU && !m_readOnlyOnGPU )
+ {
+ // Copy back
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ //m_pd3dImmediateContext->CopyResource(m_phAngVelReadBackBuffer, m_phAngVel);
+
+ D3D11_BOX destRegion;
+ destRegion.left = 0;
+ destRegion.front = 0;
+ destRegion.top = 0;
+ destRegion.bottom = 1;
+ destRegion.back = 1;
+
+ destRegion.right = (m_CPUBuffer->size())*sizeof(ElementType);
+ m_d3dDeviceContext->CopySubresourceRegion(
+ m_readBackBuffer,
+ 0,
+ 0,
+ 0,
+ 0 ,
+ m_Buffer,
+ 0,
+ &destRegion
+ );
+
+ m_d3dDeviceContext->Map(m_readBackBuffer, 0, D3D11_MAP_READ, 0, &MappedResource);
+ //memcpy(m_hAngVel, MappedResource.pData, (m_maxObjs * sizeof(float) ));
+ memcpy(&((*m_CPUBuffer)[0]), MappedResource.pData, ((m_CPUBuffer->size()) * sizeof(ElementType) ));
+ m_d3dDeviceContext->Unmap(m_readBackBuffer, 0);
+
+ m_onGPU = false;
+ }
+ }
+
+ return true;
+ }
+
+
+ /**
+ * Copy the data back from the GPU without changing its state to be CPU-side.
+ * Useful if we just want to view it on the host for visualization.
+ */
+ bool copyFromGPU()
+ {
+ if( m_CPUBuffer->size() > 0 )
+ {
+ if( m_onGPU && !m_readOnlyOnGPU )
+ {
+ // Copy back
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+
+ D3D11_BOX destRegion;
+ destRegion.left = 0;
+ destRegion.front = 0;
+ destRegion.top = 0;
+ destRegion.bottom = 1;
+ destRegion.back = 1;
+
+ destRegion.right = (m_CPUBuffer->size())*sizeof(ElementType);
+ m_d3dDeviceContext->CopySubresourceRegion(
+ m_readBackBuffer,
+ 0,
+ 0,
+ 0,
+ 0 ,
+ m_Buffer,
+ 0,
+ &destRegion
+ );
+
+ m_d3dDeviceContext->Map(m_readBackBuffer, 0, D3D11_MAP_READ, 0, &MappedResource);
+ //memcpy(m_hAngVel, MappedResource.pData, (m_maxObjs * sizeof(float) ));
+ memcpy(&((*m_CPUBuffer)[0]), MappedResource.pData, ((m_CPUBuffer->size()) * sizeof(ElementType) ));
+ m_d3dDeviceContext->Unmap(m_readBackBuffer, 0);
+ }
+ }
+
+ return true;
+ }
+
+ /**
+ * Call if data has changed on the CPU.
+ * Can then trigger a move to the GPU as necessary.
+ */
+ virtual void changedOnCPU()
+ {
+ m_onGPU = false;
+ }
+}; // class btDX11Buffer
+
+
+
+#endif // #ifndef BT_SOFT_BODY_SOLVER_BUFFER_DX11_H
\ No newline at end of file
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+
+#include "BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h"
+#include "btSoftBodySolverBuffer_DX11.h"
+
+
+#ifndef BT_SOFT_BODY_SOLVER_LINK_DATA_DX11_H
+#define BT_SOFT_BODY_SOLVER_LINK_DATA_DX11_H
+
+struct ID3D11Device;
+struct ID3D11DeviceContext;
+
+
+class btSoftBodyLinkDataDX11 : public btSoftBodyLinkData
+{
+public:
+ bool m_onGPU;
+ ID3D11Device *m_d3dDevice;
+ ID3D11DeviceContext *m_d3dDeviceContext;
+
+
+ btDX11Buffer<LinkNodePair> m_dx11Links;
+ btDX11Buffer<float> m_dx11LinkStrength;
+ btDX11Buffer<float> m_dx11LinksMassLSC;
+ btDX11Buffer<float> m_dx11LinksRestLengthSquared;
+ btDX11Buffer<Vectormath::Aos::Vector3> m_dx11LinksCLength;
+ btDX11Buffer<float> m_dx11LinksLengthRatio;
+ btDX11Buffer<float> m_dx11LinksRestLength;
+ btDX11Buffer<float> m_dx11LinksMaterialLinearStiffnessCoefficient;
+
+ struct BatchPair
+ {
+ int start;
+ int length;
+
+ BatchPair() :
+ start(0),
+ length(0)
+ {
+ }
+
+ BatchPair( int s, int l ) :
+ start( s ),
+ length( l )
+ {
+ }
+ };
+
+ /**
+ * Link addressing information for each cloth.
+ * Allows link locations to be computed independently of data batching.
+ */
+ btAlignedObjectArray< int > m_linkAddresses;
+
+ /**
+ * Start and length values for computation batches over link data.
+ */
+ btAlignedObjectArray< BatchPair > m_batchStartLengths;
+
+
+ //ID3D11Buffer* readBackBuffer;
+
+ btSoftBodyLinkDataDX11( ID3D11Device *d3dDevice, ID3D11DeviceContext *d3dDeviceContext );
+
+ virtual ~btSoftBodyLinkDataDX11();
+
+ /** Allocate enough space in all link-related arrays to fit numLinks links */
+ virtual void createLinks( int numLinks );
+
+ /** Insert the link described into the correct data structures assuming space has already been allocated by a call to createLinks */
+ virtual void setLinkAt( const LinkDescription &link, int linkIndex );
+
+ virtual bool onAccelerator();
+
+ virtual bool moveToAccelerator();
+
+ virtual bool moveFromAccelerator();
+
+ /**
+ * Generate (and later update) the batching for the entire link set.
+ * This redoes a lot of work because it batches the entire set when each cloth is inserted.
+ * In theory we could delay it until just before we need the cloth.
+ * It's a one-off overhead, though, so that is a later optimisation.
+ */
+ void generateBatches();
+};
+
+
+#endif // #ifndef BT_SOFT_BODY_SOLVER_LINK_DATA_DX11_H
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h"
+#include "btSoftBodySolverBuffer_DX11.h"
+
+#ifndef BT_ACCELERATED_SOFT_BODY_LINK_DATA_DX11_SIMDAWARE_H
+#define BT_ACCELERATED_SOFT_BODY_LINK_DATA_DX11_SIMDAWARE_H
+
+struct ID3D11Device;
+struct ID3D11DeviceContext;
+
+
+class btSoftBodyLinkDataDX11SIMDAware : public btSoftBodyLinkData
+{
+public:
+ bool m_onGPU;
+ ID3D11Device *m_d3dDevice;
+ ID3D11DeviceContext *m_d3dDeviceContext;
+
+ const int m_wavefrontSize;
+ const int m_linksPerWorkItem;
+ const int m_maxLinksPerWavefront;
+ int m_maxBatchesWithinWave;
+ int m_maxVerticesWithinWave;
+ int m_numWavefronts;
+
+ int m_maxVertex;
+
+ struct NumBatchesVerticesPair
+ {
+ int numBatches;
+ int numVertices;
+ };
+
+ // Array storing number of links in each wavefront
+ btAlignedObjectArray<int> m_linksPerWavefront;
+ btAlignedObjectArray<NumBatchesVerticesPair> m_numBatchesAndVerticesWithinWaves;
+ btDX11Buffer< NumBatchesVerticesPair > m_dx11NumBatchesAndVerticesWithinWaves;
+
+ // All arrays here will contain batches of m_maxLinksPerWavefront links
+ // ordered by wavefront.
+ // with either global vertex pairs or local vertex pairs
+ btAlignedObjectArray< int > m_wavefrontVerticesGlobalAddresses; // List of global vertices per wavefront
+ btDX11Buffer<int> m_dx11WavefrontVerticesGlobalAddresses;
+ btAlignedObjectArray< LinkNodePair > m_linkVerticesLocalAddresses; // Vertex pair for the link
+ btDX11Buffer<LinkNodePair> m_dx11LinkVerticesLocalAddresses;
+ btDX11Buffer<float> m_dx11LinkStrength;
+ btDX11Buffer<float> m_dx11LinksMassLSC;
+ btDX11Buffer<float> m_dx11LinksRestLengthSquared;
+ btDX11Buffer<float> m_dx11LinksRestLength;
+ btDX11Buffer<float> m_dx11LinksMaterialLinearStiffnessCoefficient;
+
+ struct BatchPair
+ {
+ int start;
+ int length;
+
+ BatchPair() :
+ start(0),
+ length(0)
+ {
+ }
+
+ BatchPair( int s, int l ) :
+ start( s ),
+ length( l )
+ {
+ }
+ };
+
+ /**
+ * Link addressing information for each cloth.
+ * Allows link locations to be computed independently of data batching.
+ */
+ btAlignedObjectArray< int > m_linkAddresses;
+
+ /**
+ * Start and length values for computation batches over link data.
+ */
+ btAlignedObjectArray< BatchPair > m_wavefrontBatchStartLengths;
+
+
+ //ID3D11Buffer* readBackBuffer;
+
+ btSoftBodyLinkDataDX11SIMDAware( ID3D11Device *d3dDevice, ID3D11DeviceContext *d3dDeviceContext );
+
+ virtual ~btSoftBodyLinkDataDX11SIMDAware();
+
+ /** Allocate enough space in all link-related arrays to fit numLinks links */
+ virtual void createLinks( int numLinks );
+
+ /** Insert the link described into the correct data structures assuming space has already been allocated by a call to createLinks */
+ virtual void setLinkAt( const LinkDescription &link, int linkIndex );
+
+ virtual bool onAccelerator();
+
+ virtual bool moveToAccelerator();
+
+ virtual bool moveFromAccelerator();
+
+ /**
+ * Generate (and later update) the batching for the entire link set.
+ * This redoes a lot of work because it batches the entire set when each cloth is inserted.
+ * In theory we could delay it until just before we need the cloth.
+ * It's a one-off overhead, though, so that is a later optimisation.
+ */
+ void generateBatches();
+
+ int getMaxVerticesPerWavefront()
+ {
+ return m_maxVerticesWithinWave;
+ }
+
+ int getWavefrontSize()
+ {
+ return m_wavefrontSize;
+ }
+
+ int getLinksPerWorkItem()
+ {
+ return m_linksPerWorkItem;
+ }
+
+ int getMaxLinksPerWavefront()
+ {
+ return m_maxLinksPerWavefront;
+ }
+
+ int getMaxBatchesPerWavefront()
+ {
+ return m_maxBatchesWithinWave;
+ }
+
+ int getNumWavefronts()
+ {
+ return m_numWavefronts;
+ }
+
+ NumBatchesVerticesPair getNumBatchesAndVerticesWithinWavefront( int wavefront )
+ {
+ return m_numBatchesAndVerticesWithinWaves[wavefront];
+ }
+
+ int getVertexGlobalAddresses( int vertexIndex )
+ {
+ return m_wavefrontVerticesGlobalAddresses[vertexIndex];
+ }
+
+ /**
+ * Get post-batching local addresses of the vertex pair for a link assuming all vertices used by a wavefront are loaded locally.
+ */
+ LinkNodePair getVertexPairLocalAddresses( int linkIndex )
+ {
+ return m_linkVerticesLocalAddresses[linkIndex];
+ }
+
+};
+
+
+#endif // #ifndef BT_ACCELERATED_SOFT_BODY_LINK_DATA_DX11_SIMDAWARE_H
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h"
+#include "btSoftBodySolverBuffer_DX11.h"
+
+
+#ifndef BT_SOFT_BODY_SOLVER_TRIANGLE_DATA_DX11_H
+#define BT_SOFT_BODY_SOLVER_TRIANGLE_DATA_DX11_H
+
+struct ID3D11Device;
+struct ID3D11DeviceContext;
+
+class btSoftBodyTriangleDataDX11 : public btSoftBodyTriangleData
+{
+public:
+ bool m_onGPU;
+ ID3D11Device *m_d3dDevice;
+ ID3D11DeviceContext *m_d3dDeviceContext;
+
+ btDX11Buffer<btSoftBodyTriangleData::TriangleNodeSet> m_dx11VertexIndices;
+ btDX11Buffer<float> m_dx11Area;
+ btDX11Buffer<Vectormath::Aos::Vector3> m_dx11Normal;
+
+ struct BatchPair
+ {
+ int start;
+ int length;
+
+ BatchPair() :
+ start(0),
+ length(0)
+ {
+ }
+
+ BatchPair( int s, int l ) :
+ start( s ),
+ length( l )
+ {
+ }
+ };
+
+
+ /**
+ * Link addressing information for each cloth.
+ * Allows link locations to be computed independently of data batching.
+ */
+ btAlignedObjectArray< int > m_triangleAddresses;
+
+ /**
+ * Start and length values for computation batches over link data.
+ */
+ btAlignedObjectArray< BatchPair > m_batchStartLengths;
+
+ //ID3D11Buffer* readBackBuffer;
+
+public:
+ btSoftBodyTriangleDataDX11( ID3D11Device *d3dDevice, ID3D11DeviceContext *d3dDeviceContext );
+
+ virtual ~btSoftBodyTriangleDataDX11();
+
+
+ /** Allocate enough space in all link-related arrays to fit numLinks links */
+ virtual void createTriangles( int numTriangles );
+
+ /** Insert the link described into the correct data structures assuming space has already been allocated by a call to createLinks */
+ virtual void setTriangleAt( const btSoftBodyTriangleData::TriangleDescription &triangle, int triangleIndex );
+
+ virtual bool onAccelerator();
+ virtual bool moveToAccelerator();
+
+ virtual bool moveFromAccelerator();
+ /**
+ * Generate (and later update) the batching for the entire triangle set.
+ * This redoes a lot of work because it batches the entire set when each cloth is inserted.
+ * In theory we could delay it until just before we need the cloth.
+ * It's a one-off overhead, though, so that is a later optimisation.
+ */
+ void generateBatches();
+};
+
+
+
+#endif // #ifndef BT_SOFT_BODY_SOLVER_TRIANGLE_DATA_DX11_H
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef BT_SOFT_BODY_SOLVER_VERTEX_BUFFER_DX11_H
+#define BT_SOFT_BODY_SOLVER_VERTEX_BUFFER_DX11_H
+
+
+#include "BulletSoftBody/btSoftBodySolverVertexBuffer.h"
+
+#include <windows.h>
+#include <crtdbg.h>
+#include <d3d11.h>
+#include <d3dx11.h>
+#include <d3dcompiler.h>
+
+class btDX11VertexBufferDescriptor : public btVertexBufferDescriptor
+{
+protected:
+ /** Context of the DX11 device on which the vertex buffer is stored. */
+ ID3D11DeviceContext* m_context;
+ /** DX11 vertex buffer */
+ ID3D11Buffer* m_vertexBuffer;
+ /** UAV for DX11 buffer */
+ ID3D11UnorderedAccessView* m_vertexBufferUAV;
+
+
+public:
+ /**
+ * buffer is a pointer to the DX11 buffer to place the vertex data in.
+ * UAV is a pointer to the UAV representation of the buffer laid out in floats.
+ * vertexOffset is the offset in floats to the first vertex.
+ * vertexStride is the stride in floats between vertices.
+ */
+ btDX11VertexBufferDescriptor( ID3D11DeviceContext* context, ID3D11Buffer* buffer, ID3D11UnorderedAccessView *UAV, int vertexOffset, int vertexStride )
+ {
+ m_context = context;
+ m_vertexBuffer = buffer;
+ m_vertexBufferUAV = UAV;
+ m_vertexOffset = vertexOffset;
+ m_vertexStride = vertexStride;
+ m_hasVertexPositions = true;
+ }
+
+ /**
+ * buffer is a pointer to the DX11 buffer to place the vertex data in.
+ * UAV is a pointer to the UAV representation of the buffer laid out in floats.
+ * vertexOffset is the offset in floats to the first vertex.
+ * vertexStride is the stride in floats between vertices.
+ * normalOffset is the offset in floats to the first normal.
+ * normalStride is the stride in floats between normals.
+ */
+ btDX11VertexBufferDescriptor( ID3D11DeviceContext* context, ID3D11Buffer* buffer, ID3D11UnorderedAccessView *UAV, int vertexOffset, int vertexStride, int normalOffset, int normalStride )
+ {
+ m_context = context;
+ m_vertexBuffer = buffer;
+ m_vertexBufferUAV = UAV;
+ m_vertexOffset = vertexOffset;
+ m_vertexStride = vertexStride;
+ m_hasVertexPositions = true;
+
+ m_normalOffset = normalOffset;
+ m_normalStride = normalStride;
+ m_hasNormals = true;
+ }
+
+ virtual ~btDX11VertexBufferDescriptor()
+ {
+
+ }
+
+ /**
+ * Return the type of the vertex buffer descriptor.
+ */
+ virtual BufferTypes getBufferType() const
+ {
+ return DX11_BUFFER;
+ }
+
+ virtual ID3D11DeviceContext* getContext() const
+ {
+ return m_context;
+ }
+
+ virtual ID3D11Buffer* getbtDX11Buffer() const
+ {
+ return m_vertexBuffer;
+ }
+
+ virtual ID3D11UnorderedAccessView* getDX11UAV() const
+ {
+ return m_vertexBufferUAV;
+ }
+};
+
+#endif // #ifndef BT_SOFT_BODY_SOLVER_VERTEX_BUFFER_DX11_H
\ No newline at end of file
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+
+#include "BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h"
+#include "btSoftBodySolverBuffer_DX11.h"
+
+
+#ifndef BT_SOFT_BHODY_SOLVER_VERTEX_DATA_DX11_H
+#define BT_SOFT_BHODY_SOLVER_VERTEX_DATA_DX11_H
+
+class btSoftBodyLinkData;
+class btSoftBodyLinkData::LinkDescription;
+
+struct ID3D11Device;
+struct ID3D11DeviceContext;
+
+class btSoftBodyVertexDataDX11 : public btSoftBodyVertexData
+{
+protected:
+ bool m_onGPU;
+ ID3D11Device *m_d3dDevice;
+ ID3D11DeviceContext *m_d3dDeviceContext;
+
+public:
+ btDX11Buffer<int> m_dx11ClothIdentifier;
+ btDX11Buffer<Vectormath::Aos::Point3> m_dx11VertexPosition;
+ btDX11Buffer<Vectormath::Aos::Point3> m_dx11VertexPreviousPosition;
+ btDX11Buffer<Vectormath::Aos::Vector3> m_dx11VertexVelocity;
+ btDX11Buffer<Vectormath::Aos::Vector3> m_dx11VertexForceAccumulator;
+ btDX11Buffer<Vectormath::Aos::Vector3> m_dx11VertexNormal;
+ btDX11Buffer<float> m_dx11VertexInverseMass;
+ btDX11Buffer<float> m_dx11VertexArea;
+ btDX11Buffer<int> m_dx11VertexTriangleCount;
+
+
+ //ID3D11Buffer* readBackBuffer;
+
+public:
+ btSoftBodyVertexDataDX11( ID3D11Device *d3dDevice, ID3D11DeviceContext *d3dDeviceContext );
+ virtual ~btSoftBodyVertexDataDX11();
+
+ virtual bool onAccelerator();
+ virtual bool moveToAccelerator();
+
+ virtual bool moveFromAccelerator(bool bCopy = false, bool bCopyMinimum = true);
+};
+
+
+#endif // #ifndef BT_SOFT_BHODY_SOLVER_VERTEX_DATA_DX11_H
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h"
+#include "vectormath/vmInclude.h"
+
+#include "btSoftBodySolver_DX11.h"
+#include "btSoftBodySolverVertexBuffer_DX11.h"
+#include "BulletSoftBody/btSoftBody.h"
+#include "BulletCollision/CollisionShapes/btCapsuleShape.h"
+#include <stdio.h> //printf
+#define MSTRINGIFY(A) #A
+static char* PrepareLinksHLSLString =
+#include "HLSL/PrepareLinks.hlsl"
+static char* UpdatePositionsFromVelocitiesHLSLString =
+#include "HLSL/UpdatePositionsFromVelocities.hlsl"
+static char* SolvePositionsHLSLString =
+#include "HLSL/SolvePositions.hlsl"
+static char* UpdateNodesHLSLString =
+#include "HLSL/UpdateNodes.hlsl"
+static char* UpdatePositionsHLSLString =
+#include "HLSL/UpdatePositions.hlsl"
+static char* UpdateConstantsHLSLString =
+#include "HLSL/UpdateConstants.hlsl"
+static char* IntegrateHLSLString =
+#include "HLSL/Integrate.hlsl"
+static char* ApplyForcesHLSLString =
+#include "HLSL/ApplyForces.hlsl"
+static char* UpdateNormalsHLSLString =
+#include "HLSL/UpdateNormals.hlsl"
+static char* OutputToVertexArrayHLSLString =
+#include "HLSL/OutputToVertexArray.hlsl"
+static char* VSolveLinksHLSLString =
+#include "HLSL/VSolveLinks.hlsl"
+static char* ComputeBoundsHLSLString =
+#include "HLSL/ComputeBounds.hlsl"
+static char* SolveCollisionsAndUpdateVelocitiesHLSLString =
+#include "HLSL/SolveCollisionsAndUpdateVelocities.hlsl"
+#include "BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h"
+
+btSoftBodyLinkDataDX11::btSoftBodyLinkDataDX11( ID3D11Device *d3dDevice, ID3D11DeviceContext *d3dDeviceContext ) :
+ m_dx11Links( d3dDevice, d3dDeviceContext, &m_links, false ),
+ m_dx11LinkStrength( d3dDevice, d3dDeviceContext, &m_linkStrength, false ),
+ m_dx11LinksMassLSC( d3dDevice, d3dDeviceContext, &m_linksMassLSC, false ),
+ m_dx11LinksRestLengthSquared( d3dDevice, d3dDeviceContext, &m_linksRestLengthSquared, false ),
+ m_dx11LinksCLength( d3dDevice, d3dDeviceContext, &m_linksCLength, false ),
+ m_dx11LinksLengthRatio( d3dDevice, d3dDeviceContext, &m_linksLengthRatio, false ),
+ m_dx11LinksRestLength( d3dDevice, d3dDeviceContext, &m_linksRestLength, false ),
+ m_dx11LinksMaterialLinearStiffnessCoefficient( d3dDevice, d3dDeviceContext, &m_linksMaterialLinearStiffnessCoefficient, false )
+{
+ m_d3dDevice = d3dDevice;
+ m_d3dDeviceContext = d3dDeviceContext;
+}
+
+btSoftBodyLinkDataDX11::~btSoftBodyLinkDataDX11()
+{
+}
+
+static Vectormath::Aos::Vector3 toVector3( const btVector3 &vec )
+{
+ Vectormath::Aos::Vector3 outVec( vec.getX(), vec.getY(), vec.getZ() );
+ return outVec;
+}
+
+void btSoftBodyLinkDataDX11::createLinks( int numLinks )
+{
+ int previousSize = m_links.size();
+ int newSize = previousSize + numLinks;
+
+ btSoftBodyLinkData::createLinks( numLinks );
+
+ // Resize the link addresses array as well
+ m_linkAddresses.resize( newSize );
+}
+
+void btSoftBodyLinkDataDX11::setLinkAt( const btSoftBodyLinkData::LinkDescription &link, int linkIndex )
+{
+ btSoftBodyLinkData::setLinkAt( link, linkIndex );
+
+ // Set the link index correctly for initialisation
+ m_linkAddresses[linkIndex] = linkIndex;
+}
+
+bool btSoftBodyLinkDataDX11::onAccelerator()
+{
+ return m_onGPU;
+}
+
+bool btSoftBodyLinkDataDX11::moveToAccelerator()
+{
+ bool success = true;
+ success = success && m_dx11Links.moveToGPU();
+ success = success && m_dx11LinkStrength.moveToGPU();
+ success = success && m_dx11LinksMassLSC.moveToGPU();
+ success = success && m_dx11LinksRestLengthSquared.moveToGPU();
+ success = success && m_dx11LinksCLength.moveToGPU();
+ success = success && m_dx11LinksLengthRatio.moveToGPU();
+ success = success && m_dx11LinksRestLength.moveToGPU();
+ success = success && m_dx11LinksMaterialLinearStiffnessCoefficient.moveToGPU();
+
+ if( success )
+ m_onGPU = true;
+
+ return success;
+}
+
+bool btSoftBodyLinkDataDX11::moveFromAccelerator()
+{
+ bool success = true;
+ success = success && m_dx11Links.moveFromGPU();
+ success = success && m_dx11LinkStrength.moveFromGPU();
+ success = success && m_dx11LinksMassLSC.moveFromGPU();
+ success = success && m_dx11LinksRestLengthSquared.moveFromGPU();
+ success = success && m_dx11LinksCLength.moveFromGPU();
+ success = success && m_dx11LinksLengthRatio.moveFromGPU();
+ success = success && m_dx11LinksRestLength.moveFromGPU();
+ success = success && m_dx11LinksMaterialLinearStiffnessCoefficient.moveFromGPU();
+
+ if( success )
+ m_onGPU = false;
+
+ return success;
+}
+
+void btSoftBodyLinkDataDX11::generateBatches()
+{
+ int numLinks = getNumLinks();
+
+ // Do the graph colouring here temporarily
+ btAlignedObjectArray< int > batchValues;
+ batchValues.resize( numLinks, 0 );
+
+ // Find the maximum vertex value internally for now
+ int maxVertex = 0;
+ for( int linkIndex = 0; linkIndex < numLinks; ++linkIndex )
+ {
+ int vertex0 = getVertexPair(linkIndex).vertex0;
+ int vertex1 = getVertexPair(linkIndex).vertex1;
+ if( vertex0 > maxVertex )
+ maxVertex = vertex0;
+ if( vertex1 > maxVertex )
+ maxVertex = vertex1;
+ }
+ int numVertices = maxVertex + 1;
+
+ // Set of lists, one for each node, specifying which colours are connected
+ // to that node.
+ // No two edges into a node can share a colour.
+ btAlignedObjectArray< btAlignedObjectArray< int > > vertexConnectedColourLists;
+ vertexConnectedColourLists.resize(numVertices);
+
+
+
+ // Simple algorithm that chooses the lowest batch number
+ // that none of the links attached to either of the connected
+ // nodes is in
+ for( int linkIndex = 0; linkIndex < numLinks; ++linkIndex )
+ {
+ int linkLocation = m_linkAddresses[linkIndex];
+
+ int vertex0 = getVertexPair(linkLocation).vertex0;
+ int vertex1 = getVertexPair(linkLocation).vertex1;
+
+ // Get the two node colour lists
+ btAlignedObjectArray< int > &colourListVertex0( vertexConnectedColourLists[vertex0] );
+ btAlignedObjectArray< int > &colourListVertex1( vertexConnectedColourLists[vertex1] );
+
+ // Choose the minimum colour that is in neither list
+ int colour = 0;
+ while( colourListVertex0.findLinearSearch(colour) != colourListVertex0.size() || colourListVertex1.findLinearSearch(colour) != colourListVertex1.size() )
+ ++colour;
+ // i should now be the minimum colour in neither list
+ // Add to the two lists so that future edges don't share
+ // And store the colour against this edge
+
+ colourListVertex0.push_back(colour);
+ colourListVertex1.push_back(colour);
+ batchValues[linkIndex] = colour;
+ }
+
+ // Check the colour counts
+ btAlignedObjectArray< int > batchCounts;
+ for( int i = 0; i < numLinks; ++i )
+ {
+ int batch = batchValues[i];
+ if( batch >= batchCounts.size() )
+ batchCounts.push_back(1);
+ else
+ ++(batchCounts[batch]);
+ }
+
+ m_batchStartLengths.resize(batchCounts.size());
+ if( m_batchStartLengths.size() > 0 )
+ {
+ m_batchStartLengths[0] = BatchPair( 0, 0 );
+
+ int sum = 0;
+ for( int batchIndex = 0; batchIndex < batchCounts.size(); ++batchIndex )
+ {
+ m_batchStartLengths[batchIndex].start = sum;
+ m_batchStartLengths[batchIndex].length = batchCounts[batchIndex];
+ sum += batchCounts[batchIndex];
+ }
+ }
+
+ /////////////////////////////
+ // Sort data based on batches
+
+ // Create source arrays by copying originals
+ btAlignedObjectArray<btSoftBodyLinkData::LinkNodePair> m_links_Backup(m_links);
+ btAlignedObjectArray<float> m_linkStrength_Backup(m_linkStrength);
+ btAlignedObjectArray<float> m_linksMassLSC_Backup(m_linksMassLSC);
+ btAlignedObjectArray<float> m_linksRestLengthSquared_Backup(m_linksRestLengthSquared);
+ btAlignedObjectArray<Vectormath::Aos::Vector3> m_linksCLength_Backup(m_linksCLength);
+ btAlignedObjectArray<float> m_linksLengthRatio_Backup(m_linksLengthRatio);
+ btAlignedObjectArray<float> m_linksRestLength_Backup(m_linksRestLength);
+ btAlignedObjectArray<float> m_linksMaterialLinearStiffnessCoefficient_Backup(m_linksMaterialLinearStiffnessCoefficient);
+
+
+ for( int batch = 0; batch < batchCounts.size(); ++batch )
+ batchCounts[batch] = 0;
+
+ // Do sort as single pass into destination arrays
+ for( int linkIndex = 0; linkIndex < numLinks; ++linkIndex )
+ {
+ // To maintain locations run off the original link locations rather than the current position.
+ // It's not cache efficient, but as we run this rarely that should not matter.
+ // It's faster than searching the link location array for the current location and then updating it.
+ // The other alternative would be to unsort before resorting, but this is equivalent to doing that.
+ int linkLocation = m_linkAddresses[linkIndex];
+
+ // Obtain batch and calculate target location for the
+ // next element in that batch, incrementing the batch counter
+ // afterwards
+ int batch = batchValues[linkIndex];
+ int newLocation = m_batchStartLengths[batch].start + batchCounts[batch];
+
+ batchCounts[batch] = batchCounts[batch] + 1;
+ m_links[newLocation] = m_links_Backup[linkLocation];
+#if 1
+ m_linkStrength[newLocation] = m_linkStrength_Backup[linkLocation];
+ m_linksMassLSC[newLocation] = m_linksMassLSC_Backup[linkLocation];
+ m_linksRestLengthSquared[newLocation] = m_linksRestLengthSquared_Backup[linkLocation];
+ m_linksLengthRatio[newLocation] = m_linksLengthRatio_Backup[linkLocation];
+ m_linksRestLength[newLocation] = m_linksRestLength_Backup[linkLocation];
+ m_linksMaterialLinearStiffnessCoefficient[newLocation] = m_linksMaterialLinearStiffnessCoefficient_Backup[linkLocation];
+#endif
+ // Update the locations array to account for the moved entry
+ m_linkAddresses[linkIndex] = newLocation;
+ }
+} // void btSoftBodyLinkDataDX11::generateBatches()
+
+
+
+btSoftBodyVertexDataDX11::btSoftBodyVertexDataDX11( ID3D11Device *d3dDevice, ID3D11DeviceContext *d3dDeviceContext ) :
+ m_dx11ClothIdentifier( d3dDevice, d3dDeviceContext, &m_clothIdentifier, false ),
+ m_dx11VertexPosition( d3dDevice, d3dDeviceContext, &m_vertexPosition, false ),
+ m_dx11VertexPreviousPosition( d3dDevice, d3dDeviceContext, &m_vertexPreviousPosition, false ),
+ m_dx11VertexVelocity( d3dDevice, d3dDeviceContext, &m_vertexVelocity, false ),
+ m_dx11VertexForceAccumulator( d3dDevice, d3dDeviceContext, &m_vertexForceAccumulator, false ),
+ m_dx11VertexNormal( d3dDevice, d3dDeviceContext, &m_vertexNormal, false ),
+ m_dx11VertexInverseMass( d3dDevice, d3dDeviceContext, &m_vertexInverseMass, false ),
+ m_dx11VertexArea( d3dDevice, d3dDeviceContext, &m_vertexArea, false ),
+ m_dx11VertexTriangleCount( d3dDevice, d3dDeviceContext, &m_vertexTriangleCount, false )
+{
+ m_d3dDevice = d3dDevice;
+ m_d3dDeviceContext = d3dDeviceContext;
+}
+
+btSoftBodyVertexDataDX11::~btSoftBodyVertexDataDX11()
+{
+
+}
+
+bool btSoftBodyVertexDataDX11::onAccelerator()
+{
+ return m_onGPU;
+}
+
+bool btSoftBodyVertexDataDX11::moveToAccelerator()
+{
+ bool success = true;
+ success = success && m_dx11ClothIdentifier.moveToGPU();
+ success = success && m_dx11VertexPosition.moveToGPU();
+ success = success && m_dx11VertexPreviousPosition.moveToGPU();
+ success = success && m_dx11VertexVelocity.moveToGPU();
+ success = success && m_dx11VertexForceAccumulator.moveToGPU();
+ success = success && m_dx11VertexNormal.moveToGPU();
+ success = success && m_dx11VertexInverseMass.moveToGPU();
+ success = success && m_dx11VertexArea.moveToGPU();
+ success = success && m_dx11VertexTriangleCount.moveToGPU();
+
+ if( success )
+ m_onGPU = true;
+
+ return success;
+}
+
+bool btSoftBodyVertexDataDX11::moveFromAccelerator(bool bCopy, bool bCopyMinimum)
+{
+ bool success = true;
+
+ if (!bCopy)
+ {
+ success = success && m_dx11ClothIdentifier.moveFromGPU();
+ success = success && m_dx11VertexPosition.moveFromGPU();
+ success = success && m_dx11VertexPreviousPosition.moveFromGPU();
+ success = success && m_dx11VertexVelocity.moveFromGPU();
+ success = success && m_dx11VertexForceAccumulator.moveFromGPU();
+ success = success && m_dx11VertexNormal.moveFromGPU();
+ success = success && m_dx11VertexInverseMass.moveFromGPU();
+ success = success && m_dx11VertexArea.moveFromGPU();
+ success = success && m_dx11VertexTriangleCount.moveFromGPU();
+ }
+ else
+ {
+ if (bCopyMinimum)
+ {
+ success = success && m_dx11VertexPosition.copyFromGPU();
+ success = success && m_dx11VertexNormal.copyFromGPU();
+ }
+ else
+ {
+ success = success && m_dx11ClothIdentifier.copyFromGPU();
+ success = success && m_dx11VertexPosition.copyFromGPU();
+ success = success && m_dx11VertexPreviousPosition.copyFromGPU();
+ success = success && m_dx11VertexVelocity.copyFromGPU();
+ success = success && m_dx11VertexForceAccumulator.copyFromGPU();
+ success = success && m_dx11VertexNormal.copyFromGPU();
+ success = success && m_dx11VertexInverseMass.copyFromGPU();
+ success = success && m_dx11VertexArea.copyFromGPU();
+ success = success && m_dx11VertexTriangleCount.copyFromGPU();
+ }
+ }
+
+ if( success )
+ m_onGPU = true;
+
+ return success;
+}
+
+
+btSoftBodyTriangleDataDX11::btSoftBodyTriangleDataDX11( ID3D11Device *d3dDevice, ID3D11DeviceContext *d3dDeviceContext ) :
+ m_dx11VertexIndices( d3dDevice, d3dDeviceContext, &m_vertexIndices, false ),
+ m_dx11Area( d3dDevice, d3dDeviceContext, &m_area, false ),
+ m_dx11Normal( d3dDevice, d3dDeviceContext, &m_normal, false )
+{
+ m_d3dDevice = d3dDevice;
+ m_d3dDeviceContext = d3dDeviceContext;
+}
+
+btSoftBodyTriangleDataDX11::~btSoftBodyTriangleDataDX11()
+{
+
+}
+
+
+/** Allocate enough space in all link-related arrays to fit numLinks links */
+void btSoftBodyTriangleDataDX11::createTriangles( int numTriangles )
+{
+ int previousSize = getNumTriangles();
+ int newSize = previousSize + numTriangles;
+
+ btSoftBodyTriangleData::createTriangles( numTriangles );
+
+ // Resize the link addresses array as well
+ m_triangleAddresses.resize( newSize );
+}
+
+/** Insert the link described into the correct data structures assuming space has already been allocated by a call to createLinks */
+void btSoftBodyTriangleDataDX11::setTriangleAt( const btSoftBodyTriangleData::TriangleDescription &triangle, int triangleIndex )
+{
+ btSoftBodyTriangleData::setTriangleAt( triangle, triangleIndex );
+
+ m_triangleAddresses[triangleIndex] = triangleIndex;
+}
+
+bool btSoftBodyTriangleDataDX11::onAccelerator()
+{
+ return m_onGPU;
+}
+
+bool btSoftBodyTriangleDataDX11::moveToAccelerator()
+{
+ bool success = true;
+ success = success && m_dx11VertexIndices.moveToGPU();
+ success = success && m_dx11Area.moveToGPU();
+ success = success && m_dx11Normal.moveToGPU();
+
+ if( success )
+ m_onGPU = true;
+
+ return success;
+}
+
+bool btSoftBodyTriangleDataDX11::moveFromAccelerator()
+{
+ bool success = true;
+ success = success && m_dx11VertexIndices.moveFromGPU();
+ success = success && m_dx11Area.moveFromGPU();
+ success = success && m_dx11Normal.moveFromGPU();
+
+ if( success )
+ m_onGPU = true;
+
+ return success;
+}
+
+/**
+ * Generate (and later update) the batching for the entire triangle set.
+ * This redoes a lot of work because it batches the entire set when each cloth is inserted.
+ * In theory we could delay it until just before we need the cloth.
+ * It's a one-off overhead, though, so that is a later optimisation.
+ */
+void btSoftBodyTriangleDataDX11::generateBatches()
+{
+ int numTriangles = getNumTriangles();
+ if( numTriangles == 0 )
+ return;
+
+ // Do the graph colouring here temporarily
+ btAlignedObjectArray< int > batchValues;
+ batchValues.resize( numTriangles );
+
+ // Find the maximum vertex value internally for now
+ int maxVertex = 0;
+ for( int triangleIndex = 0; triangleIndex < numTriangles; ++triangleIndex )
+ {
+ int vertex0 = getVertexSet(triangleIndex).vertex0;
+ int vertex1 = getVertexSet(triangleIndex).vertex1;
+ int vertex2 = getVertexSet(triangleIndex).vertex2;
+
+ if( vertex0 > maxVertex )
+ maxVertex = vertex0;
+ if( vertex1 > maxVertex )
+ maxVertex = vertex1;
+ if( vertex2 > maxVertex )
+ maxVertex = vertex2;
+ }
+ int numVertices = maxVertex + 1;
+
+ // Set of lists, one for each node, specifying which colours are connected
+ // to that node.
+ // No two edges into a node can share a colour.
+ btAlignedObjectArray< btAlignedObjectArray< int > > vertexConnectedColourLists;
+ vertexConnectedColourLists.resize(numVertices);
+
+
+ //std::cout << "\n";
+ // Simple algorithm that chooses the lowest batch number
+ // that none of the faces attached to either of the connected
+ // nodes is in
+ for( int triangleIndex = 0; triangleIndex < numTriangles; ++triangleIndex )
+ {
+ // To maintain locations run off the original link locations rather than the current position.
+ // It's not cache efficient, but as we run this rarely that should not matter.
+ // It's faster than searching the link location array for the current location and then updating it.
+ // The other alternative would be to unsort before resorting, but this is equivalent to doing that.
+ int triangleLocation = m_triangleAddresses[triangleIndex];
+
+ int vertex0 = getVertexSet(triangleLocation).vertex0;
+ int vertex1 = getVertexSet(triangleLocation).vertex1;
+ int vertex2 = getVertexSet(triangleLocation).vertex2;
+
+ // Get the three node colour lists
+ btAlignedObjectArray< int > &colourListVertex0( vertexConnectedColourLists[vertex0] );
+ btAlignedObjectArray< int > &colourListVertex1( vertexConnectedColourLists[vertex1] );
+ btAlignedObjectArray< int > &colourListVertex2( vertexConnectedColourLists[vertex2] );
+
+ // Choose the minimum colour that is in none of the lists
+ int colour = 0;
+ while(
+ colourListVertex0.findLinearSearch(colour) != colourListVertex0.size() ||
+ colourListVertex1.findLinearSearch(colour) != colourListVertex1.size() ||
+ colourListVertex2.findLinearSearch(colour) != colourListVertex2.size() )
+ {
+ ++colour;
+ }
+ // i should now be the minimum colour in neither list
+ // Add to the three lists so that future edges don't share
+ // And store the colour against this face
+ colourListVertex0.push_back(colour);
+ colourListVertex1.push_back(colour);
+ colourListVertex2.push_back(colour);
+
+ batchValues[triangleIndex] = colour;
+ }
+
+
+ // Check the colour counts
+ btAlignedObjectArray< int > batchCounts;
+ for( int i = 0; i < numTriangles; ++i )
+ {
+ int batch = batchValues[i];
+ if( batch >= batchCounts.size() )
+ batchCounts.push_back(1);
+ else
+ ++(batchCounts[batch]);
+ }
+
+
+ m_batchStartLengths.resize(batchCounts.size());
+ m_batchStartLengths[0] = BatchPair( 0, 0 );
+
+
+ int sum = 0;
+ for( int batchIndex = 0; batchIndex < batchCounts.size(); ++batchIndex )
+ {
+ m_batchStartLengths[batchIndex].start = sum;
+ m_batchStartLengths[batchIndex].length = batchCounts[batchIndex];
+ sum += batchCounts[batchIndex];
+ }
+
+ /////////////////////////////
+ // Sort data based on batches
+
+ // Create source arrays by copying originals
+ btAlignedObjectArray<btSoftBodyTriangleData::TriangleNodeSet> m_vertexIndices_Backup(m_vertexIndices);
+ btAlignedObjectArray<float> m_area_Backup(m_area);
+ btAlignedObjectArray<Vectormath::Aos::Vector3> m_normal_Backup(m_normal);
+
+
+ for( int batch = 0; batch < batchCounts.size(); ++batch )
+ batchCounts[batch] = 0;
+
+ // Do sort as single pass into destination arrays
+ for( int triangleIndex = 0; triangleIndex < numTriangles; ++triangleIndex )
+ {
+ // To maintain locations run off the original link locations rather than the current position.
+ // It's not cache efficient, but as we run this rarely that should not matter.
+ // It's faster than searching the link location array for the current location and then updating it.
+ // The other alternative would be to unsort before resorting, but this is equivalent to doing that.
+ int triangleLocation = m_triangleAddresses[triangleIndex];
+
+ // Obtain batch and calculate target location for the
+ // next element in that batch, incrementing the batch counter
+ // afterwards
+ int batch = batchValues[triangleIndex];
+ int newLocation = m_batchStartLengths[batch].start + batchCounts[batch];
+
+ batchCounts[batch] = batchCounts[batch] + 1;
+ m_vertexIndices[newLocation] = m_vertexIndices_Backup[triangleLocation];
+ m_area[newLocation] = m_area_Backup[triangleLocation];
+ m_normal[newLocation] = m_normal_Backup[triangleLocation];
+
+ // Update the locations array to account for the moved entry
+ m_triangleAddresses[triangleIndex] = newLocation;
+ }
+} // btSoftBodyTriangleDataDX11::generateBatches
+
+
+
+
+
+
+
+
+
+
+
+
+btDX11SoftBodySolver::btDX11SoftBodySolver(ID3D11Device * dx11Device, ID3D11DeviceContext* dx11Context, DXFunctions::CompileFromMemoryFunc dx11CompileFromMemory) :
+ m_dx11Device( dx11Device ),
+ m_dx11Context( dx11Context ),
+ dxFunctions( m_dx11Device, m_dx11Context, dx11CompileFromMemory ),
+ m_linkData(m_dx11Device, m_dx11Context),
+ m_vertexData(m_dx11Device, m_dx11Context),
+ m_triangleData(m_dx11Device, m_dx11Context),
+ m_dx11PerClothAcceleration( m_dx11Device, m_dx11Context, &m_perClothAcceleration, true ),
+ m_dx11PerClothWindVelocity( m_dx11Device, m_dx11Context, &m_perClothWindVelocity, true ),
+ m_dx11PerClothDampingFactor( m_dx11Device, m_dx11Context, &m_perClothDampingFactor, true ),
+ m_dx11PerClothVelocityCorrectionCoefficient( m_dx11Device, m_dx11Context, &m_perClothVelocityCorrectionCoefficient, true ),
+ m_dx11PerClothLiftFactor( m_dx11Device, m_dx11Context, &m_perClothLiftFactor, true ),
+ m_dx11PerClothDragFactor( m_dx11Device, m_dx11Context, &m_perClothDragFactor, true ),
+ m_dx11PerClothMediumDensity( m_dx11Device, m_dx11Context, &m_perClothMediumDensity, true ),
+ m_dx11PerClothCollisionObjects( m_dx11Device, m_dx11Context, &m_perClothCollisionObjects, true ),
+ m_dx11CollisionObjectDetails( m_dx11Device, m_dx11Context, &m_collisionObjectDetails, true ),
+ m_dx11PerClothMinBounds( m_dx11Device, m_dx11Context, &m_perClothMinBounds, false ),
+ m_dx11PerClothMaxBounds( m_dx11Device, m_dx11Context, &m_perClothMaxBounds, false ),
+ m_dx11PerClothFriction( m_dx11Device, m_dx11Context, &m_perClothFriction, false ),
+ m_enableUpdateBounds(false)
+{
+ // Initial we will clearly need to update solver constants
+ // For now this is global for the cloths linked with this solver - we should probably make this body specific
+ // for performance in future once we understand more clearly when constants need to be updated
+ m_updateSolverConstants = true;
+
+ m_shadersInitialized = false;
+}
+
+btDX11SoftBodySolver::~btDX11SoftBodySolver()
+{
+ releaseKernels();
+}
+
+void btDX11SoftBodySolver::releaseKernels()
+{
+
+ SAFE_RELEASE( prepareLinksKernel.kernel );
+ SAFE_RELEASE( prepareLinksKernel.constBuffer );
+ SAFE_RELEASE( integrateKernel.kernel );
+ SAFE_RELEASE( integrateKernel.constBuffer );
+ SAFE_RELEASE( integrateKernel.kernel );
+ SAFE_RELEASE( solvePositionsFromLinksKernel.constBuffer );
+ SAFE_RELEASE( solvePositionsFromLinksKernel.kernel );
+ SAFE_RELEASE( updatePositionsFromVelocitiesKernel.constBuffer );
+ SAFE_RELEASE( updatePositionsFromVelocitiesKernel.kernel );
+ SAFE_RELEASE( updateVelocitiesFromPositionsWithoutVelocitiesKernel.constBuffer );
+ SAFE_RELEASE( updateVelocitiesFromPositionsWithoutVelocitiesKernel.kernel );
+ SAFE_RELEASE( updateVelocitiesFromPositionsWithVelocitiesKernel.constBuffer );
+ SAFE_RELEASE( updateVelocitiesFromPositionsWithVelocitiesKernel.kernel );
+ SAFE_RELEASE( resetNormalsAndAreasKernel.constBuffer );
+ SAFE_RELEASE( resetNormalsAndAreasKernel.kernel );
+ SAFE_RELEASE( normalizeNormalsAndAreasKernel.constBuffer );
+ SAFE_RELEASE( normalizeNormalsAndAreasKernel.kernel );
+ SAFE_RELEASE( updateSoftBodiesKernel.constBuffer );
+ SAFE_RELEASE( updateSoftBodiesKernel.kernel );
+ SAFE_RELEASE( solveCollisionsAndUpdateVelocitiesKernel.kernel );
+ SAFE_RELEASE( solveCollisionsAndUpdateVelocitiesKernel.constBuffer );
+ SAFE_RELEASE( computeBoundsKernel.kernel );
+ SAFE_RELEASE( computeBoundsKernel.constBuffer );
+ SAFE_RELEASE( vSolveLinksKernel.kernel );
+ SAFE_RELEASE( vSolveLinksKernel.constBuffer );
+
+ SAFE_RELEASE( addVelocityKernel.constBuffer );
+ SAFE_RELEASE( addVelocityKernel.kernel );
+ SAFE_RELEASE( applyForcesKernel.constBuffer );
+ SAFE_RELEASE( applyForcesKernel.kernel );
+
+ m_shadersInitialized = false;
+}
+
+
+void btDX11SoftBodySolver::copyBackToSoftBodies(bool bMove)
+{
+ // Move the vertex data back to the host first
+ m_vertexData.moveFromAccelerator(!bMove);
+
+ // Loop over soft bodies, copying all the vertex positions back for each body in turn
+ for( int softBodyIndex = 0; softBodyIndex < m_softBodySet.size(); ++softBodyIndex )
+ {
+ btAcceleratedSoftBodyInterface *softBodyInterface = m_softBodySet[ softBodyIndex ];
+ btSoftBody *softBody = softBodyInterface->getSoftBody();
+
+ int firstVertex = softBodyInterface->getFirstVertex();
+ int numVertices = softBodyInterface->getNumVertices();
+
+ // Copy vertices from solver back into the softbody
+ for( int vertex = 0; vertex < numVertices; ++vertex )
+ {
+ using Vectormath::Aos::Point3;
+ Point3 vertexPosition( getVertexData().getVertexPositions()[firstVertex + vertex] );
+
+ softBody->m_nodes[vertex].m_x.setX( vertexPosition.getX() );
+ softBody->m_nodes[vertex].m_x.setY( vertexPosition.getY() );
+ softBody->m_nodes[vertex].m_x.setZ( vertexPosition.getZ() );
+
+ softBody->m_nodes[vertex].m_n.setX( vertexPosition.getX() );
+ softBody->m_nodes[vertex].m_n.setY( vertexPosition.getY() );
+ softBody->m_nodes[vertex].m_n.setZ( vertexPosition.getZ() );
+ }
+ }
+} // btDX11SoftBodySolver::copyBackToSoftBodies
+
+
+void btDX11SoftBodySolver::optimize( btAlignedObjectArray< btSoftBody * > &softBodies, bool forceUpdate )
+{
+ if( forceUpdate || m_softBodySet.size() != softBodies.size() )
+ {
+ // Have a change in the soft body set so update, reloading all the data
+ getVertexData().clear();
+ getTriangleData().clear();
+ getLinkData().clear();
+ m_softBodySet.resize(0);
+
+
+ for( int softBodyIndex = 0; softBodyIndex < softBodies.size(); ++softBodyIndex )
+ {
+ btSoftBody *softBody = softBodies[ softBodyIndex ];
+ using Vectormath::Aos::Matrix3;
+ using Vectormath::Aos::Point3;
+
+ // Create SoftBody that will store the information within the solver
+ btAcceleratedSoftBodyInterface *newSoftBody = new btAcceleratedSoftBodyInterface( softBody );
+ m_softBodySet.push_back( newSoftBody );
+
+ m_perClothAcceleration.push_back( toVector3(softBody->getWorldInfo()->m_gravity) );
+ m_perClothDampingFactor.push_back(softBody->m_cfg.kDP);
+ m_perClothVelocityCorrectionCoefficient.push_back( softBody->m_cfg.kVCF );
+ m_perClothLiftFactor.push_back( softBody->m_cfg.kLF );
+ m_perClothDragFactor.push_back( softBody->m_cfg.kDG );
+ m_perClothMediumDensity.push_back(softBody->getWorldInfo()->air_density);
+ // Simple init values. Actually we'll put 0 and -1 into them at the appropriate time
+ m_perClothMinBounds.push_back( UIntVector3( 0, 0, 0 ) );
+ m_perClothMaxBounds.push_back( UIntVector3( UINT_MAX, UINT_MAX, UINT_MAX ) );
+ m_perClothFriction.push_back( softBody->getFriction() );
+ m_perClothCollisionObjects.push_back( CollisionObjectIndices(-1, -1) );
+
+ // Add space for new vertices and triangles in the default solver for now
+ // TODO: Include space here for tearing too later
+ int firstVertex = getVertexData().getNumVertices();
+ int numVertices = softBody->m_nodes.size();
+ int maxVertices = numVertices;
+ // Allocate space for new vertices in all the vertex arrays
+ getVertexData().createVertices( maxVertices, softBodyIndex );
+
+ int firstTriangle = getTriangleData().getNumTriangles();
+ int numTriangles = softBody->m_faces.size();
+ int maxTriangles = numTriangles;
+ getTriangleData().createTriangles( maxTriangles );
+
+ // Copy vertices from softbody into the solver
+ for( int vertex = 0; vertex < numVertices; ++vertex )
+ {
+ Point3 multPoint(softBody->m_nodes[vertex].m_x.getX(), softBody->m_nodes[vertex].m_x.getY(), softBody->m_nodes[vertex].m_x.getZ());
+ btSoftBodyVertexData::VertexDescription desc;
+
+ // TODO: Position in the softbody might be pre-transformed
+ // or we may need to adapt for the pose.
+ //desc.setPosition( cloth.getMeshTransform()*multPoint );
+ desc.setPosition( multPoint );
+
+ float vertexInverseMass = softBody->m_nodes[vertex].m_im;
+ desc.setInverseMass(vertexInverseMass);
+ getVertexData().setVertexAt( desc, firstVertex + vertex );
+ }
+
+ // Copy triangles similarly
+ // We're assuming here that vertex indices are based on the firstVertex rather than the entire scene
+ for( int triangle = 0; triangle < numTriangles; ++triangle )
+ {
+ // Note that large array storage is relative to the array not to the cloth
+ // So we need to add firstVertex to each value
+ int vertexIndex0 = (softBody->m_faces[triangle].m_n[0] - &(softBody->m_nodes[0]));
+ int vertexIndex1 = (softBody->m_faces[triangle].m_n[1] - &(softBody->m_nodes[0]));
+ int vertexIndex2 = (softBody->m_faces[triangle].m_n[2] - &(softBody->m_nodes[0]));
+ btSoftBodyTriangleData::TriangleDescription newTriangle(vertexIndex0 + firstVertex, vertexIndex1 + firstVertex, vertexIndex2 + firstVertex);
+ getTriangleData().setTriangleAt( newTriangle, firstTriangle + triangle );
+
+ // Increase vertex triangle counts for this triangle
+ getVertexData().getTriangleCount(newTriangle.getVertexSet().vertex0)++;
+ getVertexData().getTriangleCount(newTriangle.getVertexSet().vertex1)++;
+ getVertexData().getTriangleCount(newTriangle.getVertexSet().vertex2)++;
+ }
+
+ int firstLink = getLinkData().getNumLinks();
+ int numLinks = softBody->m_links.size();
+ int maxLinks = numLinks;
+
+ // Allocate space for the links
+ getLinkData().createLinks( numLinks );
+
+ // Add the links
+ for( int link = 0; link < numLinks; ++link )
+ {
+ int vertexIndex0 = softBody->m_links[link].m_n[0] - &(softBody->m_nodes[0]);
+ int vertexIndex1 = softBody->m_links[link].m_n[1] - &(softBody->m_nodes[0]);
+
+ btSoftBodyLinkData::LinkDescription newLink(vertexIndex0 + firstVertex, vertexIndex1 + firstVertex, softBody->m_links[link].m_material->m_kLST);
+ newLink.setLinkStrength(1.f);
+ getLinkData().setLinkAt(newLink, firstLink + link);
+ }
+
+ newSoftBody->setFirstVertex( firstVertex );
+ newSoftBody->setFirstTriangle( firstTriangle );
+ newSoftBody->setNumVertices( numVertices );
+ newSoftBody->setMaxVertices( maxVertices );
+ newSoftBody->setNumTriangles( numTriangles );
+ newSoftBody->setMaxTriangles( maxTriangles );
+ newSoftBody->setFirstLink( firstLink );
+ newSoftBody->setNumLinks( numLinks );
+ }
+
+
+
+ updateConstants(0.f);
+
+
+ m_linkData.generateBatches();
+ m_triangleData.generateBatches();
+ }
+}
+
+
+btSoftBodyLinkData &btDX11SoftBodySolver::getLinkData()
+{
+ // TODO: Consider setting link data to "changed" here
+ return m_linkData;
+}
+
+btSoftBodyVertexData &btDX11SoftBodySolver::getVertexData()
+{
+ // TODO: Consider setting vertex data to "changed" here
+ return m_vertexData;
+}
+
+btSoftBodyTriangleData &btDX11SoftBodySolver::getTriangleData()
+{
+ // TODO: Consider setting triangle data to "changed" here
+ return m_triangleData;
+}
+
+bool btDX11SoftBodySolver::checkInitialized()
+{
+ if( !m_shadersInitialized )
+ if( buildShaders() )
+ m_shadersInitialized = true;
+
+ return m_shadersInitialized;
+}
+
+void btDX11SoftBodySolver::resetNormalsAndAreas( int numVertices )
+{
+ // No need to batch link solver, it is entirely parallel
+ // Copy kernel parameters to GPU
+ UpdateSoftBodiesCB constBuffer;
+
+ constBuffer.numNodes = numVertices;
+ constBuffer.epsilon = FLT_EPSILON;
+
+ // Todo: factor this out. Number of nodes is static and sdt might be, too, we can update this just once on setup
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ m_dx11Context->Map( integrateKernel.constBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &MappedResource );
+ memcpy( MappedResource.pData, &constBuffer, sizeof(UpdateSoftBodiesCB) );
+ m_dx11Context->Unmap( integrateKernel.constBuffer, 0 );
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &integrateKernel.constBuffer );
+
+ // Set resources and dispatch
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &(m_vertexData.m_dx11VertexNormal.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &(m_vertexData.m_dx11VertexArea.getUAV()), NULL );
+
+ // Execute the kernel
+ m_dx11Context->CSSetShader( resetNormalsAndAreasKernel.kernel, NULL, 0 );
+
+ int numBlocks = (constBuffer.numNodes + (128-1)) / 128;
+ m_dx11Context->Dispatch(numBlocks, 1, 1 );
+
+ {
+ // Tidy up
+ ID3D11UnorderedAccessView* pUAViewNULL = NULL;
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &pUAViewNULL, NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &pUAViewNULL, NULL );
+
+ ID3D11Buffer *pBufferNull = NULL;
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &pBufferNull );
+ }
+} // btDX11SoftBodySolver::resetNormalsAndAreas
+
+void btDX11SoftBodySolver::normalizeNormalsAndAreas( int numVertices )
+{
+ // No need to batch link solver, it is entirely parallel
+ // Copy kernel parameters to GPU
+ UpdateSoftBodiesCB constBuffer;
+
+ constBuffer.numNodes = numVertices;
+ constBuffer.epsilon = FLT_EPSILON;
+
+ // Todo: factor this out. Number of nodes is static and sdt might be, too, we can update this just once on setup
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ m_dx11Context->Map( integrateKernel.constBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &MappedResource );
+ memcpy( MappedResource.pData, &constBuffer, sizeof(UpdateSoftBodiesCB) );
+ m_dx11Context->Unmap( integrateKernel.constBuffer, 0 );
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &integrateKernel.constBuffer );
+
+ // Set resources and dispatch
+ m_dx11Context->CSSetShaderResources( 2, 1, &(m_vertexData.m_dx11VertexTriangleCount.getSRV()) );
+
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &(m_vertexData.m_dx11VertexNormal.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &(m_vertexData.m_dx11VertexArea.getUAV()), NULL );
+
+ // Execute the kernel
+ m_dx11Context->CSSetShader( normalizeNormalsAndAreasKernel.kernel, NULL, 0 );
+
+ int numBlocks = (constBuffer.numNodes + (128-1)) / 128;
+ m_dx11Context->Dispatch(numBlocks, 1, 1 );
+
+ {
+ // Tidy up
+ ID3D11ShaderResourceView* pViewNULL = NULL;
+ m_dx11Context->CSSetShaderResources( 2, 1, &pViewNULL );
+
+ ID3D11UnorderedAccessView* pUAViewNULL = NULL;
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &pUAViewNULL, NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &pUAViewNULL, NULL );
+
+ ID3D11Buffer *pBufferNull = NULL;
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &pBufferNull );
+ }
+} // btDX11SoftBodySolver::normalizeNormalsAndAreas
+
+void btDX11SoftBodySolver::executeUpdateSoftBodies( int firstTriangle, int numTriangles )
+{
+ // No need to batch link solver, it is entirely parallel
+ // Copy kernel parameters to GPU
+ UpdateSoftBodiesCB constBuffer;
+
+ constBuffer.startFace = firstTriangle;
+ constBuffer.numFaces = numTriangles;
+
+ // Todo: factor this out. Number of nodes is static and sdt might be, too, we can update this just once on setup
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ m_dx11Context->Map( updateSoftBodiesKernel.constBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &MappedResource );
+ memcpy( MappedResource.pData, &constBuffer, sizeof(UpdateSoftBodiesCB) );
+ m_dx11Context->Unmap( updateSoftBodiesKernel.constBuffer, 0 );
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &updateSoftBodiesKernel.constBuffer );
+
+ // Set resources and dispatch
+ m_dx11Context->CSSetShaderResources( 0, 1, &(m_triangleData.m_dx11VertexIndices.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 1, 1, &(m_vertexData.m_dx11VertexPosition.getSRV()) );
+
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &(m_vertexData.m_dx11VertexNormal.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &(m_vertexData.m_dx11VertexArea.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 2, 1, &(m_triangleData.m_dx11Normal.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 3, 1, &(m_triangleData.m_dx11Area.getUAV()), NULL );
+
+ // Execute the kernel
+ m_dx11Context->CSSetShader( updateSoftBodiesKernel.kernel, NULL, 0 );
+
+ int numBlocks = (numTriangles + (128-1)) / 128;
+ m_dx11Context->Dispatch(numBlocks, 1, 1 );
+
+ {
+ // Tidy up
+ ID3D11ShaderResourceView* pViewNULL = NULL;
+ m_dx11Context->CSSetShaderResources( 4, 1, &pViewNULL );
+
+ ID3D11UnorderedAccessView* pUAViewNULL = NULL;
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &pUAViewNULL, NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &pUAViewNULL, NULL );
+
+ ID3D11Buffer *pBufferNull = NULL;
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &pBufferNull );
+ }
+} // btDX11SoftBodySolver::executeUpdateSoftBodies
+
+void btDX11SoftBodySolver::updateSoftBodies()
+{
+ using namespace Vectormath::Aos;
+
+
+ int numVertices = m_vertexData.getNumVertices();
+ int numTriangles = m_triangleData.getNumTriangles();
+
+ // Ensure data is on accelerator
+ m_vertexData.moveToAccelerator();
+ m_triangleData.moveToAccelerator();
+
+ resetNormalsAndAreas( numVertices );
+
+
+ // Go through triangle batches so updates occur correctly
+ for( int batchIndex = 0; batchIndex < m_triangleData.m_batchStartLengths.size(); ++batchIndex )
+ {
+
+ int startTriangle = m_triangleData.m_batchStartLengths[batchIndex].start;
+ int numTriangles = m_triangleData.m_batchStartLengths[batchIndex].length;
+
+ executeUpdateSoftBodies( startTriangle, numTriangles );
+ }
+
+
+ normalizeNormalsAndAreas( numVertices );
+
+
+} // btDX11SoftBodySolver::updateSoftBodies
+
+
+Vectormath::Aos::Vector3 btDX11SoftBodySolver::ProjectOnAxis( const Vectormath::Aos::Vector3 &v, const Vectormath::Aos::Vector3 &a )
+{
+ return a*Vectormath::Aos::dot(v, a);
+}
+
+void btDX11SoftBodySolver::ApplyClampedForce( float solverdt, const Vectormath::Aos::Vector3 &force, const Vectormath::Aos::Vector3 &vertexVelocity, float inverseMass, Vectormath::Aos::Vector3 &vertexForce )
+{
+ float dtInverseMass = solverdt*inverseMass;
+ if( Vectormath::Aos::lengthSqr(force * dtInverseMass) > Vectormath::Aos::lengthSqr(vertexVelocity) )
+ {
+ vertexForce -= ProjectOnAxis( vertexVelocity, normalize( force ) )/dtInverseMass;
+ } else {
+ vertexForce += force;
+ }
+}
+
+void btDX11SoftBodySolver::applyForces( float solverdt )
+{
+ using namespace Vectormath::Aos;
+
+
+ // Ensure data is on accelerator
+ m_vertexData.moveToAccelerator();
+ m_dx11PerClothAcceleration.moveToGPU();
+ m_dx11PerClothLiftFactor.moveToGPU();
+ m_dx11PerClothDragFactor.moveToGPU();
+ m_dx11PerClothMediumDensity.moveToGPU();
+ m_dx11PerClothWindVelocity.moveToGPU();
+
+ // No need to batch link solver, it is entirely parallel
+ // Copy kernel parameters to GPU
+ ApplyForcesCB constBuffer;
+
+ constBuffer.numNodes = m_vertexData.getNumVertices();
+ constBuffer.solverdt = solverdt;
+ constBuffer.epsilon = FLT_EPSILON;
+
+ // Todo: factor this out. Number of nodes is static and sdt might be, too, we can update this just once on setup
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ m_dx11Context->Map( integrateKernel.constBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &MappedResource );
+ memcpy( MappedResource.pData, &constBuffer, sizeof(ApplyForcesCB) );
+ m_dx11Context->Unmap( integrateKernel.constBuffer, 0 );
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &integrateKernel.constBuffer );
+
+ // Set resources and dispatch
+ m_dx11Context->CSSetShaderResources( 0, 1, &(m_vertexData.m_dx11ClothIdentifier.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 1, 1, &(m_vertexData.m_dx11VertexNormal.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 2, 1, &(m_vertexData.m_dx11VertexArea.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 3, 1, &(m_vertexData.m_dx11VertexInverseMass.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 4, 1, &(m_dx11PerClothLiftFactor.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 5, 1, &(m_dx11PerClothDragFactor.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 6, 1, &(m_dx11PerClothWindVelocity.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 7, 1, &(m_dx11PerClothAcceleration.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 8, 1, &(m_dx11PerClothMediumDensity.getSRV()) );
+
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &(m_vertexData.m_dx11VertexForceAccumulator.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &(m_vertexData.m_dx11VertexVelocity.getUAV()), NULL );
+
+ // Execute the kernel
+ m_dx11Context->CSSetShader( applyForcesKernel.kernel, NULL, 0 );
+
+ int numBlocks = (constBuffer.numNodes + (128-1)) / 128;
+ m_dx11Context->Dispatch(numBlocks, 1, 1 );
+
+ {
+ // Tidy up
+ ID3D11ShaderResourceView* pViewNULL = NULL;
+ m_dx11Context->CSSetShaderResources( 0, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 1, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 2, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 3, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 4, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 5, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 6, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 7, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 8, 1, &pViewNULL );
+
+ ID3D11UnorderedAccessView* pUAViewNULL = NULL;
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &pUAViewNULL, NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &pUAViewNULL, NULL );
+
+ ID3D11Buffer *pBufferNull = NULL;
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &pBufferNull );
+ }
+} // btDX11SoftBodySolver::applyForces
+
+/**
+ * Integrate motion on the solver.
+ */
+void btDX11SoftBodySolver::integrate( float solverdt )
+{
+ // TEMPORARY COPIES
+ m_vertexData.moveToAccelerator();
+
+ // No need to batch link solver, it is entirely parallel
+ // Copy kernel parameters to GPU
+ IntegrateCB constBuffer;
+
+ constBuffer.numNodes = m_vertexData.getNumVertices();
+ constBuffer.solverdt = solverdt;
+
+ // Todo: factor this out. Number of nodes is static and sdt might be, too, we can update this just once on setup
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ m_dx11Context->Map( integrateKernel.constBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &MappedResource );
+ memcpy( MappedResource.pData, &constBuffer, sizeof(IntegrateCB) );
+ m_dx11Context->Unmap( integrateKernel.constBuffer, 0 );
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &integrateKernel.constBuffer );
+
+ // Set resources and dispatch
+ m_dx11Context->CSSetShaderResources( 0, 1, &(m_vertexData.m_dx11VertexInverseMass.getSRV()) );
+
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &(m_vertexData.m_dx11VertexPosition.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &(m_vertexData.m_dx11VertexVelocity.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 2, 1, &(m_vertexData.m_dx11VertexPreviousPosition.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 3, 1, &(m_vertexData.m_dx11VertexForceAccumulator.getUAV()), NULL );
+
+ // Execute the kernel
+ m_dx11Context->CSSetShader( integrateKernel.kernel, NULL, 0 );
+
+ int numBlocks = (constBuffer.numNodes + (128-1)) / 128;
+ m_dx11Context->Dispatch(numBlocks, 1, 1 );
+
+ {
+ // Tidy up
+ ID3D11ShaderResourceView* pViewNULL = NULL;
+ m_dx11Context->CSSetShaderResources( 0, 1, &pViewNULL );
+
+ ID3D11UnorderedAccessView* pUAViewNULL = NULL;
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &pUAViewNULL, NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &pUAViewNULL, NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 2, 1, &pUAViewNULL, NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 3, 1, &pUAViewNULL, NULL );
+
+ ID3D11Buffer *pBufferNull = NULL;
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &pBufferNull );
+ }
+} // btDX11SoftBodySolver::integrate
+
+float btDX11SoftBodySolver::computeTriangleArea(
+ const Vectormath::Aos::Point3 &vertex0,
+ const Vectormath::Aos::Point3 &vertex1,
+ const Vectormath::Aos::Point3 &vertex2 )
+{
+ Vectormath::Aos::Vector3 a = vertex1 - vertex0;
+ Vectormath::Aos::Vector3 b = vertex2 - vertex0;
+ Vectormath::Aos::Vector3 crossProduct = cross(a, b);
+ float area = length( crossProduct );
+ return area;
+} // btDX11SoftBodySolver::computeTriangleArea
+
+
+void btDX11SoftBodySolver::updateBounds()
+{
+ using Vectormath::Aos::Point3;
+ // Interpretation structure for float and int
+
+ struct FPRep {
+ unsigned int mantissa : 23;
+ unsigned int exponent : 8;
+ unsigned int sign : 1;
+ };
+ union FloatAsInt
+ {
+ float floatValue;
+ int intValue;
+ unsigned int uintValue;
+ FPRep fpRep;
+ };
+
+
+ // Update bounds array to min and max int values to allow easy atomics
+ for( int softBodyIndex = 0; softBodyIndex < m_softBodySet.size(); ++softBodyIndex )
+ {
+ m_perClothMinBounds[softBodyIndex] = UIntVector3( UINT_MAX, UINT_MAX, UINT_MAX );
+ m_perClothMaxBounds[softBodyIndex] = UIntVector3( 0, 0, 0 );
+ }
+
+ m_dx11PerClothMinBounds.moveToGPU();
+ m_dx11PerClothMaxBounds.moveToGPU();
+
+
+ computeBounds( );
+
+
+ m_dx11PerClothMinBounds.moveFromGPU();
+ m_dx11PerClothMaxBounds.moveFromGPU();
+
+
+
+ for( int softBodyIndex = 0; softBodyIndex < m_softBodySet.size(); ++softBodyIndex )
+ {
+ UIntVector3 minBoundUInt = m_perClothMinBounds[softBodyIndex];
+ UIntVector3 maxBoundUInt = m_perClothMaxBounds[softBodyIndex];
+
+ // Convert back to float
+ FloatAsInt fai;
+
+ btVector3 minBound;
+ fai.uintValue = minBoundUInt.x;
+ fai.uintValue ^= (((fai.uintValue >> 31) - 1) | 0x80000000);
+ minBound.setX( fai.floatValue );
+ fai.uintValue = minBoundUInt.y;
+ fai.uintValue ^= (((fai.uintValue >> 31) - 1) | 0x80000000);
+ minBound.setY( fai.floatValue );
+ fai.uintValue = minBoundUInt.z;
+ fai.uintValue ^= (((fai.uintValue >> 31) - 1) | 0x80000000);
+ minBound.setZ( fai.floatValue );
+
+ btVector3 maxBound;
+ fai.uintValue = maxBoundUInt.x;
+ fai.uintValue ^= (((fai.uintValue >> 31) - 1) | 0x80000000);
+ maxBound.setX( fai.floatValue );
+ fai.uintValue = maxBoundUInt.y;
+ fai.uintValue ^= (((fai.uintValue >> 31) - 1) | 0x80000000);
+ maxBound.setY( fai.floatValue );
+ fai.uintValue = maxBoundUInt.z;
+ fai.uintValue ^= (((fai.uintValue >> 31) - 1) | 0x80000000);
+ maxBound.setZ( fai.floatValue );
+
+ // And finally assign to the soft body
+ m_softBodySet[softBodyIndex]->updateBounds( minBound, maxBound );
+ }
+}
+
+void btDX11SoftBodySolver::updateConstants( float timeStep )
+{
+ using namespace Vectormath::Aos;
+
+ if( m_updateSolverConstants )
+ {
+ m_updateSolverConstants = false;
+
+ // Will have to redo this if we change the structure (tear, maybe) or various other possible changes
+
+ // Initialise link constants
+ const int numLinks = m_linkData.getNumLinks();
+ for( int linkIndex = 0; linkIndex < numLinks; ++linkIndex )
+ {
+ btSoftBodyLinkData::LinkNodePair &vertices( m_linkData.getVertexPair(linkIndex) );
+ m_linkData.getRestLength(linkIndex) = length((m_vertexData.getPosition( vertices.vertex0 ) - m_vertexData.getPosition( vertices.vertex1 )));
+ float invMass0 = m_vertexData.getInverseMass(vertices.vertex0);
+ float invMass1 = m_vertexData.getInverseMass(vertices.vertex1);
+ float linearStiffness = m_linkData.getLinearStiffnessCoefficient(linkIndex);
+ float massLSC = (invMass0 + invMass1)/linearStiffness;
+ m_linkData.getMassLSC(linkIndex) = massLSC;
+ float restLength = m_linkData.getRestLength(linkIndex);
+ float restLengthSquared = restLength*restLength;
+ m_linkData.getRestLengthSquared(linkIndex) = restLengthSquared;
+ }
+ }
+} // btDX11SoftBodySolver::updateConstants
+
+/**
+ * Sort the collision object details array and generate indexing into it for the per-cloth collision object array.
+ */
+void btDX11SoftBodySolver::prepareCollisionConstraints()
+{
+ // First do a simple sort on the collision objects
+ btAlignedObjectArray<int> numObjectsPerClothPrefixSum;
+ btAlignedObjectArray<int> numObjectsPerCloth;
+ numObjectsPerCloth.resize( m_softBodySet.size(), 0 );
+ numObjectsPerClothPrefixSum.resize( m_softBodySet.size(), 0 );
+
+
+ class QuickSortCompare
+ {
+ public:
+
+ bool operator() ( const CollisionShapeDescription& a, const CollisionShapeDescription& b ) const
+ {
+ return ( a.softBodyIdentifier < b.softBodyIdentifier );
+ }
+ };
+
+ QuickSortCompare comparator;
+ m_collisionObjectDetails.quickSort( comparator );
+
+ // Generating indexing for perClothCollisionObjects
+ // First clear the previous values with the "no collision object for cloth" constant
+ for( int clothIndex = 0; clothIndex < m_perClothCollisionObjects.size(); ++clothIndex )
+ {
+ m_perClothCollisionObjects[clothIndex].firstObject = -1;
+ m_perClothCollisionObjects[clothIndex].endObject = -1;
+ }
+ int currentCloth = 0;
+ int startIndex = 0;
+ for( int collisionObject = 0; collisionObject < m_collisionObjectDetails.size(); ++collisionObject )
+ {
+ int nextCloth = m_collisionObjectDetails[collisionObject].softBodyIdentifier;
+ if( nextCloth != currentCloth )
+ {
+ // Changed cloth in the array
+ // Set the end index and the range is what we need for currentCloth
+ m_perClothCollisionObjects[currentCloth].firstObject = startIndex;
+ m_perClothCollisionObjects[currentCloth].endObject = collisionObject;
+ currentCloth = nextCloth;
+ startIndex = collisionObject;
+ }
+ }
+
+ // And update last cloth
+ m_perClothCollisionObjects[currentCloth].firstObject = startIndex;
+ m_perClothCollisionObjects[currentCloth].endObject = m_collisionObjectDetails.size();
+
+} // btDX11SoftBodySolver::prepareCollisionConstraints
+
+
+void btDX11SoftBodySolver::solveConstraints( float solverdt )
+{
+
+ //std::cerr << "'GPU' solve constraints\n";
+ using Vectormath::Aos::Vector3;
+ using Vectormath::Aos::Point3;
+ using Vectormath::Aos::lengthSqr;
+ using Vectormath::Aos::dot;
+
+ // Prepare links
+ int numLinks = m_linkData.getNumLinks();
+ int numVertices = m_vertexData.getNumVertices();
+
+ float kst = 1.f;
+ float ti = 0.f;
+
+
+ m_dx11PerClothDampingFactor.moveToGPU();
+ m_dx11PerClothVelocityCorrectionCoefficient.moveToGPU();
+
+
+ // Ensure data is on accelerator
+ m_linkData.moveToAccelerator();
+ m_vertexData.moveToAccelerator();
+
+
+ prepareLinks();
+
+ for( int iteration = 0; iteration < m_numberOfVelocityIterations ; ++iteration )
+ {
+ for( int i = 0; i < m_linkData.m_batchStartLengths.size(); ++i )
+ {
+ int startLink = m_linkData.m_batchStartLengths[i].start;
+ int numLinks = m_linkData.m_batchStartLengths[i].length;
+
+ solveLinksForVelocity( startLink, numLinks, kst );
+ }
+ }
+
+
+ prepareCollisionConstraints();
+
+ // Compute new positions from velocity
+ // Also update the previous position so that our position computation is now based on the new position from the velocity solution
+ // rather than based directly on the original positions
+ if( m_numberOfVelocityIterations > 0 )
+ {
+ updateVelocitiesFromPositionsWithVelocities( 1.f/solverdt );
+ } else {
+ updateVelocitiesFromPositionsWithoutVelocities( 1.f/solverdt );
+ }
+
+
+ // Solve drift
+ for( int iteration = 0; iteration < m_numberOfPositionIterations ; ++iteration )
+ {
+ for( int i = 0; i < m_linkData.m_batchStartLengths.size(); ++i )
+ {
+ int startLink = m_linkData.m_batchStartLengths[i].start;
+ int numLinks = m_linkData.m_batchStartLengths[i].length;
+
+ solveLinksForPosition( startLink, numLinks, kst, ti );
+ }
+
+ } // for( int iteration = 0; iteration < m_numberOfPositionIterations ; ++iteration )
+
+ // At this point assume that the force array is blank - we will overwrite it
+ solveCollisionsAndUpdateVelocities( 1.f/solverdt );
+} // btDX11SoftBodySolver::solveConstraints
+
+
+
+
+//////////////////////////////////////
+// Kernel dispatches
+void btDX11SoftBodySolver::prepareLinks()
+{
+ // No need to batch link solver, it is entirely parallel
+ // Copy kernel parameters to GPU
+ PrepareLinksCB constBuffer;
+
+ constBuffer.numLinks = m_linkData.getNumLinks();
+
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ m_dx11Context->Map( prepareLinksKernel.constBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &MappedResource );
+ memcpy( MappedResource.pData, &constBuffer, sizeof(PrepareLinksCB) );
+ m_dx11Context->Unmap( prepareLinksKernel.constBuffer, 0 );
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &prepareLinksKernel.constBuffer );
+
+ // Set resources and dispatch
+ m_dx11Context->CSSetShaderResources( 0, 1, &(m_linkData.m_dx11Links.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 1, 1, &(m_linkData.m_dx11LinksMassLSC.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 2, 1, &(m_vertexData.m_dx11VertexPreviousPosition.getSRV()) );
+
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &(m_linkData.m_dx11LinksLengthRatio.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &(m_linkData.m_dx11LinksCLength.getUAV()), NULL );
+
+ // Execute the kernel
+ m_dx11Context->CSSetShader( prepareLinksKernel.kernel, NULL, 0 );
+
+ int numBlocks = (constBuffer.numLinks + (128-1)) / 128;
+ m_dx11Context->Dispatch(numBlocks , 1, 1 );
+
+ {
+ // Tidy up
+ ID3D11ShaderResourceView* pViewNULL = NULL;
+ m_dx11Context->CSSetShaderResources( 0, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 1, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 2, 1, &pViewNULL );
+
+ ID3D11UnorderedAccessView* pUAViewNULL = NULL;
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &pUAViewNULL, NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &pUAViewNULL, NULL );
+
+ ID3D11Buffer *pBufferNull = NULL;
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &pBufferNull );
+ }
+} // btDX11SoftBodySolver::prepareLinks
+
+
+void btDX11SoftBodySolver::updatePositionsFromVelocities( float solverdt )
+{
+ // No need to batch link solver, it is entirely parallel
+ // Copy kernel parameters to GPU
+ UpdatePositionsFromVelocitiesCB constBuffer;
+
+ constBuffer.numNodes = m_vertexData.getNumVertices();
+ constBuffer.solverSDT = solverdt;
+
+ // Todo: factor this out. Number of nodes is static and sdt might be, too, we can update this just once on setup
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ m_dx11Context->Map( updatePositionsFromVelocitiesKernel.constBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &MappedResource );
+ memcpy( MappedResource.pData, &constBuffer, sizeof(UpdatePositionsFromVelocitiesCB) );
+ m_dx11Context->Unmap( updatePositionsFromVelocitiesKernel.constBuffer, 0 );
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &updatePositionsFromVelocitiesKernel.constBuffer );
+
+ // Set resources and dispatch
+ m_dx11Context->CSSetShaderResources( 0, 1, &(m_vertexData.m_dx11VertexVelocity.getSRV()) );
+
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &(m_vertexData.m_dx11VertexPreviousPosition.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &(m_vertexData.m_dx11VertexPosition.getUAV()), NULL );
+
+ // Execute the kernel
+ m_dx11Context->CSSetShader( updatePositionsFromVelocitiesKernel.kernel, NULL, 0 );
+
+ int numBlocks = (constBuffer.numNodes + (128-1)) / 128;
+ m_dx11Context->Dispatch(numBlocks, 1, 1 );
+
+ {
+ // Tidy up
+ ID3D11ShaderResourceView* pViewNULL = NULL;
+ m_dx11Context->CSSetShaderResources( 0, 1, &pViewNULL );
+
+ ID3D11UnorderedAccessView* pUAViewNULL = NULL;
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &pUAViewNULL, NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &pUAViewNULL, NULL );
+
+ ID3D11Buffer *pBufferNull = NULL;
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &pBufferNull );
+ }
+} // btDX11SoftBodySolver::updatePositionsFromVelocities
+
+void btDX11SoftBodySolver::solveLinksForPosition( int startLink, int numLinks, float kst, float ti )
+{
+ // Copy kernel parameters to GPU
+ SolvePositionsFromLinksKernelCB constBuffer;
+
+ // Set the first link of the batch
+ // and the batch size
+ constBuffer.startLink = startLink;
+ constBuffer.numLinks = numLinks;
+
+ constBuffer.kst = kst;
+ constBuffer.ti = ti;
+
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ m_dx11Context->Map( solvePositionsFromLinksKernel.constBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &MappedResource );
+ memcpy( MappedResource.pData, &constBuffer, sizeof(SolvePositionsFromLinksKernelCB) );
+ m_dx11Context->Unmap( solvePositionsFromLinksKernel.constBuffer, 0 );
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &solvePositionsFromLinksKernel.constBuffer );
+
+ // Set resources and dispatch
+ m_dx11Context->CSSetShaderResources( 0, 1, &(m_linkData.m_dx11Links.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 1, 1, &(m_linkData.m_dx11LinksMassLSC.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 2, 1, &(m_linkData.m_dx11LinksRestLengthSquared.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 3, 1, &(m_vertexData.m_dx11VertexInverseMass.getSRV()) );
+
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &(m_vertexData.m_dx11VertexPosition.getUAV()), NULL );
+
+ // Execute the kernel
+ m_dx11Context->CSSetShader( solvePositionsFromLinksKernel.kernel, NULL, 0 );
+
+ int numBlocks = (constBuffer.numLinks + (128-1)) / 128;
+ m_dx11Context->Dispatch(numBlocks , 1, 1 );
+
+ {
+ // Tidy up
+ ID3D11ShaderResourceView* pViewNULL = NULL;
+ m_dx11Context->CSSetShaderResources( 0, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 1, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 2, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 3, 1, &pViewNULL );
+
+ ID3D11UnorderedAccessView* pUAViewNULL = NULL;
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &pUAViewNULL, NULL );
+
+ ID3D11Buffer *pBufferNull = NULL;
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &pBufferNull );
+ }
+
+} // btDX11SoftBodySolver::solveLinksForPosition
+
+void btDX11SoftBodySolver::solveLinksForVelocity( int startLink, int numLinks, float kst )
+{
+ // Copy kernel parameters to GPU
+ VSolveLinksCB constBuffer;
+
+ // Set the first link of the batch
+ // and the batch size
+
+ constBuffer.startLink = startLink;
+ constBuffer.numLinks = numLinks;
+ constBuffer.kst = kst;
+
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ m_dx11Context->Map( vSolveLinksKernel.constBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &MappedResource );
+ memcpy( MappedResource.pData, &constBuffer, sizeof(VSolveLinksCB) );
+ m_dx11Context->Unmap( vSolveLinksKernel.constBuffer, 0 );
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &vSolveLinksKernel.constBuffer );
+
+ // Set resources and dispatch
+ m_dx11Context->CSSetShaderResources( 0, 1, &(m_linkData.m_dx11Links.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 1, 1, &(m_linkData.m_dx11LinksLengthRatio.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 2, 1, &(m_linkData.m_dx11LinksCLength.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 3, 1, &(m_vertexData.m_dx11VertexInverseMass.getSRV()) );
+
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &(m_vertexData.m_dx11VertexVelocity.getUAV()), NULL );
+
+ // Execute the kernel
+ m_dx11Context->CSSetShader( vSolveLinksKernel.kernel, NULL, 0 );
+
+ int numBlocks = (constBuffer.numLinks + (128-1)) / 128;
+ m_dx11Context->Dispatch(numBlocks , 1, 1 );
+
+ {
+ // Tidy up
+ ID3D11ShaderResourceView* pViewNULL = NULL;
+ m_dx11Context->CSSetShaderResources( 0, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 1, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 2, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 3, 1, &pViewNULL );
+
+ ID3D11UnorderedAccessView* pUAViewNULL = NULL;
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &pUAViewNULL, NULL );
+
+ ID3D11Buffer *pBufferNull = NULL;
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &pBufferNull );
+ }
+} // btDX11SoftBodySolver::solveLinksForVelocity
+
+
+void btDX11SoftBodySolver::updateVelocitiesFromPositionsWithVelocities( float isolverdt )
+{
+ // Copy kernel parameters to GPU
+ UpdateVelocitiesFromPositionsWithVelocitiesCB constBuffer;
+
+ // Set the first link of the batch
+ // and the batch size
+ constBuffer.numNodes = m_vertexData.getNumVertices();
+ constBuffer.isolverdt = isolverdt;
+
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ m_dx11Context->Map( updateVelocitiesFromPositionsWithVelocitiesKernel.constBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &MappedResource );
+ memcpy( MappedResource.pData, &constBuffer, sizeof(UpdateVelocitiesFromPositionsWithVelocitiesCB) );
+ m_dx11Context->Unmap( updateVelocitiesFromPositionsWithVelocitiesKernel.constBuffer, 0 );
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &updateVelocitiesFromPositionsWithVelocitiesKernel.constBuffer );
+
+ // Set resources and dispatch
+ m_dx11Context->CSSetShaderResources( 0, 1, &(m_vertexData.m_dx11VertexPosition.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 1, 1, &(m_vertexData.m_dx11VertexPreviousPosition.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 2, 1, &(m_vertexData.m_dx11ClothIdentifier.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 3, 1, &(m_dx11PerClothVelocityCorrectionCoefficient.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 4, 1, &(m_dx11PerClothDampingFactor.getSRV()) );
+
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &(m_vertexData.m_dx11VertexVelocity.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &(m_vertexData.m_dx11VertexForceAccumulator.getUAV()), NULL );
+
+
+ // Execute the kernel
+ m_dx11Context->CSSetShader( updateVelocitiesFromPositionsWithVelocitiesKernel.kernel, NULL, 0 );
+
+ int numBlocks = (constBuffer.numNodes + (128-1)) / 128;
+ m_dx11Context->Dispatch(numBlocks , 1, 1 );
+
+ {
+ // Tidy up
+ ID3D11ShaderResourceView* pViewNULL = NULL;
+ m_dx11Context->CSSetShaderResources( 0, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 1, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 2, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 3, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 4, 1, &pViewNULL );
+
+ ID3D11UnorderedAccessView* pUAViewNULL = NULL;
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &pUAViewNULL, NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &pUAViewNULL, NULL );
+
+ ID3D11Buffer *pBufferNull = NULL;
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &pBufferNull );
+ }
+
+} // btDX11SoftBodySolver::updateVelocitiesFromPositionsWithVelocities
+
+void btDX11SoftBodySolver::updateVelocitiesFromPositionsWithoutVelocities( float isolverdt )
+{
+ // Copy kernel parameters to GPU
+ UpdateVelocitiesFromPositionsWithoutVelocitiesCB constBuffer;
+
+ // Set the first link of the batch
+ // and the batch size
+ constBuffer.numNodes = m_vertexData.getNumVertices();
+ constBuffer.isolverdt = isolverdt;
+
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ m_dx11Context->Map( updateVelocitiesFromPositionsWithoutVelocitiesKernel.constBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &MappedResource );
+ memcpy( MappedResource.pData, &constBuffer, sizeof(UpdateVelocitiesFromPositionsWithoutVelocitiesCB) );
+ m_dx11Context->Unmap( updateVelocitiesFromPositionsWithoutVelocitiesKernel.constBuffer, 0 );
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &updateVelocitiesFromPositionsWithoutVelocitiesKernel.constBuffer );
+
+ // Set resources and dispatch
+ m_dx11Context->CSSetShaderResources( 0, 1, &(m_vertexData.m_dx11VertexPosition.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 1, 1, &(m_vertexData.m_dx11VertexPreviousPosition.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 2, 1, &(m_vertexData.m_dx11ClothIdentifier.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 3, 1, &(m_dx11PerClothDampingFactor.getSRV()) );
+
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &(m_vertexData.m_dx11VertexVelocity.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &(m_vertexData.m_dx11VertexForceAccumulator.getUAV()), NULL );
+
+
+ // Execute the kernel
+ m_dx11Context->CSSetShader( updateVelocitiesFromPositionsWithoutVelocitiesKernel.kernel, NULL, 0 );
+
+ int numBlocks = (constBuffer.numNodes + (128-1)) / 128;
+ m_dx11Context->Dispatch(numBlocks , 1, 1 );
+
+ {
+ // Tidy up
+ ID3D11ShaderResourceView* pViewNULL = NULL;
+ m_dx11Context->CSSetShaderResources( 0, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 1, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 2, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 3, 1, &pViewNULL );
+
+ ID3D11UnorderedAccessView* pUAViewNULL = NULL;
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &pUAViewNULL, NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &pUAViewNULL, NULL );
+
+ ID3D11Buffer *pBufferNull = NULL;
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &pBufferNull );
+ }
+
+} // btDX11SoftBodySolver::updateVelocitiesFromPositionsWithoutVelocities
+
+
+void btDX11SoftBodySolver::computeBounds( )
+{
+ ComputeBoundsCB constBuffer;
+ m_vertexData.moveToAccelerator();
+
+ // Set the first link of the batch
+ // and the batch size
+ constBuffer.numNodes = m_vertexData.getNumVertices();
+ constBuffer.numSoftBodies = m_softBodySet.size();
+
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ m_dx11Context->Map( computeBoundsKernel.constBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &MappedResource );
+ memcpy( MappedResource.pData, &constBuffer, sizeof(ComputeBoundsCB) );
+ m_dx11Context->Unmap( computeBoundsKernel.constBuffer, 0 );
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &computeBoundsKernel.constBuffer );
+
+ // Set resources and dispatch
+ m_dx11Context->CSSetShaderResources( 0, 1, &(m_vertexData.m_dx11ClothIdentifier.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 1, 1, &(m_vertexData.m_dx11VertexPosition.getSRV()) );
+
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &(m_dx11PerClothMinBounds.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &(m_dx11PerClothMaxBounds.getUAV()), NULL );
+
+ // Execute the kernel
+ m_dx11Context->CSSetShader( computeBoundsKernel.kernel, NULL, 0 );
+
+ int numBlocks = (constBuffer.numNodes + (128-1)) / 128;
+ m_dx11Context->Dispatch(numBlocks , 1, 1 );
+
+ {
+ // Tidy up
+ ID3D11ShaderResourceView* pViewNULL = NULL;
+ m_dx11Context->CSSetShaderResources( 0, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 1, 1, &pViewNULL );
+
+ ID3D11UnorderedAccessView* pUAViewNULL = NULL;
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &pUAViewNULL, NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &pUAViewNULL, NULL );
+
+ ID3D11Buffer *pBufferNull = NULL;
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &pBufferNull );
+ }
+}
+
+void btDX11SoftBodySolver::solveCollisionsAndUpdateVelocities( float isolverdt )
+{
+
+ // Copy kernel parameters to GPU
+ m_vertexData.moveToAccelerator();
+ m_dx11PerClothFriction.moveToGPU();
+ m_dx11PerClothDampingFactor.moveToGPU();
+ m_dx11PerClothCollisionObjects.moveToGPU();
+ m_dx11CollisionObjectDetails.moveToGPU();
+
+ SolveCollisionsAndUpdateVelocitiesCB constBuffer;
+
+ // Set the first link of the batch
+ // and the batch size
+ constBuffer.numNodes = m_vertexData.getNumVertices();
+ constBuffer.isolverdt = isolverdt;
+
+
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ m_dx11Context->Map( solveCollisionsAndUpdateVelocitiesKernel.constBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &MappedResource );
+ memcpy( MappedResource.pData, &constBuffer, sizeof(SolveCollisionsAndUpdateVelocitiesCB) );
+ m_dx11Context->Unmap( solveCollisionsAndUpdateVelocitiesKernel.constBuffer, 0 );
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &solveCollisionsAndUpdateVelocitiesKernel.constBuffer );
+
+ // Set resources and dispatch
+ m_dx11Context->CSSetShaderResources( 0, 1, &(m_vertexData.m_dx11ClothIdentifier.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 1, 1, &(m_vertexData.m_dx11VertexPreviousPosition.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 2, 1, &(m_dx11PerClothFriction.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 3, 1, &(m_dx11PerClothDampingFactor.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 4, 1, &(m_dx11PerClothCollisionObjects.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 5, 1, &(m_dx11CollisionObjectDetails.getSRV()) );
+
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &(m_vertexData.m_dx11VertexForceAccumulator.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &(m_vertexData.m_dx11VertexVelocity.getUAV()), NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 2, 1, &(m_vertexData.m_dx11VertexPosition.getUAV()), NULL );
+
+ // Execute the kernel
+ m_dx11Context->CSSetShader( solveCollisionsAndUpdateVelocitiesKernel.kernel, NULL, 0 );
+
+ int numBlocks = (constBuffer.numNodes + (128-1)) / 128;
+ m_dx11Context->Dispatch(numBlocks , 1, 1 );
+
+ {
+ // Tidy up
+ ID3D11ShaderResourceView* pViewNULL = NULL;
+ m_dx11Context->CSSetShaderResources( 0, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 1, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 2, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 3, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 4, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 5, 1, &pViewNULL );
+
+ ID3D11UnorderedAccessView* pUAViewNULL = NULL;
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &pUAViewNULL, NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 1, 1, &pUAViewNULL, NULL );
+ m_dx11Context->CSSetUnorderedAccessViews( 2, 1, &pUAViewNULL, NULL );
+
+ ID3D11Buffer *pBufferNull = NULL;
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &pBufferNull );
+ }
+
+} // btDX11SoftBodySolver::solveCollisionsAndUpdateVelocities
+
+// End kernel dispatches
+/////////////////////////////////////
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+btDX11SoftBodySolver::btAcceleratedSoftBodyInterface *btDX11SoftBodySolver::findSoftBodyInterface( const btSoftBody* const softBody )
+{
+ for( int softBodyIndex = 0; softBodyIndex < m_softBodySet.size(); ++softBodyIndex )
+ {
+ btAcceleratedSoftBodyInterface *softBodyInterface = m_softBodySet[softBodyIndex];
+ if( softBodyInterface->getSoftBody() == softBody )
+ return softBodyInterface;
+ }
+ return 0;
+}
+
+const btDX11SoftBodySolver::btAcceleratedSoftBodyInterface * const btDX11SoftBodySolver::findSoftBodyInterface( const btSoftBody* const softBody ) const
+{
+ for( int softBodyIndex = 0; softBodyIndex < m_softBodySet.size(); ++softBodyIndex )
+ {
+ btAcceleratedSoftBodyInterface *softBodyInterface = m_softBodySet[softBodyIndex];
+ if( softBodyInterface->getSoftBody() == softBody )
+ return softBodyInterface;
+ }
+ return 0;
+}
+
+int btDX11SoftBodySolver::findSoftBodyIndex( const btSoftBody* const softBody )
+{
+ for( int softBodyIndex = 0; softBodyIndex < m_softBodySet.size(); ++softBodyIndex )
+ {
+ btAcceleratedSoftBodyInterface *softBodyInterface = m_softBodySet[softBodyIndex];
+ if( softBodyInterface->getSoftBody() == softBody )
+ return softBodyIndex;
+ }
+ return 1;
+}
+
+
+void btSoftBodySolverOutputDXtoCPU::copySoftBodyToVertexBuffer( const btSoftBody * const softBody, btVertexBufferDescriptor *vertexBuffer )
+{
+
+
+ btSoftBodySolver *solver = softBody->getSoftBodySolver();
+ btAssert( solver->getSolverType() == btSoftBodySolver::DX_SOLVER || solver->getSolverType() == btSoftBodySolver::DX_SIMD_SOLVER );
+ btDX11SoftBodySolver *dxSolver = static_cast< btDX11SoftBodySolver * >( solver );
+
+ btDX11SoftBodySolver::btAcceleratedSoftBodyInterface * currentCloth = dxSolver->findSoftBodyInterface( softBody );
+ btSoftBodyVertexDataDX11 &vertexData( dxSolver->m_vertexData );
+
+
+ const int firstVertex = currentCloth->getFirstVertex();
+ const int lastVertex = firstVertex + currentCloth->getNumVertices();
+
+ if( vertexBuffer->getBufferType() == btVertexBufferDescriptor::CPU_BUFFER )
+ {
+ // If we're doing a CPU-buffer copy must copy the data back to the host first
+ vertexData.m_dx11VertexPosition.copyFromGPU();
+ vertexData.m_dx11VertexNormal.copyFromGPU();
+
+ const int firstVertex = currentCloth->getFirstVertex();
+ const int lastVertex = firstVertex + currentCloth->getNumVertices();
+ const btCPUVertexBufferDescriptor *cpuVertexBuffer = static_cast< btCPUVertexBufferDescriptor* >(vertexBuffer);
+ float *basePointer = cpuVertexBuffer->getBasePointer();
+
+ if( vertexBuffer->hasVertexPositions() )
+ {
+ const int vertexOffset = cpuVertexBuffer->getVertexOffset();
+ const int vertexStride = cpuVertexBuffer->getVertexStride();
+ float *vertexPointer = basePointer + vertexOffset;
+
+ for( int vertexIndex = firstVertex; vertexIndex < lastVertex; ++vertexIndex )
+ {
+ Vectormath::Aos::Point3 position = vertexData.getPosition(vertexIndex);
+ *(vertexPointer + 0) = position.getX();
+ *(vertexPointer + 1) = position.getY();
+ *(vertexPointer + 2) = position.getZ();
+ vertexPointer += vertexStride;
+ }
+ }
+ if( vertexBuffer->hasNormals() )
+ {
+ const int normalOffset = cpuVertexBuffer->getNormalOffset();
+ const int normalStride = cpuVertexBuffer->getNormalStride();
+ float *normalPointer = basePointer + normalOffset;
+
+ for( int vertexIndex = firstVertex; vertexIndex < lastVertex; ++vertexIndex )
+ {
+ Vectormath::Aos::Vector3 normal = vertexData.getNormal(vertexIndex);
+ *(normalPointer + 0) = normal.getX();
+ *(normalPointer + 1) = normal.getY();
+ *(normalPointer + 2) = normal.getZ();
+ normalPointer += normalStride;
+ }
+ }
+ }
+} // btDX11SoftBodySolver::outputToVertexBuffers
+
+
+
+bool btSoftBodySolverOutputDXtoDX::checkInitialized()
+{
+ if( !m_shadersInitialized )
+ if( buildShaders() )
+ m_shadersInitialized = true;
+
+ return m_shadersInitialized;
+}
+
+void btSoftBodySolverOutputDXtoDX::releaseKernels()
+{
+ SAFE_RELEASE( outputToVertexArrayWithNormalsKernel.constBuffer );
+ SAFE_RELEASE( outputToVertexArrayWithNormalsKernel.kernel );
+ SAFE_RELEASE( outputToVertexArrayWithoutNormalsKernel.constBuffer );
+ SAFE_RELEASE( outputToVertexArrayWithoutNormalsKernel.kernel );
+
+ m_shadersInitialized = false;
+}
+
+
+bool btSoftBodySolverOutputDXtoDX::buildShaders()
+{
+ // Ensure current kernels are released first
+ releaseKernels();
+
+ bool returnVal = true;
+
+ if( m_shadersInitialized )
+ return true;
+
+
+ outputToVertexArrayWithNormalsKernel = dxFunctions.compileComputeShaderFromString( OutputToVertexArrayHLSLString, "OutputToVertexArrayWithNormalsKernel", sizeof(OutputToVertexArrayCB) );
+ if( !outputToVertexArrayWithNormalsKernel.constBuffer)
+ returnVal = false;
+ outputToVertexArrayWithoutNormalsKernel = dxFunctions.compileComputeShaderFromString( OutputToVertexArrayHLSLString, "OutputToVertexArrayWithoutNormalsKernel", sizeof(OutputToVertexArrayCB) );
+ if( !outputToVertexArrayWithoutNormalsKernel.constBuffer )
+ returnVal = false;
+
+
+ if( returnVal )
+ m_shadersInitialized = true;
+
+ return returnVal;
+}
+
+
+void btSoftBodySolverOutputDXtoDX::copySoftBodyToVertexBuffer( const btSoftBody * const softBody, btVertexBufferDescriptor *vertexBuffer )
+{
+
+
+ btSoftBodySolver *solver = softBody->getSoftBodySolver();
+ btAssert( solver->getSolverType() == btSoftBodySolver::DX_SOLVER || solver->getSolverType() == btSoftBodySolver::DX_SIMD_SOLVER );
+ btDX11SoftBodySolver *dxSolver = static_cast< btDX11SoftBodySolver * >( solver );
+ checkInitialized();
+ btDX11SoftBodySolver::btAcceleratedSoftBodyInterface * currentCloth = dxSolver->findSoftBodyInterface( softBody );
+ btSoftBodyVertexDataDX11 &vertexData( dxSolver->m_vertexData );
+
+
+ const int firstVertex = currentCloth->getFirstVertex();
+ const int lastVertex = firstVertex + currentCloth->getNumVertices();
+
+ if( vertexBuffer->getBufferType() == btVertexBufferDescriptor::CPU_BUFFER )
+ {
+ btSoftBodySolverOutputDXtoDX::copySoftBodyToVertexBuffer( softBody, vertexBuffer );
+ } else if( vertexBuffer->getBufferType() == btVertexBufferDescriptor::DX11_BUFFER )
+ {
+ // Do a DX11 copy shader DX to DX copy
+
+ const btDX11VertexBufferDescriptor *dx11VertexBuffer = static_cast< btDX11VertexBufferDescriptor* >(vertexBuffer);
+
+ // No need to batch link solver, it is entirely parallel
+ // Copy kernel parameters to GPU
+ OutputToVertexArrayCB constBuffer;
+ ID3D11ComputeShader* outputToVertexArrayShader = outputToVertexArrayWithoutNormalsKernel.kernel;
+ ID3D11Buffer* outputToVertexArrayConstBuffer = outputToVertexArrayWithoutNormalsKernel.constBuffer;
+
+ constBuffer.startNode = firstVertex;
+ constBuffer.numNodes = currentCloth->getNumVertices();
+ constBuffer.positionOffset = vertexBuffer->getVertexOffset();
+ constBuffer.positionStride = vertexBuffer->getVertexStride();
+ if( vertexBuffer->hasNormals() )
+ {
+ constBuffer.normalOffset = vertexBuffer->getNormalOffset();
+ constBuffer.normalStride = vertexBuffer->getNormalStride();
+ outputToVertexArrayShader = outputToVertexArrayWithNormalsKernel.kernel;
+ outputToVertexArrayConstBuffer = outputToVertexArrayWithNormalsKernel.constBuffer;
+ }
+
+ // TODO: factor this out. Number of nodes is static and sdt might be, too, we can update this just once on setup
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ dxFunctions.m_dx11Context->Map( outputToVertexArrayConstBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &MappedResource );
+ memcpy( MappedResource.pData, &constBuffer, sizeof(OutputToVertexArrayCB) );
+ dxFunctions.m_dx11Context->Unmap( outputToVertexArrayConstBuffer, 0 );
+ dxFunctions.m_dx11Context->CSSetConstantBuffers( 0, 1, &outputToVertexArrayConstBuffer );
+
+ // Set resources and dispatch
+ dxFunctions.m_dx11Context->CSSetShaderResources( 0, 1, &(vertexData.m_dx11VertexPosition.getSRV()) );
+ dxFunctions.m_dx11Context->CSSetShaderResources( 1, 1, &(vertexData.m_dx11VertexNormal.getSRV()) );
+
+ ID3D11UnorderedAccessView* dx11UAV = dx11VertexBuffer->getDX11UAV();
+ dxFunctions.m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &(dx11UAV), NULL );
+
+ // Execute the kernel
+ dxFunctions.m_dx11Context->CSSetShader( outputToVertexArrayShader, NULL, 0 );
+
+ int numBlocks = (constBuffer.numNodes + (128-1)) / 128;
+ dxFunctions.m_dx11Context->Dispatch(numBlocks, 1, 1 );
+
+ {
+ // Tidy up
+ ID3D11ShaderResourceView* pViewNULL = NULL;
+ dxFunctions.m_dx11Context->CSSetShaderResources( 0, 1, &pViewNULL );
+ dxFunctions.m_dx11Context->CSSetShaderResources( 1, 1, &pViewNULL );
+
+ ID3D11UnorderedAccessView* pUAViewNULL = NULL;
+ dxFunctions.m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &pUAViewNULL, NULL );
+
+ ID3D11Buffer *pBufferNull = NULL;
+ dxFunctions.m_dx11Context->CSSetConstantBuffers( 0, 1, &pBufferNull );
+ }
+ }
+} // btDX11SoftBodySolver::outputToVertexBuffers
+
+
+
+
+DXFunctions::KernelDesc DXFunctions::compileComputeShaderFromString( const char* shaderString, const char* shaderName, int constBufferSize, D3D10_SHADER_MACRO *compileMacros )
+{
+ const char *cs5String = "cs_5_0";
+
+ HRESULT hr = S_OK;
+ ID3DBlob* pErrorBlob = NULL;
+ ID3DBlob* pBlob = NULL;
+ ID3D11ComputeShader* kernelPointer = 0;
+
+ hr = m_dx11CompileFromMemory(
+ shaderString,
+ strlen(shaderString),
+ shaderName,
+ compileMacros,
+ NULL,
+ shaderName,
+ cs5String,
+ D3D10_SHADER_ENABLE_STRICTNESS,
+ NULL,
+ NULL,
+ &pBlob,
+ &pErrorBlob,
+ NULL
+ );
+
+ if( FAILED(hr) )
+ {
+ if( pErrorBlob ) {
+ btAssert( "Compilation of compute shader failed\n" );
+ char *debugString = (char*)pErrorBlob->GetBufferPointer();
+ OutputDebugStringA( debugString );
+ }
+
+ SAFE_RELEASE( pErrorBlob );
+ SAFE_RELEASE( pBlob );
+
+ DXFunctions::KernelDesc descriptor;
+ descriptor.kernel = 0;
+ descriptor.constBuffer = 0;
+ return descriptor;
+ }
+
+ // Create the Compute Shader
+ hr = m_dx11Device->CreateComputeShader( pBlob->GetBufferPointer(), pBlob->GetBufferSize(), NULL, &kernelPointer );
+ if( FAILED( hr ) )
+ {
+ DXFunctions::KernelDesc descriptor;
+ descriptor.kernel = 0;
+ descriptor.constBuffer = 0;
+ return descriptor;
+ }
+
+ ID3D11Buffer* constBuffer = 0;
+ if( constBufferSize > 0 )
+ {
+ // Create the constant buffer
+ D3D11_BUFFER_DESC constant_buffer_desc;
+ ZeroMemory(&constant_buffer_desc, sizeof(constant_buffer_desc));
+ constant_buffer_desc.ByteWidth = constBufferSize;
+ constant_buffer_desc.Usage = D3D11_USAGE_DYNAMIC;
+ constant_buffer_desc.BindFlags = D3D11_BIND_CONSTANT_BUFFER;
+ constant_buffer_desc.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE;
+ m_dx11Device->CreateBuffer(&constant_buffer_desc, NULL, &constBuffer);
+ if( FAILED( hr ) )
+ {
+ KernelDesc descriptor;
+ descriptor.kernel = 0;
+ descriptor.constBuffer = 0;
+ return descriptor;
+ }
+ }
+
+ SAFE_RELEASE( pErrorBlob );
+ SAFE_RELEASE( pBlob );
+
+ DXFunctions::KernelDesc descriptor;
+ descriptor.kernel = kernelPointer;
+ descriptor.constBuffer = constBuffer;
+ return descriptor;
+} // compileComputeShader
+
+
+
+bool btDX11SoftBodySolver::buildShaders()
+{
+ // Ensure current kernels are released first
+ releaseKernels();
+
+ bool returnVal = true;
+
+ if( m_shadersInitialized )
+ return true;
+
+ prepareLinksKernel = dxFunctions.compileComputeShaderFromString( PrepareLinksHLSLString, "PrepareLinksKernel", sizeof(PrepareLinksCB) );
+ if( !prepareLinksKernel.constBuffer )
+ returnVal = false;
+ updatePositionsFromVelocitiesKernel = dxFunctions.compileComputeShaderFromString( UpdatePositionsFromVelocitiesHLSLString, "UpdatePositionsFromVelocitiesKernel", sizeof(UpdatePositionsFromVelocitiesCB) );
+ if( !updatePositionsFromVelocitiesKernel.constBuffer )
+ returnVal = false;
+ solvePositionsFromLinksKernel = dxFunctions.compileComputeShaderFromString( SolvePositionsHLSLString, "SolvePositionsFromLinksKernel", sizeof(SolvePositionsFromLinksKernelCB) );
+ if( !updatePositionsFromVelocitiesKernel.constBuffer )
+ returnVal = false;
+ vSolveLinksKernel = dxFunctions.compileComputeShaderFromString( VSolveLinksHLSLString, "VSolveLinksKernel", sizeof(VSolveLinksCB) );
+ if( !vSolveLinksKernel.constBuffer )
+ returnVal = false;
+ updateVelocitiesFromPositionsWithVelocitiesKernel = dxFunctions.compileComputeShaderFromString( UpdateNodesHLSLString, "updateVelocitiesFromPositionsWithVelocitiesKernel", sizeof(UpdateVelocitiesFromPositionsWithVelocitiesCB) );
+ if( !updateVelocitiesFromPositionsWithVelocitiesKernel.constBuffer )
+ returnVal = false;
+ updateVelocitiesFromPositionsWithoutVelocitiesKernel = dxFunctions.compileComputeShaderFromString( UpdatePositionsHLSLString, "updateVelocitiesFromPositionsWithoutVelocitiesKernel", sizeof(UpdateVelocitiesFromPositionsWithoutVelocitiesCB) );
+ if( !updateVelocitiesFromPositionsWithoutVelocitiesKernel.constBuffer )
+ returnVal = false;
+ integrateKernel = dxFunctions.compileComputeShaderFromString( IntegrateHLSLString, "IntegrateKernel", sizeof(IntegrateCB) );
+ if( !integrateKernel.constBuffer )
+ returnVal = false;
+ applyForcesKernel = dxFunctions.compileComputeShaderFromString( ApplyForcesHLSLString, "ApplyForcesKernel", sizeof(ApplyForcesCB) );
+ if( !applyForcesKernel.constBuffer )
+ returnVal = false;
+ solveCollisionsAndUpdateVelocitiesKernel = dxFunctions.compileComputeShaderFromString( SolveCollisionsAndUpdateVelocitiesHLSLString, "SolveCollisionsAndUpdateVelocitiesKernel", sizeof(SolveCollisionsAndUpdateVelocitiesCB) );
+ if( !solveCollisionsAndUpdateVelocitiesKernel.constBuffer )
+ returnVal = false;
+
+ // TODO: Rename to UpdateSoftBodies
+ resetNormalsAndAreasKernel = dxFunctions.compileComputeShaderFromString( UpdateNormalsHLSLString, "ResetNormalsAndAreasKernel", sizeof(UpdateSoftBodiesCB) );
+ if( !resetNormalsAndAreasKernel.constBuffer )
+ returnVal = false;
+ normalizeNormalsAndAreasKernel = dxFunctions.compileComputeShaderFromString( UpdateNormalsHLSLString, "NormalizeNormalsAndAreasKernel", sizeof(UpdateSoftBodiesCB) );
+ if( !normalizeNormalsAndAreasKernel.constBuffer )
+ returnVal = false;
+ updateSoftBodiesKernel = dxFunctions.compileComputeShaderFromString( UpdateNormalsHLSLString, "UpdateSoftBodiesKernel", sizeof(UpdateSoftBodiesCB) );
+ if( !updateSoftBodiesKernel.constBuffer )
+ returnVal = false;
+
+ computeBoundsKernel = dxFunctions.compileComputeShaderFromString( ComputeBoundsHLSLString, "ComputeBoundsKernel", sizeof(ComputeBoundsCB) );
+ if( !computeBoundsKernel.constBuffer )
+ returnVal = false;
+
+
+
+ if( returnVal )
+ m_shadersInitialized = true;
+
+ return returnVal;
+}
+
+
+static Vectormath::Aos::Transform3 toTransform3( const btTransform &transform )
+{
+ Vectormath::Aos::Transform3 outTransform;
+ outTransform.setCol(0, toVector3(transform.getBasis().getColumn(0)));
+ outTransform.setCol(1, toVector3(transform.getBasis().getColumn(1)));
+ outTransform.setCol(2, toVector3(transform.getBasis().getColumn(2)));
+ outTransform.setCol(3, toVector3(transform.getOrigin()));
+ return outTransform;
+}
+
+
+void btDX11SoftBodySolver::btAcceleratedSoftBodyInterface::updateBounds( const btVector3 &lowerBound, const btVector3 &upperBound )
+{
+ float scalarMargin = this->getSoftBody()->getCollisionShape()->getMargin();
+ btVector3 vectorMargin( scalarMargin, scalarMargin, scalarMargin );
+ m_softBody->m_bounds[0] = lowerBound - vectorMargin;
+ m_softBody->m_bounds[1] = upperBound + vectorMargin;
+}
+
+void btDX11SoftBodySolver::processCollision( btSoftBody*, btSoftBody* )
+{
+
+}
+
+// Add the collision object to the set to deal with for a particular soft body
+void btDX11SoftBodySolver::processCollision( btSoftBody *softBody, const btCollisionObjectWrapper* collisionObject )
+{
+ int softBodyIndex = findSoftBodyIndex( softBody );
+
+ if( softBodyIndex >= 0 )
+ {
+ const btCollisionShape *collisionShape = collisionObject->getCollisionShape();
+ float friction = collisionObject->getCollisionObject()->getFriction();
+ int shapeType = collisionShape->getShapeType();
+ if( shapeType == CAPSULE_SHAPE_PROXYTYPE )
+ {
+ // Add to the list of expected collision objects
+ CollisionShapeDescription newCollisionShapeDescription;
+ newCollisionShapeDescription.softBodyIdentifier = softBodyIndex;
+ newCollisionShapeDescription.collisionShapeType = shapeType;
+ // TODO: May need to transpose this matrix either here or in HLSL
+ newCollisionShapeDescription.shapeTransform = toTransform3(collisionObject->getWorldTransform());
+ const btCapsuleShape *capsule = static_cast<const btCapsuleShape*>( collisionShape );
+ newCollisionShapeDescription.radius = capsule->getRadius();
+ newCollisionShapeDescription.halfHeight = capsule->getHalfHeight();
+ newCollisionShapeDescription.margin = capsule->getMargin();
+ newCollisionShapeDescription.friction = friction;
+ const btRigidBody* body = static_cast< const btRigidBody* >( collisionObject->getCollisionObject() );
+ newCollisionShapeDescription.linearVelocity = toVector3(body->getLinearVelocity());
+ newCollisionShapeDescription.angularVelocity = toVector3(body->getAngularVelocity());
+ m_collisionObjectDetails.push_back( newCollisionShapeDescription );
+
+ } else {
+#ifdef _DEBUG
+ printf("Unsupported collision shape type\n");
+#endif
+ }
+ } else {
+ btAssert("Unknown soft body");
+ }
+} // btDX11SoftBodySolver::processCollision
+
+
+
+void btDX11SoftBodySolver::predictMotion( float timeStep )
+{
+ // Clear the collision shape array for the next frame
+ // Ensure that the DX11 ones are moved off the device so they will be updated correctly
+ m_dx11CollisionObjectDetails.changedOnCPU();
+ m_dx11PerClothCollisionObjects.changedOnCPU();
+ m_collisionObjectDetails.clear();
+
+ // Fill the force arrays with current acceleration data etc
+ m_perClothWindVelocity.resize( m_softBodySet.size() );
+ for( int softBodyIndex = 0; softBodyIndex < m_softBodySet.size(); ++softBodyIndex )
+ {
+ btSoftBody *softBody = m_softBodySet[softBodyIndex]->getSoftBody();
+
+ m_perClothWindVelocity[softBodyIndex] = toVector3(softBody->getWindVelocity());
+ }
+ m_dx11PerClothWindVelocity.changedOnCPU();
+
+ // Apply forces that we know about to the cloths
+ applyForces( timeStep * getTimeScale() );
+
+ // Itegrate motion for all soft bodies dealt with by the solver
+ integrate( timeStep * getTimeScale() );
+
+ // Update bounds
+ // Will update the bounds for all softBodies being dealt with by the solver and
+ // set the values in the btSoftBody object
+ if (m_enableUpdateBounds)
+ updateBounds();
+
+ // End prediction work for solvers
+}
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef BT_ACCELERATED_SOFT_BODY_DX11_SOLVER_H
+#define BT_ACCELERATED_SOFT_BODY_DX11_SOLVER_H
+
+
+#include "vectormath/vmInclude.h"
+#include "BulletSoftBody/btSoftBodySolvers.h"
+#include "btSoftBodySolverVertexBuffer_DX11.h"
+#include "btSoftBodySolverLinkData_DX11.h"
+#include "btSoftBodySolverVertexData_DX11.h"
+#include "btSoftBodySolverTriangleData_DX11.h"
+
+
+
+class DXFunctions
+{
+public:
+
+ typedef HRESULT (WINAPI * CompileFromMemoryFunc)(LPCSTR,SIZE_T,LPCSTR,const D3D10_SHADER_MACRO*,LPD3D10INCLUDE,LPCSTR,LPCSTR,UINT,UINT,ID3DX11ThreadPump*,ID3D10Blob**,ID3D10Blob**,HRESULT*);
+
+ ID3D11Device * m_dx11Device;
+ ID3D11DeviceContext* m_dx11Context;
+ CompileFromMemoryFunc m_dx11CompileFromMemory;
+
+ DXFunctions(ID3D11Device *dx11Device, ID3D11DeviceContext* dx11Context, CompileFromMemoryFunc dx11CompileFromMemory) :
+ m_dx11Device( dx11Device ),
+ m_dx11Context( dx11Context ),
+ m_dx11CompileFromMemory( dx11CompileFromMemory )
+ {
+
+ }
+
+ class KernelDesc
+ {
+ protected:
+
+
+ public:
+ ID3D11ComputeShader* kernel;
+ ID3D11Buffer* constBuffer;
+
+ KernelDesc()
+ {
+ kernel = 0;
+ constBuffer = 0;
+ }
+
+ virtual ~KernelDesc()
+ {
+ // TODO: this should probably destroy its kernel but we need to be careful
+ // in case KernelDescs are copied
+ }
+ };
+
+ /**
+ * Compile a compute shader kernel from a string and return the appropriate KernelDesc object.
+ */
+ KernelDesc compileComputeShaderFromString( const char* shaderString, const char* shaderName, int constBufferSize, D3D10_SHADER_MACRO *compileMacros = 0 );
+
+};
+
+class btDX11SoftBodySolver : public btSoftBodySolver
+{
+protected:
+ /**
+ * Entry in the collision shape array.
+ * Specifies the shape type, the transform matrix and the necessary details of the collisionShape.
+ */
+ struct CollisionShapeDescription
+ {
+ Vectormath::Aos::Transform3 shapeTransform;
+ Vectormath::Aos::Vector3 linearVelocity;
+ Vectormath::Aos::Vector3 angularVelocity;
+
+ int softBodyIdentifier;
+ int collisionShapeType;
+
+ // Both needed for capsule
+ float radius;
+ float halfHeight;
+
+ float margin;
+ float friction;
+
+ CollisionShapeDescription()
+ {
+ collisionShapeType = 0;
+ margin = 0;
+ friction = 0;
+ }
+ };
+
+ struct UIntVector3
+ {
+ UIntVector3()
+ {
+ x = 0;
+ y = 0;
+ z = 0;
+ _padding = 0;
+ }
+
+ UIntVector3( unsigned int x_, unsigned int y_, unsigned int z_ )
+ {
+ x = x_;
+ y = y_;
+ z = z_;
+ _padding = 0;
+ }
+
+ unsigned int x;
+ unsigned int y;
+ unsigned int z;
+ unsigned int _padding;
+ };
+
+
+
+public:
+ /**
+ * SoftBody class to maintain information about a soft body instance
+ * within a solver.
+ * This data addresses the main solver arrays.
+ */
+ class btAcceleratedSoftBodyInterface
+ {
+ protected:
+ /** Current number of vertices that are part of this cloth */
+ int m_numVertices;
+ /** Maximum number of vertices allocated to be part of this cloth */
+ int m_maxVertices;
+ /** Current number of triangles that are part of this cloth */
+ int m_numTriangles;
+ /** Maximum number of triangles allocated to be part of this cloth */
+ int m_maxTriangles;
+ /** Index of first vertex in the world allocated to this cloth */
+ int m_firstVertex;
+ /** Index of first triangle in the world allocated to this cloth */
+ int m_firstTriangle;
+ /** Index of first link in the world allocated to this cloth */
+ int m_firstLink;
+ /** Maximum number of links allocated to this cloth */
+ int m_maxLinks;
+ /** Current number of links allocated to this cloth */
+ int m_numLinks;
+
+ /** The actual soft body this data represents */
+ btSoftBody *m_softBody;
+
+
+ public:
+ btAcceleratedSoftBodyInterface( btSoftBody *softBody ) :
+ m_softBody( softBody )
+ {
+ m_numVertices = 0;
+ m_maxVertices = 0;
+ m_numTriangles = 0;
+ m_maxTriangles = 0;
+ m_firstVertex = 0;
+ m_firstTriangle = 0;
+ m_firstLink = 0;
+ m_maxLinks = 0;
+ m_numLinks = 0;
+ }
+ int getNumVertices() const
+ {
+ return m_numVertices;
+ }
+
+ int getNumTriangles() const
+ {
+ return m_numTriangles;
+ }
+
+ int getMaxVertices() const
+ {
+ return m_maxVertices;
+ }
+
+ int getMaxTriangles() const
+ {
+ return m_maxTriangles;
+ }
+
+ int getFirstVertex() const
+ {
+ return m_firstVertex;
+ }
+
+ int getFirstTriangle() const
+ {
+ return m_firstTriangle;
+ }
+
+
+ /**
+ * Update the bounds in the btSoftBody object
+ */
+ void updateBounds( const btVector3 &lowerBound, const btVector3 &upperBound );
+
+
+ // TODO: All of these set functions will have to do checks and
+ // update the world because restructuring of the arrays will be necessary
+ // Reasonable use of "friend"?
+ void setNumVertices( int numVertices )
+ {
+ m_numVertices = numVertices;
+ }
+
+ void setNumTriangles( int numTriangles )
+ {
+ m_numTriangles = numTriangles;
+ }
+
+ void setMaxVertices( int maxVertices )
+ {
+ m_maxVertices = maxVertices;
+ }
+
+ void setMaxTriangles( int maxTriangles )
+ {
+ m_maxTriangles = maxTriangles;
+ }
+
+ void setFirstVertex( int firstVertex )
+ {
+ m_firstVertex = firstVertex;
+ }
+
+ void setFirstTriangle( int firstTriangle )
+ {
+ m_firstTriangle = firstTriangle;
+ }
+
+ void setMaxLinks( int maxLinks )
+ {
+ m_maxLinks = maxLinks;
+ }
+
+ void setNumLinks( int numLinks )
+ {
+ m_numLinks = numLinks;
+ }
+
+ void setFirstLink( int firstLink )
+ {
+ m_firstLink = firstLink;
+ }
+
+ int getMaxLinks()
+ {
+ return m_maxLinks;
+ }
+
+ int getNumLinks()
+ {
+ return m_numLinks;
+ }
+
+ int getFirstLink()
+ {
+ return m_firstLink;
+ }
+
+ btSoftBody* getSoftBody()
+ {
+ return m_softBody;
+ }
+
+ };
+
+
+ struct CollisionObjectIndices
+ {
+ CollisionObjectIndices( int f, int e )
+ {
+ firstObject = f;
+ endObject = e;
+ }
+
+ int firstObject;
+ int endObject;
+ };
+
+
+
+
+
+ struct PrepareLinksCB
+ {
+ int numLinks;
+ int padding0;
+ int padding1;
+ int padding2;
+ };
+
+ struct SolvePositionsFromLinksKernelCB
+ {
+ int startLink;
+ int numLinks;
+ float kst;
+ float ti;
+ };
+
+ struct IntegrateCB
+ {
+ int numNodes;
+ float solverdt;
+ int padding1;
+ int padding2;
+ };
+
+ struct UpdatePositionsFromVelocitiesCB
+ {
+ int numNodes;
+ float solverSDT;
+ int padding1;
+ int padding2;
+ };
+
+ struct UpdateVelocitiesFromPositionsWithoutVelocitiesCB
+ {
+ int numNodes;
+ float isolverdt;
+ int padding1;
+ int padding2;
+ };
+
+ struct UpdateVelocitiesFromPositionsWithVelocitiesCB
+ {
+ int numNodes;
+ float isolverdt;
+ int padding1;
+ int padding2;
+ };
+
+ struct UpdateSoftBodiesCB
+ {
+ int numNodes;
+ int startFace;
+ int numFaces;
+ float epsilon;
+ };
+
+
+ struct ApplyForcesCB
+ {
+ unsigned int numNodes;
+ float solverdt;
+ float epsilon;
+ int padding3;
+ };
+
+ struct AddVelocityCB
+ {
+ int startNode;
+ int lastNode;
+ float velocityX;
+ float velocityY;
+ float velocityZ;
+ int padding1;
+ int padding2;
+ int padding3;
+ };
+
+ struct VSolveLinksCB
+ {
+ int startLink;
+ int numLinks;
+ float kst;
+ int padding;
+ };
+
+ struct ComputeBoundsCB
+ {
+ int numNodes;
+ int numSoftBodies;
+ int padding1;
+ int padding2;
+ };
+
+ struct SolveCollisionsAndUpdateVelocitiesCB
+ {
+ unsigned int numNodes;
+ float isolverdt;
+ int padding0;
+ int padding1;
+ };
+
+
+
+
+protected:
+ ID3D11Device * m_dx11Device;
+ ID3D11DeviceContext* m_dx11Context;
+
+ DXFunctions dxFunctions;
+public:
+ /** Link data for all cloths. Note that this will be sorted batch-wise for efficient computation and m_linkAddresses will maintain the addressing. */
+ btSoftBodyLinkDataDX11 m_linkData;
+ btSoftBodyVertexDataDX11 m_vertexData;
+ btSoftBodyTriangleDataDX11 m_triangleData;
+
+protected:
+
+ /** Variable to define whether we need to update solver constants on the next iteration */
+ bool m_updateSolverConstants;
+
+ bool m_shadersInitialized;
+
+ /**
+ * Cloths owned by this solver.
+ * Only our cloths are in this array.
+ */
+ btAlignedObjectArray< btAcceleratedSoftBodyInterface * > m_softBodySet;
+
+ /** Acceleration value to be applied to all non-static vertices in the solver.
+ * Index n is cloth n, array sized by number of cloths in the world not the solver.
+ */
+ btAlignedObjectArray< Vectormath::Aos::Vector3 > m_perClothAcceleration;
+ btDX11Buffer<Vectormath::Aos::Vector3> m_dx11PerClothAcceleration;
+
+ /** Wind velocity to be applied normal to all non-static vertices in the solver.
+ * Index n is cloth n, array sized by number of cloths in the world not the solver.
+ */
+ btAlignedObjectArray< Vectormath::Aos::Vector3 > m_perClothWindVelocity;
+ btDX11Buffer<Vectormath::Aos::Vector3> m_dx11PerClothWindVelocity;
+
+ /** Velocity damping factor */
+ btAlignedObjectArray< float > m_perClothDampingFactor;
+ btDX11Buffer<float> m_dx11PerClothDampingFactor;
+
+ /** Velocity correction coefficient */
+ btAlignedObjectArray< float > m_perClothVelocityCorrectionCoefficient;
+ btDX11Buffer<float> m_dx11PerClothVelocityCorrectionCoefficient;
+
+ /** Lift parameter for wind effect on cloth. */
+ btAlignedObjectArray< float > m_perClothLiftFactor;
+ btDX11Buffer<float> m_dx11PerClothLiftFactor;
+
+ /** Drag parameter for wind effect on cloth. */
+ btAlignedObjectArray< float > m_perClothDragFactor;
+ btDX11Buffer<float> m_dx11PerClothDragFactor;
+
+ /** Density of the medium in which each cloth sits */
+ btAlignedObjectArray< float > m_perClothMediumDensity;
+ btDX11Buffer<float> m_dx11PerClothMediumDensity;
+
+
+ /**
+ * Collision shape details: pair of index of first collision shape for the cloth and number of collision objects.
+ */
+ btAlignedObjectArray< CollisionObjectIndices > m_perClothCollisionObjects;
+ btDX11Buffer<CollisionObjectIndices> m_dx11PerClothCollisionObjects;
+
+ /**
+ * Collision shapes being passed across to the cloths in this solver.
+ */
+ btAlignedObjectArray< CollisionShapeDescription > m_collisionObjectDetails;
+ btDX11Buffer< CollisionShapeDescription > m_dx11CollisionObjectDetails;
+
+ /**
+ * Minimum bounds for each cloth.
+ * Updated by GPU and returned for use by broad phase.
+ * These are int vectors as a reminder that they store the int representation of a float, not a float.
+ * Bit 31 is inverted - is floats are stored with int-sortable values.
+ */
+ btAlignedObjectArray< UIntVector3 > m_perClothMinBounds;
+ btDX11Buffer< UIntVector3 > m_dx11PerClothMinBounds;
+
+ /**
+ * Maximum bounds for each cloth.
+ * Updated by GPU and returned for use by broad phase.
+ * These are int vectors as a reminder that they store the int representation of a float, not a float.
+ * Bit 31 is inverted - is floats are stored with int-sortable values.
+ */
+ btAlignedObjectArray< UIntVector3 > m_perClothMaxBounds;
+ btDX11Buffer< UIntVector3 > m_dx11PerClothMaxBounds;
+
+
+ /**
+ * Friction coefficient for each cloth
+ */
+ btAlignedObjectArray< float > m_perClothFriction;
+ btDX11Buffer< float > m_dx11PerClothFriction;
+
+ DXFunctions::KernelDesc prepareLinksKernel;
+ DXFunctions::KernelDesc solvePositionsFromLinksKernel;
+ DXFunctions::KernelDesc vSolveLinksKernel;
+ DXFunctions::KernelDesc integrateKernel;
+ DXFunctions::KernelDesc addVelocityKernel;
+ DXFunctions::KernelDesc updatePositionsFromVelocitiesKernel;
+ DXFunctions::KernelDesc updateVelocitiesFromPositionsWithoutVelocitiesKernel;
+ DXFunctions::KernelDesc updateVelocitiesFromPositionsWithVelocitiesKernel;
+ DXFunctions::KernelDesc solveCollisionsAndUpdateVelocitiesKernel;
+ DXFunctions::KernelDesc resetNormalsAndAreasKernel;
+ DXFunctions::KernelDesc normalizeNormalsAndAreasKernel;
+ DXFunctions::KernelDesc computeBoundsKernel;
+ DXFunctions::KernelDesc updateSoftBodiesKernel;
+
+ DXFunctions::KernelDesc applyForcesKernel;
+
+ bool m_enableUpdateBounds;
+
+ /**
+ * Integrate motion on the solver.
+ */
+ virtual void integrate( float solverdt );
+ float computeTriangleArea(
+ const Vectormath::Aos::Point3 &vertex0,
+ const Vectormath::Aos::Point3 &vertex1,
+ const Vectormath::Aos::Point3 &vertex2 );
+
+
+ virtual bool buildShaders();
+
+ void resetNormalsAndAreas( int numVertices );
+
+ void normalizeNormalsAndAreas( int numVertices );
+
+ void executeUpdateSoftBodies( int firstTriangle, int numTriangles );
+
+ void prepareCollisionConstraints();
+
+ Vectormath::Aos::Vector3 ProjectOnAxis( const Vectormath::Aos::Vector3 &v, const Vectormath::Aos::Vector3 &a );
+
+ void ApplyClampedForce( float solverdt, const Vectormath::Aos::Vector3 &force, const Vectormath::Aos::Vector3 &vertexVelocity, float inverseMass, Vectormath::Aos::Vector3 &vertexForce );
+
+ virtual void applyForces( float solverdt );
+
+ virtual void updateConstants( float timeStep );
+ int findSoftBodyIndex( const btSoftBody* const softBody );
+
+ //////////////////////////////////////
+ // Kernel dispatches
+ virtual void prepareLinks();
+
+ void updatePositionsFromVelocities( float solverdt );
+ void solveLinksForPosition( int startLink, int numLinks, float kst, float ti );
+ void solveLinksForVelocity( int startLink, int numLinks, float kst );
+
+ void updateVelocitiesFromPositionsWithVelocities( float isolverdt );
+ void updateVelocitiesFromPositionsWithoutVelocities( float isolverdt );
+ void computeBounds( );
+ void solveCollisionsAndUpdateVelocities( float isolverdt );
+
+ // End kernel dispatches
+ /////////////////////////////////////
+
+ void updateBounds();
+
+
+ void releaseKernels();
+
+public:
+ btDX11SoftBodySolver(ID3D11Device * dx11Device, ID3D11DeviceContext* dx11Context, DXFunctions::CompileFromMemoryFunc dx11CompileFromMemory = &D3DX11CompileFromMemory);
+
+ virtual ~btDX11SoftBodySolver();
+
+
+ virtual SolverTypes getSolverType() const
+ {
+ return DX_SOLVER;
+ }
+
+ void setEnableUpdateBounds(bool enableBounds)
+ {
+ m_enableUpdateBounds = enableBounds;
+ }
+ bool getEnableUpdateBounds() const
+ {
+ return m_enableUpdateBounds;
+ }
+
+
+
+ virtual btSoftBodyLinkData &getLinkData();
+
+ virtual btSoftBodyVertexData &getVertexData();
+
+ virtual btSoftBodyTriangleData &getTriangleData();
+
+
+
+
+
+ btAcceleratedSoftBodyInterface *findSoftBodyInterface( const btSoftBody* const softBody );
+ const btAcceleratedSoftBodyInterface * const findSoftBodyInterface( const btSoftBody* const softBody ) const;
+
+ virtual bool checkInitialized();
+
+ virtual void updateSoftBodies( );
+
+ virtual void optimize( btAlignedObjectArray< btSoftBody * > &softBodies , bool forceUpdate=false);
+
+ virtual void copyBackToSoftBodies(bool bMove = true);
+
+ virtual void solveConstraints( float solverdt );
+
+ virtual void predictMotion( float solverdt );
+
+
+ virtual void processCollision( btSoftBody *, const btCollisionObjectWrapper* );
+
+ virtual void processCollision( btSoftBody*, btSoftBody* );
+
+};
+
+
+
+/**
+ * Class to manage movement of data from a solver to a given target.
+ * This version is the DX to CPU version.
+ */
+class btSoftBodySolverOutputDXtoCPU : public btSoftBodySolverOutput
+{
+protected:
+
+public:
+ btSoftBodySolverOutputDXtoCPU()
+ {
+ }
+
+ /** Output current computed vertex data to the vertex buffers for all cloths in the solver. */
+ virtual void copySoftBodyToVertexBuffer( const btSoftBody * const softBody, btVertexBufferDescriptor *vertexBuffer );
+};
+
+/**
+ * Class to manage movement of data from a solver to a given target.
+ * This version is the DX to DX version and subclasses DX to CPU so that it works for that too.
+ */
+class btSoftBodySolverOutputDXtoDX : public btSoftBodySolverOutputDXtoCPU
+{
+protected:
+ struct OutputToVertexArrayCB
+ {
+ int startNode;
+ int numNodes;
+ int positionOffset;
+ int positionStride;
+
+ int normalOffset;
+ int normalStride;
+ int padding1;
+ int padding2;
+ };
+
+ DXFunctions dxFunctions;
+ DXFunctions::KernelDesc outputToVertexArrayWithNormalsKernel;
+ DXFunctions::KernelDesc outputToVertexArrayWithoutNormalsKernel;
+
+
+ bool m_shadersInitialized;
+
+ bool checkInitialized();
+ bool buildShaders();
+ void releaseKernels();
+
+public:
+ btSoftBodySolverOutputDXtoDX(ID3D11Device *dx11Device, ID3D11DeviceContext* dx11Context, DXFunctions::CompileFromMemoryFunc dx11CompileFromMemory = &D3DX11CompileFromMemory) :
+ dxFunctions( dx11Device, dx11Context, dx11CompileFromMemory )
+ {
+ m_shadersInitialized = false;
+ }
+
+ ~btSoftBodySolverOutputDXtoDX()
+ {
+ releaseKernels();
+ }
+
+ /** Output current computed vertex data to the vertex buffers for all cloths in the solver. */
+ virtual void copySoftBodyToVertexBuffer( const btSoftBody * const softBody, btVertexBufferDescriptor *vertexBuffer );
+};
+
+#endif // #ifndef BT_ACCELERATED_SOFT_BODY_DX11_SOLVER_H
+
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include <cstdio>
+
+
+#define WAVEFRONT_SIZE 32
+#define WAVEFRONT_BLOCK_MULTIPLIER 2
+#define GROUP_SIZE (WAVEFRONT_SIZE*WAVEFRONT_BLOCK_MULTIPLIER)
+#define LINKS_PER_SIMD_LANE 16
+
+#define STRINGIFY( S ) STRINGIFY2( S )
+#define STRINGIFY2( S ) #S
+
+#include "BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h"
+#include "vectormath/vmInclude.h"
+
+#include "btSoftBodySolverLinkData_DX11SIMDAware.h"
+#include "btSoftBodySolver_DX11SIMDAware.h"
+#include "btSoftBodySolverVertexBuffer_DX11.h"
+#include "BulletSoftBody/btSoftBody.h"
+#include "BulletCollision/CollisionShapes/btCapsuleShape.h"
+
+#define MSTRINGIFY(A) #A
+static char* UpdatePositionsFromVelocitiesHLSLString =
+#include "HLSL/UpdatePositionsFromVelocities.hlsl"
+static char* SolvePositionsSIMDBatchedHLSLString =
+#include "HLSL/SolvePositionsSIMDBatched.hlsl"
+static char* UpdateNodesHLSLString =
+#include "HLSL/UpdateNodes.hlsl"
+static char* UpdatePositionsHLSLString =
+#include "HLSL/UpdatePositions.hlsl"
+static char* UpdateConstantsHLSLString =
+#include "HLSL/UpdateConstants.hlsl"
+static char* IntegrateHLSLString =
+#include "HLSL/Integrate.hlsl"
+static char* ApplyForcesHLSLString =
+#include "HLSL/ApplyForces.hlsl"
+static char* UpdateNormalsHLSLString =
+#include "HLSL/UpdateNormals.hlsl"
+static char* OutputToVertexArrayHLSLString =
+#include "HLSL/OutputToVertexArray.hlsl"
+static char* VSolveLinksHLSLString =
+#include "HLSL/VSolveLinks.hlsl"
+static char* ComputeBoundsHLSLString =
+#include "HLSL/ComputeBounds.hlsl"
+static char* SolveCollisionsAndUpdateVelocitiesHLSLString =
+#include "HLSL/solveCollisionsAndUpdateVelocitiesSIMDBatched.hlsl"
+
+
+
+btSoftBodyLinkDataDX11SIMDAware::btSoftBodyLinkDataDX11SIMDAware( ID3D11Device *d3dDevice, ID3D11DeviceContext *d3dDeviceContext ) :
+ m_d3dDevice( d3dDevice ),
+ m_d3dDeviceContext( d3dDeviceContext ),
+ m_wavefrontSize( WAVEFRONT_SIZE ),
+ m_linksPerWorkItem( LINKS_PER_SIMD_LANE ),
+ m_maxBatchesWithinWave( 0 ),
+ m_maxLinksPerWavefront( m_wavefrontSize * m_linksPerWorkItem ),
+ m_numWavefronts( 0 ),
+ m_maxVertex( 0 ),
+ m_dx11NumBatchesAndVerticesWithinWaves( d3dDevice, d3dDeviceContext, &m_numBatchesAndVerticesWithinWaves, true ),
+ m_dx11WavefrontVerticesGlobalAddresses( d3dDevice, d3dDeviceContext, &m_wavefrontVerticesGlobalAddresses, true ),
+ m_dx11LinkVerticesLocalAddresses( d3dDevice, d3dDeviceContext, &m_linkVerticesLocalAddresses, true ),
+ m_dx11LinkStrength( d3dDevice, d3dDeviceContext, &m_linkStrength, true ),
+ m_dx11LinksMassLSC( d3dDevice, d3dDeviceContext, &m_linksMassLSC, true ),
+ m_dx11LinksRestLengthSquared( d3dDevice, d3dDeviceContext, &m_linksRestLengthSquared, true ),
+ m_dx11LinksRestLength( d3dDevice, d3dDeviceContext, &m_linksRestLength, true ),
+ m_dx11LinksMaterialLinearStiffnessCoefficient( d3dDevice, d3dDeviceContext, &m_linksMaterialLinearStiffnessCoefficient, true )
+{
+ m_d3dDevice = d3dDevice;
+ m_d3dDeviceContext = d3dDeviceContext;
+}
+
+btSoftBodyLinkDataDX11SIMDAware::~btSoftBodyLinkDataDX11SIMDAware()
+{
+}
+
+static Vectormath::Aos::Vector3 toVector3( const btVector3 &vec )
+{
+ Vectormath::Aos::Vector3 outVec( vec.getX(), vec.getY(), vec.getZ() );
+ return outVec;
+}
+
+void btSoftBodyLinkDataDX11SIMDAware::createLinks( int numLinks )
+{
+ int previousSize = m_links.size();
+ int newSize = previousSize + numLinks;
+
+ btSoftBodyLinkData::createLinks( numLinks );
+
+ // Resize the link addresses array as well
+ m_linkAddresses.resize( newSize );
+}
+
+void btSoftBodyLinkDataDX11SIMDAware::setLinkAt( const btSoftBodyLinkData::LinkDescription &link, int linkIndex )
+{
+ btSoftBodyLinkData::setLinkAt( link, linkIndex );
+
+ if( link.getVertex0() > m_maxVertex )
+ m_maxVertex = link.getVertex0();
+ if( link.getVertex1() > m_maxVertex )
+ m_maxVertex = link.getVertex1();
+
+ // Set the link index correctly for initialisation
+ m_linkAddresses[linkIndex] = linkIndex;
+}
+
+bool btSoftBodyLinkDataDX11SIMDAware::onAccelerator()
+{
+ return m_onGPU;
+}
+
+bool btSoftBodyLinkDataDX11SIMDAware::moveToAccelerator()
+{
+ bool success = true;
+
+ success = success && m_dx11NumBatchesAndVerticesWithinWaves.moveToGPU();
+ success = success && m_dx11WavefrontVerticesGlobalAddresses.moveToGPU();
+ success = success && m_dx11LinkVerticesLocalAddresses.moveToGPU();
+ success = success && m_dx11LinkStrength.moveToGPU();
+ success = success && m_dx11LinksMassLSC.moveToGPU();
+ success = success && m_dx11LinksRestLengthSquared.moveToGPU();
+ success = success && m_dx11LinksRestLength.moveToGPU();
+ success = success && m_dx11LinksMaterialLinearStiffnessCoefficient.moveToGPU();
+
+ if( success )
+ m_onGPU = true;
+
+ return success;
+}
+
+bool btSoftBodyLinkDataDX11SIMDAware::moveFromAccelerator()
+{
+ bool success = true;
+ success = success && m_dx11NumBatchesAndVerticesWithinWaves.moveFromGPU();
+ success = success && m_dx11WavefrontVerticesGlobalAddresses.moveFromGPU();
+ success = success && m_dx11LinkVerticesLocalAddresses.moveFromGPU();
+ success = success && m_dx11LinkStrength.moveFromGPU();
+ success = success && m_dx11LinksMassLSC.moveFromGPU();
+ success = success && m_dx11LinksRestLengthSquared.moveFromGPU();
+ success = success && m_dx11LinksRestLength.moveFromGPU();
+ success = success && m_dx11LinksMaterialLinearStiffnessCoefficient.moveFromGPU();
+
+ if( success )
+ m_onGPU = false;
+
+ return success;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+btDX11SIMDAwareSoftBodySolver::btDX11SIMDAwareSoftBodySolver(ID3D11Device * dx11Device, ID3D11DeviceContext* dx11Context, DXFunctions::CompileFromMemoryFunc dx11CompileFromMemory) :
+ btDX11SoftBodySolver( dx11Device, dx11Context, dx11CompileFromMemory ),
+ m_linkData(m_dx11Device, m_dx11Context)
+{
+ // Initial we will clearly need to update solver constants
+ // For now this is global for the cloths linked with this solver - we should probably make this body specific
+ // for performance in future once we understand more clearly when constants need to be updated
+ m_updateSolverConstants = true;
+
+ m_shadersInitialized = false;
+}
+
+btDX11SIMDAwareSoftBodySolver::~btDX11SIMDAwareSoftBodySolver()
+{
+ releaseKernels();
+}
+
+
+btSoftBodyLinkData &btDX11SIMDAwareSoftBodySolver::getLinkData()
+{
+ // TODO: Consider setting link data to "changed" here
+ return m_linkData;
+}
+
+
+
+void btDX11SIMDAwareSoftBodySolver::optimize( btAlignedObjectArray< btSoftBody * > &softBodies , bool forceUpdate)
+{
+ if(forceUpdate || m_softBodySet.size() != softBodies.size() )
+ {
+ // Have a change in the soft body set so update, reloading all the data
+ getVertexData().clear();
+ getTriangleData().clear();
+ getLinkData().clear();
+ m_softBodySet.resize(0);
+
+
+ for( int softBodyIndex = 0; softBodyIndex < softBodies.size(); ++softBodyIndex )
+ {
+ btSoftBody *softBody = softBodies[ softBodyIndex ];
+ using Vectormath::Aos::Matrix3;
+ using Vectormath::Aos::Point3;
+
+ // Create SoftBody that will store the information within the solver
+ btAcceleratedSoftBodyInterface *newSoftBody = new btAcceleratedSoftBodyInterface( softBody );
+ m_softBodySet.push_back( newSoftBody );
+
+ m_perClothAcceleration.push_back( toVector3(softBody->getWorldInfo()->m_gravity) );
+ m_perClothDampingFactor.push_back(softBody->m_cfg.kDP);
+ m_perClothVelocityCorrectionCoefficient.push_back( softBody->m_cfg.kVCF );
+ m_perClothLiftFactor.push_back( softBody->m_cfg.kLF );
+ m_perClothDragFactor.push_back( softBody->m_cfg.kDG );
+ m_perClothMediumDensity.push_back(softBody->getWorldInfo()->air_density);
+ // Simple init values. Actually we'll put 0 and -1 into them at the appropriate time
+ m_perClothMinBounds.push_back( UIntVector3( 0, 0, 0 ) );
+ m_perClothMaxBounds.push_back( UIntVector3( UINT_MAX, UINT_MAX, UINT_MAX ) );
+ m_perClothFriction.push_back( softBody->getFriction() );
+ m_perClothCollisionObjects.push_back( CollisionObjectIndices(-1, -1) );
+
+ // Add space for new vertices and triangles in the default solver for now
+ // TODO: Include space here for tearing too later
+ int firstVertex = getVertexData().getNumVertices();
+ int numVertices = softBody->m_nodes.size();
+ // Round maxVertices to a multiple of the workgroup size so we know we're safe to run over in a given group
+ // maxVertices can be increased to allow tearing, but should be used sparingly because these extra verts will always be processed
+ int maxVertices = GROUP_SIZE*((numVertices+GROUP_SIZE)/GROUP_SIZE);
+ // Allocate space for new vertices in all the vertex arrays
+ getVertexData().createVertices( numVertices, softBodyIndex, maxVertices );
+
+ int firstTriangle = getTriangleData().getNumTriangles();
+ int numTriangles = softBody->m_faces.size();
+ int maxTriangles = numTriangles;
+ getTriangleData().createTriangles( maxTriangles );
+
+ // Copy vertices from softbody into the solver
+ for( int vertex = 0; vertex < numVertices; ++vertex )
+ {
+ Point3 multPoint(softBody->m_nodes[vertex].m_x.getX(), softBody->m_nodes[vertex].m_x.getY(), softBody->m_nodes[vertex].m_x.getZ());
+ btSoftBodyVertexData::VertexDescription desc;
+
+ // TODO: Position in the softbody might be pre-transformed
+ // or we may need to adapt for the pose.
+ //desc.setPosition( cloth.getMeshTransform()*multPoint );
+ desc.setPosition( multPoint );
+
+ float vertexInverseMass = softBody->m_nodes[vertex].m_im;
+ desc.setInverseMass(vertexInverseMass);
+ getVertexData().setVertexAt( desc, firstVertex + vertex );
+ }
+
+ // Copy triangles similarly
+ // We're assuming here that vertex indices are based on the firstVertex rather than the entire scene
+ for( int triangle = 0; triangle < numTriangles; ++triangle )
+ {
+ // Note that large array storage is relative to the array not to the cloth
+ // So we need to add firstVertex to each value
+ int vertexIndex0 = (softBody->m_faces[triangle].m_n[0] - &(softBody->m_nodes[0]));
+ int vertexIndex1 = (softBody->m_faces[triangle].m_n[1] - &(softBody->m_nodes[0]));
+ int vertexIndex2 = (softBody->m_faces[triangle].m_n[2] - &(softBody->m_nodes[0]));
+ btSoftBodyTriangleData::TriangleDescription newTriangle(vertexIndex0 + firstVertex, vertexIndex1 + firstVertex, vertexIndex2 + firstVertex);
+ getTriangleData().setTriangleAt( newTriangle, firstTriangle + triangle );
+
+ // Increase vertex triangle counts for this triangle
+ getVertexData().getTriangleCount(newTriangle.getVertexSet().vertex0)++;
+ getVertexData().getTriangleCount(newTriangle.getVertexSet().vertex1)++;
+ getVertexData().getTriangleCount(newTriangle.getVertexSet().vertex2)++;
+ }
+
+ int firstLink = getLinkData().getNumLinks();
+ int numLinks = softBody->m_links.size();
+ int maxLinks = numLinks;
+
+ // Allocate space for the links
+ getLinkData().createLinks( numLinks );
+
+ // Add the links
+ for( int link = 0; link < numLinks; ++link )
+ {
+ int vertexIndex0 = softBody->m_links[link].m_n[0] - &(softBody->m_nodes[0]);
+ int vertexIndex1 = softBody->m_links[link].m_n[1] - &(softBody->m_nodes[0]);
+
+ btSoftBodyLinkData::LinkDescription newLink(vertexIndex0 + firstVertex, vertexIndex1 + firstVertex, softBody->m_links[link].m_material->m_kLST);
+ newLink.setLinkStrength(1.f);
+ getLinkData().setLinkAt(newLink, firstLink + link);
+ }
+
+ newSoftBody->setFirstVertex( firstVertex );
+ newSoftBody->setFirstTriangle( firstTriangle );
+ newSoftBody->setNumVertices( numVertices );
+ newSoftBody->setMaxVertices( maxVertices );
+ newSoftBody->setNumTriangles( numTriangles );
+ newSoftBody->setMaxTriangles( maxTriangles );
+ newSoftBody->setFirstLink( firstLink );
+ newSoftBody->setNumLinks( numLinks );
+ }
+
+
+
+ updateConstants(0.f);
+
+
+ m_linkData.generateBatches();
+ m_triangleData.generateBatches();
+
+
+ // Build the shaders to match the batching parameters
+ buildShaders();
+ }
+
+}
+
+
+
+void btDX11SIMDAwareSoftBodySolver::solveConstraints( float solverdt )
+{
+
+ //std::cerr << "'GPU' solve constraints\n";
+ using Vectormath::Aos::Vector3;
+ using Vectormath::Aos::Point3;
+ using Vectormath::Aos::lengthSqr;
+ using Vectormath::Aos::dot;
+
+ // Prepare links
+ int numLinks = m_linkData.getNumLinks();
+ int numVertices = m_vertexData.getNumVertices();
+
+ float kst = 1.f;
+ float ti = 0.f;
+
+
+ m_dx11PerClothDampingFactor.moveToGPU();
+ m_dx11PerClothVelocityCorrectionCoefficient.moveToGPU();
+
+
+
+ // Ensure data is on accelerator
+ m_linkData.moveToAccelerator();
+ m_vertexData.moveToAccelerator();
+
+
+
+ prepareCollisionConstraints();
+
+
+ // Solve drift
+ for( int iteration = 0; iteration < m_numberOfPositionIterations ; ++iteration )
+ {
+
+ for( int i = 0; i < m_linkData.m_wavefrontBatchStartLengths.size(); ++i )
+ {
+ int startWave = m_linkData.m_wavefrontBatchStartLengths[i].start;
+ int numWaves = m_linkData.m_wavefrontBatchStartLengths[i].length;
+
+ solveLinksForPosition( startWave, numWaves, kst, ti );
+ }
+
+ } // for( int iteration = 0; iteration < m_numberOfPositionIterations ; ++iteration )
+
+
+
+
+ // At this point assume that the force array is blank - we will overwrite it
+ solveCollisionsAndUpdateVelocities( 1.f/solverdt );
+
+} // btDX11SIMDAwareSoftBodySolver::solveConstraints
+
+
+void btDX11SIMDAwareSoftBodySolver::updateConstants( float timeStep )
+{
+ using namespace Vectormath::Aos;
+
+ if( m_updateSolverConstants )
+ {
+ m_updateSolverConstants = false;
+
+ // Will have to redo this if we change the structure (tear, maybe) or various other possible changes
+
+ // Initialise link constants
+ const int numLinks = m_linkData.getNumLinks();
+ for( int linkIndex = 0; linkIndex < numLinks; ++linkIndex )
+ {
+ btSoftBodyLinkData::LinkNodePair &vertices( m_linkData.getVertexPair(linkIndex) );
+ m_linkData.getRestLength(linkIndex) = length((m_vertexData.getPosition( vertices.vertex0 ) - m_vertexData.getPosition( vertices.vertex1 )));
+ float invMass0 = m_vertexData.getInverseMass(vertices.vertex0);
+ float invMass1 = m_vertexData.getInverseMass(vertices.vertex1);
+ float linearStiffness = m_linkData.getLinearStiffnessCoefficient(linkIndex);
+ float massLSC = (invMass0 + invMass1)/linearStiffness;
+ m_linkData.getMassLSC(linkIndex) = massLSC;
+ float restLength = m_linkData.getRestLength(linkIndex);
+ float restLengthSquared = restLength*restLength;
+ m_linkData.getRestLengthSquared(linkIndex) = restLengthSquared;
+ }
+ }
+} // btDX11SIMDAwareSoftBodySolver::updateConstants
+
+//////////////////////////////////////
+// Kernel dispatches
+
+
+void btDX11SIMDAwareSoftBodySolver::solveLinksForPosition( int startWave, int numWaves, float kst, float ti )
+{
+
+
+ m_vertexData.moveToAccelerator();
+ m_linkData.moveToAccelerator();
+
+ // Copy kernel parameters to GPU
+ SolvePositionsFromLinksKernelCB constBuffer;
+
+ // Set the first wave of the batch and the number of waves
+ constBuffer.startWave = startWave;
+ constBuffer.numWaves = numWaves;
+
+ constBuffer.kst = kst;
+ constBuffer.ti = ti;
+
+ D3D11_MAPPED_SUBRESOURCE MappedResource = {0};
+ m_dx11Context->Map( solvePositionsFromLinksKernel.constBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &MappedResource );
+ memcpy( MappedResource.pData, &constBuffer, sizeof(SolvePositionsFromLinksKernelCB) );
+ m_dx11Context->Unmap( solvePositionsFromLinksKernel.constBuffer, 0 );
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &solvePositionsFromLinksKernel.constBuffer );
+
+ // Set resources and dispatch
+ m_dx11Context->CSSetShaderResources( 0, 1, &(m_linkData.m_dx11NumBatchesAndVerticesWithinWaves.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 1, 1, &(m_linkData.m_dx11WavefrontVerticesGlobalAddresses.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 2, 1, &(m_vertexData.m_dx11VertexInverseMass.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 3, 1, &(m_linkData.m_dx11LinkVerticesLocalAddresses.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 4, 1, &(m_linkData.m_dx11LinksMassLSC.getSRV()) );
+ m_dx11Context->CSSetShaderResources( 5, 1, &(m_linkData.m_dx11LinksRestLengthSquared.getSRV()) );
+
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &(m_vertexData.m_dx11VertexPosition.getUAV()), NULL );
+
+ // Execute the kernel
+ m_dx11Context->CSSetShader( solvePositionsFromLinksKernel.kernel, NULL, 0 );
+
+ int numBlocks = ((constBuffer.numWaves + WAVEFRONT_BLOCK_MULTIPLIER - 1) / WAVEFRONT_BLOCK_MULTIPLIER );
+ m_dx11Context->Dispatch(numBlocks , 1, 1 );
+
+ {
+ // Tidy up
+ ID3D11ShaderResourceView* pViewNULL = NULL;
+ m_dx11Context->CSSetShaderResources( 0, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 1, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 2, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 3, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 4, 1, &pViewNULL );
+ m_dx11Context->CSSetShaderResources( 5, 1, &pViewNULL );
+
+ ID3D11UnorderedAccessView* pUAViewNULL = NULL;
+ m_dx11Context->CSSetUnorderedAccessViews( 0, 1, &pUAViewNULL, NULL );
+
+ ID3D11Buffer *pBufferNull = NULL;
+ m_dx11Context->CSSetConstantBuffers( 0, 1, &pBufferNull );
+ }
+} // btDX11SIMDAwareSoftBodySolver::solveLinksForPosition
+
+
+
+// End kernel dispatches
+/////////////////////////////////////
+
+
+
+
+
+
+
+
+
+bool btDX11SIMDAwareSoftBodySolver::buildShaders()
+{
+ // Ensure current kernels are released first
+ releaseKernels();
+
+ bool returnVal = true;
+
+
+ if( m_shadersInitialized )
+ return true;
+
+
+ updatePositionsFromVelocitiesKernel = dxFunctions.compileComputeShaderFromString( UpdatePositionsFromVelocitiesHLSLString, "UpdatePositionsFromVelocitiesKernel", sizeof(UpdatePositionsFromVelocitiesCB) );
+ if( !updatePositionsFromVelocitiesKernel.constBuffer )
+ returnVal = false;
+
+ char maxVerticesPerWavefront[20];
+ char maxBatchesPerWavefront[20];
+ char waveFrontSize[20];
+ char waveFrontBlockMultiplier[20];
+ char blockSize[20];
+
+ sprintf(maxVerticesPerWavefront, "%d", m_linkData.getMaxVerticesPerWavefront());
+ sprintf(maxBatchesPerWavefront, "%d", m_linkData.getMaxBatchesPerWavefront());
+ sprintf(waveFrontSize, "%d", m_linkData.getWavefrontSize());
+ sprintf(waveFrontBlockMultiplier, "%d", WAVEFRONT_BLOCK_MULTIPLIER);
+ sprintf(blockSize, "%d", WAVEFRONT_BLOCK_MULTIPLIER*m_linkData.getWavefrontSize());
+
+ D3D10_SHADER_MACRO solvePositionsMacros[6] = { "MAX_NUM_VERTICES_PER_WAVE", maxVerticesPerWavefront, "MAX_BATCHES_PER_WAVE", maxBatchesPerWavefront, "WAVEFRONT_SIZE", waveFrontSize, "WAVEFRONT_BLOCK_MULTIPLIER", waveFrontBlockMultiplier, "BLOCK_SIZE", blockSize, 0, 0 };
+
+ solvePositionsFromLinksKernel = dxFunctions.compileComputeShaderFromString( SolvePositionsSIMDBatchedHLSLString, "SolvePositionsFromLinksKernel", sizeof(SolvePositionsFromLinksKernelCB), solvePositionsMacros );
+ if( !solvePositionsFromLinksKernel.constBuffer )
+ returnVal = false;
+
+ updateVelocitiesFromPositionsWithVelocitiesKernel = dxFunctions.compileComputeShaderFromString( UpdateNodesHLSLString, "updateVelocitiesFromPositionsWithVelocitiesKernel", sizeof(UpdateVelocitiesFromPositionsWithVelocitiesCB) );
+ if( !updateVelocitiesFromPositionsWithVelocitiesKernel.constBuffer )
+ returnVal = false;
+ updateVelocitiesFromPositionsWithoutVelocitiesKernel = dxFunctions.compileComputeShaderFromString( UpdatePositionsHLSLString, "updateVelocitiesFromPositionsWithoutVelocitiesKernel", sizeof(UpdateVelocitiesFromPositionsWithoutVelocitiesCB));
+ if( !updateVelocitiesFromPositionsWithoutVelocitiesKernel.constBuffer )
+ returnVal = false;
+ integrateKernel = dxFunctions.compileComputeShaderFromString( IntegrateHLSLString, "IntegrateKernel", sizeof(IntegrateCB) );
+ if( !integrateKernel.constBuffer )
+ returnVal = false;
+ applyForcesKernel = dxFunctions.compileComputeShaderFromString( ApplyForcesHLSLString, "ApplyForcesKernel", sizeof(ApplyForcesCB) );
+ if( !applyForcesKernel.constBuffer )
+ returnVal = false;
+ solveCollisionsAndUpdateVelocitiesKernel = dxFunctions.compileComputeShaderFromString( SolveCollisionsAndUpdateVelocitiesHLSLString, "SolveCollisionsAndUpdateVelocitiesKernel", sizeof(SolveCollisionsAndUpdateVelocitiesCB) );
+ if( !solveCollisionsAndUpdateVelocitiesKernel.constBuffer )
+ returnVal = false;
+ resetNormalsAndAreasKernel = dxFunctions.compileComputeShaderFromString( UpdateNormalsHLSLString, "ResetNormalsAndAreasKernel", sizeof(UpdateSoftBodiesCB) );
+ if( !resetNormalsAndAreasKernel.constBuffer )
+ returnVal = false;
+ normalizeNormalsAndAreasKernel = dxFunctions.compileComputeShaderFromString( UpdateNormalsHLSLString, "NormalizeNormalsAndAreasKernel", sizeof(UpdateSoftBodiesCB) );
+ if( !normalizeNormalsAndAreasKernel.constBuffer )
+ returnVal = false;
+ updateSoftBodiesKernel = dxFunctions.compileComputeShaderFromString( UpdateNormalsHLSLString, "UpdateSoftBodiesKernel", sizeof(UpdateSoftBodiesCB) );
+ if( !updateSoftBodiesKernel.constBuffer )
+ returnVal = false;
+
+ computeBoundsKernel = dxFunctions.compileComputeShaderFromString( ComputeBoundsHLSLString, "ComputeBoundsKernel", sizeof(ComputeBoundsCB) );
+ if( !computeBoundsKernel.constBuffer )
+ returnVal = false;
+
+ if( returnVal )
+ m_shadersInitialized = true;
+
+ return returnVal;
+} // btDX11SIMDAwareSoftBodySolver::buildShaders
+
+static Vectormath::Aos::Transform3 toTransform3( const btTransform &transform )
+{
+ Vectormath::Aos::Transform3 outTransform;
+ outTransform.setCol(0, toVector3(transform.getBasis().getColumn(0)));
+ outTransform.setCol(1, toVector3(transform.getBasis().getColumn(1)));
+ outTransform.setCol(2, toVector3(transform.getBasis().getColumn(2)));
+ outTransform.setCol(3, toVector3(transform.getOrigin()));
+ return outTransform;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+static void generateBatchesOfWavefronts( btAlignedObjectArray < btAlignedObjectArray <int> > &linksForWavefronts, btSoftBodyLinkData &linkData, int numVertices, btAlignedObjectArray < btAlignedObjectArray <int> > &wavefrontBatches )
+{
+ // A per-batch map of truth values stating whether a given vertex is in that batch
+ // This allows us to significantly optimize the batching
+ btAlignedObjectArray <btAlignedObjectArray<bool> > mapOfVerticesInBatches;
+
+ for( int waveIndex = 0; waveIndex < linksForWavefronts.size(); ++waveIndex )
+ {
+ btAlignedObjectArray <int> &wavefront( linksForWavefronts[waveIndex] );
+
+ int batch = 0;
+ bool placed = false;
+ while( batch < wavefrontBatches.size() && !placed )
+ {
+ // Test the current batch, see if this wave shares any vertex with the waves in the batch
+ bool foundSharedVertex = false;
+ for( int link = 0; link < wavefront.size(); ++link )
+ {
+ btSoftBodyLinkData::LinkNodePair vertices = linkData.getVertexPair( wavefront[link] );
+ if( (mapOfVerticesInBatches[batch])[vertices.vertex0] || (mapOfVerticesInBatches[batch])[vertices.vertex1] )
+ {
+ foundSharedVertex = true;
+ }
+ }
+
+ if( !foundSharedVertex )
+ {
+ wavefrontBatches[batch].push_back( waveIndex );
+ // Insert vertices into this batch too
+ for( int link = 0; link < wavefront.size(); ++link )
+ {
+ btSoftBodyLinkData::LinkNodePair vertices = linkData.getVertexPair( wavefront[link] );
+ (mapOfVerticesInBatches[batch])[vertices.vertex0] = true;
+ (mapOfVerticesInBatches[batch])[vertices.vertex1] = true;
+ }
+ placed = true;
+ }
+ batch++;
+ }
+ if( batch == wavefrontBatches.size() && !placed )
+ {
+ wavefrontBatches.resize( batch + 1 );
+ wavefrontBatches[batch].push_back( waveIndex );
+
+ // And resize map as well
+ mapOfVerticesInBatches.resize( batch + 1 );
+
+ // Resize maps with total number of vertices
+ mapOfVerticesInBatches[batch].resize( numVertices+1, false );
+
+ // Insert vertices into this batch too
+ for( int link = 0; link < wavefront.size(); ++link )
+ {
+ btSoftBodyLinkData::LinkNodePair vertices = linkData.getVertexPair( wavefront[link] );
+ (mapOfVerticesInBatches[batch])[vertices.vertex0] = true;
+ (mapOfVerticesInBatches[batch])[vertices.vertex1] = true;
+ }
+ }
+ }
+ mapOfVerticesInBatches.clear();
+}
+
+// Function to remove an object from a vector maintaining correct ordering of the vector
+template< typename T > static void removeFromVector( btAlignedObjectArray< T > &vectorToUpdate, int indexToRemove )
+{
+ int currentSize = vectorToUpdate.size();
+ for( int i = indexToRemove; i < (currentSize-1); ++i )
+ {
+ vectorToUpdate[i] = vectorToUpdate[i+1];
+ }
+ if( currentSize > 0 )
+ vectorToUpdate.resize( currentSize - 1 );
+}
+
+/**
+ * Insert element into vectorToUpdate at index index.
+ */
+template< typename T > static void insertAtIndex( btAlignedObjectArray< T > &vectorToUpdate, int index, T element )
+{
+ vectorToUpdate.resize( vectorToUpdate.size() + 1 );
+ for( int i = (vectorToUpdate.size() - 1); i > index; --i )
+ {
+ vectorToUpdate[i] = vectorToUpdate[i-1];
+ }
+ vectorToUpdate[index] = element;
+}
+
+/**
+ * Insert into btAlignedObjectArray assuming the array is ordered and maintaining both ordering and uniqueness.
+ * ie it treats vectorToUpdate as an ordered set.
+ */
+template< typename T > static void insertUniqueAndOrderedIntoVector( btAlignedObjectArray<T> &vectorToUpdate, T element )
+{
+ int index = 0;
+ while( index < vectorToUpdate.size() && vectorToUpdate[index] < element )
+ {
+ index++;
+ }
+ if( index == vectorToUpdate.size() || vectorToUpdate[index] != element )
+ insertAtIndex( vectorToUpdate, index, element );
+}
+
+static void generateLinksPerVertex( int numVertices, btSoftBodyLinkData &linkData, btAlignedObjectArray< int > &listOfLinksPerVertex, btAlignedObjectArray <int> &numLinksPerVertex, int &maxLinks )
+{
+ for( int linkIndex = 0; linkIndex < linkData.getNumLinks(); ++linkIndex )
+ {
+ btSoftBodyLinkData::LinkNodePair nodes( linkData.getVertexPair(linkIndex) );
+ numLinksPerVertex[nodes.vertex0]++;
+ numLinksPerVertex[nodes.vertex1]++;
+ }
+ int maxLinksPerVertex = 0;
+ for( int vertexIndex = 0; vertexIndex < numVertices; ++vertexIndex )
+ {
+ maxLinksPerVertex = btMax(numLinksPerVertex[vertexIndex], maxLinksPerVertex);
+ }
+ maxLinks = maxLinksPerVertex;
+
+ btAlignedObjectArray< int > linksFoundPerVertex;
+ linksFoundPerVertex.resize( numVertices, 0 );
+
+ listOfLinksPerVertex.resize( maxLinksPerVertex * numVertices );
+
+ for( int linkIndex = 0; linkIndex < linkData.getNumLinks(); ++linkIndex )
+ {
+ btSoftBodyLinkData::LinkNodePair nodes( linkData.getVertexPair(linkIndex) );
+ {
+ // Do vertex 0
+ int vertexIndex = nodes.vertex0;
+ int linkForVertex = linksFoundPerVertex[nodes.vertex0];
+ int linkAddress = vertexIndex * maxLinksPerVertex + linkForVertex;
+
+ listOfLinksPerVertex[linkAddress] = linkIndex;
+
+ linksFoundPerVertex[nodes.vertex0] = linkForVertex + 1;
+ }
+ {
+ // Do vertex 1
+ int vertexIndex = nodes.vertex1;
+ int linkForVertex = linksFoundPerVertex[nodes.vertex1];
+ int linkAddress = vertexIndex * maxLinksPerVertex + linkForVertex;
+
+ listOfLinksPerVertex[linkAddress] = linkIndex;
+
+ linksFoundPerVertex[nodes.vertex1] = linkForVertex + 1;
+ }
+ }
+}
+
+static void computeBatchingIntoWavefronts(
+ btSoftBodyLinkData &linkData,
+ int wavefrontSize,
+ int linksPerWorkItem,
+ int maxLinksPerWavefront,
+ btAlignedObjectArray < btAlignedObjectArray <int> > &linksForWavefronts,
+ btAlignedObjectArray< btAlignedObjectArray < btAlignedObjectArray <int> > > &batchesWithinWaves, /* wave, batch, links in batch */
+ btAlignedObjectArray< btAlignedObjectArray< int > > &verticesForWavefronts /* wavefront, vertex */
+ )
+{
+
+
+ // Attempt generation of larger batches of links.
+ btAlignedObjectArray< bool > processedLink;
+ processedLink.resize( linkData.getNumLinks() );
+ btAlignedObjectArray< int > listOfLinksPerVertex;
+ int maxLinksPerVertex = 0;
+
+ // Count num vertices
+ int numVertices = 0;
+ for( int linkIndex = 0; linkIndex < linkData.getNumLinks(); ++linkIndex )
+ {
+ btSoftBodyLinkData::LinkNodePair nodes( linkData.getVertexPair(linkIndex) );
+ numVertices = btMax( numVertices, nodes.vertex0 + 1 );
+ numVertices = btMax( numVertices, nodes.vertex1 + 1 );
+ }
+
+ // Need list of links per vertex
+ // Compute valence of each vertex
+ btAlignedObjectArray <int> numLinksPerVertex;
+ numLinksPerVertex.resize(0);
+ numLinksPerVertex.resize( numVertices, 0 );
+
+ generateLinksPerVertex( numVertices, linkData, listOfLinksPerVertex, numLinksPerVertex, maxLinksPerVertex );
+
+
+ // At this point we know what links we have for each vertex so we can start batching
+
+ // We want a vertex to start with, let's go with 0
+ int currentVertex = 0;
+ int linksProcessed = 0;
+
+ btAlignedObjectArray <int> verticesToProcess;
+
+ while( linksProcessed < linkData.getNumLinks() )
+ {
+ // Next wavefront
+ int nextWavefront = linksForWavefronts.size();
+ linksForWavefronts.resize( nextWavefront + 1 );
+ btAlignedObjectArray <int> &linksForWavefront(linksForWavefronts[nextWavefront]);
+ verticesForWavefronts.resize( nextWavefront + 1 );
+ btAlignedObjectArray<int> &vertexSet( verticesForWavefronts[nextWavefront] );
+
+ linksForWavefront.resize(0);
+
+ // Loop to find enough links to fill the wavefront
+ // Stopping if we either run out of links, or fill it
+ while( linksProcessed < linkData.getNumLinks() && linksForWavefront.size() < maxLinksPerWavefront )
+ {
+ // Go through the links for the current vertex
+ for( int link = 0; link < numLinksPerVertex[currentVertex] && linksForWavefront.size() < maxLinksPerWavefront; ++link )
+ {
+ int linkAddress = currentVertex * maxLinksPerVertex + link;
+ int linkIndex = listOfLinksPerVertex[linkAddress];
+
+ // If we have not already processed this link, add it to the wavefront
+ // Claim it as another processed link
+ // Add the vertex at the far end to the list of vertices to process.
+ if( !processedLink[linkIndex] )
+ {
+ linksForWavefront.push_back( linkIndex );
+ linksProcessed++;
+ processedLink[linkIndex] = true;
+ int v0 = linkData.getVertexPair(linkIndex).vertex0;
+ int v1 = linkData.getVertexPair(linkIndex).vertex1;
+ if( v0 == currentVertex )
+ verticesToProcess.push_back( v1 );
+ else
+ verticesToProcess.push_back( v0 );
+ }
+ }
+ if( verticesToProcess.size() > 0 )
+ {
+ // Get the element on the front of the queue and remove it
+ currentVertex = verticesToProcess[0];
+ removeFromVector( verticesToProcess, 0 );
+ } else {
+ // If we've not yet processed all the links, find the first unprocessed one
+ // and select one of its vertices as the current vertex
+ if( linksProcessed < linkData.getNumLinks() )
+ {
+ int searchLink = 0;
+ while( processedLink[searchLink] )
+ searchLink++;
+ currentVertex = linkData.getVertexPair(searchLink).vertex0;
+ }
+ }
+ }
+
+ // We have either finished or filled a wavefront
+ for( int link = 0; link < linksForWavefront.size(); ++link )
+ {
+ int v0 = linkData.getVertexPair( linksForWavefront[link] ).vertex0;
+ int v1 = linkData.getVertexPair( linksForWavefront[link] ).vertex1;
+ insertUniqueAndOrderedIntoVector( vertexSet, v0 );
+ insertUniqueAndOrderedIntoVector( vertexSet, v1 );
+ }
+ // Iterate over links mapped to the wave and batch those
+ // We can run a batch on each cycle trivially
+
+ batchesWithinWaves.resize( batchesWithinWaves.size() + 1 );
+ btAlignedObjectArray < btAlignedObjectArray <int> > &batchesWithinWave( batchesWithinWaves[batchesWithinWaves.size()-1] );
+
+
+ for( int link = 0; link < linksForWavefront.size(); ++link )
+ {
+ int linkIndex = linksForWavefront[link];
+ btSoftBodyLinkData::LinkNodePair vertices = linkData.getVertexPair( linkIndex );
+
+ int batch = 0;
+ bool placed = false;
+ while( batch < batchesWithinWave.size() && !placed )
+ {
+ bool foundSharedVertex = false;
+ if( batchesWithinWave[batch].size() >= wavefrontSize )
+ {
+ // If we have already filled this batch, move on to another
+ foundSharedVertex = true;
+ } else {
+ for( int link2 = 0; link2 < batchesWithinWave[batch].size(); ++link2 )
+ {
+ btSoftBodyLinkData::LinkNodePair vertices2 = linkData.getVertexPair( (batchesWithinWave[batch])[link2] );
+
+ if( vertices.vertex0 == vertices2.vertex0 ||
+ vertices.vertex1 == vertices2.vertex0 ||
+ vertices.vertex0 == vertices2.vertex1 ||
+ vertices.vertex1 == vertices2.vertex1 )
+ {
+ foundSharedVertex = true;
+ break;
+ }
+ }
+ }
+ if( !foundSharedVertex )
+ {
+ batchesWithinWave[batch].push_back( linkIndex );
+ placed = true;
+ } else {
+ ++batch;
+ }
+ }
+ if( batch == batchesWithinWave.size() && !placed )
+ {
+ batchesWithinWave.resize( batch + 1 );
+ batchesWithinWave[batch].push_back( linkIndex );
+ }
+ }
+
+ }
+
+}
+
+void btSoftBodyLinkDataDX11SIMDAware::generateBatches()
+{
+ btAlignedObjectArray < btAlignedObjectArray <int> > linksForWavefronts;
+ btAlignedObjectArray < btAlignedObjectArray <int> > wavefrontBatches;
+ btAlignedObjectArray< btAlignedObjectArray < btAlignedObjectArray <int> > > batchesWithinWaves;
+ btAlignedObjectArray< btAlignedObjectArray< int > > verticesForWavefronts; // wavefronts, vertices in wavefront as an ordered set
+
+ // Group the links into wavefronts
+ computeBatchingIntoWavefronts( *this, m_wavefrontSize, m_linksPerWorkItem, m_maxLinksPerWavefront, linksForWavefronts, batchesWithinWaves, verticesForWavefronts );
+
+
+ // Batch the wavefronts
+ generateBatchesOfWavefronts( linksForWavefronts, *this, m_maxVertex, wavefrontBatches );
+
+ m_numWavefronts = linksForWavefronts.size();
+
+ // At this point we have a description of which links we need to process in each wavefront
+
+ // First correctly fill the batch ranges vector
+ int numBatches = wavefrontBatches.size();
+ m_wavefrontBatchStartLengths.resize(0);
+ int prefixSum = 0;
+ for( int batchIndex = 0; batchIndex < numBatches; ++batchIndex )
+ {
+ int wavesInBatch = wavefrontBatches[batchIndex].size();
+ int nextPrefixSum = prefixSum + wavesInBatch;
+ m_wavefrontBatchStartLengths.push_back( BatchPair( prefixSum, nextPrefixSum - prefixSum ) );
+
+ prefixSum += wavesInBatch;
+ }
+
+ // Also find max number of batches within a wave
+ m_maxBatchesWithinWave = 0;
+ m_maxVerticesWithinWave = 0;
+ m_numBatchesAndVerticesWithinWaves.resize( m_numWavefronts );
+ for( int waveIndex = 0; waveIndex < m_numWavefronts; ++waveIndex )
+ {
+ // See if the number of batches in this wave is greater than the current maxium
+ int batchesInCurrentWave = batchesWithinWaves[waveIndex].size();
+ int verticesInCurrentWave = verticesForWavefronts[waveIndex].size();
+ m_maxBatchesWithinWave = btMax( batchesInCurrentWave, m_maxBatchesWithinWave );
+ m_maxVerticesWithinWave = btMax( verticesInCurrentWave, m_maxVerticesWithinWave );
+ }
+
+ // Add padding values both for alignment and as dudd addresses within LDS to compute junk rather than branch around
+ m_maxVerticesWithinWave = 16*((m_maxVerticesWithinWave/16)+2);
+
+ // Now we know the maximum number of vertices per-wave we can resize the global vertices array
+ m_wavefrontVerticesGlobalAddresses.resize( m_maxVerticesWithinWave * m_numWavefronts );
+
+ // Grab backup copies of all the link data arrays for the sorting process
+ btAlignedObjectArray<btSoftBodyLinkData::LinkNodePair> m_links_Backup(m_links);
+ btAlignedObjectArray<float> m_linkStrength_Backup(m_linkStrength);
+ btAlignedObjectArray<float> m_linksMassLSC_Backup(m_linksMassLSC);
+ btAlignedObjectArray<float> m_linksRestLengthSquared_Backup(m_linksRestLengthSquared);
+ //btAlignedObjectArray<Vectormath::Aos::Vector3> m_linksCLength_Backup(m_linksCLength);
+ //btAlignedObjectArray<float> m_linksLengthRatio_Backup(m_linksLengthRatio);
+ btAlignedObjectArray<float> m_linksRestLength_Backup(m_linksRestLength);
+ btAlignedObjectArray<float> m_linksMaterialLinearStiffnessCoefficient_Backup(m_linksMaterialLinearStiffnessCoefficient);
+
+ // Resize to a wavefront sized batch per batch per wave so we get perfectly coherent memory accesses.
+ m_links.resize( m_maxBatchesWithinWave * m_wavefrontSize * m_numWavefronts );
+ m_linkVerticesLocalAddresses.resize( m_maxBatchesWithinWave * m_wavefrontSize * m_numWavefronts );
+ m_linkStrength.resize( m_maxBatchesWithinWave * m_wavefrontSize * m_numWavefronts );
+ m_linksMassLSC.resize( m_maxBatchesWithinWave * m_wavefrontSize * m_numWavefronts );
+ m_linksRestLengthSquared.resize( m_maxBatchesWithinWave * m_wavefrontSize * m_numWavefronts );
+ m_linksRestLength.resize( m_maxBatchesWithinWave * m_wavefrontSize * m_numWavefronts );
+ m_linksMaterialLinearStiffnessCoefficient.resize( m_maxBatchesWithinWave * m_wavefrontSize * m_numWavefronts );
+
+ // Then re-order links into wavefront blocks
+
+ // Total number of wavefronts moved. This will decide the ordering of sorted wavefronts.
+ int wavefrontCount = 0;
+
+ // Iterate over batches of wavefronts, then wavefronts in the batch
+ for( int batchIndex = 0; batchIndex < numBatches; ++batchIndex )
+ {
+ btAlignedObjectArray <int> &batch( wavefrontBatches[batchIndex] );
+ int wavefrontsInBatch = batch.size();
+
+
+ for( int wavefrontIndex = 0; wavefrontIndex < wavefrontsInBatch; ++wavefrontIndex )
+ {
+
+ int originalWavefrontIndex = batch[wavefrontIndex];
+ btAlignedObjectArray< int > &wavefrontVertices( verticesForWavefronts[originalWavefrontIndex] );
+ int verticesUsedByWavefront = wavefrontVertices.size();
+
+ // Copy the set of vertices into the correctly structured array for use on the device
+ // Fill the non-vertices with -1s
+ // so we can mask out those reads
+ for( int vertex = 0; vertex < verticesUsedByWavefront; ++vertex )
+ {
+ m_wavefrontVerticesGlobalAddresses[m_maxVerticesWithinWave * wavefrontCount + vertex] = wavefrontVertices[vertex];
+ }
+ for( int vertex = verticesUsedByWavefront; vertex < m_maxVerticesWithinWave; ++vertex )
+ {
+ m_wavefrontVerticesGlobalAddresses[m_maxVerticesWithinWave * wavefrontCount + vertex] = -1;
+ }
+
+ // Obtain the set of batches within the current wavefront
+ btAlignedObjectArray < btAlignedObjectArray <int> > &batchesWithinWavefront( batchesWithinWaves[originalWavefrontIndex] );
+ // Set the size of the batches for use in the solver, correctly ordered
+ NumBatchesVerticesPair batchesAndVertices;
+ batchesAndVertices.numBatches = batchesWithinWavefront.size();
+ batchesAndVertices.numVertices = verticesUsedByWavefront;
+ m_numBatchesAndVerticesWithinWaves[wavefrontCount] = batchesAndVertices;
+
+
+ // Now iterate over batches within the wavefront to structure the links correctly
+ for( int wavefrontBatch = 0; wavefrontBatch < batchesWithinWavefront.size(); ++wavefrontBatch )
+ {
+ btAlignedObjectArray <int> &linksInBatch( batchesWithinWavefront[wavefrontBatch] );
+ int wavefrontBatchSize = linksInBatch.size();
+
+ int batchAddressInTarget = m_maxBatchesWithinWave * m_wavefrontSize * wavefrontCount + m_wavefrontSize * wavefrontBatch;
+
+ for( int linkIndex = 0; linkIndex < wavefrontBatchSize; ++linkIndex )
+ {
+ int originalLinkAddress = linksInBatch[linkIndex];
+ // Reorder simple arrays trivially
+ m_links[batchAddressInTarget + linkIndex] = m_links_Backup[originalLinkAddress];
+ m_linkStrength[batchAddressInTarget + linkIndex] = m_linkStrength_Backup[originalLinkAddress];
+ m_linksMassLSC[batchAddressInTarget + linkIndex] = m_linksMassLSC_Backup[originalLinkAddress];
+ m_linksRestLengthSquared[batchAddressInTarget + linkIndex] = m_linksRestLengthSquared_Backup[originalLinkAddress];
+ m_linksRestLength[batchAddressInTarget + linkIndex] = m_linksRestLength_Backup[originalLinkAddress];
+ m_linksMaterialLinearStiffnessCoefficient[batchAddressInTarget + linkIndex] = m_linksMaterialLinearStiffnessCoefficient_Backup[originalLinkAddress];
+
+ // The local address is more complicated. We need to work out where a given vertex will end up
+ // by searching the set of vertices for this link and using the index as the local address
+ btSoftBodyLinkData::LinkNodePair localPair;
+ btSoftBodyLinkData::LinkNodePair globalPair = m_links[batchAddressInTarget + linkIndex];
+ localPair.vertex0 = wavefrontVertices.findLinearSearch( globalPair.vertex0 );
+ localPair.vertex1 = wavefrontVertices.findLinearSearch( globalPair.vertex1 );
+ m_linkVerticesLocalAddresses[batchAddressInTarget + linkIndex] = localPair;
+ }
+ for( int linkIndex = wavefrontBatchSize; linkIndex < m_wavefrontSize; ++linkIndex )
+ {
+ // Put 0s into these arrays for padding for cleanliness
+ m_links[batchAddressInTarget + linkIndex] = btSoftBodyLinkData::LinkNodePair(0, 0);
+ m_linkStrength[batchAddressInTarget + linkIndex] = 0.f;
+ m_linksMassLSC[batchAddressInTarget + linkIndex] = 0.f;
+ m_linksRestLengthSquared[batchAddressInTarget + linkIndex] = 0.f;
+ m_linksRestLength[batchAddressInTarget + linkIndex] = 0.f;
+ m_linksMaterialLinearStiffnessCoefficient[batchAddressInTarget + linkIndex] = 0.f;
+
+
+ // For local addresses of junk data choose a set of addresses just above the range of valid ones
+ // and cycling tyhrough % 16 so that we don't have bank conficts between all dud addresses
+ // The valid addresses will do scatter and gather in the valid range, the junk ones should happily work
+ // off the end of that range so we need no control
+ btSoftBodyLinkData::LinkNodePair localPair;
+ localPair.vertex0 = verticesUsedByWavefront + (linkIndex % 16);
+ localPair.vertex1 = verticesUsedByWavefront + (linkIndex % 16);
+ m_linkVerticesLocalAddresses[batchAddressInTarget + linkIndex] = localPair;
+ }
+
+ }
+
+
+ wavefrontCount++;
+ }
+
+
+ }
+
+} // void btSoftBodyLinkDataDX11SIMDAware::generateBatches()
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "vectormath/vmInclude.h"
+#include "btSoftBodySolver_DX11.h"
+#include "btSoftBodySolverVertexBuffer_DX11.h"
+#include "btSoftBodySolverLinkData_DX11SIMDAware.h"
+#include "btSoftBodySolverVertexData_DX11.h"
+#include "btSoftBodySolverTriangleData_DX11.h"
+
+
+#ifndef BT_SOFT_BODY_DX11_SOLVER_SIMDAWARE_H
+#define BT_SOFT_BODY_DX11_SOLVER_SIMDAWARE_H
+
+class btDX11SIMDAwareSoftBodySolver : public btDX11SoftBodySolver
+{
+protected:
+ struct SolvePositionsFromLinksKernelCB
+ {
+ int startWave;
+ int numWaves;
+ float kst;
+ float ti;
+ };
+
+
+ /** Link data for all cloths. Note that this will be sorted batch-wise for efficient computation and m_linkAddresses will maintain the addressing. */
+ btSoftBodyLinkDataDX11SIMDAware m_linkData;
+
+ /** Variable to define whether we need to update solver constants on the next iteration */
+ bool m_updateSolverConstants;
+
+
+ virtual bool buildShaders();
+
+ void updateConstants( float timeStep );
+
+
+ //////////////////////////////////////
+ // Kernel dispatches
+
+
+ void solveLinksForPosition( int startLink, int numLinks, float kst, float ti );
+
+ // End kernel dispatches
+ /////////////////////////////////////
+
+
+
+public:
+ btDX11SIMDAwareSoftBodySolver(ID3D11Device * dx11Device, ID3D11DeviceContext* dx11Context, DXFunctions::CompileFromMemoryFunc dx11CompileFromMemory = &D3DX11CompileFromMemory);
+
+ virtual ~btDX11SIMDAwareSoftBodySolver();
+
+ virtual btSoftBodyLinkData &getLinkData();
+
+ virtual void optimize( btAlignedObjectArray< btSoftBody * > &softBodies , bool forceUpdate=false);
+
+ virtual void solveConstraints( float solverdt );
+
+ virtual SolverTypes getSolverType() const
+ {
+ return DX_SIMD_SOLVER;
+ }
+
+};
+
+#endif // #ifndef BT_SOFT_BODY_DX11_SOLVER_SIMDAWARE_H
+
--- /dev/null
+
+hasDX11 = findDirectX11()
+
+if (hasDX11) then
+
+ project "BulletSoftBodyDX11Solvers"
+
+ initDirectX11()
+
+ kind "StaticLib"
+
+ targetdir "../../../../lib"
+
+ includedirs {
+ ".",
+ "../../.."
+ }
+ files {
+ "**.cpp",
+ "**.h"
+ }
+
+end
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/ccmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target install
+install: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install
+
+# Special rule for the target install
+install/fast: preinstall/fast
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install/fast
+
+# Special rule for the target install/local
+install/local: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
+.PHONY : install/local
+
+# Special rule for the target install/local
+install/local/fast: install/local
+.PHONY : install/local/fast
+
+# Special rule for the target install/strip
+install/strip: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
+.PHONY : install/strip
+
+# Special rule for the target install/strip
+install/strip/fast: install/strip
+.PHONY : install/strip/fast
+
+# Special rule for the target list_install_components
+list_install_components:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
+.PHONY : list_install_components
+
+# Special rule for the target list_install_components
+list_install_components/fast: list_install_components
+.PHONY : list_install_components/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/CMakeFiles/progress.marks
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/GpuSoftBodySolvers/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/GpuSoftBodySolvers/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/GpuSoftBodySolvers/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/GpuSoftBodySolvers/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... edit_cache"
+ @echo "... install"
+ @echo "... install/local"
+ @echo "... install/strip"
+ @echo "... list_install_components"
+ @echo "... rebuild_cache"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
--- /dev/null
+
+INCLUDE_DIRECTORIES(
+ ${BULLET_PHYSICS_SOURCE_DIR}/src
+ ${AMD_OPENCL_INCLUDES}
+)
+
+ADD_DEFINITIONS(-DUSE_AMD_OPENCL)
+ADD_DEFINITIONS(-DCL_PLATFORM_AMD)
+
+
+
+SET(BulletSoftBodyOpenCLSolvers_SRCS
+ ../btSoftBodySolver_OpenCL.cpp
+ ../btSoftBodySolver_OpenCLSIMDAware.cpp
+ ../btSoftBodySolverOutputCLtoGL.cpp
+)
+
+SET(BulletSoftBodyOpenCLSolvers_HDRS
+ ../btSoftBodySolver_OpenCL.h
+ ../btSoftBodySolver_OpenCLSIMDAware.h
+ ../../Shared/btSoftBodySolverData.h
+ ../btSoftBodySolverVertexData_OpenCL.h
+ ../btSoftBodySolverTriangleData_OpenCL.h
+ ../btSoftBodySolverLinkData_OpenCL.h
+ ../btSoftBodySolverLinkData_OpenCLSIMDAware.h
+ ../btSoftBodySolverBuffer_OpenCL.h
+ ../btSoftBodySolverVertexBuffer_OpenGL.h
+ ../btSoftBodySolverOutputCLtoGL.h
+)
+
+
+
+
+ADD_LIBRARY(BulletSoftBodySolvers_OpenCL_AMD
+ ${BulletSoftBodyOpenCLSolvers_SRCS}
+ ${BulletSoftBodyOpenCLSolvers_HDRS}
+)
+
+SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_AMD PROPERTIES VERSION ${BULLET_VERSION})
+SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_AMD PROPERTIES SOVERSION ${BULLET_VERSION})
+IF (BUILD_SHARED_LIBS)
+ TARGET_LINK_LIBRARIES(BulletSoftBodySolvers_OpenCL_AMD BulletSoftBody)
+ENDIF (BUILD_SHARED_LIBS)
+
+
+IF (INSTALL_LIBS)
+ IF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ IF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS BulletSoftBodySolvers_OpenCL_AMD DESTINATION .)
+ ELSE (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS BulletSoftBodySolvers_OpenCL_AMD DESTINATION lib${LIB_SUFFIX})
+#headers are already installed by BulletMultiThreaded library
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_AMD PROPERTIES FRAMEWORK true)
+ SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_AMD PROPERTIES PUBLIC_HEADER "${BulletSoftBodyOpenCLSolvers_HDRS}")
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ ENDIF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ENDIF (INSTALL_LIBS)
--- /dev/null
+
+hasCL = findOpenCL_AMD()
+
+if (hasCL) then
+
+ project "BulletSoftBodySolvers_OpenCL_AMD"
+
+ defines { "USE_AMD_OPENCL","CL_PLATFORM_AMD"}
+
+ initOpenCL_AMD()
+
+ kind "StaticLib"
+
+ targetdir "../../../../../lib"
+
+ includedirs {
+ ".",
+ "../../../..",
+ "../../../../../Glut"
+ }
+ files {
+ "../btSoftBodySolver_OpenCL.cpp",
+ "../btSoftBodySolver_OpenCLSIMDAware.cpp",
+ "../btSoftBodySolverOutputCLtoGL.cpp"
+ }
+
+end
--- /dev/null
+
+INCLUDE_DIRECTORIES(
+${BULLET_PHYSICS_SOURCE_DIR}/src
+)
+
+
+
+
+SET(BulletSoftBodyOpenCLSolvers_SRCS
+ ../btSoftBodySolver_OpenCL.cpp
+ ../btSoftBodySolver_OpenCLSIMDAware.cpp
+)
+
+SET(BulletSoftBodyOpenCLSolvers_HDRS
+ ../btSoftBodySolver_OpenCL.h
+ ../../Shared/btSoftBodySolverData.h
+ ../btSoftBodySolverVertexData_OpenCL.h
+ ../btSoftBodySolverTriangleData_OpenCL.h
+ ../btSoftBodySolverLinkData_OpenCL.h
+ ../btSoftBodySolverBuffer_OpenCL.h
+)
+
+# OpenCL and HLSL Shaders.
+# Build rules generated to stringify these into headers
+# which are needed by some of the sources
+SET(BulletSoftBodyOpenCLSolvers_Shaders
+# OutputToVertexArray
+ UpdateNormals
+ Integrate
+ UpdatePositions
+ UpdateNodes
+ SolvePositions
+ UpdatePositionsFromVelocities
+ ApplyForces
+ PrepareLinks
+ VSolveLinks
+)
+
+foreach(f ${BulletSoftBodyOpenCLSolvers_Shaders})
+ LIST(APPEND BulletSoftBodyOpenCLSolvers_OpenCLC "../OpenCLC10/${f}.cl")
+endforeach(f)
+
+
+
+ADD_LIBRARY(BulletSoftBodySolvers_OpenCL_Apple
+ ${BulletSoftBodyOpenCLSolvers_SRCS}
+ ${BulletSoftBodyOpenCLSolvers_HDRS}
+ ${BulletSoftBodyOpenCLSolvers_OpenCLC}
+)
+
+SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Apple PROPERTIES VERSION ${BULLET_VERSION})
+SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Apple PROPERTIES SOVERSION ${BULLET_VERSION})
+IF (BUILD_SHARED_LIBS)
+ IF (APPLE AND (BUILD_SHARED_LIBS OR FRAMEWORK) )
+ SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Apple PROPERTIES LINK_FLAGS "-framework OpenCL")
+ ENDIF (APPLE AND (BUILD_SHARED_LIBS OR FRAMEWORK) )
+ TARGET_LINK_LIBRARIES(BulletSoftBodySolvers_OpenCL_Apple BulletSoftBody)
+ENDIF (BUILD_SHARED_LIBS)
+
+
+IF (INSTALL_LIBS)
+ IF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ IF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS BulletSoftBodySolvers_OpenCL_Apple DESTINATION .)
+ ELSE (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS BulletSoftBodySolvers_OpenCL_Apple DESTINATION lib${LIB_SUFFIX})
+#headers are already installed by BulletMultiThreaded library
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Apple PROPERTIES FRAMEWORK true)
+ SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Apple PROPERTIES PUBLIC_HEADER "${BulletSoftBodyOpenCLSolvers_HDRS}")
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ ENDIF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ENDIF (INSTALL_LIBS)
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Relative path conversion top directories.
+SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+
+# Force unix paths in dependencies.
+SET(CMAKE_FORCE_UNIX_PATHS 1)
+
+# The C and CXX include file search paths:
+SET(CMAKE_C_INCLUDE_PATH
+ "/usr/local/include"
+ "src"
+ )
+SET(CMAKE_CXX_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+SET(CMAKE_Fortran_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+
+# The C and CXX include file regular expressions for this directory.
+SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
--- /dev/null
+ SUBDIRS( MiniCL )
+
+IF(BUILD_INTEL_OPENCL_DEMOS)
+ SUBDIRS(Intel)
+ENDIF()
+
+IF(BUILD_AMD_OPENCL_DEMOS)
+ SUBDIRS(AMD)
+ENDIF()
+
+IF(BUILD_NVIDIA_OPENCL_DEMOS)
+ SUBDIRS(NVidia)
+ENDIF()
+
+IF(APPLE AND OPENCL_LIBRARY)
+ SUBDIRS(Apple)
+ENDIF()
--- /dev/null
+
+INCLUDE_DIRECTORIES(
+ ${BULLET_PHYSICS_SOURCE_DIR}/src
+ ${INTEL_OPENCL_INCLUDES}
+)
+
+ADD_DEFINITIONS(-DUSE_INTEL_OPENCL)
+ADD_DEFINITIONS(-DCL_PLATFORM_INTEL)
+
+
+
+SET(BulletSoftBodyOpenCLSolvers_SRCS
+ ../btSoftBodySolver_OpenCL.cpp
+ ../btSoftBodySolver_OpenCLSIMDAware.cpp
+ ../btSoftBodySolverOutputCLtoGL.cpp
+)
+
+SET(BulletSoftBodyOpenCLSolvers_HDRS
+ ../btSoftBodySolver_OpenCL.h
+ ../btSoftBodySolver_OpenCLSIMDAware.h
+ ../../Shared/btSoftBodySolverData.h
+ ../btSoftBodySolverVertexData_OpenCL.h
+ ../btSoftBodySolverTriangleData_OpenCL.h
+ ../btSoftBodySolverLinkData_OpenCL.h
+ ../btSoftBodySolverLinkData_OpenCLSIMDAware.h
+ ../btSoftBodySolverBuffer_OpenCL.h
+ ../btSoftBodySolverVertexBuffer_OpenGL.h
+ ../btSoftBodySolverOutputCLtoGL.h
+)
+
+# OpenCL and HLSL Shaders.
+# Build rules generated to stringify these into headers
+# which are needed by some of the sources
+SET(BulletSoftBodyOpenCLSolvers_Shaders
+# OutputToVertexArray
+ UpdateNormals
+ Integrate
+ UpdatePositions
+ UpdateNodes
+ SolvePositions
+ UpdatePositionsFromVelocities
+ ApplyForces
+ PrepareLinks
+ VSolveLinks
+)
+
+foreach(f ${BulletSoftBodyOpenCLSolvers_Shaders})
+ LIST(APPEND BulletSoftBodyOpenCLSolvers_OpenCLC "../OpenCLC10/${f}.cl")
+endforeach(f)
+
+
+
+ADD_LIBRARY(BulletSoftBodySolvers_OpenCL_Intel
+ ${BulletSoftBodyOpenCLSolvers_SRCS}
+ ${BulletSoftBodyOpenCLSolvers_HDRS}
+ ${BulletSoftBodyOpenCLSolvers_OpenCLC}
+)
+
+SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Intel PROPERTIES VERSION ${BULLET_VERSION})
+SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Intel PROPERTIES SOVERSION ${BULLET_VERSION})
+IF (BUILD_SHARED_LIBS)
+ TARGET_LINK_LIBRARIES(BulletSoftBodySolvers_OpenCL_Intel BulletSoftBody)
+ENDIF (BUILD_SHARED_LIBS)
+
+
+IF (INSTALL_LIBS)
+ IF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ IF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS BulletSoftBodySolvers_OpenCL_Intel DESTINATION .)
+ ELSE (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS BulletSoftBodySolvers_OpenCL_Intel DESTINATION lib${LIB_SUFFIX})
+#headers are already installed by BulletMultiThreaded library
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Intel PROPERTIES FRAMEWORK true)
+ SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Intel PROPERTIES PUBLIC_HEADER "${BulletSoftBodyOpenCLSolvers_HDRS}")
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ ENDIF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ENDIF (INSTALL_LIBS)
--- /dev/null
+
+hasCL = findOpenCL_Intel()
+
+if (hasCL) then
+
+ project "BulletSoftBodySolvers_OpenCL_Intel"
+
+ defines { "USE_INTEL_OPENCL","CL_PLATFORM_INTEL"}
+
+ initOpenCL_Intel()
+
+ kind "StaticLib"
+
+ targetdir "../../../../../lib"
+
+ includedirs {
+ ".",
+ "../../../..",
+ "../../../../../Glut"
+ }
+ files {
+ "../btSoftBodySolver_OpenCL.cpp",
+ "../btSoftBodySolver_OpenCLSIMDAware.cpp",
+ "../btSoftBodySolverOutputCLtoGL.cpp"
+ }
+
+end
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/ccmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target install
+install: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install
+
+# Special rule for the target install
+install/fast: preinstall/fast
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install/fast
+
+# Special rule for the target install/local
+install/local: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
+.PHONY : install/local
+
+# Special rule for the target install/local
+install/local/fast: install/local
+.PHONY : install/local/fast
+
+# Special rule for the target install/strip
+install/strip: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
+.PHONY : install/strip
+
+# Special rule for the target install/strip
+install/strip/fast: install/strip
+.PHONY : install/strip/fast
+
+# Special rule for the target list_install_components
+list_install_components:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
+.PHONY : list_install_components
+
+# Special rule for the target list_install_components
+list_install_components/fast: list_install_components
+.PHONY : list_install_components/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/CMakeFiles/progress.marks
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... edit_cache"
+ @echo "... install"
+ @echo "... install/local"
+ @echo "... install/strip"
+ @echo "... list_install_components"
+ @echo "... rebuild_cache"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
--- /dev/null
+#IncludeRegexLine: ^[ ]*#[ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/ApplyForces.cl
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/Integrate.cl
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/PrepareLinks.cl
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/SolveCollisionsAndUpdateVelocities.cl
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/SolvePositions.cl
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateConstants.cl
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateFixedVertexPositions.cl
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateNodes.cl
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateNormals.cl
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdatePositions.cl
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdatePositionsFromVelocities.cl
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/VSolveLinks.cl
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverBuffer_OpenCL.h
+MiniCL/cl.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/cl.h
+OpenCL/OpenCL.h
+-
+CL/cl.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverLinkData_OpenCL.h
+BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h
+btSoftBodySolverBuffer_OpenCL.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverBuffer_OpenCL.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverTriangleData_OpenCL.h
+BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h
+btSoftBodySolverBuffer_OpenCL.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverBuffer_OpenCL.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverVertexData_OpenCL.h
+BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h
+btSoftBodySolverBuffer_OpenCL.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverBuffer_OpenCL.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp
+BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+vectormath/vmInclude.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/vectormath/vmInclude.h
+stdio.h
+-
+btSoftBodySolver_OpenCL.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.h
+BulletSoftBody/btSoftBodySolverVertexBuffer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/BulletSoftBody/btSoftBodySolverVertexBuffer.h
+BulletSoftBody/btSoftBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/BulletSoftBody/btSoftBody.h
+BulletSoftBody/btSoftBodyInternals.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/BulletSoftBody/btSoftBodyInternals.h
+BulletCollision/CollisionShapes/btCapsuleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/BulletCollision/CollisionShapes/btCapsuleShape.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/BulletCollision/CollisionShapes/btSphereShape.h
+LinearMath/btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/LinearMath/btQuickprof.h
+limits.h
+-
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+MiniCL/cl.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/cl.h
+OpenCL/OpenCL.h
+-
+CL/cl.h
+-
+OpenCLC10/PrepareLinks.cl
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/PrepareLinks.cl
+OpenCLC10/UpdatePositionsFromVelocities.cl
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdatePositionsFromVelocities.cl
+OpenCLC10/SolvePositions.cl
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/SolvePositions.cl
+OpenCLC10/UpdateNodes.cl
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateNodes.cl
+OpenCLC10/UpdatePositions.cl
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdatePositions.cl
+OpenCLC10/UpdateConstants.cl
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateConstants.cl
+OpenCLC10/Integrate.cl
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/Integrate.cl
+OpenCLC10/ApplyForces.cl
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/ApplyForces.cl
+OpenCLC10/UpdateFixedVertexPositions.cl
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateFixedVertexPositions.cl
+OpenCLC10/UpdateNormals.cl
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateNormals.cl
+OpenCLC10/VSolveLinks.cl
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/VSolveLinks.cl
+OpenCLC10/SolveCollisionsAndUpdateVelocities.cl
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/SolveCollisionsAndUpdateVelocities.cl
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.h
+stddef.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/stddef.h
+vectormath/vmInclude.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/vectormath/vmInclude.h
+BulletSoftBody/btSoftBodySolvers.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/BulletSoftBody/btSoftBodySolvers.h
+BulletSoftBody/btSoftBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/BulletSoftBody/btSoftBody.h
+btSoftBodySolverBuffer_OpenCL.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverBuffer_OpenCL.h
+btSoftBodySolverLinkData_OpenCL.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverLinkData_OpenCL.h
+btSoftBodySolverVertexData_OpenCL.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverVertexData_OpenCL.h
+btSoftBodySolverTriangleData_OpenCL.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverTriangleData_OpenCL.h
+
+src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+btBroadphaseProxy.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+
+src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btScalar.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+
+src/BulletCollision/BroadphaseCollision/btDbvt.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btTransform.h
+LinearMath/btAabbUtil2.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAabbUtil2.h
+emmintrin.h
+-
+memory.h
+-
+string.h
+-
+
+src/BulletCollision/BroadphaseCollision/btDispatcher.h
+LinearMath/btScalar.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+
+src/BulletCollision/CollisionDispatch/btCollisionObject.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+LinearMath/btMotionState.h
+src/BulletCollision/CollisionDispatch/LinearMath/btMotionState.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+LinearMath/btScalar.h
+src/BulletCollision/CollisionDispatch/LinearMath/btScalar.h
+
+src/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+
+src/BulletCollision/CollisionShapes/btCapsuleShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+btCollisionShape.h
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btTriangleCallback.h
+src/BulletCollision/CollisionShapes/btTriangleCallback.h
+
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+btConvexShape.h
+src/BulletCollision/CollisionShapes/btConvexShape.h
+LinearMath/btAabbUtil2.h
+src/BulletCollision/CollisionShapes/LinearMath/btAabbUtil2.h
+
+src/BulletCollision/CollisionShapes/btConvexShape.h
+btCollisionShape.h
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btCollisionMargin.h
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedAllocator.h
+
+src/BulletCollision/CollisionShapes/btSphereShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+btTriangleCallback.h
+src/BulletCollision/CollisionShapes/btTriangleCallback.h
+btConcaveShape.h
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+
+src/BulletCollision/CollisionShapes/btTriangleCallback.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+
+src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+btStridingMeshInterface.h
+src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+LinearMath/btScalar.h
+src/BulletCollision/CollisionShapes/LinearMath/btScalar.h
+
+src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+
+src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btConvexShape.h
+
+src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btTransformUtil.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransformUtil.h
+physics_effects/base_level/solver/pfx_constraint_row.h
+src/BulletCollision/NarrowPhaseCollision/physics_effects/base_level/solver/pfx_constraint_row.h
+
+src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+btManifoldPoint.h
+src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btAlignedAllocator.h
+
+src/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/Dynamics/LinearMath/btAlignedObjectArray.h
+LinearMath/btTransform.h
+src/BulletDynamics/Dynamics/LinearMath/btTransform.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/Dynamics/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/Dynamics/BulletCollision/CollisionDispatch/btCollisionObject.h
+
+src/BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h
+BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/Shared/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+vectormath/vmInclude.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/Shared/vectormath/vmInclude.h
+
+src/BulletSoftBody/btSoftBody.h
+LinearMath/btAlignedObjectArray.h
+src/BulletSoftBody/LinearMath/btAlignedObjectArray.h
+LinearMath/btTransform.h
+src/BulletSoftBody/LinearMath/btTransform.h
+LinearMath/btIDebugDraw.h
+src/BulletSoftBody/LinearMath/btIDebugDraw.h
+BulletDynamics/Dynamics/btRigidBody.h
+src/BulletSoftBody/BulletDynamics/Dynamics/btRigidBody.h
+BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletSoftBody/BulletCollision/CollisionShapes/btConcaveShape.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btSparseSDF.h
+src/BulletSoftBody/btSparseSDF.h
+BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletSoftBody/BulletCollision/BroadphaseCollision/btDbvt.h
+
+src/BulletSoftBody/btSoftBodyInternals.h
+btSoftBody.h
+src/BulletSoftBody/btSoftBody.h
+LinearMath/btQuickprof.h
+src/BulletSoftBody/LinearMath/btQuickprof.h
+LinearMath/btPolarDecomposition.h
+src/BulletSoftBody/LinearMath/btPolarDecomposition.h
+BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletSoftBody/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletSoftBody/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletSoftBody/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+string.h
+-
+
+src/BulletSoftBody/btSoftBodySolverVertexBuffer.h
+
+src/BulletSoftBody/btSoftBodySolvers.h
+BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletSoftBody/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+
+src/BulletSoftBody/btSparseSDF.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletSoftBody/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+
+src/LinearMath/btAabbUtil2.h
+btTransform.h
+src/LinearMath/btTransform.h
+btVector3.h
+src/LinearMath/btVector3.h
+btMinMax.h
+src/LinearMath/btMinMax.h
+
+src/LinearMath/btAlignedAllocator.h
+btScalar.h
+src/LinearMath/btScalar.h
+
+src/LinearMath/btAlignedObjectArray.h
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+memory.h
+-
+string.h
+-
+new
+-
+
+src/LinearMath/btIDebugDraw.h
+btVector3.h
+src/LinearMath/btVector3.h
+btTransform.h
+src/LinearMath/btTransform.h
+
+src/LinearMath/btMatrix3x3.h
+btVector3.h
+src/LinearMath/btVector3.h
+btQuaternion.h
+src/LinearMath/btQuaternion.h
+stdio.h
+-
+
+src/LinearMath/btMinMax.h
+btScalar.h
+src/LinearMath/btScalar.h
+
+src/LinearMath/btMotionState.h
+btTransform.h
+src/LinearMath/btTransform.h
+
+src/LinearMath/btPolarDecomposition.h
+btMatrix3x3.h
+src/LinearMath/btMatrix3x3.h
+
+src/LinearMath/btQuadWord.h
+btScalar.h
+src/LinearMath/btScalar.h
+btMinMax.h
+src/LinearMath/btMinMax.h
+altivec.h
+-
+
+src/LinearMath/btQuaternion.h
+btVector3.h
+src/LinearMath/btVector3.h
+btQuadWord.h
+src/LinearMath/btQuadWord.h
+
+src/LinearMath/btQuickprof.h
+stdio.h
+-
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+new
+-
+
+src/LinearMath/btScalar.h
+math.h
+-
+stdlib.h
+-
+float.h
+-
+ppcintrinsics.h
+-
+emmintrin.h
+-
+stdio.h
+-
+assert.h
+-
+assert.h
+-
+spu_printf.h
+-
+assert.h
+-
+smmintrin.h
+-
+tmmintrin.h
+-
+pmmintrin.h
+-
+emmintrin.h
+-
+arm_neon.h
+-
+assert.h
+-
+stdio.h
+-
+assert.h
+-
+arm_neon.h
+-
+
+src/LinearMath/btTransform.h
+btMatrix3x3.h
+src/LinearMath/btMatrix3x3.h
+
+src/LinearMath/btTransformUtil.h
+btTransform.h
+src/LinearMath/btTransform.h
+
+src/LinearMath/btVector3.h
+btScalar.h
+src/LinearMath/btScalar.h
+btMinMax.h
+src/LinearMath/btMinMax.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+
+src/MiniCL/cl.h
+MiniCL/cl_platform.h
+-
+MiniCL/cl_platform.h
+-
+
+src/MiniCL/cl_platform.h
+AvailabilityMacros.h
+-
+stdint.h
+-
+stddef.h
+-
+
+src/vectormath/neon/vectormath_aos.h
+math.h
+-
+stdio.h
+-
+vec_aos.h
+src/vectormath/neon/vec_aos.h
+quat_aos.h
+src/vectormath/neon/quat_aos.h
+mat_aos.h
+src/vectormath/neon/mat_aos.h
+
+src/vectormath/scalar/vectormath_aos.h
+math.h
+-
+stdio.h
+-
+vec_aos.h
+src/vectormath/scalar/vec_aos.h
+quat_aos.h
+src/vectormath/scalar/quat_aos.h
+mat_aos.h
+src/vectormath/scalar/mat_aos.h
+
+src/vectormath/sse/boolInVec.h
+math.h
+-
+floatInVec.h
+src/vectormath/sse/floatInVec.h
+
+src/vectormath/sse/floatInVec.h
+math.h
+-
+xmmintrin.h
+-
+boolInVec.h
+src/vectormath/sse/boolInVec.h
+
+src/vectormath/sse/mat_aos.h
+
+src/vectormath/sse/quat_aos.h
+
+src/vectormath/sse/vec_aos.h
+
+src/vectormath/sse/vecidx_aos.h
+floatInVec.h
+src/vectormath/sse/floatInVec.h
+
+src/vectormath/sse/vectormath_aos.h
+math.h
+-
+xmmintrin.h
+-
+emmintrin.h
+-
+assert.h
+-
+pmmintrin.h
+-
+vecidx_aos.h
+src/vectormath/sse/vecidx_aos.h
+floatInVec.h
+src/vectormath/sse/floatInVec.h
+boolInVec.h
+src/vectormath/sse/boolInVec.h
+stdio.h
+-
+vec_aos.h
+src/vectormath/sse/vec_aos.h
+quat_aos.h
+src/vectormath/sse/quat_aos.h
+mat_aos.h
+src/vectormath/sse/mat_aos.h
+
+src/vectormath/vmInclude.h
+LinearMath/btScalar.h
+src/vectormath/LinearMath/btScalar.h
+vectormath_aos.h
+-
+sse/vectormath_aos.h
+src/vectormath/sse/vectormath_aos.h
+neon/vectormath_aos.h
+src/vectormath/neon/vectormath_aos.h
+scalar/vectormath_aos.h
+src/vectormath/scalar/vectormath_aos.h
+
--- /dev/null
+# The set of languages for which implicit dependencies are needed:
+SET(CMAKE_DEPENDS_LANGUAGES
+ "CXX"
+ )
+# The set of files for implicit dependencies of each language:
+SET(CMAKE_DEPENDS_CHECK_CXX
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o"
+ )
+SET(CMAKE_CXX_COMPILER_ID "GNU")
+
+# Preprocessor definitions for this target.
+SET(CMAKE_TARGET_DEFINITIONS
+ "USE_GRAPHICAL_BENCHMARK"
+ "USE_MINICL"
+ )
+
+# Targets to which this target links.
+SET(CMAKE_TARGET_LINKED_INFO_FILES
+ )
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# Include any dependencies generated for this target.
+include src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/depend.make
+
+# Include the progress variables for this target.
+include src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/flags.make
+
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/flags.make
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_1)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp
+
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp > CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.i
+
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp -o CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.s
+
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o.requires:
+.PHONY : src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o.requires
+
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o.provides: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o.requires
+ $(MAKE) -f src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/build.make src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o.provides.build
+.PHONY : src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o.provides
+
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o.provides.build: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o
+
+# Object files for target BulletSoftBodySolvers_OpenCL_Mini
+BulletSoftBodySolvers_OpenCL_Mini_OBJECTS = \
+"CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o"
+
+# External object files for target BulletSoftBodySolvers_OpenCL_Mini
+BulletSoftBodySolvers_OpenCL_Mini_EXTERNAL_OBJECTS =
+
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/libBulletSoftBodySolvers_OpenCL_Mini.a: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/libBulletSoftBodySolvers_OpenCL_Mini.a: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/build.make
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/libBulletSoftBodySolvers_OpenCL_Mini.a: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX static library libBulletSoftBodySolvers_OpenCL_Mini.a"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL && $(CMAKE_COMMAND) -P CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/cmake_clean_target.cmake
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/build: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/libBulletSoftBodySolvers_OpenCL_Mini.a
+.PHONY : src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/build
+
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/requires: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o.requires
+.PHONY : src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/requires
+
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL && $(CMAKE_COMMAND) -P CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/cmake_clean.cmake
+.PHONY : src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/clean
+
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/depend
+
--- /dev/null
+FILE(REMOVE_RECURSE
+ "CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o"
+ "libBulletSoftBodySolvers_OpenCL_Mini.pdb"
+ "libBulletSoftBodySolvers_OpenCL_Mini.a"
+)
+
+# Per-language clean rules from dependency scanning.
+FOREACH(lang CXX)
+ INCLUDE(CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/cmake_clean_${lang}.cmake OPTIONAL)
+ENDFOREACH(lang)
--- /dev/null
+FILE(REMOVE_RECURSE
+ "libBulletSoftBodySolvers_OpenCL_Mini.a"
+)
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/ApplyForces.cl
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/Integrate.cl
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/PrepareLinks.cl
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/SolveCollisionsAndUpdateVelocities.cl
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/SolvePositions.cl
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateConstants.cl
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateFixedVertexPositions.cl
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateNodes.cl
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateNormals.cl
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdatePositions.cl
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdatePositionsFromVelocities.cl
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/VSolveLinks.cl
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverBuffer_OpenCL.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverLinkData_OpenCL.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverTriangleData_OpenCL.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverVertexData_OpenCL.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btDbvt.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btCapsuleShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h
+ src/BulletSoftBody/btSoftBody.h
+ src/BulletSoftBody/btSoftBodyInternals.h
+ src/BulletSoftBody/btSoftBodySolverVertexBuffer.h
+ src/BulletSoftBody/btSoftBodySolvers.h
+ src/BulletSoftBody/btSparseSDF.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btPolarDecomposition.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+ src/MiniCL/cl.h
+ src/MiniCL/cl_platform.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/ApplyForces.cl
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/Integrate.cl
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/PrepareLinks.cl
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/SolveCollisionsAndUpdateVelocities.cl
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/SolvePositions.cl
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateConstants.cl
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateFixedVertexPositions.cl
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateNodes.cl
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdateNormals.cl
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdatePositions.cl
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/UpdatePositionsFromVelocities.cl
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/OpenCLC10/VSolveLinks.cl
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverBuffer_OpenCL.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverLinkData_OpenCL.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverTriangleData_OpenCL.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolverVertexData_OpenCL.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/CollisionShapes/btCapsuleShape.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletSoftBody/btSoftBody.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletSoftBody/btSoftBodyInternals.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletSoftBody/btSoftBodySolverVertexBuffer.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletSoftBody/btSoftBodySolvers.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/BulletSoftBody/btSparseSDF.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/LinearMath/btAabbUtil2.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/LinearMath/btAlignedAllocator.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/LinearMath/btIDebugDraw.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/LinearMath/btMatrix3x3.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/LinearMath/btMinMax.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/LinearMath/btMotionState.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/LinearMath/btPolarDecomposition.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/LinearMath/btQuadWord.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/LinearMath/btQuaternion.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/LinearMath/btQuickprof.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/LinearMath/btScalar.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/LinearMath/btTransform.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/LinearMath/btTransformUtil.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/LinearMath/btVector3.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/MiniCL/cl.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/MiniCL/cl_platform.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/vectormath/neon/vectormath_aos.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/vectormath/scalar/vectormath_aos.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/vectormath/sse/boolInVec.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/vectormath/sse/floatInVec.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/vectormath/sse/mat_aos.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/vectormath/sse/quat_aos.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/vectormath/sse/vec_aos.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/vectormath/sse/vecidx_aos.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/vectormath/sse/vectormath_aos.h
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o: src/vectormath/vmInclude.h
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -O3 -DNDEBUG -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk -I/usr/local/include -I/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src
+
+CXX_DEFINES = -DUSE_GRAPHICAL_BENCHMARK -DUSE_MINICL
+
--- /dev/null
+/usr/bin/ar cr libBulletSoftBodySolvers_OpenCL_Mini.a CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o
+/usr/bin/ranlib libBulletSoftBodySolvers_OpenCL_Mini.a
--- /dev/null
+CMAKE_PROGRESS_1 =
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Relative path conversion top directories.
+SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+
+# Force unix paths in dependencies.
+SET(CMAKE_FORCE_UNIX_PATHS 1)
+
+# The C and CXX include file search paths:
+SET(CMAKE_C_INCLUDE_PATH
+ "/usr/local/include"
+ "src"
+ )
+SET(CMAKE_CXX_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+SET(CMAKE_Fortran_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+
+# The C and CXX include file regular expressions for this directory.
+SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
--- /dev/null
+
+INCLUDE_DIRECTORIES(
+${BULLET_PHYSICS_SOURCE_DIR}/src
+)
+
+ADD_DEFINITIONS(-DUSE_MINICL)
+
+
+
+
+SET(BulletSoftBodyOpenCLSolvers_SRCS
+ ../btSoftBodySolver_OpenCL.cpp
+)
+
+SET(BulletSoftBodyOpenCLSolvers_HDRS
+ ../btSoftBodySolver_OpenCL.h
+ ../../Shared/btSoftBodySolverData.h
+ ../btSoftBodySolverVertexData_OpenCL.h
+ ../btSoftBodySolverTriangleData_OpenCL.h
+ ../btSoftBodySolverLinkData_OpenCL.h
+ ../btSoftBodySolverBuffer_OpenCL.h
+)
+
+# OpenCL and HLSL Shaders.
+# Build rules generated to stringify these into headers
+# which are needed by some of the sources
+SET(BulletSoftBodyOpenCLSolvers_Shaders
+# OutputToVertexArray
+ UpdateNormals
+ Integrate
+ UpdatePositions
+ UpdateNodes
+ SolvePositions
+ UpdatePositionsFromVelocities
+ ApplyForces
+ PrepareLinks
+ VSolveLinks
+)
+
+foreach(f ${BulletSoftBodyOpenCLSolvers_Shaders})
+ LIST(APPEND BulletSoftBodyOpenCLSolvers_OpenCLC "../OpenCLC10/${f}.cl")
+endforeach(f)
+
+
+
+ADD_LIBRARY(BulletSoftBodySolvers_OpenCL_Mini
+ ${BulletSoftBodyOpenCLSolvers_SRCS}
+ ${BulletSoftBodyOpenCLSolvers_HDRS}
+ ${BulletSoftBodyOpenCLSolvers_OpenCLC}
+)
+
+SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Mini PROPERTIES VERSION ${BULLET_VERSION})
+SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Mini PROPERTIES SOVERSION ${BULLET_VERSION})
+IF (BUILD_SHARED_LIBS)
+ TARGET_LINK_LIBRARIES(BulletSoftBodySolvers_OpenCL_Mini MiniCL BulletMultiThreaded BulletSoftBody)
+ENDIF (BUILD_SHARED_LIBS)
+
+
+IF (INSTALL_LIBS)
+ IF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ IF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS BulletSoftBodySolvers_OpenCL_Mini DESTINATION .)
+ ELSE (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS BulletSoftBodySolvers_OpenCL_Mini DESTINATION lib${LIB_SUFFIX})
+#headers are already installed by BulletMultiThreaded library
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Mini PROPERTIES FRAMEWORK true)
+ SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Mini PROPERTIES PUBLIC_HEADER "${BulletSoftBodyOpenCLSolvers_HDRS}")
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ ENDIF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ENDIF (INSTALL_LIBS)
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/ccmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target install
+install: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install
+
+# Special rule for the target install
+install/fast: preinstall/fast
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install/fast
+
+# Special rule for the target install/local
+install/local: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
+.PHONY : install/local
+
+# Special rule for the target install/local
+install/local/fast: install/local
+.PHONY : install/local/fast
+
+# Special rule for the target install/strip
+install/strip: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
+.PHONY : install/strip
+
+# Special rule for the target install/strip
+install/strip/fast: install/strip
+.PHONY : install/strip/fast
+
+# Special rule for the target list_install_components
+list_install_components:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
+.PHONY : list_install_components
+
+# Special rule for the target list_install_components
+list_install_components/fast: list_install_components
+.PHONY : list_install_components/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/progress.marks
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Convenience name for target.
+src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/rule:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/rule
+.PHONY : src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/rule
+
+# Convenience name for target.
+BulletSoftBodySolvers_OpenCL_Mini: src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/rule
+.PHONY : BulletSoftBodySolvers_OpenCL_Mini
+
+# fast build rule for target.
+BulletSoftBodySolvers_OpenCL_Mini/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/build.make src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/build
+.PHONY : BulletSoftBodySolvers_OpenCL_Mini/fast
+
+# target to build an object file
+__/btSoftBodySolver_OpenCL.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/build.make src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.o
+.PHONY : __/btSoftBodySolver_OpenCL.o
+
+# target to preprocess a source file
+__/btSoftBodySolver_OpenCL.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/build.make src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.i
+.PHONY : __/btSoftBodySolver_OpenCL.i
+
+# target to generate assembly for a file
+__/btSoftBodySolver_OpenCL.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/build.make src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/CMakeFiles/BulletSoftBodySolvers_OpenCL_Mini.dir/__/btSoftBodySolver_OpenCL.s
+.PHONY : __/btSoftBodySolver_OpenCL.s
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... BulletSoftBodySolvers_OpenCL_Mini"
+ @echo "... edit_cache"
+ @echo "... install"
+ @echo "... install/local"
+ @echo "... install/strip"
+ @echo "... list_install_components"
+ @echo "... rebuild_cache"
+ @echo "... __/btSoftBodySolver_OpenCL.o"
+ @echo "... __/btSoftBodySolver_OpenCL.i"
+ @echo "... __/btSoftBodySolver_OpenCL.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include <MiniCL/cl_MiniCL_Defs.h>
+
+#define MSTRINGIFY(A) A
+#include "../OpenCLC10/ApplyForces.cl"
+#include "../OpenCLC10/Integrate.cl"
+#include "../OpenCLC10/PrepareLinks.cl"
+#include "../OpenCLC10/SolvePositions.cl"
+#include "../OpenCLC10/UpdateNodes.cl"
+#include "../OpenCLC10/UpdateNormals.cl"
+#include "../OpenCLC10/UpdatePositions.cl"
+#include "../OpenCLC10/UpdatePositionsFromVelocities.cl"
+#include "../OpenCLC10/VSolveLinks.cl"
+#include "../OpenCLC10/UpdateFixedVertexPositions.cl"
+//#include "../OpenCLC10/SolveCollisionsAndUpdateVelocities.cl"
+
+
+MINICL_REGISTER(PrepareLinksKernel)
+MINICL_REGISTER(VSolveLinksKernel)
+MINICL_REGISTER(UpdatePositionsFromVelocitiesKernel)
+MINICL_REGISTER(SolvePositionsFromLinksKernel)
+MINICL_REGISTER(updateVelocitiesFromPositionsWithVelocitiesKernel)
+MINICL_REGISTER(updateVelocitiesFromPositionsWithoutVelocitiesKernel)
+MINICL_REGISTER(IntegrateKernel)
+MINICL_REGISTER(ApplyForcesKernel)
+MINICL_REGISTER(ResetNormalsAndAreasKernel)
+MINICL_REGISTER(NormalizeNormalsAndAreasKernel)
+MINICL_REGISTER(UpdateSoftBodiesKernel)
+MINICL_REGISTER(UpdateFixedVertexPositions)
+
+float mydot3a(float4 a, float4 b)
+{
+ return a.x*b.x + a.y*b.y + a.z*b.z;
+}
+
+
+typedef struct
+{
+ int firstObject;
+ int endObject;
+} CollisionObjectIndices;
+
+typedef struct
+{
+ float4 shapeTransform[4]; // column major 4x4 matrix
+ float4 linearVelocity;
+ float4 angularVelocity;
+
+ int softBodyIdentifier;
+ int collisionShapeType;
+
+
+ // Shape information
+ // Compressed from the union
+ float radius;
+ float halfHeight;
+ int upAxis;
+
+ float margin;
+ float friction;
+
+ int padding0;
+
+} CollisionShapeDescription;
+
+// From btBroadphaseProxy.h
+__constant int CAPSULE_SHAPE_PROXYTYPE = 10;
+
+// Multiply column-major matrix against vector
+float4 matrixVectorMul( float4 matrix[4], float4 vector )
+{
+ float4 returnVector;
+ float4 row0 = float4(matrix[0].x, matrix[1].x, matrix[2].x, matrix[3].x);
+ float4 row1 = float4(matrix[0].y, matrix[1].y, matrix[2].y, matrix[3].y);
+ float4 row2 = float4(matrix[0].z, matrix[1].z, matrix[2].z, matrix[3].z);
+ float4 row3 = float4(matrix[0].w, matrix[1].w, matrix[2].w, matrix[3].w);
+ returnVector.x = dot(row0, vector);
+ returnVector.y = dot(row1, vector);
+ returnVector.z = dot(row2, vector);
+ returnVector.w = dot(row3, vector);
+ return returnVector;
+}
+
+__kernel void
+SolveCollisionsAndUpdateVelocitiesKernel(
+ const int numNodes,
+ const float isolverdt,
+ __global int *g_vertexClothIdentifier,
+ __global float4 *g_vertexPreviousPositions,
+ __global float * g_perClothFriction,
+ __global float * g_clothDampingFactor,
+ __global CollisionObjectIndices * g_perClothCollisionObjectIndices,
+ __global CollisionShapeDescription * g_collisionObjectDetails,
+ __global float4 * g_vertexForces,
+ __global float4 *g_vertexVelocities,
+ __global float4 *g_vertexPositions GUID_ARG)
+{
+ int nodeID = get_global_id(0);
+ float4 forceOnVertex = (float4)(0.f, 0.f, 0.f, 0.f);
+
+ if( get_global_id(0) < numNodes )
+ {
+ int clothIdentifier = g_vertexClothIdentifier[nodeID];
+
+ // Abort if this is not a valid cloth
+ if( clothIdentifier < 0 )
+ return;
+
+
+ float4 position (g_vertexPositions[nodeID].xyz, 1.f);
+ float4 previousPosition (g_vertexPreviousPositions[nodeID].xyz, 1.f);
+
+ float clothFriction = g_perClothFriction[clothIdentifier];
+ float dampingFactor = g_clothDampingFactor[clothIdentifier];
+ float velocityCoefficient = (1.f - dampingFactor);
+ float4 difference = position - previousPosition;
+ float4 velocity = difference*velocityCoefficient*isolverdt;
+
+ CollisionObjectIndices collisionObjectIndices = g_perClothCollisionObjectIndices[clothIdentifier];
+
+ int numObjects = collisionObjectIndices.endObject - collisionObjectIndices.firstObject;
+
+ if( numObjects > 0 )
+ {
+ // We have some possible collisions to deal with
+ for( int collision = collisionObjectIndices.firstObject; collision < collisionObjectIndices.endObject; ++collision )
+ {
+ CollisionShapeDescription shapeDescription = g_collisionObjectDetails[collision];
+ float colliderFriction = shapeDescription.friction;
+
+ if( shapeDescription.collisionShapeType == CAPSULE_SHAPE_PROXYTYPE )
+ {
+ // Colliding with a capsule
+
+ float capsuleHalfHeight = shapeDescription.halfHeight;
+ float capsuleRadius = shapeDescription.radius;
+ float capsuleMargin = shapeDescription.margin;
+ int capsuleupAxis = shapeDescription.upAxis;
+
+ // Four columns of worldTransform matrix
+ float4 worldTransform[4];
+ worldTransform[0] = shapeDescription.shapeTransform[0];
+ worldTransform[1] = shapeDescription.shapeTransform[1];
+ worldTransform[2] = shapeDescription.shapeTransform[2];
+ worldTransform[3] = shapeDescription.shapeTransform[3];
+
+ // Correctly define capsule centerline vector
+ float4 c1 (0.f, 0.f, 0.f, 1.f);
+ float4 c2 (0.f, 0.f, 0.f, 1.f);
+ c1.x = select( 0.f, -capsuleHalfHeight, capsuleupAxis == 0 );
+ c1.y = select( 0.f, -capsuleHalfHeight, capsuleupAxis == 1 );
+ c1.z = select( 0.f, -capsuleHalfHeight, capsuleupAxis == 2 );
+ c2.x = -c1.x;
+ c2.y = -c1.y;
+ c2.z = -c1.z;
+
+
+ float4 worldC1 = matrixVectorMul(worldTransform, c1);
+ float4 worldC2 = matrixVectorMul(worldTransform, c2);
+ float4 segment = (worldC2 - worldC1);
+
+ // compute distance of tangent to vertex along line segment in capsule
+ float distanceAlongSegment = -( mydot3a( (worldC1 - position), segment ) / mydot3a(segment, segment) );
+
+ float4 closestPoint = (worldC1 + (segment * distanceAlongSegment));
+ float distanceFromLine = length(position - closestPoint);
+ float distanceFromC1 = length(worldC1 - position);
+ float distanceFromC2 = length(worldC2 - position);
+
+ // Final distance from collision, point to push from, direction to push in
+ // for impulse force
+ float dist;
+ float4 normalVector;
+ if( distanceAlongSegment < 0 )
+ {
+ dist = distanceFromC1;
+ normalVector = float4(normalize(position - worldC1).xyz, 0.f);
+ } else if( distanceAlongSegment > 1.f ) {
+ dist = distanceFromC2;
+ normalVector = float4(normalize(position - worldC2).xyz, 0.f);
+ } else {
+ dist = distanceFromLine;
+ normalVector = float4(normalize(position - closestPoint).xyz, 0.f);
+ }
+
+ float4 colliderLinearVelocity = shapeDescription.linearVelocity;
+ float4 colliderAngularVelocity = shapeDescription.angularVelocity;
+ float4 velocityOfSurfacePoint = colliderLinearVelocity + cross(colliderAngularVelocity, position - float4(worldTransform[0].w, worldTransform[1].w, worldTransform[2].w, 0.f));
+
+ float minDistance = capsuleRadius + capsuleMargin;
+
+ // In case of no collision, this is the value of velocity
+ velocity = (position - previousPosition) * velocityCoefficient * isolverdt;
+
+
+ // Check for a collision
+ if( dist < minDistance )
+ {
+ // Project back to surface along normal
+ position = position + float4(normalVector*(minDistance - dist)*0.9f);
+ velocity = (position - previousPosition) * velocityCoefficient * isolverdt;
+ float4 relativeVelocity = velocity - velocityOfSurfacePoint;
+
+ float4 p1 = normalize(cross(normalVector, segment));
+ float4 p2 = normalize(cross(p1, normalVector));
+ // Full friction is sum of velocities in each direction of plane
+ float4 frictionVector = p1*mydot3a(relativeVelocity, p1) + p2*mydot3a(relativeVelocity, p2);
+
+ // Real friction is peak friction corrected by friction coefficients
+ frictionVector = frictionVector * (colliderFriction*clothFriction);
+
+ float approachSpeed = dot(relativeVelocity, normalVector);
+
+ if( approachSpeed <= 0.0f )
+ forceOnVertex -= frictionVector;
+ }
+ }
+ }
+ }
+
+ g_vertexVelocities[nodeID] = float4(velocity.xyz, 0.f);
+
+ // Update external force
+ g_vertexForces[nodeID] = float4(forceOnVertex.xyz, 0.f);
+
+ g_vertexPositions[nodeID] = float4(position.xyz, 0.f);
+ }
+}
+
+
+MINICL_REGISTER(SolveCollisionsAndUpdateVelocitiesKernel);
+
+
+
+
--- /dev/null
+# Install script for directory: /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL
+
+# Set the install prefix
+IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ SET(CMAKE_INSTALL_PREFIX "/usr/local")
+ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ IF(BUILD_TYPE)
+ STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ ELSE(BUILD_TYPE)
+ SET(CMAKE_INSTALL_CONFIG_NAME "Release")
+ ENDIF(BUILD_TYPE)
+ MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+
+# Set the component getting installed.
+IF(NOT CMAKE_INSTALL_COMPONENT)
+ IF(COMPONENT)
+ MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
+ SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ ELSE(COMPONENT)
+ SET(CMAKE_INSTALL_COMPONENT)
+ ENDIF(COMPONENT)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT)
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE STATIC_LIBRARY FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/libBulletSoftBodySolvers_OpenCL_Mini.a")
+ IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libBulletSoftBodySolvers_OpenCL_Mini.a" AND
+ NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libBulletSoftBodySolvers_OpenCL_Mini.a")
+ EXECUTE_PROCESS(COMMAND "/usr/bin/ranlib" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libBulletSoftBodySolvers_OpenCL_Mini.a")
+ ENDIF()
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
--- /dev/null
+
+ADD_DEFINITIONS(-DUSE_NVIDIA_OPENCL)
+ADD_DEFINITIONS(-DCL_PLATFORM_NVIDIA)
+
+INCLUDE_DIRECTORIES(
+ ${BULLET_PHYSICS_SOURCE_DIR}/src
+ ${NVIDIA_OPENCL_INCLUDES}
+)
+
+
+
+SET(BulletSoftBodyOpenCLSolvers_SRCS
+ ../btSoftBodySolver_OpenCL.cpp
+ ../btSoftBodySolver_OpenCLSIMDAware.cpp
+ ../btSoftBodySolverOutputCLtoGL.cpp
+)
+
+SET(BulletSoftBodyOpenCLSolvers_HDRS
+ ../btSoftBodySolver_OpenCL.h
+ ../../Shared/btSoftBodySolverData.h
+ ../btSoftBodySolverVertexData_OpenCL.h
+ ../btSoftBodySolverTriangleData_OpenCL.h
+ ../btSoftBodySolverLinkData_OpenCL.h
+ ../btSoftBodySolverLinkData_OpenCLSIMDAware.h
+ ../btSoftBodySolverBuffer_OpenCL.h
+ ../btSoftBodySolverVertexBuffer_OpenGL.h
+ ../btSoftBodySolverOutputCLtoGL.h
+)
+
+# OpenCL and HLSL Shaders.
+# Build rules generated to stringify these into headers
+# which are needed by some of the sources
+SET(BulletSoftBodyOpenCLSolvers_Shaders
+# OutputToVertexArray
+ UpdateNormals
+ Integrate
+ UpdatePositions
+ UpdateNodes
+ SolvePositions
+ UpdatePositionsFromVelocities
+ ApplyForces
+ PrepareLinks
+ VSolveLinks
+)
+
+foreach(f ${BulletSoftBodyOpenCLSolvers_Shaders})
+ LIST(APPEND BulletSoftBodyOpenCLSolvers_OpenCLC "../OpenCLC10/${f}.cl")
+endforeach(f)
+
+
+
+ADD_LIBRARY(BulletSoftBodySolvers_OpenCL_NVidia
+ ${BulletSoftBodyOpenCLSolvers_SRCS}
+ ${BulletSoftBodyOpenCLSolvers_HDRS}
+ ${BulletSoftBodyOpenCLSolvers_OpenCLC}
+)
+
+SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_NVidia PROPERTIES VERSION ${BULLET_VERSION})
+SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_NVidia PROPERTIES SOVERSION ${BULLET_VERSION})
+IF (BUILD_SHARED_LIBS)
+ TARGET_LINK_LIBRARIES(BulletSoftBodySolvers_OpenCL_NVidia BulletSoftBody BulletDynamics)
+ENDIF (BUILD_SHARED_LIBS)
+
+
+IF (INSTALL_LIBS)
+ IF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ IF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS BulletSoftBodySolvers_OpenCL_NVidia DESTINATION .)
+ ELSE (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS BulletSoftBodySolvers_OpenCL_NVidia DESTINATION lib${LIB_SUFFIX})
+#headers are already installed by BulletMultiThreaded library
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_NVidia PROPERTIES FRAMEWORK true)
+ SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_NVidia PROPERTIES PUBLIC_HEADER "${BulletSoftBodyOpenCLSolvers_HDRS}")
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ ENDIF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ENDIF (INSTALL_LIBS)
--- /dev/null
+
+hasCL = findOpenCL_NVIDIA()
+
+if (hasCL) then
+
+ project "BulletSoftBodySolvers_OpenCL_NVIDIA"
+
+ defines { "USE_NVIDIA_OPENCL","CL_PLATFORM_NVIDIA"}
+
+ initOpenCL_NVIDIA()
+
+ kind "StaticLib"
+
+ targetdir "../../../../../lib"
+
+ includedirs {
+ ".",
+ "../../../..",
+ "../../../../../Glut"
+ }
+ files {
+ "../btSoftBodySolver_OpenCL.cpp",
+ "../btSoftBodySolver_OpenCLSIMDAware.cpp",
+ "../btSoftBodySolverOutputCLtoGL.cpp"
+ }
+
+end
--- /dev/null
+MSTRINGIFY(
+
+
+float adot3(float4 a, float4 b)
+{
+ return a.x*b.x + a.y*b.y + a.z*b.z;
+}
+
+float alength3(float4 a)
+{
+ a.w = 0;
+ return length(a);
+}
+
+float4 anormalize3(float4 a)
+{
+ a.w = 0;
+ return normalize(a);
+}
+
+float4 projectOnAxis( float4 v, float4 a )
+{
+ return (a*adot3(v, a));
+}
+
+__kernel void
+ApplyForcesKernel(
+ const uint numNodes,
+ const float solverdt,
+ const float epsilon,
+ __global int * g_vertexClothIdentifier,
+ __global float4 * g_vertexNormal,
+ __global float * g_vertexArea,
+ __global float * g_vertexInverseMass,
+ __global float * g_clothLiftFactor,
+ __global float * g_clothDragFactor,
+ __global float4 * g_clothWindVelocity,
+ __global float4 * g_clothAcceleration,
+ __global float * g_clothMediumDensity,
+ __global float4 * g_vertexForceAccumulator,
+ __global float4 * g_vertexVelocity GUID_ARG)
+{
+ unsigned int nodeID = get_global_id(0);
+ if( nodeID < numNodes )
+ {
+ int clothId = g_vertexClothIdentifier[nodeID];
+ float nodeIM = g_vertexInverseMass[nodeID];
+
+ if( nodeIM > 0.0f )
+ {
+ float4 nodeV = g_vertexVelocity[nodeID];
+ float4 normal = g_vertexNormal[nodeID];
+ float area = g_vertexArea[nodeID];
+ float4 nodeF = g_vertexForceAccumulator[nodeID];
+
+ // Read per-cloth values
+ float4 clothAcceleration = g_clothAcceleration[clothId];
+ float4 clothWindVelocity = g_clothWindVelocity[clothId];
+ float liftFactor = g_clothLiftFactor[clothId];
+ float dragFactor = g_clothDragFactor[clothId];
+ float mediumDensity = g_clothMediumDensity[clothId];
+
+ // Apply the acceleration to the cloth rather than do this via a force
+ nodeV += (clothAcceleration*solverdt);
+
+ g_vertexVelocity[nodeID] = nodeV;
+
+ // Aerodynamics
+ float4 rel_v = nodeV - clothWindVelocity;
+ float rel_v_len = alength3(rel_v);
+ float rel_v2 = dot(rel_v, rel_v);
+
+ if( rel_v2 > epsilon )
+ {
+ float4 rel_v_nrm = anormalize3(rel_v);
+ float4 nrm = normal;
+
+ nrm = nrm * (dot(nrm, rel_v) < 0 ? -1.f : 1.f);
+
+ float4 fDrag = (float4)(0.f, 0.f, 0.f, 0.f);
+ float4 fLift = (float4)(0.f, 0.f, 0.f, 0.f);
+
+ float n_dot_v = dot(nrm, rel_v_nrm);
+
+ // drag force
+ if ( dragFactor > 0.f )
+ fDrag = 0.5f * dragFactor * mediumDensity * rel_v2 * area * n_dot_v * (-1.0f) * rel_v_nrm;
+
+ // lift force
+ // Check angle of attack
+ // cos(10º) = 0.98480
+ if ( 0 < n_dot_v && n_dot_v < 0.98480f)
+ fLift = 0.5f * liftFactor * mediumDensity * rel_v_len * area * sqrt(1.0f-n_dot_v*n_dot_v) * (cross(cross(nrm, rel_v_nrm), rel_v_nrm));
+
+ nodeF += fDrag + fLift;
+ g_vertexForceAccumulator[nodeID] = nodeF;
+ }
+ }
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+#pragma OPENCL EXTENSION cl_khr_global_int32_extended_atomics : enable\n
+#pragma OPENCL EXTENSION cl_khr_local_int32_extended_atomics : enable\n
+
+__kernel void
+ComputeBoundsKernel(
+ const int numNodes,
+ const int numSoftBodies,
+ __global int * g_vertexClothIdentifier,
+ __global float4 * g_vertexPositions,
+ /* Unfortunately, to get the atomics below to work these arrays cannot be */
+ /* uint4, though that is the layout of the data */
+ /* Therefore this is little-endian-only code */
+ volatile __global uint * g_clothMinBounds,
+ volatile __global uint * g_clothMaxBounds,
+ volatile __local uint * clothMinBounds,
+ volatile __local uint * clothMaxBounds)
+{
+ // Init min and max bounds arrays
+ if( get_local_id(0) < numSoftBodies )
+ {
+
+ clothMinBounds[get_local_id(0)*4] = UINT_MAX;
+ clothMinBounds[get_local_id(0)*4+1] = UINT_MAX;
+ clothMinBounds[get_local_id(0)*4+2] = UINT_MAX;
+ clothMinBounds[get_local_id(0)*4+3] = UINT_MAX;
+ clothMaxBounds[get_local_id(0)*4] = 0;
+ clothMaxBounds[get_local_id(0)*4+1] = 0;
+ clothMaxBounds[get_local_id(0)*4+2] = 0;
+ clothMaxBounds[get_local_id(0)*4+3] = 0;
+
+ }
+
+ barrier(CLK_LOCAL_MEM_FENCE);
+
+ int nodeID = get_global_id(0);
+ if( nodeID < numNodes )
+ {
+ int clothIdentifier = g_vertexClothIdentifier[nodeID];
+ if( clothIdentifier >= 0 )
+ {
+
+ float4 position = (float4)(g_vertexPositions[nodeID].xyz, 0.f);
+
+ /* Reinterpret position as uint */
+ uint4 positionUInt = (uint4)(as_uint(position.x), as_uint(position.y), as_uint(position.z), 0);
+
+ /* Invert sign bit of positives and whole of negatives to allow comparison as unsigned ints */
+ positionUInt.x ^= (1+~(positionUInt.x >> 31) | 0x80000000);
+ positionUInt.y ^= (1+~(positionUInt.y >> 31) | 0x80000000);
+ positionUInt.z ^= (1+~(positionUInt.z >> 31) | 0x80000000);
+
+ // Min/max with the LDS values
+ atom_min(&(clothMinBounds[clothIdentifier*4]), positionUInt.x);
+ atom_min(&(clothMinBounds[clothIdentifier*4+1]), positionUInt.y);
+ atom_min(&(clothMinBounds[clothIdentifier*4+2]), positionUInt.z);
+
+ atom_max(&(clothMaxBounds[clothIdentifier*4]), positionUInt.x);
+ atom_max(&(clothMaxBounds[clothIdentifier*4+1]), positionUInt.y);
+ atom_max(&(clothMaxBounds[clothIdentifier*4+2]), positionUInt.z);
+ }
+ }
+
+ barrier(CLK_LOCAL_MEM_FENCE);
+
+
+ /* Use global atomics to update the global versions of the data */
+ if( get_local_id(0) < numSoftBodies )
+ {
+ /*atom_min(&(g_clothMinBounds[get_local_id(0)].x), clothMinBounds[get_local_id(0)].x);*/
+ atom_min(&(g_clothMinBounds[get_local_id(0)*4]), clothMinBounds[get_local_id(0)*4]);
+ atom_min(&(g_clothMinBounds[get_local_id(0)*4+1]), clothMinBounds[get_local_id(0)*4+1]);
+ atom_min(&(g_clothMinBounds[get_local_id(0)*4+2]), clothMinBounds[get_local_id(0)*4+2]);
+
+ atom_max(&(g_clothMaxBounds[get_local_id(0)*4]), clothMaxBounds[get_local_id(0)*4]);
+ atom_max(&(g_clothMaxBounds[get_local_id(0)*4+1]), clothMaxBounds[get_local_id(0)*4+1]);
+ atom_max(&(g_clothMaxBounds[get_local_id(0)*4+2]), clothMaxBounds[get_local_id(0)*4+2]);
+ }
+}
+
+
+);
--- /dev/null
+MSTRINGIFY(
+
+// Node indices for each link
+
+
+
+__kernel void
+IntegrateKernel(
+ const int numNodes,
+ const float solverdt,
+ __global float * g_vertexInverseMasses,
+ __global float4 * g_vertexPositions,
+ __global float4 * g_vertexVelocity,
+ __global float4 * g_vertexPreviousPositions,
+ __global float4 * g_vertexForceAccumulator GUID_ARG)
+{
+ int nodeID = get_global_id(0);
+ if( nodeID < numNodes )
+ {
+ float4 position = g_vertexPositions[nodeID];
+ float4 velocity = g_vertexVelocity[nodeID];
+ float4 force = g_vertexForceAccumulator[nodeID];
+ float inverseMass = g_vertexInverseMasses[nodeID];
+
+ g_vertexPreviousPositions[nodeID] = position;
+ velocity += force * inverseMass * solverdt;
+ position += velocity * solverdt;
+
+ g_vertexForceAccumulator[nodeID] = (float4)(0.f, 0.f, 0.f, 0.0f);
+ g_vertexPositions[nodeID] = position;
+ g_vertexVelocity[nodeID] = velocity;
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+__kernel void
+OutputToVertexArrayWithNormalsKernel(
+ const int startNode, const int numNodes, __global float *g_vertexBuffer,
+ const int positionOffset, const int positionStride, const __global float4* g_vertexPositions,
+ const int normalOffset, const int normalStride, const __global float4* g_vertexNormals )
+{
+ int nodeID = get_global_id(0);
+ if( nodeID < numNodes )
+ {
+ float4 position = g_vertexPositions[nodeID + startNode];
+ float4 normal = g_vertexNormals[nodeID + startNode];
+
+ // Stride should account for the float->float4 conversion
+ int positionDestination = nodeID * positionStride + positionOffset;
+ g_vertexBuffer[positionDestination] = position.x;
+ g_vertexBuffer[positionDestination+1] = position.y;
+ g_vertexBuffer[positionDestination+2] = position.z;
+
+ int normalDestination = nodeID * normalStride + normalOffset;
+ g_vertexBuffer[normalDestination] = normal.x;
+ g_vertexBuffer[normalDestination+1] = normal.y;
+ g_vertexBuffer[normalDestination+2] = normal.z;
+ }
+}
+
+__kernel void
+OutputToVertexArrayWithoutNormalsKernel(
+ const int startNode, const int numNodes, __global float *g_vertexBuffer,
+ const int positionOffset, const int positionStride, const __global float4* g_vertexPositions )
+{
+ int nodeID = get_global_id(0);
+ if( nodeID < numNodes )
+ {
+ float4 position = g_vertexPositions[nodeID + startNode];
+
+ // Stride should account for the float->float4 conversion
+ int positionDestination = nodeID * positionStride + positionOffset;
+ g_vertexBuffer[positionDestination] = position.x;
+ g_vertexBuffer[positionDestination+1] = position.y;
+ g_vertexBuffer[positionDestination+2] = position.z;
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+
+
+__kernel void
+PrepareLinksKernel(
+ const int numLinks,
+ __global int2 * g_linksVertexIndices,
+ __global float * g_linksMassLSC,
+ __global float4 * g_nodesPreviousPosition,
+ __global float * g_linksLengthRatio,
+ __global float4 * g_linksCurrentLength GUID_ARG)
+{
+ int linkID = get_global_id(0);
+ if( linkID < numLinks )
+ {
+
+ int2 nodeIndices = g_linksVertexIndices[linkID];
+ int node0 = nodeIndices.x;
+ int node1 = nodeIndices.y;
+
+ float4 nodePreviousPosition0 = g_nodesPreviousPosition[node0];
+ float4 nodePreviousPosition1 = g_nodesPreviousPosition[node1];
+
+ float massLSC = g_linksMassLSC[linkID];
+
+ float4 linkCurrentLength = nodePreviousPosition1 - nodePreviousPosition0;
+ linkCurrentLength.w = 0.f;
+
+ float linkLengthRatio = dot(linkCurrentLength, linkCurrentLength)*massLSC;
+ linkLengthRatio = 1.0f/linkLengthRatio;
+
+ g_linksCurrentLength[linkID] = linkCurrentLength;
+ g_linksLengthRatio[linkID] = linkLengthRatio;
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+
+
+float mydot3a(float4 a, float4 b)
+{
+ return a.x*b.x + a.y*b.y + a.z*b.z;
+}
+
+
+typedef struct
+{
+ int firstObject;
+ int endObject;
+} CollisionObjectIndices;
+
+typedef struct
+{
+ float4 shapeTransform[4]; // column major 4x4 matrix
+ float4 linearVelocity;
+ float4 angularVelocity;
+
+ int softBodyIdentifier;
+ int collisionShapeType;
+
+
+ // Shape information
+ // Compressed from the union
+ float radius;
+ float halfHeight;
+ int upAxis;
+
+ float margin;
+ float friction;
+
+ int padding0;
+
+} CollisionShapeDescription;
+
+// From btBroadphaseProxy.h
+__constant int CAPSULE_SHAPE_PROXYTYPE = 10;
+
+// Multiply column-major matrix against vector
+float4 matrixVectorMul( float4 matrix[4], float4 vector )
+{
+ float4 returnVector;
+ float4 row0 = (float4)(matrix[0].x, matrix[1].x, matrix[2].x, matrix[3].x);
+ float4 row1 = (float4)(matrix[0].y, matrix[1].y, matrix[2].y, matrix[3].y);
+ float4 row2 = (float4)(matrix[0].z, matrix[1].z, matrix[2].z, matrix[3].z);
+ float4 row3 = (float4)(matrix[0].w, matrix[1].w, matrix[2].w, matrix[3].w);
+ returnVector.x = dot(row0, vector);
+ returnVector.y = dot(row1, vector);
+ returnVector.z = dot(row2, vector);
+ returnVector.w = dot(row3, vector);
+ return returnVector;
+}
+
+__kernel void
+SolveCollisionsAndUpdateVelocitiesKernel(
+ const int numNodes,
+ const float isolverdt,
+ __global int *g_vertexClothIdentifier,
+ __global float4 *g_vertexPreviousPositions,
+ __global float * g_perClothFriction,
+ __global float * g_clothDampingFactor,
+ __global CollisionObjectIndices * g_perClothCollisionObjectIndices,
+ __global CollisionShapeDescription * g_collisionObjectDetails,
+ __global float4 * g_vertexForces,
+ __global float4 *g_vertexVelocities,
+ __global float4 *g_vertexPositions GUID_ARG)
+{
+ int nodeID = get_global_id(0);
+ float4 forceOnVertex = (float4)(0.f, 0.f, 0.f, 0.f);
+
+ if( get_global_id(0) < numNodes )
+ {
+ int clothIdentifier = g_vertexClothIdentifier[nodeID];
+
+ // Abort if this is not a valid cloth
+ if( clothIdentifier < 0 )
+ return;
+
+
+ float4 position = (float4)(g_vertexPositions[nodeID].xyz, 1.f);
+ float4 previousPosition = (float4)(g_vertexPreviousPositions[nodeID].xyz, 1.f);
+
+ float clothFriction = g_perClothFriction[clothIdentifier];
+ float dampingFactor = g_clothDampingFactor[clothIdentifier];
+ float velocityCoefficient = (1.f - dampingFactor);
+ float4 difference = position - previousPosition;
+ float4 velocity = difference*velocityCoefficient*isolverdt;
+
+ CollisionObjectIndices collisionObjectIndices = g_perClothCollisionObjectIndices[clothIdentifier];
+
+ int numObjects = collisionObjectIndices.endObject - collisionObjectIndices.firstObject;
+
+ if( numObjects > 0 )
+ {
+ // We have some possible collisions to deal with
+ for( int collision = collisionObjectIndices.firstObject; collision < collisionObjectIndices.endObject; ++collision )
+ {
+ CollisionShapeDescription shapeDescription = g_collisionObjectDetails[collision];
+ float colliderFriction = shapeDescription.friction;
+
+ if( shapeDescription.collisionShapeType == CAPSULE_SHAPE_PROXYTYPE )
+ {
+ // Colliding with a capsule
+
+ float capsuleHalfHeight = shapeDescription.halfHeight;
+ float capsuleRadius = shapeDescription.radius;
+ float capsuleMargin = shapeDescription.margin;
+ int capsuleupAxis = shapeDescription.upAxis;
+
+ // Four columns of worldTransform matrix
+ float4 worldTransform[4];
+ worldTransform[0] = shapeDescription.shapeTransform[0];
+ worldTransform[1] = shapeDescription.shapeTransform[1];
+ worldTransform[2] = shapeDescription.shapeTransform[2];
+ worldTransform[3] = shapeDescription.shapeTransform[3];
+
+ // Correctly define capsule centerline vector
+ float4 c1 = (float4)(0.f, 0.f, 0.f, 1.f);
+ float4 c2 = (float4)(0.f, 0.f, 0.f, 1.f);
+ c1.x = select( 0.f, -capsuleHalfHeight, capsuleupAxis == 0 );
+ c1.y = select( 0.f, -capsuleHalfHeight, capsuleupAxis == 1 );
+ c1.z = select( 0.f, -capsuleHalfHeight, capsuleupAxis == 2 );
+ c2.x = -c1.x;
+ c2.y = -c1.y;
+ c2.z = -c1.z;
+
+
+ float4 worldC1 = matrixVectorMul(worldTransform, c1);
+ float4 worldC2 = matrixVectorMul(worldTransform, c2);
+ float4 segment = (worldC2 - worldC1);
+
+ // compute distance of tangent to vertex along line segment in capsule
+ float distanceAlongSegment = -( mydot3a( (worldC1 - position), segment ) / mydot3a(segment, segment) );
+
+ float4 closestPoint = (worldC1 + (float4)(segment * distanceAlongSegment));
+ float distanceFromLine = length(position - closestPoint);
+ float distanceFromC1 = length(worldC1 - position);
+ float distanceFromC2 = length(worldC2 - position);
+
+ // Final distance from collision, point to push from, direction to push in
+ // for impulse force
+ float dist;
+ float4 normalVector;
+ if( distanceAlongSegment < 0 )
+ {
+ dist = distanceFromC1;
+ normalVector = (float4)(normalize(position - worldC1).xyz, 0.f);
+ } else if( distanceAlongSegment > 1.f ) {
+ dist = distanceFromC2;
+ normalVector = (float4)(normalize(position - worldC2).xyz, 0.f);
+ } else {
+ dist = distanceFromLine;
+ normalVector = (float4)(normalize(position - closestPoint).xyz, 0.f);
+ }
+
+ float4 colliderLinearVelocity = shapeDescription.linearVelocity;
+ float4 colliderAngularVelocity = shapeDescription.angularVelocity;
+ float4 velocityOfSurfacePoint = colliderLinearVelocity + cross(colliderAngularVelocity, position - (float4)(worldTransform[0].w, worldTransform[1].w, worldTransform[2].w, 0.f));
+
+ float minDistance = capsuleRadius + capsuleMargin;
+
+ // In case of no collision, this is the value of velocity
+ velocity = (position - previousPosition) * velocityCoefficient * isolverdt;
+
+
+ // Check for a collision
+ if( dist < minDistance )
+ {
+ // Project back to surface along normal
+ position = position + (float4)((minDistance - dist)*normalVector*0.9f);
+ velocity = (position - previousPosition) * velocityCoefficient * isolverdt;
+ float4 relativeVelocity = velocity - velocityOfSurfacePoint;
+
+ float4 p1 = normalize(cross(normalVector, segment));
+ float4 p2 = normalize(cross(p1, normalVector));
+ // Full friction is sum of velocities in each direction of plane
+ float4 frictionVector = p1*mydot3a(relativeVelocity, p1) + p2*mydot3a(relativeVelocity, p2);
+
+ // Real friction is peak friction corrected by friction coefficients
+ frictionVector = frictionVector * (colliderFriction*clothFriction);
+
+ float approachSpeed = dot(relativeVelocity, normalVector);
+
+ if( approachSpeed <= 0.0f )
+ forceOnVertex -= frictionVector;
+ }
+ }
+ }
+ }
+
+ g_vertexVelocities[nodeID] = (float4)(velocity.xyz, 0.f);
+
+ // Update external force
+ g_vertexForces[nodeID] = (float4)(forceOnVertex.xyz, 0.f);
+
+ g_vertexPositions[nodeID] = (float4)(position.xyz, 0.f);
+ }
+}
+
+);
--- /dev/null
+MSTRINGIFY(
+
+//#pragma OPENCL EXTENSION cl_amd_printf:enable\n
+
+float mydot3a(float4 a, float4 b)
+{
+ return a.x*b.x + a.y*b.y + a.z*b.z;
+}
+
+float mylength3(float4 a)
+{
+ a.w = 0;
+ return length(a);
+}
+
+float4 mynormalize3(float4 a)
+{
+ a.w = 0;
+ return normalize(a);
+}
+
+typedef struct
+{
+ int firstObject;
+ int endObject;
+} CollisionObjectIndices;
+
+typedef struct
+{
+ float4 shapeTransform[4]; // column major 4x4 matrix
+ float4 linearVelocity;
+ float4 angularVelocity;
+
+ int softBodyIdentifier;
+ int collisionShapeType;
+
+
+ // Shape information
+ // Compressed from the union
+ float radius;
+ float halfHeight;
+ int upAxis;
+
+ float margin;
+ float friction;
+
+ int padding0;
+
+} CollisionShapeDescription;
+
+// From btBroadphaseProxy.h
+__constant int CAPSULE_SHAPE_PROXYTYPE = 10;
+
+// Multiply column-major matrix against vector
+float4 matrixVectorMul( float4 matrix[4], float4 vector )
+{
+ float4 returnVector;
+ float4 row0 = (float4)(matrix[0].x, matrix[1].x, matrix[2].x, matrix[3].x);
+ float4 row1 = (float4)(matrix[0].y, matrix[1].y, matrix[2].y, matrix[3].y);
+ float4 row2 = (float4)(matrix[0].z, matrix[1].z, matrix[2].z, matrix[3].z);
+ float4 row3 = (float4)(matrix[0].w, matrix[1].w, matrix[2].w, matrix[3].w);
+ returnVector.x = dot(row0, vector);
+ returnVector.y = dot(row1, vector);
+ returnVector.z = dot(row2, vector);
+ returnVector.w = dot(row3, vector);
+ return returnVector;
+}
+
+__kernel void
+SolveCollisionsAndUpdateVelocitiesKernel(
+ const int numNodes,
+ const float isolverdt,
+ __global int *g_vertexClothIdentifier,
+ __global float4 *g_vertexPreviousPositions,
+ __global float * g_perClothFriction,
+ __global float * g_clothDampingFactor,
+ __global CollisionObjectIndices * g_perClothCollisionObjectIndices,
+ __global CollisionShapeDescription * g_collisionObjectDetails,
+ __global float4 * g_vertexForces,
+ __global float4 *g_vertexVelocities,
+ __global float4 *g_vertexPositions,
+ __local CollisionShapeDescription *localCollisionShapes,
+ __global float * g_vertexInverseMasses)
+{
+ int nodeID = get_global_id(0);
+ float4 forceOnVertex = (float4)(0.f, 0.f, 0.f, 0.f);
+
+ int clothIdentifier = g_vertexClothIdentifier[nodeID];
+
+ // Abort if this is not a valid cloth
+ if( clothIdentifier < 0 )
+ return;
+
+
+ float4 position = (float4)(g_vertexPositions[nodeID].xyz, 0.f);
+ float4 previousPosition = (float4)(g_vertexPreviousPositions[nodeID].xyz, 0.f);
+
+ float clothFriction = g_perClothFriction[clothIdentifier];
+ float dampingFactor = g_clothDampingFactor[clothIdentifier];
+ float velocityCoefficient = (1.f - dampingFactor);
+ float4 difference = position - previousPosition;
+ float4 velocity = difference*velocityCoefficient*isolverdt;
+ float inverseMass = g_vertexInverseMasses[nodeID];
+
+ CollisionObjectIndices collisionObjectIndices = g_perClothCollisionObjectIndices[clothIdentifier];
+
+ int numObjects = collisionObjectIndices.endObject - collisionObjectIndices.firstObject;
+
+ if( numObjects > 0 )
+ {
+ // We have some possible collisions to deal with
+
+ // First load all of the collision objects into LDS
+ int numObjects = collisionObjectIndices.endObject - collisionObjectIndices.firstObject;
+ if( get_local_id(0) < numObjects )
+ {
+ localCollisionShapes[get_local_id(0)] = g_collisionObjectDetails[ collisionObjectIndices.firstObject + get_local_id(0) ];
+ }
+ }
+
+ // Safe as the vertices are padded so that not more than one soft body is in a group
+ barrier(CLK_LOCAL_MEM_FENCE);
+
+ // Annoyingly, even though I know the flow control is not varying, the compiler will not let me skip this
+ if( numObjects > 0 )
+ {
+
+
+ // We have some possible collisions to deal with
+ for( int collision = 0; collision < numObjects; ++collision )
+ {
+ CollisionShapeDescription shapeDescription = localCollisionShapes[collision];
+ float colliderFriction = localCollisionShapes[collision].friction;
+
+ if( localCollisionShapes[collision].collisionShapeType == CAPSULE_SHAPE_PROXYTYPE )
+ {
+ // Colliding with a capsule
+
+ float capsuleHalfHeight = localCollisionShapes[collision].halfHeight;
+ float capsuleRadius = localCollisionShapes[collision].radius;
+ float capsuleMargin = localCollisionShapes[collision].margin;
+ int capsuleupAxis = localCollisionShapes[collision].upAxis;
+
+ if ( capsuleHalfHeight <= 0 )
+ capsuleHalfHeight = 0.0001f;
+ float4 worldTransform[4];
+ worldTransform[0] = localCollisionShapes[collision].shapeTransform[0];
+ worldTransform[1] = localCollisionShapes[collision].shapeTransform[1];
+ worldTransform[2] = localCollisionShapes[collision].shapeTransform[2];
+ worldTransform[3] = localCollisionShapes[collision].shapeTransform[3];
+
+ // Correctly define capsule centerline vector
+ float4 c1 = (float4)(0.f, 0.f, 0.f, 1.f);
+ float4 c2 = (float4)(0.f, 0.f, 0.f, 1.f);
+ c1.x = select( 0.f, -capsuleHalfHeight, capsuleupAxis == 0 );
+ c1.y = select( 0.f, -capsuleHalfHeight, capsuleupAxis == 1 );
+ c1.z = select( 0.f, -capsuleHalfHeight, capsuleupAxis == 2 );
+ c2.x = -c1.x;
+ c2.y = -c1.y;
+ c2.z = -c1.z;
+
+ float4 worldC1 = matrixVectorMul(worldTransform, c1);
+ float4 worldC2 = matrixVectorMul(worldTransform, c2);
+ float4 segment = (float4)((worldC2 - worldC1).xyz, 0.f);
+
+ float4 segmentNormalized = mynormalize3(segment);
+ float distanceAlongSegment =mydot3a( (position - worldC1), segmentNormalized );
+
+ float4 closestPointOnSegment = (worldC1 + (float4)(segmentNormalized * distanceAlongSegment));
+ float distanceFromLine = mylength3(position - closestPointOnSegment);
+ float distanceFromC1 = mylength3(worldC1 - position);
+ float distanceFromC2 = mylength3(worldC2 - position);
+
+ // Final distance from collision, point to push from, direction to push in
+ // for impulse force
+ float dist;
+ float4 normalVector;
+
+ if( distanceAlongSegment < 0 )
+ {
+ dist = distanceFromC1;
+ normalVector = (float4)(normalize(position - worldC1).xyz, 0.f);
+ } else if( distanceAlongSegment > length(segment) ) {
+ dist = distanceFromC2;
+ normalVector = (float4)(normalize(position - worldC2).xyz, 0.f);
+ } else {
+ dist = distanceFromLine;
+ normalVector = (float4)(normalize(position - closestPointOnSegment).xyz, 0.f);
+ }
+
+ float minDistance = capsuleRadius + capsuleMargin;
+ float4 closestPointOnSurface = (float4)((position + (minDistance - dist) * normalVector).xyz, 0.f);
+
+ float4 colliderLinearVelocity = shapeDescription.linearVelocity;
+ float4 colliderAngularVelocity = shapeDescription.angularVelocity;
+ float4 velocityOfSurfacePoint = colliderLinearVelocity + cross(colliderAngularVelocity, closestPointOnSurface - (float4)(worldTransform[0].w, worldTransform[1].w, worldTransform[2].w, 0.f));
+
+
+ // Check for a collision
+ if( dist < minDistance )
+ {
+ // Project back to surface along normal
+ position = closestPointOnSurface;
+ velocity = (position - previousPosition) * velocityCoefficient * isolverdt;
+ float4 relativeVelocity = velocity - velocityOfSurfacePoint;
+
+ float4 p1 = mynormalize3(cross(normalVector, segment));
+ float4 p2 = mynormalize3(cross(p1, normalVector));
+
+ float4 tangentialVel = p1*mydot3a(relativeVelocity, p1) + p2*mydot3a(relativeVelocity, p2);
+ float frictionCoef = (colliderFriction * clothFriction);
+ if (frictionCoef>1.f)
+ frictionCoef = 1.f;
+
+ //only apply friction if objects are not moving apart
+ float projVel = mydot3a(relativeVelocity,normalVector);
+ if ( projVel >= -0.001f)
+ {
+ if ( inverseMass > 0 )
+ {
+ //float4 myforceOnVertex = -tangentialVel * frictionCoef * isolverdt * (1.0f / inverseMass);
+ position += (-tangentialVel * frictionCoef) / (isolverdt);
+ }
+ }
+
+ // In case of no collision, this is the value of velocity
+ velocity = (position - previousPosition) * velocityCoefficient * isolverdt;
+
+ }
+ }
+ }
+ }
+
+ g_vertexVelocities[nodeID] = (float4)(velocity.xyz, 0.f);
+
+ // Update external force
+ g_vertexForces[nodeID] = (float4)(forceOnVertex.xyz, 0.f);
+
+ g_vertexPositions[nodeID] = (float4)(position.xyz, 0.f);
+}
+
+);
--- /dev/null
+
+
+
+MSTRINGIFY(
+
+
+float mydot3(float4 a, float4 b)
+{
+ return a.x*b.x + a.y*b.y + a.z*b.z;
+}
+
+
+__kernel void
+SolvePositionsFromLinksKernel(
+ const int startLink,
+ const int numLinks,
+ const float kst,
+ const float ti,
+ __global int2 * g_linksVertexIndices,
+ __global float * g_linksMassLSC,
+ __global float * g_linksRestLengthSquared,
+ __global float * g_verticesInverseMass,
+ __global float4 * g_vertexPositions GUID_ARG)
+
+{
+ int linkID = get_global_id(0) + startLink;
+ if( get_global_id(0) < numLinks )
+ {
+ float massLSC = g_linksMassLSC[linkID];
+ float restLengthSquared = g_linksRestLengthSquared[linkID];
+
+ if( massLSC > 0.0f )
+ {
+ int2 nodeIndices = g_linksVertexIndices[linkID];
+ int node0 = nodeIndices.x;
+ int node1 = nodeIndices.y;
+
+ float4 position0 = g_vertexPositions[node0];
+ float4 position1 = g_vertexPositions[node1];
+
+ float inverseMass0 = g_verticesInverseMass[node0];
+ float inverseMass1 = g_verticesInverseMass[node1];
+
+ float4 del = position1 - position0;
+ float len = mydot3(del, del);
+ float k = ((restLengthSquared - len)/(massLSC*(restLengthSquared+len)))*kst;
+ position0 = position0 - del*(k*inverseMass0);
+ position1 = position1 + del*(k*inverseMass1);
+
+ g_vertexPositions[node0] = position0;
+ g_vertexPositions[node1] = position1;
+
+ }
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+MSTRINGIFY(
+
+float mydot3(float4 a, float4 b)
+{
+ return a.x*b.x + a.y*b.y + a.z*b.z;
+}
+
+__kernel __attribute__((reqd_work_group_size(WAVEFRONT_BLOCK_MULTIPLIER*WAVEFRONT_SIZE, 1, 1)))
+void
+SolvePositionsFromLinksKernel(
+ const int startWaveInBatch,
+ const int numWaves,
+ const float kst,
+ const float ti,
+ __global int2 *g_wavefrontBatchCountsVertexCounts,
+ __global int *g_vertexAddressesPerWavefront,
+ __global int2 * g_linksVertexIndices,
+ __global float * g_linksMassLSC,
+ __global float * g_linksRestLengthSquared,
+ __global float * g_verticesInverseMass,
+ __global float4 * g_vertexPositions,
+ __local int2 *wavefrontBatchCountsVertexCounts,
+ __local float4 *vertexPositionSharedData,
+ __local float *vertexInverseMassSharedData)
+{
+ const int laneInWavefront = (get_global_id(0) & (WAVEFRONT_SIZE-1));
+ const int wavefront = startWaveInBatch + (get_global_id(0) / WAVEFRONT_SIZE);
+ const int firstWavefrontInBlock = startWaveInBatch + get_group_id(0) * WAVEFRONT_BLOCK_MULTIPLIER;
+ const int localWavefront = wavefront - firstWavefrontInBlock;
+
+ // Mask out in case there's a stray "wavefront" at the end that's been forced in through the multiplier
+ if( wavefront < (startWaveInBatch + numWaves) )
+ {
+ // Load the batch counts for the wavefronts
+
+ int2 batchesAndVerticesWithinWavefront = g_wavefrontBatchCountsVertexCounts[wavefront];
+ int batchesWithinWavefront = batchesAndVerticesWithinWavefront.x;
+ int verticesUsedByWave = batchesAndVerticesWithinWavefront.y;
+
+ // Load the vertices for the wavefronts
+ for( int vertex = laneInWavefront; vertex < verticesUsedByWave; vertex+=WAVEFRONT_SIZE )
+ {
+ int vertexAddress = g_vertexAddressesPerWavefront[wavefront*MAX_NUM_VERTICES_PER_WAVE + vertex];
+
+ vertexPositionSharedData[localWavefront*MAX_NUM_VERTICES_PER_WAVE + vertex] = g_vertexPositions[vertexAddress];
+ vertexInverseMassSharedData[localWavefront*MAX_NUM_VERTICES_PER_WAVE + vertex] = g_verticesInverseMass[vertexAddress];
+ }
+
+ barrier(CLK_LOCAL_MEM_FENCE);
+
+ // Loop through the batches performing the solve on each in LDS
+ int baseDataLocationForWave = WAVEFRONT_SIZE * wavefront * MAX_BATCHES_PER_WAVE;
+
+ //for( int batch = 0; batch < batchesWithinWavefront; ++batch )
+
+ int batch = 0;
+ do
+ {
+ int baseDataLocation = baseDataLocationForWave + WAVEFRONT_SIZE * batch;
+ int locationOfValue = baseDataLocation + laneInWavefront;
+
+
+ // These loads should all be perfectly linear across the WF
+ int2 localVertexIndices = g_linksVertexIndices[locationOfValue];
+ float massLSC = g_linksMassLSC[locationOfValue];
+ float restLengthSquared = g_linksRestLengthSquared[locationOfValue];
+
+ // LDS vertex addresses based on logical wavefront number in block and loaded index
+ int vertexAddress0 = MAX_NUM_VERTICES_PER_WAVE * localWavefront + localVertexIndices.x;
+ int vertexAddress1 = MAX_NUM_VERTICES_PER_WAVE * localWavefront + localVertexIndices.y;
+
+ float4 position0 = vertexPositionSharedData[vertexAddress0];
+ float4 position1 = vertexPositionSharedData[vertexAddress1];
+
+ float inverseMass0 = vertexInverseMassSharedData[vertexAddress0];
+ float inverseMass1 = vertexInverseMassSharedData[vertexAddress1];
+
+ float4 del = position1 - position0;
+ float len = mydot3(del, del);
+
+ float k = 0;
+ if( massLSC > 0.0f )
+ {
+ k = ((restLengthSquared - len)/(massLSC*(restLengthSquared+len)))*kst;
+ }
+
+ position0 = position0 - del*(k*inverseMass0);
+ position1 = position1 + del*(k*inverseMass1);
+
+ // Ensure compiler does not re-order memory operations
+ barrier(CLK_LOCAL_MEM_FENCE);
+
+ vertexPositionSharedData[vertexAddress0] = position0;
+ vertexPositionSharedData[vertexAddress1] = position1;
+
+ // Ensure compiler does not re-order memory operations
+ barrier(CLK_LOCAL_MEM_FENCE);
+
+
+ ++batch;
+ } while( batch < batchesWithinWavefront );
+
+ // Update the global memory vertices for the wavefronts
+ for( int vertex = laneInWavefront; vertex < verticesUsedByWave; vertex+=WAVEFRONT_SIZE )
+ {
+ int vertexAddress = g_vertexAddressesPerWavefront[wavefront*MAX_NUM_VERTICES_PER_WAVE + vertex];
+
+ g_vertexPositions[vertexAddress] = (float4)(vertexPositionSharedData[localWavefront*MAX_NUM_VERTICES_PER_WAVE + vertex].xyz, 0.f);
+ }
+
+ }
+
+}
+
+);
--- /dev/null
+MSTRINGIFY(
+
+/*#define float3 float4
+
+float dot3(float3 a, float3 b)
+{
+ return a.x*b.x + a.y*b.y + a.z*b.z;
+}*/
+
+__kernel void
+UpdateConstantsKernel(
+ const int numLinks,
+ __global int2 * g_linksVertexIndices,
+ __global float4 * g_vertexPositions,
+ __global float * g_vertexInverseMasses,
+ __global float * g_linksMaterialLSC,
+ __global float * g_linksMassLSC,
+ __global float * g_linksRestLengthSquared,
+ __global float * g_linksRestLengths)
+{
+ int linkID = get_global_id(0);
+ if( linkID < numLinks )
+ {
+ int2 nodeIndices = g_linksVertexIndices[linkID];
+ int node0 = nodeIndices.x;
+ int node1 = nodeIndices.y;
+ float linearStiffnessCoefficient = g_linksMaterialLSC[ linkID ];
+
+ float3 position0 = g_vertexPositions[node0].xyz;
+ float3 position1 = g_vertexPositions[node1].xyz;
+ float inverseMass0 = g_vertexInverseMasses[node0];
+ float inverseMass1 = g_vertexInverseMasses[node1];
+
+ float3 difference = position0 - position1;
+ float length2 = dot(difference, difference);
+ float length = sqrt(length2);
+
+ g_linksRestLengths[linkID] = length;
+ g_linksMassLSC[linkID] = (inverseMass0 + inverseMass1)/linearStiffnessCoefficient;
+ g_linksRestLengthSquared[linkID] = length*length;
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+__kernel void
+UpdateFixedVertexPositions(
+ const uint numNodes,
+ __global int * g_anchorIndex,
+ __global float4 * g_vertexPositions,
+ __global float4 * g_anchorPositions GUID_ARG)
+{
+ unsigned int nodeID = get_global_id(0);
+
+ if( nodeID < numNodes )
+ {
+ int anchorIndex = g_anchorIndex[nodeID];
+ float4 position = g_vertexPositions[nodeID];
+
+ if ( anchorIndex >= 0 )
+ {
+ float4 anchorPosition = g_anchorPositions[anchorIndex];
+ g_vertexPositions[nodeID] = anchorPosition;
+ }
+ }
+}
+
+);
--- /dev/null
+MSTRINGIFY(
+
+
+__kernel void
+updateVelocitiesFromPositionsWithVelocitiesKernel(
+ int numNodes,
+ float isolverdt,
+ __global float4 * g_vertexPositions,
+ __global float4 * g_vertexPreviousPositions,
+ __global int * g_vertexClothIndices,
+ __global float *g_clothVelocityCorrectionCoefficients,
+ __global float * g_clothDampingFactor,
+ __global float4 * g_vertexVelocities,
+ __global float4 * g_vertexForces GUID_ARG)
+{
+ int nodeID = get_global_id(0);
+ if( nodeID < numNodes )
+ {
+ float4 position = g_vertexPositions[nodeID];
+ float4 previousPosition = g_vertexPreviousPositions[nodeID];
+ float4 velocity = g_vertexVelocities[nodeID];
+ int clothIndex = g_vertexClothIndices[nodeID];
+ float velocityCorrectionCoefficient = g_clothVelocityCorrectionCoefficients[clothIndex];
+ float dampingFactor = g_clothDampingFactor[clothIndex];
+ float velocityCoefficient = (1.f - dampingFactor);
+
+ float4 difference = position - previousPosition;
+
+ velocity += difference*velocityCorrectionCoefficient*isolverdt;
+
+ // Damp the velocity
+ velocity *= velocityCoefficient;
+
+ g_vertexVelocities[nodeID] = velocity;
+ g_vertexForces[nodeID] = (float4)(0.f, 0.f, 0.f, 0.f);
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+float length3(float4 a)
+{
+ a.w = 0;
+ return length(a);
+}
+
+float4 normalize3(float4 a)
+{
+ a.w = 0;
+ return normalize(a);
+}
+
+__kernel void
+ResetNormalsAndAreasKernel(
+ const unsigned int numNodes,
+ __global float4 * g_vertexNormals,
+ __global float * g_vertexArea GUID_ARG)
+{
+ if( get_global_id(0) < numNodes )
+ {
+ g_vertexNormals[get_global_id(0)] = (float4)(0.0f, 0.0f, 0.0f, 0.0f);
+ g_vertexArea[get_global_id(0)] = 0.0f;
+ }
+}
+
+
+__kernel void
+UpdateSoftBodiesKernel(
+ const unsigned int startFace,
+ const unsigned int numFaces,
+ __global int4 * g_triangleVertexIndexSet,
+ __global float4 * g_vertexPositions,
+ __global float4 * g_vertexNormals,
+ __global float * g_vertexArea,
+ __global float4 * g_triangleNormals,
+ __global float * g_triangleArea GUID_ARG)
+{
+ int faceID = get_global_id(0) + startFace;
+ if( get_global_id(0) < numFaces )
+ {
+ int4 triangleIndexSet = g_triangleVertexIndexSet[ faceID ];
+ int nodeIndex0 = triangleIndexSet.x;
+ int nodeIndex1 = triangleIndexSet.y;
+ int nodeIndex2 = triangleIndexSet.z;
+
+ float4 node0 = g_vertexPositions[nodeIndex0];
+ float4 node1 = g_vertexPositions[nodeIndex1];
+ float4 node2 = g_vertexPositions[nodeIndex2];
+ float4 nodeNormal0 = g_vertexNormals[nodeIndex0];
+ float4 nodeNormal1 = g_vertexNormals[nodeIndex1];
+ float4 nodeNormal2 = g_vertexNormals[nodeIndex2];
+ float vertexArea0 = g_vertexArea[nodeIndex0];
+ float vertexArea1 = g_vertexArea[nodeIndex1];
+ float vertexArea2 = g_vertexArea[nodeIndex2];
+
+ float4 vector0 = node1 - node0;
+ float4 vector1 = node2 - node0;
+
+ float4 faceNormal = cross(vector0, vector1);
+ float triangleArea = length(faceNormal);
+
+ nodeNormal0 = nodeNormal0 + faceNormal;
+ nodeNormal1 = nodeNormal1 + faceNormal;
+ nodeNormal2 = nodeNormal2 + faceNormal;
+ vertexArea0 = vertexArea0 + triangleArea;
+ vertexArea1 = vertexArea1 + triangleArea;
+ vertexArea2 = vertexArea2 + triangleArea;
+
+ g_triangleNormals[faceID] = normalize3(faceNormal);
+ g_vertexNormals[nodeIndex0] = nodeNormal0;
+ g_vertexNormals[nodeIndex1] = nodeNormal1;
+ g_vertexNormals[nodeIndex2] = nodeNormal2;
+ g_triangleArea[faceID] = triangleArea;
+ g_vertexArea[nodeIndex0] = vertexArea0;
+ g_vertexArea[nodeIndex1] = vertexArea1;
+ g_vertexArea[nodeIndex2] = vertexArea2;
+ }
+}
+
+__kernel void
+NormalizeNormalsAndAreasKernel(
+ const unsigned int numNodes,
+ __global int * g_vertexTriangleCount,
+ __global float4 * g_vertexNormals,
+ __global float * g_vertexArea GUID_ARG)
+{
+ if( get_global_id(0) < numNodes )
+ {
+ float4 normal = g_vertexNormals[get_global_id(0)];
+ float area = g_vertexArea[get_global_id(0)];
+ int numTriangles = g_vertexTriangleCount[get_global_id(0)];
+
+ float vectorLength = length3(normal);
+
+ g_vertexNormals[get_global_id(0)] = normalize3(normal);
+ g_vertexArea[get_global_id(0)] = area/(float)(numTriangles);
+ }
+}
+
+);
--- /dev/null
+MSTRINGIFY(
+
+__kernel void
+updateVelocitiesFromPositionsWithoutVelocitiesKernel(
+ const int numNodes,
+ const float isolverdt,
+ __global float4 * g_vertexPositions,
+ __global float4 * g_vertexPreviousPositions,
+ __global int * g_vertexClothIndices,
+ __global float * g_clothDampingFactor,
+ __global float4 * g_vertexVelocities,
+ __global float4 * g_vertexForces GUID_ARG)
+
+{
+ int nodeID = get_global_id(0);
+ if( nodeID < numNodes )
+ {
+ float4 position = g_vertexPositions[nodeID];
+ float4 previousPosition = g_vertexPreviousPositions[nodeID];
+ float4 velocity = g_vertexVelocities[nodeID];
+ int clothIndex = g_vertexClothIndices[nodeID];
+ float dampingFactor = g_clothDampingFactor[clothIndex];
+ float velocityCoefficient = (1.f - dampingFactor);
+
+ float4 difference = position - previousPosition;
+
+ velocity = difference*velocityCoefficient*isolverdt;
+
+ g_vertexVelocities[nodeID] = velocity;
+ g_vertexForces[nodeID] = (float4)(0.f, 0.f, 0.f, 0.f);
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+
+MSTRINGIFY(
+
+
+
+
+__kernel void
+UpdatePositionsFromVelocitiesKernel(
+ const int numNodes,
+ const float solverSDT,
+ __global float4 * g_vertexVelocities,
+ __global float4 * g_vertexPreviousPositions,
+ __global float4 * g_vertexCurrentPosition GUID_ARG)
+{
+ int vertexID = get_global_id(0);
+ if( vertexID < numNodes )
+ {
+ float4 previousPosition = g_vertexPreviousPositions[vertexID];
+ float4 velocity = g_vertexVelocities[vertexID];
+
+ float4 newPosition = previousPosition + velocity*solverSDT;
+
+ g_vertexCurrentPosition[vertexID] = newPosition;
+ g_vertexPreviousPositions[vertexID] = newPosition;
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+MSTRINGIFY(
+
+__kernel void
+VSolveLinksKernel(
+ int startLink,
+ int numLinks,
+ float kst,
+ __global int2 * g_linksVertexIndices,
+ __global float * g_linksLengthRatio,
+ __global float4 * g_linksCurrentLength,
+ __global float * g_vertexInverseMass,
+ __global float4 * g_vertexVelocity GUID_ARG)
+{
+ int linkID = get_global_id(0) + startLink;
+ if( get_global_id(0) < numLinks )
+ {
+ int2 nodeIndices = g_linksVertexIndices[linkID];
+ int node0 = nodeIndices.x;
+ int node1 = nodeIndices.y;
+
+ float linkLengthRatio = g_linksLengthRatio[linkID];
+ float3 linkCurrentLength = g_linksCurrentLength[linkID].xyz;
+
+ float3 vertexVelocity0 = g_vertexVelocity[node0].xyz;
+ float3 vertexVelocity1 = g_vertexVelocity[node1].xyz;
+
+ float vertexInverseMass0 = g_vertexInverseMass[node0];
+ float vertexInverseMass1 = g_vertexInverseMass[node1];
+
+ float3 nodeDifference = vertexVelocity0 - vertexVelocity1;
+ float dotResult = dot(linkCurrentLength, nodeDifference);
+ float j = -dotResult*linkLengthRatio*kst;
+
+ float3 velocityChange0 = linkCurrentLength*(j*vertexInverseMass0);
+ float3 velocityChange1 = linkCurrentLength*(j*vertexInverseMass1);
+
+ vertexVelocity0 += velocityChange0;
+ vertexVelocity1 -= velocityChange1;
+
+ g_vertexVelocity[node0] = (float4)(vertexVelocity0, 0.f);
+ g_vertexVelocity[node1] = (float4)(vertexVelocity1, 0.f);
+ }
+}
+
+);
\ No newline at end of file
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef BT_SOFT_BODY_SOLVER_BUFFER_OPENCL_H
+#define BT_SOFT_BODY_SOLVER_BUFFER_OPENCL_H
+
+// OpenCL support
+
+#ifdef USE_MINICL
+ #include "MiniCL/cl.h"
+#else //USE_MINICL
+ #ifdef __APPLE__
+ #include <OpenCL/OpenCL.h>
+ #else
+ #include <CL/cl.h>
+ #endif //__APPLE__
+#endif//USE_MINICL
+
+#ifndef SAFE_RELEASE
+#define SAFE_RELEASE(p) { if(p) { (p)->Release(); (p)=NULL; } }
+#endif
+
+template <typename ElementType> class btOpenCLBuffer
+{
+public:
+
+ cl_command_queue m_cqCommandQue;
+ cl_context m_clContext;
+ cl_mem m_buffer;
+
+
+
+ btAlignedObjectArray< ElementType > * m_CPUBuffer;
+
+ int m_gpuSize;
+ bool m_onGPU;
+ bool m_readOnlyOnGPU;
+ bool m_allocated;
+
+
+ bool createBuffer( cl_mem* preexistingBuffer = 0)
+ {
+
+ cl_int err;
+
+
+ if( preexistingBuffer )
+ {
+ m_buffer = *preexistingBuffer;
+ }
+ else {
+
+ cl_mem_flags flags= m_readOnlyOnGPU ? CL_MEM_READ_ONLY : CL_MEM_READ_WRITE;
+
+ size_t size = m_CPUBuffer->size() * sizeof(ElementType);
+ // At a minimum the buffer must exist
+ if( size == 0 )
+ size = sizeof(ElementType);
+ m_buffer = clCreateBuffer(m_clContext, flags, size, 0, &err);
+ if( err != CL_SUCCESS )
+ {
+ btAssert( "Buffer::Buffer(m_buffer)");
+ }
+ }
+
+ m_gpuSize = m_CPUBuffer->size();
+
+ return true;
+ }
+
+public:
+ btOpenCLBuffer( cl_command_queue commandQue,cl_context ctx, btAlignedObjectArray< ElementType >* CPUBuffer, bool readOnly)
+ :m_cqCommandQue(commandQue),
+ m_clContext(ctx),
+ m_buffer(0),
+ m_CPUBuffer(CPUBuffer),
+ m_gpuSize(0),
+ m_onGPU(false),
+ m_readOnlyOnGPU(readOnly),
+ m_allocated(false)
+ {
+ }
+
+ ~btOpenCLBuffer()
+ {
+ clReleaseMemObject(m_buffer);
+ }
+
+
+ bool moveToGPU()
+ {
+
+
+ cl_int err;
+
+ if( (m_CPUBuffer->size() != m_gpuSize) )
+ {
+ m_onGPU = false;
+ }
+
+ if( !m_allocated && m_CPUBuffer->size() == 0 )
+ {
+ // If it isn't on the GPU and yet there is no data on the CPU side this may cause a problem with some kernels.
+ // We should create *something* on the device side
+ if (!createBuffer()) {
+ return false;
+ }
+ m_allocated = true;
+ }
+
+ if( !m_onGPU && m_CPUBuffer->size() > 0 )
+ {
+ if (!m_allocated || (m_CPUBuffer->size() != m_gpuSize)) {
+ if (!createBuffer()) {
+ return false;
+ }
+ m_allocated = true;
+ }
+
+ size_t size = m_CPUBuffer->size() * sizeof(ElementType);
+ err = clEnqueueWriteBuffer(m_cqCommandQue,m_buffer,
+ CL_FALSE,
+ 0,
+ size,
+ &((*m_CPUBuffer)[0]),0,0,0);
+ if( err != CL_SUCCESS )
+ {
+ btAssert( "CommandQueue::enqueueWriteBuffer(m_buffer)" );
+ }
+
+ m_onGPU = true;
+ }
+
+ return true;
+
+ }
+
+ bool moveFromGPU()
+ {
+
+ cl_int err;
+
+ if (m_CPUBuffer->size() > 0) {
+ if (m_onGPU && !m_readOnlyOnGPU) {
+ size_t size = m_CPUBuffer->size() * sizeof(ElementType);
+ err = clEnqueueReadBuffer(m_cqCommandQue,
+ m_buffer,
+ CL_TRUE,
+ 0,
+ size,
+ &((*m_CPUBuffer)[0]),0,0,0);
+
+ if( err != CL_SUCCESS )
+ {
+ btAssert( "CommandQueue::enqueueReadBuffer(m_buffer)" );
+ }
+
+ m_onGPU = false;
+ }
+ }
+
+ return true;
+ }
+
+ bool copyFromGPU()
+ {
+
+ cl_int err;
+ size_t size = m_CPUBuffer->size() * sizeof(ElementType);
+
+ if (m_CPUBuffer->size() > 0) {
+ if (m_onGPU && !m_readOnlyOnGPU) {
+ err = clEnqueueReadBuffer(m_cqCommandQue,
+ m_buffer,
+ CL_TRUE,
+ 0,size,
+ &((*m_CPUBuffer)[0]),0,0,0);
+
+ if( err != CL_SUCCESS )
+ {
+ btAssert( "CommandQueue::enqueueReadBuffer(m_buffer)");
+ }
+
+ }
+ }
+
+ return true;
+ }
+
+ virtual void changedOnCPU()
+ {
+ m_onGPU = false;
+ }
+}; // class btOpenCLBuffer
+
+
+#endif // #ifndef BT_SOFT_BODY_SOLVER_BUFFER_OPENCL_H
\ No newline at end of file
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h"
+#include "btSoftBodySolverBuffer_OpenCL.h"
+
+
+#ifndef BT_SOFT_BODY_SOLVER_LINK_DATA_OPENCL_H
+#define BT_SOFT_BODY_SOLVER_LINK_DATA_OPENCL_H
+
+
+class btSoftBodyLinkDataOpenCL : public btSoftBodyLinkData
+{
+public:
+ bool m_onGPU;
+
+ cl_command_queue m_cqCommandQue;
+
+
+ btOpenCLBuffer<LinkNodePair> m_clLinks;
+ btOpenCLBuffer<float> m_clLinkStrength;
+ btOpenCLBuffer<float> m_clLinksMassLSC;
+ btOpenCLBuffer<float> m_clLinksRestLengthSquared;
+ btOpenCLBuffer<Vectormath::Aos::Vector3> m_clLinksCLength;
+ btOpenCLBuffer<float> m_clLinksLengthRatio;
+ btOpenCLBuffer<float> m_clLinksRestLength;
+ btOpenCLBuffer<float> m_clLinksMaterialLinearStiffnessCoefficient;
+
+ struct BatchPair
+ {
+ int start;
+ int length;
+
+ BatchPair() :
+ start(0),
+ length(0)
+ {
+ }
+
+ BatchPair( int s, int l ) :
+ start( s ),
+ length( l )
+ {
+ }
+ };
+
+ /**
+ * Link addressing information for each cloth.
+ * Allows link locations to be computed independently of data batching.
+ */
+ btAlignedObjectArray< int > m_linkAddresses;
+
+ /**
+ * Start and length values for computation batches over link data.
+ */
+ btAlignedObjectArray< BatchPair > m_batchStartLengths;
+
+ btSoftBodyLinkDataOpenCL(cl_command_queue queue, cl_context ctx);
+
+ virtual ~btSoftBodyLinkDataOpenCL();
+
+ /** Allocate enough space in all link-related arrays to fit numLinks links */
+ virtual void createLinks( int numLinks );
+
+ /** Insert the link described into the correct data structures assuming space has already been allocated by a call to createLinks */
+ virtual void setLinkAt(
+ const LinkDescription &link,
+ int linkIndex );
+
+ virtual bool onAccelerator();
+
+ virtual bool moveToAccelerator();
+
+ virtual bool moveFromAccelerator();
+
+ /**
+ * Generate (and later update) the batching for the entire link set.
+ * This redoes a lot of work because it batches the entire set when each cloth is inserted.
+ * In theory we could delay it until just before we need the cloth.
+ * It's a one-off overhead, though, so that is a later optimisation.
+ */
+ void generateBatches();
+};
+
+
+
+#endif // #ifndef BT_SOFT_BODY_SOLVER_LINK_DATA_OPENCL_H
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h"
+#include "btSoftBodySolverBuffer_OpenCL.h"
+
+
+#ifndef BT_SOFT_BODY_SOLVER_LINK_DATA_OPENCL_SIMDAWARE_H
+#define BT_SOFT_BODY_SOLVER_LINK_DATA_OPENCL_SIMDAWARE_H
+
+
+class btSoftBodyLinkDataOpenCLSIMDAware : public btSoftBodyLinkData
+{
+public:
+ bool m_onGPU;
+
+ cl_command_queue m_cqCommandQue;
+
+ const int m_wavefrontSize;
+ const int m_linksPerWorkItem;
+ const int m_maxLinksPerWavefront;
+ int m_maxBatchesWithinWave;
+ int m_maxVerticesWithinWave;
+ int m_numWavefronts;
+
+ int m_maxVertex;
+
+ struct NumBatchesVerticesPair
+ {
+ int numBatches;
+ int numVertices;
+ };
+
+ btAlignedObjectArray<int> m_linksPerWavefront;
+ btAlignedObjectArray<NumBatchesVerticesPair> m_numBatchesAndVerticesWithinWaves;
+ btOpenCLBuffer< NumBatchesVerticesPair > m_clNumBatchesAndVerticesWithinWaves;
+
+ // All arrays here will contain batches of m_maxLinksPerWavefront links
+ // ordered by wavefront.
+ // with either global vertex pairs or local vertex pairs
+ btAlignedObjectArray< int > m_wavefrontVerticesGlobalAddresses; // List of global vertices per wavefront
+ btOpenCLBuffer<int> m_clWavefrontVerticesGlobalAddresses;
+ btAlignedObjectArray< LinkNodePair > m_linkVerticesLocalAddresses; // Vertex pair for the link
+ btOpenCLBuffer<LinkNodePair> m_clLinkVerticesLocalAddresses;
+ btOpenCLBuffer<float> m_clLinkStrength;
+ btOpenCLBuffer<float> m_clLinksMassLSC;
+ btOpenCLBuffer<float> m_clLinksRestLengthSquared;
+ btOpenCLBuffer<float> m_clLinksRestLength;
+ btOpenCLBuffer<float> m_clLinksMaterialLinearStiffnessCoefficient;
+
+ struct BatchPair
+ {
+ int start;
+ int length;
+
+ BatchPair() :
+ start(0),
+ length(0)
+ {
+ }
+
+ BatchPair( int s, int l ) :
+ start( s ),
+ length( l )
+ {
+ }
+ };
+
+ /**
+ * Link addressing information for each cloth.
+ * Allows link locations to be computed independently of data batching.
+ */
+ btAlignedObjectArray< int > m_linkAddresses;
+
+ /**
+ * Start and length values for computation batches over link data.
+ */
+ btAlignedObjectArray< BatchPair > m_wavefrontBatchStartLengths;
+
+ btSoftBodyLinkDataOpenCLSIMDAware(cl_command_queue queue, cl_context ctx);
+
+ virtual ~btSoftBodyLinkDataOpenCLSIMDAware();
+
+ /** Allocate enough space in all link-related arrays to fit numLinks links */
+ virtual void createLinks( int numLinks );
+
+ /** Insert the link described into the correct data structures assuming space has already been allocated by a call to createLinks */
+ virtual void setLinkAt(
+ const LinkDescription &link,
+ int linkIndex );
+
+ virtual bool onAccelerator();
+
+ virtual bool moveToAccelerator();
+
+ virtual bool moveFromAccelerator();
+
+ /**
+ * Generate (and later update) the batching for the entire link set.
+ * This redoes a lot of work because it batches the entire set when each cloth is inserted.
+ * In theory we could delay it until just before we need the cloth.
+ * It's a one-off overhead, though, so that is a later optimisation.
+ */
+ void generateBatches();
+
+ int getMaxVerticesPerWavefront()
+ {
+ return m_maxVerticesWithinWave;
+ }
+
+ int getWavefrontSize()
+ {
+ return m_wavefrontSize;
+ }
+
+ int getLinksPerWorkItem()
+ {
+ return m_linksPerWorkItem;
+ }
+
+ int getMaxLinksPerWavefront()
+ {
+ return m_maxLinksPerWavefront;
+ }
+
+ int getMaxBatchesPerWavefront()
+ {
+ return m_maxBatchesWithinWave;
+ }
+
+ int getNumWavefronts()
+ {
+ return m_numWavefronts;
+ }
+
+ NumBatchesVerticesPair getNumBatchesAndVerticesWithinWavefront( int wavefront )
+ {
+ return m_numBatchesAndVerticesWithinWaves[wavefront];
+ }
+
+ int getVertexGlobalAddresses( int vertexIndex )
+ {
+ return m_wavefrontVerticesGlobalAddresses[vertexIndex];
+ }
+
+ /**
+ * Get post-batching local addresses of the vertex pair for a link assuming all vertices used by a wavefront are loaded locally.
+ */
+ LinkNodePair getVertexPairLocalAddresses( int linkIndex )
+ {
+ return m_linkVerticesLocalAddresses[linkIndex];
+ }
+};
+
+
+
+#endif // #ifndef BT_SOFT_BODY_SOLVER_LINK_DATA_OPENCL_SIMDAWARE_H
--- /dev/null
+#include "btSoftBodySolverOutputCLtoGL.h"
+#include <stdio.h> //@todo: remove the debugging printf at some stage
+#include "btSoftBodySolver_OpenCL.h"
+#include "BulletSoftBody/btSoftBodySolverVertexBuffer.h"
+#include "btSoftBodySolverVertexBuffer_OpenGL.h"
+#include "BulletSoftBody/btSoftBody.h"
+
+////OpenCL 1.0 kernels don't use float3
+#define MSTRINGIFY(A) #A
+static char* OutputToVertexArrayCLString =
+#include "OpenCLC10/OutputToVertexArray.cl"
+
+
+#define RELEASE_CL_KERNEL(kernelName) {if( kernelName ){ clReleaseKernel( kernelName ); kernelName = 0; }}
+
+static const size_t workGroupSize = 128;
+
+void btSoftBodySolverOutputCLtoGL::copySoftBodyToVertexBuffer( const btSoftBody * const softBody, btVertexBufferDescriptor *vertexBuffer )
+{
+
+ btSoftBodySolver *solver = softBody->getSoftBodySolver();
+ btAssert( solver->getSolverType() == btSoftBodySolver::CL_SOLVER || solver->getSolverType() == btSoftBodySolver::CL_SIMD_SOLVER );
+ btOpenCLSoftBodySolver *dxSolver = static_cast< btOpenCLSoftBodySolver * >( solver );
+ checkInitialized();
+ btOpenCLAcceleratedSoftBodyInterface* currentCloth = dxSolver->findSoftBodyInterface( softBody );
+ btSoftBodyVertexDataOpenCL &vertexData( dxSolver->m_vertexData );
+
+ const int firstVertex = currentCloth->getFirstVertex();
+ const int lastVertex = firstVertex + currentCloth->getNumVertices();
+
+ if( vertexBuffer->getBufferType() == btVertexBufferDescriptor::OPENGL_BUFFER ) {
+
+ const btOpenGLInteropVertexBufferDescriptor *openGLVertexBuffer = static_cast< btOpenGLInteropVertexBufferDescriptor* >(vertexBuffer);
+ cl_int ciErrNum = CL_SUCCESS;
+
+ cl_mem clBuffer = openGLVertexBuffer->getBuffer();
+ cl_kernel outputKernel = outputToVertexArrayWithNormalsKernel;
+ if( !vertexBuffer->hasNormals() )
+ outputKernel = outputToVertexArrayWithoutNormalsKernel;
+
+ ciErrNum = clEnqueueAcquireGLObjects(m_cqCommandQue, 1, &clBuffer, 0, 0, NULL);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "clEnqueueAcquireGLObjects(copySoftBodyToVertexBuffer)");
+ }
+
+ int numVertices = currentCloth->getNumVertices();
+
+ ciErrNum = clSetKernelArg(outputKernel, 0, sizeof(int), &firstVertex );
+ ciErrNum = clSetKernelArg(outputKernel, 1, sizeof(int), &numVertices );
+ ciErrNum = clSetKernelArg(outputKernel, 2, sizeof(cl_mem), (void*)&clBuffer );
+ if( vertexBuffer->hasVertexPositions() )
+ {
+ int vertexOffset = vertexBuffer->getVertexOffset();
+ int vertexStride = vertexBuffer->getVertexStride();
+ ciErrNum = clSetKernelArg(outputKernel, 3, sizeof(int), &vertexOffset );
+ ciErrNum = clSetKernelArg(outputKernel, 4, sizeof(int), &vertexStride );
+ ciErrNum = clSetKernelArg(outputKernel, 5, sizeof(cl_mem), (void*)&vertexData.m_clVertexPosition.m_buffer );
+
+ }
+ if( vertexBuffer->hasNormals() )
+ {
+ int normalOffset = vertexBuffer->getNormalOffset();
+ int normalStride = vertexBuffer->getNormalStride();
+ ciErrNum = clSetKernelArg(outputKernel, 6, sizeof(int), &normalOffset );
+ ciErrNum = clSetKernelArg(outputKernel, 7, sizeof(int), &normalStride );
+ ciErrNum = clSetKernelArg(outputKernel, 8, sizeof(cl_mem), (void*)&vertexData.m_clVertexNormal.m_buffer );
+
+ }
+ size_t numWorkItems = workGroupSize*((vertexData.getNumVertices() + (workGroupSize-1)) / workGroupSize);
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue, outputKernel, 1, NULL, &numWorkItems, &workGroupSize,0 ,0 ,0);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(copySoftBodyToVertexBuffer)");
+ }
+
+ ciErrNum = clEnqueueReleaseGLObjects(m_cqCommandQue, 1, &clBuffer, 0, 0, 0);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "clEnqueueReleaseGLObjects(copySoftBodyToVertexBuffer)");
+ }
+ } else {
+ btAssert( "Undefined output for this solver output" == false );
+ }
+
+ // clFinish in here may not be the best thing. It's possible that we should have a waitForFrameComplete function.
+ clFinish(m_cqCommandQue);
+
+} // btSoftBodySolverOutputCLtoGL::outputToVertexBuffers
+
+bool btSoftBodySolverOutputCLtoGL::buildShaders()
+{
+ // Ensure current kernels are released first
+ releaseKernels();
+
+ bool returnVal = true;
+
+ if( m_shadersInitialized )
+ return true;
+
+ outputToVertexArrayWithNormalsKernel = clFunctions.compileCLKernelFromString( OutputToVertexArrayCLString, "OutputToVertexArrayWithNormalsKernel" ,"","OpenCLC10/OutputToVertexArray.cl");
+ outputToVertexArrayWithoutNormalsKernel = clFunctions.compileCLKernelFromString( OutputToVertexArrayCLString, "OutputToVertexArrayWithoutNormalsKernel" ,"","OpenCLC10/OutputToVertexArray.cl");
+
+
+ if( returnVal )
+ m_shadersInitialized = true;
+
+ return returnVal;
+} // btSoftBodySolverOutputCLtoGL::buildShaders
+
+void btSoftBodySolverOutputCLtoGL::releaseKernels()
+{
+ RELEASE_CL_KERNEL( outputToVertexArrayWithNormalsKernel );
+ RELEASE_CL_KERNEL( outputToVertexArrayWithoutNormalsKernel );
+
+ m_shadersInitialized = false;
+} // btSoftBodySolverOutputCLtoGL::releaseKernels
+
+bool btSoftBodySolverOutputCLtoGL::checkInitialized()
+{
+ if( !m_shadersInitialized )
+ if( buildShaders() )
+ m_shadersInitialized = true;
+
+ return m_shadersInitialized;
+}
\ No newline at end of file
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef BT_SOFT_BODY_SOLVER_OUTPUT_CL_TO_GL_H
+#define BT_SOFT_BODY_SOLVER_OUTPUT_CL_TO_GL_H
+
+#include "btSoftBodySolver_OpenCL.h"
+
+/**
+ * Class to manage movement of data from a solver to a given target.
+ * This version is the CL to GL interop version.
+ */
+class btSoftBodySolverOutputCLtoGL : public btSoftBodySolverOutput
+{
+protected:
+ cl_command_queue m_cqCommandQue;
+ cl_context m_cxMainContext;
+ CLFunctions clFunctions;
+
+ cl_kernel outputToVertexArrayWithNormalsKernel;
+ cl_kernel outputToVertexArrayWithoutNormalsKernel;
+
+ bool m_shadersInitialized;
+
+ virtual bool checkInitialized();
+ virtual bool buildShaders();
+ void releaseKernels();
+public:
+ btSoftBodySolverOutputCLtoGL(cl_command_queue cqCommandQue, cl_context cxMainContext) :
+ m_cqCommandQue( cqCommandQue ),
+ m_cxMainContext( cxMainContext ),
+ clFunctions(cqCommandQue, cxMainContext),
+ outputToVertexArrayWithNormalsKernel( 0 ),
+ outputToVertexArrayWithoutNormalsKernel( 0 ),
+ m_shadersInitialized( false )
+ {
+ }
+
+ virtual ~btSoftBodySolverOutputCLtoGL()
+ {
+ releaseKernels();
+ }
+
+ /** Output current computed vertex data to the vertex buffers for all cloths in the solver. */
+ virtual void copySoftBodyToVertexBuffer( const btSoftBody * const softBody, btVertexBufferDescriptor *vertexBuffer );
+};
+
+
+
+#endif // #ifndef BT_SOFT_BODY_SOLVER_OUTPUT_CL_TO_GL_H
\ No newline at end of file
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+
+#include "BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h"
+#include "btSoftBodySolverBuffer_OpenCL.h"
+
+
+#ifndef BT_SOFT_BODY_SOLVER_TRIANGLE_DATA_OPENCL_H
+#define BT_SOFT_BODY_SOLVER_TRIANGLE_DATA_OPENCL_H
+
+
+class btSoftBodyTriangleDataOpenCL : public btSoftBodyTriangleData
+{
+public:
+ bool m_onGPU;
+ cl_command_queue m_queue;
+
+ btOpenCLBuffer<btSoftBodyTriangleData::TriangleNodeSet> m_clVertexIndices;
+ btOpenCLBuffer<float> m_clArea;
+ btOpenCLBuffer<Vectormath::Aos::Vector3> m_clNormal;
+
+ /**
+ * Link addressing information for each cloth.
+ * Allows link locations to be computed independently of data batching.
+ */
+ btAlignedObjectArray< int > m_triangleAddresses;
+
+ /**
+ * Start and length values for computation batches over link data.
+ */
+ struct btSomePair
+ {
+ btSomePair() {}
+ btSomePair(int f,int s)
+ :first(f),second(s)
+ {
+ }
+ int first;
+ int second;
+ };
+ btAlignedObjectArray< btSomePair > m_batchStartLengths;
+
+public:
+ btSoftBodyTriangleDataOpenCL( cl_command_queue queue, cl_context ctx );
+
+ virtual ~btSoftBodyTriangleDataOpenCL();
+
+ /** Allocate enough space in all link-related arrays to fit numLinks links */
+ virtual void createTriangles( int numTriangles );
+
+ /** Insert the link described into the correct data structures assuming space has already been allocated by a call to createLinks */
+ virtual void setTriangleAt( const btSoftBodyTriangleData::TriangleDescription &triangle, int triangleIndex );
+
+ virtual bool onAccelerator();
+
+ virtual bool moveToAccelerator();
+
+ virtual bool moveFromAccelerator();
+
+ /**
+ * Generate (and later update) the batching for the entire triangle set.
+ * This redoes a lot of work because it batches the entire set when each cloth is inserted.
+ * In theory we could delay it until just before we need the cloth.
+ * It's a one-off overhead, though, so that is a later optimisation.
+ */
+ void generateBatches();
+}; // class btSoftBodyTriangleDataOpenCL
+
+
+#endif // #ifndef BT_SOFT_BODY_SOLVER_TRIANGLE_DATA_OPENCL_H
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef BT_SOFT_BODY_SOLVER_VERTEX_BUFFER_OPENGL_H
+#define BT_SOFT_BODY_SOLVER_VERTEX_BUFFER_OPENGL_H
+
+
+#include "BulletSoftBody/btSoftBodySolverVertexBuffer.h"
+#ifdef USE_MINICL
+ #include "MiniCL/cl.h"
+#else //USE_MINICL
+ #ifdef __APPLE__
+ #include <OpenCL/OpenCL.h>
+ #else
+ #include <CL/cl.h>
+ #include <CL/cl_gl.h>
+ #endif //__APPLE__
+#endif//USE_MINICL
+
+
+#ifdef _WIN32//for glut.h
+#include <windows.h>
+#endif
+
+//think different
+#if defined(__APPLE__) && !defined (VMDMESA)
+#include <OpenGL/OpenGL.h>
+#include <OpenGL/gl.h>
+#include <OpenGL/glu.h>
+#include <GLUT/glut.h>
+#else
+
+
+#ifdef _WINDOWS
+#include <windows.h>
+#include <GL/gl.h>
+#include <GL/glu.h>
+#else
+#include <GL/glut.h>
+#endif //_WINDOWS
+#endif //APPLE
+
+
+
+class btOpenGLInteropVertexBufferDescriptor : public btVertexBufferDescriptor
+{
+protected:
+ /** OpenCL context */
+ cl_context m_context;
+
+ /** OpenCL command queue */
+ cl_command_queue m_commandQueue;
+
+ /** OpenCL interop buffer */
+ cl_mem m_buffer;
+
+ /** VBO in GL that is the basis of the interop buffer */
+ GLuint m_openGLVBO;
+
+
+public:
+ /**
+ * context is the OpenCL context this interop buffer will work in.
+ * queue is the command queue that kernels and data movement will be enqueued into.
+ * openGLVBO is the OpenGL vertex buffer data will be copied into.
+ * vertexOffset is the offset in floats to the first vertex.
+ * vertexStride is the stride in floats between vertices.
+ */
+ btOpenGLInteropVertexBufferDescriptor( cl_command_queue cqCommandQue, cl_context context, GLuint openGLVBO, int vertexOffset, int vertexStride )
+ {
+#ifndef USE_MINICL
+ cl_int ciErrNum = CL_SUCCESS;
+ m_context = context;
+ m_commandQueue = cqCommandQue;
+
+ m_vertexOffset = vertexOffset;
+ m_vertexStride = vertexStride;
+
+ m_openGLVBO = openGLVBO;
+
+ m_buffer = clCreateFromGLBuffer(m_context, CL_MEM_WRITE_ONLY, openGLVBO, &ciErrNum);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "clEnqueueAcquireGLObjects(copySoftBodyToVertexBuffer)");
+ }
+
+ m_hasVertexPositions = true;
+#else
+ btAssert(0);//MiniCL shouldn't get here
+#endif
+ }
+
+ /**
+ * context is the OpenCL context this interop buffer will work in.
+ * queue is the command queue that kernels and data movement will be enqueued into.
+ * openGLVBO is the OpenGL vertex buffer data will be copied into.
+ * vertexOffset is the offset in floats to the first vertex.
+ * vertexStride is the stride in floats between vertices.
+ * normalOffset is the offset in floats to the first normal.
+ * normalStride is the stride in floats between normals.
+ */
+ btOpenGLInteropVertexBufferDescriptor( cl_command_queue cqCommandQue, cl_context context, GLuint openGLVBO, int vertexOffset, int vertexStride, int normalOffset, int normalStride )
+ {
+#ifndef USE_MINICL
+ cl_int ciErrNum = CL_SUCCESS;
+ m_context = context;
+ m_commandQueue = cqCommandQue;
+
+ m_openGLVBO = openGLVBO;
+
+ m_buffer = clCreateFromGLBuffer(m_context, CL_MEM_WRITE_ONLY, openGLVBO, &ciErrNum);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "clEnqueueAcquireGLObjects(copySoftBodyToVertexBuffer)");
+ }
+
+ m_vertexOffset = vertexOffset;
+ m_vertexStride = vertexStride;
+ m_hasVertexPositions = true;
+
+ m_normalOffset = normalOffset;
+ m_normalStride = normalStride;
+ m_hasNormals = true;
+#else
+ btAssert(0);
+#endif //USE_MINICL
+
+ }
+
+ virtual ~btOpenGLInteropVertexBufferDescriptor()
+ {
+ clReleaseMemObject( m_buffer );
+ }
+
+ /**
+ * Return the type of the vertex buffer descriptor.
+ */
+ virtual BufferTypes getBufferType() const
+ {
+ return OPENGL_BUFFER;
+ }
+
+ virtual cl_context getContext() const
+ {
+ return m_context;
+ }
+
+ virtual cl_mem getBuffer() const
+ {
+ return m_buffer;
+ }
+};
+
+#endif // #ifndef BT_SOFT_BODY_SOLVER_VERTEX_BUFFER_OPENGL_H
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h"
+#include "btSoftBodySolverBuffer_OpenCL.h"
+
+#ifndef BT_SOFT_BODY_SOLVER_VERTEX_DATA_OPENCL_H
+#define BT_SOFT_BODY_SOLVER_VERTEX_DATA_OPENCL_H
+
+
+class btSoftBodyVertexDataOpenCL : public btSoftBodyVertexData
+{
+protected:
+ bool m_onGPU;
+ cl_command_queue m_queue;
+
+public:
+ btOpenCLBuffer<int> m_clClothIdentifier;
+ btOpenCLBuffer<Vectormath::Aos::Point3> m_clVertexPosition;
+ btOpenCLBuffer<Vectormath::Aos::Point3> m_clVertexPreviousPosition;
+ btOpenCLBuffer<Vectormath::Aos::Vector3> m_clVertexVelocity;
+ btOpenCLBuffer<Vectormath::Aos::Vector3> m_clVertexForceAccumulator;
+ btOpenCLBuffer<Vectormath::Aos::Vector3> m_clVertexNormal;
+ btOpenCLBuffer<float> m_clVertexInverseMass;
+ btOpenCLBuffer<float> m_clVertexArea;
+ btOpenCLBuffer<int> m_clVertexTriangleCount;
+public:
+ btSoftBodyVertexDataOpenCL( cl_command_queue queue, cl_context ctx);
+
+ virtual ~btSoftBodyVertexDataOpenCL();
+
+ virtual bool onAccelerator();
+
+ virtual bool moveToAccelerator();
+
+ virtual bool moveFromAccelerator(bool bCopy = false, bool bCopyMinimum = true);
+};
+
+
+#endif // #ifndef BT_SOFT_BODY_SOLVER_VERTEX_DATA_OPENCL_H
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+
+#include "BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h"
+#include "vectormath/vmInclude.h"
+#include <stdio.h> //@todo: remove the debugging printf at some stage
+#include "btSoftBodySolver_OpenCL.h"
+#include "BulletSoftBody/btSoftBodySolverVertexBuffer.h"
+#include "BulletSoftBody/btSoftBody.h"
+#include "BulletSoftBody/btSoftBodyInternals.h"
+#include "BulletCollision/CollisionShapes/btCapsuleShape.h"
+#include "BulletCollision/CollisionShapes/btSphereShape.h"
+#include "LinearMath/btQuickprof.h"
+#include <limits.h>
+#include "BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h"
+
+#define BT_SUPPRESS_OPENCL_ASSERTS
+
+#ifdef USE_MINICL
+ #include "MiniCL/cl.h"
+#else //USE_MINICL
+ #ifdef __APPLE__
+ #include <OpenCL/OpenCL.h>
+ #else
+ #include <CL/cl.h>
+ #endif //__APPLE__
+#endif//USE_MINICL
+
+#define BT_DEFAULT_WORKGROUPSIZE 64
+
+
+#define RELEASE_CL_KERNEL(kernelName) {if( kernelName ){ clReleaseKernel( kernelName ); kernelName = 0; }}
+
+
+//CL_VERSION_1_1 seems broken on NVidia SDK so just disable it
+
+////OpenCL 1.0 kernels don't use float3
+#define MSTRINGIFY(A) #A
+static const char* PrepareLinksCLString =
+#include "OpenCLC10/PrepareLinks.cl"
+static const char* UpdatePositionsFromVelocitiesCLString =
+#include "OpenCLC10/UpdatePositionsFromVelocities.cl"
+static const char* SolvePositionsCLString =
+#include "OpenCLC10/SolvePositions.cl"
+static const char* UpdateNodesCLString =
+#include "OpenCLC10/UpdateNodes.cl"
+static const char* UpdatePositionsCLString =
+#include "OpenCLC10/UpdatePositions.cl"
+static const char* UpdateConstantsCLString =
+#include "OpenCLC10/UpdateConstants.cl"
+static const char* IntegrateCLString =
+#include "OpenCLC10/Integrate.cl"
+static const char* ApplyForcesCLString =
+#include "OpenCLC10/ApplyForces.cl"
+static const char* UpdateFixedVertexPositionsCLString =
+#include "OpenCLC10/UpdateFixedVertexPositions.cl"
+static const char* UpdateNormalsCLString =
+#include "OpenCLC10/UpdateNormals.cl"
+static const char* VSolveLinksCLString =
+#include "OpenCLC10/VSolveLinks.cl"
+static const char* SolveCollisionsAndUpdateVelocitiesCLString =
+#include "OpenCLC10/SolveCollisionsAndUpdateVelocities.cl"
+
+
+btSoftBodyVertexDataOpenCL::btSoftBodyVertexDataOpenCL( cl_command_queue queue, cl_context ctx) :
+ m_queue(queue),
+ m_clClothIdentifier( queue, ctx, &m_clothIdentifier, false ),
+ m_clVertexPosition( queue, ctx, &m_vertexPosition, false ),
+ m_clVertexPreviousPosition( queue, ctx, &m_vertexPreviousPosition, false ),
+ m_clVertexVelocity( queue, ctx, &m_vertexVelocity, false ),
+ m_clVertexForceAccumulator( queue, ctx, &m_vertexForceAccumulator, false ),
+ m_clVertexNormal( queue, ctx, &m_vertexNormal, false ),
+ m_clVertexInverseMass( queue, ctx, &m_vertexInverseMass, false ),
+ m_clVertexArea( queue, ctx, &m_vertexArea, false ),
+ m_clVertexTriangleCount( queue, ctx, &m_vertexTriangleCount, false )
+{
+}
+
+btSoftBodyVertexDataOpenCL::~btSoftBodyVertexDataOpenCL()
+{
+
+}
+
+bool btSoftBodyVertexDataOpenCL::onAccelerator()
+{
+ return m_onGPU;
+}
+
+bool btSoftBodyVertexDataOpenCL::moveToAccelerator()
+{
+ bool success = true;
+ success = success && m_clClothIdentifier.moveToGPU();
+ success = success && m_clVertexPosition.moveToGPU();
+ success = success && m_clVertexPreviousPosition.moveToGPU();
+ success = success && m_clVertexVelocity.moveToGPU();
+ success = success && m_clVertexForceAccumulator.moveToGPU();
+ success = success && m_clVertexNormal.moveToGPU();
+ success = success && m_clVertexInverseMass.moveToGPU();
+ success = success && m_clVertexArea.moveToGPU();
+ success = success && m_clVertexTriangleCount.moveToGPU();
+
+ if( success )
+ m_onGPU = true;
+
+ return success;
+}
+
+bool btSoftBodyVertexDataOpenCL::moveFromAccelerator(bool bCopy, bool bCopyMinimum)
+{
+ bool success = true;
+
+ if (!bCopy)
+ {
+ success = success && m_clClothIdentifier.moveFromGPU();
+ success = success && m_clVertexPosition.moveFromGPU();
+ success = success && m_clVertexPreviousPosition.moveFromGPU();
+ success = success && m_clVertexVelocity.moveFromGPU();
+ success = success && m_clVertexForceAccumulator.moveFromGPU();
+ success = success && m_clVertexNormal.moveFromGPU();
+ success = success && m_clVertexInverseMass.moveFromGPU();
+ success = success && m_clVertexArea.moveFromGPU();
+ success = success && m_clVertexTriangleCount.moveFromGPU();
+ }
+ else
+ {
+ if (bCopyMinimum)
+ {
+ success = success && m_clVertexPosition.copyFromGPU();
+ success = success && m_clVertexNormal.copyFromGPU();
+ }
+ else
+ {
+ success = success && m_clClothIdentifier.copyFromGPU();
+ success = success && m_clVertexPosition.copyFromGPU();
+ success = success && m_clVertexPreviousPosition.copyFromGPU();
+ success = success && m_clVertexVelocity.copyFromGPU();
+ success = success && m_clVertexForceAccumulator.copyFromGPU();
+ success = success && m_clVertexNormal.copyFromGPU();
+ success = success && m_clVertexInverseMass.copyFromGPU();
+ success = success && m_clVertexArea.copyFromGPU();
+ success = success && m_clVertexTriangleCount.copyFromGPU();
+ }
+ }
+
+ if( success )
+ m_onGPU = true;
+
+ return success;
+}
+
+btSoftBodyLinkDataOpenCL::btSoftBodyLinkDataOpenCL(cl_command_queue queue, cl_context ctx)
+:m_cqCommandQue(queue),
+ m_clLinks( queue, ctx, &m_links, false ),
+ m_clLinkStrength( queue, ctx, &m_linkStrength, false ),
+ m_clLinksMassLSC( queue, ctx, &m_linksMassLSC, false ),
+ m_clLinksRestLengthSquared( queue, ctx, &m_linksRestLengthSquared, false ),
+ m_clLinksCLength( queue, ctx, &m_linksCLength, false ),
+ m_clLinksLengthRatio( queue, ctx, &m_linksLengthRatio, false ),
+ m_clLinksRestLength( queue, ctx, &m_linksRestLength, false ),
+ m_clLinksMaterialLinearStiffnessCoefficient( queue, ctx, &m_linksMaterialLinearStiffnessCoefficient, false )
+{
+}
+
+btSoftBodyLinkDataOpenCL::~btSoftBodyLinkDataOpenCL()
+{
+}
+
+static Vectormath::Aos::Vector3 toVector3( const btVector3 &vec )
+{
+ Vectormath::Aos::Vector3 outVec( vec.getX(), vec.getY(), vec.getZ() );
+ return outVec;
+}
+
+/** Allocate enough space in all link-related arrays to fit numLinks links */
+void btSoftBodyLinkDataOpenCL::createLinks( int numLinks )
+{
+ int previousSize = m_links.size();
+ int newSize = previousSize + numLinks;
+
+ btSoftBodyLinkData::createLinks( numLinks );
+
+ // Resize the link addresses array as well
+ m_linkAddresses.resize( newSize );
+}
+
+/** Insert the link described into the correct data structures assuming space has already been allocated by a call to createLinks */
+void btSoftBodyLinkDataOpenCL::setLinkAt(
+ const LinkDescription &link,
+ int linkIndex )
+{
+ btSoftBodyLinkData::setLinkAt( link, linkIndex );
+
+ // Set the link index correctly for initialisation
+ m_linkAddresses[linkIndex] = linkIndex;
+}
+
+bool btSoftBodyLinkDataOpenCL::onAccelerator()
+{
+ return m_onGPU;
+}
+
+bool btSoftBodyLinkDataOpenCL::moveToAccelerator()
+{
+ bool success = true;
+ success = success && m_clLinks.moveToGPU();
+ success = success && m_clLinkStrength.moveToGPU();
+ success = success && m_clLinksMassLSC.moveToGPU();
+ success = success && m_clLinksRestLengthSquared.moveToGPU();
+ success = success && m_clLinksCLength.moveToGPU();
+ success = success && m_clLinksLengthRatio.moveToGPU();
+ success = success && m_clLinksRestLength.moveToGPU();
+ success = success && m_clLinksMaterialLinearStiffnessCoefficient.moveToGPU();
+
+ if( success ) {
+ m_onGPU = true;
+ }
+
+ return success;
+}
+
+bool btSoftBodyLinkDataOpenCL::moveFromAccelerator()
+{
+ bool success = true;
+ success = success && m_clLinks.moveFromGPU();
+ success = success && m_clLinkStrength.moveFromGPU();
+ success = success && m_clLinksMassLSC.moveFromGPU();
+ success = success && m_clLinksRestLengthSquared.moveFromGPU();
+ success = success && m_clLinksCLength.moveFromGPU();
+ success = success && m_clLinksLengthRatio.moveFromGPU();
+ success = success && m_clLinksRestLength.moveFromGPU();
+ success = success && m_clLinksMaterialLinearStiffnessCoefficient.moveFromGPU();
+
+ if( success ) {
+ m_onGPU = false;
+ }
+
+ return success;
+}
+
+/**
+ * Generate (and later update) the batching for the entire link set.
+ * This redoes a lot of work because it batches the entire set when each cloth is inserted.
+ * In theory we could delay it until just before we need the cloth.
+ * It's a one-off overhead, though, so that is a later optimisation.
+ */
+void btSoftBodyLinkDataOpenCL::generateBatches()
+{
+ int numLinks = getNumLinks();
+
+ // Do the graph colouring here temporarily
+ btAlignedObjectArray< int > batchValues;
+ batchValues.resize( numLinks, 0 );
+
+ // Find the maximum vertex value internally for now
+ int maxVertex = 0;
+ for( int linkIndex = 0; linkIndex < numLinks; ++linkIndex )
+ {
+ int vertex0 = getVertexPair(linkIndex).vertex0;
+ int vertex1 = getVertexPair(linkIndex).vertex1;
+ if( vertex0 > maxVertex )
+ maxVertex = vertex0;
+ if( vertex1 > maxVertex )
+ maxVertex = vertex1;
+ }
+ int numVertices = maxVertex + 1;
+
+ // Set of lists, one for each node, specifying which colours are connected
+ // to that node.
+ // No two edges into a node can share a colour.
+ btAlignedObjectArray< btAlignedObjectArray< int > > vertexConnectedColourLists;
+ vertexConnectedColourLists.resize(numVertices);
+
+ // Simple algorithm that chooses the lowest batch number
+ // that none of the links attached to either of the connected
+ // nodes is in
+ for( int linkIndex = 0; linkIndex < numLinks; ++linkIndex )
+ {
+ int linkLocation = m_linkAddresses[linkIndex];
+
+ int vertex0 = getVertexPair(linkLocation).vertex0;
+ int vertex1 = getVertexPair(linkLocation).vertex1;
+
+ // Get the two node colour lists
+ btAlignedObjectArray< int > &colourListVertex0( vertexConnectedColourLists[vertex0] );
+ btAlignedObjectArray< int > &colourListVertex1( vertexConnectedColourLists[vertex1] );
+
+ // Choose the minimum colour that is in neither list
+ int colour = 0;
+ while( colourListVertex0.findLinearSearch(colour) != colourListVertex0.size() || colourListVertex1.findLinearSearch(colour) != colourListVertex1.size() )
+ ++colour;
+ // i should now be the minimum colour in neither list
+ // Add to the two lists so that future edges don't share
+ // And store the colour against this edge
+
+ colourListVertex0.push_back(colour);
+ colourListVertex1.push_back(colour);
+ batchValues[linkIndex] = colour;
+ }
+
+ // Check the colour counts
+ btAlignedObjectArray< int > batchCounts;
+ for( int i = 0; i < numLinks; ++i )
+ {
+ int batch = batchValues[i];
+ if( batch >= batchCounts.size() )
+ batchCounts.push_back(1);
+ else
+ ++(batchCounts[batch]);
+ }
+
+ m_batchStartLengths.resize(batchCounts.size());
+ if( m_batchStartLengths.size() > 0 )
+ {
+ m_batchStartLengths.resize(batchCounts.size());
+ m_batchStartLengths[0] = BatchPair(0, 0);
+
+ int sum = 0;
+ for( int batchIndex = 0; batchIndex < batchCounts.size(); ++batchIndex )
+ {
+ m_batchStartLengths[batchIndex].start = sum;
+ m_batchStartLengths[batchIndex].length = batchCounts[batchIndex];
+ sum += batchCounts[batchIndex];
+ }
+ }
+
+ /////////////////////////////
+ // Sort data based on batches
+
+ // Create source arrays by copying originals
+ btAlignedObjectArray<LinkNodePair> m_links_Backup(m_links);
+ btAlignedObjectArray<float> m_linkStrength_Backup(m_linkStrength);
+ btAlignedObjectArray<float> m_linksMassLSC_Backup(m_linksMassLSC);
+ btAlignedObjectArray<float> m_linksRestLengthSquared_Backup(m_linksRestLengthSquared);
+ btAlignedObjectArray<Vectormath::Aos::Vector3> m_linksCLength_Backup(m_linksCLength);
+ btAlignedObjectArray<float> m_linksLengthRatio_Backup(m_linksLengthRatio);
+ btAlignedObjectArray<float> m_linksRestLength_Backup(m_linksRestLength);
+ btAlignedObjectArray<float> m_linksMaterialLinearStiffnessCoefficient_Backup(m_linksMaterialLinearStiffnessCoefficient);
+
+
+ for( int batch = 0; batch < batchCounts.size(); ++batch )
+ batchCounts[batch] = 0;
+
+ // Do sort as single pass into destination arrays
+ for( int linkIndex = 0; linkIndex < numLinks; ++linkIndex )
+ {
+ // To maintain locations run off the original link locations rather than the current position.
+ // It's not cache efficient, but as we run this rarely that should not matter.
+ // It's faster than searching the link location array for the current location and then updating it.
+ // The other alternative would be to unsort before resorting, but this is equivalent to doing that.
+ int linkLocation = m_linkAddresses[linkIndex];
+
+ // Obtain batch and calculate target location for the
+ // next element in that batch, incrementing the batch counter
+ // afterwards
+ int batch = batchValues[linkIndex];
+ int newLocation = m_batchStartLengths[batch].start + batchCounts[batch];
+
+ batchCounts[batch] = batchCounts[batch] + 1;
+ m_links[newLocation] = m_links_Backup[linkLocation];
+#if 1
+ m_linkStrength[newLocation] = m_linkStrength_Backup[linkLocation];
+ m_linksMassLSC[newLocation] = m_linksMassLSC_Backup[linkLocation];
+ m_linksRestLengthSquared[newLocation] = m_linksRestLengthSquared_Backup[linkLocation];
+ m_linksLengthRatio[newLocation] = m_linksLengthRatio_Backup[linkLocation];
+ m_linksRestLength[newLocation] = m_linksRestLength_Backup[linkLocation];
+ m_linksMaterialLinearStiffnessCoefficient[newLocation] = m_linksMaterialLinearStiffnessCoefficient_Backup[linkLocation];
+#endif
+ // Update the locations array to account for the moved entry
+ m_linkAddresses[linkIndex] = newLocation;
+ }
+
+
+} // void generateBatches()
+
+
+
+
+
+btSoftBodyTriangleDataOpenCL::btSoftBodyTriangleDataOpenCL( cl_command_queue queue , cl_context ctx) :
+ m_queue( queue ),
+ m_clVertexIndices( queue, ctx, &m_vertexIndices, false ),
+ m_clArea( queue, ctx, &m_area, false ),
+ m_clNormal( queue, ctx, &m_normal, false )
+{
+}
+
+btSoftBodyTriangleDataOpenCL::~btSoftBodyTriangleDataOpenCL()
+{
+}
+
+/** Allocate enough space in all link-related arrays to fit numLinks links */
+void btSoftBodyTriangleDataOpenCL::createTriangles( int numTriangles )
+{
+ int previousSize = getNumTriangles();
+ int newSize = previousSize + numTriangles;
+
+ btSoftBodyTriangleData::createTriangles( numTriangles );
+
+ // Resize the link addresses array as well
+ m_triangleAddresses.resize( newSize );
+}
+
+/** Insert the link described into the correct data structures assuming space has already been allocated by a call to createLinks */
+void btSoftBodyTriangleDataOpenCL::setTriangleAt( const btSoftBodyTriangleData::TriangleDescription &triangle, int triangleIndex )
+{
+ btSoftBodyTriangleData::setTriangleAt( triangle, triangleIndex );
+
+ m_triangleAddresses[triangleIndex] = triangleIndex;
+}
+
+bool btSoftBodyTriangleDataOpenCL::onAccelerator()
+{
+ return m_onGPU;
+}
+
+bool btSoftBodyTriangleDataOpenCL::moveToAccelerator()
+{
+ bool success = true;
+ success = success && m_clVertexIndices.moveToGPU();
+ success = success && m_clArea.moveToGPU();
+ success = success && m_clNormal.moveToGPU();
+
+ if( success )
+ m_onGPU = true;
+
+ return success;
+}
+
+bool btSoftBodyTriangleDataOpenCL::moveFromAccelerator()
+{
+ bool success = true;
+ success = success && m_clVertexIndices.moveFromGPU();
+ success = success && m_clArea.moveFromGPU();
+ success = success && m_clNormal.moveFromGPU();
+
+ if( success )
+ m_onGPU = true;
+
+ return success;
+}
+
+/**
+ * Generate (and later update) the batching for the entire triangle set.
+ * This redoes a lot of work because it batches the entire set when each cloth is inserted.
+ * In theory we could delay it until just before we need the cloth.
+ * It's a one-off overhead, though, so that is a later optimisation.
+ */
+void btSoftBodyTriangleDataOpenCL::generateBatches()
+{
+ int numTriangles = getNumTriangles();
+ if( numTriangles == 0 )
+ return;
+
+ // Do the graph colouring here temporarily
+ btAlignedObjectArray< int > batchValues;
+ batchValues.resize( numTriangles );
+
+ // Find the maximum vertex value internally for now
+ int maxVertex = 0;
+ for( int triangleIndex = 0; triangleIndex < numTriangles; ++triangleIndex )
+ {
+ int vertex0 = getVertexSet(triangleIndex).vertex0;
+ int vertex1 = getVertexSet(triangleIndex).vertex1;
+ int vertex2 = getVertexSet(triangleIndex).vertex2;
+
+ if( vertex0 > maxVertex )
+ maxVertex = vertex0;
+ if( vertex1 > maxVertex )
+ maxVertex = vertex1;
+ if( vertex2 > maxVertex )
+ maxVertex = vertex2;
+ }
+ int numVertices = maxVertex + 1;
+
+ // Set of lists, one for each node, specifying which colours are connected
+ // to that node.
+ // No two edges into a node can share a colour.
+ btAlignedObjectArray< btAlignedObjectArray< int > > vertexConnectedColourLists;
+ vertexConnectedColourLists.resize(numVertices);
+
+
+ //std::cout << "\n";
+ // Simple algorithm that chooses the lowest batch number
+ // that none of the faces attached to either of the connected
+ // nodes is in
+ for( int triangleIndex = 0; triangleIndex < numTriangles; ++triangleIndex )
+ {
+ // To maintain locations run off the original link locations rather than the current position.
+ // It's not cache efficient, but as we run this rarely that should not matter.
+ // It's faster than searching the link location array for the current location and then updating it.
+ // The other alternative would be to unsort before resorting, but this is equivalent to doing that.
+ int triangleLocation = m_triangleAddresses[triangleIndex];
+
+ int vertex0 = getVertexSet(triangleLocation).vertex0;
+ int vertex1 = getVertexSet(triangleLocation).vertex1;
+ int vertex2 = getVertexSet(triangleLocation).vertex2;
+
+ // Get the three node colour lists
+ btAlignedObjectArray< int > &colourListVertex0( vertexConnectedColourLists[vertex0] );
+ btAlignedObjectArray< int > &colourListVertex1( vertexConnectedColourLists[vertex1] );
+ btAlignedObjectArray< int > &colourListVertex2( vertexConnectedColourLists[vertex2] );
+
+ // Choose the minimum colour that is in none of the lists
+ int colour = 0;
+ while(
+ colourListVertex0.findLinearSearch(colour) != colourListVertex0.size() ||
+ colourListVertex1.findLinearSearch(colour) != colourListVertex1.size() ||
+ colourListVertex2.findLinearSearch(colour) != colourListVertex2.size() )
+ {
+ ++colour;
+ }
+ // i should now be the minimum colour in neither list
+ // Add to the three lists so that future edges don't share
+ // And store the colour against this face
+ colourListVertex0.push_back(colour);
+ colourListVertex1.push_back(colour);
+ colourListVertex2.push_back(colour);
+
+ batchValues[triangleIndex] = colour;
+ }
+
+
+ // Check the colour counts
+ btAlignedObjectArray< int > batchCounts;
+ for( int i = 0; i < numTriangles; ++i )
+ {
+ int batch = batchValues[i];
+ if( batch >= batchCounts.size() )
+ batchCounts.push_back(1);
+ else
+ ++(batchCounts[batch]);
+ }
+
+
+ m_batchStartLengths.resize(batchCounts.size());
+ m_batchStartLengths[0] = btSomePair(0,0);
+
+
+ int sum = 0;
+ for( int batchIndex = 0; batchIndex < batchCounts.size(); ++batchIndex )
+ {
+ m_batchStartLengths[batchIndex].first = sum;
+ m_batchStartLengths[batchIndex].second = batchCounts[batchIndex];
+ sum += batchCounts[batchIndex];
+ }
+
+ /////////////////////////////
+ // Sort data based on batches
+
+ // Create source arrays by copying originals
+ btAlignedObjectArray<btSoftBodyTriangleData::TriangleNodeSet> m_vertexIndices_Backup(m_vertexIndices);
+ btAlignedObjectArray<float> m_area_Backup(m_area);
+ btAlignedObjectArray<Vectormath::Aos::Vector3> m_normal_Backup(m_normal);
+
+
+ for( int batch = 0; batch < batchCounts.size(); ++batch )
+ batchCounts[batch] = 0;
+
+ // Do sort as single pass into destination arrays
+ for( int triangleIndex = 0; triangleIndex < numTriangles; ++triangleIndex )
+ {
+ // To maintain locations run off the original link locations rather than the current position.
+ // It's not cache efficient, but as we run this rarely that should not matter.
+ // It's faster than searching the link location array for the current location and then updating it.
+ // The other alternative would be to unsort before resorting, but this is equivalent to doing that.
+ int triangleLocation = m_triangleAddresses[triangleIndex];
+
+ // Obtain batch and calculate target location for the
+ // next element in that batch, incrementing the batch counter
+ // afterwards
+ int batch = batchValues[triangleIndex];
+ int newLocation = m_batchStartLengths[batch].first + batchCounts[batch];
+
+ batchCounts[batch] = batchCounts[batch] + 1;
+ m_vertexIndices[newLocation] = m_vertexIndices_Backup[triangleLocation];
+ m_area[newLocation] = m_area_Backup[triangleLocation];
+ m_normal[newLocation] = m_normal_Backup[triangleLocation];
+
+ // Update the locations array to account for the moved entry
+ m_triangleAddresses[triangleIndex] = newLocation;
+ }
+} // btSoftBodyTriangleDataOpenCL::generateBatches
+
+
+
+
+
+
+
+btOpenCLSoftBodySolver::btOpenCLSoftBodySolver(cl_command_queue queue, cl_context ctx, bool bUpdateAchchoredNodePos) :
+ m_linkData(queue, ctx),
+ m_vertexData(queue, ctx),
+ m_triangleData(queue, ctx),
+ m_defaultCLFunctions(queue, ctx),
+ m_currentCLFunctions(&m_defaultCLFunctions),
+ m_clPerClothAcceleration(queue, ctx, &m_perClothAcceleration, true ),
+ m_clPerClothWindVelocity(queue, ctx, &m_perClothWindVelocity, true ),
+ m_clPerClothDampingFactor(queue,ctx, &m_perClothDampingFactor, true ),
+ m_clPerClothVelocityCorrectionCoefficient(queue, ctx,&m_perClothVelocityCorrectionCoefficient, true ),
+ m_clPerClothLiftFactor(queue, ctx,&m_perClothLiftFactor, true ),
+ m_clPerClothDragFactor(queue, ctx,&m_perClothDragFactor, true ),
+ m_clPerClothMediumDensity(queue, ctx,&m_perClothMediumDensity, true ),
+ m_clPerClothCollisionObjects( queue, ctx, &m_perClothCollisionObjects, true ),
+ m_clCollisionObjectDetails( queue, ctx, &m_collisionObjectDetails, true ),
+ m_clPerClothFriction( queue, ctx, &m_perClothFriction, false ),
+ m_clAnchorPosition( queue, ctx, &m_anchorPosition, true ),
+ m_clAnchorIndex( queue, ctx, &m_anchorIndex, true),
+ m_cqCommandQue( queue ),
+ m_cxMainContext(ctx),
+ m_defaultWorkGroupSize(BT_DEFAULT_WORKGROUPSIZE),
+ m_bUpdateAnchoredNodePos(bUpdateAchchoredNodePos)
+{
+
+ // Initial we will clearly need to update solver constants
+ // For now this is global for the cloths linked with this solver - we should probably make this body specific
+ // for performance in future once we understand more clearly when constants need to be updated
+ m_updateSolverConstants = true;
+
+ m_shadersInitialized = false;
+
+ m_prepareLinksKernel = 0;
+ m_solvePositionsFromLinksKernel = 0;
+ m_updateConstantsKernel = 0;
+ m_integrateKernel = 0;
+ m_addVelocityKernel = 0;
+ m_updatePositionsFromVelocitiesKernel = 0;
+ m_updateVelocitiesFromPositionsWithoutVelocitiesKernel = 0;
+ m_updateVelocitiesFromPositionsWithVelocitiesKernel = 0;
+ m_vSolveLinksKernel = 0;
+ m_solveCollisionsAndUpdateVelocitiesKernel = 0;
+ m_resetNormalsAndAreasKernel = 0;
+ m_updateSoftBodiesKernel = 0;
+ m_normalizeNormalsAndAreasKernel = 0;
+ m_outputToVertexArrayKernel = 0;
+ m_applyForcesKernel = 0;
+ m_updateFixedVertexPositionsKernel = 0;
+}
+
+btOpenCLSoftBodySolver::~btOpenCLSoftBodySolver()
+{
+ releaseKernels();
+}
+
+void btOpenCLSoftBodySolver::releaseKernels()
+{
+ RELEASE_CL_KERNEL( m_prepareLinksKernel );
+ RELEASE_CL_KERNEL( m_solvePositionsFromLinksKernel );
+ RELEASE_CL_KERNEL( m_updateConstantsKernel );
+ RELEASE_CL_KERNEL( m_integrateKernel );
+ RELEASE_CL_KERNEL( m_addVelocityKernel );
+ RELEASE_CL_KERNEL( m_updatePositionsFromVelocitiesKernel );
+ RELEASE_CL_KERNEL( m_updateVelocitiesFromPositionsWithoutVelocitiesKernel );
+ RELEASE_CL_KERNEL( m_updateVelocitiesFromPositionsWithVelocitiesKernel );
+ RELEASE_CL_KERNEL( m_vSolveLinksKernel );
+ RELEASE_CL_KERNEL( m_solveCollisionsAndUpdateVelocitiesKernel );
+ RELEASE_CL_KERNEL( m_resetNormalsAndAreasKernel );
+ RELEASE_CL_KERNEL( m_normalizeNormalsAndAreasKernel );
+ RELEASE_CL_KERNEL( m_outputToVertexArrayKernel );
+ RELEASE_CL_KERNEL( m_applyForcesKernel );
+ RELEASE_CL_KERNEL( m_updateFixedVertexPositionsKernel );
+
+ m_shadersInitialized = false;
+}
+
+void btOpenCLSoftBodySolver::copyBackToSoftBodies(bool bMove)
+{
+
+ // Move the vertex data back to the host first
+ m_vertexData.moveFromAccelerator(!bMove);
+
+ // Loop over soft bodies, copying all the vertex positions back for each body in turn
+ for( int softBodyIndex = 0; softBodyIndex < m_softBodySet.size(); ++softBodyIndex )
+ {
+ btOpenCLAcceleratedSoftBodyInterface *softBodyInterface = m_softBodySet[ softBodyIndex ];
+ btSoftBody *softBody = softBodyInterface->getSoftBody();
+
+ int firstVertex = softBodyInterface->getFirstVertex();
+ int numVertices = softBodyInterface->getNumVertices();
+
+ // Copy vertices from solver back into the softbody
+ for( int vertex = 0; vertex < numVertices; ++vertex )
+ {
+ using Vectormath::Aos::Point3;
+ Point3 vertexPosition( m_vertexData.getVertexPositions()[firstVertex + vertex] );
+ Point3 normal(m_vertexData.getNormal(firstVertex + vertex));
+
+ softBody->m_nodes[vertex].m_x.setX( vertexPosition.getX() );
+ softBody->m_nodes[vertex].m_x.setY( vertexPosition.getY() );
+ softBody->m_nodes[vertex].m_x.setZ( vertexPosition.getZ() );
+
+ softBody->m_nodes[vertex].m_n.setX( normal.getX() );
+ softBody->m_nodes[vertex].m_n.setY( normal.getY() );
+ softBody->m_nodes[vertex].m_n.setZ( normal.getZ() );
+ }
+ }
+} // btOpenCLSoftBodySolver::copyBackToSoftBodies
+
+void btOpenCLSoftBodySolver::optimize( btAlignedObjectArray< btSoftBody * > &softBodies, bool forceUpdate )
+{
+ if( forceUpdate || m_softBodySet.size() != softBodies.size() )
+ {
+ // Have a change in the soft body set so update, reloading all the data
+ getVertexData().clear();
+ getTriangleData().clear();
+ getLinkData().clear();
+ m_softBodySet.resize(0);
+ m_anchorIndex.clear();
+
+ int maxPiterations = 0;
+ int maxViterations = 0;
+
+ for( int softBodyIndex = 0; softBodyIndex < softBodies.size(); ++softBodyIndex )
+ {
+ btSoftBody *softBody = softBodies[ softBodyIndex ];
+ using Vectormath::Aos::Matrix3;
+ using Vectormath::Aos::Point3;
+
+ // Create SoftBody that will store the information within the solver
+ btOpenCLAcceleratedSoftBodyInterface *newSoftBody = new btOpenCLAcceleratedSoftBodyInterface( softBody );
+ m_softBodySet.push_back( newSoftBody );
+
+ m_perClothAcceleration.push_back( toVector3(softBody->getWorldInfo()->m_gravity) );
+ m_perClothDampingFactor.push_back(softBody->m_cfg.kDP);
+ m_perClothVelocityCorrectionCoefficient.push_back( softBody->m_cfg.kVCF );
+ m_perClothLiftFactor.push_back( softBody->m_cfg.kLF );
+ m_perClothDragFactor.push_back( softBody->m_cfg.kDG );
+ m_perClothMediumDensity.push_back(softBody->getWorldInfo()->air_density);
+ // Simple init values. Actually we'll put 0 and -1 into them at the appropriate time
+ m_perClothFriction.push_back(softBody->m_cfg.kDF);
+ m_perClothCollisionObjects.push_back( CollisionObjectIndices(-1, -1) );
+
+ // Add space for new vertices and triangles in the default solver for now
+ // TODO: Include space here for tearing too later
+ int firstVertex = getVertexData().getNumVertices();
+ int numVertices = softBody->m_nodes.size();
+ int maxVertices = numVertices;
+ // Allocate space for new vertices in all the vertex arrays
+ getVertexData().createVertices( maxVertices, softBodyIndex );
+
+ int firstTriangle = getTriangleData().getNumTriangles();
+ int numTriangles = softBody->m_faces.size();
+ int maxTriangles = numTriangles;
+ getTriangleData().createTriangles( maxTriangles );
+
+ // Copy vertices from softbody into the solver
+ for( int vertex = 0; vertex < numVertices; ++vertex )
+ {
+ Point3 multPoint(softBody->m_nodes[vertex].m_x.getX(), softBody->m_nodes[vertex].m_x.getY(), softBody->m_nodes[vertex].m_x.getZ());
+ btSoftBodyVertexData::VertexDescription desc;
+
+ // TODO: Position in the softbody might be pre-transformed
+ // or we may need to adapt for the pose.
+ //desc.setPosition( cloth.getMeshTransform()*multPoint );
+ desc.setPosition( multPoint );
+
+ float vertexInverseMass = softBody->m_nodes[vertex].m_im;
+ desc.setInverseMass(vertexInverseMass);
+ getVertexData().setVertexAt( desc, firstVertex + vertex );
+
+ m_anchorIndex.push_back(-1);
+ }
+
+ // Copy triangles similarly
+ // We're assuming here that vertex indices are based on the firstVertex rather than the entire scene
+ for( int triangle = 0; triangle < numTriangles; ++triangle )
+ {
+ // Note that large array storage is relative to the array not to the cloth
+ // So we need to add firstVertex to each value
+ int vertexIndex0 = (softBody->m_faces[triangle].m_n[0] - &(softBody->m_nodes[0]));
+ int vertexIndex1 = (softBody->m_faces[triangle].m_n[1] - &(softBody->m_nodes[0]));
+ int vertexIndex2 = (softBody->m_faces[triangle].m_n[2] - &(softBody->m_nodes[0]));
+ btSoftBodyTriangleData::TriangleDescription newTriangle(vertexIndex0 + firstVertex, vertexIndex1 + firstVertex, vertexIndex2 + firstVertex);
+ getTriangleData().setTriangleAt( newTriangle, firstTriangle + triangle );
+
+ // Increase vertex triangle counts for this triangle
+ getVertexData().getTriangleCount(newTriangle.getVertexSet().vertex0)++;
+ getVertexData().getTriangleCount(newTriangle.getVertexSet().vertex1)++;
+ getVertexData().getTriangleCount(newTriangle.getVertexSet().vertex2)++;
+ }
+
+ int firstLink = getLinkData().getNumLinks();
+ int numLinks = softBody->m_links.size();
+// int maxLinks = numLinks;
+
+ // Allocate space for the links
+ getLinkData().createLinks( numLinks );
+
+ // Add the links
+ for( int link = 0; link < numLinks; ++link )
+ {
+ int vertexIndex0 = softBody->m_links[link].m_n[0] - &(softBody->m_nodes[0]);
+ int vertexIndex1 = softBody->m_links[link].m_n[1] - &(softBody->m_nodes[0]);
+
+ btSoftBodyLinkData::LinkDescription newLink(vertexIndex0 + firstVertex, vertexIndex1 + firstVertex, softBody->m_links[link].m_material->m_kLST);
+ newLink.setLinkStrength(1.f);
+ getLinkData().setLinkAt(newLink, firstLink + link);
+ }
+
+ newSoftBody->setFirstVertex( firstVertex );
+ newSoftBody->setFirstTriangle( firstTriangle );
+ newSoftBody->setNumVertices( numVertices );
+ newSoftBody->setMaxVertices( maxVertices );
+ newSoftBody->setNumTriangles( numTriangles );
+ newSoftBody->setMaxTriangles( maxTriangles );
+ newSoftBody->setFirstLink( firstLink );
+ newSoftBody->setNumLinks( numLinks );
+
+ // Find maximum piterations and viterations
+ int piterations = softBody->m_cfg.piterations;
+
+ if ( piterations > maxPiterations )
+ maxPiterations = piterations;
+
+ int viterations = softBody->m_cfg.viterations;
+
+ if ( viterations > maxViterations )
+ maxViterations = viterations;
+
+ // zero mass
+ for( int vertex = 0; vertex < numVertices; ++vertex )
+ {
+ if ( softBody->m_nodes[vertex].m_im == 0 )
+ {
+ AnchorNodeInfoCL nodeInfo;
+ nodeInfo.clVertexIndex = firstVertex + vertex;
+ nodeInfo.pNode = &softBody->m_nodes[vertex];
+
+ m_anchorNodeInfoArray.push_back(nodeInfo);
+ }
+ }
+
+ // anchor position
+ if ( numVertices > 0 )
+ {
+ for ( int anchorIndex = 0; anchorIndex < softBody->m_anchors.size(); anchorIndex++ )
+ {
+ btSoftBody::Node* anchorNode = softBody->m_anchors[anchorIndex].m_node;
+ btSoftBody::Node* firstNode = &softBody->m_nodes[0];
+
+ AnchorNodeInfoCL nodeInfo;
+ nodeInfo.clVertexIndex = firstVertex + (int)(anchorNode - firstNode);
+ nodeInfo.pNode = anchorNode;
+
+ m_anchorNodeInfoArray.push_back(nodeInfo);
+ }
+ }
+ }
+
+
+ m_anchorPosition.clear();
+ m_anchorPosition.resize(m_anchorNodeInfoArray.size());
+
+ for ( int anchorNode = 0; anchorNode < m_anchorNodeInfoArray.size(); anchorNode++ )
+ {
+ const AnchorNodeInfoCL& anchorNodeInfo = m_anchorNodeInfoArray[anchorNode];
+ m_anchorIndex[anchorNodeInfo.clVertexIndex] = anchorNode;
+ getVertexData().getInverseMass(anchorNodeInfo.clVertexIndex) = 0.0f;
+ }
+
+ updateConstants(0.f);
+
+ // set position and velocity iterations
+ setNumberOfPositionIterations(maxPiterations);
+ setNumberOfVelocityIterations(maxViterations);
+
+ // set wind velocity
+ m_perClothWindVelocity.resize( m_softBodySet.size() );
+ for( int softBodyIndex = 0; softBodyIndex < m_softBodySet.size(); ++softBodyIndex )
+ {
+ btSoftBody *softBody = m_softBodySet[softBodyIndex]->getSoftBody();
+ m_perClothWindVelocity[softBodyIndex] = toVector3(softBody->getWindVelocity());
+ }
+
+ m_clPerClothWindVelocity.changedOnCPU();
+
+ // generate batches
+ m_linkData.generateBatches();
+ m_triangleData.generateBatches();
+
+ // Build the shaders to match the batching parameters
+ buildShaders();
+ }
+}
+
+
+btSoftBodyLinkData &btOpenCLSoftBodySolver::getLinkData()
+{
+ // TODO: Consider setting link data to "changed" here
+ return m_linkData;
+}
+
+btSoftBodyVertexData &btOpenCLSoftBodySolver::getVertexData()
+{
+ // TODO: Consider setting vertex data to "changed" here
+ return m_vertexData;
+}
+
+btSoftBodyTriangleData &btOpenCLSoftBodySolver::getTriangleData()
+{
+ // TODO: Consider setting triangle data to "changed" here
+ return m_triangleData;
+}
+
+void btOpenCLSoftBodySolver::resetNormalsAndAreas( int numVertices )
+{
+ cl_int ciErrNum;
+ ciErrNum = clSetKernelArg(m_resetNormalsAndAreasKernel, 0, sizeof(numVertices), (void*)&numVertices); //oclCHECKERROR(ciErrNum, CL_SUCCESS);
+ ciErrNum = clSetKernelArg(m_resetNormalsAndAreasKernel, 1, sizeof(cl_mem), (void*)&m_vertexData.m_clVertexNormal.m_buffer);//oclCHECKERROR(ciErrNum, CL_SUCCESS);
+ ciErrNum = clSetKernelArg(m_resetNormalsAndAreasKernel, 2, sizeof(cl_mem), (void*)&m_vertexData.m_clVertexArea.m_buffer); //oclCHECKERROR(ciErrNum, CL_SUCCESS);
+ size_t numWorkItems = m_defaultWorkGroupSize*((numVertices + (m_defaultWorkGroupSize-1)) / m_defaultWorkGroupSize);
+
+ if (numWorkItems)
+ {
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue, m_resetNormalsAndAreasKernel, 1, NULL, &numWorkItems, &m_defaultWorkGroupSize, 0,0,0 );
+
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(m_resetNormalsAndAreasKernel)" );
+ }
+ }
+
+}
+
+void btOpenCLSoftBodySolver::normalizeNormalsAndAreas( int numVertices )
+{
+ cl_int ciErrNum;
+
+ ciErrNum = clSetKernelArg(m_normalizeNormalsAndAreasKernel, 0, sizeof(int),(void*) &numVertices);
+ ciErrNum = clSetKernelArg(m_normalizeNormalsAndAreasKernel, 1, sizeof(cl_mem), &m_vertexData.m_clVertexTriangleCount.m_buffer);
+ ciErrNum = clSetKernelArg(m_normalizeNormalsAndAreasKernel, 2, sizeof(cl_mem), &m_vertexData.m_clVertexNormal.m_buffer);
+ ciErrNum = clSetKernelArg(m_normalizeNormalsAndAreasKernel, 3, sizeof(cl_mem), &m_vertexData.m_clVertexArea.m_buffer);
+ size_t numWorkItems = m_defaultWorkGroupSize*((numVertices + (m_defaultWorkGroupSize-1)) / m_defaultWorkGroupSize);
+ if (numWorkItems)
+ {
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue, m_normalizeNormalsAndAreasKernel, 1, NULL, &numWorkItems, &m_defaultWorkGroupSize, 0,0,0);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(m_normalizeNormalsAndAreasKernel)");
+ }
+ }
+
+}
+
+void btOpenCLSoftBodySolver::executeUpdateSoftBodies( int firstTriangle, int numTriangles )
+{
+ cl_int ciErrNum;
+ ciErrNum = clSetKernelArg(m_updateSoftBodiesKernel, 0, sizeof(int), (void*) &firstTriangle);
+ ciErrNum = clSetKernelArg(m_updateSoftBodiesKernel, 1, sizeof(int), &numTriangles);
+ ciErrNum = clSetKernelArg(m_updateSoftBodiesKernel, 2, sizeof(cl_mem), &m_triangleData.m_clVertexIndices.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateSoftBodiesKernel, 3, sizeof(cl_mem), &m_vertexData.m_clVertexPosition.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateSoftBodiesKernel, 4, sizeof(cl_mem), &m_vertexData.m_clVertexNormal.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateSoftBodiesKernel, 5, sizeof(cl_mem), &m_vertexData.m_clVertexArea.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateSoftBodiesKernel, 6, sizeof(cl_mem), &m_triangleData.m_clNormal.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateSoftBodiesKernel, 7, sizeof(cl_mem), &m_triangleData.m_clArea.m_buffer);
+
+ size_t numWorkItems = m_defaultWorkGroupSize*((numTriangles + (m_defaultWorkGroupSize-1)) / m_defaultWorkGroupSize);
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue, m_updateSoftBodiesKernel, 1, NULL, &numWorkItems, &m_defaultWorkGroupSize,0,0,0);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(m_normalizeNormalsAndAreasKernel)");
+ }
+
+}
+
+void btOpenCLSoftBodySolver::updateSoftBodies()
+{
+ using namespace Vectormath::Aos;
+
+
+ int numVertices = m_vertexData.getNumVertices();
+// int numTriangles = m_triangleData.getNumTriangles();
+
+ // Ensure data is on accelerator
+ m_vertexData.moveToAccelerator();
+ m_triangleData.moveToAccelerator();
+
+ resetNormalsAndAreas( numVertices );
+
+
+ // Go through triangle batches so updates occur correctly
+ for( int batchIndex = 0; batchIndex < m_triangleData.m_batchStartLengths.size(); ++batchIndex )
+ {
+
+ int startTriangle = m_triangleData.m_batchStartLengths[batchIndex].first;
+ int numTriangles = m_triangleData.m_batchStartLengths[batchIndex].second;
+
+ executeUpdateSoftBodies( startTriangle, numTriangles );
+ }
+
+
+ normalizeNormalsAndAreas( numVertices );
+} // updateSoftBodies
+
+
+Vectormath::Aos::Vector3 btOpenCLSoftBodySolver::ProjectOnAxis( const Vectormath::Aos::Vector3 &v, const Vectormath::Aos::Vector3 &a )
+{
+ return a*Vectormath::Aos::dot(v, a);
+}
+
+void btOpenCLSoftBodySolver::ApplyClampedForce( float solverdt, const Vectormath::Aos::Vector3 &force, const Vectormath::Aos::Vector3 &vertexVelocity, float inverseMass, Vectormath::Aos::Vector3 &vertexForce )
+{
+ float dtInverseMass = solverdt*inverseMass;
+ if( Vectormath::Aos::lengthSqr(force * dtInverseMass) > Vectormath::Aos::lengthSqr(vertexVelocity) )
+ {
+ vertexForce -= ProjectOnAxis( vertexVelocity, normalize( force ) )/dtInverseMass;
+ } else {
+ vertexForce += force;
+ }
+}
+
+void btOpenCLSoftBodySolver::updateFixedVertexPositions()
+{
+ // Ensure data is on accelerator
+ m_vertexData.moveToAccelerator();
+ m_clAnchorPosition.moveToGPU();
+ m_clAnchorIndex.moveToGPU();
+
+ cl_int ciErrNum ;
+ int numVerts = m_vertexData.getNumVertices();
+ ciErrNum = clSetKernelArg(m_updateFixedVertexPositionsKernel, 0, sizeof(int), &numVerts);
+ ciErrNum = clSetKernelArg(m_updateFixedVertexPositionsKernel,1, sizeof(cl_mem), &m_clAnchorIndex.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateFixedVertexPositionsKernel,2, sizeof(cl_mem), &m_vertexData.m_clVertexPosition.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateFixedVertexPositionsKernel,3, sizeof(cl_mem), &m_clAnchorPosition.m_buffer);
+
+ size_t numWorkItems = m_defaultWorkGroupSize*((m_vertexData.getNumVertices() + (m_defaultWorkGroupSize-1)) / m_defaultWorkGroupSize);
+ if (numWorkItems)
+ {
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue,m_updateFixedVertexPositionsKernel, 1, NULL, &numWorkItems, &m_defaultWorkGroupSize, 0,0,0);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(m_updateFixedVertexPositionsKernel)");
+ }
+ }
+
+}
+
+void btOpenCLSoftBodySolver::applyForces( float solverdt )
+{
+ // Ensure data is on accelerator
+ m_vertexData.moveToAccelerator();
+ m_clPerClothAcceleration.moveToGPU();
+ m_clPerClothLiftFactor.moveToGPU();
+ m_clPerClothDragFactor.moveToGPU();
+ m_clPerClothMediumDensity.moveToGPU();
+ m_clPerClothWindVelocity.moveToGPU();
+
+ cl_int ciErrNum ;
+ int numVerts = m_vertexData.getNumVertices();
+ ciErrNum = clSetKernelArg(m_applyForcesKernel, 0, sizeof(int), &numVerts);
+ ciErrNum = clSetKernelArg(m_applyForcesKernel, 1, sizeof(float), &solverdt);
+ float fl = FLT_EPSILON;
+ ciErrNum = clSetKernelArg(m_applyForcesKernel, 2, sizeof(float), &fl);
+ ciErrNum = clSetKernelArg(m_applyForcesKernel, 3, sizeof(cl_mem), &m_vertexData.m_clClothIdentifier.m_buffer);
+ ciErrNum = clSetKernelArg(m_applyForcesKernel, 4, sizeof(cl_mem), &m_vertexData.m_clVertexNormal.m_buffer);
+ ciErrNum = clSetKernelArg(m_applyForcesKernel, 5, sizeof(cl_mem), &m_vertexData.m_clVertexArea.m_buffer);
+ ciErrNum = clSetKernelArg(m_applyForcesKernel, 6, sizeof(cl_mem), &m_vertexData.m_clVertexInverseMass.m_buffer);
+ ciErrNum = clSetKernelArg(m_applyForcesKernel, 7, sizeof(cl_mem), &m_clPerClothLiftFactor.m_buffer);
+ ciErrNum = clSetKernelArg(m_applyForcesKernel, 8 ,sizeof(cl_mem), &m_clPerClothDragFactor.m_buffer);
+ ciErrNum = clSetKernelArg(m_applyForcesKernel, 9, sizeof(cl_mem), &m_clPerClothWindVelocity.m_buffer);
+ ciErrNum = clSetKernelArg(m_applyForcesKernel,10, sizeof(cl_mem), &m_clPerClothAcceleration.m_buffer);
+ ciErrNum = clSetKernelArg(m_applyForcesKernel,11, sizeof(cl_mem), &m_clPerClothMediumDensity.m_buffer);
+ ciErrNum = clSetKernelArg(m_applyForcesKernel,12, sizeof(cl_mem), &m_vertexData.m_clVertexForceAccumulator.m_buffer);
+ ciErrNum = clSetKernelArg(m_applyForcesKernel,13, sizeof(cl_mem), &m_vertexData.m_clVertexVelocity.m_buffer);
+
+ size_t numWorkItems = m_defaultWorkGroupSize*((m_vertexData.getNumVertices() + (m_defaultWorkGroupSize-1)) / m_defaultWorkGroupSize);
+ if (numWorkItems)
+ {
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue,m_applyForcesKernel, 1, NULL, &numWorkItems, &m_defaultWorkGroupSize, 0,0,0);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(m_applyForcesKernel)");
+ }
+ }
+
+}
+
+/**
+ * Integrate motion on the solver.
+ */
+void btOpenCLSoftBodySolver::integrate( float solverdt )
+{
+ // Ensure data is on accelerator
+ m_vertexData.moveToAccelerator();
+
+ cl_int ciErrNum;
+ int numVerts = m_vertexData.getNumVertices();
+ ciErrNum = clSetKernelArg(m_integrateKernel, 0, sizeof(int), &numVerts);
+ ciErrNum = clSetKernelArg(m_integrateKernel, 1, sizeof(float), &solverdt);
+ ciErrNum = clSetKernelArg(m_integrateKernel, 2, sizeof(cl_mem), &m_vertexData.m_clVertexInverseMass.m_buffer);
+ ciErrNum = clSetKernelArg(m_integrateKernel, 3, sizeof(cl_mem), &m_vertexData.m_clVertexPosition.m_buffer);
+ ciErrNum = clSetKernelArg(m_integrateKernel, 4, sizeof(cl_mem), &m_vertexData.m_clVertexVelocity.m_buffer);
+ ciErrNum = clSetKernelArg(m_integrateKernel, 5, sizeof(cl_mem), &m_vertexData.m_clVertexPreviousPosition.m_buffer);
+ ciErrNum = clSetKernelArg(m_integrateKernel, 6, sizeof(cl_mem), &m_vertexData.m_clVertexForceAccumulator.m_buffer);
+
+ size_t numWorkItems = m_defaultWorkGroupSize*((m_vertexData.getNumVertices() + (m_defaultWorkGroupSize-1)) / m_defaultWorkGroupSize);
+ if (numWorkItems)
+ {
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue,m_integrateKernel, 1, NULL, &numWorkItems, &m_defaultWorkGroupSize,0,0,0);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(m_integrateKernel)");
+ }
+ }
+
+}
+
+float btOpenCLSoftBodySolver::computeTriangleArea(
+ const Vectormath::Aos::Point3 &vertex0,
+ const Vectormath::Aos::Point3 &vertex1,
+ const Vectormath::Aos::Point3 &vertex2 )
+{
+ Vectormath::Aos::Vector3 a = vertex1 - vertex0;
+ Vectormath::Aos::Vector3 b = vertex2 - vertex0;
+ Vectormath::Aos::Vector3 crossProduct = cross(a, b);
+ float area = length( crossProduct );
+ return area;
+}
+
+
+void btOpenCLSoftBodySolver::updateBounds()
+{
+ for( int softBodyIndex = 0; softBodyIndex < m_softBodySet.size(); ++softBodyIndex )
+ {
+ btVector3 minBound(-1e30,-1e30,-1e30), maxBound(1e30,1e30,1e30);
+ m_softBodySet[softBodyIndex]->updateBounds( minBound, maxBound );
+ }
+
+} // btOpenCLSoftBodySolver::updateBounds
+
+
+void btOpenCLSoftBodySolver::updateConstants( float timeStep )
+{
+
+ using namespace Vectormath::Aos;
+
+ if( m_updateSolverConstants )
+ {
+ m_updateSolverConstants = false;
+
+ // Will have to redo this if we change the structure (tear, maybe) or various other possible changes
+
+ // Initialise link constants
+ const int numLinks = m_linkData.getNumLinks();
+ for( int linkIndex = 0; linkIndex < numLinks; ++linkIndex )
+ {
+ btSoftBodyLinkData::LinkNodePair &vertices( m_linkData.getVertexPair(linkIndex) );
+ m_linkData.getRestLength(linkIndex) = length((m_vertexData.getPosition( vertices.vertex0 ) - m_vertexData.getPosition( vertices.vertex1 )));
+ float invMass0 = m_vertexData.getInverseMass(vertices.vertex0);
+ float invMass1 = m_vertexData.getInverseMass(vertices.vertex1);
+ float linearStiffness = m_linkData.getLinearStiffnessCoefficient(linkIndex);
+ float massLSC = (invMass0 + invMass1)/linearStiffness;
+ m_linkData.getMassLSC(linkIndex) = massLSC;
+ float restLength = m_linkData.getRestLength(linkIndex);
+ float restLengthSquared = restLength*restLength;
+ m_linkData.getRestLengthSquared(linkIndex) = restLengthSquared;
+ }
+ }
+
+}
+
+class QuickSortCompare
+{
+ public:
+
+ bool operator() ( const CollisionShapeDescription& a, const CollisionShapeDescription& b ) const
+ {
+ return ( a.softBodyIdentifier < b.softBodyIdentifier );
+ }
+};
+
+
+/**
+ * Sort the collision object details array and generate indexing into it for the per-cloth collision object array.
+ */
+void btOpenCLSoftBodySolver::prepareCollisionConstraints()
+{
+ // First do a simple sort on the collision objects
+ btAlignedObjectArray<int> numObjectsPerClothPrefixSum;
+ btAlignedObjectArray<int> numObjectsPerCloth;
+ numObjectsPerCloth.resize( m_softBodySet.size(), 0 );
+ numObjectsPerClothPrefixSum.resize( m_softBodySet.size(), 0 );
+
+
+
+ m_collisionObjectDetails.quickSort( QuickSortCompare() );
+
+ if (!m_perClothCollisionObjects.size())
+ return;
+
+ // Generating indexing for perClothCollisionObjects
+ // First clear the previous values with the "no collision object for cloth" constant
+ for( int clothIndex = 0; clothIndex < m_perClothCollisionObjects.size(); ++clothIndex )
+ {
+ m_perClothCollisionObjects[clothIndex].firstObject = -1;
+ m_perClothCollisionObjects[clothIndex].endObject = -1;
+ }
+ int currentCloth = 0;
+ int startIndex = 0;
+ for( int collisionObject = 0; collisionObject < m_collisionObjectDetails.size(); ++collisionObject )
+ {
+ int nextCloth = m_collisionObjectDetails[collisionObject].softBodyIdentifier;
+ if( nextCloth != currentCloth )
+ {
+ // Changed cloth in the array
+ // Set the end index and the range is what we need for currentCloth
+ m_perClothCollisionObjects[currentCloth].firstObject = startIndex;
+ m_perClothCollisionObjects[currentCloth].endObject = collisionObject;
+ currentCloth = nextCloth;
+ startIndex = collisionObject;
+ }
+ }
+
+ // And update last cloth
+ m_perClothCollisionObjects[currentCloth].firstObject = startIndex;
+ m_perClothCollisionObjects[currentCloth].endObject = m_collisionObjectDetails.size();
+
+} // btOpenCLSoftBodySolver::prepareCollisionConstraints
+
+
+
+void btOpenCLSoftBodySolver::solveConstraints( float solverdt )
+{
+
+ using Vectormath::Aos::Vector3;
+ using Vectormath::Aos::Point3;
+ using Vectormath::Aos::lengthSqr;
+ using Vectormath::Aos::dot;
+
+ // Prepare links
+// int numLinks = m_linkData.getNumLinks();
+// int numVertices = m_vertexData.getNumVertices();
+
+ float kst = 1.f;
+ float ti = 0.f;
+
+
+ m_clPerClothDampingFactor.moveToGPU();
+ m_clPerClothVelocityCorrectionCoefficient.moveToGPU();
+
+
+ // Ensure data is on accelerator
+ m_linkData.moveToAccelerator();
+ m_vertexData.moveToAccelerator();
+
+ prepareLinks();
+
+
+
+ for( int iteration = 0; iteration < m_numberOfVelocityIterations ; ++iteration )
+ {
+ for( int i = 0; i < m_linkData.m_batchStartLengths.size(); ++i )
+ {
+ int startLink = m_linkData.m_batchStartLengths[i].start;
+ int numLinks = m_linkData.m_batchStartLengths[i].length;
+
+ solveLinksForVelocity( startLink, numLinks, kst );
+ }
+ }
+
+
+ prepareCollisionConstraints();
+
+ // Compute new positions from velocity
+ // Also update the previous position so that our position computation is now based on the new position from the velocity solution
+ // rather than based directly on the original positions
+ if( m_numberOfVelocityIterations > 0 )
+ {
+ updateVelocitiesFromPositionsWithVelocities( 1.f/solverdt );
+ } else {
+ updateVelocitiesFromPositionsWithoutVelocities( 1.f/solverdt );
+ }
+
+ // Solve position
+ for( int iteration = 0; iteration < m_numberOfPositionIterations ; ++iteration )
+ {
+ for( int i = 0; i < m_linkData.m_batchStartLengths.size(); ++i )
+ {
+ int startLink = m_linkData.m_batchStartLengths[i].start;
+ int numLinks = m_linkData.m_batchStartLengths[i].length;
+
+ solveLinksForPosition( startLink, numLinks, kst, ti );
+ }
+
+ } // for( int iteration = 0; iteration < m_numberOfPositionIterations ; ++iteration )
+
+
+ // At this point assume that the force array is blank - we will overwrite it
+ solveCollisionsAndUpdateVelocities( 1.f/solverdt );
+
+}
+
+
+//////////////////////////////////////
+// Kernel dispatches
+void btOpenCLSoftBodySolver::prepareLinks()
+{
+ cl_int ciErrNum;
+ int numLinks = m_linkData.getNumLinks();
+ ciErrNum = clSetKernelArg(m_prepareLinksKernel,0, sizeof(int), &numLinks);
+ ciErrNum = clSetKernelArg(m_prepareLinksKernel,1, sizeof(cl_mem), &m_linkData.m_clLinks.m_buffer);
+ ciErrNum = clSetKernelArg(m_prepareLinksKernel,2, sizeof(cl_mem), &m_linkData.m_clLinksMassLSC.m_buffer);
+ ciErrNum = clSetKernelArg(m_prepareLinksKernel,3, sizeof(cl_mem), &m_vertexData.m_clVertexPreviousPosition.m_buffer);
+ ciErrNum = clSetKernelArg(m_prepareLinksKernel,4, sizeof(cl_mem), &m_linkData.m_clLinksLengthRatio.m_buffer);
+ ciErrNum = clSetKernelArg(m_prepareLinksKernel,5, sizeof(cl_mem), &m_linkData.m_clLinksCLength.m_buffer);
+
+ size_t numWorkItems = m_defaultWorkGroupSize*((m_linkData.getNumLinks() + (m_defaultWorkGroupSize-1)) / m_defaultWorkGroupSize);
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue,m_prepareLinksKernel, 1 , NULL, &numWorkItems, &m_defaultWorkGroupSize,0,0,0);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(m_prepareLinksKernel)");
+ }
+
+}
+
+void btOpenCLSoftBodySolver::updatePositionsFromVelocities( float solverdt )
+{
+ cl_int ciErrNum;
+ int numVerts = m_vertexData.getNumVertices();
+ ciErrNum = clSetKernelArg(m_updatePositionsFromVelocitiesKernel,0, sizeof(int), &numVerts);
+ ciErrNum = clSetKernelArg(m_updatePositionsFromVelocitiesKernel,1, sizeof(float), &solverdt);
+ ciErrNum = clSetKernelArg(m_updatePositionsFromVelocitiesKernel,2, sizeof(cl_mem), &m_vertexData.m_clVertexVelocity.m_buffer);
+ ciErrNum = clSetKernelArg(m_updatePositionsFromVelocitiesKernel,3, sizeof(cl_mem), &m_vertexData.m_clVertexPreviousPosition.m_buffer);
+ ciErrNum = clSetKernelArg(m_updatePositionsFromVelocitiesKernel,4, sizeof(cl_mem), &m_vertexData.m_clVertexPosition.m_buffer);
+
+ size_t numWorkItems = m_defaultWorkGroupSize*((m_vertexData.getNumVertices() + (m_defaultWorkGroupSize-1)) / m_defaultWorkGroupSize);
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue,m_updatePositionsFromVelocitiesKernel, 1, NULL, &numWorkItems,&m_defaultWorkGroupSize,0,0,0);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(m_updatePositionsFromVelocitiesKernel)");
+ }
+
+}
+
+void btOpenCLSoftBodySolver::solveLinksForPosition( int startLink, int numLinks, float kst, float ti )
+{
+ cl_int ciErrNum;
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,0, sizeof(int), &startLink);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,1, sizeof(int), &numLinks);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,2, sizeof(float), &kst);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,3, sizeof(float), &ti);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,4, sizeof(cl_mem), &m_linkData.m_clLinks.m_buffer);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,5, sizeof(cl_mem), &m_linkData.m_clLinksMassLSC.m_buffer);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,6, sizeof(cl_mem), &m_linkData.m_clLinksRestLengthSquared.m_buffer);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,7, sizeof(cl_mem), &m_vertexData.m_clVertexInverseMass.m_buffer);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,8, sizeof(cl_mem), &m_vertexData.m_clVertexPosition.m_buffer);
+
+ size_t numWorkItems = m_defaultWorkGroupSize*((numLinks + (m_defaultWorkGroupSize-1)) / m_defaultWorkGroupSize);
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue,m_solvePositionsFromLinksKernel,1,NULL,&numWorkItems,&m_defaultWorkGroupSize,0,0,0);
+ if( ciErrNum!= CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(m_solvePositionsFromLinksKernel)");
+ }
+
+} // solveLinksForPosition
+
+
+void btOpenCLSoftBodySolver::solveLinksForVelocity( int startLink, int numLinks, float kst )
+{
+ cl_int ciErrNum;
+ ciErrNum = clSetKernelArg(m_vSolveLinksKernel, 0, sizeof(int), &startLink);
+ ciErrNum = clSetKernelArg(m_vSolveLinksKernel, 1, sizeof(int), &numLinks);
+ ciErrNum = clSetKernelArg(m_vSolveLinksKernel, 2, sizeof(float), &kst);
+ ciErrNum = clSetKernelArg(m_vSolveLinksKernel, 3, sizeof(cl_mem), &m_linkData.m_clLinks.m_buffer);
+ ciErrNum = clSetKernelArg(m_vSolveLinksKernel, 4, sizeof(cl_mem), &m_linkData.m_clLinksLengthRatio.m_buffer);
+ ciErrNum = clSetKernelArg(m_vSolveLinksKernel, 5, sizeof(cl_mem), &m_linkData.m_clLinksCLength.m_buffer);
+ ciErrNum = clSetKernelArg(m_vSolveLinksKernel, 6, sizeof(cl_mem), &m_vertexData.m_clVertexInverseMass.m_buffer);
+ ciErrNum = clSetKernelArg(m_vSolveLinksKernel, 7, sizeof(cl_mem), &m_vertexData.m_clVertexVelocity.m_buffer);
+
+ size_t numWorkItems = m_defaultWorkGroupSize*((numLinks + (m_defaultWorkGroupSize-1)) / m_defaultWorkGroupSize);
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue,m_vSolveLinksKernel,1,NULL,&numWorkItems, &m_defaultWorkGroupSize,0,0,0);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(m_vSolveLinksKernel)");
+ }
+
+}
+
+void btOpenCLSoftBodySolver::updateVelocitiesFromPositionsWithVelocities( float isolverdt )
+{
+ cl_int ciErrNum;
+ int numVerts = m_vertexData.getNumVertices();
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithVelocitiesKernel,0, sizeof(int), &numVerts);
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithVelocitiesKernel, 1, sizeof(float), &isolverdt);
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithVelocitiesKernel, 2, sizeof(cl_mem), &m_vertexData.m_clVertexPosition.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithVelocitiesKernel, 3, sizeof(cl_mem), &m_vertexData.m_clVertexPreviousPosition.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithVelocitiesKernel, 4, sizeof(cl_mem), &m_vertexData.m_clClothIdentifier.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithVelocitiesKernel, 5, sizeof(cl_mem), &m_clPerClothVelocityCorrectionCoefficient.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithVelocitiesKernel, 6, sizeof(cl_mem), &m_clPerClothDampingFactor.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithVelocitiesKernel, 7, sizeof(cl_mem), &m_vertexData.m_clVertexVelocity.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithVelocitiesKernel, 8, sizeof(cl_mem), &m_vertexData.m_clVertexForceAccumulator.m_buffer);
+
+ size_t numWorkItems = m_defaultWorkGroupSize*((m_vertexData.getNumVertices() + (m_defaultWorkGroupSize-1)) / m_defaultWorkGroupSize);
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue,m_updateVelocitiesFromPositionsWithVelocitiesKernel, 1, NULL, &numWorkItems, &m_defaultWorkGroupSize,0,0,0);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(m_updateVelocitiesFromPositionsWithVelocitiesKernel)");
+ }
+
+
+} // updateVelocitiesFromPositionsWithVelocities
+
+void btOpenCLSoftBodySolver::updateVelocitiesFromPositionsWithoutVelocities( float isolverdt )
+{
+ cl_int ciErrNum;
+ int numVerts = m_vertexData.getNumVertices();
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithoutVelocitiesKernel, 0, sizeof(int), &numVerts);
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithoutVelocitiesKernel, 1, sizeof(float), &isolverdt);
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithoutVelocitiesKernel, 2, sizeof(cl_mem),&m_vertexData.m_clVertexPosition.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithoutVelocitiesKernel, 3, sizeof(cl_mem),&m_vertexData.m_clVertexPreviousPosition.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithoutVelocitiesKernel, 4, sizeof(cl_mem),&m_vertexData.m_clClothIdentifier.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithoutVelocitiesKernel, 5, sizeof(cl_mem),&m_clPerClothDampingFactor.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithoutVelocitiesKernel, 6, sizeof(cl_mem),&m_vertexData.m_clVertexVelocity.m_buffer);
+ ciErrNum = clSetKernelArg(m_updateVelocitiesFromPositionsWithoutVelocitiesKernel, 7, sizeof(cl_mem),&m_vertexData.m_clVertexForceAccumulator.m_buffer);
+
+ size_t numWorkItems = m_defaultWorkGroupSize*((m_vertexData.getNumVertices() + (m_defaultWorkGroupSize-1)) / m_defaultWorkGroupSize);
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue,m_updateVelocitiesFromPositionsWithoutVelocitiesKernel, 1, NULL, &numWorkItems, &m_defaultWorkGroupSize,0,0,0);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(m_updateVelocitiesFromPositionsWithoutVelocitiesKernel)");
+ }
+
+} // updateVelocitiesFromPositionsWithoutVelocities
+
+
+
+void btOpenCLSoftBodySolver::solveCollisionsAndUpdateVelocities( float isolverdt )
+{
+ // Copy kernel parameters to GPU
+ m_vertexData.moveToAccelerator();
+ m_clPerClothFriction.moveToGPU();
+ m_clPerClothDampingFactor.moveToGPU();
+ m_clPerClothCollisionObjects.moveToGPU();
+ m_clCollisionObjectDetails.moveToGPU();
+
+ cl_int ciErrNum;
+ int numVerts = m_vertexData.getNumVertices();
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 0, sizeof(int), &numVerts);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 1, sizeof(int), &isolverdt);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 2, sizeof(cl_mem),&m_vertexData.m_clClothIdentifier.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 3, sizeof(cl_mem),&m_vertexData.m_clVertexPreviousPosition.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 4, sizeof(cl_mem),&m_clPerClothFriction.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 5, sizeof(cl_mem),&m_clPerClothDampingFactor.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 6, sizeof(cl_mem),&m_clPerClothCollisionObjects.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 7, sizeof(cl_mem),&m_clCollisionObjectDetails.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 8, sizeof(cl_mem),&m_vertexData.m_clVertexForceAccumulator.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 9, sizeof(cl_mem),&m_vertexData.m_clVertexVelocity.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 10, sizeof(cl_mem),&m_vertexData.m_clVertexPosition.m_buffer);
+
+ size_t numWorkItems = m_defaultWorkGroupSize*((m_vertexData.getNumVertices() + (m_defaultWorkGroupSize-1)) / m_defaultWorkGroupSize);
+ if (numWorkItems)
+ {
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue,m_solveCollisionsAndUpdateVelocitiesKernel, 1, NULL, &numWorkItems, &m_defaultWorkGroupSize,0,0,0);
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(m_updateVelocitiesFromPositionsWithoutVelocitiesKernel)");
+ }
+ }
+
+} // btOpenCLSoftBodySolver::updateVelocitiesFromPositionsWithoutVelocities
+
+
+
+// End kernel dispatches
+/////////////////////////////////////
+
+
+void btSoftBodySolverOutputCLtoCPU::copySoftBodyToVertexBuffer( const btSoftBody * const softBody, btVertexBufferDescriptor *vertexBuffer )
+{
+
+ btSoftBodySolver *solver = softBody->getSoftBodySolver();
+ btAssert( solver->getSolverType() == btSoftBodySolver::CL_SOLVER || solver->getSolverType() == btSoftBodySolver::CL_SIMD_SOLVER );
+ btOpenCLSoftBodySolver *dxSolver = static_cast< btOpenCLSoftBodySolver * >( solver );
+
+ btOpenCLAcceleratedSoftBodyInterface* currentCloth = dxSolver->findSoftBodyInterface( softBody );
+ btSoftBodyVertexDataOpenCL &vertexData( dxSolver->m_vertexData );
+
+
+ const int firstVertex = currentCloth->getFirstVertex();
+ const int lastVertex = firstVertex + currentCloth->getNumVertices();
+
+ if( vertexBuffer->getBufferType() == btVertexBufferDescriptor::CPU_BUFFER )
+ {
+ const btCPUVertexBufferDescriptor *cpuVertexBuffer = static_cast< btCPUVertexBufferDescriptor* >(vertexBuffer);
+ float *basePointer = cpuVertexBuffer->getBasePointer();
+
+ vertexData.m_clVertexPosition.copyFromGPU();
+ vertexData.m_clVertexNormal.copyFromGPU();
+
+ if( vertexBuffer->hasVertexPositions() )
+ {
+ const int vertexOffset = cpuVertexBuffer->getVertexOffset();
+ const int vertexStride = cpuVertexBuffer->getVertexStride();
+ float *vertexPointer = basePointer + vertexOffset;
+
+ for( int vertexIndex = firstVertex; vertexIndex < lastVertex; ++vertexIndex )
+ {
+ Vectormath::Aos::Point3 position = vertexData.getPosition(vertexIndex);
+ *(vertexPointer + 0) = position.getX();
+ *(vertexPointer + 1) = position.getY();
+ *(vertexPointer + 2) = position.getZ();
+ vertexPointer += vertexStride;
+ }
+ }
+ if( vertexBuffer->hasNormals() )
+ {
+ const int normalOffset = cpuVertexBuffer->getNormalOffset();
+ const int normalStride = cpuVertexBuffer->getNormalStride();
+ float *normalPointer = basePointer + normalOffset;
+
+ for( int vertexIndex = firstVertex; vertexIndex < lastVertex; ++vertexIndex )
+ {
+ Vectormath::Aos::Vector3 normal = vertexData.getNormal(vertexIndex);
+ *(normalPointer + 0) = normal.getX();
+ *(normalPointer + 1) = normal.getY();
+ *(normalPointer + 2) = normal.getZ();
+ normalPointer += normalStride;
+ }
+ }
+ }
+
+} // btSoftBodySolverOutputCLtoCPU::outputToVertexBuffers
+
+
+
+cl_kernel CLFunctions::compileCLKernelFromString( const char* kernelSource, const char* kernelName, const char* additionalMacros ,const char* orgSrcFileNameForCaching)
+{
+ printf("compiling kernelName: %s ",kernelName);
+ cl_kernel kernel=0;
+ cl_int ciErrNum;
+ size_t program_length = strlen(kernelSource);
+
+ cl_program m_cpProgram = clCreateProgramWithSource(m_cxMainContext, 1, (const char**)&kernelSource, &program_length, &ciErrNum);
+// oclCHECKERROR(ciErrNum, CL_SUCCESS);
+
+ // Build the program with 'mad' Optimization option
+
+
+#ifdef MAC
+ char* flags = "-cl-mad-enable -DMAC -DGUID_ARG";
+#else
+ //const char* flags = "-DGUID_ARG= -fno-alias";
+ const char* flags = "-DGUID_ARG= ";
+#endif
+
+ char* compileFlags = new char[strlen(additionalMacros) + strlen(flags) + 5];
+ sprintf(compileFlags, "%s %s", flags, additionalMacros);
+ ciErrNum = clBuildProgram(m_cpProgram, 0, NULL, compileFlags, NULL, NULL);
+ if (ciErrNum != CL_SUCCESS)
+ {
+ size_t numDevices;
+ clGetProgramInfo( m_cpProgram, CL_PROGRAM_DEVICES, 0, 0, &numDevices );
+ cl_device_id *devices = new cl_device_id[numDevices];
+ clGetProgramInfo( m_cpProgram, CL_PROGRAM_DEVICES, numDevices, devices, &numDevices );
+ for( int i = 0; i < 2; ++i )
+ {
+ char *build_log;
+ size_t ret_val_size;
+ clGetProgramBuildInfo(m_cpProgram, devices[i], CL_PROGRAM_BUILD_LOG, 0, NULL, &ret_val_size);
+ build_log = new char[ret_val_size+1];
+ clGetProgramBuildInfo(m_cpProgram, devices[i], CL_PROGRAM_BUILD_LOG, ret_val_size, build_log, NULL);
+
+ // to be carefully, terminate with \0
+ // there's no information in the reference whether the string is 0 terminated or not
+ build_log[ret_val_size] = '\0';
+
+
+ printf("Error in clBuildProgram, Line %u in file %s, Log: \n%s\n !!!\n\n", __LINE__, __FILE__, build_log);
+ delete[] build_log;
+ }
+#ifndef BT_SUPPRESS_OPENCL_ASSERTS
+ btAssert(0);
+#endif //BT_SUPPRESS_OPENCL_ASSERTS
+ m_kernelCompilationFailures++;
+ return 0;
+ }
+
+
+ // Create the kernel
+ kernel = clCreateKernel(m_cpProgram, kernelName, &ciErrNum);
+ if (ciErrNum != CL_SUCCESS)
+ {
+ const char* msg = "";
+ switch(ciErrNum)
+ {
+ case CL_INVALID_PROGRAM:
+ msg = "Program is not a valid program object.";
+ break;
+ case CL_INVALID_PROGRAM_EXECUTABLE:
+ msg = "There is no successfully built executable for program.";
+ break;
+ case CL_INVALID_KERNEL_NAME:
+ msg = "kernel_name is not found in program.";
+ break;
+ case CL_INVALID_KERNEL_DEFINITION:
+ msg = "the function definition for __kernel function given by kernel_name such as the number of arguments, the argument types are not the same for all devices for which the program executable has been built.";
+ break;
+ case CL_INVALID_VALUE:
+ msg = "kernel_name is NULL.";
+ break;
+ case CL_OUT_OF_HOST_MEMORY:
+ msg = "Failure to allocate resources required by the OpenCL implementation on the host.";
+ break;
+ default:
+ {
+ }
+ }
+
+ printf("Error in clCreateKernel for kernel '%s', error is \"%s\", Line %u in file %s !!!\n\n", kernelName, msg, __LINE__, __FILE__);
+
+#ifndef BT_SUPPRESS_OPENCL_ASSERTS
+ btAssert(0);
+#endif //BT_SUPPRESS_OPENCL_ASSERTS
+ m_kernelCompilationFailures++;
+ return 0;
+ }
+
+ printf("ready. \n");
+ delete [] compileFlags;
+ if (!kernel)
+ m_kernelCompilationFailures++;
+ return kernel;
+
+}
+
+void btOpenCLSoftBodySolver::predictMotion( float timeStep )
+{
+ // Clear the collision shape array for the next frame
+ // Ensure that the DX11 ones are moved off the device so they will be updated correctly
+ m_clCollisionObjectDetails.changedOnCPU();
+ m_clPerClothCollisionObjects.changedOnCPU();
+ m_collisionObjectDetails.clear();
+
+ if ( m_bUpdateAnchoredNodePos )
+ {
+ // In OpenCL cloth solver, if softbody node has zero inverse mass(infinite mass) or anchor attached,
+ // we need to update the node position in case the node or anchor is animated externally.
+ // If there is no such node, we can eliminate the unnecessary CPU-to-GPU data trasferring.
+ for ( int i = 0; i < m_anchorNodeInfoArray.size(); i++ )
+ {
+ const AnchorNodeInfoCL& anchorNodeInfo = m_anchorNodeInfoArray[i];
+ btSoftBody::Node* node = anchorNodeInfo.pNode;
+
+ using Vectormath::Aos::Point3;
+ Point3 pos((float)node->m_x.getX(), (float)node->m_x.getY(), (float)node->m_x.getZ());
+ m_anchorPosition[i] = pos;
+ }
+
+ if ( m_anchorNodeInfoArray.size() > 0 )
+ m_clAnchorPosition.changedOnCPU();
+
+ updateFixedVertexPositions();
+ }
+
+ {
+ BT_PROFILE("applyForces");
+ // Apply forces that we know about to the cloths
+ applyForces( timeStep * getTimeScale() );
+ }
+
+ {
+ BT_PROFILE("integrate");
+ // Itegrate motion for all soft bodies dealt with by the solver
+ integrate( timeStep * getTimeScale() );
+ }
+
+ {
+ BT_PROFILE("updateBounds");
+ updateBounds();
+ }
+ // End prediction work for solvers
+}
+
+static Vectormath::Aos::Transform3 toTransform3( const btTransform &transform )
+{
+ Vectormath::Aos::Transform3 outTransform;
+ outTransform.setCol(0, toVector3(transform.getBasis().getColumn(0)));
+ outTransform.setCol(1, toVector3(transform.getBasis().getColumn(1)));
+ outTransform.setCol(2, toVector3(transform.getBasis().getColumn(2)));
+ outTransform.setCol(3, toVector3(transform.getOrigin()));
+ return outTransform;
+}
+
+void btOpenCLAcceleratedSoftBodyInterface::updateBounds( const btVector3 &lowerBound, const btVector3 &upperBound )
+{
+ float scalarMargin = (float)getSoftBody()->getCollisionShape()->getMargin();
+ btVector3 vectorMargin( scalarMargin, scalarMargin, scalarMargin );
+ m_softBody->m_bounds[0] = lowerBound - vectorMargin;
+ m_softBody->m_bounds[1] = upperBound + vectorMargin;
+} // btOpenCLSoftBodySolver::btDX11AcceleratedSoftBodyInterface::updateBounds
+
+void btOpenCLSoftBodySolver::processCollision( btSoftBody*, btSoftBody* )
+{
+
+}
+
+// Add the collision object to the set to deal with for a particular soft body
+void btOpenCLSoftBodySolver::processCollision( btSoftBody *softBody, const btCollisionObjectWrapper* collisionObject )
+{
+ int softBodyIndex = findSoftBodyIndex( softBody );
+
+ if( softBodyIndex >= 0 )
+ {
+ const btCollisionShape *collisionShape = collisionObject->getCollisionShape();
+ float friction = collisionObject->getCollisionObject()->getFriction();
+ int shapeType = collisionShape->getShapeType();
+ if( shapeType == CAPSULE_SHAPE_PROXYTYPE )
+ {
+ // Add to the list of expected collision objects
+ CollisionShapeDescription newCollisionShapeDescription;
+ newCollisionShapeDescription.softBodyIdentifier = softBodyIndex;
+ newCollisionShapeDescription.collisionShapeType = shapeType;
+ // TODO: May need to transpose this matrix either here or in HLSL
+ newCollisionShapeDescription.shapeTransform = toTransform3(collisionObject->getWorldTransform());
+ const btCapsuleShape *capsule = static_cast<const btCapsuleShape*>( collisionShape );
+ newCollisionShapeDescription.radius = capsule->getRadius();
+ newCollisionShapeDescription.halfHeight = capsule->getHalfHeight();
+ newCollisionShapeDescription.margin = capsule->getMargin();
+ newCollisionShapeDescription.upAxis = capsule->getUpAxis();
+ newCollisionShapeDescription.friction = friction;
+ const btRigidBody* body = static_cast< const btRigidBody* >( collisionObject->getCollisionObject() );
+ newCollisionShapeDescription.linearVelocity = toVector3(body->getLinearVelocity());
+ newCollisionShapeDescription.angularVelocity = toVector3(body->getAngularVelocity());
+ m_collisionObjectDetails.push_back( newCollisionShapeDescription );
+
+ }
+ else {
+#ifdef _DEBUG
+ printf("Unsupported collision shape type\n");
+#endif
+ //btAssert(0 && "Unsupported collision shape type\n");
+ }
+ } else {
+ btAssert(0 && "Unknown soft body");
+ }
+} // btOpenCLSoftBodySolver::processCollision
+
+
+
+
+
+btOpenCLAcceleratedSoftBodyInterface* btOpenCLSoftBodySolver::findSoftBodyInterface( const btSoftBody* const softBody )
+{
+ for( int softBodyIndex = 0; softBodyIndex < m_softBodySet.size(); ++softBodyIndex )
+ {
+ btOpenCLAcceleratedSoftBodyInterface* softBodyInterface = m_softBodySet[softBodyIndex];
+ if( softBodyInterface->getSoftBody() == softBody )
+ return softBodyInterface;
+ }
+ return 0;
+}
+
+
+int btOpenCLSoftBodySolver::findSoftBodyIndex( const btSoftBody* const softBody )
+{
+ for( int softBodyIndex = 0; softBodyIndex < m_softBodySet.size(); ++softBodyIndex )
+ {
+ btOpenCLAcceleratedSoftBodyInterface* softBodyInterface = m_softBodySet[softBodyIndex];
+ if( softBodyInterface->getSoftBody() == softBody )
+ return softBodyIndex;
+ }
+ return 1;
+}
+
+bool btOpenCLSoftBodySolver::checkInitialized()
+{
+ if( !m_shadersInitialized )
+ if( buildShaders() )
+ m_shadersInitialized = true;
+
+ return m_shadersInitialized;
+}
+
+bool btOpenCLSoftBodySolver::buildShaders()
+{
+ if( m_shadersInitialized )
+ return true;
+
+ const char* additionalMacros="";
+
+ // Ensure current kernels are released first
+ releaseKernels();
+
+ m_currentCLFunctions->clearKernelCompilationFailures();
+
+ m_prepareLinksKernel = m_currentCLFunctions->compileCLKernelFromString( PrepareLinksCLString, "PrepareLinksKernel",additionalMacros,"OpenCLC10/PrepareLinks.cl" );
+ m_updatePositionsFromVelocitiesKernel = m_currentCLFunctions->compileCLKernelFromString( UpdatePositionsFromVelocitiesCLString, "UpdatePositionsFromVelocitiesKernel" ,additionalMacros,"OpenCLC10/UpdatePositionsFromVelocities.cl");
+ m_solvePositionsFromLinksKernel = m_currentCLFunctions->compileCLKernelFromString( SolvePositionsCLString, "SolvePositionsFromLinksKernel",additionalMacros,"OpenCLC10/SolvePositions.cl" );
+ m_vSolveLinksKernel = m_currentCLFunctions->compileCLKernelFromString( VSolveLinksCLString, "VSolveLinksKernel" ,additionalMacros,"OpenCLC10/VSolveLinks.cl");
+ m_updateVelocitiesFromPositionsWithVelocitiesKernel = m_currentCLFunctions->compileCLKernelFromString( UpdateNodesCLString, "updateVelocitiesFromPositionsWithVelocitiesKernel" ,additionalMacros,"OpenCLC10/UpdateNodes.cl");
+ m_updateVelocitiesFromPositionsWithoutVelocitiesKernel = m_currentCLFunctions->compileCLKernelFromString( UpdatePositionsCLString, "updateVelocitiesFromPositionsWithoutVelocitiesKernel" ,additionalMacros,"OpenCLC10/UpdatePositions.cl");
+ m_solveCollisionsAndUpdateVelocitiesKernel = m_currentCLFunctions->compileCLKernelFromString( SolveCollisionsAndUpdateVelocitiesCLString, "SolveCollisionsAndUpdateVelocitiesKernel" ,additionalMacros,"OpenCLC10/SolveCollisionsAndUpdateVelocities.cl");
+ m_integrateKernel = m_currentCLFunctions->compileCLKernelFromString( IntegrateCLString, "IntegrateKernel" ,additionalMacros,"OpenCLC10/Integrate.cl");
+ m_applyForcesKernel = m_currentCLFunctions->compileCLKernelFromString( ApplyForcesCLString, "ApplyForcesKernel" ,additionalMacros,"OpenCLC10/ApplyForces.cl");
+ m_updateFixedVertexPositionsKernel = m_currentCLFunctions->compileCLKernelFromString( UpdateFixedVertexPositionsCLString, "UpdateFixedVertexPositions" , additionalMacros, "OpenCLC10/UpdateFixedVertexPositions.cl");
+
+ // TODO: Rename to UpdateSoftBodies
+ m_resetNormalsAndAreasKernel = m_currentCLFunctions->compileCLKernelFromString( UpdateNormalsCLString, "ResetNormalsAndAreasKernel" ,additionalMacros,"OpenCLC10/UpdateNormals.cl");
+ m_normalizeNormalsAndAreasKernel = m_currentCLFunctions->compileCLKernelFromString( UpdateNormalsCLString, "NormalizeNormalsAndAreasKernel" ,additionalMacros,"OpenCLC10/UpdateNormals.cl");
+ m_updateSoftBodiesKernel = m_currentCLFunctions->compileCLKernelFromString( UpdateNormalsCLString, "UpdateSoftBodiesKernel" ,additionalMacros,"OpenCLC10/UpdateNormals.cl");
+
+
+ if( m_currentCLFunctions->getKernelCompilationFailures()==0 )
+ m_shadersInitialized = true;
+
+ return m_shadersInitialized;
+}
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef BT_SOFT_BODY_SOLVER_OPENCL_H
+#define BT_SOFT_BODY_SOLVER_OPENCL_H
+
+#include "stddef.h" //for size_t
+#include "vectormath/vmInclude.h"
+
+#include "BulletSoftBody/btSoftBodySolvers.h"
+#include "BulletSoftBody/btSoftBody.h"
+#include "btSoftBodySolverBuffer_OpenCL.h"
+#include "btSoftBodySolverLinkData_OpenCL.h"
+#include "btSoftBodySolverVertexData_OpenCL.h"
+#include "btSoftBodySolverTriangleData_OpenCL.h"
+
+class CLFunctions
+{
+protected:
+ cl_command_queue m_cqCommandQue;
+ cl_context m_cxMainContext;
+
+ int m_kernelCompilationFailures;
+
+
+public:
+ CLFunctions(cl_command_queue cqCommandQue, cl_context cxMainContext) :
+ m_cqCommandQue( cqCommandQue ),
+ m_cxMainContext( cxMainContext ),
+ m_kernelCompilationFailures(0)
+ {
+ }
+
+ int getKernelCompilationFailures() const
+ {
+ return m_kernelCompilationFailures;
+ }
+
+ /**
+ * Compile a compute shader kernel from a string and return the appropriate cl_kernel object.
+ */
+ virtual cl_kernel compileCLKernelFromString( const char* kernelSource, const char* kernelName, const char* additionalMacros, const char* srcFileNameForCaching);
+
+ void clearKernelCompilationFailures()
+ {
+ m_kernelCompilationFailures=0;
+ }
+};
+
+/**
+ * Entry in the collision shape array.
+ * Specifies the shape type, the transform matrix and the necessary details of the collisionShape.
+ */
+struct CollisionShapeDescription
+{
+ Vectormath::Aos::Transform3 shapeTransform;
+ Vectormath::Aos::Vector3 linearVelocity;
+ Vectormath::Aos::Vector3 angularVelocity;
+
+ int softBodyIdentifier;
+ int collisionShapeType;
+
+ // Both needed for capsule
+ float radius;
+ float halfHeight;
+ int upAxis;
+
+ float margin;
+ float friction;
+
+ CollisionShapeDescription()
+ {
+ collisionShapeType = 0;
+ margin = 0;
+ friction = 0;
+ }
+};
+
+/**
+ * SoftBody class to maintain information about a soft body instance
+ * within a solver.
+ * This data addresses the main solver arrays.
+ */
+class btOpenCLAcceleratedSoftBodyInterface
+{
+protected:
+ /** Current number of vertices that are part of this cloth */
+ int m_numVertices;
+ /** Maximum number of vertices allocated to be part of this cloth */
+ int m_maxVertices;
+ /** Current number of triangles that are part of this cloth */
+ int m_numTriangles;
+ /** Maximum number of triangles allocated to be part of this cloth */
+ int m_maxTriangles;
+ /** Index of first vertex in the world allocated to this cloth */
+ int m_firstVertex;
+ /** Index of first triangle in the world allocated to this cloth */
+ int m_firstTriangle;
+ /** Index of first link in the world allocated to this cloth */
+ int m_firstLink;
+ /** Maximum number of links allocated to this cloth */
+ int m_maxLinks;
+ /** Current number of links allocated to this cloth */
+ int m_numLinks;
+
+ /** The actual soft body this data represents */
+ btSoftBody *m_softBody;
+
+
+public:
+ btOpenCLAcceleratedSoftBodyInterface( btSoftBody *softBody ) :
+ m_softBody( softBody )
+ {
+ m_numVertices = 0;
+ m_maxVertices = 0;
+ m_numTriangles = 0;
+ m_maxTriangles = 0;
+ m_firstVertex = 0;
+ m_firstTriangle = 0;
+ m_firstLink = 0;
+ m_maxLinks = 0;
+ m_numLinks = 0;
+ }
+ int getNumVertices()
+ {
+ return m_numVertices;
+ }
+
+ int getNumTriangles()
+ {
+ return m_numTriangles;
+ }
+
+ int getMaxVertices()
+ {
+ return m_maxVertices;
+ }
+
+ int getMaxTriangles()
+ {
+ return m_maxTriangles;
+ }
+
+ int getFirstVertex()
+ {
+ return m_firstVertex;
+ }
+
+ int getFirstTriangle()
+ {
+ return m_firstTriangle;
+ }
+
+ /**
+ * Update the bounds in the btSoftBody object
+ */
+ void updateBounds( const btVector3 &lowerBound, const btVector3 &upperBound );
+
+ // TODO: All of these set functions will have to do checks and
+ // update the world because restructuring of the arrays will be necessary
+ // Reasonable use of "friend"?
+ void setNumVertices( int numVertices )
+ {
+ m_numVertices = numVertices;
+ }
+
+ void setNumTriangles( int numTriangles )
+ {
+ m_numTriangles = numTriangles;
+ }
+
+ void setMaxVertices( int maxVertices )
+ {
+ m_maxVertices = maxVertices;
+ }
+
+ void setMaxTriangles( int maxTriangles )
+ {
+ m_maxTriangles = maxTriangles;
+ }
+
+ void setFirstVertex( int firstVertex )
+ {
+ m_firstVertex = firstVertex;
+ }
+
+ void setFirstTriangle( int firstTriangle )
+ {
+ m_firstTriangle = firstTriangle;
+ }
+
+ void setMaxLinks( int maxLinks )
+ {
+ m_maxLinks = maxLinks;
+ }
+
+ void setNumLinks( int numLinks )
+ {
+ m_numLinks = numLinks;
+ }
+
+ void setFirstLink( int firstLink )
+ {
+ m_firstLink = firstLink;
+ }
+
+ int getMaxLinks()
+ {
+ return m_maxLinks;
+ }
+
+ int getNumLinks()
+ {
+ return m_numLinks;
+ }
+
+ int getFirstLink()
+ {
+ return m_firstLink;
+ }
+
+ btSoftBody* getSoftBody()
+ {
+ return m_softBody;
+ }
+
+};
+
+
+
+class btOpenCLSoftBodySolver : public btSoftBodySolver
+{
+public:
+
+
+ struct UIntVector3
+ {
+ UIntVector3()
+ {
+ x = 0;
+ y = 0;
+ z = 0;
+ _padding = 0;
+ }
+
+ UIntVector3( unsigned int x_, unsigned int y_, unsigned int z_ )
+ {
+ x = x_;
+ y = y_;
+ z = z_;
+ _padding = 0;
+ }
+
+ unsigned int x;
+ unsigned int y;
+ unsigned int z;
+ unsigned int _padding;
+ };
+
+ struct CollisionObjectIndices
+ {
+ CollisionObjectIndices( int f, int e )
+ {
+ firstObject = f;
+ endObject = e;
+ }
+
+ int firstObject;
+ int endObject;
+ };
+
+ btSoftBodyLinkDataOpenCL m_linkData;
+ btSoftBodyVertexDataOpenCL m_vertexData;
+ btSoftBodyTriangleDataOpenCL m_triangleData;
+
+protected:
+
+ CLFunctions m_defaultCLFunctions;
+ CLFunctions* m_currentCLFunctions;
+
+ /** Variable to define whether we need to update solver constants on the next iteration */
+ bool m_updateSolverConstants;
+
+ bool m_shadersInitialized;
+
+ /**
+ * Cloths owned by this solver.
+ * Only our cloths are in this array.
+ */
+ btAlignedObjectArray< btOpenCLAcceleratedSoftBodyInterface * > m_softBodySet;
+
+ /** Acceleration value to be applied to all non-static vertices in the solver.
+ * Index n is cloth n, array sized by number of cloths in the world not the solver.
+ */
+ btAlignedObjectArray< Vectormath::Aos::Vector3 > m_perClothAcceleration;
+ btOpenCLBuffer<Vectormath::Aos::Vector3> m_clPerClothAcceleration;
+
+ /** Wind velocity to be applied normal to all non-static vertices in the solver.
+ * Index n is cloth n, array sized by number of cloths in the world not the solver.
+ */
+ btAlignedObjectArray< Vectormath::Aos::Vector3 > m_perClothWindVelocity;
+ btOpenCLBuffer<Vectormath::Aos::Vector3> m_clPerClothWindVelocity;
+
+ /** Velocity damping factor */
+ btAlignedObjectArray< float > m_perClothDampingFactor;
+ btOpenCLBuffer<float> m_clPerClothDampingFactor;
+
+ /** Velocity correction coefficient */
+ btAlignedObjectArray< float > m_perClothVelocityCorrectionCoefficient;
+ btOpenCLBuffer<float> m_clPerClothVelocityCorrectionCoefficient;
+
+ /** Lift parameter for wind effect on cloth. */
+ btAlignedObjectArray< float > m_perClothLiftFactor;
+ btOpenCLBuffer<float> m_clPerClothLiftFactor;
+
+ /** Drag parameter for wind effect on cloth. */
+ btAlignedObjectArray< float > m_perClothDragFactor;
+ btOpenCLBuffer<float> m_clPerClothDragFactor;
+
+ /** Density of the medium in which each cloth sits */
+ btAlignedObjectArray< float > m_perClothMediumDensity;
+ btOpenCLBuffer<float> m_clPerClothMediumDensity;
+
+ /**
+ * Collision shape details: pair of index of first collision shape for the cloth and number of collision objects.
+ */
+ btAlignedObjectArray< CollisionObjectIndices > m_perClothCollisionObjects;
+ btOpenCLBuffer<CollisionObjectIndices> m_clPerClothCollisionObjects;
+
+ /**
+ * Collision shapes being passed across to the cloths in this solver.
+ */
+ btAlignedObjectArray< CollisionShapeDescription > m_collisionObjectDetails;
+ btOpenCLBuffer< CollisionShapeDescription > m_clCollisionObjectDetails;
+
+
+
+ /**
+ * Friction coefficient for each cloth
+ */
+ btAlignedObjectArray< float > m_perClothFriction;
+ btOpenCLBuffer< float > m_clPerClothFriction;
+
+ // anchor node info
+ struct AnchorNodeInfoCL
+ {
+ int clVertexIndex;
+ btSoftBody::Node* pNode;
+ };
+
+ btAlignedObjectArray<AnchorNodeInfoCL> m_anchorNodeInfoArray;
+ btAlignedObjectArray<Vectormath::Aos::Point3> m_anchorPosition;
+ btOpenCLBuffer<Vectormath::Aos::Point3> m_clAnchorPosition;
+ btAlignedObjectArray<int> m_anchorIndex;
+ btOpenCLBuffer<int> m_clAnchorIndex;
+
+ bool m_bUpdateAnchoredNodePos;
+
+ cl_kernel m_prepareLinksKernel;
+ cl_kernel m_solvePositionsFromLinksKernel;
+ cl_kernel m_updateConstantsKernel;
+ cl_kernel m_integrateKernel;
+ cl_kernel m_addVelocityKernel;
+ cl_kernel m_updatePositionsFromVelocitiesKernel;
+ cl_kernel m_updateVelocitiesFromPositionsWithoutVelocitiesKernel;
+ cl_kernel m_updateVelocitiesFromPositionsWithVelocitiesKernel;
+ cl_kernel m_vSolveLinksKernel;
+ cl_kernel m_solveCollisionsAndUpdateVelocitiesKernel;
+ cl_kernel m_resetNormalsAndAreasKernel;
+ cl_kernel m_normalizeNormalsAndAreasKernel;
+ cl_kernel m_updateSoftBodiesKernel;
+
+ cl_kernel m_outputToVertexArrayKernel;
+ cl_kernel m_applyForcesKernel;
+ cl_kernel m_updateFixedVertexPositionsKernel;
+
+ cl_command_queue m_cqCommandQue;
+ cl_context m_cxMainContext;
+
+ size_t m_defaultWorkGroupSize;
+
+
+ virtual bool buildShaders();
+
+ void resetNormalsAndAreas( int numVertices );
+
+ void normalizeNormalsAndAreas( int numVertices );
+
+ void executeUpdateSoftBodies( int firstTriangle, int numTriangles );
+
+ void prepareCollisionConstraints();
+
+ Vectormath::Aos::Vector3 ProjectOnAxis( const Vectormath::Aos::Vector3 &v, const Vectormath::Aos::Vector3 &a );
+
+ void ApplyClampedForce( float solverdt, const Vectormath::Aos::Vector3 &force, const Vectormath::Aos::Vector3 &vertexVelocity, float inverseMass, Vectormath::Aos::Vector3 &vertexForce );
+
+
+ int findSoftBodyIndex( const btSoftBody* const softBody );
+
+ virtual void applyForces( float solverdt );
+
+ void updateFixedVertexPositions();
+
+ /**
+ * Integrate motion on the solver.
+ */
+ virtual void integrate( float solverdt );
+
+ virtual void updateConstants( float timeStep );
+
+ float computeTriangleArea(
+ const Vectormath::Aos::Point3 &vertex0,
+ const Vectormath::Aos::Point3 &vertex1,
+ const Vectormath::Aos::Point3 &vertex2 );
+
+
+ //////////////////////////////////////
+ // Kernel dispatches
+ void prepareLinks();
+
+ void solveLinksForVelocity( int startLink, int numLinks, float kst );
+
+ void updatePositionsFromVelocities( float solverdt );
+
+ virtual void solveLinksForPosition( int startLink, int numLinks, float kst, float ti );
+
+ void updateVelocitiesFromPositionsWithVelocities( float isolverdt );
+
+ void updateVelocitiesFromPositionsWithoutVelocities( float isolverdt );
+ virtual void solveCollisionsAndUpdateVelocities( float isolverdt );
+
+ // End kernel dispatches
+ /////////////////////////////////////
+
+ void updateBounds();
+
+ void releaseKernels();
+
+public:
+ btOpenCLSoftBodySolver(cl_command_queue queue,cl_context ctx, bool bUpdateAchchoredNodePos = false);
+
+ virtual ~btOpenCLSoftBodySolver();
+
+
+
+ btOpenCLAcceleratedSoftBodyInterface *findSoftBodyInterface( const btSoftBody* const softBody );
+
+ virtual btSoftBodyLinkData &getLinkData();
+
+ virtual btSoftBodyVertexData &getVertexData();
+
+ virtual btSoftBodyTriangleData &getTriangleData();
+
+ virtual SolverTypes getSolverType() const
+ {
+ return CL_SOLVER;
+ }
+
+
+ virtual bool checkInitialized();
+
+ virtual void updateSoftBodies( );
+
+ virtual void optimize( btAlignedObjectArray< btSoftBody * > &softBodies , bool forceUpdate=false);
+
+ virtual void copyBackToSoftBodies(bool bMove = true);
+
+ virtual void solveConstraints( float solverdt );
+
+ virtual void predictMotion( float solverdt );
+
+ virtual void processCollision( btSoftBody *, const btCollisionObjectWrapper* );
+
+ virtual void processCollision( btSoftBody*, btSoftBody* );
+
+ virtual void setDefaultWorkgroupSize(size_t workGroupSize)
+ {
+ m_defaultWorkGroupSize = workGroupSize;
+ }
+ virtual size_t getDefaultWorkGroupSize() const
+ {
+ return m_defaultWorkGroupSize;
+ }
+
+ void setCLFunctions(CLFunctions* funcs)
+ {
+ if (funcs)
+ m_currentCLFunctions = funcs;
+ else
+ m_currentCLFunctions = &m_defaultCLFunctions;
+ }
+
+}; // btOpenCLSoftBodySolver
+
+
+/**
+ * Class to manage movement of data from a solver to a given target.
+ * This version is the CL to CPU version.
+ */
+class btSoftBodySolverOutputCLtoCPU : public btSoftBodySolverOutput
+{
+protected:
+
+public:
+ btSoftBodySolverOutputCLtoCPU()
+ {
+ }
+
+ /** Output current computed vertex data to the vertex buffers for all cloths in the solver. */
+ virtual void copySoftBodyToVertexBuffer( const btSoftBody * const softBody, btVertexBufferDescriptor *vertexBuffer );
+};
+
+
+
+#endif // #ifndef BT_SOFT_BODY_SOLVER_OPENCL_H
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+
+#include "BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h"
+#include "vectormath/vmInclude.h"
+#include <stdio.h> //@todo: remove the debugging printf at some stage
+#include "btSoftBodySolver_OpenCLSIMDAware.h"
+#include "BulletSoftBody/btSoftBodySolverVertexBuffer.h"
+#include "BulletSoftBody/btSoftBody.h"
+#include "BulletCollision/CollisionShapes/btCapsuleShape.h"
+#include <limits.h>
+
+#define WAVEFRONT_SIZE 32
+#define WAVEFRONT_BLOCK_MULTIPLIER 2
+#define GROUP_SIZE (WAVEFRONT_SIZE*WAVEFRONT_BLOCK_MULTIPLIER)
+#define LINKS_PER_SIMD_LANE 16
+
+static const size_t workGroupSize = GROUP_SIZE;
+
+
+//CL_VERSION_1_1 seems broken on NVidia SDK so just disable it
+
+////OpenCL 1.0 kernels don't use float3
+#define MSTRINGIFY(A) #A
+static const char* UpdatePositionsFromVelocitiesCLString =
+#include "OpenCLC10/UpdatePositionsFromVelocities.cl"
+static const char* SolvePositionsCLString =
+#include "OpenCLC10/SolvePositionsSIMDBatched.cl"
+static const char* UpdateNodesCLString =
+#include "OpenCLC10/UpdateNodes.cl"
+static const char* UpdatePositionsCLString =
+#include "OpenCLC10/UpdatePositions.cl"
+static const char* UpdateConstantsCLString =
+#include "OpenCLC10/UpdateConstants.cl"
+static const char* IntegrateCLString =
+#include "OpenCLC10/Integrate.cl"
+static const char* ApplyForcesCLString =
+#include "OpenCLC10/ApplyForces.cl"
+static const char* UpdateFixedVertexPositionsCLString =
+#include "OpenCLC10/UpdateFixedVertexPositions.cl"
+static const char* UpdateNormalsCLString =
+#include "OpenCLC10/UpdateNormals.cl"
+static const char* VSolveLinksCLString =
+#include "OpenCLC10/VSolveLinks.cl"
+static const char* SolveCollisionsAndUpdateVelocitiesCLString =
+#include "OpenCLC10/SolveCollisionsAndUpdateVelocitiesSIMDBatched.cl"
+static const char* OutputToVertexArrayCLString =
+#include "OpenCLC10/OutputToVertexArray.cl"
+
+
+
+btSoftBodyLinkDataOpenCLSIMDAware::btSoftBodyLinkDataOpenCLSIMDAware(cl_command_queue queue, cl_context ctx) :
+ m_cqCommandQue(queue),
+ m_wavefrontSize( WAVEFRONT_SIZE ),
+ m_linksPerWorkItem( LINKS_PER_SIMD_LANE ),
+ m_maxBatchesWithinWave( 0 ),
+ m_maxLinksPerWavefront( m_wavefrontSize * m_linksPerWorkItem ),
+ m_numWavefronts( 0 ),
+ m_maxVertex( 0 ),
+ m_clNumBatchesAndVerticesWithinWaves( queue, ctx, &m_numBatchesAndVerticesWithinWaves, true ),
+ m_clWavefrontVerticesGlobalAddresses( queue, ctx, &m_wavefrontVerticesGlobalAddresses, true ),
+ m_clLinkVerticesLocalAddresses( queue, ctx, &m_linkVerticesLocalAddresses, true ),
+ m_clLinkStrength( queue, ctx, &m_linkStrength, false ),
+ m_clLinksMassLSC( queue, ctx, &m_linksMassLSC, false ),
+ m_clLinksRestLengthSquared( queue, ctx, &m_linksRestLengthSquared, false ),
+ m_clLinksRestLength( queue, ctx, &m_linksRestLength, false ),
+ m_clLinksMaterialLinearStiffnessCoefficient( queue, ctx, &m_linksMaterialLinearStiffnessCoefficient, false )
+{
+}
+
+btSoftBodyLinkDataOpenCLSIMDAware::~btSoftBodyLinkDataOpenCLSIMDAware()
+{
+}
+
+static Vectormath::Aos::Vector3 toVector3( const btVector3 &vec )
+{
+ Vectormath::Aos::Vector3 outVec( vec.getX(), vec.getY(), vec.getZ() );
+ return outVec;
+}
+
+/** Allocate enough space in all link-related arrays to fit numLinks links */
+void btSoftBodyLinkDataOpenCLSIMDAware::createLinks( int numLinks )
+{
+ int previousSize = m_links.size();
+ int newSize = previousSize + numLinks;
+
+ btSoftBodyLinkData::createLinks( numLinks );
+
+ // Resize the link addresses array as well
+ m_linkAddresses.resize( newSize );
+}
+
+/** Insert the link described into the correct data structures assuming space has already been allocated by a call to createLinks */
+void btSoftBodyLinkDataOpenCLSIMDAware::setLinkAt(
+ const LinkDescription &link,
+ int linkIndex )
+{
+ btSoftBodyLinkData::setLinkAt( link, linkIndex );
+
+ if( link.getVertex0() > m_maxVertex )
+ m_maxVertex = link.getVertex0();
+ if( link.getVertex1() > m_maxVertex )
+ m_maxVertex = link.getVertex1();
+
+ // Set the link index correctly for initialisation
+ m_linkAddresses[linkIndex] = linkIndex;
+}
+
+bool btSoftBodyLinkDataOpenCLSIMDAware::onAccelerator()
+{
+ return m_onGPU;
+}
+
+bool btSoftBodyLinkDataOpenCLSIMDAware::moveToAccelerator()
+{
+ bool success = true;
+ success = success && m_clNumBatchesAndVerticesWithinWaves.moveToGPU();
+ success = success && m_clWavefrontVerticesGlobalAddresses.moveToGPU();
+ success = success && m_clLinkVerticesLocalAddresses.moveToGPU();
+ success = success && m_clLinkStrength.moveToGPU();
+ success = success && m_clLinksMassLSC.moveToGPU();
+ success = success && m_clLinksRestLengthSquared.moveToGPU();
+ success = success && m_clLinksRestLength.moveToGPU();
+ success = success && m_clLinksMaterialLinearStiffnessCoefficient.moveToGPU();
+
+ if( success ) {
+ m_onGPU = true;
+ }
+
+ return success;
+}
+
+bool btSoftBodyLinkDataOpenCLSIMDAware::moveFromAccelerator()
+{
+ bool success = true;
+ success = success && m_clNumBatchesAndVerticesWithinWaves.moveToGPU();
+ success = success && m_clWavefrontVerticesGlobalAddresses.moveToGPU();
+ success = success && m_clLinkVerticesLocalAddresses.moveToGPU();
+ success = success && m_clLinkStrength.moveFromGPU();
+ success = success && m_clLinksMassLSC.moveFromGPU();
+ success = success && m_clLinksRestLengthSquared.moveFromGPU();
+ success = success && m_clLinksRestLength.moveFromGPU();
+ success = success && m_clLinksMaterialLinearStiffnessCoefficient.moveFromGPU();
+
+ if( success ) {
+ m_onGPU = false;
+ }
+
+ return success;
+}
+
+
+
+
+
+
+
+
+btOpenCLSoftBodySolverSIMDAware::btOpenCLSoftBodySolverSIMDAware(cl_command_queue queue, cl_context ctx, bool bUpdateAchchoredNodePos) :
+ btOpenCLSoftBodySolver( queue, ctx, bUpdateAchchoredNodePos ),
+ m_linkData(queue, ctx)
+{
+ // Initial we will clearly need to update solver constants
+ // For now this is global for the cloths linked with this solver - we should probably make this body specific
+ // for performance in future once we understand more clearly when constants need to be updated
+ m_updateSolverConstants = true;
+
+ m_shadersInitialized = false;
+}
+
+btOpenCLSoftBodySolverSIMDAware::~btOpenCLSoftBodySolverSIMDAware()
+{
+ releaseKernels();
+}
+
+void btOpenCLSoftBodySolverSIMDAware::optimize( btAlignedObjectArray< btSoftBody * > &softBodies ,bool forceUpdate)
+{
+ if( forceUpdate || m_softBodySet.size() != softBodies.size() )
+ {
+ // Have a change in the soft body set so update, reloading all the data
+ getVertexData().clear();
+ getTriangleData().clear();
+ getLinkData().clear();
+ m_softBodySet.resize(0);
+ m_anchorIndex.clear();
+
+ int maxPiterations = 0;
+ int maxViterations = 0;
+
+ for( int softBodyIndex = 0; softBodyIndex < softBodies.size(); ++softBodyIndex )
+ {
+ btSoftBody *softBody = softBodies[ softBodyIndex ];
+ using Vectormath::Aos::Matrix3;
+ using Vectormath::Aos::Point3;
+
+ // Create SoftBody that will store the information within the solver
+ btOpenCLAcceleratedSoftBodyInterface* newSoftBody = new btOpenCLAcceleratedSoftBodyInterface( softBody );
+ m_softBodySet.push_back( newSoftBody );
+
+ m_perClothAcceleration.push_back( toVector3(softBody->getWorldInfo()->m_gravity) );
+ m_perClothDampingFactor.push_back(softBody->m_cfg.kDP);
+ m_perClothVelocityCorrectionCoefficient.push_back( softBody->m_cfg.kVCF );
+ m_perClothLiftFactor.push_back( softBody->m_cfg.kLF );
+ m_perClothDragFactor.push_back( softBody->m_cfg.kDG );
+ m_perClothMediumDensity.push_back(softBody->getWorldInfo()->air_density);
+ // Simple init values. Actually we'll put 0 and -1 into them at the appropriate time
+ m_perClothFriction.push_back(softBody->m_cfg.kDF);
+ m_perClothCollisionObjects.push_back( CollisionObjectIndices(-1, -1) );
+
+ // Add space for new vertices and triangles in the default solver for now
+ // TODO: Include space here for tearing too later
+ int firstVertex = getVertexData().getNumVertices();
+ int numVertices = softBody->m_nodes.size();
+ // Round maxVertices to a multiple of the workgroup size so we know we're safe to run over in a given group
+ // maxVertices can be increased to allow tearing, but should be used sparingly because these extra verts will always be processed
+ int maxVertices = GROUP_SIZE*((numVertices+GROUP_SIZE)/GROUP_SIZE);
+ // Allocate space for new vertices in all the vertex arrays
+ getVertexData().createVertices( numVertices, softBodyIndex, maxVertices );
+
+
+ int firstTriangle = getTriangleData().getNumTriangles();
+ int numTriangles = softBody->m_faces.size();
+ int maxTriangles = numTriangles;
+ getTriangleData().createTriangles( maxTriangles );
+
+ // Copy vertices from softbody into the solver
+ for( int vertex = 0; vertex < numVertices; ++vertex )
+ {
+ Point3 multPoint(softBody->m_nodes[vertex].m_x.getX(), softBody->m_nodes[vertex].m_x.getY(), softBody->m_nodes[vertex].m_x.getZ());
+ btSoftBodyVertexData::VertexDescription desc;
+
+ // TODO: Position in the softbody might be pre-transformed
+ // or we may need to adapt for the pose.
+ //desc.setPosition( cloth.getMeshTransform()*multPoint );
+ desc.setPosition( multPoint );
+
+ float vertexInverseMass = softBody->m_nodes[vertex].m_im;
+ desc.setInverseMass(vertexInverseMass);
+ getVertexData().setVertexAt( desc, firstVertex + vertex );
+
+ m_anchorIndex.push_back(-1);
+ }
+ for( int vertex = numVertices; vertex < maxVertices; ++vertex )
+ {
+ m_anchorIndex.push_back(-1.0);
+ }
+
+ // Copy triangles similarly
+ // We're assuming here that vertex indices are based on the firstVertex rather than the entire scene
+ for( int triangle = 0; triangle < numTriangles; ++triangle )
+ {
+ // Note that large array storage is relative to the array not to the cloth
+ // So we need to add firstVertex to each value
+ int vertexIndex0 = (softBody->m_faces[triangle].m_n[0] - &(softBody->m_nodes[0]));
+ int vertexIndex1 = (softBody->m_faces[triangle].m_n[1] - &(softBody->m_nodes[0]));
+ int vertexIndex2 = (softBody->m_faces[triangle].m_n[2] - &(softBody->m_nodes[0]));
+ btSoftBodyTriangleData::TriangleDescription newTriangle(vertexIndex0 + firstVertex, vertexIndex1 + firstVertex, vertexIndex2 + firstVertex);
+ getTriangleData().setTriangleAt( newTriangle, firstTriangle + triangle );
+
+ // Increase vertex triangle counts for this triangle
+ getVertexData().getTriangleCount(newTriangle.getVertexSet().vertex0)++;
+ getVertexData().getTriangleCount(newTriangle.getVertexSet().vertex1)++;
+ getVertexData().getTriangleCount(newTriangle.getVertexSet().vertex2)++;
+ }
+
+ int firstLink = getLinkData().getNumLinks();
+ int numLinks = softBody->m_links.size();
+ int maxLinks = numLinks;
+
+ // Allocate space for the links
+ getLinkData().createLinks( numLinks );
+
+ // Add the links
+ for( int link = 0; link < numLinks; ++link )
+ {
+ int vertexIndex0 = softBody->m_links[link].m_n[0] - &(softBody->m_nodes[0]);
+ int vertexIndex1 = softBody->m_links[link].m_n[1] - &(softBody->m_nodes[0]);
+
+ btSoftBodyLinkData::LinkDescription newLink(vertexIndex0 + firstVertex, vertexIndex1 + firstVertex, softBody->m_links[link].m_material->m_kLST);
+ newLink.setLinkStrength(1.f);
+ getLinkData().setLinkAt(newLink, firstLink + link);
+ }
+
+ newSoftBody->setFirstVertex( firstVertex );
+ newSoftBody->setFirstTriangle( firstTriangle );
+ newSoftBody->setNumVertices( numVertices );
+ newSoftBody->setMaxVertices( maxVertices );
+ newSoftBody->setNumTriangles( numTriangles );
+ newSoftBody->setMaxTriangles( maxTriangles );
+ newSoftBody->setFirstLink( firstLink );
+ newSoftBody->setNumLinks( numLinks );
+
+ // Find maximum piterations and viterations
+ int piterations = softBody->m_cfg.piterations;
+
+ if ( piterations > maxPiterations )
+ maxPiterations = piterations;
+
+ int viterations = softBody->m_cfg.viterations;
+
+ if ( viterations > maxViterations )
+ maxViterations = viterations;
+
+ // zero mass
+ for( int vertex = 0; vertex < numVertices; ++vertex )
+ {
+ if ( softBody->m_nodes[vertex].m_im == 0 )
+ {
+ AnchorNodeInfoCL nodeInfo;
+ nodeInfo.clVertexIndex = firstVertex + vertex;
+ nodeInfo.pNode = &softBody->m_nodes[vertex];
+
+ m_anchorNodeInfoArray.push_back(nodeInfo);
+ }
+ }
+
+ // anchor position
+ if ( numVertices > 0 )
+ {
+ for ( int anchorIndex = 0; anchorIndex < softBody->m_anchors.size(); anchorIndex++ )
+ {
+ btSoftBody::Node* anchorNode = softBody->m_anchors[anchorIndex].m_node;
+ btSoftBody::Node* firstNode = &softBody->m_nodes[0];
+
+ AnchorNodeInfoCL nodeInfo;
+ nodeInfo.clVertexIndex = firstVertex + (int)(anchorNode - firstNode);
+ nodeInfo.pNode = anchorNode;
+
+ m_anchorNodeInfoArray.push_back(nodeInfo);
+ }
+ }
+ }
+
+ m_anchorPosition.clear();
+ m_anchorPosition.resize(m_anchorNodeInfoArray.size());
+
+ for ( int anchorNode = 0; anchorNode < m_anchorNodeInfoArray.size(); anchorNode++ )
+ {
+ const AnchorNodeInfoCL& anchorNodeInfo = m_anchorNodeInfoArray[anchorNode];
+ m_anchorIndex[anchorNodeInfo.clVertexIndex] = anchorNode;
+ getVertexData().getInverseMass(anchorNodeInfo.clVertexIndex) = 0.0f;
+ }
+
+ updateConstants(0.f);
+
+ // set position and velocity iterations
+ setNumberOfPositionIterations(maxPiterations);
+ setNumberOfVelocityIterations(maxViterations);
+
+ // set wind velocity
+ m_perClothWindVelocity.resize( m_softBodySet.size() );
+ for( int softBodyIndex = 0; softBodyIndex < m_softBodySet.size(); ++softBodyIndex )
+ {
+ btSoftBody *softBody = m_softBodySet[softBodyIndex]->getSoftBody();
+ m_perClothWindVelocity[softBodyIndex] = toVector3(softBody->getWindVelocity());
+ }
+
+ m_clPerClothWindVelocity.changedOnCPU();
+
+ // generate batches
+ m_linkData.generateBatches();
+ m_triangleData.generateBatches();
+
+ // Build the shaders to match the batching parameters
+ buildShaders();
+ }
+}
+
+
+btSoftBodyLinkData &btOpenCLSoftBodySolverSIMDAware::getLinkData()
+{
+ // TODO: Consider setting link data to "changed" here
+ return m_linkData;
+}
+
+
+
+
+void btOpenCLSoftBodySolverSIMDAware::updateConstants( float timeStep )
+{
+
+ using namespace Vectormath::Aos;
+
+ if( m_updateSolverConstants )
+ {
+ m_updateSolverConstants = false;
+
+ // Will have to redo this if we change the structure (tear, maybe) or various other possible changes
+
+ // Initialise link constants
+ const int numLinks = m_linkData.getNumLinks();
+ for( int linkIndex = 0; linkIndex < numLinks; ++linkIndex )
+ {
+ btSoftBodyLinkData::LinkNodePair &vertices( m_linkData.getVertexPair(linkIndex) );
+ m_linkData.getRestLength(linkIndex) = length((m_vertexData.getPosition( vertices.vertex0 ) - m_vertexData.getPosition( vertices.vertex1 )));
+ float invMass0 = m_vertexData.getInverseMass(vertices.vertex0);
+ float invMass1 = m_vertexData.getInverseMass(vertices.vertex1);
+ float linearStiffness = m_linkData.getLinearStiffnessCoefficient(linkIndex);
+ float massLSC = (invMass0 + invMass1)/linearStiffness;
+ m_linkData.getMassLSC(linkIndex) = massLSC;
+ float restLength = m_linkData.getRestLength(linkIndex);
+ float restLengthSquared = restLength*restLength;
+ m_linkData.getRestLengthSquared(linkIndex) = restLengthSquared;
+ }
+ }
+
+}
+
+
+
+void btOpenCLSoftBodySolverSIMDAware::solveConstraints( float solverdt )
+{
+
+ using Vectormath::Aos::Vector3;
+ using Vectormath::Aos::Point3;
+ using Vectormath::Aos::lengthSqr;
+ using Vectormath::Aos::dot;
+
+ // Prepare links
+ int numLinks = m_linkData.getNumLinks();
+ int numVertices = m_vertexData.getNumVertices();
+
+ float kst = 1.f;
+ float ti = 0.f;
+
+
+ m_clPerClothDampingFactor.moveToGPU();
+ m_clPerClothVelocityCorrectionCoefficient.moveToGPU();
+
+
+ // Ensure data is on accelerator
+ m_linkData.moveToAccelerator();
+ m_vertexData.moveToAccelerator();
+
+
+ //prepareLinks();
+
+ prepareCollisionConstraints();
+
+ // Solve drift
+ for( int iteration = 0; iteration < m_numberOfPositionIterations ; ++iteration )
+ {
+
+ for( int i = 0; i < m_linkData.m_wavefrontBatchStartLengths.size(); ++i )
+ {
+ int startWave = m_linkData.m_wavefrontBatchStartLengths[i].start;
+ int numWaves = m_linkData.m_wavefrontBatchStartLengths[i].length;
+ solveLinksForPosition( startWave, numWaves, kst, ti );
+ }
+ } // for( int iteration = 0; iteration < m_numberOfPositionIterations ; ++iteration )
+
+
+ // At this point assume that the force array is blank - we will overwrite it
+ solveCollisionsAndUpdateVelocities( 1.f/solverdt );
+}
+
+
+//////////////////////////////////////
+// Kernel dispatches
+
+
+void btOpenCLSoftBodySolverSIMDAware::solveLinksForPosition( int startWave, int numWaves, float kst, float ti )
+{
+ cl_int ciErrNum;
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,0, sizeof(int), &startWave);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,1, sizeof(int), &numWaves);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,2, sizeof(float), &kst);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,3, sizeof(float), &ti);
+
+
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,4, sizeof(cl_mem), &m_linkData.m_clNumBatchesAndVerticesWithinWaves.m_buffer);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,5, sizeof(cl_mem), &m_linkData.m_clWavefrontVerticesGlobalAddresses.m_buffer);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,6, sizeof(cl_mem), &m_linkData.m_clLinkVerticesLocalAddresses.m_buffer);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,7, sizeof(cl_mem), &m_linkData.m_clLinksMassLSC.m_buffer);
+
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,8, sizeof(cl_mem), &m_linkData.m_clLinksRestLengthSquared.m_buffer);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,9, sizeof(cl_mem), &m_vertexData.m_clVertexInverseMass.m_buffer);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,10, sizeof(cl_mem), &m_vertexData.m_clVertexPosition.m_buffer);
+
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,11, WAVEFRONT_BLOCK_MULTIPLIER*sizeof(cl_int2), 0);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,12, m_linkData.getMaxVerticesPerWavefront()*WAVEFRONT_BLOCK_MULTIPLIER*sizeof(cl_float4), 0);
+ ciErrNum = clSetKernelArg(m_solvePositionsFromLinksKernel,13, m_linkData.getMaxVerticesPerWavefront()*WAVEFRONT_BLOCK_MULTIPLIER*sizeof(cl_float), 0);
+
+ size_t numWorkItems = workGroupSize*((numWaves*WAVEFRONT_SIZE + (workGroupSize-1)) / workGroupSize);
+
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue,m_solvePositionsFromLinksKernel,1,NULL,&numWorkItems,&workGroupSize,0,0,0);
+
+ if( ciErrNum!= CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(m_solvePositionsFromLinksKernel)");
+ }
+
+} // solveLinksForPosition
+
+void btOpenCLSoftBodySolverSIMDAware::solveCollisionsAndUpdateVelocities( float isolverdt )
+{
+ // Copy kernel parameters to GPU
+ m_vertexData.moveToAccelerator();
+ m_clPerClothFriction.moveToGPU();
+ m_clPerClothDampingFactor.moveToGPU();
+ m_clPerClothCollisionObjects.moveToGPU();
+ m_clCollisionObjectDetails.moveToGPU();
+
+ cl_int ciErrNum;
+ int numVerts = m_vertexData.getNumVertices();
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 0, sizeof(int), &numVerts);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 1, sizeof(int), &isolverdt);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 2, sizeof(cl_mem),&m_vertexData.m_clClothIdentifier.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 3, sizeof(cl_mem),&m_vertexData.m_clVertexPreviousPosition.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 4, sizeof(cl_mem),&m_clPerClothFriction.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 5, sizeof(cl_mem),&m_clPerClothDampingFactor.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 6, sizeof(cl_mem),&m_clPerClothCollisionObjects.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 7, sizeof(cl_mem),&m_clCollisionObjectDetails.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 8, sizeof(cl_mem),&m_vertexData.m_clVertexForceAccumulator.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 9, sizeof(cl_mem),&m_vertexData.m_clVertexVelocity.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 10, sizeof(cl_mem),&m_vertexData.m_clVertexPosition.m_buffer);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 11, sizeof(CollisionShapeDescription)*16,0);
+ ciErrNum = clSetKernelArg(m_solveCollisionsAndUpdateVelocitiesKernel, 12, sizeof(cl_mem),&m_vertexData.m_clVertexInverseMass.m_buffer);
+ size_t numWorkItems = workGroupSize*((m_vertexData.getNumVertices() + (workGroupSize-1)) / workGroupSize);
+
+ if (numWorkItems)
+ {
+ ciErrNum = clEnqueueNDRangeKernel(m_cqCommandQue,m_solveCollisionsAndUpdateVelocitiesKernel, 1, NULL, &numWorkItems, &workGroupSize,0,0,0);
+
+ if( ciErrNum != CL_SUCCESS )
+ {
+ btAssert( 0 && "enqueueNDRangeKernel(m_solveCollisionsAndUpdateVelocitiesKernel)");
+ }
+ }
+
+} // btOpenCLSoftBodySolverSIMDAware::updateVelocitiesFromPositionsWithoutVelocities
+
+// End kernel dispatches
+/////////////////////////////////////
+
+
+
+bool btOpenCLSoftBodySolverSIMDAware::buildShaders()
+{
+ releaseKernels();
+
+ if( m_shadersInitialized )
+ return true;
+
+ const char* additionalMacros="";
+
+ m_currentCLFunctions->clearKernelCompilationFailures();
+
+ char *wavefrontMacros = new char[256];
+
+ sprintf(
+ wavefrontMacros,
+ "-DMAX_NUM_VERTICES_PER_WAVE=%d -DMAX_BATCHES_PER_WAVE=%d -DWAVEFRONT_SIZE=%d -DWAVEFRONT_BLOCK_MULTIPLIER=%d -DBLOCK_SIZE=%d",
+ m_linkData.getMaxVerticesPerWavefront(),
+ m_linkData.getMaxBatchesPerWavefront(),
+ m_linkData.getWavefrontSize(),
+ WAVEFRONT_BLOCK_MULTIPLIER,
+ WAVEFRONT_BLOCK_MULTIPLIER*m_linkData.getWavefrontSize());
+
+ m_updatePositionsFromVelocitiesKernel = m_currentCLFunctions->compileCLKernelFromString( UpdatePositionsFromVelocitiesCLString, "UpdatePositionsFromVelocitiesKernel", additionalMacros,"OpenCLC10/UpdatePositionsFromVelocities.cl");
+ m_solvePositionsFromLinksKernel = m_currentCLFunctions->compileCLKernelFromString( SolvePositionsCLString, "SolvePositionsFromLinksKernel", wavefrontMacros ,"OpenCLC10/SolvePositionsSIMDBatched.cl");
+ m_updateVelocitiesFromPositionsWithVelocitiesKernel = m_currentCLFunctions->compileCLKernelFromString( UpdateNodesCLString, "updateVelocitiesFromPositionsWithVelocitiesKernel", additionalMacros ,"OpenCLC10/UpdateNodes.cl");
+ m_updateVelocitiesFromPositionsWithoutVelocitiesKernel = m_currentCLFunctions->compileCLKernelFromString( UpdatePositionsCLString, "updateVelocitiesFromPositionsWithoutVelocitiesKernel", additionalMacros,"OpenCLC10/UpdatePositions.cl");
+ m_integrateKernel = m_currentCLFunctions->compileCLKernelFromString( IntegrateCLString, "IntegrateKernel", additionalMacros ,"OpenCLC10/Integrate.cl");
+ m_applyForcesKernel = m_currentCLFunctions->compileCLKernelFromString( ApplyForcesCLString, "ApplyForcesKernel", additionalMacros,"OpenCLC10/ApplyForces.cl" );
+ m_updateFixedVertexPositionsKernel = m_currentCLFunctions->compileCLKernelFromString( UpdateFixedVertexPositionsCLString, "UpdateFixedVertexPositions" ,additionalMacros,"OpenCLC10/UpdateFixedVertexPositions.cl");
+ m_solveCollisionsAndUpdateVelocitiesKernel = m_currentCLFunctions->compileCLKernelFromString( SolveCollisionsAndUpdateVelocitiesCLString, "SolveCollisionsAndUpdateVelocitiesKernel", additionalMacros ,"OpenCLC10/SolveCollisionsAndUpdateVelocitiesSIMDBatched.cl");
+
+ // TODO: Rename to UpdateSoftBodies
+ m_resetNormalsAndAreasKernel = m_currentCLFunctions->compileCLKernelFromString( UpdateNormalsCLString, "ResetNormalsAndAreasKernel", additionalMacros ,"OpenCLC10/UpdateNormals.cl");
+ m_normalizeNormalsAndAreasKernel = m_currentCLFunctions->compileCLKernelFromString( UpdateNormalsCLString, "NormalizeNormalsAndAreasKernel", additionalMacros ,"OpenCLC10/UpdateNormals.cl");
+ m_updateSoftBodiesKernel = m_currentCLFunctions->compileCLKernelFromString( UpdateNormalsCLString, "UpdateSoftBodiesKernel", additionalMacros ,"OpenCLC10/UpdateNormals.cl");
+
+ delete [] wavefrontMacros;
+
+ if( m_currentCLFunctions->getKernelCompilationFailures()==0)
+ {
+ m_shadersInitialized = true;
+ }
+
+ return m_shadersInitialized;
+}
+
+
+
+
+static Vectormath::Aos::Transform3 toTransform3( const btTransform &transform )
+{
+ Vectormath::Aos::Transform3 outTransform;
+ outTransform.setCol(0, toVector3(transform.getBasis().getColumn(0)));
+ outTransform.setCol(1, toVector3(transform.getBasis().getColumn(1)));
+ outTransform.setCol(2, toVector3(transform.getBasis().getColumn(2)));
+ outTransform.setCol(3, toVector3(transform.getOrigin()));
+ return outTransform;
+}
+
+
+static void generateBatchesOfWavefronts( btAlignedObjectArray < btAlignedObjectArray <int> > &linksForWavefronts, btSoftBodyLinkData &linkData, int numVertices, btAlignedObjectArray < btAlignedObjectArray <int> > &wavefrontBatches )
+{
+ // A per-batch map of truth values stating whether a given vertex is in that batch
+ // This allows us to significantly optimize the batching
+ btAlignedObjectArray <btAlignedObjectArray<bool> > mapOfVerticesInBatches;
+
+ for( int waveIndex = 0; waveIndex < linksForWavefronts.size(); ++waveIndex )
+ {
+ btAlignedObjectArray <int> &wavefront( linksForWavefronts[waveIndex] );
+
+ int batch = 0;
+ bool placed = false;
+ while( batch < wavefrontBatches.size() && !placed )
+ {
+ // Test the current batch, see if this wave shares any vertex with the waves in the batch
+ bool foundSharedVertex = false;
+ for( int link = 0; link < wavefront.size(); ++link )
+ {
+ btSoftBodyLinkData::LinkNodePair vertices = linkData.getVertexPair( wavefront[link] );
+ if( (mapOfVerticesInBatches[batch])[vertices.vertex0] || (mapOfVerticesInBatches[batch])[vertices.vertex1] )
+ {
+ foundSharedVertex = true;
+ }
+ }
+
+ if( !foundSharedVertex )
+ {
+ wavefrontBatches[batch].push_back( waveIndex );
+ // Insert vertices into this batch too
+ for( int link = 0; link < wavefront.size(); ++link )
+ {
+ btSoftBodyLinkData::LinkNodePair vertices = linkData.getVertexPair( wavefront[link] );
+ (mapOfVerticesInBatches[batch])[vertices.vertex0] = true;
+ (mapOfVerticesInBatches[batch])[vertices.vertex1] = true;
+ }
+ placed = true;
+ }
+ batch++;
+ }
+ if( batch == wavefrontBatches.size() && !placed )
+ {
+ wavefrontBatches.resize( batch + 1 );
+ wavefrontBatches[batch].push_back( waveIndex );
+
+ // And resize map as well
+ mapOfVerticesInBatches.resize( batch + 1 );
+
+ // Resize maps with total number of vertices
+ mapOfVerticesInBatches[batch].resize( numVertices+1, false );
+
+ // Insert vertices into this batch too
+ for( int link = 0; link < wavefront.size(); ++link )
+ {
+ btSoftBodyLinkData::LinkNodePair vertices = linkData.getVertexPair( wavefront[link] );
+ (mapOfVerticesInBatches[batch])[vertices.vertex0] = true;
+ (mapOfVerticesInBatches[batch])[vertices.vertex1] = true;
+ }
+ }
+ }
+ mapOfVerticesInBatches.clear();
+}
+
+// Function to remove an object from a vector maintaining correct ordering of the vector
+template< typename T > static void removeFromVector( btAlignedObjectArray< T > &vectorToUpdate, int indexToRemove )
+{
+ int currentSize = vectorToUpdate.size();
+ for( int i = indexToRemove; i < (currentSize-1); ++i )
+ {
+ vectorToUpdate[i] = vectorToUpdate[i+1];
+ }
+ if( currentSize > 0 )
+ vectorToUpdate.resize( currentSize - 1 );
+}
+
+/**
+ * Insert element into vectorToUpdate at index index.
+ */
+template< typename T > static void insertAtIndex( btAlignedObjectArray< T > &vectorToUpdate, int index, T element )
+{
+ vectorToUpdate.resize( vectorToUpdate.size() + 1 );
+ for( int i = (vectorToUpdate.size() - 1); i > index; --i )
+ {
+ vectorToUpdate[i] = vectorToUpdate[i-1];
+ }
+ vectorToUpdate[index] = element;
+}
+
+/**
+ * Insert into btAlignedObjectArray assuming the array is ordered and maintaining both ordering and uniqueness.
+ * ie it treats vectorToUpdate as an ordered set.
+ */
+template< typename T > static void insertUniqueAndOrderedIntoVector( btAlignedObjectArray<T> &vectorToUpdate, T element )
+{
+ int index = 0;
+ while( index < vectorToUpdate.size() && vectorToUpdate[index] < element )
+ {
+ index++;
+ }
+ if( index == vectorToUpdate.size() || vectorToUpdate[index] != element )
+ insertAtIndex( vectorToUpdate, index, element );
+}
+
+static void generateLinksPerVertex( int numVertices, btSoftBodyLinkData &linkData, btAlignedObjectArray< int > &listOfLinksPerVertex, btAlignedObjectArray <int> &numLinksPerVertex, int &maxLinks )
+{
+ for( int linkIndex = 0; linkIndex < linkData.getNumLinks(); ++linkIndex )
+ {
+ btSoftBodyLinkData::LinkNodePair nodes( linkData.getVertexPair(linkIndex) );
+ numLinksPerVertex[nodes.vertex0]++;
+ numLinksPerVertex[nodes.vertex1]++;
+ }
+ int maxLinksPerVertex = 0;
+ for( int vertexIndex = 0; vertexIndex < numVertices; ++vertexIndex )
+ {
+ maxLinksPerVertex = btMax(numLinksPerVertex[vertexIndex], maxLinksPerVertex);
+ }
+ maxLinks = maxLinksPerVertex;
+
+ btAlignedObjectArray< int > linksFoundPerVertex;
+ linksFoundPerVertex.resize( numVertices, 0 );
+
+ listOfLinksPerVertex.resize( maxLinksPerVertex * numVertices );
+
+ for( int linkIndex = 0; linkIndex < linkData.getNumLinks(); ++linkIndex )
+ {
+ btSoftBodyLinkData::LinkNodePair nodes( linkData.getVertexPair(linkIndex) );
+ {
+ // Do vertex 0
+ int vertexIndex = nodes.vertex0;
+ int linkForVertex = linksFoundPerVertex[nodes.vertex0];
+ int linkAddress = vertexIndex * maxLinksPerVertex + linkForVertex;
+
+ listOfLinksPerVertex[linkAddress] = linkIndex;
+
+ linksFoundPerVertex[nodes.vertex0] = linkForVertex + 1;
+ }
+ {
+ // Do vertex 1
+ int vertexIndex = nodes.vertex1;
+ int linkForVertex = linksFoundPerVertex[nodes.vertex1];
+ int linkAddress = vertexIndex * maxLinksPerVertex + linkForVertex;
+
+ listOfLinksPerVertex[linkAddress] = linkIndex;
+
+ linksFoundPerVertex[nodes.vertex1] = linkForVertex + 1;
+ }
+ }
+}
+
+static void computeBatchingIntoWavefronts(
+ btSoftBodyLinkData &linkData,
+ int wavefrontSize,
+ int linksPerWorkItem,
+ int maxLinksPerWavefront,
+ btAlignedObjectArray < btAlignedObjectArray <int> > &linksForWavefronts,
+ btAlignedObjectArray< btAlignedObjectArray < btAlignedObjectArray <int> > > &batchesWithinWaves, /* wave, batch, links in batch */
+ btAlignedObjectArray< btAlignedObjectArray< int > > &verticesForWavefronts /* wavefront, vertex */
+ )
+{
+
+
+ // Attempt generation of larger batches of links.
+ btAlignedObjectArray< bool > processedLink;
+ processedLink.resize( linkData.getNumLinks() );
+ btAlignedObjectArray< int > listOfLinksPerVertex;
+ int maxLinksPerVertex = 0;
+
+ // Count num vertices
+ int numVertices = 0;
+ for( int linkIndex = 0; linkIndex < linkData.getNumLinks(); ++linkIndex )
+ {
+ btSoftBodyLinkData::LinkNodePair nodes( linkData.getVertexPair(linkIndex) );
+ numVertices = btMax( numVertices, nodes.vertex0 + 1 );
+ numVertices = btMax( numVertices, nodes.vertex1 + 1 );
+ }
+
+ // Need list of links per vertex
+ // Compute valence of each vertex
+ btAlignedObjectArray <int> numLinksPerVertex;
+ numLinksPerVertex.resize(0);
+ numLinksPerVertex.resize( numVertices, 0 );
+
+ generateLinksPerVertex( numVertices, linkData, listOfLinksPerVertex, numLinksPerVertex, maxLinksPerVertex );
+
+ if (!numVertices)
+ return;
+
+ for( int vertex = 0; vertex < 10; ++vertex )
+ {
+ for( int link = 0; link < numLinksPerVertex[vertex]; ++link )
+ {
+ int linkAddress = vertex * maxLinksPerVertex + link;
+ }
+ }
+
+
+ // At this point we know what links we have for each vertex so we can start batching
+
+ // We want a vertex to start with, let's go with 0
+ int currentVertex = 0;
+ int linksProcessed = 0;
+
+ btAlignedObjectArray <int> verticesToProcess;
+
+ while( linksProcessed < linkData.getNumLinks() )
+ {
+ // Next wavefront
+ int nextWavefront = linksForWavefronts.size();
+ linksForWavefronts.resize( nextWavefront + 1 );
+ btAlignedObjectArray <int> &linksForWavefront(linksForWavefronts[nextWavefront]);
+ verticesForWavefronts.resize( nextWavefront + 1 );
+ btAlignedObjectArray<int> &vertexSet( verticesForWavefronts[nextWavefront] );
+
+ linksForWavefront.resize(0);
+
+ // Loop to find enough links to fill the wavefront
+ // Stopping if we either run out of links, or fill it
+ while( linksProcessed < linkData.getNumLinks() && linksForWavefront.size() < maxLinksPerWavefront )
+ {
+ // Go through the links for the current vertex
+ for( int link = 0; link < numLinksPerVertex[currentVertex] && linksForWavefront.size() < maxLinksPerWavefront; ++link )
+ {
+ int linkAddress = currentVertex * maxLinksPerVertex + link;
+ int linkIndex = listOfLinksPerVertex[linkAddress];
+
+ // If we have not already processed this link, add it to the wavefront
+ // Claim it as another processed link
+ // Add the vertex at the far end to the list of vertices to process.
+ if( !processedLink[linkIndex] )
+ {
+ linksForWavefront.push_back( linkIndex );
+ linksProcessed++;
+ processedLink[linkIndex] = true;
+ int v0 = linkData.getVertexPair(linkIndex).vertex0;
+ int v1 = linkData.getVertexPair(linkIndex).vertex1;
+ if( v0 == currentVertex )
+ verticesToProcess.push_back( v1 );
+ else
+ verticesToProcess.push_back( v0 );
+ }
+ }
+ if( verticesToProcess.size() > 0 )
+ {
+ // Get the element on the front of the queue and remove it
+ currentVertex = verticesToProcess[0];
+ removeFromVector( verticesToProcess, 0 );
+ } else {
+ // If we've not yet processed all the links, find the first unprocessed one
+ // and select one of its vertices as the current vertex
+ if( linksProcessed < linkData.getNumLinks() )
+ {
+ int searchLink = 0;
+ while( processedLink[searchLink] )
+ searchLink++;
+ currentVertex = linkData.getVertexPair(searchLink).vertex0;
+ }
+ }
+ }
+
+ // We have either finished or filled a wavefront
+ for( int link = 0; link < linksForWavefront.size(); ++link )
+ {
+ int v0 = linkData.getVertexPair( linksForWavefront[link] ).vertex0;
+ int v1 = linkData.getVertexPair( linksForWavefront[link] ).vertex1;
+ insertUniqueAndOrderedIntoVector( vertexSet, v0 );
+ insertUniqueAndOrderedIntoVector( vertexSet, v1 );
+ }
+ // Iterate over links mapped to the wave and batch those
+ // We can run a batch on each cycle trivially
+
+ batchesWithinWaves.resize( batchesWithinWaves.size() + 1 );
+ btAlignedObjectArray < btAlignedObjectArray <int> > &batchesWithinWave( batchesWithinWaves[batchesWithinWaves.size()-1] );
+
+
+ for( int link = 0; link < linksForWavefront.size(); ++link )
+ {
+ int linkIndex = linksForWavefront[link];
+ btSoftBodyLinkData::LinkNodePair vertices = linkData.getVertexPair( linkIndex );
+
+ int batch = 0;
+ bool placed = false;
+ while( batch < batchesWithinWave.size() && !placed )
+ {
+ bool foundSharedVertex = false;
+ if( batchesWithinWave[batch].size() >= wavefrontSize )
+ {
+ // If we have already filled this batch, move on to another
+ foundSharedVertex = true;
+ } else {
+ for( int link2 = 0; link2 < batchesWithinWave[batch].size(); ++link2 )
+ {
+ btSoftBodyLinkData::LinkNodePair vertices2 = linkData.getVertexPair( (batchesWithinWave[batch])[link2] );
+
+ if( vertices.vertex0 == vertices2.vertex0 ||
+ vertices.vertex1 == vertices2.vertex0 ||
+ vertices.vertex0 == vertices2.vertex1 ||
+ vertices.vertex1 == vertices2.vertex1 )
+ {
+ foundSharedVertex = true;
+ break;
+ }
+ }
+ }
+ if( !foundSharedVertex )
+ {
+ batchesWithinWave[batch].push_back( linkIndex );
+ placed = true;
+ } else {
+ ++batch;
+ }
+ }
+ if( batch == batchesWithinWave.size() && !placed )
+ {
+ batchesWithinWave.resize( batch + 1 );
+ batchesWithinWave[batch].push_back( linkIndex );
+ }
+ }
+
+ }
+
+}
+
+void btSoftBodyLinkDataOpenCLSIMDAware::generateBatches()
+{
+ btAlignedObjectArray < btAlignedObjectArray <int> > linksForWavefronts;
+ btAlignedObjectArray < btAlignedObjectArray <int> > wavefrontBatches;
+ btAlignedObjectArray< btAlignedObjectArray < btAlignedObjectArray <int> > > batchesWithinWaves;
+ btAlignedObjectArray< btAlignedObjectArray< int > > verticesForWavefronts; // wavefronts, vertices in wavefront as an ordered set
+
+ // Group the links into wavefronts
+ computeBatchingIntoWavefronts( *this, m_wavefrontSize, m_linksPerWorkItem, m_maxLinksPerWavefront, linksForWavefronts, batchesWithinWaves, verticesForWavefronts );
+
+
+ // Batch the wavefronts
+ generateBatchesOfWavefronts( linksForWavefronts, *this, m_maxVertex, wavefrontBatches );
+
+ m_numWavefronts = linksForWavefronts.size();
+
+ // At this point we have a description of which links we need to process in each wavefront
+
+ // First correctly fill the batch ranges vector
+ int numBatches = wavefrontBatches.size();
+ m_wavefrontBatchStartLengths.resize(0);
+ int prefixSum = 0;
+ for( int batchIndex = 0; batchIndex < numBatches; ++batchIndex )
+ {
+ int wavesInBatch = wavefrontBatches[batchIndex].size();
+ int nextPrefixSum = prefixSum + wavesInBatch;
+ m_wavefrontBatchStartLengths.push_back( BatchPair( prefixSum, nextPrefixSum - prefixSum ) );
+
+ prefixSum += wavesInBatch;
+ }
+
+ // Also find max number of batches within a wave
+ m_maxBatchesWithinWave = 0;
+ m_maxVerticesWithinWave = 0;
+ m_numBatchesAndVerticesWithinWaves.resize( m_numWavefronts );
+ for( int waveIndex = 0; waveIndex < m_numWavefronts; ++waveIndex )
+ {
+ // See if the number of batches in this wave is greater than the current maxium
+ int batchesInCurrentWave = batchesWithinWaves[waveIndex].size();
+ int verticesInCurrentWave = verticesForWavefronts[waveIndex].size();
+ m_maxBatchesWithinWave = btMax( batchesInCurrentWave, m_maxBatchesWithinWave );
+ m_maxVerticesWithinWave = btMax( verticesInCurrentWave, m_maxVerticesWithinWave );
+ }
+
+ // Add padding values both for alignment and as dudd addresses within LDS to compute junk rather than branch around
+ m_maxVerticesWithinWave = 16*((m_maxVerticesWithinWave/16)+2);
+
+ // Now we know the maximum number of vertices per-wave we can resize the global vertices array
+ m_wavefrontVerticesGlobalAddresses.resize( m_maxVerticesWithinWave * m_numWavefronts );
+
+ // Grab backup copies of all the link data arrays for the sorting process
+ btAlignedObjectArray<btSoftBodyLinkData::LinkNodePair> m_links_Backup(m_links);
+ btAlignedObjectArray<float> m_linkStrength_Backup(m_linkStrength);
+ btAlignedObjectArray<float> m_linksMassLSC_Backup(m_linksMassLSC);
+ btAlignedObjectArray<float> m_linksRestLengthSquared_Backup(m_linksRestLengthSquared);
+ //btAlignedObjectArray<Vectormath::Aos::Vector3> m_linksCLength_Backup(m_linksCLength);
+ //btAlignedObjectArray<float> m_linksLengthRatio_Backup(m_linksLengthRatio);
+ btAlignedObjectArray<float> m_linksRestLength_Backup(m_linksRestLength);
+ btAlignedObjectArray<float> m_linksMaterialLinearStiffnessCoefficient_Backup(m_linksMaterialLinearStiffnessCoefficient);
+
+ // Resize to a wavefront sized batch per batch per wave so we get perfectly coherent memory accesses.
+ m_links.resize( m_maxBatchesWithinWave * m_wavefrontSize * m_numWavefronts );
+ m_linkVerticesLocalAddresses.resize( m_maxBatchesWithinWave * m_wavefrontSize * m_numWavefronts );
+ m_linkStrength.resize( m_maxBatchesWithinWave * m_wavefrontSize * m_numWavefronts );
+ m_linksMassLSC.resize( m_maxBatchesWithinWave * m_wavefrontSize * m_numWavefronts );
+ m_linksRestLengthSquared.resize( m_maxBatchesWithinWave * m_wavefrontSize * m_numWavefronts );
+ m_linksRestLength.resize( m_maxBatchesWithinWave * m_wavefrontSize * m_numWavefronts );
+ m_linksMaterialLinearStiffnessCoefficient.resize( m_maxBatchesWithinWave * m_wavefrontSize * m_numWavefronts );
+
+ // Then re-order links into wavefront blocks
+
+ // Total number of wavefronts moved. This will decide the ordering of sorted wavefronts.
+ int wavefrontCount = 0;
+
+ // Iterate over batches of wavefronts, then wavefronts in the batch
+ for( int batchIndex = 0; batchIndex < numBatches; ++batchIndex )
+ {
+ btAlignedObjectArray <int> &batch( wavefrontBatches[batchIndex] );
+ int wavefrontsInBatch = batch.size();
+
+
+ for( int wavefrontIndex = 0; wavefrontIndex < wavefrontsInBatch; ++wavefrontIndex )
+ {
+
+ int originalWavefrontIndex = batch[wavefrontIndex];
+ btAlignedObjectArray< int > &wavefrontVertices( verticesForWavefronts[originalWavefrontIndex] );
+ int verticesUsedByWavefront = wavefrontVertices.size();
+
+ // Copy the set of vertices into the correctly structured array for use on the device
+ // Fill the non-vertices with -1s
+ // so we can mask out those reads
+ for( int vertex = 0; vertex < verticesUsedByWavefront; ++vertex )
+ {
+ m_wavefrontVerticesGlobalAddresses[m_maxVerticesWithinWave * wavefrontCount + vertex] = wavefrontVertices[vertex];
+ }
+ for( int vertex = verticesUsedByWavefront; vertex < m_maxVerticesWithinWave; ++vertex )
+ {
+ m_wavefrontVerticesGlobalAddresses[m_maxVerticesWithinWave * wavefrontCount + vertex] = -1;
+ }
+
+ // Obtain the set of batches within the current wavefront
+ btAlignedObjectArray < btAlignedObjectArray <int> > &batchesWithinWavefront( batchesWithinWaves[originalWavefrontIndex] );
+ // Set the size of the batches for use in the solver, correctly ordered
+ NumBatchesVerticesPair batchesAndVertices;
+ batchesAndVertices.numBatches = batchesWithinWavefront.size();
+ batchesAndVertices.numVertices = verticesUsedByWavefront;
+ m_numBatchesAndVerticesWithinWaves[wavefrontCount] = batchesAndVertices;
+
+
+ // Now iterate over batches within the wavefront to structure the links correctly
+ for( int wavefrontBatch = 0; wavefrontBatch < batchesWithinWavefront.size(); ++wavefrontBatch )
+ {
+ btAlignedObjectArray <int> &linksInBatch( batchesWithinWavefront[wavefrontBatch] );
+ int wavefrontBatchSize = linksInBatch.size();
+
+ int batchAddressInTarget = m_maxBatchesWithinWave * m_wavefrontSize * wavefrontCount + m_wavefrontSize * wavefrontBatch;
+
+ for( int linkIndex = 0; linkIndex < wavefrontBatchSize; ++linkIndex )
+ {
+ int originalLinkAddress = linksInBatch[linkIndex];
+ // Reorder simple arrays trivially
+ m_links[batchAddressInTarget + linkIndex] = m_links_Backup[originalLinkAddress];
+ m_linkStrength[batchAddressInTarget + linkIndex] = m_linkStrength_Backup[originalLinkAddress];
+ m_linksMassLSC[batchAddressInTarget + linkIndex] = m_linksMassLSC_Backup[originalLinkAddress];
+ m_linksRestLengthSquared[batchAddressInTarget + linkIndex] = m_linksRestLengthSquared_Backup[originalLinkAddress];
+ m_linksRestLength[batchAddressInTarget + linkIndex] = m_linksRestLength_Backup[originalLinkAddress];
+ m_linksMaterialLinearStiffnessCoefficient[batchAddressInTarget + linkIndex] = m_linksMaterialLinearStiffnessCoefficient_Backup[originalLinkAddress];
+
+ // The local address is more complicated. We need to work out where a given vertex will end up
+ // by searching the set of vertices for this link and using the index as the local address
+ btSoftBodyLinkData::LinkNodePair localPair;
+ btSoftBodyLinkData::LinkNodePair globalPair = m_links[batchAddressInTarget + linkIndex];
+ localPair.vertex0 = wavefrontVertices.findLinearSearch( globalPair.vertex0 );
+ localPair.vertex1 = wavefrontVertices.findLinearSearch( globalPair.vertex1 );
+ m_linkVerticesLocalAddresses[batchAddressInTarget + linkIndex] = localPair;
+ }
+ for( int linkIndex = wavefrontBatchSize; linkIndex < m_wavefrontSize; ++linkIndex )
+ {
+ // Put 0s into these arrays for padding for cleanliness
+ m_links[batchAddressInTarget + linkIndex] = btSoftBodyLinkData::LinkNodePair(0, 0);
+ m_linkStrength[batchAddressInTarget + linkIndex] = 0.f;
+ m_linksMassLSC[batchAddressInTarget + linkIndex] = 0.f;
+ m_linksRestLengthSquared[batchAddressInTarget + linkIndex] = 0.f;
+ m_linksRestLength[batchAddressInTarget + linkIndex] = 0.f;
+ m_linksMaterialLinearStiffnessCoefficient[batchAddressInTarget + linkIndex] = 0.f;
+
+
+ // For local addresses of junk data choose a set of addresses just above the range of valid ones
+ // and cycling tyhrough % 16 so that we don't have bank conficts between all dud addresses
+ // The valid addresses will do scatter and gather in the valid range, the junk ones should happily work
+ // off the end of that range so we need no control
+ btSoftBodyLinkData::LinkNodePair localPair;
+ localPair.vertex0 = verticesUsedByWavefront + (linkIndex % 16);
+ localPair.vertex1 = verticesUsedByWavefront + (linkIndex % 16);
+ m_linkVerticesLocalAddresses[batchAddressInTarget + linkIndex] = localPair;
+ }
+
+ }
+
+
+ wavefrontCount++;
+ }
+
+
+ }
+
+} // void btSoftBodyLinkDataDX11SIMDAware::generateBatches()
+
+
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef BT_SOFT_BODY_SOLVER_OPENCL_SIMDAWARE_H
+#define BT_SOFT_BODY_SOLVER_OPENCL_SIMDAWARE_H
+
+#include "stddef.h" //for size_t
+#include "vectormath/vmInclude.h"
+
+#include "btSoftBodySolver_OpenCL.h"
+#include "btSoftBodySolverBuffer_OpenCL.h"
+#include "btSoftBodySolverLinkData_OpenCLSIMDAware.h"
+#include "btSoftBodySolverVertexData_OpenCL.h"
+#include "btSoftBodySolverTriangleData_OpenCL.h"
+
+
+
+
+
+class btOpenCLSoftBodySolverSIMDAware : public btOpenCLSoftBodySolver
+{
+protected:
+
+
+ btSoftBodyLinkDataOpenCLSIMDAware m_linkData;
+
+
+
+
+ virtual bool buildShaders();
+
+
+ void updateConstants( float timeStep );
+
+ float computeTriangleArea(
+ const Vectormath::Aos::Point3 &vertex0,
+ const Vectormath::Aos::Point3 &vertex1,
+ const Vectormath::Aos::Point3 &vertex2 );
+
+
+ //////////////////////////////////////
+ // Kernel dispatches
+ void solveLinksForPosition( int startLink, int numLinks, float kst, float ti );
+
+ void solveCollisionsAndUpdateVelocities( float isolverdt );
+ // End kernel dispatches
+ /////////////////////////////////////
+
+public:
+ btOpenCLSoftBodySolverSIMDAware(cl_command_queue queue,cl_context ctx, bool bUpdateAchchoredNodePos = false);
+
+ virtual ~btOpenCLSoftBodySolverSIMDAware();
+
+ virtual SolverTypes getSolverType() const
+ {
+ return CL_SIMD_SOLVER;
+ }
+
+
+ virtual btSoftBodyLinkData &getLinkData();
+
+
+ virtual void optimize( btAlignedObjectArray< btSoftBody * > &softBodies , bool forceUpdate=false);
+
+ virtual void solveConstraints( float solverdt );
+
+}; // btOpenCLSoftBodySolverSIMDAware
+
+#endif // #ifndef BT_SOFT_BODY_SOLVER_OPENCL_SIMDAWARE_H
--- /dev/null
+# Install script for directory: /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL
+
+# Set the install prefix
+IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ SET(CMAKE_INSTALL_PREFIX "/usr/local")
+ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ IF(BUILD_TYPE)
+ STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ ELSE(BUILD_TYPE)
+ SET(CMAKE_INSTALL_CONFIG_NAME "Release")
+ ENDIF(BUILD_TYPE)
+ MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+
+# Set the component getting installed.
+IF(NOT CMAKE_INSTALL_COMPONENT)
+ IF(COMPONENT)
+ MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
+ SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ ELSE(COMPONENT)
+ SET(CMAKE_INSTALL_COMPONENT)
+ ENDIF(COMPONENT)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT)
+
+IF(NOT CMAKE_INSTALL_LOCAL_ONLY)
+ # Include the install script for each subdirectory.
+ INCLUDE("/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/MiniCL/cmake_install.cmake")
+
+ENDIF(NOT CMAKE_INSTALL_LOCAL_ONLY)
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef BT_SOFT_BODY_SOLVER_DATA_H
+#define BT_SOFT_BODY_SOLVER_DATA_H
+
+#include "BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h"
+#include "vectormath/vmInclude.h"
+
+
+class btSoftBodyLinkData
+{
+public:
+ /**
+ * Class representing a link as a set of three indices into the vertex array.
+ */
+ class LinkNodePair
+ {
+ public:
+ int vertex0;
+ int vertex1;
+
+ LinkNodePair()
+ {
+ vertex0 = 0;
+ vertex1 = 0;
+ }
+
+ LinkNodePair( int v0, int v1 )
+ {
+ vertex0 = v0;
+ vertex1 = v1;
+ }
+ };
+
+ /**
+ * Class describing a link for input into the system.
+ */
+ class LinkDescription
+ {
+ protected:
+ int m_vertex0;
+ int m_vertex1;
+ float m_linkLinearStiffness;
+ float m_linkStrength;
+
+ public:
+
+ LinkDescription()
+ {
+ m_vertex0 = 0;
+ m_vertex1 = 0;
+ m_linkLinearStiffness = 1.0;
+ m_linkStrength = 1.0;
+ }
+
+ LinkDescription( int newVertex0, int newVertex1, float linkLinearStiffness )
+ {
+ m_vertex0 = newVertex0;
+ m_vertex1 = newVertex1;
+ m_linkLinearStiffness = linkLinearStiffness;
+ m_linkStrength = 1.0;
+ }
+
+ LinkNodePair getVertexPair() const
+ {
+ LinkNodePair nodes;
+ nodes.vertex0 = m_vertex0;
+ nodes.vertex1 = m_vertex1;
+ return nodes;
+ }
+
+ void setVertex0( int vertex )
+ {
+ m_vertex0 = vertex;
+ }
+
+ void setVertex1( int vertex )
+ {
+ m_vertex1 = vertex;
+ }
+
+ void setLinkLinearStiffness( float linearStiffness )
+ {
+ m_linkLinearStiffness = linearStiffness;
+ }
+
+ void setLinkStrength( float strength )
+ {
+ m_linkStrength = strength;
+ }
+
+ int getVertex0() const
+ {
+ return m_vertex0;
+ }
+
+ int getVertex1() const
+ {
+ return m_vertex1;
+ }
+
+ float getLinkStrength() const
+ {
+ return m_linkStrength;
+ }
+
+ float getLinkLinearStiffness() const
+ {
+ return m_linkLinearStiffness;
+ }
+ };
+
+
+protected:
+ // NOTE:
+ // Vertex reference data is stored relative to global array, not relative to individual cloth.
+ // Values must be correct if being passed into single-cloth VBOs or when migrating from one solver
+ // to another.
+
+ btAlignedObjectArray< LinkNodePair > m_links; // Vertex pair for the link
+ btAlignedObjectArray< float > m_linkStrength; // Strength of each link
+ // (inverseMassA + inverseMassB)/ linear stiffness coefficient
+ btAlignedObjectArray< float > m_linksMassLSC;
+ btAlignedObjectArray< float > m_linksRestLengthSquared;
+ // Current vector length of link
+ btAlignedObjectArray< Vectormath::Aos::Vector3 > m_linksCLength;
+ // 1/(current length * current length * massLSC)
+ btAlignedObjectArray< float > m_linksLengthRatio;
+ btAlignedObjectArray< float > m_linksRestLength;
+ btAlignedObjectArray< float > m_linksMaterialLinearStiffnessCoefficient;
+
+public:
+ btSoftBodyLinkData()
+ {
+ }
+
+ virtual ~btSoftBodyLinkData()
+ {
+ }
+
+ virtual void clear()
+ {
+ m_links.resize(0);
+ m_linkStrength.resize(0);
+ m_linksMassLSC.resize(0);
+ m_linksRestLengthSquared.resize(0);
+ m_linksLengthRatio.resize(0);
+ m_linksRestLength.resize(0);
+ m_linksMaterialLinearStiffnessCoefficient.resize(0);
+ }
+
+ int getNumLinks()
+ {
+ return m_links.size();
+ }
+
+ /** Allocate enough space in all link-related arrays to fit numLinks links */
+ virtual void createLinks( int numLinks )
+ {
+ int previousSize = m_links.size();
+ int newSize = previousSize + numLinks;
+
+ // Resize all the arrays that store link data
+ m_links.resize( newSize );
+ m_linkStrength.resize( newSize );
+ m_linksMassLSC.resize( newSize );
+ m_linksRestLengthSquared.resize( newSize );
+ m_linksCLength.resize( newSize );
+ m_linksLengthRatio.resize( newSize );
+ m_linksRestLength.resize( newSize );
+ m_linksMaterialLinearStiffnessCoefficient.resize( newSize );
+ }
+
+ /** Insert the link described into the correct data structures assuming space has already been allocated by a call to createLinks */
+ virtual void setLinkAt( const LinkDescription &link, int linkIndex )
+ {
+ m_links[linkIndex] = link.getVertexPair();
+ m_linkStrength[linkIndex] = link.getLinkStrength();
+ m_linksMassLSC[linkIndex] = 0.f;
+ m_linksRestLengthSquared[linkIndex] = 0.f;
+ m_linksCLength[linkIndex] = Vectormath::Aos::Vector3(0.f, 0.f, 0.f);
+ m_linksLengthRatio[linkIndex] = 0.f;
+ m_linksRestLength[linkIndex] = 0.f;
+ m_linksMaterialLinearStiffnessCoefficient[linkIndex] = link.getLinkLinearStiffness();
+ }
+
+
+ /**
+ * Return true if data is on the accelerator.
+ * The CPU version of this class will return true here because
+ * the CPU is the same as the accelerator.
+ */
+ virtual bool onAccelerator()
+ {
+ return true;
+ }
+
+ /**
+ * Move data from host memory to the accelerator.
+ * The CPU version will always return that it has moved it.
+ */
+ virtual bool moveToAccelerator()
+ {
+ return true;
+ }
+
+ /**
+ * Move data from host memory from the accelerator.
+ * The CPU version will always return that it has moved it.
+ */
+ virtual bool moveFromAccelerator()
+ {
+ return true;
+ }
+
+
+
+ /**
+ * Return reference to the vertex index pair for link linkIndex as stored on the host.
+ */
+ LinkNodePair &getVertexPair( int linkIndex )
+ {
+ return m_links[linkIndex];
+ }
+
+ /**
+ * Return reference to strength of link linkIndex as stored on the host.
+ */
+ float &getStrength( int linkIndex )
+ {
+ return m_linkStrength[linkIndex];
+ }
+
+ /**
+ * Return a reference to the strength of the link corrected for link sorting.
+ * This is important if we are using data on an accelerator which has the data sorted in some fashion.
+ */
+ virtual float &getStrengthCorrected( int linkIndex )
+ {
+ return getStrength( linkIndex );
+ }
+
+ /**
+ * Return reference to the rest length of link linkIndex as stored on the host.
+ */
+ float &getRestLength( int linkIndex )
+ {
+ return m_linksRestLength[linkIndex];
+ }
+
+ /**
+ * Return reference to linear stiffness coefficient for link linkIndex as stored on the host.
+ */
+ float &getLinearStiffnessCoefficient( int linkIndex )
+ {
+ return m_linksMaterialLinearStiffnessCoefficient[linkIndex];
+ }
+
+ /**
+ * Return reference to the MassLSC value for link linkIndex as stored on the host.
+ */
+ float &getMassLSC( int linkIndex )
+ {
+ return m_linksMassLSC[linkIndex];
+ }
+
+ /**
+ * Return reference to rest length squared for link linkIndex as stored on the host.
+ */
+ float &getRestLengthSquared( int linkIndex )
+ {
+ return m_linksRestLengthSquared[linkIndex];
+ }
+
+ /**
+ * Return reference to current length of link linkIndex as stored on the host.
+ */
+ Vectormath::Aos::Vector3 &getCurrentLength( int linkIndex )
+ {
+ return m_linksCLength[linkIndex];
+ }
+
+ /**
+ * Return the link length ratio from for link linkIndex as stored on the host.
+ */
+ float &getLinkLengthRatio( int linkIndex )
+ {
+ return m_linksLengthRatio[linkIndex];
+ }
+};
+
+
+
+/**
+ * Wrapper for vertex data information.
+ * By wrapping it like this we stand a good chance of being able to optimise for storage format easily.
+ * It should also help us make sure all the data structures remain consistent.
+ */
+class btSoftBodyVertexData
+{
+public:
+ /**
+ * Class describing a vertex for input into the system.
+ */
+ class VertexDescription
+ {
+ private:
+ Vectormath::Aos::Point3 m_position;
+ /** Inverse mass. If this is 0f then the mass was 0 because that simplifies calculations. */
+ float m_inverseMass;
+
+ public:
+ VertexDescription()
+ {
+ m_position = Vectormath::Aos::Point3( 0.f, 0.f, 0.f );
+ m_inverseMass = 0.f;
+ }
+
+ VertexDescription( const Vectormath::Aos::Point3 &position, float mass )
+ {
+ m_position = position;
+ if( mass > 0.f )
+ m_inverseMass = 1.0f/mass;
+ else
+ m_inverseMass = 0.f;
+ }
+
+ void setPosition( const Vectormath::Aos::Point3 &position )
+ {
+ m_position = position;
+ }
+
+ void setInverseMass( float inverseMass )
+ {
+ m_inverseMass = inverseMass;
+ }
+
+ void setMass( float mass )
+ {
+ if( mass > 0.f )
+ m_inverseMass = 1.0f/mass;
+ else
+ m_inverseMass = 0.f;
+ }
+
+ Vectormath::Aos::Point3 getPosition() const
+ {
+ return m_position;
+ }
+
+ float getInverseMass() const
+ {
+ return m_inverseMass;
+ }
+
+ float getMass() const
+ {
+ if( m_inverseMass == 0.f )
+ return 0.f;
+ else
+ return 1.0f/m_inverseMass;
+ }
+ };
+protected:
+
+ // identifier for the individual cloth
+ // For the CPU we don't really need this as we can grab the cloths and iterate over only their vertices
+ // For a parallel accelerator knowing on a per-vertex basis which cloth we're part of will help for obtaining
+ // per-cloth data
+ // For sorting etc it might also be helpful to be able to use in-array data such as this.
+ btAlignedObjectArray< int > m_clothIdentifier;
+ btAlignedObjectArray< Vectormath::Aos::Point3 > m_vertexPosition; // vertex positions
+ btAlignedObjectArray< Vectormath::Aos::Point3 > m_vertexPreviousPosition; // vertex positions
+ btAlignedObjectArray< Vectormath::Aos::Vector3 > m_vertexVelocity; // Velocity
+ btAlignedObjectArray< Vectormath::Aos::Vector3 > m_vertexForceAccumulator; // Force accumulator
+ btAlignedObjectArray< Vectormath::Aos::Vector3 > m_vertexNormal; // Normals
+ btAlignedObjectArray< float > m_vertexInverseMass; // Inverse mass
+ btAlignedObjectArray< float > m_vertexArea; // Area controlled by the vertex
+ btAlignedObjectArray< int > m_vertexTriangleCount; // Number of triangles touching this vertex
+
+public:
+ btSoftBodyVertexData()
+ {
+ }
+
+ virtual ~btSoftBodyVertexData()
+ {
+ }
+
+ virtual void clear()
+ {
+ m_clothIdentifier.resize(0);
+ m_vertexPosition.resize(0);
+ m_vertexPreviousPosition.resize(0);
+ m_vertexVelocity.resize(0);
+ m_vertexForceAccumulator.resize(0);
+ m_vertexNormal.resize(0);
+ m_vertexInverseMass.resize(0);
+ m_vertexArea.resize(0);
+ m_vertexTriangleCount.resize(0);
+ }
+
+ int getNumVertices()
+ {
+ return m_vertexPosition.size();
+ }
+
+ int getClothIdentifier( int vertexIndex )
+ {
+ return m_clothIdentifier[vertexIndex];
+ }
+
+ void setVertexAt( const VertexDescription &vertex, int vertexIndex )
+ {
+ m_vertexPosition[vertexIndex] = vertex.getPosition();
+ m_vertexPreviousPosition[vertexIndex] = vertex.getPosition();
+ m_vertexVelocity[vertexIndex] = Vectormath::Aos::Vector3(0.f, 0.f, 0.f);
+ m_vertexForceAccumulator[vertexIndex] = Vectormath::Aos::Vector3(0.f, 0.f, 0.f);
+ m_vertexNormal[vertexIndex] = Vectormath::Aos::Vector3(0.f, 0.f, 0.f);
+ m_vertexInverseMass[vertexIndex] = vertex.getInverseMass();
+ m_vertexArea[vertexIndex] = 0.f;
+ m_vertexTriangleCount[vertexIndex] = 0;
+ }
+
+ /**
+ * Create numVertices new vertices for cloth clothIdentifier
+ * maxVertices allows a buffer zone of extra vertices for alignment or tearing reasons.
+ */
+ void createVertices( int numVertices, int clothIdentifier, int maxVertices = 0 )
+ {
+ int previousSize = m_vertexPosition.size();
+ if( maxVertices == 0 )
+ maxVertices = numVertices;
+ int newSize = previousSize + maxVertices;
+
+ // Resize all the arrays that store vertex data
+ m_clothIdentifier.resize( newSize );
+ m_vertexPosition.resize( newSize );
+ m_vertexPreviousPosition.resize( newSize );
+ m_vertexVelocity.resize( newSize );
+ m_vertexForceAccumulator.resize( newSize );
+ m_vertexNormal.resize( newSize );
+ m_vertexInverseMass.resize( newSize );
+ m_vertexArea.resize( newSize );
+ m_vertexTriangleCount.resize( newSize );
+
+ for( int vertexIndex = previousSize; vertexIndex < newSize; ++vertexIndex )
+ m_clothIdentifier[vertexIndex] = clothIdentifier;
+ for( int vertexIndex = (previousSize + numVertices); vertexIndex < newSize; ++vertexIndex )
+ m_clothIdentifier[vertexIndex] = -1;
+ }
+
+ // Get and set methods in header so they can be inlined
+
+ /**
+ * Return a reference to the position of vertex vertexIndex as stored on the host.
+ */
+ Vectormath::Aos::Point3 &getPosition( int vertexIndex )
+ {
+ return m_vertexPosition[vertexIndex];
+ }
+
+ Vectormath::Aos::Point3 getPosition( int vertexIndex ) const
+ {
+ return m_vertexPosition[vertexIndex];
+ }
+
+ /**
+ * Return a reference to the previous position of vertex vertexIndex as stored on the host.
+ */
+ Vectormath::Aos::Point3 &getPreviousPosition( int vertexIndex )
+ {
+ return m_vertexPreviousPosition[vertexIndex];
+ }
+
+ /**
+ * Return a reference to the velocity of vertex vertexIndex as stored on the host.
+ */
+ Vectormath::Aos::Vector3 &getVelocity( int vertexIndex )
+ {
+ return m_vertexVelocity[vertexIndex];
+ }
+
+ /**
+ * Return a reference to the force accumulator of vertex vertexIndex as stored on the host.
+ */
+ Vectormath::Aos::Vector3 &getForceAccumulator( int vertexIndex )
+ {
+ return m_vertexForceAccumulator[vertexIndex];
+ }
+
+ /**
+ * Return a reference to the normal of vertex vertexIndex as stored on the host.
+ */
+ Vectormath::Aos::Vector3 &getNormal( int vertexIndex )
+ {
+ return m_vertexNormal[vertexIndex];
+ }
+
+ Vectormath::Aos::Vector3 getNormal( int vertexIndex ) const
+ {
+ return m_vertexNormal[vertexIndex];
+ }
+
+ /**
+ * Return a reference to the inverse mass of vertex vertexIndex as stored on the host.
+ */
+ float &getInverseMass( int vertexIndex )
+ {
+ return m_vertexInverseMass[vertexIndex];
+ }
+
+ /**
+ * Get access to the area controlled by this vertex.
+ */
+ float &getArea( int vertexIndex )
+ {
+ return m_vertexArea[vertexIndex];
+ }
+
+ /**
+ * Get access to the array of how many triangles touch each vertex.
+ */
+ int &getTriangleCount( int vertexIndex )
+ {
+ return m_vertexTriangleCount[vertexIndex];
+ }
+
+
+
+ /**
+ * Return true if data is on the accelerator.
+ * The CPU version of this class will return true here because
+ * the CPU is the same as the accelerator.
+ */
+ virtual bool onAccelerator()
+ {
+ return true;
+ }
+
+ /**
+ * Move data from host memory to the accelerator.
+ * The CPU version will always return that it has moved it.
+ */
+ virtual bool moveToAccelerator()
+ {
+ return true;
+ }
+
+ /**
+ * Move data to host memory from the accelerator if bCopy is false.
+ * If bCopy is true, copy data to host memory from the accelerator so that data
+ * won't be moved to accelerator when moveToAccelerator() is called next time.
+ * If bCopyMinimum is true, only vertex position and normal are copied.
+ * bCopyMinimum will be meaningful only if bCopy is true.
+ * The CPU version will always return that it has moved it.
+ */
+ virtual bool moveFromAccelerator(bool bCopy = false, bool bCopyMinimum = true)
+ {
+ return true;
+ }
+
+ btAlignedObjectArray< Vectormath::Aos::Point3 > &getVertexPositions()
+ {
+ return m_vertexPosition;
+ }
+};
+
+
+class btSoftBodyTriangleData
+{
+public:
+ /**
+ * Class representing a triangle as a set of three indices into the
+ * vertex array.
+ */
+ class TriangleNodeSet
+ {
+ public:
+ int vertex0;
+ int vertex1;
+ int vertex2;
+ int _padding;
+
+ TriangleNodeSet( )
+ {
+ vertex0 = 0;
+ vertex1 = 0;
+ vertex2 = 0;
+ _padding = -1;
+ }
+
+ TriangleNodeSet( int newVertex0, int newVertex1, int newVertex2 )
+ {
+ vertex0 = newVertex0;
+ vertex1 = newVertex1;
+ vertex2 = newVertex2;
+ }
+ };
+
+ class TriangleDescription
+ {
+ protected:
+ int m_vertex0;
+ int m_vertex1;
+ int m_vertex2;
+
+ public:
+ TriangleDescription()
+ {
+ m_vertex0 = 0;
+ m_vertex1 = 0;
+ m_vertex2 = 0;
+ }
+
+ TriangleDescription( int newVertex0, int newVertex1, int newVertex2 )
+ {
+ m_vertex0 = newVertex0;
+ m_vertex1 = newVertex1;
+ m_vertex2 = newVertex2;
+ }
+
+ TriangleNodeSet getVertexSet() const
+ {
+ btSoftBodyTriangleData::TriangleNodeSet nodes;
+ nodes.vertex0 = m_vertex0;
+ nodes.vertex1 = m_vertex1;
+ nodes.vertex2 = m_vertex2;
+ return nodes;
+ }
+ };
+
+protected:
+ // NOTE:
+ // Vertex reference data is stored relative to global array, not relative to individual cloth.
+ // Values must be correct if being passed into single-cloth VBOs or when migrating from one solver
+ // to another.
+ btAlignedObjectArray< TriangleNodeSet > m_vertexIndices;
+ btAlignedObjectArray< float > m_area;
+ btAlignedObjectArray< Vectormath::Aos::Vector3 > m_normal;
+
+public:
+ btSoftBodyTriangleData()
+ {
+ }
+
+ virtual ~btSoftBodyTriangleData()
+ {
+
+ }
+
+ virtual void clear()
+ {
+ m_vertexIndices.resize(0);
+ m_area.resize(0);
+ m_normal.resize(0);
+ }
+
+ int getNumTriangles()
+ {
+ return m_vertexIndices.size();
+ }
+
+ virtual void setTriangleAt( const TriangleDescription &triangle, int triangleIndex )
+ {
+ m_vertexIndices[triangleIndex] = triangle.getVertexSet();
+ }
+
+ virtual void createTriangles( int numTriangles )
+ {
+ int previousSize = m_vertexIndices.size();
+ int newSize = previousSize + numTriangles;
+
+ // Resize all the arrays that store triangle data
+ m_vertexIndices.resize( newSize );
+ m_area.resize( newSize );
+ m_normal.resize( newSize );
+ }
+
+ /**
+ * Return the vertex index set for triangle triangleIndex as stored on the host.
+ */
+ const TriangleNodeSet &getVertexSet( int triangleIndex )
+ {
+ return m_vertexIndices[triangleIndex];
+ }
+
+ /**
+ * Get access to the triangle area.
+ */
+ float &getTriangleArea( int triangleIndex )
+ {
+ return m_area[triangleIndex];
+ }
+
+ /**
+ * Get access to the normal vector for this triangle.
+ */
+ Vectormath::Aos::Vector3 &getNormal( int triangleIndex )
+ {
+ return m_normal[triangleIndex];
+ }
+
+ /**
+ * Return true if data is on the accelerator.
+ * The CPU version of this class will return true here because
+ * the CPU is the same as the accelerator.
+ */
+ virtual bool onAccelerator()
+ {
+ return true;
+ }
+
+ /**
+ * Move data from host memory to the accelerator.
+ * The CPU version will always return that it has moved it.
+ */
+ virtual bool moveToAccelerator()
+ {
+ return true;
+ }
+
+ /**
+ * Move data from host memory from the accelerator.
+ * The CPU version will always return that it has moved it.
+ */
+ virtual bool moveFromAccelerator()
+ {
+ return true;
+ }
+};
+
+
+#endif // #ifndef BT_SOFT_BODY_SOLVER_DATA_H
+
--- /dev/null
+# Install script for directory: /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers
+
+# Set the install prefix
+IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ SET(CMAKE_INSTALL_PREFIX "/usr/local")
+ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ IF(BUILD_TYPE)
+ STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ ELSE(BUILD_TYPE)
+ SET(CMAKE_INSTALL_CONFIG_NAME "Release")
+ ENDIF(BUILD_TYPE)
+ MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+
+# Set the component getting installed.
+IF(NOT CMAKE_INSTALL_COMPONENT)
+ IF(COMPONENT)
+ MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
+ SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ ELSE(COMPONENT)
+ SET(CMAKE_INSTALL_COMPONENT)
+ ENDIF(COMPONENT)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT)
+
+IF(NOT CMAKE_INSTALL_LOCAL_ONLY)
+ # Include the install script for each subdirectory.
+ INCLUDE("/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/cmake_install.cmake")
+
+ENDIF(NOT CMAKE_INSTALL_LOCAL_ONLY)
+
--- /dev/null
+/*
+ Copyright (C) 2009 Sony Computer Entertainment Inc.
+ All rights reserved.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+*/
+
+#ifndef BT_HEAP_MANAGER_H__
+#define BT_HEAP_MANAGER_H__
+
+#ifdef __SPU__
+ #define HEAP_STACK_SIZE 32
+#else
+ #define HEAP_STACK_SIZE 64
+#endif
+
+#define MIN_ALLOC_SIZE 16
+
+
+class HeapManager
+{
+private:
+ ATTRIBUTE_ALIGNED16(unsigned char *mHeap);
+ ATTRIBUTE_ALIGNED16(unsigned int mHeapBytes);
+ ATTRIBUTE_ALIGNED16(unsigned char *mPoolStack[HEAP_STACK_SIZE]);
+ ATTRIBUTE_ALIGNED16(unsigned int mCurStack);
+
+public:
+ enum {ALIGN16,ALIGN128};
+
+ HeapManager(unsigned char *buf,int bytes)
+ {
+ mHeap = buf;
+ mHeapBytes = bytes;
+ clear();
+ }
+
+ ~HeapManager()
+ {
+ }
+
+ int getAllocated()
+ {
+ return (int)(mPoolStack[mCurStack]-mHeap);
+ }
+
+ int getRest()
+ {
+ return mHeapBytes-getAllocated();
+ }
+
+ void *allocate(size_t bytes,int alignment = ALIGN16)
+ {
+ if(bytes <= 0) bytes = MIN_ALLOC_SIZE;
+ btAssert(mCurStack < (HEAP_STACK_SIZE-1));
+
+
+#if defined(_WIN64) || defined(__LP64__) || defined(__x86_64__)
+ unsigned long long p = (unsigned long long )mPoolStack[mCurStack];
+ if(alignment == ALIGN128) {
+ p = ((p+127) & 0xffffffffffffff80);
+ bytes = (bytes+127) & 0xffffffffffffff80;
+ }
+ else {
+ bytes = (bytes+15) & 0xfffffffffffffff0;
+ }
+
+ btAssert(bytes <=(mHeapBytes-(p-(unsigned long long )mHeap)) );
+
+#else
+ unsigned long p = (unsigned long )mPoolStack[mCurStack];
+ if(alignment == ALIGN128) {
+ p = ((p+127) & 0xffffff80);
+ bytes = (bytes+127) & 0xffffff80;
+ }
+ else {
+ bytes = (bytes+15) & 0xfffffff0;
+ }
+ btAssert(bytes <=(mHeapBytes-(p-(unsigned long)mHeap)) );
+#endif
+ unsigned char * bla = (unsigned char *)(p + bytes);
+ mPoolStack[++mCurStack] = bla;
+ return (void*)p;
+ }
+
+ void deallocate(void *p)
+ {
+ (void) p;
+ mCurStack--;
+ }
+
+ void clear()
+ {
+ mPoolStack[0] = mHeap;
+ mCurStack = 0;
+ }
+
+// void printStack()
+// {
+// for(unsigned int i=0;i<=mCurStack;i++) {
+// PRINTF("memStack %2d 0x%x\n",i,(uint32_t)mPoolStack[i]);
+// }
+// }
+
+};
+
+#endif //BT_HEAP_MANAGER_H__
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/ccmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target install
+install: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install
+
+# Special rule for the target install
+install/fast: preinstall/fast
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install/fast
+
+# Special rule for the target install/local
+install/local: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
+.PHONY : install/local
+
+# Special rule for the target install/local
+install/local/fast: install/local
+.PHONY : install/local/fast
+
+# Special rule for the target install/strip
+install/strip: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
+.PHONY : install/strip
+
+# Special rule for the target install/strip
+install/strip/fast: install/strip
+.PHONY : install/strip/fast
+
+# Special rule for the target list_install_components
+list_install_components:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
+.PHONY : list_install_components
+
+# Special rule for the target list_install_components
+list_install_components/fast: list_install_components
+.PHONY : list_install_components/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/CMakeFiles/progress.marks
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Convenience name for target.
+src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/rule:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/rule
+.PHONY : src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/rule
+
+# Convenience name for target.
+BulletMultiThreaded: src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/rule
+.PHONY : BulletMultiThreaded
+
+# fast build rule for target.
+BulletMultiThreaded/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build
+.PHONY : BulletMultiThreaded/fast
+
+# target to build an object file
+PosixThreadSupport.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.o
+.PHONY : PosixThreadSupport.o
+
+# target to preprocess a source file
+PosixThreadSupport.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.i
+.PHONY : PosixThreadSupport.i
+
+# target to generate assembly for a file
+PosixThreadSupport.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/PosixThreadSupport.s
+.PHONY : PosixThreadSupport.s
+
+# target to build an object file
+SequentialThreadSupport.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.o
+.PHONY : SequentialThreadSupport.o
+
+# target to preprocess a source file
+SequentialThreadSupport.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.i
+.PHONY : SequentialThreadSupport.i
+
+# target to generate assembly for a file
+SequentialThreadSupport.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SequentialThreadSupport.s
+.PHONY : SequentialThreadSupport.s
+
+# target to build an object file
+SpuCollisionObjectWrapper.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.o
+.PHONY : SpuCollisionObjectWrapper.o
+
+# target to preprocess a source file
+SpuCollisionObjectWrapper.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.i
+.PHONY : SpuCollisionObjectWrapper.i
+
+# target to generate assembly for a file
+SpuCollisionObjectWrapper.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionObjectWrapper.s
+.PHONY : SpuCollisionObjectWrapper.s
+
+# target to build an object file
+SpuCollisionTaskProcess.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.o
+.PHONY : SpuCollisionTaskProcess.o
+
+# target to preprocess a source file
+SpuCollisionTaskProcess.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.i
+.PHONY : SpuCollisionTaskProcess.i
+
+# target to generate assembly for a file
+SpuCollisionTaskProcess.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuCollisionTaskProcess.s
+.PHONY : SpuCollisionTaskProcess.s
+
+# target to build an object file
+SpuContactManifoldCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.o
+.PHONY : SpuContactManifoldCollisionAlgorithm.o
+
+# target to preprocess a source file
+SpuContactManifoldCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.i
+.PHONY : SpuContactManifoldCollisionAlgorithm.i
+
+# target to generate assembly for a file
+SpuContactManifoldCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuContactManifoldCollisionAlgorithm.s
+.PHONY : SpuContactManifoldCollisionAlgorithm.s
+
+# target to build an object file
+SpuFakeDma.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.o
+.PHONY : SpuFakeDma.o
+
+# target to preprocess a source file
+SpuFakeDma.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.i
+.PHONY : SpuFakeDma.i
+
+# target to generate assembly for a file
+SpuFakeDma.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuFakeDma.s
+.PHONY : SpuFakeDma.s
+
+# target to build an object file
+SpuGatheringCollisionDispatcher.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.o
+.PHONY : SpuGatheringCollisionDispatcher.o
+
+# target to preprocess a source file
+SpuGatheringCollisionDispatcher.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.i
+.PHONY : SpuGatheringCollisionDispatcher.i
+
+# target to generate assembly for a file
+SpuGatheringCollisionDispatcher.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuGatheringCollisionDispatcher.s
+.PHONY : SpuGatheringCollisionDispatcher.s
+
+# target to build an object file
+SpuLibspe2Support.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.o
+.PHONY : SpuLibspe2Support.o
+
+# target to preprocess a source file
+SpuLibspe2Support.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.i
+.PHONY : SpuLibspe2Support.i
+
+# target to generate assembly for a file
+SpuLibspe2Support.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuLibspe2Support.s
+.PHONY : SpuLibspe2Support.s
+
+# target to build an object file
+SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o
+.PHONY : SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o
+
+# target to preprocess a source file
+SpuNarrowPhaseCollisionTask/SpuCollisionShapes.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.i
+.PHONY : SpuNarrowPhaseCollisionTask/SpuCollisionShapes.i
+
+# target to generate assembly for a file
+SpuNarrowPhaseCollisionTask/SpuCollisionShapes.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.s
+.PHONY : SpuNarrowPhaseCollisionTask/SpuCollisionShapes.s
+
+# target to build an object file
+SpuNarrowPhaseCollisionTask/SpuContactResult.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.o
+.PHONY : SpuNarrowPhaseCollisionTask/SpuContactResult.o
+
+# target to preprocess a source file
+SpuNarrowPhaseCollisionTask/SpuContactResult.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.i
+.PHONY : SpuNarrowPhaseCollisionTask/SpuContactResult.i
+
+# target to generate assembly for a file
+SpuNarrowPhaseCollisionTask/SpuContactResult.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuContactResult.s
+.PHONY : SpuNarrowPhaseCollisionTask/SpuContactResult.s
+
+# target to build an object file
+SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o
+.PHONY : SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o
+
+# target to preprocess a source file
+SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.i
+.PHONY : SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.i
+
+# target to generate assembly for a file
+SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.s
+.PHONY : SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.s
+
+# target to build an object file
+SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o
+.PHONY : SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o
+
+# target to preprocess a source file
+SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.i
+.PHONY : SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.i
+
+# target to generate assembly for a file
+SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.s
+.PHONY : SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.s
+
+# target to build an object file
+SpuNarrowPhaseCollisionTask/boxBoxDistance.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.o
+.PHONY : SpuNarrowPhaseCollisionTask/boxBoxDistance.o
+
+# target to preprocess a source file
+SpuNarrowPhaseCollisionTask/boxBoxDistance.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.i
+.PHONY : SpuNarrowPhaseCollisionTask/boxBoxDistance.i
+
+# target to generate assembly for a file
+SpuNarrowPhaseCollisionTask/boxBoxDistance.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuNarrowPhaseCollisionTask/boxBoxDistance.s
+.PHONY : SpuNarrowPhaseCollisionTask/boxBoxDistance.s
+
+# target to build an object file
+SpuSampleTaskProcess.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.o
+.PHONY : SpuSampleTaskProcess.o
+
+# target to preprocess a source file
+SpuSampleTaskProcess.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.i
+.PHONY : SpuSampleTaskProcess.i
+
+# target to generate assembly for a file
+SpuSampleTaskProcess.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/SpuSampleTaskProcess.s
+.PHONY : SpuSampleTaskProcess.s
+
+# target to build an object file
+Win32ThreadSupport.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.o
+.PHONY : Win32ThreadSupport.o
+
+# target to preprocess a source file
+Win32ThreadSupport.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.i
+.PHONY : Win32ThreadSupport.i
+
+# target to generate assembly for a file
+Win32ThreadSupport.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/Win32ThreadSupport.s
+.PHONY : Win32ThreadSupport.s
+
+# target to build an object file
+btGpu3DGridBroadphase.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.o
+.PHONY : btGpu3DGridBroadphase.o
+
+# target to preprocess a source file
+btGpu3DGridBroadphase.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.i
+.PHONY : btGpu3DGridBroadphase.i
+
+# target to generate assembly for a file
+btGpu3DGridBroadphase.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btGpu3DGridBroadphase.s
+.PHONY : btGpu3DGridBroadphase.s
+
+# target to build an object file
+btParallelConstraintSolver.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.o
+.PHONY : btParallelConstraintSolver.o
+
+# target to preprocess a source file
+btParallelConstraintSolver.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.i
+.PHONY : btParallelConstraintSolver.i
+
+# target to generate assembly for a file
+btParallelConstraintSolver.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btParallelConstraintSolver.s
+.PHONY : btParallelConstraintSolver.s
+
+# target to build an object file
+btThreadSupportInterface.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.o
+.PHONY : btThreadSupportInterface.o
+
+# target to preprocess a source file
+btThreadSupportInterface.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.i
+.PHONY : btThreadSupportInterface.i
+
+# target to generate assembly for a file
+btThreadSupportInterface.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/build.make src/BulletMultiThreaded/CMakeFiles/BulletMultiThreaded.dir/btThreadSupportInterface.s
+.PHONY : btThreadSupportInterface.s
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... BulletMultiThreaded"
+ @echo "... edit_cache"
+ @echo "... install"
+ @echo "... install/local"
+ @echo "... install/strip"
+ @echo "... list_install_components"
+ @echo "... rebuild_cache"
+ @echo "... PosixThreadSupport.o"
+ @echo "... PosixThreadSupport.i"
+ @echo "... PosixThreadSupport.s"
+ @echo "... SequentialThreadSupport.o"
+ @echo "... SequentialThreadSupport.i"
+ @echo "... SequentialThreadSupport.s"
+ @echo "... SpuCollisionObjectWrapper.o"
+ @echo "... SpuCollisionObjectWrapper.i"
+ @echo "... SpuCollisionObjectWrapper.s"
+ @echo "... SpuCollisionTaskProcess.o"
+ @echo "... SpuCollisionTaskProcess.i"
+ @echo "... SpuCollisionTaskProcess.s"
+ @echo "... SpuContactManifoldCollisionAlgorithm.o"
+ @echo "... SpuContactManifoldCollisionAlgorithm.i"
+ @echo "... SpuContactManifoldCollisionAlgorithm.s"
+ @echo "... SpuFakeDma.o"
+ @echo "... SpuFakeDma.i"
+ @echo "... SpuFakeDma.s"
+ @echo "... SpuGatheringCollisionDispatcher.o"
+ @echo "... SpuGatheringCollisionDispatcher.i"
+ @echo "... SpuGatheringCollisionDispatcher.s"
+ @echo "... SpuLibspe2Support.o"
+ @echo "... SpuLibspe2Support.i"
+ @echo "... SpuLibspe2Support.s"
+ @echo "... SpuNarrowPhaseCollisionTask/SpuCollisionShapes.o"
+ @echo "... SpuNarrowPhaseCollisionTask/SpuCollisionShapes.i"
+ @echo "... SpuNarrowPhaseCollisionTask/SpuCollisionShapes.s"
+ @echo "... SpuNarrowPhaseCollisionTask/SpuContactResult.o"
+ @echo "... SpuNarrowPhaseCollisionTask/SpuContactResult.i"
+ @echo "... SpuNarrowPhaseCollisionTask/SpuContactResult.s"
+ @echo "... SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.o"
+ @echo "... SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.i"
+ @echo "... SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.s"
+ @echo "... SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.o"
+ @echo "... SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.i"
+ @echo "... SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.s"
+ @echo "... SpuNarrowPhaseCollisionTask/boxBoxDistance.o"
+ @echo "... SpuNarrowPhaseCollisionTask/boxBoxDistance.i"
+ @echo "... SpuNarrowPhaseCollisionTask/boxBoxDistance.s"
+ @echo "... SpuSampleTaskProcess.o"
+ @echo "... SpuSampleTaskProcess.i"
+ @echo "... SpuSampleTaskProcess.s"
+ @echo "... Win32ThreadSupport.o"
+ @echo "... Win32ThreadSupport.i"
+ @echo "... Win32ThreadSupport.s"
+ @echo "... btGpu3DGridBroadphase.o"
+ @echo "... btGpu3DGridBroadphase.i"
+ @echo "... btGpu3DGridBroadphase.s"
+ @echo "... btParallelConstraintSolver.o"
+ @echo "... btParallelConstraintSolver.i"
+ @echo "... btParallelConstraintSolver.s"
+ @echo "... btThreadSupportInterface.o"
+ @echo "... btThreadSupportInterface.i"
+ @echo "... btThreadSupportInterface.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
--- /dev/null
+#ifndef BT_TYPE_DEFINITIONS_H
+#define BT_TYPE_DEFINITIONS_H
+
+///This file provides some platform/compiler checks for common definitions
+#include "LinearMath/btScalar.h"
+#include "LinearMath/btMinMax.h"
+
+#ifdef PFX_USE_FREE_VECTORMATH
+#include "physics_effects/base_level/base/pfx_vectormath_include.win32.h"
+typedef Vectormath::Aos::Vector3 vmVector3;
+typedef Vectormath::Aos::Quat vmQuat;
+typedef Vectormath::Aos::Matrix3 vmMatrix3;
+typedef Vectormath::Aos::Transform3 vmTransform3;
+typedef Vectormath::Aos::Point3 vmPoint3;
+#else
+#include "vectormath/vmInclude.h"
+#endif//PFX_USE_FREE_VECTORMATH
+
+
+
+
+
+#ifdef _WIN32
+
+typedef union
+{
+ unsigned int u;
+ void *p;
+} addr64;
+
+#define USE_WIN32_THREADING 1
+
+ #if defined(__MINGW32__) || defined(__CYGWIN__) || (defined (_MSC_VER) && _MSC_VER < 1300)
+ #else
+ #endif //__MINGW32__
+
+ typedef unsigned char uint8_t;
+#ifndef __PHYSICS_COMMON_H__
+#ifndef PFX_USE_FREE_VECTORMATH
+#ifndef __BT_SKIP_UINT64_H
+ typedef unsigned long int uint64_t;
+#endif //__BT_SKIP_UINT64_H
+#endif //PFX_USE_FREE_VECTORMATH
+ typedef unsigned int uint32_t;
+#endif //__PHYSICS_COMMON_H__
+ typedef unsigned short uint16_t;
+
+ #include <malloc.h>
+ #define memalign(alignment, size) malloc(size);
+
+#include <string.h> //memcpy
+
+
+
+ #include <stdio.h>
+ #define spu_printf printf
+
+#else
+ #include <stdint.h>
+ #include <stdlib.h>
+ #include <string.h> //for memcpy
+
+#if defined (__CELLOS_LV2__)
+ // Playstation 3 Cell SDK
+#include <spu_printf.h>
+
+#else
+ // posix system
+
+#define USE_PTHREADS (1)
+
+#ifdef USE_LIBSPE2
+#include <stdio.h>
+#define spu_printf printf
+#define DWORD unsigned int
+ typedef union
+ {
+ unsigned long long ull;
+ unsigned int ui[2];
+ void *p;
+ } addr64;
+#endif // USE_LIBSPE2
+
+#endif //__CELLOS_LV2__
+
+#endif
+
+#ifdef __SPU__
+#include <stdio.h>
+#define printf spu_printf
+#endif
+
+/* Included here because we need uint*_t typedefs */
+#include "PpuAddressSpace.h"
+
+#endif //BT_TYPE_DEFINITIONS_H
+
+
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include <stdio.h>
+#include "PosixThreadSupport.h"
+#ifdef USE_PTHREADS
+#include <errno.h>
+#include <unistd.h>
+
+#include "SpuCollisionTaskProcess.h"
+#include "SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h"
+
+#define checkPThreadFunction(returnValue) \
+ if(0 != returnValue) { \
+ printf("PThread problem at line %i in file %s: %i %d\n", __LINE__, __FILE__, returnValue, errno); \
+ }
+
+// The number of threads should be equal to the number of available cores
+// Todo: each worker should be linked to a single core, using SetThreadIdealProcessor.
+
+// PosixThreadSupport helps to initialize/shutdown libspe2, start/stop SPU tasks and communication
+// Setup and initialize SPU/CELL/Libspe2
+PosixThreadSupport::PosixThreadSupport(ThreadConstructionInfo& threadConstructionInfo)
+{
+ startThreads(threadConstructionInfo);
+}
+
+// cleanup/shutdown Libspe2
+PosixThreadSupport::~PosixThreadSupport()
+{
+ stopSPU();
+}
+
+#if (defined (__APPLE__))
+#define NAMED_SEMAPHORES
+#endif
+
+// this semaphore will signal, if and how many threads are finished with their work
+static sem_t* mainSemaphore=0;
+
+static sem_t* createSem(const char* baseName)
+{
+ static int semCount = 0;
+#ifdef NAMED_SEMAPHORES
+ /// Named semaphore begin
+ char name[32];
+ snprintf(name, 32, "/%s-%d-%4.4d", baseName, getpid(), semCount++);
+ sem_t* tempSem = sem_open(name, O_CREAT, 0600, 0);
+
+ if (tempSem != reinterpret_cast<sem_t *>(SEM_FAILED))
+ {
+// printf("Created \"%s\" Semaphore %p\n", name, tempSem);
+ }
+ else
+ {
+ //printf("Error creating Semaphore %d\n", errno);
+ exit(-1);
+ }
+ /// Named semaphore end
+#else
+ sem_t* tempSem = new sem_t;
+ checkPThreadFunction(sem_init(tempSem, 0, 0));
+#endif
+ return tempSem;
+}
+
+static void destroySem(sem_t* semaphore)
+{
+#ifdef NAMED_SEMAPHORES
+ checkPThreadFunction(sem_close(semaphore));
+#else
+ checkPThreadFunction(sem_destroy(semaphore));
+ delete semaphore;
+#endif
+}
+
+static void *threadFunction(void *argument)
+{
+
+ PosixThreadSupport::btSpuStatus* status = (PosixThreadSupport::btSpuStatus*)argument;
+
+
+ while (1)
+ {
+ checkPThreadFunction(sem_wait(status->startSemaphore));
+
+ void* userPtr = status->m_userPtr;
+
+ if (userPtr)
+ {
+ btAssert(status->m_status);
+ status->m_userThreadFunc(userPtr,status->m_lsMemory);
+ status->m_status = 2;
+ checkPThreadFunction(sem_post(mainSemaphore));
+ status->threadUsed++;
+ } else {
+ //exit Thread
+ status->m_status = 3;
+ checkPThreadFunction(sem_post(mainSemaphore));
+ printf("Thread with taskId %i exiting\n",status->m_taskId);
+ break;
+ }
+
+ }
+
+ printf("Thread TERMINATED\n");
+ return 0;
+
+}
+
+///send messages to SPUs
+void PosixThreadSupport::sendRequest(uint32_t uiCommand, ppu_address_t uiArgument0, uint32_t taskId)
+{
+ /// gMidphaseSPU.sendRequest(CMD_GATHER_AND_PROCESS_PAIRLIST, (uint32_t) &taskDesc);
+
+ ///we should spawn an SPU task here, and in 'waitForResponse' it should wait for response of the (one of) the first tasks that finished
+
+
+
+ switch (uiCommand)
+ {
+ case CMD_GATHER_AND_PROCESS_PAIRLIST:
+ {
+ btSpuStatus& spuStatus = m_activeSpuStatus[taskId];
+ btAssert(taskId >= 0);
+ btAssert(taskId < m_activeSpuStatus.size());
+
+ spuStatus.m_commandId = uiCommand;
+ spuStatus.m_status = 1;
+ spuStatus.m_userPtr = (void*)uiArgument0;
+
+ // fire event to start new task
+ checkPThreadFunction(sem_post(spuStatus.startSemaphore));
+ break;
+ }
+ default:
+ {
+ ///not implemented
+ btAssert(0);
+ }
+
+ };
+
+
+}
+
+
+///check for messages from SPUs
+void PosixThreadSupport::waitForResponse(unsigned int *puiArgument0, unsigned int *puiArgument1)
+{
+ ///We should wait for (one of) the first tasks to finish (or other SPU messages), and report its response
+
+ ///A possible response can be 'yes, SPU handled it', or 'no, please do a PPU fallback'
+
+
+ btAssert(m_activeSpuStatus.size());
+
+ // wait for any of the threads to finish
+ checkPThreadFunction(sem_wait(mainSemaphore));
+
+ // get at least one thread which has finished
+ size_t last = -1;
+
+ for(size_t t=0; t < size_t(m_activeSpuStatus.size()); ++t) {
+ if(2 == m_activeSpuStatus[t].m_status) {
+ last = t;
+ break;
+ }
+ }
+
+ btSpuStatus& spuStatus = m_activeSpuStatus[last];
+
+ btAssert(spuStatus.m_status > 1);
+ spuStatus.m_status = 0;
+
+ // need to find an active spu
+ btAssert(last >= 0);
+
+ *puiArgument0 = spuStatus.m_taskId;
+ *puiArgument1 = spuStatus.m_status;
+}
+
+
+
+void PosixThreadSupport::startThreads(ThreadConstructionInfo& threadConstructionInfo)
+{
+ printf("%s creating %i threads.\n", __FUNCTION__, threadConstructionInfo.m_numThreads);
+ m_activeSpuStatus.resize(threadConstructionInfo.m_numThreads);
+
+ mainSemaphore = createSem("main");
+ //checkPThreadFunction(sem_wait(mainSemaphore));
+
+ for (int i=0;i < threadConstructionInfo.m_numThreads;i++)
+ {
+ printf("starting thread %d\n",i);
+
+ btSpuStatus& spuStatus = m_activeSpuStatus[i];
+
+ spuStatus.startSemaphore = createSem("threadLocal");
+
+ checkPThreadFunction(pthread_create(&spuStatus.thread, NULL, &threadFunction, (void*)&spuStatus));
+
+ spuStatus.m_userPtr=0;
+
+ spuStatus.m_taskId = i;
+ spuStatus.m_commandId = 0;
+ spuStatus.m_status = 0;
+ spuStatus.m_lsMemory = threadConstructionInfo.m_lsMemoryFunc();
+ spuStatus.m_userThreadFunc = threadConstructionInfo.m_userThreadFunc;
+ spuStatus.threadUsed = 0;
+
+ printf("started thread %d \n",i);
+
+ }
+
+}
+
+void PosixThreadSupport::startSPU()
+{
+}
+
+
+///tell the task scheduler we are done with the SPU tasks
+void PosixThreadSupport::stopSPU()
+{
+ for(size_t t=0; t < size_t(m_activeSpuStatus.size()); ++t)
+ {
+ btSpuStatus& spuStatus = m_activeSpuStatus[t];
+ printf("%s: Thread %i used: %ld\n", __FUNCTION__, int(t), spuStatus.threadUsed);
+
+ spuStatus.m_userPtr = 0;
+ checkPThreadFunction(sem_post(spuStatus.startSemaphore));
+ checkPThreadFunction(sem_wait(mainSemaphore));
+
+ printf("destroy semaphore\n");
+ destroySem(spuStatus.startSemaphore);
+ printf("semaphore destroyed\n");
+ checkPThreadFunction(pthread_join(spuStatus.thread,0));
+
+ }
+ printf("destroy main semaphore\n");
+ destroySem(mainSemaphore);
+ printf("main semaphore destroyed\n");
+ m_activeSpuStatus.clear();
+}
+
+class PosixCriticalSection : public btCriticalSection
+{
+ pthread_mutex_t m_mutex;
+
+public:
+ PosixCriticalSection()
+ {
+ pthread_mutex_init(&m_mutex, NULL);
+ }
+ virtual ~PosixCriticalSection()
+ {
+ pthread_mutex_destroy(&m_mutex);
+ }
+
+ ATTRIBUTE_ALIGNED16(unsigned int mCommonBuff[32]);
+
+ virtual unsigned int getSharedParam(int i)
+ {
+ return mCommonBuff[i];
+ }
+ virtual void setSharedParam(int i,unsigned int p)
+ {
+ mCommonBuff[i] = p;
+ }
+
+ virtual void lock()
+ {
+ pthread_mutex_lock(&m_mutex);
+ }
+ virtual void unlock()
+ {
+ pthread_mutex_unlock(&m_mutex);
+ }
+};
+
+
+#if defined(_POSIX_BARRIERS) && (_POSIX_BARRIERS - 20012L) >= 0
+/* OK to use barriers on this platform */
+class PosixBarrier : public btBarrier
+{
+ pthread_barrier_t m_barr;
+ int m_numThreads;
+public:
+ PosixBarrier()
+ :m_numThreads(0) { }
+ virtual ~PosixBarrier() {
+ pthread_barrier_destroy(&m_barr);
+ }
+
+ virtual void sync()
+ {
+ int rc = pthread_barrier_wait(&m_barr);
+ if(rc != 0 && rc != PTHREAD_BARRIER_SERIAL_THREAD)
+ {
+ printf("Could not wait on barrier\n");
+ exit(-1);
+ }
+ }
+ virtual void setMaxCount(int numThreads)
+ {
+ int result = pthread_barrier_init(&m_barr, NULL, numThreads);
+ m_numThreads = numThreads;
+ btAssert(result==0);
+ }
+ virtual int getMaxCount()
+ {
+ return m_numThreads;
+ }
+};
+#else
+/* Not OK to use barriers on this platform - insert alternate code here */
+class PosixBarrier : public btBarrier
+{
+ pthread_mutex_t m_mutex;
+ pthread_cond_t m_cond;
+
+ int m_numThreads;
+ int m_called;
+
+public:
+ PosixBarrier()
+ :m_numThreads(0)
+ {
+ }
+ virtual ~PosixBarrier()
+ {
+ if (m_numThreads>0)
+ {
+ pthread_mutex_destroy(&m_mutex);
+ pthread_cond_destroy(&m_cond);
+ }
+ }
+
+ virtual void sync()
+ {
+ pthread_mutex_lock(&m_mutex);
+ m_called++;
+ if (m_called == m_numThreads) {
+ m_called = 0;
+ pthread_cond_broadcast(&m_cond);
+ } else {
+ pthread_cond_wait(&m_cond,&m_mutex);
+ }
+ pthread_mutex_unlock(&m_mutex);
+
+ }
+ virtual void setMaxCount(int numThreads)
+ {
+ if (m_numThreads>0)
+ {
+ pthread_mutex_destroy(&m_mutex);
+ pthread_cond_destroy(&m_cond);
+ }
+ m_called = 0;
+ pthread_mutex_init(&m_mutex,NULL);
+ pthread_cond_init(&m_cond,NULL);
+ m_numThreads = numThreads;
+ }
+ virtual int getMaxCount()
+ {
+ return m_numThreads;
+ }
+};
+
+#endif//_POSIX_BARRIERS
+
+
+
+btBarrier* PosixThreadSupport::createBarrier()
+{
+ PosixBarrier* barrier = new PosixBarrier();
+ barrier->setMaxCount(getNumTasks());
+ return barrier;
+}
+
+btCriticalSection* PosixThreadSupport::createCriticalSection()
+{
+ return new PosixCriticalSection();
+}
+
+void PosixThreadSupport::deleteBarrier(btBarrier* barrier)
+{
+ delete barrier;
+}
+
+void PosixThreadSupport::deleteCriticalSection(btCriticalSection* cs)
+{
+ delete cs;
+}
+#endif // USE_PTHREADS
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef BT_POSIX_THREAD_SUPPORT_H
+#define BT_POSIX_THREAD_SUPPORT_H
+
+
+#include "LinearMath/btScalar.h"
+#include "PlatformDefinitions.h"
+
+#ifdef USE_PTHREADS //platform specifc defines are defined in PlatformDefinitions.h
+
+#ifndef _XOPEN_SOURCE
+#define _XOPEN_SOURCE 600 //for definition of pthread_barrier_t, see http://pages.cs.wisc.edu/~travitch/pthreads_primer.html
+#endif //_XOPEN_SOURCE
+#include <pthread.h>
+#include <semaphore.h>
+
+
+
+#include "LinearMath/btAlignedObjectArray.h"
+
+#include "btThreadSupportInterface.h"
+
+
+typedef void (*PosixThreadFunc)(void* userPtr,void* lsMemory);
+typedef void* (*PosixlsMemorySetupFunc)();
+
+// PosixThreadSupport helps to initialize/shutdown libspe2, start/stop SPU tasks and communication
+class PosixThreadSupport : public btThreadSupportInterface
+{
+public:
+ typedef enum sStatus {
+ STATUS_BUSY,
+ STATUS_READY,
+ STATUS_FINISHED
+ } Status;
+
+ // placeholder, until libspe2 support is there
+ struct btSpuStatus
+ {
+ uint32_t m_taskId;
+ uint32_t m_commandId;
+ uint32_t m_status;
+
+ PosixThreadFunc m_userThreadFunc;
+ void* m_userPtr; //for taskDesc etc
+ void* m_lsMemory; //initialized using PosixLocalStoreMemorySetupFunc
+
+ pthread_t thread;
+ sem_t* startSemaphore;
+
+ unsigned long threadUsed;
+ };
+private:
+
+ btAlignedObjectArray<btSpuStatus> m_activeSpuStatus;
+public:
+ ///Setup and initialize SPU/CELL/Libspe2
+
+
+
+ struct ThreadConstructionInfo
+ {
+ ThreadConstructionInfo(const char* uniqueName,
+ PosixThreadFunc userThreadFunc,
+ PosixlsMemorySetupFunc lsMemoryFunc,
+ int numThreads=1,
+ int threadStackSize=65535
+ )
+ :m_uniqueName(uniqueName),
+ m_userThreadFunc(userThreadFunc),
+ m_lsMemoryFunc(lsMemoryFunc),
+ m_numThreads(numThreads),
+ m_threadStackSize(threadStackSize)
+ {
+
+ }
+
+ const char* m_uniqueName;
+ PosixThreadFunc m_userThreadFunc;
+ PosixlsMemorySetupFunc m_lsMemoryFunc;
+ int m_numThreads;
+ int m_threadStackSize;
+
+ };
+
+ PosixThreadSupport(ThreadConstructionInfo& threadConstructionInfo);
+
+///cleanup/shutdown Libspe2
+ virtual ~PosixThreadSupport();
+
+ void startThreads(ThreadConstructionInfo& threadInfo);
+
+
+///send messages to SPUs
+ virtual void sendRequest(uint32_t uiCommand, ppu_address_t uiArgument0, uint32_t uiArgument1);
+
+///check for messages from SPUs
+ virtual void waitForResponse(unsigned int *puiArgument0, unsigned int *puiArgument1);
+
+///start the spus (can be called at the beginning of each frame, to make sure that the right SPU program is loaded)
+ virtual void startSPU();
+
+///tell the task scheduler we are done with the SPU tasks
+ virtual void stopSPU();
+
+ virtual void setNumTasks(int numTasks) {}
+
+ virtual int getNumTasks() const
+ {
+ return m_activeSpuStatus.size();
+ }
+
+ virtual btBarrier* createBarrier();
+
+ virtual btCriticalSection* createCriticalSection();
+
+ virtual void deleteBarrier(btBarrier* barrier);
+
+ virtual void deleteCriticalSection(btCriticalSection* criticalSection);
+
+
+ virtual void* getThreadLocalMemory(int taskId)
+ {
+ return m_activeSpuStatus[taskId].m_lsMemory;
+ }
+
+};
+
+#endif // USE_PTHREADS
+
+#endif // BT_POSIX_THREAD_SUPPORT_H
+
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2010 Erwin Coumans http://bulletphysics.org
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+
+#ifndef BT_PPU_ADDRESS_SPACE_H
+#define BT_PPU_ADDRESS_SPACE_H
+
+
+#ifdef _WIN32
+//stop those casting warnings until we have a better solution for ppu_address_t / void* / uint64 conversions
+#pragma warning (disable: 4311)
+#pragma warning (disable: 4312)
+#endif //_WIN32
+
+
+#if defined(_WIN64)
+ typedef unsigned __int64 ppu_address_t;
+#elif defined(__LP64__) || defined(__x86_64__)
+ typedef uint64_t ppu_address_t;
+#else
+ typedef uint32_t ppu_address_t;
+#endif //defined(_WIN64)
+
+#endif //BT_PPU_ADDRESS_SPACE_H
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "SequentialThreadSupport.h"
+
+
+#include "SpuCollisionTaskProcess.h"
+#include "SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h"
+
+SequentialThreadSupport::SequentialThreadSupport(SequentialThreadConstructionInfo& threadConstructionInfo)
+{
+ startThreads(threadConstructionInfo);
+}
+
+///cleanup/shutdown Libspe2
+SequentialThreadSupport::~SequentialThreadSupport()
+{
+ stopSPU();
+}
+
+#include <stdio.h>
+
+///send messages to SPUs
+void SequentialThreadSupport::sendRequest(uint32_t uiCommand, ppu_address_t uiArgument0, uint32_t taskId)
+{
+ switch (uiCommand)
+ {
+ case CMD_GATHER_AND_PROCESS_PAIRLIST:
+ {
+ btSpuStatus& spuStatus = m_activeSpuStatus[0];
+ spuStatus.m_userPtr=(void*)uiArgument0;
+ spuStatus.m_userThreadFunc(spuStatus.m_userPtr,spuStatus.m_lsMemory);
+ }
+ break;
+ default:
+ {
+ ///not implemented
+ btAssert(0 && "Not implemented");
+ }
+
+ };
+
+
+}
+
+///check for messages from SPUs
+void SequentialThreadSupport::waitForResponse(unsigned int *puiArgument0, unsigned int *puiArgument1)
+{
+ btAssert(m_activeSpuStatus.size());
+ btSpuStatus& spuStatus = m_activeSpuStatus[0];
+ *puiArgument0 = spuStatus.m_taskId;
+ *puiArgument1 = spuStatus.m_status;
+}
+
+void SequentialThreadSupport::startThreads(SequentialThreadConstructionInfo& threadConstructionInfo)
+{
+ m_activeSpuStatus.resize(1);
+ printf("STS: Not starting any threads\n");
+ btSpuStatus& spuStatus = m_activeSpuStatus[0];
+ spuStatus.m_userPtr = 0;
+ spuStatus.m_taskId = 0;
+ spuStatus.m_commandId = 0;
+ spuStatus.m_status = 0;
+ spuStatus.m_lsMemory = threadConstructionInfo.m_lsMemoryFunc();
+ spuStatus.m_userThreadFunc = threadConstructionInfo.m_userThreadFunc;
+ printf("STS: Created local store at %p for task %s\n", spuStatus.m_lsMemory, threadConstructionInfo.m_uniqueName);
+}
+
+void SequentialThreadSupport::startSPU()
+{
+}
+
+void SequentialThreadSupport::stopSPU()
+{
+ m_activeSpuStatus.clear();
+}
+
+void SequentialThreadSupport::setNumTasks(int numTasks)
+{
+ printf("SequentialThreadSupport::setNumTasks(%d) is not implemented and has no effect\n",numTasks);
+}
+
+
+
+
+class btDummyBarrier : public btBarrier
+{
+private:
+
+public:
+ btDummyBarrier()
+ {
+ }
+
+ virtual ~btDummyBarrier()
+ {
+ }
+
+ void sync()
+ {
+ }
+
+ virtual void setMaxCount(int n) {}
+ virtual int getMaxCount() {return 1;}
+};
+
+class btDummyCriticalSection : public btCriticalSection
+{
+
+public:
+ btDummyCriticalSection()
+ {
+ }
+
+ virtual ~btDummyCriticalSection()
+ {
+ }
+
+ unsigned int getSharedParam(int i)
+ {
+ btAssert(i>=0&&i<31);
+ return mCommonBuff[i+1];
+ }
+
+ void setSharedParam(int i,unsigned int p)
+ {
+ btAssert(i>=0&&i<31);
+ mCommonBuff[i+1] = p;
+ }
+
+ void lock()
+ {
+ mCommonBuff[0] = 1;
+ }
+
+ void unlock()
+ {
+ mCommonBuff[0] = 0;
+ }
+};
+
+
+
+
+btBarrier* SequentialThreadSupport::createBarrier()
+{
+ return new btDummyBarrier();
+}
+
+btCriticalSection* SequentialThreadSupport::createCriticalSection()
+{
+ return new btDummyCriticalSection();
+
+}
+
+void SequentialThreadSupport::deleteBarrier(btBarrier* barrier)
+{
+ delete barrier;
+}
+
+void SequentialThreadSupport::deleteCriticalSection(btCriticalSection* criticalSection)
+{
+ delete criticalSection;
+}
+
+
+
+
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "LinearMath/btScalar.h"
+#include "PlatformDefinitions.h"
+
+
+#ifndef BT_SEQUENTIAL_THREAD_SUPPORT_H
+#define BT_SEQUENTIAL_THREAD_SUPPORT_H
+
+#include "LinearMath/btAlignedObjectArray.h"
+
+#include "btThreadSupportInterface.h"
+
+typedef void (*SequentialThreadFunc)(void* userPtr,void* lsMemory);
+typedef void* (*SequentiallsMemorySetupFunc)();
+
+
+
+///The SequentialThreadSupport is a portable non-parallel implementation of the btThreadSupportInterface
+///This is useful for debugging and porting SPU Tasks to other platforms.
+class SequentialThreadSupport : public btThreadSupportInterface
+{
+public:
+ struct btSpuStatus
+ {
+ uint32_t m_taskId;
+ uint32_t m_commandId;
+ uint32_t m_status;
+
+ SequentialThreadFunc m_userThreadFunc;
+
+ void* m_userPtr; //for taskDesc etc
+ void* m_lsMemory; //initialized using SequentiallsMemorySetupFunc
+ };
+private:
+ btAlignedObjectArray<btSpuStatus> m_activeSpuStatus;
+ btAlignedObjectArray<void*> m_completeHandles;
+public:
+ struct SequentialThreadConstructionInfo
+ {
+ SequentialThreadConstructionInfo (const char* uniqueName,
+ SequentialThreadFunc userThreadFunc,
+ SequentiallsMemorySetupFunc lsMemoryFunc
+ )
+ :m_uniqueName(uniqueName),
+ m_userThreadFunc(userThreadFunc),
+ m_lsMemoryFunc(lsMemoryFunc)
+ {
+
+ }
+
+ const char* m_uniqueName;
+ SequentialThreadFunc m_userThreadFunc;
+ SequentiallsMemorySetupFunc m_lsMemoryFunc;
+ };
+
+ SequentialThreadSupport(SequentialThreadConstructionInfo& threadConstructionInfo);
+ virtual ~SequentialThreadSupport();
+ void startThreads(SequentialThreadConstructionInfo& threadInfo);
+///send messages to SPUs
+ virtual void sendRequest(uint32_t uiCommand, ppu_address_t uiArgument0, uint32_t uiArgument1);
+///check for messages from SPUs
+ virtual void waitForResponse(unsigned int *puiArgument0, unsigned int *puiArgument1);
+///start the spus (can be called at the beginning of each frame, to make sure that the right SPU program is loaded)
+ virtual void startSPU();
+///tell the task scheduler we are done with the SPU tasks
+ virtual void stopSPU();
+
+ virtual void setNumTasks(int numTasks);
+
+ virtual int getNumTasks() const
+ {
+ return 1;
+ }
+ virtual btBarrier* createBarrier();
+
+ virtual btCriticalSection* createCriticalSection();
+
+ virtual void deleteBarrier(btBarrier* barrier);
+
+ virtual void deleteCriticalSection(btCriticalSection* criticalSection);
+
+
+};
+
+#endif //BT_SEQUENTIAL_THREAD_SUPPORT_H
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "SpuCollisionObjectWrapper.h"
+#include "BulletCollision/CollisionShapes/btCollisionShape.h"
+
+SpuCollisionObjectWrapper::SpuCollisionObjectWrapper ()
+{
+}
+
+#ifndef __SPU__
+SpuCollisionObjectWrapper::SpuCollisionObjectWrapper (const btCollisionObject* collisionObject)
+{
+ m_shapeType = collisionObject->getCollisionShape()->getShapeType ();
+ m_collisionObjectPtr = (ppu_address_t)collisionObject;
+ m_margin = collisionObject->getCollisionShape()->getMargin ();
+}
+#endif
+
+int
+SpuCollisionObjectWrapper::getShapeType () const
+{
+ return m_shapeType;
+}
+
+float
+SpuCollisionObjectWrapper::getCollisionMargin () const
+{
+ return m_margin;
+}
+
+ppu_address_t
+SpuCollisionObjectWrapper::getCollisionObjectPtr () const
+{
+ return m_collisionObjectPtr;
+}
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef BT_SPU_COLLISION_OBJECT_WRAPPER_H
+#define BT_SPU_COLLISION_OBJECT_WRAPPER_H
+
+#include "PlatformDefinitions.h"
+#include "BulletCollision/CollisionDispatch/btCollisionObject.h"
+
+ATTRIBUTE_ALIGNED16(class) SpuCollisionObjectWrapper
+{
+protected:
+ int m_shapeType;
+ float m_margin;
+ ppu_address_t m_collisionObjectPtr;
+
+public:
+ SpuCollisionObjectWrapper ();
+
+ SpuCollisionObjectWrapper (const btCollisionObject* collisionObject);
+
+ int getShapeType () const;
+ float getCollisionMargin () const;
+ ppu_address_t getCollisionObjectPtr () const;
+};
+
+
+#endif //BT_SPU_COLLISION_OBJECT_WRAPPER_H
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+
+//#define DEBUG_SPU_TASK_SCHEDULING 1
+
+
+//class OptimizedBvhNode;
+
+#include "SpuCollisionTaskProcess.h"
+
+
+
+
+void SpuCollisionTaskProcess::setNumTasks(int maxNumTasks)
+{
+ if (int(m_maxNumOutstandingTasks) != maxNumTasks)
+ {
+ m_maxNumOutstandingTasks = maxNumTasks;
+ m_taskBusy.resize(m_maxNumOutstandingTasks);
+ m_spuGatherTaskDesc.resize(m_maxNumOutstandingTasks);
+
+ for (int i = 0; i < m_taskBusy.size(); i++)
+ {
+ m_taskBusy[i] = false;
+ }
+
+ ///re-allocate task memory buffers
+ if (m_workUnitTaskBuffers != 0)
+ {
+ btAlignedFree(m_workUnitTaskBuffers);
+ }
+
+ m_workUnitTaskBuffers = (unsigned char *)btAlignedAlloc(MIDPHASE_WORKUNIT_TASK_SIZE*m_maxNumOutstandingTasks, 128);
+ }
+
+}
+
+
+
+SpuCollisionTaskProcess::SpuCollisionTaskProcess(class btThreadSupportInterface* threadInterface, unsigned int maxNumOutstandingTasks)
+:m_threadInterface(threadInterface),
+m_maxNumOutstandingTasks(0)
+{
+ m_workUnitTaskBuffers = (unsigned char *)0;
+ setNumTasks(maxNumOutstandingTasks);
+ m_numBusyTasks = 0;
+ m_currentTask = 0;
+ m_currentPage = 0;
+ m_currentPageEntry = 0;
+
+#ifdef DEBUG_SpuCollisionTaskProcess
+ m_initialized = false;
+#endif
+
+ m_threadInterface->startSPU();
+
+ //printf("sizeof vec_float4: %d\n", sizeof(vec_float4));
+ printf("sizeof SpuGatherAndProcessWorkUnitInput: %d\n", int(sizeof(SpuGatherAndProcessWorkUnitInput)));
+
+}
+
+SpuCollisionTaskProcess::~SpuCollisionTaskProcess()
+{
+
+ if (m_workUnitTaskBuffers != 0)
+ {
+ btAlignedFree(m_workUnitTaskBuffers);
+ m_workUnitTaskBuffers = 0;
+ }
+
+
+
+ m_threadInterface->stopSPU();
+
+}
+
+
+
+void SpuCollisionTaskProcess::initialize2(bool useEpa)
+{
+
+#ifdef DEBUG_SPU_TASK_SCHEDULING
+ printf("SpuCollisionTaskProcess::initialize()\n");
+#endif //DEBUG_SPU_TASK_SCHEDULING
+
+ for (int i = 0; i < int (m_maxNumOutstandingTasks); i++)
+ {
+ m_taskBusy[i] = false;
+ }
+ m_numBusyTasks = 0;
+ m_currentTask = 0;
+ m_currentPage = 0;
+ m_currentPageEntry = 0;
+ m_useEpa = useEpa;
+
+#ifdef DEBUG_SpuCollisionTaskProcess
+ m_initialized = true;
+ btAssert(MIDPHASE_NUM_WORKUNITS_PER_TASK*sizeof(SpuGatherAndProcessWorkUnitInput) <= MIDPHASE_WORKUNIT_TASK_SIZE);
+#endif
+}
+
+
+void SpuCollisionTaskProcess::issueTask2()
+{
+
+#ifdef DEBUG_SPU_TASK_SCHEDULING
+ printf("SpuCollisionTaskProcess::issueTask (m_currentTask= %d\n)", m_currentTask);
+#endif //DEBUG_SPU_TASK_SCHEDULING
+
+ m_taskBusy[m_currentTask] = true;
+ m_numBusyTasks++;
+
+
+ SpuGatherAndProcessPairsTaskDesc& taskDesc = m_spuGatherTaskDesc[m_currentTask];
+ taskDesc.m_useEpa = m_useEpa;
+
+ {
+ // send task description in event message
+ // no error checking here...
+ // but, currently, event queue can be no larger than NUM_WORKUNIT_TASKS.
+
+ taskDesc.m_inPairPtr = reinterpret_cast<uint64_t>(MIDPHASE_TASK_PTR(m_currentTask));
+
+ taskDesc.taskId = m_currentTask;
+ taskDesc.numPages = m_currentPage+1;
+ taskDesc.numOnLastPage = m_currentPageEntry;
+ }
+
+
+
+ m_threadInterface->sendRequest(CMD_GATHER_AND_PROCESS_PAIRLIST, (ppu_address_t) &taskDesc,m_currentTask);
+
+ // if all tasks busy, wait for spu event to clear the task.
+
+
+ if (m_numBusyTasks >= m_maxNumOutstandingTasks)
+ {
+ unsigned int taskId;
+ unsigned int outputSize;
+
+
+ for (int i=0;i<int (m_maxNumOutstandingTasks);i++)
+ {
+ if (m_taskBusy[i])
+ {
+ taskId = i;
+ break;
+ }
+ }
+
+ btAssert(taskId>=0);
+
+
+ m_threadInterface->waitForResponse(&taskId, &outputSize);
+
+// printf("issueTask taskId %d completed, numBusy=%d\n",taskId,m_numBusyTasks);
+
+ //printf("PPU: after issue, received event: %u %d\n", taskId, outputSize);
+
+ //postProcess(taskId, outputSize);
+
+ m_taskBusy[taskId] = false;
+
+ m_numBusyTasks--;
+ }
+
+}
+
+void SpuCollisionTaskProcess::addWorkToTask(void* pairArrayPtr,int startIndex,int endIndex)
+{
+#ifdef DEBUG_SPU_TASK_SCHEDULING
+ printf("#");
+#endif //DEBUG_SPU_TASK_SCHEDULING
+
+#ifdef DEBUG_SpuCollisionTaskProcess
+ btAssert(m_initialized);
+ btAssert(m_workUnitTaskBuffers);
+
+#endif
+
+ bool batch = true;
+
+ if (batch)
+ {
+ if (m_currentPageEntry == MIDPHASE_NUM_WORKUNITS_PER_PAGE)
+ {
+ if (m_currentPage == MIDPHASE_NUM_WORKUNIT_PAGES-1)
+ {
+ // task buffer is full, issue current task.
+ // if all task buffers busy, this waits until SPU is done.
+ issueTask2();
+
+ // find new task buffer
+ for (unsigned int i = 0; i < m_maxNumOutstandingTasks; i++)
+ {
+ if (!m_taskBusy[i])
+ {
+ m_currentTask = i;
+ //init the task data
+
+ break;
+ }
+ }
+
+ m_currentPage = 0;
+ }
+ else
+ {
+ m_currentPage++;
+ }
+
+ m_currentPageEntry = 0;
+ }
+ }
+
+ {
+
+
+
+ SpuGatherAndProcessWorkUnitInput &wuInput =
+ *(reinterpret_cast<SpuGatherAndProcessWorkUnitInput*>
+ (MIDPHASE_ENTRY_PTR(m_currentTask, m_currentPage, m_currentPageEntry)));
+
+ wuInput.m_pairArrayPtr = reinterpret_cast<uint64_t>(pairArrayPtr);
+ wuInput.m_startIndex = startIndex;
+ wuInput.m_endIndex = endIndex;
+
+
+
+ m_currentPageEntry++;
+
+ if (!batch)
+ {
+ issueTask2();
+
+ // find new task buffer
+ for (unsigned int i = 0; i < m_maxNumOutstandingTasks; i++)
+ {
+ if (!m_taskBusy[i])
+ {
+ m_currentTask = i;
+ //init the task data
+
+ break;
+ }
+ }
+
+ m_currentPage = 0;
+ m_currentPageEntry =0;
+ }
+ }
+}
+
+
+void
+SpuCollisionTaskProcess::flush2()
+{
+#ifdef DEBUG_SPU_TASK_SCHEDULING
+ printf("\nSpuCollisionTaskProcess::flush()\n");
+#endif //DEBUG_SPU_TASK_SCHEDULING
+
+ // if there's a partially filled task buffer, submit that task
+ if (m_currentPage > 0 || m_currentPageEntry > 0)
+ {
+ issueTask2();
+ }
+
+
+ // all tasks are issued, wait for all tasks to be complete
+ while(m_numBusyTasks > 0)
+ {
+ // Consolidating SPU code
+ unsigned int taskId=-1;
+ unsigned int outputSize;
+
+ for (int i=0;i<int (m_maxNumOutstandingTasks);i++)
+ {
+ if (m_taskBusy[i])
+ {
+ taskId = i;
+ break;
+ }
+ }
+
+ btAssert(taskId>=0);
+
+
+ {
+
+ // SPURS support.
+ m_threadInterface->waitForResponse(&taskId, &outputSize);
+ }
+// printf("flush2 taskId %d completed, numBusy =%d \n",taskId,m_numBusyTasks);
+ //printf("PPU: flushing, received event: %u %d\n", taskId, outputSize);
+
+ //postProcess(taskId, outputSize);
+
+ m_taskBusy[taskId] = false;
+
+ m_numBusyTasks--;
+ }
+
+
+}
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef BT_SPU_COLLISION_TASK_PROCESS_H
+#define BT_SPU_COLLISION_TASK_PROCESS_H
+
+#include <assert.h>
+
+#include "LinearMath/btScalar.h"
+
+#include "PlatformDefinitions.h"
+#include "LinearMath/btAlignedObjectArray.h"
+#include "SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h" // for definitions processCollisionTask and createCollisionLocalStoreMemory
+
+#include "btThreadSupportInterface.h"
+
+
+//#include "SPUAssert.h"
+#include <string.h>
+
+
+#include "BulletCollision/CollisionDispatch/btCollisionObject.h"
+#include "BulletCollision/CollisionShapes/btCollisionShape.h"
+#include "BulletCollision/CollisionShapes/btConvexShape.h"
+
+#include "LinearMath/btAlignedAllocator.h"
+
+#include <stdio.h>
+
+
+#define DEBUG_SpuCollisionTaskProcess 1
+
+
+#define CMD_GATHER_AND_PROCESS_PAIRLIST 1
+
+class btCollisionObject;
+class btPersistentManifold;
+class btDispatcher;
+
+
+/////Task Description for SPU collision detection
+//struct SpuGatherAndProcessPairsTaskDesc
+//{
+// uint64_t inPtr;//m_pairArrayPtr;
+// //mutex variable
+// uint32_t m_someMutexVariableInMainMemory;
+//
+// uint64_t m_dispatcher;
+//
+// uint32_t numOnLastPage;
+//
+// uint16_t numPages;
+// uint16_t taskId;
+//
+// struct CollisionTask_LocalStoreMemory* m_lsMemory;
+//}
+//
+//#if defined(__CELLOS_LV2__) || defined(USE_LIBSPE2)
+//__attribute__ ((aligned (16)))
+//#endif
+//;
+
+
+///MidphaseWorkUnitInput stores individual primitive versus mesh collision detection input, to be processed by the SPU.
+ATTRIBUTE_ALIGNED16(struct) SpuGatherAndProcessWorkUnitInput
+{
+ uint64_t m_pairArrayPtr;
+ int m_startIndex;
+ int m_endIndex;
+};
+
+
+
+
+/// SpuCollisionTaskProcess handles SPU processing of collision pairs.
+/// Maintains a set of task buffers.
+/// When the task is full, the task is issued for SPUs to process. Contact output goes into btPersistentManifold
+/// associated with each task.
+/// When PPU issues a task, it will look for completed task buffers
+/// PPU will do postprocessing, dependent on workunit output (not likely)
+class SpuCollisionTaskProcess
+{
+
+ unsigned char *m_workUnitTaskBuffers;
+
+
+ // track task buffers that are being used, and total busy tasks
+ btAlignedObjectArray<bool> m_taskBusy;
+ btAlignedObjectArray<SpuGatherAndProcessPairsTaskDesc> m_spuGatherTaskDesc;
+
+ class btThreadSupportInterface* m_threadInterface;
+
+ unsigned int m_maxNumOutstandingTasks;
+
+ unsigned int m_numBusyTasks;
+
+ // the current task and the current entry to insert a new work unit
+ unsigned int m_currentTask;
+ unsigned int m_currentPage;
+ unsigned int m_currentPageEntry;
+
+ bool m_useEpa;
+
+#ifdef DEBUG_SpuCollisionTaskProcess
+ bool m_initialized;
+#endif
+ void issueTask2();
+ //void postProcess(unsigned int taskId, int outputSize);
+
+public:
+ SpuCollisionTaskProcess(btThreadSupportInterface* threadInterface, unsigned int maxNumOutstandingTasks);
+
+ ~SpuCollisionTaskProcess();
+
+ ///call initialize in the beginning of the frame, before addCollisionPairToTask
+ void initialize2(bool useEpa = false);
+
+ ///batch up additional work to a current task for SPU processing. When batch is full, it issues the task.
+ void addWorkToTask(void* pairArrayPtr,int startIndex,int endIndex);
+
+ ///call flush to submit potential outstanding work to SPUs and wait for all involved SPUs to be finished
+ void flush2();
+
+ /// set the maximum number of SPU tasks allocated
+ void setNumTasks(int maxNumTasks);
+
+ int getNumTasks() const
+ {
+ return m_maxNumOutstandingTasks;
+ }
+};
+
+
+
+#define MIDPHASE_TASK_PTR(task) (&m_workUnitTaskBuffers[0] + MIDPHASE_WORKUNIT_TASK_SIZE*task)
+#define MIDPHASE_ENTRY_PTR(task,page,entry) (MIDPHASE_TASK_PTR(task) + MIDPHASE_WORKUNIT_PAGE_SIZE*page + sizeof(SpuGatherAndProcessWorkUnitInput)*entry)
+#define MIDPHASE_OUTPUT_PTR(task) (&m_contactOutputBuffers[0] + MIDPHASE_MAX_CONTACT_BUFFER_SIZE*task)
+#define MIDPHASE_TREENODES_PTR(task) (&m_complexShapeBuffers[0] + MIDPHASE_COMPLEX_SHAPE_BUFFER_SIZE*task)
+
+
+#define MIDPHASE_WORKUNIT_PAGE_SIZE (16)
+//#define MIDPHASE_WORKUNIT_PAGE_SIZE (128)
+
+#define MIDPHASE_NUM_WORKUNIT_PAGES 1
+#define MIDPHASE_WORKUNIT_TASK_SIZE (MIDPHASE_WORKUNIT_PAGE_SIZE*MIDPHASE_NUM_WORKUNIT_PAGES)
+#define MIDPHASE_NUM_WORKUNITS_PER_PAGE (MIDPHASE_WORKUNIT_PAGE_SIZE / sizeof(SpuGatherAndProcessWorkUnitInput))
+#define MIDPHASE_NUM_WORKUNITS_PER_TASK (MIDPHASE_NUM_WORKUNITS_PER_PAGE*MIDPHASE_NUM_WORKUNIT_PAGES)
+
+
+#endif // BT_SPU_COLLISION_TASK_PROCESS_H
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "SpuContactManifoldCollisionAlgorithm.h"
+#include "BulletCollision/CollisionDispatch/btCollisionDispatcher.h"
+#include "BulletCollision/CollisionDispatch/btCollisionObject.h"
+#include "BulletCollision/CollisionShapes/btCollisionShape.h"
+#include "BulletCollision/CollisionShapes/btPolyhedralConvexShape.h"
+
+
+
+
+void SpuContactManifoldCollisionAlgorithm::processCollision (const btCollisionObjectWrapper* body0Wrap,const btCollisionObjectWrapper* body1Wrap,const btDispatcherInfo& dispatchInfo,btManifoldResult* resultOut)
+{
+ btAssert(0);
+}
+
+btScalar SpuContactManifoldCollisionAlgorithm::calculateTimeOfImpact(btCollisionObject* body0,btCollisionObject* body1,const btDispatcherInfo& dispatchInfo,btManifoldResult* resultOut)
+{
+ btAssert(0);
+ return 1.f;
+}
+
+#ifndef __SPU__
+SpuContactManifoldCollisionAlgorithm::SpuContactManifoldCollisionAlgorithm(const btCollisionAlgorithmConstructionInfo& ci,const btCollisionObject* body0,const btCollisionObject* body1)
+:btCollisionAlgorithm(ci)
+#ifdef USE_SEPDISTANCE_UTIL
+,m_sepDistance(body0->getCollisionShape()->getAngularMotionDisc(),body1->getCollisionShape()->getAngularMotionDisc())
+#endif //USE_SEPDISTANCE_UTIL
+{
+ m_manifoldPtr = m_dispatcher->getNewManifold(body0,body1);
+ m_shapeType0 = body0->getCollisionShape()->getShapeType();
+ m_shapeType1 = body1->getCollisionShape()->getShapeType();
+ m_collisionMargin0 = body0->getCollisionShape()->getMargin();
+ m_collisionMargin1 = body1->getCollisionShape()->getMargin();
+ m_collisionObject0 = body0;
+ m_collisionObject1 = body1;
+
+ if (body0->getCollisionShape()->isPolyhedral())
+ {
+ btPolyhedralConvexShape* convex0 = (btPolyhedralConvexShape*)body0->getCollisionShape();
+ m_shapeDimensions0 = convex0->getImplicitShapeDimensions();
+ }
+ if (body1->getCollisionShape()->isPolyhedral())
+ {
+ btPolyhedralConvexShape* convex1 = (btPolyhedralConvexShape*)body1->getCollisionShape();
+ m_shapeDimensions1 = convex1->getImplicitShapeDimensions();
+ }
+}
+#endif //__SPU__
+
+
+SpuContactManifoldCollisionAlgorithm::~SpuContactManifoldCollisionAlgorithm()
+{
+ if (m_manifoldPtr)
+ m_dispatcher->releaseManifold(m_manifoldPtr);
+}
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef BT_SPU_CONTACTMANIFOLD_COLLISION_ALGORITHM_H
+#define BT_SPU_CONTACTMANIFOLD_COLLISION_ALGORITHM_H
+
+#include "BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h"
+#include "BulletCollision/BroadphaseCollision/btBroadphaseProxy.h"
+#include "BulletCollision/CollisionDispatch/btCollisionCreateFunc.h"
+#include "BulletCollision/BroadphaseCollision/btDispatcher.h"
+#include "LinearMath/btTransformUtil.h"
+#include "BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h"
+
+class btPersistentManifold;
+
+//#define USE_SEPDISTANCE_UTIL 1
+
+/// SpuContactManifoldCollisionAlgorithm provides contact manifold and should be processed on SPU.
+ATTRIBUTE_ALIGNED16(class) SpuContactManifoldCollisionAlgorithm : public btCollisionAlgorithm
+{
+ btVector3 m_shapeDimensions0;
+ btVector3 m_shapeDimensions1;
+ btPersistentManifold* m_manifoldPtr;
+ int m_shapeType0;
+ int m_shapeType1;
+ float m_collisionMargin0;
+ float m_collisionMargin1;
+
+ const btCollisionObject* m_collisionObject0;
+ const btCollisionObject* m_collisionObject1;
+
+
+
+
+public:
+
+ virtual void processCollision (const btCollisionObjectWrapper* body0Wrap,const btCollisionObjectWrapper* body1Wrap,const btDispatcherInfo& dispatchInfo,btManifoldResult* resultOut);
+
+ virtual btScalar calculateTimeOfImpact(btCollisionObject* body0,btCollisionObject* body1,const btDispatcherInfo& dispatchInfo,btManifoldResult* resultOut);
+
+
+ SpuContactManifoldCollisionAlgorithm(const btCollisionAlgorithmConstructionInfo& ci,const btCollisionObject* body0,const btCollisionObject* body1);
+#ifdef USE_SEPDISTANCE_UTIL
+ btConvexSeparatingDistanceUtil m_sepDistance;
+#endif //USE_SEPDISTANCE_UTIL
+
+ virtual ~SpuContactManifoldCollisionAlgorithm();
+
+ virtual void getAllContactManifolds(btManifoldArray& manifoldArray)
+ {
+ if (m_manifoldPtr)
+ manifoldArray.push_back(m_manifoldPtr);
+ }
+
+ btPersistentManifold* getContactManifoldPtr()
+ {
+ return m_manifoldPtr;
+ }
+
+ const btCollisionObject* getCollisionObject0()
+ {
+ return m_collisionObject0;
+ }
+
+ const btCollisionObject* getCollisionObject1()
+ {
+ return m_collisionObject1;
+ }
+
+ int getShapeType0() const
+ {
+ return m_shapeType0;
+ }
+
+ int getShapeType1() const
+ {
+ return m_shapeType1;
+ }
+ float getCollisionMargin0() const
+ {
+ return m_collisionMargin0;
+ }
+ float getCollisionMargin1() const
+ {
+ return m_collisionMargin1;
+ }
+
+ const btVector3& getShapeDimensions0() const
+ {
+ return m_shapeDimensions0;
+ }
+
+ const btVector3& getShapeDimensions1() const
+ {
+ return m_shapeDimensions1;
+ }
+
+ struct CreateFunc :public btCollisionAlgorithmCreateFunc
+ {
+ virtual btCollisionAlgorithm* CreateCollisionAlgorithm(btCollisionAlgorithmConstructionInfo& ci, const btCollisionObjectWrapper* body0Wrap,const btCollisionObjectWrapper* body1Wrap)
+ {
+ void* mem = ci.m_dispatcher1->allocateCollisionAlgorithm(sizeof(SpuContactManifoldCollisionAlgorithm));
+ return new(mem) SpuContactManifoldCollisionAlgorithm(ci,body0Wrap->getCollisionObject(),body1Wrap->getCollisionObject());
+ }
+ };
+
+};
+
+#endif //BT_SPU_CONTACTMANIFOLD_COLLISION_ALGORITHM_H
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+
+#ifndef BT_DOUBLE_BUFFER_H
+#define BT_DOUBLE_BUFFER_H
+
+#include "SpuFakeDma.h"
+#include "LinearMath/btScalar.h"
+
+
+///DoubleBuffer
+template<class T, int size>
+class DoubleBuffer
+{
+#if defined(__SPU__) || defined(USE_LIBSPE2)
+ ATTRIBUTE_ALIGNED128( T m_buffer0[size] ) ;
+ ATTRIBUTE_ALIGNED128( T m_buffer1[size] ) ;
+#else
+ T m_buffer0[size];
+ T m_buffer1[size];
+#endif
+
+ T *m_frontBuffer;
+ T *m_backBuffer;
+
+ unsigned int m_dmaTag;
+ bool m_dmaPending;
+public:
+ bool isPending() const { return m_dmaPending;}
+ DoubleBuffer();
+
+ void init ();
+
+ // dma get and put commands
+ void backBufferDmaGet(uint64_t ea, unsigned int numBytes, unsigned int tag);
+ void backBufferDmaPut(uint64_t ea, unsigned int numBytes, unsigned int tag);
+
+ // gets pointer to a buffer
+ T *getFront();
+ T *getBack();
+
+ // if back buffer dma was started, wait for it to complete
+ // then move back to front and vice versa
+ T *swapBuffers();
+};
+
+template<class T, int size>
+DoubleBuffer<T,size>::DoubleBuffer()
+{
+ init ();
+}
+
+template<class T, int size>
+void DoubleBuffer<T,size>::init()
+{
+ this->m_dmaPending = false;
+ this->m_frontBuffer = &this->m_buffer0[0];
+ this->m_backBuffer = &this->m_buffer1[0];
+}
+
+template<class T, int size>
+void
+DoubleBuffer<T,size>::backBufferDmaGet(uint64_t ea, unsigned int numBytes, unsigned int tag)
+{
+ m_dmaPending = true;
+ m_dmaTag = tag;
+ if (numBytes)
+ {
+ m_backBuffer = (T*)cellDmaLargeGetReadOnly(m_backBuffer, ea, numBytes, tag, 0, 0);
+ }
+}
+
+template<class T, int size>
+void
+DoubleBuffer<T,size>::backBufferDmaPut(uint64_t ea, unsigned int numBytes, unsigned int tag)
+{
+ m_dmaPending = true;
+ m_dmaTag = tag;
+ cellDmaLargePut(m_backBuffer, ea, numBytes, tag, 0, 0);
+}
+
+template<class T, int size>
+T *
+DoubleBuffer<T,size>::getFront()
+{
+ return m_frontBuffer;
+}
+
+template<class T, int size>
+T *
+DoubleBuffer<T,size>::getBack()
+{
+ return m_backBuffer;
+}
+
+template<class T, int size>
+T *
+DoubleBuffer<T,size>::swapBuffers()
+{
+ if (m_dmaPending)
+ {
+ cellDmaWaitTagStatusAll(1<<m_dmaTag);
+ m_dmaPending = false;
+ }
+
+ T *tmp = m_backBuffer;
+ m_backBuffer = m_frontBuffer;
+ m_frontBuffer = tmp;
+
+ return m_frontBuffer;
+}
+
+#endif
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "SpuFakeDma.h"
+#include <LinearMath/btScalar.h> //for btAssert
+//Disabling memcpy sometimes helps debugging DMA
+
+#define USE_MEMCPY 1
+#ifdef USE_MEMCPY
+
+#endif
+
+
+void* cellDmaLargeGetReadOnly(void *ls, uint64_t ea, uint32_t size, uint32_t tag, uint32_t tid, uint32_t rid)
+{
+
+#if defined (__SPU__) || defined (USE_LIBSPE2)
+ cellDmaLargeGet(ls,ea,size,tag,tid,rid);
+ return ls;
+#else
+ return (void*)(ppu_address_t)ea;
+#endif
+}
+
+void* cellDmaSmallGetReadOnly(void *ls, uint64_t ea, uint32_t size, uint32_t tag, uint32_t tid, uint32_t rid)
+{
+#if defined (__SPU__) || defined (USE_LIBSPE2)
+ mfc_get(ls,ea,size,tag,0,0);
+ return ls;
+#else
+ return (void*)(ppu_address_t)ea;
+#endif
+}
+
+
+
+
+void* cellDmaGetReadOnly(void *ls, uint64_t ea, uint32_t size, uint32_t tag, uint32_t tid, uint32_t rid)
+{
+#if defined (__SPU__) || defined (USE_LIBSPE2)
+ cellDmaGet(ls,ea,size,tag,tid,rid);
+ return ls;
+#else
+ return (void*)(ppu_address_t)ea;
+#endif
+}
+
+
+///this unalignedDma should not be frequently used, only for small data. It handles alignment and performs check on size (<16 bytes)
+int stallingUnalignedDmaSmallGet(void *ls, uint64_t ea, uint32_t size)
+{
+
+ btAssert(size<32);
+
+ ATTRIBUTE_ALIGNED16(char tmpBuffer[32]);
+
+
+ char* localStore = (char*)ls;
+ uint32_t i;
+
+
+ ///make sure last 4 bits are the same, for cellDmaSmallGet
+ uint32_t last4BitsOffset = ea & 0x0f;
+ char* tmpTarget = tmpBuffer + last4BitsOffset;
+
+#if defined (__SPU__) || defined (USE_LIBSPE2)
+
+ int remainingSize = size;
+
+//#define FORCE_cellDmaUnalignedGet 1
+#ifdef FORCE_cellDmaUnalignedGet
+ cellDmaUnalignedGet(tmpTarget,ea,size,DMA_TAG(1),0,0);
+#else
+ char* remainingTmpTarget = tmpTarget;
+ uint64_t remainingEa = ea;
+
+ while (remainingSize)
+ {
+ switch (remainingSize)
+ {
+ case 1:
+ case 2:
+ case 4:
+ case 8:
+ case 16:
+ {
+ mfc_get(remainingTmpTarget,remainingEa,remainingSize,DMA_TAG(1),0,0);
+ remainingSize=0;
+ break;
+ }
+ default:
+ {
+ //spu_printf("unaligned DMA with non-natural size:%d\n",remainingSize);
+ int actualSize = 0;
+
+ if (remainingSize > 16)
+ actualSize = 16;
+ else
+ if (remainingSize >8)
+ actualSize=8;
+ else
+ if (remainingSize >4)
+ actualSize=4;
+ else
+ if (remainingSize >2)
+ actualSize=2;
+ mfc_get(remainingTmpTarget,remainingEa,actualSize,DMA_TAG(1),0,0);
+ remainingSize-=actualSize;
+ remainingTmpTarget+=actualSize;
+ remainingEa += actualSize;
+ }
+ }
+ }
+#endif//FORCE_cellDmaUnalignedGet
+
+#else
+ char* mainMem = (char*)ea;
+ //copy into final destination
+#ifdef USE_MEMCPY
+
+ memcpy(tmpTarget,mainMem,size);
+#else
+ for ( i=0;i<size;i++)
+ {
+ tmpTarget[i] = mainMem[i];
+ }
+#endif //USE_MEMCPY
+
+#endif
+
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+
+ //this is slowish, perhaps memcpy on SPU is smarter?
+ for (i=0; btLikely( i<size );i++)
+ {
+ localStore[i] = tmpTarget[i];
+ }
+
+ return 0;
+}
+
+#if defined (__SPU__) || defined (USE_LIBSPE2)
+#else
+
+int cellDmaLargeGet(void *ls, uint64_t ea, uint32_t size, uint32_t tag, uint32_t tid, uint32_t rid)
+{
+ char* mainMem = (char*)ea;
+ char* localStore = (char*)ls;
+
+#ifdef USE_MEMCPY
+ memcpy(localStore,mainMem,size);
+#else
+ for (uint32_t i=0;i<size;i++)
+ {
+ localStore[i] = mainMem[i];
+ }
+#endif
+ return 0;
+}
+
+int cellDmaGet(void *ls, uint64_t ea, uint32_t size, uint32_t tag, uint32_t tid, uint32_t rid)
+{
+ char* mainMem = (char*)ea;
+ char* localStore = (char*)ls;
+
+// printf("mainMem=%x, localStore=%x",mainMem,localStore);
+
+#ifdef USE_MEMCPY
+ memcpy(localStore,mainMem,size);
+#else
+ for (uint32_t i=0;i<size;i++)
+ {
+ localStore[i] = mainMem[i];
+ }
+#endif //#ifdef USE_MEMCPY
+// printf(" finished\n");
+ return 0;
+}
+
+int cellDmaLargePut(const void *ls, uint64_t ea, uint32_t size, uint32_t tag, uint32_t tid, uint32_t rid)
+{
+ char* mainMem = (char*)ea;
+ const char* localStore = (const char*)ls;
+#ifdef USE_MEMCPY
+ memcpy(mainMem,localStore,size);
+#else
+ for (uint32_t i=0;i<size;i++)
+ {
+ mainMem[i] = localStore[i];
+ }
+#endif //#ifdef USE_MEMCPY
+
+ return 0;
+}
+
+
+
+void cellDmaWaitTagStatusAll(int ignore)
+{
+
+}
+
+#endif
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef BT_FAKE_DMA_H
+#define BT_FAKE_DMA_H
+
+
+#include "PlatformDefinitions.h"
+#include "LinearMath/btScalar.h"
+
+
+#ifdef __SPU__
+
+#ifndef USE_LIBSPE2
+
+#include <cell/dma.h>
+#include <stdint.h>
+
+#define DMA_TAG(xfer) (xfer + 1)
+#define DMA_MASK(xfer) (1 << DMA_TAG(xfer))
+
+#else // !USE_LIBSPE2
+
+#define DMA_TAG(xfer) (xfer + 1)
+#define DMA_MASK(xfer) (1 << DMA_TAG(xfer))
+
+#include <spu_mfcio.h>
+
+#define DEBUG_DMA
+#ifdef DEBUG_DMA
+#define dUASSERT(a,b) if (!(a)) { printf(b);}
+#define uintsize ppu_address_t
+
+#define cellDmaLargeGet(ls, ea, size, tag, tid, rid) if ( (((uintsize)ls%16) != ((uintsize)ea%16)) || ((((uintsize)ea%16) || ((uintsize)ls%16)) && (( ((uintsize)ls%16) != ((uintsize)size%16) ) || ( ((uintsize)ea%16) != ((uintsize)size%16) ) ) ) || ( ((uintsize)size%16) && ((uintsize)size!=1) && ((uintsize)size!=2) && ((uintsize)size!=4) && ((uintsize)size!=8) ) || (size >= 16384) || !(uintsize)ls || !(uintsize)ea) { \
+ dUASSERT( (((uintsize)ea % 16) == 0) || (size < 16), "XDR Address not aligned: "); \
+ dUASSERT( (((uintsize)ls % 16) == 0) || (size < 16), "LS Address not aligned: "); \
+ dUASSERT( ((((uintsize)ls % size) == 0) && (((uintsize)ea % size) == 0)) || (size > 16), "Not naturally aligned: "); \
+ dUASSERT((size == 1) || (size == 2) || (size == 4) || (size == 8) || ((size % 16) == 0), "size not a multiple of 16byte: "); \
+ dUASSERT(size < 16384, "size too big: "); \
+ dUASSERT( ((uintsize)ea%16)==((uintsize)ls%16), "wrong Quadword alignment of LS and EA: "); \
+ dUASSERT(ea != 0, "Nullpointer EA: "); dUASSERT(ls != 0, "Nullpointer LS: ");\
+ printf("GET %s:%d from: 0x%x, to: 0x%x - %d bytes\n", __FILE__, __LINE__, (unsigned int)ea,(unsigned int)ls,(unsigned int)size);\
+ } \
+ mfc_get(ls, ea, size, tag, tid, rid)
+#define cellDmaGet(ls, ea, size, tag, tid, rid) if ( (((uintsize)ls%16) != ((uintsize)ea%16)) || ((((uintsize)ea%16) || ((uintsize)ls%16)) && (( ((uintsize)ls%16) != ((uintsize)size%16) ) || ( ((uintsize)ea%16) != ((uintsize)size%16) ) ) ) || ( ((uintsize)size%16) && ((uintsize)size!=1) && ((uintsize)size!=2) && ((uintsize)size!=4) && ((uintsize)size!=8) ) || (size >= 16384) || !(uintsize)ls || !(uintsize)ea) { \
+ dUASSERT( (((uintsize)ea % 16) == 0) || (size < 16), "XDR Address not aligned: "); \
+ dUASSERT( (((uintsize)ls % 16) == 0) || (size < 16), "LS Address not aligned: "); \
+ dUASSERT( ((((uintsize)ls % size) == 0) && (((uintsize)ea % size) == 0)) || (size > 16), "Not naturally aligned: "); \
+ dUASSERT((size == 1) || (size == 2) || (size == 4) || (size == 8) || ((size % 16) == 0), "size not a multiple of 16byte: "); \
+ dUASSERT(size < 16384, "size too big: "); \
+ dUASSERT( ((uintsize)ea%16)==((uintsize)ls%16), "wrong Quadword alignment of LS and EA: "); \
+ dUASSERT(ea != 0, "Nullpointer EA: "); dUASSERT(ls != 0, "Nullpointer LS: ");\
+ printf("GET %s:%d from: 0x%x, to: 0x%x - %d bytes\n", __FILE__, __LINE__, (unsigned int)ea,(unsigned int)ls,(unsigned int)size);\
+ } \
+ mfc_get(ls, ea, size, tag, tid, rid)
+#define cellDmaLargePut(ls, ea, size, tag, tid, rid) if ( (((uintsize)ls%16) != ((uintsize)ea%16)) || ((((uintsize)ea%16) || ((uintsize)ls%16)) && (( ((uintsize)ls%16) != ((uintsize)size%16) ) || ( ((uintsize)ea%16) != ((uintsize)size%16) ) ) ) || ( ((uintsize)size%16) && ((uintsize)size!=1) && ((uintsize)size!=2) && ((uintsize)size!=4) && ((uintsize)size!=8) ) || (size >= 16384) || !(uintsize)ls || !(uintsize)ea) { \
+ dUASSERT( (((uintsize)ea % 16) == 0) || (size < 16), "XDR Address not aligned: "); \
+ dUASSERT( (((uintsize)ls % 16) == 0) || (size < 16), "LS Address not aligned: "); \
+ dUASSERT( ((((uintsize)ls % size) == 0) && (((uintsize)ea % size) == 0)) || (size > 16), "Not naturally aligned: "); \
+ dUASSERT((size == 1) || (size == 2) || (size == 4) || (size == 8) || ((size % 16) == 0), "size not a multiple of 16byte: "); \
+ dUASSERT(size < 16384, "size too big: "); \
+ dUASSERT( ((uintsize)ea%16)==((uintsize)ls%16), "wrong Quadword alignment of LS and EA: "); \
+ dUASSERT(ea != 0, "Nullpointer EA: "); dUASSERT(ls != 0, "Nullpointer LS: ");\
+ printf("PUT %s:%d from: 0x%x, to: 0x%x - %d bytes\n", __FILE__, __LINE__, (unsigned int)ls,(unsigned int)ea,(unsigned int)size); \
+ } \
+ mfc_put(ls, ea, size, tag, tid, rid)
+#define cellDmaSmallGet(ls, ea, size, tag, tid, rid) if ( (((uintsize)ls%16) != ((uintsize)ea%16)) || ((((uintsize)ea%16) || ((uintsize)ls%16)) && (( ((uintsize)ls%16) != ((uintsize)size%16) ) || ( ((uintsize)ea%16) != ((uintsize)size%16) ) ) ) || ( ((uintsize)size%16) && ((uintsize)size!=1) && ((uintsize)size!=2) && ((uintsize)size!=4) && ((uintsize)size!=8) ) || (size >= 16384) || !(uintsize)ls || !(uintsize)ea) { \
+ dUASSERT( (((uintsize)ea % 16) == 0) || (size < 16), "XDR Address not aligned: "); \
+ dUASSERT( (((uintsize)ls % 16) == 0) || (size < 16), "LS Address not aligned: "); \
+ dUASSERT( ((((uintsize)ls % size) == 0) && (((uintsize)ea % size) == 0)) || (size > 16), "Not naturally aligned: "); \
+ dUASSERT((size == 1) || (size == 2) || (size == 4) || (size == 8) || ((size % 16) == 0), "size not a multiple of 16byte: "); \
+ dUASSERT(size < 16384, "size too big: "); \
+ dUASSERT( ((uintsize)ea%16)==((uintsize)ls%16), "wrong Quadword alignment of LS and EA: "); \
+ dUASSERT(ea != 0, "Nullpointer EA: "); dUASSERT(ls != 0, "Nullpointer LS: ");\
+ printf("GET %s:%d from: 0x%x, to: 0x%x - %d bytes\n", __FILE__, __LINE__, (unsigned int)ea,(unsigned int)ls,(unsigned int)size);\
+ } \
+ mfc_get(ls, ea, size, tag, tid, rid)
+#define cellDmaWaitTagStatusAll(ignore) mfc_write_tag_mask(ignore) ; mfc_read_tag_status_all()
+
+#else
+#define cellDmaLargeGet(ls, ea, size, tag, tid, rid) mfc_get(ls, ea, size, tag, tid, rid)
+#define cellDmaGet(ls, ea, size, tag, tid, rid) mfc_get(ls, ea, size, tag, tid, rid)
+#define cellDmaLargePut(ls, ea, size, tag, tid, rid) mfc_put(ls, ea, size, tag, tid, rid)
+#define cellDmaSmallGet(ls, ea, size, tag, tid, rid) mfc_get(ls, ea, size, tag, tid, rid)
+#define cellDmaWaitTagStatusAll(ignore) mfc_write_tag_mask(ignore) ; mfc_read_tag_status_all()
+#endif // DEBUG_DMA
+
+
+
+
+
+
+
+
+#endif // USE_LIBSPE2
+#else // !__SPU__
+//Simulate DMA using memcpy or direct access on non-CELL platforms that don't have DMAs and SPUs (Win32, Mac, Linux etc)
+//Potential to add networked simulation using this interface
+
+#define DMA_TAG(a) (a)
+#define DMA_MASK(a) (a)
+
+ /// cellDmaLargeGet Win32 replacements for Cell DMA to allow simulating most of the SPU code (just memcpy)
+ int cellDmaLargeGet(void *ls, uint64_t ea, uint32_t size, uint32_t tag, uint32_t tid, uint32_t rid);
+ int cellDmaGet(void *ls, uint64_t ea, uint32_t size, uint32_t tag, uint32_t tid, uint32_t rid);
+ /// cellDmaLargePut Win32 replacements for Cell DMA to allow simulating most of the SPU code (just memcpy)
+ int cellDmaLargePut(const void *ls, uint64_t ea, uint32_t size, uint32_t tag, uint32_t tid, uint32_t rid);
+ /// cellDmaWaitTagStatusAll Win32 replacements for Cell DMA to allow simulating most of the SPU code (just memcpy)
+ void cellDmaWaitTagStatusAll(int ignore);
+
+
+#endif //__CELLOS_LV2__
+
+///stallingUnalignedDmaSmallGet internally uses DMA_TAG(1)
+int stallingUnalignedDmaSmallGet(void *ls, uint64_t ea, uint32_t size);
+
+
+void* cellDmaLargeGetReadOnly(void *ls, uint64_t ea, uint32_t size, uint32_t tag, uint32_t tid, uint32_t rid);
+void* cellDmaGetReadOnly(void *ls, uint64_t ea, uint32_t size, uint32_t tag, uint32_t tid, uint32_t rid);
+void* cellDmaSmallGetReadOnly(void *ls, uint64_t ea, uint32_t size, uint32_t tag, uint32_t tid, uint32_t rid);
+
+
+#endif //BT_FAKE_DMA_H
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "SpuGatheringCollisionDispatcher.h"
+#include "SpuCollisionTaskProcess.h"
+
+
+#include "BulletCollision/BroadphaseCollision/btOverlappingPairCache.h"
+#include "BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h"
+#include "SpuContactManifoldCollisionAlgorithm.h"
+#include "BulletCollision/CollisionDispatch/btCollisionObject.h"
+#include "BulletCollision/CollisionShapes/btCollisionShape.h"
+#include "LinearMath/btQuickprof.h"
+#include "BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h"
+#include "BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h"
+
+
+
+
+SpuGatheringCollisionDispatcher::SpuGatheringCollisionDispatcher(class btThreadSupportInterface* threadInterface, unsigned int maxNumOutstandingTasks,btCollisionConfiguration* collisionConfiguration)
+:btCollisionDispatcher(collisionConfiguration),
+m_spuCollisionTaskProcess(0),
+m_threadInterface(threadInterface),
+m_maxNumOutstandingTasks(maxNumOutstandingTasks)
+{
+
+}
+
+
+bool SpuGatheringCollisionDispatcher::supportsDispatchPairOnSpu(int proxyType0,int proxyType1)
+{
+ bool supported0 = (
+ (proxyType0 == BOX_SHAPE_PROXYTYPE) ||
+ (proxyType0 == TRIANGLE_SHAPE_PROXYTYPE) ||
+ (proxyType0 == SPHERE_SHAPE_PROXYTYPE) ||
+ (proxyType0 == CAPSULE_SHAPE_PROXYTYPE) ||
+ (proxyType0 == CYLINDER_SHAPE_PROXYTYPE) ||
+// (proxyType0 == CONE_SHAPE_PROXYTYPE) ||
+ (proxyType0 == TRIANGLE_MESH_SHAPE_PROXYTYPE) ||
+ (proxyType0 == CONVEX_HULL_SHAPE_PROXYTYPE)||
+ (proxyType0 == STATIC_PLANE_PROXYTYPE)||
+ (proxyType0 == COMPOUND_SHAPE_PROXYTYPE)
+ );
+
+ bool supported1 = (
+ (proxyType1 == BOX_SHAPE_PROXYTYPE) ||
+ (proxyType1 == TRIANGLE_SHAPE_PROXYTYPE) ||
+ (proxyType1 == SPHERE_SHAPE_PROXYTYPE) ||
+ (proxyType1 == CAPSULE_SHAPE_PROXYTYPE) ||
+ (proxyType1 == CYLINDER_SHAPE_PROXYTYPE) ||
+// (proxyType1 == CONE_SHAPE_PROXYTYPE) ||
+ (proxyType1 == TRIANGLE_MESH_SHAPE_PROXYTYPE) ||
+ (proxyType1 == CONVEX_HULL_SHAPE_PROXYTYPE) ||
+ (proxyType1 == STATIC_PLANE_PROXYTYPE) ||
+ (proxyType1 == COMPOUND_SHAPE_PROXYTYPE)
+ );
+
+
+ return supported0 && supported1;
+}
+
+
+
+SpuGatheringCollisionDispatcher::~SpuGatheringCollisionDispatcher()
+{
+ if (m_spuCollisionTaskProcess)
+ delete m_spuCollisionTaskProcess;
+
+}
+
+#include "stdio.h"
+
+
+
+///interface for iterating all overlapping collision pairs, no matter how those pairs are stored (array, set, map etc)
+///this is useful for the collision dispatcher.
+class btSpuCollisionPairCallback : public btOverlapCallback
+{
+ const btDispatcherInfo& m_dispatchInfo;
+ SpuGatheringCollisionDispatcher* m_dispatcher;
+
+public:
+
+ btSpuCollisionPairCallback(const btDispatcherInfo& dispatchInfo, SpuGatheringCollisionDispatcher* dispatcher)
+ :m_dispatchInfo(dispatchInfo),
+ m_dispatcher(dispatcher)
+ {
+ }
+
+ virtual bool processOverlap(btBroadphasePair& collisionPair)
+ {
+
+
+ //PPU version
+ //(*m_dispatcher->getNearCallback())(collisionPair,*m_dispatcher,m_dispatchInfo);
+
+ //only support discrete collision detection for now, we could fallback on PPU/unoptimized version for TOI/CCD
+ btAssert(m_dispatchInfo.m_dispatchFunc == btDispatcherInfo::DISPATCH_DISCRETE);
+
+ //by default, Bullet will use this near callback
+ {
+ ///userInfo is used to determine if the SPU has to handle this case or not (skip PPU tasks)
+ if (!collisionPair.m_internalTmpValue)
+ {
+ collisionPair.m_internalTmpValue = 1;
+ }
+ if (!collisionPair.m_algorithm)
+ {
+ btCollisionObject* colObj0 = (btCollisionObject*)collisionPair.m_pProxy0->m_clientObject;
+ btCollisionObject* colObj1 = (btCollisionObject*)collisionPair.m_pProxy1->m_clientObject;
+
+ btCollisionAlgorithmConstructionInfo ci;
+ ci.m_dispatcher1 = m_dispatcher;
+ ci.m_manifold = 0;
+
+ if (m_dispatcher->needsCollision(colObj0,colObj1))
+ {
+ int proxyType0 = colObj0->getCollisionShape()->getShapeType();
+ int proxyType1 = colObj1->getCollisionShape()->getShapeType();
+ bool supportsSpuDispatch = m_dispatcher->supportsDispatchPairOnSpu(proxyType0,proxyType1)
+ && ((colObj0->getCollisionFlags() & btCollisionObject::CF_DISABLE_SPU_COLLISION_PROCESSING) == 0)
+ && ((colObj1->getCollisionFlags() & btCollisionObject::CF_DISABLE_SPU_COLLISION_PROCESSING) == 0);
+
+ if (proxyType0 == COMPOUND_SHAPE_PROXYTYPE)
+ {
+ btCompoundShape* compound = (btCompoundShape*)colObj0->getCollisionShape();
+ if (compound->getNumChildShapes()>MAX_SPU_COMPOUND_SUBSHAPES)
+ {
+ //printf("PPU fallback, compound->getNumChildShapes(%d)>%d\n",compound->getNumChildShapes(),MAX_SPU_COMPOUND_SUBSHAPES);
+ supportsSpuDispatch = false;
+ }
+ }
+
+ if (proxyType1 == COMPOUND_SHAPE_PROXYTYPE)
+ {
+ btCompoundShape* compound = (btCompoundShape*)colObj1->getCollisionShape();
+ if (compound->getNumChildShapes()>MAX_SPU_COMPOUND_SUBSHAPES)
+ {
+ //printf("PPU fallback, compound->getNumChildShapes(%d)>%d\n",compound->getNumChildShapes(),MAX_SPU_COMPOUND_SUBSHAPES);
+ supportsSpuDispatch = false;
+ }
+ }
+
+ if (supportsSpuDispatch)
+ {
+
+ int so = sizeof(SpuContactManifoldCollisionAlgorithm);
+#ifdef ALLOCATE_SEPARATELY
+ void* mem = btAlignedAlloc(so,16);//m_dispatcher->allocateCollisionAlgorithm(so);
+#else
+ void* mem = m_dispatcher->allocateCollisionAlgorithm(so);
+#endif
+ collisionPair.m_algorithm = new(mem) SpuContactManifoldCollisionAlgorithm(ci,colObj0,colObj1);
+ collisionPair.m_internalTmpValue = 2;
+ } else
+ {
+ btCollisionObjectWrapper ob0(0,colObj0->getCollisionShape(),colObj0,colObj0->getWorldTransform());
+ btCollisionObjectWrapper ob1(0,colObj1->getCollisionShape(),colObj1,colObj1->getWorldTransform());
+
+ collisionPair.m_algorithm = m_dispatcher->findAlgorithm(&ob0,&ob1);
+ collisionPair.m_internalTmpValue = 3;
+ }
+ }
+ }
+ }
+ return false;
+ }
+};
+
+void SpuGatheringCollisionDispatcher::dispatchAllCollisionPairs(btOverlappingPairCache* pairCache,const btDispatcherInfo& dispatchInfo, btDispatcher* dispatcher)
+{
+
+ if (dispatchInfo.m_enableSPU)
+ {
+ m_maxNumOutstandingTasks = m_threadInterface->getNumTasks();
+
+ {
+ BT_PROFILE("processAllOverlappingPairs");
+
+ if (!m_spuCollisionTaskProcess)
+ m_spuCollisionTaskProcess = new SpuCollisionTaskProcess(m_threadInterface,m_maxNumOutstandingTasks);
+
+ m_spuCollisionTaskProcess->setNumTasks(m_maxNumOutstandingTasks);
+ // printf("m_maxNumOutstandingTasks =%d\n",m_maxNumOutstandingTasks);
+
+ m_spuCollisionTaskProcess->initialize2(dispatchInfo.m_useEpa);
+
+
+ ///modified version of btCollisionDispatcher::dispatchAllCollisionPairs:
+ {
+ btSpuCollisionPairCallback collisionCallback(dispatchInfo,this);
+
+ pairCache->processAllOverlappingPairs(&collisionCallback,dispatcher);
+ }
+ }
+
+ //send one big batch
+ int numTotalPairs = pairCache->getNumOverlappingPairs();
+ if (numTotalPairs)
+ {
+ btBroadphasePair* pairPtr = pairCache->getOverlappingPairArrayPtr();
+ int i;
+ {
+ int pairRange = SPU_BATCHSIZE_BROADPHASE_PAIRS;
+ if (numTotalPairs < (m_spuCollisionTaskProcess->getNumTasks()*SPU_BATCHSIZE_BROADPHASE_PAIRS))
+ {
+ pairRange = (numTotalPairs/m_spuCollisionTaskProcess->getNumTasks())+1;
+ }
+
+ BT_PROFILE("addWorkToTask");
+ for (i=0;i<numTotalPairs;)
+ {
+ //Performance Hint: tweak this number during benchmarking
+
+ int endIndex = (i+pairRange) < numTotalPairs ? i+pairRange : numTotalPairs;
+ m_spuCollisionTaskProcess->addWorkToTask(pairPtr,i,endIndex);
+ i = endIndex;
+ }
+ }
+ {
+ BT_PROFILE("PPU fallback");
+ //handle PPU fallback pairs
+ for (i=0;i<numTotalPairs;i++)
+ {
+ btBroadphasePair& collisionPair = pairPtr[i];
+ if (collisionPair.m_internalTmpValue == 3)
+ {
+ if (collisionPair.m_algorithm)
+ {
+ btCollisionObject* colObj0 = (btCollisionObject*)collisionPair.m_pProxy0->m_clientObject;
+ btCollisionObject* colObj1 = (btCollisionObject*)collisionPair.m_pProxy1->m_clientObject;
+
+ if (dispatcher->needsCollision(colObj0,colObj1))
+ {
+ //discrete collision detection query
+ btCollisionObjectWrapper ob0(0,colObj0->getCollisionShape(),colObj0,colObj0->getWorldTransform());
+ btCollisionObjectWrapper ob1(0,colObj1->getCollisionShape(),colObj1,colObj1->getWorldTransform());
+
+ btManifoldResult contactPointResult(&ob0,&ob1);
+
+ if (dispatchInfo.m_dispatchFunc == btDispatcherInfo::DISPATCH_DISCRETE)
+ {
+
+ collisionPair.m_algorithm->processCollision(&ob0,&ob1,dispatchInfo,&contactPointResult);
+ } else
+ {
+ //continuous collision detection query, time of impact (toi)
+ btScalar toi = collisionPair.m_algorithm->calculateTimeOfImpact(colObj0,colObj1,dispatchInfo,&contactPointResult);
+ if (dispatchInfo.m_timeOfImpact > toi)
+ dispatchInfo.m_timeOfImpact = toi;
+
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ {
+ BT_PROFILE("flush2");
+ //make sure all SPU work is done
+ m_spuCollisionTaskProcess->flush2();
+ }
+
+ } else
+ {
+ ///PPU fallback
+ ///!Need to make sure to clear all 'algorithms' when switching between SPU and PPU
+ btCollisionDispatcher::dispatchAllCollisionPairs(pairCache,dispatchInfo,dispatcher);
+ }
+}
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+#ifndef BT_SPU_GATHERING_COLLISION__DISPATCHER_H
+#define BT_SPU_GATHERING_COLLISION__DISPATCHER_H
+
+#include "BulletCollision/CollisionDispatch/btCollisionDispatcher.h"
+
+
+///Tuning value to optimized SPU utilization
+///Too small value means Task overhead is large compared to computation (too fine granularity)
+///Too big value might render some SPUs are idle, while a few other SPUs are doing all work.
+//#define SPU_BATCHSIZE_BROADPHASE_PAIRS 8
+//#define SPU_BATCHSIZE_BROADPHASE_PAIRS 16
+//#define SPU_BATCHSIZE_BROADPHASE_PAIRS 64
+#define SPU_BATCHSIZE_BROADPHASE_PAIRS 128
+//#define SPU_BATCHSIZE_BROADPHASE_PAIRS 256
+//#define SPU_BATCHSIZE_BROADPHASE_PAIRS 512
+//#define SPU_BATCHSIZE_BROADPHASE_PAIRS 1024
+
+
+
+class SpuCollisionTaskProcess;
+
+///SpuGatheringCollisionDispatcher can use SPU to gather and calculate collision detection
+///Time of Impact, Closest Points and Penetration Depth.
+class SpuGatheringCollisionDispatcher : public btCollisionDispatcher
+{
+
+ SpuCollisionTaskProcess* m_spuCollisionTaskProcess;
+
+protected:
+
+ class btThreadSupportInterface* m_threadInterface;
+
+ unsigned int m_maxNumOutstandingTasks;
+
+
+public:
+
+ //can be used by SPU collision algorithms
+ SpuCollisionTaskProcess* getSpuCollisionTaskProcess()
+ {
+ return m_spuCollisionTaskProcess;
+ }
+
+ SpuGatheringCollisionDispatcher (class btThreadSupportInterface* threadInterface, unsigned int maxNumOutstandingTasks,btCollisionConfiguration* collisionConfiguration);
+
+ virtual ~SpuGatheringCollisionDispatcher();
+
+ bool supportsDispatchPairOnSpu(int proxyType0,int proxyType1);
+
+ virtual void dispatchAllCollisionPairs(btOverlappingPairCache* pairCache,const btDispatcherInfo& dispatchInfo,btDispatcher* dispatcher) ;
+
+};
+
+
+
+#endif //BT_SPU_GATHERING_COLLISION__DISPATCHER_H
+
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifdef USE_LIBSPE2
+
+#include "SpuLibspe2Support.h"
+
+
+
+
+//SpuLibspe2Support helps to initialize/shutdown libspe2, start/stop SPU tasks and communication
+///Setup and initialize SPU/CELL/Libspe2
+SpuLibspe2Support::SpuLibspe2Support(spe_program_handle_t *speprog, int numThreads)
+{
+ this->program = speprog;
+ this->numThreads = ((numThreads <= spe_cpu_info_get(SPE_COUNT_PHYSICAL_SPES, -1)) ? numThreads : spe_cpu_info_get(SPE_COUNT_PHYSICAL_SPES, -1));
+}
+
+///cleanup/shutdown Libspe2
+SpuLibspe2Support::~SpuLibspe2Support()
+{
+
+ stopSPU();
+}
+
+
+
+///send messages to SPUs
+void SpuLibspe2Support::sendRequest(uint32_t uiCommand, uint32_t uiArgument0, uint32_t uiArgument1)
+{
+ spe_context_ptr_t context;
+
+ switch (uiCommand)
+ {
+ case CMD_SAMPLE_TASK_COMMAND:
+ {
+ //get taskdescription
+ SpuSampleTaskDesc* taskDesc = (SpuSampleTaskDesc*) uiArgument0;
+
+ btAssert(taskDesc->m_taskId<m_activeSpuStatus.size());
+
+ //get status of SPU on which task should run
+ btSpuStatus& spuStatus = m_activeSpuStatus[taskDesc->m_taskId];
+
+ //set data for spuStatus
+ spuStatus.m_commandId = uiCommand;
+ spuStatus.m_status = Spu_Status_Occupied; //set SPU as "occupied"
+ spuStatus.m_taskDesc.p = taskDesc;
+
+ //get context
+ context = data[taskDesc->m_taskId].context;
+
+
+ taskDesc->m_mainMemoryPtr = reinterpret_cast<uint64_t> (spuStatus.m_lsMemory.p);
+
+
+ break;
+ }
+ case CMD_GATHER_AND_PROCESS_PAIRLIST:
+ {
+ //get taskdescription
+ SpuGatherAndProcessPairsTaskDesc* taskDesc = (SpuGatherAndProcessPairsTaskDesc*) uiArgument0;
+
+ btAssert(taskDesc->taskId<m_activeSpuStatus.size());
+
+ //get status of SPU on which task should run
+ btSpuStatus& spuStatus = m_activeSpuStatus[taskDesc->taskId];
+
+ //set data for spuStatus
+ spuStatus.m_commandId = uiCommand;
+ spuStatus.m_status = Spu_Status_Occupied; //set SPU as "occupied"
+ spuStatus.m_taskDesc.p = taskDesc;
+
+ //get context
+ context = data[taskDesc->taskId].context;
+
+
+ taskDesc->m_lsMemory = (CollisionTask_LocalStoreMemory*)spuStatus.m_lsMemory.p;
+
+ break;
+ }
+ default:
+ {
+ ///not implemented
+ btAssert(0);
+ }
+
+ };
+
+
+ //write taskdescription in mailbox
+ unsigned int event = Spu_Mailbox_Event_Task;
+ spe_in_mbox_write(context, &event, 1, SPE_MBOX_ANY_NONBLOCKING);
+
+}
+
+///check for messages from SPUs
+void SpuLibspe2Support::waitForResponse(unsigned int *puiArgument0, unsigned int *puiArgument1)
+{
+ ///We should wait for (one of) the first tasks to finish (or other SPU messages), and report its response
+
+ ///A possible response can be 'yes, SPU handled it', or 'no, please do a PPU fallback'
+
+ btAssert(m_activeSpuStatus.size());
+
+
+ int last = -1;
+
+ //find an active spu/thread
+ while(last < 0)
+ {
+ for (int i=0;i<m_activeSpuStatus.size();i++)
+ {
+ if ( m_activeSpuStatus[i].m_status == Spu_Status_Free)
+ {
+ last = i;
+ break;
+ }
+ }
+ if(last < 0)
+ sched_yield();
+ }
+
+
+
+ btSpuStatus& spuStatus = m_activeSpuStatus[last];
+
+ ///need to find an active spu
+ btAssert(last>=0);
+
+
+
+ *puiArgument0 = spuStatus.m_taskId;
+ *puiArgument1 = spuStatus.m_status;
+
+
+}
+
+
+void SpuLibspe2Support::startSPU()
+{
+ this->internal_startSPU();
+}
+
+
+
+///start the spus group (can be called at the beginning of each frame, to make sure that the right SPU program is loaded)
+void SpuLibspe2Support::internal_startSPU()
+{
+ m_activeSpuStatus.resize(numThreads);
+
+
+ for (int i=0; i < numThreads; i++)
+ {
+
+ if(data[i].context == NULL)
+ {
+
+ /* Create context */
+ if ((data[i].context = spe_context_create(0, NULL)) == NULL)
+ {
+ perror ("Failed creating context");
+ exit(1);
+ }
+
+ /* Load program into context */
+ if(spe_program_load(data[i].context, this->program))
+ {
+ perror ("Failed loading program");
+ exit(1);
+ }
+
+ m_activeSpuStatus[i].m_status = Spu_Status_Startup;
+ m_activeSpuStatus[i].m_taskId = i;
+ m_activeSpuStatus[i].m_commandId = 0;
+ m_activeSpuStatus[i].m_lsMemory.p = NULL;
+
+
+ data[i].entry = SPE_DEFAULT_ENTRY;
+ data[i].flags = 0;
+ data[i].argp.p = &m_activeSpuStatus[i];
+ data[i].envp.p = NULL;
+
+ /* Create thread for each SPE context */
+ if (pthread_create(&data[i].pthread, NULL, &ppu_pthread_function, &(data[i]) ))
+ {
+ perror ("Failed creating thread");
+ exit(1);
+ }
+ /*
+ else
+ {
+ printf("started thread %d\n",i);
+ }*/
+ }
+ }
+
+
+ for (int i=0; i < numThreads; i++)
+ {
+ if(data[i].context != NULL)
+ {
+ while( m_activeSpuStatus[i].m_status == Spu_Status_Startup)
+ {
+ // wait for spu to set up
+ sched_yield();
+ }
+ printf("Spu %d is ready\n", i);
+ }
+ }
+}
+
+///tell the task scheduler we are done with the SPU tasks
+void SpuLibspe2Support::stopSPU()
+{
+ // wait for all threads to finish
+ int i;
+ for ( i = 0; i < this->numThreads; i++ )
+ {
+
+ unsigned int event = Spu_Mailbox_Event_Shutdown;
+ spe_context_ptr_t context = data[i].context;
+ spe_in_mbox_write(context, &event, 1, SPE_MBOX_ALL_BLOCKING);
+ pthread_join (data[i].pthread, NULL);
+
+ }
+ // close SPE program
+ spe_image_close(program);
+ // destroy SPE contexts
+ for ( i = 0; i < this->numThreads; i++ )
+ {
+ if(data[i].context != NULL)
+ {
+ spe_context_destroy (data[i].context);
+ }
+ }
+
+ m_activeSpuStatus.clear();
+
+}
+
+
+
+#endif //USE_LIBSPE2
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+
+#ifndef BT_SPU_LIBSPE2_SUPPORT_H
+#define BT_SPU_LIBSPE2_SUPPORT_H
+
+#include <LinearMath/btScalar.h> //for uint32_t etc.
+
+#ifdef USE_LIBSPE2
+
+#include <stdlib.h>
+#include <stdio.h>
+//#include "SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h"
+#include "PlatformDefinitions.h"
+
+
+//extern struct SpuGatherAndProcessPairsTaskDesc;
+
+enum
+{
+ Spu_Mailbox_Event_Nothing = 0,
+ Spu_Mailbox_Event_Task = 1,
+ Spu_Mailbox_Event_Shutdown = 2,
+
+ Spu_Mailbox_Event_ForceDword = 0xFFFFFFFF
+
+};
+
+enum
+{
+ Spu_Status_Free = 0,
+ Spu_Status_Occupied = 1,
+ Spu_Status_Startup = 2,
+
+ Spu_Status_ForceDword = 0xFFFFFFFF
+
+};
+
+
+struct btSpuStatus
+{
+ uint32_t m_taskId;
+ uint32_t m_commandId;
+ uint32_t m_status;
+
+ addr64 m_taskDesc;
+ addr64 m_lsMemory;
+
+}
+__attribute__ ((aligned (128)))
+;
+
+
+
+#ifndef __SPU__
+
+#include "LinearMath/btAlignedObjectArray.h"
+#include "SpuCollisionTaskProcess.h"
+#include "SpuSampleTaskProcess.h"
+#include "btThreadSupportInterface.h"
+#include <libspe2.h>
+#include <pthread.h>
+#include <sched.h>
+
+#define MAX_SPUS 4
+
+typedef struct ppu_pthread_data
+{
+ spe_context_ptr_t context;
+ pthread_t pthread;
+ unsigned int entry;
+ unsigned int flags;
+ addr64 argp;
+ addr64 envp;
+ spe_stop_info_t stopinfo;
+} ppu_pthread_data_t;
+
+
+static void *ppu_pthread_function(void *arg)
+{
+ ppu_pthread_data_t * datap = (ppu_pthread_data_t *)arg;
+ /*
+ int rc;
+ do
+ {*/
+ spe_context_run(datap->context, &datap->entry, datap->flags, datap->argp.p, datap->envp.p, &datap->stopinfo);
+ if (datap->stopinfo.stop_reason == SPE_EXIT)
+ {
+ if (datap->stopinfo.result.spe_exit_code != 0)
+ {
+ perror("FAILED: SPE returned a non-zero exit status: \n");
+ exit(1);
+ }
+ }
+ else
+ {
+ perror("FAILED: SPE abnormally terminated\n");
+ exit(1);
+ }
+
+
+ //} while (rc > 0); // loop until exit or error, and while any stop & signal
+ pthread_exit(NULL);
+}
+
+
+
+
+
+
+///SpuLibspe2Support helps to initialize/shutdown libspe2, start/stop SPU tasks and communication
+class SpuLibspe2Support : public btThreadSupportInterface
+{
+
+ btAlignedObjectArray<btSpuStatus> m_activeSpuStatus;
+
+public:
+ //Setup and initialize SPU/CELL/Libspe2
+ SpuLibspe2Support(spe_program_handle_t *speprog,int numThreads);
+
+ // SPE program handle ptr.
+ spe_program_handle_t *program;
+
+ // SPE program data
+ ppu_pthread_data_t data[MAX_SPUS];
+
+ //cleanup/shutdown Libspe2
+ ~SpuLibspe2Support();
+
+ ///send messages to SPUs
+ void sendRequest(uint32_t uiCommand, uint32_t uiArgument0, uint32_t uiArgument1=0);
+
+ //check for messages from SPUs
+ void waitForResponse(unsigned int *puiArgument0, unsigned int *puiArgument1);
+
+ //start the spus (can be called at the beginning of each frame, to make sure that the right SPU program is loaded)
+ virtual void startSPU();
+
+ //tell the task scheduler we are done with the SPU tasks
+ virtual void stopSPU();
+
+ virtual void setNumTasks(int numTasks)
+ {
+ //changing the number of tasks after initialization is not implemented (yet)
+ }
+
+private:
+
+ ///start the spus (can be called at the beginning of each frame, to make sure that the right SPU program is loaded)
+ void internal_startSPU();
+
+
+
+
+ int numThreads;
+
+};
+
+#endif // NOT __SPU__
+
+#endif //USE_LIBSPE2
+
+#endif //BT_SPU_LIBSPE2_SUPPORT_H
+
+
+
+
--- /dev/null
+/*
+ Copyright (C) 2006, 2008 Sony Computer Entertainment Inc.
+ All rights reserved.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+*/
+
+#ifndef __BOX_H__
+#define __BOX_H__
+
+
+#ifndef PE_REF
+#define PE_REF(a) a&
+#endif
+
+#include <math.h>
+
+
+#include "../PlatformDefinitions.h"
+
+
+
+
+enum FeatureType { F, E, V };
+
+//----------------------------------------------------------------------------
+// Box
+//----------------------------------------------------------------------------
+///The Box is an internal class used by the boxBoxDistance calculation.
+class Box
+{
+public:
+ vmVector3 mHalf;
+
+ inline Box()
+ {}
+ inline Box(PE_REF(vmVector3) half_);
+ inline Box(float hx, float hy, float hz);
+
+ inline void Set(PE_REF(vmVector3) half_);
+ inline void Set(float hx, float hy, float hz);
+
+ inline vmVector3 GetAABB(const vmMatrix3& rotation) const;
+};
+
+inline
+Box::Box(PE_REF(vmVector3) half_)
+{
+ Set(half_);
+}
+
+inline
+Box::Box(float hx, float hy, float hz)
+{
+ Set(hx, hy, hz);
+}
+
+inline
+void
+Box::Set(PE_REF(vmVector3) half_)
+{
+ mHalf = half_;
+}
+
+inline
+void
+Box::Set(float hx, float hy, float hz)
+{
+ mHalf = vmVector3(hx, hy, hz);
+}
+
+inline
+vmVector3
+Box::GetAABB(const vmMatrix3& rotation) const
+{
+ return absPerElem(rotation) * mHalf;
+}
+
+//-------------------------------------------------------------------------------------------------
+// BoxPoint
+//-------------------------------------------------------------------------------------------------
+
+///The BoxPoint class is an internally used class to contain feature information for boxBoxDistance calculation.
+class BoxPoint
+{
+public:
+ BoxPoint() : localPoint(0.0f) {}
+
+ vmPoint3 localPoint;
+ FeatureType featureType;
+ int featureIdx;
+
+ inline void setVertexFeature(int plusX, int plusY, int plusZ);
+ inline void setEdgeFeature(int dim0, int plus0, int dim1, int plus1);
+ inline void setFaceFeature(int dim, int plus);
+
+ inline void getVertexFeature(int & plusX, int & plusY, int & plusZ) const;
+ inline void getEdgeFeature(int & dim0, int & plus0, int & dim1, int & plus1) const;
+ inline void getFaceFeature(int & dim, int & plus) const;
+};
+
+inline
+void
+BoxPoint::setVertexFeature(int plusX, int plusY, int plusZ)
+{
+ featureType = V;
+ featureIdx = plusX << 2 | plusY << 1 | plusZ;
+}
+
+inline
+void
+BoxPoint::setEdgeFeature(int dim0, int plus0, int dim1, int plus1)
+{
+ featureType = E;
+
+ if (dim0 > dim1) {
+ featureIdx = plus1 << 5 | dim1 << 3 | plus0 << 2 | dim0;
+ } else {
+ featureIdx = plus0 << 5 | dim0 << 3 | plus1 << 2 | dim1;
+ }
+}
+
+inline
+void
+BoxPoint::setFaceFeature(int dim, int plus)
+{
+ featureType = F;
+ featureIdx = plus << 2 | dim;
+}
+
+inline
+void
+BoxPoint::getVertexFeature(int & plusX, int & plusY, int & plusZ) const
+{
+ plusX = featureIdx >> 2;
+ plusY = featureIdx >> 1 & 1;
+ plusZ = featureIdx & 1;
+}
+
+inline
+void
+BoxPoint::getEdgeFeature(int & dim0, int & plus0, int & dim1, int & plus1) const
+{
+ plus0 = featureIdx >> 5;
+ dim0 = featureIdx >> 3 & 3;
+ plus1 = featureIdx >> 2 & 1;
+ dim1 = featureIdx & 3;
+}
+
+inline
+void
+BoxPoint::getFaceFeature(int & dim, int & plus) const
+{
+ plus = featureIdx >> 2;
+ dim = featureIdx & 3;
+}
+
+#endif /* __BOX_H__ */
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+
+#include "SpuCollisionShapes.h"
+
+///not supported on IBM SDK, until we fix the alignment of btVector3
+#if defined (__CELLOS_LV2__) && defined (__SPU__)
+#include <spu_intrinsics.h>
+static inline vec_float4 vec_dot3( vec_float4 vec0, vec_float4 vec1 )
+{
+ vec_float4 result;
+ result = spu_mul( vec0, vec1 );
+ result = spu_madd( spu_rlqwbyte( vec0, 4 ), spu_rlqwbyte( vec1, 4 ), result );
+ return spu_madd( spu_rlqwbyte( vec0, 8 ), spu_rlqwbyte( vec1, 8 ), result );
+}
+#endif //__SPU__
+
+
+void computeAabb (btVector3& aabbMin, btVector3& aabbMax, btConvexInternalShape* convexShape, ppu_address_t convexShapePtr, int shapeType, const btTransform& xform)
+{
+ //calculate the aabb, given the types...
+ switch (shapeType)
+ {
+ case CYLINDER_SHAPE_PROXYTYPE:
+ /* fall through */
+ case BOX_SHAPE_PROXYTYPE:
+ {
+ btScalar margin=convexShape->getMarginNV();
+ btVector3 halfExtents = convexShape->getImplicitShapeDimensions();
+ halfExtents += btVector3(margin,margin,margin);
+ const btTransform& t = xform;
+ btMatrix3x3 abs_b = t.getBasis().absolute();
+ btVector3 center = t.getOrigin();
+ btVector3 extent = halfExtents.dot3( abs_b[0], abs_b[1], abs_b[2] );
+
+ aabbMin = center - extent;
+ aabbMax = center + extent;
+ break;
+ }
+ case CAPSULE_SHAPE_PROXYTYPE:
+ {
+ btScalar margin=convexShape->getMarginNV();
+ btVector3 halfExtents = convexShape->getImplicitShapeDimensions();
+ //add the radius to y-axis to get full height
+ btScalar radius = halfExtents[0];
+ halfExtents[1] += radius;
+ halfExtents += btVector3(margin,margin,margin);
+#if 0
+ int capsuleUpAxis = convexShape->getUpAxis();
+ btScalar halfHeight = convexShape->getHalfHeight();
+ btScalar radius = convexShape->getRadius();
+ halfExtents[capsuleUpAxis] = radius + halfHeight;
+#endif
+ const btTransform& t = xform;
+ btMatrix3x3 abs_b = t.getBasis().absolute();
+ btVector3 center = t.getOrigin();
+ btVector3 extent = halfExtents.dot3( abs_b[0], abs_b[1], abs_b[2] );
+
+ aabbMin = center - extent;
+ aabbMax = center + extent;
+ break;
+ }
+ case SPHERE_SHAPE_PROXYTYPE:
+ {
+ btScalar radius = convexShape->getImplicitShapeDimensions().getX();// * convexShape->getLocalScaling().getX();
+ btScalar margin = radius + convexShape->getMarginNV();
+ const btTransform& t = xform;
+ const btVector3& center = t.getOrigin();
+ btVector3 extent(margin,margin,margin);
+ aabbMin = center - extent;
+ aabbMax = center + extent;
+ break;
+ }
+ case CONVEX_HULL_SHAPE_PROXYTYPE:
+ {
+ ATTRIBUTE_ALIGNED16(char convexHullShape0[sizeof(btConvexHullShape)]);
+ cellDmaGet(&convexHullShape0, convexShapePtr , sizeof(btConvexHullShape), DMA_TAG(1), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+ btConvexHullShape* localPtr = (btConvexHullShape*)&convexHullShape0;
+ const btTransform& t = xform;
+ btScalar margin = convexShape->getMarginNV();
+ localPtr->getNonvirtualAabb(t,aabbMin,aabbMax,margin);
+ //spu_printf("SPU convex aabbMin=%f,%f,%f=\n",aabbMin.getX(),aabbMin.getY(),aabbMin.getZ());
+ //spu_printf("SPU convex aabbMax=%f,%f,%f=\n",aabbMax.getX(),aabbMax.getY(),aabbMax.getZ());
+ break;
+ }
+ default:
+ {
+ // spu_printf("SPU: unsupported shapetype %d in AABB calculation\n");
+ }
+ };
+}
+
+void dmaBvhShapeData (bvhMeshShape_LocalStoreMemory* bvhMeshShape, btBvhTriangleMeshShape* triMeshShape)
+{
+ register int dmaSize;
+ register ppu_address_t dmaPpuAddress2;
+
+ dmaSize = sizeof(btTriangleIndexVertexArray);
+ dmaPpuAddress2 = reinterpret_cast<ppu_address_t>(triMeshShape->getMeshInterface());
+ // spu_printf("trimeshShape->getMeshInterface() == %llx\n",dmaPpuAddress2);
+#ifdef __SPU__
+ cellDmaGet(&bvhMeshShape->gTriangleMeshInterfaceStorage, dmaPpuAddress2 , dmaSize, DMA_TAG(1), 0, 0);
+ bvhMeshShape->gTriangleMeshInterfacePtr = &bvhMeshShape->gTriangleMeshInterfaceStorage;
+#else
+ bvhMeshShape->gTriangleMeshInterfacePtr = (btTriangleIndexVertexArray*)cellDmaGetReadOnly(&bvhMeshShape->gTriangleMeshInterfaceStorage, dmaPpuAddress2 , dmaSize, DMA_TAG(1), 0, 0);
+#endif
+
+ //cellDmaWaitTagStatusAll(DMA_MASK(1));
+
+ ///now DMA over the BVH
+
+ dmaSize = sizeof(btOptimizedBvh);
+ dmaPpuAddress2 = reinterpret_cast<ppu_address_t>(triMeshShape->getOptimizedBvh());
+ //spu_printf("trimeshShape->getOptimizedBvh() == %llx\n",dmaPpuAddress2);
+ cellDmaGet(&bvhMeshShape->gOptimizedBvh, dmaPpuAddress2 , dmaSize, DMA_TAG(2), 0, 0);
+ //cellDmaWaitTagStatusAll(DMA_MASK(2));
+ cellDmaWaitTagStatusAll(DMA_MASK(1) | DMA_MASK(2));
+}
+
+void dmaBvhIndexedMesh (btIndexedMesh* IndexMesh, IndexedMeshArray& indexArray, int index, uint32_t dmaTag)
+{
+ cellDmaGet(IndexMesh, (ppu_address_t)&indexArray[index] , sizeof(btIndexedMesh), DMA_TAG(dmaTag), 0, 0);
+
+}
+
+void dmaBvhSubTreeHeaders (btBvhSubtreeInfo* subTreeHeaders, ppu_address_t subTreePtr, int batchSize, uint32_t dmaTag)
+{
+ cellDmaGet(subTreeHeaders, subTreePtr, batchSize * sizeof(btBvhSubtreeInfo), DMA_TAG(dmaTag), 0, 0);
+}
+
+void dmaBvhSubTreeNodes (btQuantizedBvhNode* nodes, const btBvhSubtreeInfo& subtree, QuantizedNodeArray& nodeArray, int dmaTag)
+{
+ cellDmaGet(nodes, reinterpret_cast<ppu_address_t>(&nodeArray[subtree.m_rootNodeIndex]) , subtree.m_subtreeSize* sizeof(btQuantizedBvhNode), DMA_TAG(2), 0, 0);
+}
+
+///getShapeTypeSize could easily be optimized, but it is not likely a bottleneck
+int getShapeTypeSize(int shapeType)
+{
+
+
+ switch (shapeType)
+ {
+ case CYLINDER_SHAPE_PROXYTYPE:
+ {
+ int shapeSize = sizeof(btCylinderShape);
+ btAssert(shapeSize < MAX_SHAPE_SIZE);
+ return shapeSize;
+ }
+ case BOX_SHAPE_PROXYTYPE:
+ {
+ int shapeSize = sizeof(btBoxShape);
+ btAssert(shapeSize < MAX_SHAPE_SIZE);
+ return shapeSize;
+ }
+ case SPHERE_SHAPE_PROXYTYPE:
+ {
+ int shapeSize = sizeof(btSphereShape);
+ btAssert(shapeSize < MAX_SHAPE_SIZE);
+ return shapeSize;
+ }
+ case TRIANGLE_MESH_SHAPE_PROXYTYPE:
+ {
+ int shapeSize = sizeof(btBvhTriangleMeshShape);
+ btAssert(shapeSize < MAX_SHAPE_SIZE);
+ return shapeSize;
+ }
+ case CAPSULE_SHAPE_PROXYTYPE:
+ {
+ int shapeSize = sizeof(btCapsuleShape);
+ btAssert(shapeSize < MAX_SHAPE_SIZE);
+ return shapeSize;
+ }
+
+ case CONVEX_HULL_SHAPE_PROXYTYPE:
+ {
+ int shapeSize = sizeof(btConvexHullShape);
+ btAssert(shapeSize < MAX_SHAPE_SIZE);
+ return shapeSize;
+ }
+
+ case COMPOUND_SHAPE_PROXYTYPE:
+ {
+ int shapeSize = sizeof(btCompoundShape);
+ btAssert(shapeSize < MAX_SHAPE_SIZE);
+ return shapeSize;
+ }
+ case STATIC_PLANE_PROXYTYPE:
+ {
+ int shapeSize = sizeof(btStaticPlaneShape);
+ btAssert(shapeSize < MAX_SHAPE_SIZE);
+ return shapeSize;
+ }
+
+ default:
+ btAssert(0);
+ //unsupported shapetype, please add here
+ return 0;
+ }
+}
+
+void dmaConvexVertexData (SpuConvexPolyhedronVertexData* convexVertexData, btConvexHullShape* convexShapeSPU)
+{
+ convexVertexData->gNumConvexPoints = convexShapeSPU->getNumPoints();
+ if (convexVertexData->gNumConvexPoints>MAX_NUM_SPU_CONVEX_POINTS)
+ {
+ btAssert(0);
+ // spu_printf("SPU: Error: MAX_NUM_SPU_CONVEX_POINTS(%d) exceeded: %d\n",MAX_NUM_SPU_CONVEX_POINTS,convexVertexData->gNumConvexPoints);
+ return;
+ }
+
+ register int dmaSize = convexVertexData->gNumConvexPoints*sizeof(btVector3);
+ ppu_address_t pointsPPU = (ppu_address_t) convexShapeSPU->getUnscaledPoints();
+ cellDmaGet(&convexVertexData->g_convexPointBuffer[0], pointsPPU , dmaSize, DMA_TAG(2), 0, 0);
+}
+
+void dmaCollisionShape (void* collisionShapeLocation, ppu_address_t collisionShapePtr, uint32_t dmaTag, int shapeType)
+{
+ register int dmaSize = getShapeTypeSize(shapeType);
+ cellDmaGet(collisionShapeLocation, collisionShapePtr , dmaSize, DMA_TAG(dmaTag), 0, 0);
+ //cellDmaGetReadOnly(collisionShapeLocation, collisionShapePtr , dmaSize, DMA_TAG(dmaTag), 0, 0);
+ //cellDmaWaitTagStatusAll(DMA_MASK(dmaTag));
+}
+
+void dmaCompoundShapeInfo (CompoundShape_LocalStoreMemory* compoundShapeLocation, btCompoundShape* spuCompoundShape, uint32_t dmaTag)
+{
+ register int dmaSize;
+ register ppu_address_t dmaPpuAddress2;
+ int childShapeCount = spuCompoundShape->getNumChildShapes();
+ dmaSize = childShapeCount * sizeof(btCompoundShapeChild);
+ dmaPpuAddress2 = (ppu_address_t)spuCompoundShape->getChildList();
+ cellDmaGet(&compoundShapeLocation->gSubshapes[0], dmaPpuAddress2, dmaSize, DMA_TAG(dmaTag), 0, 0);
+}
+
+void dmaCompoundSubShapes (CompoundShape_LocalStoreMemory* compoundShapeLocation, btCompoundShape* spuCompoundShape, uint32_t dmaTag)
+{
+ int childShapeCount = spuCompoundShape->getNumChildShapes();
+ int i;
+ // DMA all the subshapes
+ for ( i = 0; i < childShapeCount; ++i)
+ {
+ btCompoundShapeChild& childShape = compoundShapeLocation->gSubshapes[i];
+ dmaCollisionShape (&compoundShapeLocation->gSubshapeShape[i],(ppu_address_t)childShape.m_childShape, dmaTag, childShape.m_childShapeType);
+ }
+}
+
+
+void spuWalkStacklessQuantizedTree(btNodeOverlapCallback* nodeCallback,unsigned short int* quantizedQueryAabbMin,unsigned short int* quantizedQueryAabbMax,const btQuantizedBvhNode* rootNode,int startNodeIndex,int endNodeIndex)
+{
+
+ int curIndex = startNodeIndex;
+ int walkIterations = 0;
+#ifdef BT_DEBUG
+ int subTreeSize = endNodeIndex - startNodeIndex;
+#endif
+
+ int escapeIndex;
+
+ unsigned int aabbOverlap, isLeafNode;
+
+ while (curIndex < endNodeIndex)
+ {
+ //catch bugs in tree data
+ btAssert (walkIterations < subTreeSize);
+
+ walkIterations++;
+ aabbOverlap = spuTestQuantizedAabbAgainstQuantizedAabb(quantizedQueryAabbMin,quantizedQueryAabbMax,rootNode->m_quantizedAabbMin,rootNode->m_quantizedAabbMax);
+ isLeafNode = rootNode->isLeafNode();
+
+ if (isLeafNode && aabbOverlap)
+ {
+ //printf("overlap with node %d\n",rootNode->getTriangleIndex());
+ nodeCallback->processNode(0,rootNode->getTriangleIndex());
+ // spu_printf("SPU: overlap detected with triangleIndex:%d\n",rootNode->getTriangleIndex());
+ }
+
+ if (aabbOverlap || isLeafNode)
+ {
+ rootNode++;
+ curIndex++;
+ } else
+ {
+ escapeIndex = rootNode->getEscapeIndex();
+ rootNode += escapeIndex;
+ curIndex += escapeIndex;
+ }
+ }
+
+}
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+#ifndef __SPU_COLLISION_SHAPES_H
+#define __SPU_COLLISION_SHAPES_H
+
+#include "../SpuDoubleBuffer.h"
+
+#include "BulletCollision/BroadphaseCollision/btBroadphaseProxy.h"
+#include "BulletCollision/CollisionShapes/btConvexInternalShape.h"
+#include "BulletCollision/CollisionShapes/btCylinderShape.h"
+#include "BulletCollision/CollisionShapes/btStaticPlaneShape.h"
+
+#include "BulletCollision/CollisionShapes/btOptimizedBvh.h"
+#include "BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h"
+#include "BulletCollision/CollisionShapes/btSphereShape.h"
+
+#include "BulletCollision/CollisionShapes/btCapsuleShape.h"
+
+#include "BulletCollision/CollisionShapes/btConvexShape.h"
+#include "BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h"
+#include "BulletCollision/CollisionShapes/btConvexHullShape.h"
+#include "BulletCollision/CollisionShapes/btCompoundShape.h"
+
+#define MAX_NUM_SPU_CONVEX_POINTS 128 //@fallback to PPU if a btConvexHullShape has more than MAX_NUM_SPU_CONVEX_POINTS points
+#define MAX_SPU_COMPOUND_SUBSHAPES 16 //@fallback on PPU if compound has more than MAX_SPU_COMPOUND_SUBSHAPES child shapes
+#define MAX_SHAPE_SIZE 256 //@todo: assert on this
+
+ATTRIBUTE_ALIGNED16(struct) SpuConvexPolyhedronVertexData
+{
+ void* gSpuConvexShapePtr;
+ btVector3* gConvexPoints;
+ int gNumConvexPoints;
+ int unused;
+ ATTRIBUTE_ALIGNED16(btVector3 g_convexPointBuffer[MAX_NUM_SPU_CONVEX_POINTS]);
+};
+
+
+
+ATTRIBUTE_ALIGNED16(struct) CollisionShape_LocalStoreMemory
+{
+ ATTRIBUTE_ALIGNED16(char collisionShape[MAX_SHAPE_SIZE]);
+};
+
+ATTRIBUTE_ALIGNED16(struct) CompoundShape_LocalStoreMemory
+{
+ // Compound data
+
+ ATTRIBUTE_ALIGNED16(btCompoundShapeChild gSubshapes[MAX_SPU_COMPOUND_SUBSHAPES]);
+ ATTRIBUTE_ALIGNED16(char gSubshapeShape[MAX_SPU_COMPOUND_SUBSHAPES][MAX_SHAPE_SIZE]);
+};
+
+ATTRIBUTE_ALIGNED16(struct) bvhMeshShape_LocalStoreMemory
+{
+ //ATTRIBUTE_ALIGNED16(btOptimizedBvh gOptimizedBvh);
+ ATTRIBUTE_ALIGNED16(char gOptimizedBvh[sizeof(btOptimizedBvh)+16]);
+ btOptimizedBvh* getOptimizedBvh()
+ {
+ return (btOptimizedBvh*) gOptimizedBvh;
+ }
+
+ ATTRIBUTE_ALIGNED16(btTriangleIndexVertexArray gTriangleMeshInterfaceStorage);
+ btTriangleIndexVertexArray* gTriangleMeshInterfacePtr;
+ ///only a single mesh part for now, we can add support for multiple parts, but quantized trees don't support this at the moment
+ ATTRIBUTE_ALIGNED16(btIndexedMesh gIndexMesh);
+ #define MAX_SPU_SUBTREE_HEADERS 32
+ //1024
+ ATTRIBUTE_ALIGNED16(btBvhSubtreeInfo gSubtreeHeaders[MAX_SPU_SUBTREE_HEADERS]);
+ ATTRIBUTE_ALIGNED16(btQuantizedBvhNode gSubtreeNodes[MAX_SUBTREE_SIZE_IN_BYTES/sizeof(btQuantizedBvhNode)]);
+};
+
+
+void computeAabb (btVector3& aabbMin, btVector3& aabbMax, btConvexInternalShape* convexShape, ppu_address_t convexShapePtr, int shapeType, const btTransform& xform);
+void dmaBvhShapeData (bvhMeshShape_LocalStoreMemory* bvhMeshShape, btBvhTriangleMeshShape* triMeshShape);
+void dmaBvhIndexedMesh (btIndexedMesh* IndexMesh, IndexedMeshArray& indexArray, int index, uint32_t dmaTag);
+void dmaBvhSubTreeHeaders (btBvhSubtreeInfo* subTreeHeaders, ppu_address_t subTreePtr, int batchSize, uint32_t dmaTag);
+void dmaBvhSubTreeNodes (btQuantizedBvhNode* nodes, const btBvhSubtreeInfo& subtree, QuantizedNodeArray& nodeArray, int dmaTag);
+
+int getShapeTypeSize(int shapeType);
+void dmaConvexVertexData (SpuConvexPolyhedronVertexData* convexVertexData, btConvexHullShape* convexShapeSPU);
+void dmaCollisionShape (void* collisionShapeLocation, ppu_address_t collisionShapePtr, uint32_t dmaTag, int shapeType);
+void dmaCompoundShapeInfo (CompoundShape_LocalStoreMemory* compoundShapeLocation, btCompoundShape* spuCompoundShape, uint32_t dmaTag);
+void dmaCompoundSubShapes (CompoundShape_LocalStoreMemory* compoundShapeLocation, btCompoundShape* spuCompoundShape, uint32_t dmaTag);
+
+
+#define USE_BRANCHFREE_TEST 1
+#ifdef USE_BRANCHFREE_TEST
+SIMD_FORCE_INLINE unsigned int spuTestQuantizedAabbAgainstQuantizedAabb(unsigned short int* aabbMin1,unsigned short int* aabbMax1,const unsigned short int* aabbMin2,const unsigned short int* aabbMax2)
+{
+#if defined(__CELLOS_LV2__) && defined (__SPU__)
+ vec_ushort8 vecMin = {aabbMin1[0],aabbMin2[0],aabbMin1[2],aabbMin2[2],aabbMin1[1],aabbMin2[1],0,0};
+ vec_ushort8 vecMax = {aabbMax2[0],aabbMax1[0],aabbMax2[2],aabbMax1[2],aabbMax2[1],aabbMax1[1],0,0};
+ vec_ushort8 isGt = spu_cmpgt(vecMin,vecMax);
+ return spu_extract(spu_gather(isGt),0)==0;
+
+#else
+ return btSelect((unsigned)((aabbMin1[0] <= aabbMax2[0]) & (aabbMax1[0] >= aabbMin2[0])
+ & (aabbMin1[2] <= aabbMax2[2]) & (aabbMax1[2] >= aabbMin2[2])
+ & (aabbMin1[1] <= aabbMax2[1]) & (aabbMax1[1] >= aabbMin2[1])),
+ 1, 0);
+#endif
+}
+#else
+
+SIMD_FORCE_INLINE unsigned int spuTestQuantizedAabbAgainstQuantizedAabb(const unsigned short int* aabbMin1,const unsigned short int* aabbMax1,const unsigned short int* aabbMin2,const unsigned short int* aabbMax2)
+{
+ unsigned int overlap = 1;
+ overlap = (aabbMin1[0] > aabbMax2[0] || aabbMax1[0] < aabbMin2[0]) ? 0 : overlap;
+ overlap = (aabbMin1[2] > aabbMax2[2] || aabbMax1[2] < aabbMin2[2]) ? 0 : overlap;
+ overlap = (aabbMin1[1] > aabbMax2[1] || aabbMax1[1] < aabbMin2[1]) ? 0 : overlap;
+ return overlap;
+}
+#endif
+
+void spuWalkStacklessQuantizedTree(btNodeOverlapCallback* nodeCallback,unsigned short int* quantizedQueryAabbMin,unsigned short int* quantizedQueryAabbMax,const btQuantizedBvhNode* rootNode,int startNodeIndex,int endNodeIndex);
+
+#endif
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "SpuContactResult.h"
+
+//#define DEBUG_SPU_COLLISION_DETECTION 1
+
+#ifdef DEBUG_SPU_COLLISION_DETECTION
+#ifndef __SPU__
+#include <stdio.h>
+#define spu_printf printf
+#endif
+#endif //DEBUG_SPU_COLLISION_DETECTION
+
+SpuContactResult::SpuContactResult()
+{
+ m_manifoldAddress = 0;
+ m_spuManifold = NULL;
+ m_RequiresWriteBack = false;
+}
+
+ SpuContactResult::~SpuContactResult()
+{
+ g_manifoldDmaExport.swapBuffers();
+}
+
+ ///User can override this material combiner by implementing gContactAddedCallback and setting body0->m_collisionFlags |= btCollisionObject::customMaterialCallback;
+inline btScalar calculateCombinedFriction(btScalar friction0,btScalar friction1)
+{
+ btScalar friction = friction0*friction1;
+
+ const btScalar MAX_FRICTION = btScalar(10.);
+
+ if (friction < -MAX_FRICTION)
+ friction = -MAX_FRICTION;
+ if (friction > MAX_FRICTION)
+ friction = MAX_FRICTION;
+ return friction;
+
+}
+
+inline btScalar calculateCombinedRestitution(btScalar restitution0,btScalar restitution1)
+{
+ return restitution0*restitution1;
+}
+
+
+
+ void SpuContactResult::setContactInfo(btPersistentManifold* spuManifold, ppu_address_t manifoldAddress,const btTransform& worldTrans0,const btTransform& worldTrans1, btScalar restitution0,btScalar restitution1, btScalar friction0,btScalar friction1, bool isSwapped)
+ {
+ //spu_printf("SpuContactResult::setContactInfo ManifoldAddress: %lu\n", manifoldAddress);
+ m_rootWorldTransform0 = worldTrans0;
+ m_rootWorldTransform1 = worldTrans1;
+ m_manifoldAddress = manifoldAddress;
+ m_spuManifold = spuManifold;
+
+ m_combinedFriction = calculateCombinedFriction(friction0,friction1);
+ m_combinedRestitution = calculateCombinedRestitution(restitution0,restitution1);
+ m_isSwapped = isSwapped;
+ }
+
+ void SpuContactResult::setShapeIdentifiersA(int partId0,int index0)
+ {
+
+ }
+
+ void SpuContactResult::setShapeIdentifiersB(int partId1,int index1)
+ {
+
+ }
+
+
+
+ ///return true if it requires a dma transfer back
+bool ManifoldResultAddContactPoint(const btVector3& normalOnBInWorld,
+ const btVector3& pointInWorld,
+ float depth,
+ btPersistentManifold* manifoldPtr,
+ btTransform& transA,
+ btTransform& transB,
+ btScalar combinedFriction,
+ btScalar combinedRestitution,
+ bool isSwapped)
+{
+
+// float contactTreshold = manifoldPtr->getContactBreakingThreshold();
+
+ //spu_printf("SPU: add contactpoint, depth:%f, contactTreshold %f, manifoldPtr %llx\n",depth,contactTreshold,manifoldPtr);
+
+#ifdef DEBUG_SPU_COLLISION_DETECTION
+ spu_printf("SPU: contactTreshold %f\n",contactTreshold);
+#endif //DEBUG_SPU_COLLISION_DETECTION
+ if (depth > manifoldPtr->getContactBreakingThreshold())
+ return false;
+
+ //if (depth > manifoldPtr->getContactProcessingThreshold())
+ // return false;
+
+
+
+ btVector3 pointA;
+ btVector3 localA;
+ btVector3 localB;
+ btVector3 normal;
+
+
+ if (isSwapped)
+ {
+ normal = normalOnBInWorld * -1;
+ pointA = pointInWorld + normal * depth;
+ localA = transA.invXform(pointA );
+ localB = transB.invXform(pointInWorld);
+ }
+ else
+ {
+ normal = normalOnBInWorld;
+ pointA = pointInWorld + normal * depth;
+ localA = transA.invXform(pointA );
+ localB = transB.invXform(pointInWorld);
+ }
+
+ btManifoldPoint newPt(localA,localB,normal,depth);
+ newPt.m_positionWorldOnA = pointA;
+ newPt.m_positionWorldOnB = pointInWorld;
+
+ newPt.m_combinedFriction = combinedFriction;
+ newPt.m_combinedRestitution = combinedRestitution;
+
+
+ int insertIndex = manifoldPtr->getCacheEntry(newPt);
+ if (insertIndex >= 0)
+ {
+ // we need to replace the current contact point, otherwise small errors will accumulate (spheres start rolling etc)
+ manifoldPtr->replaceContactPoint(newPt,insertIndex);
+ return true;
+
+ } else
+ {
+
+ /*
+ ///@todo: SPU callbacks, either immediate (local on the SPU), or deferred
+ //User can override friction and/or restitution
+ if (gContactAddedCallback &&
+ //and if either of the two bodies requires custom material
+ ((m_body0->m_collisionFlags & btCollisionObject::customMaterialCallback) ||
+ (m_body1->m_collisionFlags & btCollisionObject::customMaterialCallback)))
+ {
+ //experimental feature info, for per-triangle material etc.
+ (*gContactAddedCallback)(newPt,m_body0,m_partId0,m_index0,m_body1,m_partId1,m_index1);
+ }
+ */
+
+ manifoldPtr->addManifoldPoint(newPt);
+ return true;
+
+ }
+ return false;
+
+}
+
+
+void SpuContactResult::writeDoubleBufferedManifold(btPersistentManifold* lsManifold, btPersistentManifold* mmManifold)
+{
+ ///only write back the contact information on SPU. Other platforms avoid copying, and use the data in-place
+ ///see SpuFakeDma.cpp 'cellDmaLargeGetReadOnly'
+#if defined (__SPU__) || defined (USE_LIBSPE2)
+ memcpy(g_manifoldDmaExport.getFront(),lsManifold,sizeof(btPersistentManifold));
+
+ g_manifoldDmaExport.swapBuffers();
+ ppu_address_t mmAddr = (ppu_address_t)mmManifold;
+ g_manifoldDmaExport.backBufferDmaPut(mmAddr, sizeof(btPersistentManifold), DMA_TAG(9));
+ // Should there be any kind of wait here? What if somebody tries to use this tag again? What if we call this function again really soon?
+ //no, the swapBuffers does the wait
+#endif
+}
+
+void SpuContactResult::addContactPoint(const btVector3& normalOnBInWorld,const btVector3& pointInWorld,btScalar depth)
+{
+#ifdef DEBUG_SPU_COLLISION_DETECTION
+ spu_printf("*** SpuContactResult::addContactPoint: depth = %f\n",depth);
+ spu_printf("*** normal = %f,%f,%f\n",normalOnBInWorld.getX(),normalOnBInWorld.getY(),normalOnBInWorld.getZ());
+ spu_printf("*** position = %f,%f,%f\n",pointInWorld.getX(),pointInWorld.getY(),pointInWorld.getZ());
+#endif //DEBUG_SPU_COLLISION_DETECTION
+
+
+#ifdef DEBUG_SPU_COLLISION_DETECTION
+ // int sman = sizeof(rage::phManifold);
+// spu_printf("sizeof_manifold = %i\n",sman);
+#endif //DEBUG_SPU_COLLISION_DETECTION
+
+ btPersistentManifold* localManifold = m_spuManifold;
+
+ btVector3 normalB(normalOnBInWorld.getX(),normalOnBInWorld.getY(),normalOnBInWorld.getZ());
+ btVector3 pointWrld(pointInWorld.getX(),pointInWorld.getY(),pointInWorld.getZ());
+
+ //process the contact point
+ const bool retVal = ManifoldResultAddContactPoint(normalB,
+ pointWrld,
+ depth,
+ localManifold,
+ m_rootWorldTransform0,
+ m_rootWorldTransform1,
+ m_combinedFriction,
+ m_combinedRestitution,
+ m_isSwapped);
+ m_RequiresWriteBack = m_RequiresWriteBack || retVal;
+}
+
+void SpuContactResult::flush()
+{
+
+ if (m_spuManifold && m_spuManifold->getNumContacts())
+ {
+ m_spuManifold->refreshContactPoints(m_rootWorldTransform0,m_rootWorldTransform1);
+ m_RequiresWriteBack = true;
+ }
+
+
+ if (m_RequiresWriteBack)
+ {
+#ifdef DEBUG_SPU_COLLISION_DETECTION
+ spu_printf("SPU: Start SpuContactResult::flush (Put) DMA\n");
+ spu_printf("Num contacts:%d\n", m_spuManifold->getNumContacts());
+ spu_printf("Manifold address: %llu\n", m_manifoldAddress);
+#endif //DEBUG_SPU_COLLISION_DETECTION
+ // spu_printf("writeDoubleBufferedManifold\n");
+ writeDoubleBufferedManifold(m_spuManifold, (btPersistentManifold*)m_manifoldAddress);
+#ifdef DEBUG_SPU_COLLISION_DETECTION
+ spu_printf("SPU: Finished (Put) DMA\n");
+#endif //DEBUG_SPU_COLLISION_DETECTION
+ }
+ m_spuManifold = NULL;
+ m_RequiresWriteBack = false;
+}
+
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef SPU_CONTACT_RESULT2_H
+#define SPU_CONTACT_RESULT2_H
+
+
+#ifndef _WIN32
+#include <stdint.h>
+#endif
+
+
+
+#include "../SpuDoubleBuffer.h"
+
+
+#include "LinearMath/btTransform.h"
+
+
+#include "BulletCollision/NarrowPhaseCollision/btPersistentManifold.h"
+#include "BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h"
+
+class btCollisionShape;
+
+
+struct SpuCollisionPairInput
+{
+ ppu_address_t m_collisionShapes[2];
+ btCollisionShape* m_spuCollisionShapes[2];
+
+ ppu_address_t m_persistentManifoldPtr;
+ btVector3 m_primitiveDimensions0;
+ btVector3 m_primitiveDimensions1;
+ int m_shapeType0;
+ int m_shapeType1;
+ float m_collisionMargin0;
+ float m_collisionMargin1;
+
+ btTransform m_worldTransform0;
+ btTransform m_worldTransform1;
+
+ bool m_isSwapped;
+ bool m_useEpa;
+};
+
+
+struct SpuClosestPointInput : public btDiscreteCollisionDetectorInterface::ClosestPointInput
+{
+ struct SpuConvexPolyhedronVertexData* m_convexVertexData[2];
+};
+
+///SpuContactResult exports the contact points using double-buffered DMA transfers, only when needed
+///So when an existing contact point is duplicated, no transfer/refresh is performed.
+class SpuContactResult : public btDiscreteCollisionDetectorInterface::Result
+{
+ btTransform m_rootWorldTransform0;
+ btTransform m_rootWorldTransform1;
+ ppu_address_t m_manifoldAddress;
+
+ btPersistentManifold* m_spuManifold;
+ bool m_RequiresWriteBack;
+ btScalar m_combinedFriction;
+ btScalar m_combinedRestitution;
+
+ bool m_isSwapped;
+
+ DoubleBuffer<btPersistentManifold, 1> g_manifoldDmaExport;
+
+ public:
+ SpuContactResult();
+ virtual ~SpuContactResult();
+
+ btPersistentManifold* GetSpuManifold() const
+ {
+ return m_spuManifold;
+ }
+
+ virtual void setShapeIdentifiersA(int partId0,int index0);
+ virtual void setShapeIdentifiersB(int partId1,int index1);
+
+ void setContactInfo(btPersistentManifold* spuManifold, ppu_address_t manifoldAddress,const btTransform& worldTrans0,const btTransform& worldTrans1, btScalar restitution0,btScalar restitution1, btScalar friction0,btScalar friction01, bool isSwapped);
+
+
+ void writeDoubleBufferedManifold(btPersistentManifold* lsManifold, btPersistentManifold* mmManifold);
+
+ virtual void addContactPoint(const btVector3& normalOnBInWorld,const btVector3& pointInWorld,btScalar depth);
+
+ void flush();
+};
+
+
+
+#endif //SPU_CONTACT_RESULT2_H
+
--- /dev/null
+
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+
+#ifndef SPU_CONVEX_PENETRATION_DEPTH_H
+#define SPU_CONVEX_PENETRATION_DEPTH_H
+
+
+
+class btStackAlloc;
+class btIDebugDraw;
+#include "BulletCollision/NarrowphaseCollision/btConvexPenetrationDepthSolver.h"
+
+#include "LinearMath/btTransform.h"
+
+
+///ConvexPenetrationDepthSolver provides an interface for penetration depth calculation.
+class SpuConvexPenetrationDepthSolver : public btConvexPenetrationDepthSolver
+{
+public:
+
+ virtual ~SpuConvexPenetrationDepthSolver() {};
+ virtual bool calcPenDepth( SpuVoronoiSimplexSolver& simplexSolver,
+ void* convexA,void* convexB,int shapeTypeA, int shapeTypeB, float marginA, float marginB,
+ btTransform& transA,const btTransform& transB,
+ btVector3& v, btVector3& pa, btVector3& pb,
+ class btIDebugDraw* debugDraw,btStackAlloc* stackAlloc,
+ struct SpuConvexPolyhedronVertexData* convexVertexDataA,
+ struct SpuConvexPolyhedronVertexData* convexVertexDataB
+ ) const = 0;
+
+
+};
+
+
+
+#endif //SPU_CONVEX_PENETRATION_DEPTH_H
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "SpuGatheringCollisionTask.h"
+
+//#define DEBUG_SPU_COLLISION_DETECTION 1
+#include "../SpuDoubleBuffer.h"
+
+#include "../SpuCollisionTaskProcess.h"
+#include "../SpuGatheringCollisionDispatcher.h" //for SPU_BATCHSIZE_BROADPHASE_PAIRS
+
+#include "BulletCollision/BroadphaseCollision/btBroadphaseProxy.h"
+#include "../SpuContactManifoldCollisionAlgorithm.h"
+#include "BulletCollision/CollisionDispatch/btCollisionObject.h"
+#include "SpuContactResult.h"
+#include "BulletCollision/CollisionShapes/btOptimizedBvh.h"
+#include "BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h"
+#include "BulletCollision/CollisionShapes/btSphereShape.h"
+#include "BulletCollision/CollisionShapes/btConvexPointCloudShape.h"
+
+#include "BulletCollision/CollisionShapes/btCapsuleShape.h"
+
+#include "BulletCollision/CollisionShapes/btConvexShape.h"
+#include "BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h"
+#include "BulletCollision/CollisionShapes/btConvexHullShape.h"
+#include "BulletCollision/CollisionShapes/btCompoundShape.h"
+
+#include "SpuMinkowskiPenetrationDepthSolver.h"
+//#include "SpuEpaPenetrationDepthSolver.h"
+#include "BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h"
+
+
+#include "boxBoxDistance.h"
+#include "BulletMultiThreaded/vectormath2bullet.h"
+#include "SpuCollisionShapes.h" //definition of SpuConvexPolyhedronVertexData
+#include "BulletCollision/CollisionDispatch/btBoxBoxDetector.h"
+#include "BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h"
+#include "BulletCollision/CollisionShapes/btTriangleShape.h"
+
+#ifdef __SPU__
+///Software caching from the IBM Cell SDK, it reduces 25% SPU time for our test cases
+#ifndef USE_LIBSPE2
+//#define USE_SOFTWARE_CACHE 1
+#endif
+#endif //__SPU__
+
+int gSkippedCol = 0;
+int gProcessedCol = 0;
+
+////////////////////////////////////////////////
+/// software caching
+#if USE_SOFTWARE_CACHE
+#include <spu_intrinsics.h>
+#include <sys/spu_thread.h>
+#include <sys/spu_event.h>
+#include <stdint.h>
+#define SPE_CACHE_NWAY 4
+//#define SPE_CACHE_NSETS 32, 16
+#define SPE_CACHE_NSETS 8
+//#define SPE_CACHELINE_SIZE 512
+#define SPE_CACHELINE_SIZE 128
+#define SPE_CACHE_SET_TAGID(set) 15
+///make sure that spe_cache.h is below those defines!
+#include "../Extras/software_cache/cache/include/spe_cache.h"
+
+
+int g_CacheMisses=0;
+int g_CacheHits=0;
+
+#if 0 // Added to allow cache misses and hits to be tracked, change this to 1 to restore unmodified version
+#define spe_cache_read(ea) _spe_cache_lookup_xfer_wait_(ea, 0, 1)
+#else
+#define spe_cache_read(ea) \
+({ \
+ int set, idx, line, byte; \
+ _spe_cache_nway_lookup_(ea, set, idx); \
+ \
+ if (btUnlikely(idx < 0)) { \
+ ++g_CacheMisses; \
+ idx = _spe_cache_miss_(ea, set, -1); \
+ spu_writech(22, SPE_CACHE_SET_TAGMASK(set)); \
+ spu_mfcstat(MFC_TAG_UPDATE_ALL); \
+ } \
+ else \
+ { \
+ ++g_CacheHits; \
+ } \
+ line = _spe_cacheline_num_(set, idx); \
+ byte = _spe_cacheline_byte_offset_(ea); \
+ (void *) &spe_cache_mem[line + byte]; \
+})
+
+#endif
+
+#endif // USE_SOFTWARE_CACHE
+
+bool gUseEpa = false;
+
+#ifdef USE_SN_TUNER
+#include <LibSN_SPU.h>
+#endif //USE_SN_TUNER
+
+#if defined (__SPU__) && !defined (USE_LIBSPE2)
+#include <spu_printf.h>
+#elif defined (USE_LIBSPE2)
+#define spu_printf(a)
+#else
+#define IGNORE_ALIGNMENT 1
+#include <stdio.h>
+#include <stdlib.h>
+#define spu_printf printf
+
+#endif
+
+//int gNumConvexPoints0=0;
+
+///Make sure no destructors are called on this memory
+struct CollisionTask_LocalStoreMemory
+{
+ ///This CollisionTask_LocalStoreMemory is mainly used for the SPU version, using explicit DMA
+ ///Other platforms can use other memory programming models.
+
+ ATTRIBUTE_ALIGNED16(btBroadphasePair gBroadphasePairsBuffer[SPU_BATCHSIZE_BROADPHASE_PAIRS]);
+ DoubleBuffer<unsigned char, MIDPHASE_WORKUNIT_PAGE_SIZE> g_workUnitTaskBuffers;
+ ATTRIBUTE_ALIGNED16(char gSpuContactManifoldAlgoBuffer [sizeof(SpuContactManifoldCollisionAlgorithm)+16]);
+ ATTRIBUTE_ALIGNED16(char gColObj0Buffer [sizeof(btCollisionObject)+16]);
+ ATTRIBUTE_ALIGNED16(char gColObj1Buffer [sizeof(btCollisionObject)+16]);
+ ///we reserve 32bit integer indices, even though they might be 16bit
+ ATTRIBUTE_ALIGNED16(int spuIndices[16]);
+ btPersistentManifold gPersistentManifoldBuffer;
+ CollisionShape_LocalStoreMemory gCollisionShapes[2];
+ bvhMeshShape_LocalStoreMemory bvhShapeData;
+ SpuConvexPolyhedronVertexData convexVertexData[2];
+ CompoundShape_LocalStoreMemory compoundShapeData[2];
+
+ ///The following pointers might either point into this local store memory, or to the original/other memory locations.
+ ///See SpuFakeDma for implementation of cellDmaSmallGetReadOnly.
+ btCollisionObject* m_lsColObj0Ptr;
+ btCollisionObject* m_lsColObj1Ptr;
+ btBroadphasePair* m_pairsPointer;
+ btPersistentManifold* m_lsManifoldPtr;
+ SpuContactManifoldCollisionAlgorithm* m_lsCollisionAlgorithmPtr;
+
+ bool needsDmaPutContactManifoldAlgo;
+
+ btCollisionObject* getColObj0()
+ {
+ return m_lsColObj0Ptr;
+ }
+ btCollisionObject* getColObj1()
+ {
+ return m_lsColObj1Ptr;
+ }
+
+
+ btBroadphasePair* getBroadphasePairPtr()
+ {
+ return m_pairsPointer;
+ }
+
+ SpuContactManifoldCollisionAlgorithm* getlocalCollisionAlgorithm()
+ {
+ return m_lsCollisionAlgorithmPtr;
+ }
+
+ btPersistentManifold* getContactManifoldPtr()
+ {
+ return m_lsManifoldPtr;
+ }
+};
+
+
+#if defined(__CELLOS_LV2__) || defined(USE_LIBSPE2)
+
+ATTRIBUTE_ALIGNED16(CollisionTask_LocalStoreMemory gLocalStoreMemory);
+
+void* createCollisionLocalStoreMemory()
+{
+ return &gLocalStoreMemory;
+}
+void deleteCollisionLocalStoreMemory()
+{
+}
+#else
+
+btAlignedObjectArray<CollisionTask_LocalStoreMemory*> sLocalStorePointers;
+
+void* createCollisionLocalStoreMemory()
+{
+ CollisionTask_LocalStoreMemory* localStore = new CollisionTask_LocalStoreMemory;
+ sLocalStorePointers.push_back(localStore);
+ return localStore;
+}
+
+void deleteCollisionLocalStoreMemory()
+{
+ for (int i=0;i<sLocalStorePointers.size();i++)
+ {
+ delete sLocalStorePointers[i];
+ }
+ sLocalStorePointers.clear();
+}
+
+#endif
+
+void ProcessSpuConvexConvexCollision(SpuCollisionPairInput* wuInput, CollisionTask_LocalStoreMemory* lsMemPtr, SpuContactResult& spuContacts);
+
+
+SIMD_FORCE_INLINE void small_cache_read(void* buffer, ppu_address_t ea, size_t size)
+{
+#if USE_SOFTWARE_CACHE
+ // Check for alignment requirements. We need to make sure the entire request fits within one cache line,
+ // so the first and last bytes should fall on the same cache line
+ btAssert((ea & ~SPE_CACHELINE_MASK) == ((ea + size - 1) & ~SPE_CACHELINE_MASK));
+
+ void* ls = spe_cache_read(ea);
+ memcpy(buffer, ls, size);
+#else
+ stallingUnalignedDmaSmallGet(buffer,ea,size);
+#endif
+}
+
+SIMD_FORCE_INLINE void small_cache_read_triple( void* ls0, ppu_address_t ea0,
+ void* ls1, ppu_address_t ea1,
+ void* ls2, ppu_address_t ea2,
+ size_t size)
+{
+ btAssert(size<16);
+ ATTRIBUTE_ALIGNED16(char tmpBuffer0[32]);
+ ATTRIBUTE_ALIGNED16(char tmpBuffer1[32]);
+ ATTRIBUTE_ALIGNED16(char tmpBuffer2[32]);
+
+ uint32_t i;
+
+
+ ///make sure last 4 bits are the same, for cellDmaSmallGet
+ char* localStore0 = (char*)ls0;
+ uint32_t last4BitsOffset = ea0 & 0x0f;
+ char* tmpTarget0 = tmpBuffer0 + last4BitsOffset;
+#ifdef __SPU__
+ cellDmaSmallGet(tmpTarget0,ea0,size,DMA_TAG(1),0,0);
+#else
+ tmpTarget0 = (char*)cellDmaSmallGetReadOnly(tmpTarget0,ea0,size,DMA_TAG(1),0,0);
+#endif
+
+
+ char* localStore1 = (char*)ls1;
+ last4BitsOffset = ea1 & 0x0f;
+ char* tmpTarget1 = tmpBuffer1 + last4BitsOffset;
+#ifdef __SPU__
+ cellDmaSmallGet(tmpTarget1,ea1,size,DMA_TAG(1),0,0);
+#else
+ tmpTarget1 = (char*)cellDmaSmallGetReadOnly(tmpTarget1,ea1,size,DMA_TAG(1),0,0);
+#endif
+
+ char* localStore2 = (char*)ls2;
+ last4BitsOffset = ea2 & 0x0f;
+ char* tmpTarget2 = tmpBuffer2 + last4BitsOffset;
+#ifdef __SPU__
+ cellDmaSmallGet(tmpTarget2,ea2,size,DMA_TAG(1),0,0);
+#else
+ tmpTarget2 = (char*)cellDmaSmallGetReadOnly(tmpTarget2,ea2,size,DMA_TAG(1),0,0);
+#endif
+
+
+ cellDmaWaitTagStatusAll( DMA_MASK(1) );
+
+ //this is slowish, perhaps memcpy on SPU is smarter?
+ for (i=0; btLikely( i<size );i++)
+ {
+ localStore0[i] = tmpTarget0[i];
+ localStore1[i] = tmpTarget1[i];
+ localStore2[i] = tmpTarget2[i];
+ }
+
+
+}
+
+
+
+
+class spuNodeCallback : public btNodeOverlapCallback
+{
+ SpuCollisionPairInput* m_wuInput;
+ SpuContactResult& m_spuContacts;
+ CollisionTask_LocalStoreMemory* m_lsMemPtr;
+ ATTRIBUTE_ALIGNED16(btTriangleShape) m_tmpTriangleShape;
+
+ ATTRIBUTE_ALIGNED16(btVector3 spuTriangleVertices[3]);
+ ATTRIBUTE_ALIGNED16(btScalar spuUnscaledVertex[4]);
+
+
+
+public:
+ spuNodeCallback(SpuCollisionPairInput* wuInput, CollisionTask_LocalStoreMemory* lsMemPtr,SpuContactResult& spuContacts)
+ : m_wuInput(wuInput),
+ m_spuContacts(spuContacts),
+ m_lsMemPtr(lsMemPtr)
+ {
+ }
+
+ virtual void processNode(int subPart, int triangleIndex)
+ {
+ ///Create a triangle on the stack, call process collision, with GJK
+ ///DMA the vertices, can benefit from software caching
+
+ // spu_printf("processNode with triangleIndex %d\n",triangleIndex);
+
+ if (m_lsMemPtr->bvhShapeData.gIndexMesh.m_indexType == PHY_SHORT)
+ {
+ unsigned short int* indexBasePtr = (unsigned short int*)(m_lsMemPtr->bvhShapeData.gIndexMesh.m_triangleIndexBase+triangleIndex*m_lsMemPtr->bvhShapeData.gIndexMesh.m_triangleIndexStride);
+ ATTRIBUTE_ALIGNED16(unsigned short int tmpIndices[3]);
+
+ small_cache_read_triple(&tmpIndices[0],(ppu_address_t)&indexBasePtr[0],
+ &tmpIndices[1],(ppu_address_t)&indexBasePtr[1],
+ &tmpIndices[2],(ppu_address_t)&indexBasePtr[2],
+ sizeof(unsigned short int));
+
+ m_lsMemPtr->spuIndices[0] = int(tmpIndices[0]);
+ m_lsMemPtr->spuIndices[1] = int(tmpIndices[1]);
+ m_lsMemPtr->spuIndices[2] = int(tmpIndices[2]);
+ } else
+ {
+ unsigned int* indexBasePtr = (unsigned int*)(m_lsMemPtr->bvhShapeData.gIndexMesh.m_triangleIndexBase+triangleIndex*m_lsMemPtr->bvhShapeData.gIndexMesh.m_triangleIndexStride);
+
+ small_cache_read_triple(&m_lsMemPtr->spuIndices[0],(ppu_address_t)&indexBasePtr[0],
+ &m_lsMemPtr->spuIndices[1],(ppu_address_t)&indexBasePtr[1],
+ &m_lsMemPtr->spuIndices[2],(ppu_address_t)&indexBasePtr[2],
+ sizeof(int));
+ }
+
+ // spu_printf("SPU index0=%d ,",spuIndices[0]);
+ // spu_printf("SPU index1=%d ,",spuIndices[1]);
+ // spu_printf("SPU index2=%d ,",spuIndices[2]);
+ // spu_printf("SPU: indexBasePtr=%llx\n",indexBasePtr);
+
+ const btVector3& meshScaling = m_lsMemPtr->bvhShapeData.gTriangleMeshInterfacePtr->getScaling();
+ for (int j=2;btLikely( j>=0 );j--)
+ {
+ int graphicsindex = m_lsMemPtr->spuIndices[j];
+
+ // spu_printf("SPU index=%d ,",graphicsindex);
+ btScalar* graphicsbasePtr = (btScalar*)(m_lsMemPtr->bvhShapeData.gIndexMesh.m_vertexBase+graphicsindex*m_lsMemPtr->bvhShapeData.gIndexMesh.m_vertexStride);
+ // spu_printf("SPU graphicsbasePtr=%llx\n",graphicsbasePtr);
+
+
+ ///handle un-aligned vertices...
+
+ //another DMA for each vertex
+ small_cache_read_triple(&spuUnscaledVertex[0],(ppu_address_t)&graphicsbasePtr[0],
+ &spuUnscaledVertex[1],(ppu_address_t)&graphicsbasePtr[1],
+ &spuUnscaledVertex[2],(ppu_address_t)&graphicsbasePtr[2],
+ sizeof(btScalar));
+
+ m_tmpTriangleShape.getVertexPtr(j).setValue(spuUnscaledVertex[0]*meshScaling.getX(),
+ spuUnscaledVertex[1]*meshScaling.getY(),
+ spuUnscaledVertex[2]*meshScaling.getZ());
+
+ // spu_printf("SPU:triangle vertices:%f,%f,%f\n",spuTriangleVertices[j].x(),spuTriangleVertices[j].y(),spuTriangleVertices[j].z());
+ }
+
+
+ SpuCollisionPairInput triangleConcaveInput(*m_wuInput);
+// triangleConcaveInput.m_spuCollisionShapes[1] = &spuTriangleVertices[0];
+ triangleConcaveInput.m_spuCollisionShapes[1] = &m_tmpTriangleShape;
+ triangleConcaveInput.m_shapeType1 = TRIANGLE_SHAPE_PROXYTYPE;
+
+ m_spuContacts.setShapeIdentifiersB(subPart,triangleIndex);
+
+ // m_spuContacts.flush();
+
+ ProcessSpuConvexConvexCollision(&triangleConcaveInput, m_lsMemPtr,m_spuContacts);
+ ///this flush should be automatic
+ // m_spuContacts.flush();
+ }
+
+};
+
+
+
+void btConvexPlaneCollideSingleContact (SpuCollisionPairInput* wuInput,CollisionTask_LocalStoreMemory* lsMemPtr,SpuContactResult& spuContacts)
+{
+
+ btConvexShape* convexShape = (btConvexShape*) wuInput->m_spuCollisionShapes[0];
+ btStaticPlaneShape* planeShape = (btStaticPlaneShape*) wuInput->m_spuCollisionShapes[1];
+
+ bool hasCollision = false;
+ const btVector3& planeNormal = planeShape->getPlaneNormal();
+ const btScalar& planeConstant = planeShape->getPlaneConstant();
+
+
+ btTransform convexWorldTransform = wuInput->m_worldTransform0;
+ btTransform convexInPlaneTrans;
+ convexInPlaneTrans= wuInput->m_worldTransform1.inverse() * convexWorldTransform;
+ btTransform planeInConvex;
+ planeInConvex= convexWorldTransform.inverse() * wuInput->m_worldTransform1;
+
+ //btVector3 vtx = convexShape->localGetSupportVertexWithoutMarginNonVirtual(planeInConvex.getBasis()*-planeNormal);
+ btVector3 vtx = convexShape->localGetSupportVertexNonVirtual(planeInConvex.getBasis()*-planeNormal);
+
+ btVector3 vtxInPlane = convexInPlaneTrans(vtx);
+ btScalar distance = (planeNormal.dot(vtxInPlane) - planeConstant);
+
+ btVector3 vtxInPlaneProjected = vtxInPlane - distance*planeNormal;
+ btVector3 vtxInPlaneWorld = wuInput->m_worldTransform1 * vtxInPlaneProjected;
+
+ hasCollision = distance < lsMemPtr->getContactManifoldPtr()->getContactBreakingThreshold();
+ //resultOut->setPersistentManifold(m_manifoldPtr);
+ if (hasCollision)
+ {
+ /// report a contact. internally this will be kept persistent, and contact reduction is done
+ btVector3 normalOnSurfaceB =wuInput->m_worldTransform1.getBasis() * planeNormal;
+ btVector3 pOnB = vtxInPlaneWorld;
+ spuContacts.addContactPoint(normalOnSurfaceB,pOnB,distance);
+ }
+}
+
+void ProcessConvexPlaneSpuCollision(SpuCollisionPairInput* wuInput, CollisionTask_LocalStoreMemory* lsMemPtr, SpuContactResult& spuContacts)
+{
+
+ register int dmaSize = 0;
+ register ppu_address_t dmaPpuAddress2;
+ btPersistentManifold* manifold = (btPersistentManifold*)wuInput->m_persistentManifoldPtr;
+
+ ///DMA in the vertices for convex shapes
+ ATTRIBUTE_ALIGNED16(char convexHullShape0[sizeof(btConvexHullShape)]);
+ ATTRIBUTE_ALIGNED16(char convexHullShape1[sizeof(btConvexHullShape)]);
+
+ if ( btLikely( wuInput->m_shapeType0== CONVEX_HULL_SHAPE_PROXYTYPE ) )
+ {
+ // spu_printf("SPU: DMA btConvexHullShape\n");
+
+ dmaSize = sizeof(btConvexHullShape);
+ dmaPpuAddress2 = wuInput->m_collisionShapes[0];
+
+ cellDmaGet(&convexHullShape0, dmaPpuAddress2 , dmaSize, DMA_TAG(1), 0, 0);
+ //cellDmaWaitTagStatusAll(DMA_MASK(1));
+ }
+
+ if ( btLikely( wuInput->m_shapeType1 == CONVEX_HULL_SHAPE_PROXYTYPE ) )
+ {
+ // spu_printf("SPU: DMA btConvexHullShape\n");
+ dmaSize = sizeof(btConvexHullShape);
+ dmaPpuAddress2 = wuInput->m_collisionShapes[1];
+ cellDmaGet(&convexHullShape1, dmaPpuAddress2 , dmaSize, DMA_TAG(1), 0, 0);
+ //cellDmaWaitTagStatusAll(DMA_MASK(1));
+ }
+
+ if ( btLikely( wuInput->m_shapeType0 == CONVEX_HULL_SHAPE_PROXYTYPE ) )
+ {
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+ dmaConvexVertexData (&lsMemPtr->convexVertexData[0], (btConvexHullShape*)&convexHullShape0);
+ lsMemPtr->convexVertexData[0].gSpuConvexShapePtr = wuInput->m_spuCollisionShapes[0];
+ }
+
+
+ if ( btLikely( wuInput->m_shapeType1 == CONVEX_HULL_SHAPE_PROXYTYPE ) )
+ {
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+ dmaConvexVertexData (&lsMemPtr->convexVertexData[1], (btConvexHullShape*)&convexHullShape1);
+ lsMemPtr->convexVertexData[1].gSpuConvexShapePtr = wuInput->m_spuCollisionShapes[1];
+ }
+
+
+ btConvexPointCloudShape cpc0,cpc1;
+
+ if ( btLikely( wuInput->m_shapeType0 == CONVEX_HULL_SHAPE_PROXYTYPE ) )
+ {
+ cellDmaWaitTagStatusAll(DMA_MASK(2));
+ lsMemPtr->convexVertexData[0].gConvexPoints = &lsMemPtr->convexVertexData[0].g_convexPointBuffer[0];
+ btConvexHullShape* ch = (btConvexHullShape*)wuInput->m_spuCollisionShapes[0];
+ const btVector3& localScaling = ch->getLocalScalingNV();
+ cpc0.setPoints(lsMemPtr->convexVertexData[0].gConvexPoints,lsMemPtr->convexVertexData[0].gNumConvexPoints,false,localScaling);
+ wuInput->m_spuCollisionShapes[0] = &cpc0;
+ }
+
+ if ( btLikely( wuInput->m_shapeType1 == CONVEX_HULL_SHAPE_PROXYTYPE ) )
+ {
+ cellDmaWaitTagStatusAll(DMA_MASK(2));
+ lsMemPtr->convexVertexData[1].gConvexPoints = &lsMemPtr->convexVertexData[1].g_convexPointBuffer[0];
+ btConvexHullShape* ch = (btConvexHullShape*)wuInput->m_spuCollisionShapes[1];
+ const btVector3& localScaling = ch->getLocalScalingNV();
+ cpc1.setPoints(lsMemPtr->convexVertexData[1].gConvexPoints,lsMemPtr->convexVertexData[1].gNumConvexPoints,false,localScaling);
+ wuInput->m_spuCollisionShapes[1] = &cpc1;
+
+ }
+
+
+// const btConvexShape* shape0Ptr = (const btConvexShape*)wuInput->m_spuCollisionShapes[0];
+// const btConvexShape* shape1Ptr = (const btConvexShape*)wuInput->m_spuCollisionShapes[1];
+// int shapeType0 = wuInput->m_shapeType0;
+// int shapeType1 = wuInput->m_shapeType1;
+ float marginA = wuInput->m_collisionMargin0;
+ float marginB = wuInput->m_collisionMargin1;
+
+ SpuClosestPointInput cpInput;
+ cpInput.m_convexVertexData[0] = &lsMemPtr->convexVertexData[0];
+ cpInput.m_convexVertexData[1] = &lsMemPtr->convexVertexData[1];
+ cpInput.m_transformA = wuInput->m_worldTransform0;
+ cpInput.m_transformB = wuInput->m_worldTransform1;
+ float sumMargin = (marginA+marginB+lsMemPtr->getContactManifoldPtr()->getContactBreakingThreshold());
+ cpInput.m_maximumDistanceSquared = sumMargin * sumMargin;
+
+ ppu_address_t manifoldAddress = (ppu_address_t)manifold;
+
+ btPersistentManifold* spuManifold=lsMemPtr->getContactManifoldPtr();
+ //spuContacts.setContactInfo(spuManifold,manifoldAddress,wuInput->m_worldTransform0,wuInput->m_worldTransform1,wuInput->m_isSwapped);
+ spuContacts.setContactInfo(spuManifold,manifoldAddress,lsMemPtr->getColObj0()->getWorldTransform(),
+ lsMemPtr->getColObj1()->getWorldTransform(),
+ lsMemPtr->getColObj0()->getRestitution(),lsMemPtr->getColObj1()->getRestitution(),
+ lsMemPtr->getColObj0()->getFriction(),lsMemPtr->getColObj1()->getFriction(),
+ wuInput->m_isSwapped);
+
+
+ btConvexPlaneCollideSingleContact(wuInput,lsMemPtr,spuContacts);
+
+
+
+
+}
+
+
+
+
+////////////////////////
+/// Convex versus Concave triangle mesh collision detection (handles concave triangle mesh versus sphere, box, cylinder, triangle, cone, convex polyhedron etc)
+///////////////////
+void ProcessConvexConcaveSpuCollision(SpuCollisionPairInput* wuInput, CollisionTask_LocalStoreMemory* lsMemPtr, SpuContactResult& spuContacts)
+{
+ //order: first collision shape is convex, second concave. m_isSwapped is true, if the original order was opposite
+
+ btBvhTriangleMeshShape* trimeshShape = (btBvhTriangleMeshShape*)wuInput->m_spuCollisionShapes[1];
+ //need the mesh interface, for access to triangle vertices
+ dmaBvhShapeData (&lsMemPtr->bvhShapeData, trimeshShape);
+
+ btVector3 aabbMin(-1,-400,-1);
+ btVector3 aabbMax(1,400,1);
+
+
+ //recalc aabbs
+ btTransform convexInTriangleSpace;
+ convexInTriangleSpace = wuInput->m_worldTransform1.inverse() * wuInput->m_worldTransform0;
+ btConvexInternalShape* convexShape = (btConvexInternalShape*)wuInput->m_spuCollisionShapes[0];
+
+ computeAabb (aabbMin, aabbMax, convexShape, wuInput->m_collisionShapes[0], wuInput->m_shapeType0, convexInTriangleSpace);
+
+
+ //CollisionShape* triangleShape = static_cast<btCollisionShape*>(triBody->m_collisionShape);
+ //convexShape->getAabb(convexInTriangleSpace,m_aabbMin,m_aabbMax);
+
+ // btScalar extraMargin = collisionMarginTriangle;
+ // btVector3 extra(extraMargin,extraMargin,extraMargin);
+ // aabbMax += extra;
+ // aabbMin -= extra;
+
+ ///quantize query AABB
+ unsigned short int quantizedQueryAabbMin[3];
+ unsigned short int quantizedQueryAabbMax[3];
+ lsMemPtr->bvhShapeData.getOptimizedBvh()->quantizeWithClamp(quantizedQueryAabbMin,aabbMin,0);
+ lsMemPtr->bvhShapeData.getOptimizedBvh()->quantizeWithClamp(quantizedQueryAabbMax,aabbMax,1);
+
+ QuantizedNodeArray& nodeArray = lsMemPtr->bvhShapeData.getOptimizedBvh()->getQuantizedNodeArray();
+ //spu_printf("SPU: numNodes = %d\n",nodeArray.size());
+
+ BvhSubtreeInfoArray& subTrees = lsMemPtr->bvhShapeData.getOptimizedBvh()->getSubtreeInfoArray();
+
+
+ spuNodeCallback nodeCallback(wuInput,lsMemPtr,spuContacts);
+ IndexedMeshArray& indexArray = lsMemPtr->bvhShapeData.gTriangleMeshInterfacePtr->getIndexedMeshArray();
+ //spu_printf("SPU:indexArray.size() = %d\n",indexArray.size());
+
+ // spu_printf("SPU: numSubTrees = %d\n",subTrees.size());
+ //not likely to happen
+ if (subTrees.size() && indexArray.size() == 1)
+ {
+ ///DMA in the index info
+ dmaBvhIndexedMesh (&lsMemPtr->bvhShapeData.gIndexMesh, indexArray, 0 /* index into indexArray */, 1 /* dmaTag */);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+
+ //display the headers
+ int numBatch = subTrees.size();
+ for (int i=0;i<numBatch;)
+ {
+ //@todo- can reorder DMA transfers for less stall
+ int remaining = subTrees.size() - i;
+ int nextBatch = remaining < MAX_SPU_SUBTREE_HEADERS ? remaining : MAX_SPU_SUBTREE_HEADERS;
+
+ dmaBvhSubTreeHeaders (&lsMemPtr->bvhShapeData.gSubtreeHeaders[0], (ppu_address_t)(&subTrees[i]), nextBatch, 1);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+
+
+ // spu_printf("nextBatch = %d\n",nextBatch);
+
+ for (int j=0;j<nextBatch;j++)
+ {
+ const btBvhSubtreeInfo& subtree = lsMemPtr->bvhShapeData.gSubtreeHeaders[j];
+
+ unsigned int overlap = spuTestQuantizedAabbAgainstQuantizedAabb(quantizedQueryAabbMin,quantizedQueryAabbMax,subtree.m_quantizedAabbMin,subtree.m_quantizedAabbMax);
+ if (overlap)
+ {
+ btAssert(subtree.m_subtreeSize);
+
+ //dma the actual nodes of this subtree
+ dmaBvhSubTreeNodes (&lsMemPtr->bvhShapeData.gSubtreeNodes[0], subtree, nodeArray, 2);
+ cellDmaWaitTagStatusAll(DMA_MASK(2));
+
+ /* Walk this subtree */
+ spuWalkStacklessQuantizedTree(&nodeCallback,quantizedQueryAabbMin,quantizedQueryAabbMax,
+ &lsMemPtr->bvhShapeData.gSubtreeNodes[0],
+ 0,
+ subtree.m_subtreeSize);
+ }
+ // spu_printf("subtreeSize = %d\n",gSubtreeHeaders[j].m_subtreeSize);
+ }
+
+ // unsigned short int m_quantizedAabbMin[3];
+ // unsigned short int m_quantizedAabbMax[3];
+ // int m_rootNodeIndex;
+ // int m_subtreeSize;
+ i+=nextBatch;
+ }
+
+ //pre-fetch first tree, then loop and double buffer
+ }
+
+}
+
+
+#define MAX_DEGENERATE_STATS 15
+int stats[MAX_DEGENERATE_STATS]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
+int degenerateStats[MAX_DEGENERATE_STATS]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
+
+
+////////////////////////
+/// Convex versus Convex collision detection (handles collision between sphere, box, cylinder, triangle, cone, convex polyhedron etc)
+///////////////////
+void ProcessSpuConvexConvexCollision(SpuCollisionPairInput* wuInput, CollisionTask_LocalStoreMemory* lsMemPtr, SpuContactResult& spuContacts)
+{
+ register int dmaSize;
+ register ppu_address_t dmaPpuAddress2;
+
+#ifdef DEBUG_SPU_COLLISION_DETECTION
+ //spu_printf("SPU: ProcessSpuConvexConvexCollision\n");
+#endif //DEBUG_SPU_COLLISION_DETECTION
+ //CollisionShape* shape0 = (CollisionShape*)wuInput->m_collisionShapes[0];
+ //CollisionShape* shape1 = (CollisionShape*)wuInput->m_collisionShapes[1];
+ btPersistentManifold* manifold = (btPersistentManifold*)wuInput->m_persistentManifoldPtr;
+
+ bool genericGjk = true;
+
+ if (genericGjk)
+ {
+ //try generic GJK
+
+
+
+ //SpuConvexPenetrationDepthSolver* penetrationSolver=0;
+ btVoronoiSimplexSolver simplexSolver;
+ btGjkEpaPenetrationDepthSolver epaPenetrationSolver2;
+
+ btConvexPenetrationDepthSolver* penetrationSolver = &epaPenetrationSolver2;
+
+ //SpuMinkowskiPenetrationDepthSolver minkowskiPenetrationSolver;
+#ifdef ENABLE_EPA
+ if (gUseEpa)
+ {
+ penetrationSolver = &epaPenetrationSolver2;
+ } else
+#endif
+ {
+ //penetrationSolver = &minkowskiPenetrationSolver;
+ }
+
+
+ ///DMA in the vertices for convex shapes
+ ATTRIBUTE_ALIGNED16(char convexHullShape0[sizeof(btConvexHullShape)]);
+ ATTRIBUTE_ALIGNED16(char convexHullShape1[sizeof(btConvexHullShape)]);
+
+ if ( btLikely( wuInput->m_shapeType0== CONVEX_HULL_SHAPE_PROXYTYPE ) )
+ {
+ // spu_printf("SPU: DMA btConvexHullShape\n");
+
+ dmaSize = sizeof(btConvexHullShape);
+ dmaPpuAddress2 = wuInput->m_collisionShapes[0];
+
+ cellDmaGet(&convexHullShape0, dmaPpuAddress2 , dmaSize, DMA_TAG(1), 0, 0);
+ //cellDmaWaitTagStatusAll(DMA_MASK(1));
+ }
+
+ if ( btLikely( wuInput->m_shapeType1 == CONVEX_HULL_SHAPE_PROXYTYPE ) )
+ {
+ // spu_printf("SPU: DMA btConvexHullShape\n");
+ dmaSize = sizeof(btConvexHullShape);
+ dmaPpuAddress2 = wuInput->m_collisionShapes[1];
+ cellDmaGet(&convexHullShape1, dmaPpuAddress2 , dmaSize, DMA_TAG(1), 0, 0);
+ //cellDmaWaitTagStatusAll(DMA_MASK(1));
+ }
+
+ if ( btLikely( wuInput->m_shapeType0 == CONVEX_HULL_SHAPE_PROXYTYPE ) )
+ {
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+ dmaConvexVertexData (&lsMemPtr->convexVertexData[0], (btConvexHullShape*)&convexHullShape0);
+ lsMemPtr->convexVertexData[0].gSpuConvexShapePtr = wuInput->m_spuCollisionShapes[0];
+ }
+
+
+ if ( btLikely( wuInput->m_shapeType1 == CONVEX_HULL_SHAPE_PROXYTYPE ) )
+ {
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+ dmaConvexVertexData (&lsMemPtr->convexVertexData[1], (btConvexHullShape*)&convexHullShape1);
+ lsMemPtr->convexVertexData[1].gSpuConvexShapePtr = wuInput->m_spuCollisionShapes[1];
+ }
+
+
+ btConvexPointCloudShape cpc0,cpc1;
+
+ if ( btLikely( wuInput->m_shapeType0 == CONVEX_HULL_SHAPE_PROXYTYPE ) )
+ {
+ cellDmaWaitTagStatusAll(DMA_MASK(2));
+ lsMemPtr->convexVertexData[0].gConvexPoints = &lsMemPtr->convexVertexData[0].g_convexPointBuffer[0];
+ btConvexHullShape* ch = (btConvexHullShape*)wuInput->m_spuCollisionShapes[0];
+ const btVector3& localScaling = ch->getLocalScalingNV();
+ cpc0.setPoints(lsMemPtr->convexVertexData[0].gConvexPoints,lsMemPtr->convexVertexData[0].gNumConvexPoints,false,localScaling);
+ wuInput->m_spuCollisionShapes[0] = &cpc0;
+ }
+
+ if ( btLikely( wuInput->m_shapeType1 == CONVEX_HULL_SHAPE_PROXYTYPE ) )
+ {
+ cellDmaWaitTagStatusAll(DMA_MASK(2));
+ lsMemPtr->convexVertexData[1].gConvexPoints = &lsMemPtr->convexVertexData[1].g_convexPointBuffer[0];
+ btConvexHullShape* ch = (btConvexHullShape*)wuInput->m_spuCollisionShapes[1];
+ const btVector3& localScaling = ch->getLocalScalingNV();
+ cpc1.setPoints(lsMemPtr->convexVertexData[1].gConvexPoints,lsMemPtr->convexVertexData[1].gNumConvexPoints,false,localScaling);
+ wuInput->m_spuCollisionShapes[1] = &cpc1;
+
+ }
+
+
+ const btConvexShape* shape0Ptr = (const btConvexShape*)wuInput->m_spuCollisionShapes[0];
+ const btConvexShape* shape1Ptr = (const btConvexShape*)wuInput->m_spuCollisionShapes[1];
+ int shapeType0 = wuInput->m_shapeType0;
+ int shapeType1 = wuInput->m_shapeType1;
+ float marginA = wuInput->m_collisionMargin0;
+ float marginB = wuInput->m_collisionMargin1;
+
+ SpuClosestPointInput cpInput;
+ cpInput.m_convexVertexData[0] = &lsMemPtr->convexVertexData[0];
+ cpInput.m_convexVertexData[1] = &lsMemPtr->convexVertexData[1];
+ cpInput.m_transformA = wuInput->m_worldTransform0;
+ cpInput.m_transformB = wuInput->m_worldTransform1;
+ float sumMargin = (marginA+marginB+lsMemPtr->getContactManifoldPtr()->getContactBreakingThreshold());
+ cpInput.m_maximumDistanceSquared = sumMargin * sumMargin;
+
+ ppu_address_t manifoldAddress = (ppu_address_t)manifold;
+
+ btPersistentManifold* spuManifold=lsMemPtr->getContactManifoldPtr();
+ //spuContacts.setContactInfo(spuManifold,manifoldAddress,wuInput->m_worldTransform0,wuInput->m_worldTransform1,wuInput->m_isSwapped);
+ spuContacts.setContactInfo(spuManifold,manifoldAddress,lsMemPtr->getColObj0()->getWorldTransform(),
+ lsMemPtr->getColObj1()->getWorldTransform(),
+ lsMemPtr->getColObj0()->getRestitution(),lsMemPtr->getColObj1()->getRestitution(),
+ lsMemPtr->getColObj0()->getFriction(),lsMemPtr->getColObj1()->getFriction(),
+ wuInput->m_isSwapped);
+
+ {
+ btGjkPairDetector gjk(shape0Ptr,shape1Ptr,shapeType0,shapeType1,marginA,marginB,&simplexSolver,penetrationSolver);//&vsSolver,penetrationSolver);
+ gjk.getClosestPoints(cpInput,spuContacts,0);//,debugDraw);
+
+ btAssert(gjk.m_lastUsedMethod <MAX_DEGENERATE_STATS);
+ stats[gjk.m_lastUsedMethod]++;
+ btAssert(gjk.m_degenerateSimplex <MAX_DEGENERATE_STATS);
+ degenerateStats[gjk.m_degenerateSimplex]++;
+
+#ifdef USE_SEPDISTANCE_UTIL
+ btScalar sepDist = gjk.getCachedSeparatingDistance()+spuManifold->getContactBreakingThreshold();
+ lsMemPtr->getlocalCollisionAlgorithm()->m_sepDistance.initSeparatingDistance(gjk.getCachedSeparatingAxis(),sepDist,wuInput->m_worldTransform0,wuInput->m_worldTransform1);
+ lsMemPtr->needsDmaPutContactManifoldAlgo = true;
+#endif //USE_SEPDISTANCE_UTIL
+
+ }
+
+ }
+
+
+}
+
+
+template<typename T> void DoSwap(T& a, T& b)
+{
+ char tmp[sizeof(T)];
+ memcpy(tmp, &a, sizeof(T));
+ memcpy(&a, &b, sizeof(T));
+ memcpy(&b, tmp, sizeof(T));
+}
+
+SIMD_FORCE_INLINE void dmaAndSetupCollisionObjects(SpuCollisionPairInput& collisionPairInput, CollisionTask_LocalStoreMemory& lsMem)
+{
+ register int dmaSize;
+ register ppu_address_t dmaPpuAddress2;
+
+ dmaSize = sizeof(btCollisionObject);//btTransform);
+ dmaPpuAddress2 = /*collisionPairInput.m_isSwapped ? (ppu_address_t)lsMem.gProxyPtr1->m_clientObject :*/ (ppu_address_t)lsMem.getlocalCollisionAlgorithm()->getCollisionObject0();
+ lsMem.m_lsColObj0Ptr = (btCollisionObject*)cellDmaGetReadOnly(&lsMem.gColObj0Buffer, dmaPpuAddress2 , dmaSize, DMA_TAG(1), 0, 0);
+
+ dmaSize = sizeof(btCollisionObject);//btTransform);
+ dmaPpuAddress2 = /*collisionPairInput.m_isSwapped ? (ppu_address_t)lsMem.gProxyPtr0->m_clientObject :*/ (ppu_address_t)lsMem.getlocalCollisionAlgorithm()->getCollisionObject1();
+ lsMem.m_lsColObj1Ptr = (btCollisionObject*)cellDmaGetReadOnly(&lsMem.gColObj1Buffer, dmaPpuAddress2 , dmaSize, DMA_TAG(2), 0, 0);
+
+ cellDmaWaitTagStatusAll(DMA_MASK(1) | DMA_MASK(2));
+
+ btCollisionObject* ob0 = lsMem.getColObj0();
+ btCollisionObject* ob1 = lsMem.getColObj1();
+
+ collisionPairInput.m_worldTransform0 = ob0->getWorldTransform();
+ collisionPairInput.m_worldTransform1 = ob1->getWorldTransform();
+}
+
+
+
+void handleCollisionPair(SpuCollisionPairInput& collisionPairInput, CollisionTask_LocalStoreMemory& lsMem,
+ SpuContactResult &spuContacts,
+ ppu_address_t collisionShape0Ptr, void* collisionShape0Loc,
+ ppu_address_t collisionShape1Ptr, void* collisionShape1Loc, bool dmaShapes = true)
+{
+
+ if (btBroadphaseProxy::isConvex(collisionPairInput.m_shapeType0)
+ && btBroadphaseProxy::isConvex(collisionPairInput.m_shapeType1))
+ {
+ if (dmaShapes)
+ {
+ dmaCollisionShape (collisionShape0Loc, collisionShape0Ptr, 1, collisionPairInput.m_shapeType0);
+ dmaCollisionShape (collisionShape1Loc, collisionShape1Ptr, 2, collisionPairInput.m_shapeType1);
+ cellDmaWaitTagStatusAll(DMA_MASK(1) | DMA_MASK(2));
+ }
+
+ btConvexInternalShape* spuConvexShape0 = (btConvexInternalShape*)collisionShape0Loc;
+ btConvexInternalShape* spuConvexShape1 = (btConvexInternalShape*)collisionShape1Loc;
+
+ btVector3 dim0 = spuConvexShape0->getImplicitShapeDimensions();
+ btVector3 dim1 = spuConvexShape1->getImplicitShapeDimensions();
+
+ collisionPairInput.m_primitiveDimensions0 = dim0;
+ collisionPairInput.m_primitiveDimensions1 = dim1;
+ collisionPairInput.m_collisionShapes[0] = collisionShape0Ptr;
+ collisionPairInput.m_collisionShapes[1] = collisionShape1Ptr;
+ collisionPairInput.m_spuCollisionShapes[0] = spuConvexShape0;
+ collisionPairInput.m_spuCollisionShapes[1] = spuConvexShape1;
+ ProcessSpuConvexConvexCollision(&collisionPairInput,&lsMem,spuContacts);
+ }
+ else if (btBroadphaseProxy::isCompound(collisionPairInput.m_shapeType0) &&
+ btBroadphaseProxy::isCompound(collisionPairInput.m_shapeType1))
+ {
+ //snPause();
+
+ dmaCollisionShape (collisionShape0Loc, collisionShape0Ptr, 1, collisionPairInput.m_shapeType0);
+ dmaCollisionShape (collisionShape1Loc, collisionShape1Ptr, 2, collisionPairInput.m_shapeType1);
+ cellDmaWaitTagStatusAll(DMA_MASK(1) | DMA_MASK(2));
+
+ // Both are compounds, do N^2 CD for now
+ ///@todo: add some AABB-based pruning (probably not -> slower)
+
+ btCompoundShape* spuCompoundShape0 = (btCompoundShape*)collisionShape0Loc;
+ btCompoundShape* spuCompoundShape1 = (btCompoundShape*)collisionShape1Loc;
+
+ dmaCompoundShapeInfo (&lsMem.compoundShapeData[0], spuCompoundShape0, 1);
+ dmaCompoundShapeInfo (&lsMem.compoundShapeData[1], spuCompoundShape1, 2);
+ cellDmaWaitTagStatusAll(DMA_MASK(1) | DMA_MASK(2));
+
+
+ dmaCompoundSubShapes (&lsMem.compoundShapeData[0], spuCompoundShape0, 1);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+ dmaCompoundSubShapes (&lsMem.compoundShapeData[1], spuCompoundShape1, 1);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+
+ int childShapeCount0 = spuCompoundShape0->getNumChildShapes();
+ btAssert(childShapeCount0< MAX_SPU_COMPOUND_SUBSHAPES);
+ int childShapeCount1 = spuCompoundShape1->getNumChildShapes();
+ btAssert(childShapeCount1< MAX_SPU_COMPOUND_SUBSHAPES);
+
+ // Start the N^2
+ for (int i = 0; i < childShapeCount0; ++i)
+ {
+ btCompoundShapeChild& childShape0 = lsMem.compoundShapeData[0].gSubshapes[i];
+ btAssert(!btBroadphaseProxy::isCompound(childShape0.m_childShapeType));
+
+ for (int j = 0; j < childShapeCount1; ++j)
+ {
+ btCompoundShapeChild& childShape1 = lsMem.compoundShapeData[1].gSubshapes[j];
+ btAssert(!btBroadphaseProxy::isCompound(childShape1.m_childShapeType));
+
+
+ /* Create a new collision pair input struct using the two child shapes */
+ SpuCollisionPairInput cinput (collisionPairInput);
+
+ cinput.m_worldTransform0 = collisionPairInput.m_worldTransform0 * childShape0.m_transform;
+ cinput.m_shapeType0 = childShape0.m_childShapeType;
+ cinput.m_collisionMargin0 = childShape0.m_childMargin;
+
+ cinput.m_worldTransform1 = collisionPairInput.m_worldTransform1 * childShape1.m_transform;
+ cinput.m_shapeType1 = childShape1.m_childShapeType;
+ cinput.m_collisionMargin1 = childShape1.m_childMargin;
+ /* Recursively call handleCollisionPair () with new collision pair input */
+
+ handleCollisionPair(cinput, lsMem, spuContacts,
+ (ppu_address_t)childShape0.m_childShape, lsMem.compoundShapeData[0].gSubshapeShape[i],
+ (ppu_address_t)childShape1.m_childShape, lsMem.compoundShapeData[1].gSubshapeShape[j], false);
+ }
+ }
+ }
+ else if (btBroadphaseProxy::isCompound(collisionPairInput.m_shapeType0) )
+ {
+ //snPause();
+
+ dmaCollisionShape (collisionShape0Loc, collisionShape0Ptr, 1, collisionPairInput.m_shapeType0);
+ dmaCollisionShape (collisionShape1Loc, collisionShape1Ptr, 2, collisionPairInput.m_shapeType1);
+ cellDmaWaitTagStatusAll(DMA_MASK(1) | DMA_MASK(2));
+
+ // object 0 compound, object 1 non-compound
+ btCompoundShape* spuCompoundShape = (btCompoundShape*)collisionShape0Loc;
+ dmaCompoundShapeInfo (&lsMem.compoundShapeData[0], spuCompoundShape, 1);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+
+ int childShapeCount = spuCompoundShape->getNumChildShapes();
+ btAssert(childShapeCount< MAX_SPU_COMPOUND_SUBSHAPES);
+
+ for (int i = 0; i < childShapeCount; ++i)
+ {
+ btCompoundShapeChild& childShape = lsMem.compoundShapeData[0].gSubshapes[i];
+ btAssert(!btBroadphaseProxy::isCompound(childShape.m_childShapeType));
+ // Dma the child shape
+ dmaCollisionShape (&lsMem.compoundShapeData[0].gSubshapeShape[i], (ppu_address_t)childShape.m_childShape, 1, childShape.m_childShapeType);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+
+ SpuCollisionPairInput cinput (collisionPairInput);
+ cinput.m_worldTransform0 = collisionPairInput.m_worldTransform0 * childShape.m_transform;
+ cinput.m_shapeType0 = childShape.m_childShapeType;
+ cinput.m_collisionMargin0 = childShape.m_childMargin;
+
+ handleCollisionPair(cinput, lsMem, spuContacts,
+ (ppu_address_t)childShape.m_childShape, lsMem.compoundShapeData[0].gSubshapeShape[i],
+ collisionShape1Ptr, collisionShape1Loc, false);
+ }
+ }
+ else if (btBroadphaseProxy::isCompound(collisionPairInput.m_shapeType1) )
+ {
+ //snPause();
+
+ dmaCollisionShape (collisionShape0Loc, collisionShape0Ptr, 1, collisionPairInput.m_shapeType0);
+ dmaCollisionShape (collisionShape1Loc, collisionShape1Ptr, 2, collisionPairInput.m_shapeType1);
+ cellDmaWaitTagStatusAll(DMA_MASK(1) | DMA_MASK(2));
+ // object 0 non-compound, object 1 compound
+ btCompoundShape* spuCompoundShape = (btCompoundShape*)collisionShape1Loc;
+ dmaCompoundShapeInfo (&lsMem.compoundShapeData[0], spuCompoundShape, 1);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+
+ int childShapeCount = spuCompoundShape->getNumChildShapes();
+ btAssert(childShapeCount< MAX_SPU_COMPOUND_SUBSHAPES);
+
+
+ for (int i = 0; i < childShapeCount; ++i)
+ {
+ btCompoundShapeChild& childShape = lsMem.compoundShapeData[0].gSubshapes[i];
+ btAssert(!btBroadphaseProxy::isCompound(childShape.m_childShapeType));
+ // Dma the child shape
+ dmaCollisionShape (&lsMem.compoundShapeData[0].gSubshapeShape[i], (ppu_address_t)childShape.m_childShape, 1, childShape.m_childShapeType);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+
+ SpuCollisionPairInput cinput (collisionPairInput);
+ cinput.m_worldTransform1 = collisionPairInput.m_worldTransform1 * childShape.m_transform;
+ cinput.m_shapeType1 = childShape.m_childShapeType;
+ cinput.m_collisionMargin1 = childShape.m_childMargin;
+ handleCollisionPair(cinput, lsMem, spuContacts,
+ collisionShape0Ptr, collisionShape0Loc,
+ (ppu_address_t)childShape.m_childShape, lsMem.compoundShapeData[0].gSubshapeShape[i], false);
+ }
+
+ }
+ else
+ {
+ //a non-convex shape is involved
+ bool handleConvexConcave = false;
+
+ //snPause();
+
+ if (btBroadphaseProxy::isConcave(collisionPairInput.m_shapeType0) &&
+ btBroadphaseProxy::isConvex(collisionPairInput.m_shapeType1))
+ {
+ // Swap stuff
+ DoSwap(collisionShape0Ptr, collisionShape1Ptr);
+ DoSwap(collisionShape0Loc, collisionShape1Loc);
+ DoSwap(collisionPairInput.m_shapeType0, collisionPairInput.m_shapeType1);
+ DoSwap(collisionPairInput.m_worldTransform0, collisionPairInput.m_worldTransform1);
+ DoSwap(collisionPairInput.m_collisionMargin0, collisionPairInput.m_collisionMargin1);
+
+ collisionPairInput.m_isSwapped = true;
+ }
+
+ if (btBroadphaseProxy::isConvex(collisionPairInput.m_shapeType0)&&
+ btBroadphaseProxy::isConcave(collisionPairInput.m_shapeType1))
+ {
+ handleConvexConcave = true;
+ }
+ if (handleConvexConcave)
+ {
+ if (dmaShapes)
+ {
+ dmaCollisionShape (collisionShape0Loc, collisionShape0Ptr, 1, collisionPairInput.m_shapeType0);
+ dmaCollisionShape (collisionShape1Loc, collisionShape1Ptr, 2, collisionPairInput.m_shapeType1);
+ cellDmaWaitTagStatusAll(DMA_MASK(1) | DMA_MASK(2));
+ }
+
+ if (collisionPairInput.m_shapeType1 == STATIC_PLANE_PROXYTYPE)
+ {
+ btConvexInternalShape* spuConvexShape0 = (btConvexInternalShape*)collisionShape0Loc;
+ btStaticPlaneShape* planeShape= (btStaticPlaneShape*)collisionShape1Loc;
+
+ btVector3 dim0 = spuConvexShape0->getImplicitShapeDimensions();
+ collisionPairInput.m_primitiveDimensions0 = dim0;
+ collisionPairInput.m_collisionShapes[0] = collisionShape0Ptr;
+ collisionPairInput.m_collisionShapes[1] = collisionShape1Ptr;
+ collisionPairInput.m_spuCollisionShapes[0] = spuConvexShape0;
+ collisionPairInput.m_spuCollisionShapes[1] = planeShape;
+
+ ProcessConvexPlaneSpuCollision(&collisionPairInput,&lsMem,spuContacts);
+ } else
+ {
+ btConvexInternalShape* spuConvexShape0 = (btConvexInternalShape*)collisionShape0Loc;
+ btBvhTriangleMeshShape* trimeshShape = (btBvhTriangleMeshShape*)collisionShape1Loc;
+
+ btVector3 dim0 = spuConvexShape0->getImplicitShapeDimensions();
+ collisionPairInput.m_primitiveDimensions0 = dim0;
+ collisionPairInput.m_collisionShapes[0] = collisionShape0Ptr;
+ collisionPairInput.m_collisionShapes[1] = collisionShape1Ptr;
+ collisionPairInput.m_spuCollisionShapes[0] = spuConvexShape0;
+ collisionPairInput.m_spuCollisionShapes[1] = trimeshShape;
+
+ ProcessConvexConcaveSpuCollision(&collisionPairInput,&lsMem,spuContacts);
+ }
+ }
+
+ }
+
+ spuContacts.flush();
+
+}
+
+
+void processCollisionTask(void* userPtr, void* lsMemPtr)
+{
+
+ SpuGatherAndProcessPairsTaskDesc* taskDescPtr = (SpuGatherAndProcessPairsTaskDesc*)userPtr;
+ SpuGatherAndProcessPairsTaskDesc& taskDesc = *taskDescPtr;
+ CollisionTask_LocalStoreMemory* colMemPtr = (CollisionTask_LocalStoreMemory*)lsMemPtr;
+ CollisionTask_LocalStoreMemory& lsMem = *(colMemPtr);
+
+ gUseEpa = taskDesc.m_useEpa;
+
+ // spu_printf("taskDescPtr=%llx\n",taskDescPtr);
+
+ SpuContactResult spuContacts;
+
+ ////////////////////
+
+ ppu_address_t dmaInPtr = taskDesc.m_inPairPtr;
+ unsigned int numPages = taskDesc.numPages;
+ unsigned int numOnLastPage = taskDesc.numOnLastPage;
+
+ // prefetch first set of inputs and wait
+ lsMem.g_workUnitTaskBuffers.init();
+
+ unsigned int nextNumOnPage = (numPages > 1)? MIDPHASE_NUM_WORKUNITS_PER_PAGE : numOnLastPage;
+ lsMem.g_workUnitTaskBuffers.backBufferDmaGet(dmaInPtr, nextNumOnPage*sizeof(SpuGatherAndProcessWorkUnitInput), DMA_TAG(3));
+ dmaInPtr += MIDPHASE_WORKUNIT_PAGE_SIZE;
+
+
+ register unsigned char *inputPtr;
+ register unsigned int numOnPage;
+ register unsigned int j;
+ SpuGatherAndProcessWorkUnitInput* wuInputs;
+ register int dmaSize;
+ register ppu_address_t dmaPpuAddress;
+ register ppu_address_t dmaPpuAddress2;
+
+ int numPairs;
+ register int p;
+ SpuCollisionPairInput collisionPairInput;
+
+ for (unsigned int i = 0; btLikely(i < numPages); i++)
+ {
+
+ // wait for back buffer dma and swap buffers
+ inputPtr = lsMem.g_workUnitTaskBuffers.swapBuffers();
+
+ // number on current page is number prefetched last iteration
+ numOnPage = nextNumOnPage;
+
+
+ // prefetch next set of inputs
+#if MIDPHASE_NUM_WORKUNIT_PAGES > 2
+ if ( btLikely( i < numPages-1 ) )
+#else
+ if ( btUnlikely( i < numPages-1 ) )
+#endif
+ {
+ nextNumOnPage = (i == numPages-2)? numOnLastPage : MIDPHASE_NUM_WORKUNITS_PER_PAGE;
+ lsMem.g_workUnitTaskBuffers.backBufferDmaGet(dmaInPtr, nextNumOnPage*sizeof(SpuGatherAndProcessWorkUnitInput), DMA_TAG(3));
+ dmaInPtr += MIDPHASE_WORKUNIT_PAGE_SIZE;
+ }
+
+ wuInputs = reinterpret_cast<SpuGatherAndProcessWorkUnitInput *>(inputPtr);
+
+
+ for (j = 0; btLikely( j < numOnPage ); j++)
+ {
+#ifdef DEBUG_SPU_COLLISION_DETECTION
+ // printMidphaseInput(&wuInputs[j]);
+#endif //DEBUG_SPU_COLLISION_DETECTION
+
+
+ numPairs = wuInputs[j].m_endIndex - wuInputs[j].m_startIndex;
+
+ if ( btLikely( numPairs ) )
+ {
+ dmaSize = numPairs*sizeof(btBroadphasePair);
+ dmaPpuAddress = wuInputs[j].m_pairArrayPtr+wuInputs[j].m_startIndex * sizeof(btBroadphasePair);
+ lsMem.m_pairsPointer = (btBroadphasePair*)cellDmaGetReadOnly(&lsMem.gBroadphasePairsBuffer, dmaPpuAddress , dmaSize, DMA_TAG(1), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+
+
+ for (p=0;p<numPairs;p++)
+ {
+
+ //for each broadphase pair, do something
+
+ btBroadphasePair& pair = lsMem.getBroadphasePairPtr()[p];
+#ifdef DEBUG_SPU_COLLISION_DETECTION
+ spu_printf("pair->m_userInfo = %d\n",pair.m_userInfo);
+ spu_printf("pair->m_algorithm = %d\n",pair.m_algorithm);
+ spu_printf("pair->m_pProxy0 = %d\n",pair.m_pProxy0);
+ spu_printf("pair->m_pProxy1 = %d\n",pair.m_pProxy1);
+#endif //DEBUG_SPU_COLLISION_DETECTION
+
+ if (pair.m_internalTmpValue == 2 && pair.m_algorithm && pair.m_pProxy0 && pair.m_pProxy1)
+ {
+ dmaSize = sizeof(SpuContactManifoldCollisionAlgorithm);
+ dmaPpuAddress2 = (ppu_address_t)pair.m_algorithm;
+ lsMem.m_lsCollisionAlgorithmPtr = (SpuContactManifoldCollisionAlgorithm*)cellDmaGetReadOnly(&lsMem.gSpuContactManifoldAlgoBuffer, dmaPpuAddress2 , dmaSize, DMA_TAG(1), 0, 0);
+
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+
+ lsMem.needsDmaPutContactManifoldAlgo = false;
+
+ collisionPairInput.m_persistentManifoldPtr = (ppu_address_t) lsMem.getlocalCollisionAlgorithm()->getContactManifoldPtr();
+ collisionPairInput.m_isSwapped = false;
+
+ if (1)
+ {
+
+ ///can wait on the combined DMA_MASK, or dma on the same tag
+
+
+#ifdef DEBUG_SPU_COLLISION_DETECTION
+ // spu_printf("SPU collisionPairInput->m_shapeType0 = %d\n",collisionPairInput->m_shapeType0);
+ // spu_printf("SPU collisionPairInput->m_shapeType1 = %d\n",collisionPairInput->m_shapeType1);
+#endif //DEBUG_SPU_COLLISION_DETECTION
+
+
+ dmaSize = sizeof(btPersistentManifold);
+
+ dmaPpuAddress2 = collisionPairInput.m_persistentManifoldPtr;
+ lsMem.m_lsManifoldPtr = (btPersistentManifold*)cellDmaGetReadOnly(&lsMem.gPersistentManifoldBuffer, dmaPpuAddress2 , dmaSize, DMA_TAG(1), 0, 0);
+
+ collisionPairInput.m_shapeType0 = lsMem.getlocalCollisionAlgorithm()->getShapeType0();
+ collisionPairInput.m_shapeType1 = lsMem.getlocalCollisionAlgorithm()->getShapeType1();
+ collisionPairInput.m_collisionMargin0 = lsMem.getlocalCollisionAlgorithm()->getCollisionMargin0();
+ collisionPairInput.m_collisionMargin1 = lsMem.getlocalCollisionAlgorithm()->getCollisionMargin1();
+
+
+
+ //??cellDmaWaitTagStatusAll(DMA_MASK(1));
+
+
+ if (1)
+ {
+ //snPause();
+
+ // Get the collision objects
+ dmaAndSetupCollisionObjects(collisionPairInput, lsMem);
+
+ if (lsMem.getColObj0()->isActive() || lsMem.getColObj1()->isActive())
+ {
+
+ lsMem.needsDmaPutContactManifoldAlgo = true;
+#ifdef USE_SEPDISTANCE_UTIL
+ lsMem.getlocalCollisionAlgorithm()->m_sepDistance.updateSeparatingDistance(collisionPairInput.m_worldTransform0,collisionPairInput.m_worldTransform1);
+#endif //USE_SEPDISTANCE_UTIL
+
+#define USE_DEDICATED_BOX_BOX 1
+#ifdef USE_DEDICATED_BOX_BOX
+ bool boxbox = ((lsMem.getlocalCollisionAlgorithm()->getShapeType0()==BOX_SHAPE_PROXYTYPE)&&
+ (lsMem.getlocalCollisionAlgorithm()->getShapeType1()==BOX_SHAPE_PROXYTYPE));
+ if (boxbox)
+ {
+ //spu_printf("boxbox dist = %f\n",distance);
+ btPersistentManifold* spuManifold=lsMem.getContactManifoldPtr();
+ btPersistentManifold* manifold = (btPersistentManifold*)collisionPairInput.m_persistentManifoldPtr;
+ ppu_address_t manifoldAddress = (ppu_address_t)manifold;
+
+ spuContacts.setContactInfo(spuManifold,manifoldAddress,lsMem.getColObj0()->getWorldTransform(),
+ lsMem.getColObj1()->getWorldTransform(),
+ lsMem.getColObj0()->getRestitution(),lsMem.getColObj1()->getRestitution(),
+ lsMem.getColObj0()->getFriction(),lsMem.getColObj1()->getFriction(),
+ collisionPairInput.m_isSwapped);
+
+
+ //float distance=0.f;
+ btVector3 normalInB;
+
+
+ if (//!gUseEpa &&
+#ifdef USE_SEPDISTANCE_UTIL
+ lsMem.getlocalCollisionAlgorithm()->m_sepDistance.getConservativeSeparatingDistance()<=0.f
+#else
+ 1
+#endif
+ )
+ {
+//#define USE_PE_BOX_BOX 1
+#ifdef USE_PE_BOX_BOX
+ {
+
+ //getCollisionMargin0
+ btScalar margin0 = lsMem.getlocalCollisionAlgorithm()->getCollisionMargin0();
+ btScalar margin1 = lsMem.getlocalCollisionAlgorithm()->getCollisionMargin1();
+ btVector3 shapeDim0 = lsMem.getlocalCollisionAlgorithm()->getShapeDimensions0()+btVector3(margin0,margin0,margin0);
+ btVector3 shapeDim1 = lsMem.getlocalCollisionAlgorithm()->getShapeDimensions1()+btVector3(margin1,margin1,margin1);
+/*
+ //Box boxA(shapeDim0.getX(),shapeDim0.getY(),shapeDim0.getZ());
+ vmVector3 vmPos0 = getVmVector3(collisionPairInput.m_worldTransform0.getOrigin());
+ vmVector3 vmPos1 = getVmVector3(collisionPairInput.m_worldTransform1.getOrigin());
+ vmMatrix3 vmMatrix0 = getVmMatrix3(collisionPairInput.m_worldTransform0.getBasis());
+ vmMatrix3 vmMatrix1 = getVmMatrix3(collisionPairInput.m_worldTransform1.getBasis());
+
+ vmTransform3 transformA(vmMatrix0,vmPos0);
+ Box boxB(shapeDim1.getX(),shapeDim1.getY(),shapeDim1.getZ());
+ vmTransform3 transformB(vmMatrix1,vmPos1);
+ BoxPoint resultClosestBoxPointA;
+ BoxPoint resultClosestBoxPointB;
+ vmVector3 resultNormal;
+ */
+
+#ifdef USE_SEPDISTANCE_UTIL
+ float distanceThreshold = FLT_MAX
+#else
+ //float distanceThreshold = 0.f;
+#endif
+
+
+ vmVector3 n;
+ Box boxA;
+ vmVector3 hA(shapeDim0.getX(),shapeDim0.getY(),shapeDim0.getZ());
+ vmVector3 hB(shapeDim1.getX(),shapeDim1.getY(),shapeDim1.getZ());
+ boxA.mHalf= hA;
+ vmTransform3 trA;
+ trA.setTranslation(getVmVector3(collisionPairInput.m_worldTransform0.getOrigin()));
+ trA.setUpper3x3(getVmMatrix3(collisionPairInput.m_worldTransform0.getBasis()));
+ Box boxB;
+ boxB.mHalf = hB;
+ vmTransform3 trB;
+ trB.setTranslation(getVmVector3(collisionPairInput.m_worldTransform1.getOrigin()));
+ trB.setUpper3x3(getVmMatrix3(collisionPairInput.m_worldTransform1.getBasis()));
+
+ float distanceThreshold = spuManifold->getContactBreakingThreshold();//0.001f;
+
+
+ BoxPoint ptA,ptB;
+ float dist = boxBoxDistance(n, ptA, ptB,
+ boxA, trA, boxB, trB,
+ distanceThreshold );
+
+
+// float distance = boxBoxDistance(resultNormal,resultClosestBoxPointA,resultClosestBoxPointB, boxA, transformA, boxB,transformB,distanceThreshold);
+
+ normalInB = -getBtVector3(n);//resultNormal);
+
+ //if(dist < distanceThreshold)//spuManifold->getContactBreakingThreshold())
+ if(dist < spuManifold->getContactBreakingThreshold())
+ {
+ btVector3 pointOnB = collisionPairInput.m_worldTransform1(getBtVector3(ptB.localPoint));
+
+ spuContacts.addContactPoint(
+ normalInB,
+ pointOnB,
+ dist);
+ }
+ }
+#else
+ {
+
+ btScalar margin0 = lsMem.getlocalCollisionAlgorithm()->getCollisionMargin0();
+ btScalar margin1 = lsMem.getlocalCollisionAlgorithm()->getCollisionMargin1();
+ btVector3 shapeDim0 = lsMem.getlocalCollisionAlgorithm()->getShapeDimensions0()+btVector3(margin0,margin0,margin0);
+ btVector3 shapeDim1 = lsMem.getlocalCollisionAlgorithm()->getShapeDimensions1()+btVector3(margin1,margin1,margin1);
+
+
+ btBoxShape box0(shapeDim0);
+ btBoxShape box1(shapeDim1);
+
+ struct SpuBridgeContactCollector : public btDiscreteCollisionDetectorInterface::Result
+ {
+ SpuContactResult& m_spuContacts;
+
+ virtual void setShapeIdentifiersA(int partId0,int index0)
+ {
+ m_spuContacts.setShapeIdentifiersA(partId0,index0);
+ }
+ virtual void setShapeIdentifiersB(int partId1,int index1)
+ {
+ m_spuContacts.setShapeIdentifiersB(partId1,index1);
+ }
+ virtual void addContactPoint(const btVector3& normalOnBInWorld,const btVector3& pointInWorld,btScalar depth)
+ {
+ m_spuContacts.addContactPoint(normalOnBInWorld,pointInWorld,depth);
+ }
+
+ SpuBridgeContactCollector(SpuContactResult& spuContacts)
+ :m_spuContacts(spuContacts)
+ {
+
+ }
+ };
+
+ SpuBridgeContactCollector bridgeOutput(spuContacts);
+
+ btDiscreteCollisionDetectorInterface::ClosestPointInput input;
+ input.m_maximumDistanceSquared = BT_LARGE_FLOAT;
+ input.m_transformA = collisionPairInput.m_worldTransform0;
+ input.m_transformB = collisionPairInput.m_worldTransform1;
+
+ btBoxBoxDetector detector(&box0,&box1);
+
+ detector.getClosestPoints(input,bridgeOutput,0);
+
+ }
+#endif //USE_PE_BOX_BOX
+
+ lsMem.needsDmaPutContactManifoldAlgo = true;
+#ifdef USE_SEPDISTANCE_UTIL
+ btScalar sepDist2 = distance+spuManifold->getContactBreakingThreshold();
+ lsMem.getlocalCollisionAlgorithm()->m_sepDistance.initSeparatingDistance(normalInB,sepDist2,collisionPairInput.m_worldTransform0,collisionPairInput.m_worldTransform1);
+#endif //USE_SEPDISTANCE_UTIL
+ gProcessedCol++;
+ } else
+ {
+ gSkippedCol++;
+ }
+
+ spuContacts.flush();
+
+
+ } else
+#endif //USE_DEDICATED_BOX_BOX
+ {
+ if (
+#ifdef USE_SEPDISTANCE_UTIL
+ lsMem.getlocalCollisionAlgorithm()->m_sepDistance.getConservativeSeparatingDistance()<=0.f
+#else
+ 1
+#endif //USE_SEPDISTANCE_UTIL
+ )
+ {
+ handleCollisionPair(collisionPairInput, lsMem, spuContacts,
+ (ppu_address_t)lsMem.getColObj0()->getCollisionShape(), &lsMem.gCollisionShapes[0].collisionShape,
+ (ppu_address_t)lsMem.getColObj1()->getCollisionShape(), &lsMem.gCollisionShapes[1].collisionShape);
+ } else
+ {
+ //spu_printf("boxbox dist = %f\n",distance);
+ btPersistentManifold* spuManifold=lsMem.getContactManifoldPtr();
+ btPersistentManifold* manifold = (btPersistentManifold*)collisionPairInput.m_persistentManifoldPtr;
+ ppu_address_t manifoldAddress = (ppu_address_t)manifold;
+
+ spuContacts.setContactInfo(spuManifold,manifoldAddress,lsMem.getColObj0()->getWorldTransform(),
+ lsMem.getColObj1()->getWorldTransform(),
+ lsMem.getColObj0()->getRestitution(),lsMem.getColObj1()->getRestitution(),
+ lsMem.getColObj0()->getFriction(),lsMem.getColObj1()->getFriction(),
+ collisionPairInput.m_isSwapped);
+
+ spuContacts.flush();
+ }
+ }
+
+ }
+
+ }
+ }
+
+#ifdef USE_SEPDISTANCE_UTIL
+#if defined (__SPU__) || defined (USE_LIBSPE2)
+ if (lsMem.needsDmaPutContactManifoldAlgo)
+ {
+ dmaSize = sizeof(SpuContactManifoldCollisionAlgorithm);
+ dmaPpuAddress2 = (ppu_address_t)pair.m_algorithm;
+ cellDmaLargePut(&lsMem.gSpuContactManifoldAlgoBuffer, dmaPpuAddress2 , dmaSize, DMA_TAG(1), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+ }
+#endif
+#endif //#ifdef USE_SEPDISTANCE_UTIL
+
+ }
+ }
+ }
+ } //end for (j = 0; j < numOnPage; j++)
+
+ }// for
+
+
+
+ return;
+}
+
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef SPU_GATHERING_COLLISION_TASK_H
+#define SPU_GATHERING_COLLISION_TASK_H
+
+#include "../PlatformDefinitions.h"
+//#define DEBUG_SPU_COLLISION_DETECTION 1
+
+
+///Task Description for SPU collision detection
+struct SpuGatherAndProcessPairsTaskDesc
+{
+ ppu_address_t m_inPairPtr;//m_pairArrayPtr;
+ //mutex variable
+ uint32_t m_someMutexVariableInMainMemory;
+
+ ppu_address_t m_dispatcher;
+
+ uint32_t numOnLastPage;
+
+ uint16_t numPages;
+ uint16_t taskId;
+ bool m_useEpa;
+
+ struct CollisionTask_LocalStoreMemory* m_lsMemory;
+}
+
+#if defined(__CELLOS_LV2__) || defined(USE_LIBSPE2)
+__attribute__ ((aligned (128)))
+#endif
+;
+
+
+void processCollisionTask(void* userPtr, void* lsMemory);
+
+void* createCollisionLocalStoreMemory();
+void deleteCollisionLocalStoreMemory();
+
+#if defined(USE_LIBSPE2) && defined(__SPU__)
+#include "../SpuLibspe2Support.h"
+#include <spu_intrinsics.h>
+#include <spu_mfcio.h>
+#include <SpuFakeDma.h>
+
+//#define DEBUG_LIBSPE2_SPU_TASK
+
+
+
+int main(unsigned long long speid, addr64 argp, addr64 envp)
+{
+ printf("SPU: hello \n");
+
+ ATTRIBUTE_ALIGNED128(btSpuStatus status);
+ ATTRIBUTE_ALIGNED16( SpuGatherAndProcessPairsTaskDesc taskDesc ) ;
+ unsigned int received_message = Spu_Mailbox_Event_Nothing;
+ bool shutdown = false;
+
+ cellDmaGet(&status, argp.ull, sizeof(btSpuStatus), DMA_TAG(3), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(3));
+
+ status.m_status = Spu_Status_Free;
+ status.m_lsMemory.p = createCollisionLocalStoreMemory();
+
+ cellDmaLargePut(&status, argp.ull, sizeof(btSpuStatus), DMA_TAG(3), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(3));
+
+
+ while ( btLikely( !shutdown ) )
+ {
+
+ received_message = spu_read_in_mbox();
+
+ if( btLikely( received_message == Spu_Mailbox_Event_Task ))
+ {
+#ifdef DEBUG_LIBSPE2_SPU_TASK
+ printf("SPU: received Spu_Mailbox_Event_Task\n");
+#endif //DEBUG_LIBSPE2_SPU_TASK
+
+ // refresh the status
+ cellDmaGet(&status, argp.ull, sizeof(btSpuStatus), DMA_TAG(3), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(3));
+
+ btAssert(status.m_status==Spu_Status_Occupied);
+
+ cellDmaGet(&taskDesc, status.m_taskDesc.p, sizeof(SpuGatherAndProcessPairsTaskDesc), DMA_TAG(3), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(3));
+#ifdef DEBUG_LIBSPE2_SPU_TASK
+ printf("SPU:processCollisionTask\n");
+#endif //DEBUG_LIBSPE2_SPU_TASK
+ processCollisionTask((void*)&taskDesc, taskDesc.m_lsMemory);
+
+#ifdef DEBUG_LIBSPE2_SPU_TASK
+ printf("SPU:finished processCollisionTask\n");
+#endif //DEBUG_LIBSPE2_SPU_TASK
+ }
+ else
+ {
+#ifdef DEBUG_LIBSPE2_SPU_TASK
+ printf("SPU: received ShutDown\n");
+#endif //DEBUG_LIBSPE2_SPU_TASK
+ if( btLikely( received_message == Spu_Mailbox_Event_Shutdown ) )
+ {
+ shutdown = true;
+ }
+ else
+ {
+ //printf("SPU - Sth. recieved\n");
+ }
+ }
+
+ // set to status free and wait for next task
+ status.m_status = Spu_Status_Free;
+ cellDmaLargePut(&status, argp.ull, sizeof(btSpuStatus), DMA_TAG(3), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(3));
+
+
+ }
+
+ printf("SPU: shutdown\n");
+ return 0;
+}
+#endif // USE_LIBSPE2
+
+
+#endif //SPU_GATHERING_COLLISION_TASK_H
+
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+
+
+
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "SpuMinkowskiPenetrationDepthSolver.h"
+#include "SpuContactResult.h"
+#include "SpuPreferredPenetrationDirections.h"
+#include "BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h"
+#include "BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h"
+#include "SpuCollisionShapes.h"
+
+#define NUM_UNITSPHERE_POINTS 42
+static btVector3 sPenetrationDirections[NUM_UNITSPHERE_POINTS+MAX_PREFERRED_PENETRATION_DIRECTIONS*2] =
+{
+btVector3(btScalar(0.000000) , btScalar(-0.000000),btScalar(-1.000000)),
+btVector3(btScalar(0.723608) , btScalar(-0.525725),btScalar(-0.447219)),
+btVector3(btScalar(-0.276388) , btScalar(-0.850649),btScalar(-0.447219)),
+btVector3(btScalar(-0.894426) , btScalar(-0.000000),btScalar(-0.447216)),
+btVector3(btScalar(-0.276388) , btScalar(0.850649),btScalar(-0.447220)),
+btVector3(btScalar(0.723608) , btScalar(0.525725),btScalar(-0.447219)),
+btVector3(btScalar(0.276388) , btScalar(-0.850649),btScalar(0.447220)),
+btVector3(btScalar(-0.723608) , btScalar(-0.525725),btScalar(0.447219)),
+btVector3(btScalar(-0.723608) , btScalar(0.525725),btScalar(0.447219)),
+btVector3(btScalar(0.276388) , btScalar(0.850649),btScalar(0.447219)),
+btVector3(btScalar(0.894426) , btScalar(0.000000),btScalar(0.447216)),
+btVector3(btScalar(-0.000000) , btScalar(0.000000),btScalar(1.000000)),
+btVector3(btScalar(0.425323) , btScalar(-0.309011),btScalar(-0.850654)),
+btVector3(btScalar(-0.162456) , btScalar(-0.499995),btScalar(-0.850654)),
+btVector3(btScalar(0.262869) , btScalar(-0.809012),btScalar(-0.525738)),
+btVector3(btScalar(0.425323) , btScalar(0.309011),btScalar(-0.850654)),
+btVector3(btScalar(0.850648) , btScalar(-0.000000),btScalar(-0.525736)),
+btVector3(btScalar(-0.525730) , btScalar(-0.000000),btScalar(-0.850652)),
+btVector3(btScalar(-0.688190) , btScalar(-0.499997),btScalar(-0.525736)),
+btVector3(btScalar(-0.162456) , btScalar(0.499995),btScalar(-0.850654)),
+btVector3(btScalar(-0.688190) , btScalar(0.499997),btScalar(-0.525736)),
+btVector3(btScalar(0.262869) , btScalar(0.809012),btScalar(-0.525738)),
+btVector3(btScalar(0.951058) , btScalar(0.309013),btScalar(0.000000)),
+btVector3(btScalar(0.951058) , btScalar(-0.309013),btScalar(0.000000)),
+btVector3(btScalar(0.587786) , btScalar(-0.809017),btScalar(0.000000)),
+btVector3(btScalar(0.000000) , btScalar(-1.000000),btScalar(0.000000)),
+btVector3(btScalar(-0.587786) , btScalar(-0.809017),btScalar(0.000000)),
+btVector3(btScalar(-0.951058) , btScalar(-0.309013),btScalar(-0.000000)),
+btVector3(btScalar(-0.951058) , btScalar(0.309013),btScalar(-0.000000)),
+btVector3(btScalar(-0.587786) , btScalar(0.809017),btScalar(-0.000000)),
+btVector3(btScalar(-0.000000) , btScalar(1.000000),btScalar(-0.000000)),
+btVector3(btScalar(0.587786) , btScalar(0.809017),btScalar(-0.000000)),
+btVector3(btScalar(0.688190) , btScalar(-0.499997),btScalar(0.525736)),
+btVector3(btScalar(-0.262869) , btScalar(-0.809012),btScalar(0.525738)),
+btVector3(btScalar(-0.850648) , btScalar(0.000000),btScalar(0.525736)),
+btVector3(btScalar(-0.262869) , btScalar(0.809012),btScalar(0.525738)),
+btVector3(btScalar(0.688190) , btScalar(0.499997),btScalar(0.525736)),
+btVector3(btScalar(0.525730) , btScalar(0.000000),btScalar(0.850652)),
+btVector3(btScalar(0.162456) , btScalar(-0.499995),btScalar(0.850654)),
+btVector3(btScalar(-0.425323) , btScalar(-0.309011),btScalar(0.850654)),
+btVector3(btScalar(-0.425323) , btScalar(0.309011),btScalar(0.850654)),
+btVector3(btScalar(0.162456) , btScalar(0.499995),btScalar(0.850654))
+};
+
+
+bool SpuMinkowskiPenetrationDepthSolver::calcPenDepth( btSimplexSolverInterface& simplexSolver,
+ const btConvexShape* convexA,const btConvexShape* convexB,
+ const btTransform& transA,const btTransform& transB,
+ btVector3& v, btVector3& pa, btVector3& pb,
+ class btIDebugDraw* debugDraw,btStackAlloc* stackAlloc)
+{
+#if 0
+ (void)stackAlloc;
+ (void)v;
+
+
+ struct btIntermediateResult : public SpuContactResult
+ {
+
+ btIntermediateResult():m_hasResult(false)
+ {
+ }
+
+ btVector3 m_normalOnBInWorld;
+ btVector3 m_pointInWorld;
+ btScalar m_depth;
+ bool m_hasResult;
+
+ virtual void setShapeIdentifiersA(int partId0,int index0)
+ {
+ (void)partId0;
+ (void)index0;
+ }
+
+ virtual void setShapeIdentifiersB(int partId1,int index1)
+ {
+ (void)partId1;
+ (void)index1;
+ }
+ void addContactPoint(const btVector3& normalOnBInWorld,const btVector3& pointInWorld,btScalar depth)
+ {
+ m_normalOnBInWorld = normalOnBInWorld;
+ m_pointInWorld = pointInWorld;
+ m_depth = depth;
+ m_hasResult = true;
+ }
+ };
+
+ //just take fixed number of orientation, and sample the penetration depth in that direction
+ btScalar minProj = btScalar(BT_LARGE_FLOAT);
+ btVector3 minNorm(0.f,0.f,0.f);
+ btVector3 minVertex;
+ btVector3 minA,minB;
+ btVector3 seperatingAxisInA,seperatingAxisInB;
+ btVector3 pInA,qInB,pWorld,qWorld,w;
+
+//#define USE_BATCHED_SUPPORT 1
+#ifdef USE_BATCHED_SUPPORT
+
+ btVector3 supportVerticesABatch[NUM_UNITSPHERE_POINTS+MAX_PREFERRED_PENETRATION_DIRECTIONS*2];
+ btVector3 supportVerticesBBatch[NUM_UNITSPHERE_POINTS+MAX_PREFERRED_PENETRATION_DIRECTIONS*2];
+ btVector3 seperatingAxisInABatch[NUM_UNITSPHERE_POINTS+MAX_PREFERRED_PENETRATION_DIRECTIONS*2];
+ btVector3 seperatingAxisInBBatch[NUM_UNITSPHERE_POINTS+MAX_PREFERRED_PENETRATION_DIRECTIONS*2];
+ int i;
+
+ int numSampleDirections = NUM_UNITSPHERE_POINTS;
+
+ for (i=0;i<numSampleDirections;i++)
+ {
+ const btVector3& norm = sPenetrationDirections[i];
+ seperatingAxisInABatch[i] = (-norm) * transA.getBasis() ;
+ seperatingAxisInBBatch[i] = norm * transB.getBasis() ;
+ }
+
+ {
+ int numPDA = convexA->getNumPreferredPenetrationDirections();
+ if (numPDA)
+ {
+ for (int i=0;i<numPDA;i++)
+ {
+ btVector3 norm;
+ convexA->getPreferredPenetrationDirection(i,norm);
+ norm = transA.getBasis() * norm;
+ sPenetrationDirections[numSampleDirections] = norm;
+ seperatingAxisInABatch[numSampleDirections] = (-norm) * transA.getBasis();
+ seperatingAxisInBBatch[numSampleDirections] = norm * transB.getBasis();
+ numSampleDirections++;
+ }
+ }
+ }
+
+ {
+ int numPDB = convexB->getNumPreferredPenetrationDirections();
+ if (numPDB)
+ {
+ for (int i=0;i<numPDB;i++)
+ {
+ btVector3 norm;
+ convexB->getPreferredPenetrationDirection(i,norm);
+ norm = transB.getBasis() * norm;
+ sPenetrationDirections[numSampleDirections] = norm;
+ seperatingAxisInABatch[numSampleDirections] = (-norm) * transA.getBasis();
+ seperatingAxisInBBatch[numSampleDirections] = norm * transB.getBasis();
+ numSampleDirections++;
+ }
+ }
+ }
+
+
+
+ convexA->batchedUnitVectorGetSupportingVertexWithoutMargin(seperatingAxisInABatch,supportVerticesABatch,numSampleDirections);
+ convexB->batchedUnitVectorGetSupportingVertexWithoutMargin(seperatingAxisInBBatch,supportVerticesBBatch,numSampleDirections);
+
+ for (i=0;i<numSampleDirections;i++)
+ {
+ const btVector3& norm = sPenetrationDirections[i];
+ seperatingAxisInA = seperatingAxisInABatch[i];
+ seperatingAxisInB = seperatingAxisInBBatch[i];
+
+ pInA = supportVerticesABatch[i];
+ qInB = supportVerticesBBatch[i];
+
+ pWorld = transA(pInA);
+ qWorld = transB(qInB);
+ w = qWorld - pWorld;
+ btScalar delta = norm.dot(w);
+ //find smallest delta
+ if (delta < minProj)
+ {
+ minProj = delta;
+ minNorm = norm;
+ minA = pWorld;
+ minB = qWorld;
+ }
+ }
+#else
+
+ int numSampleDirections = NUM_UNITSPHERE_POINTS;
+
+///this is necessary, otherwise the normal is not correct, and sphere will rotate forever on a sloped triangle mesh
+#define DO_PREFERRED_DIRECTIONS 1
+#ifdef DO_PREFERRED_DIRECTIONS
+ {
+ int numPDA = spuGetNumPreferredPenetrationDirections(shapeTypeA,convexA);
+ if (numPDA)
+ {
+ for (int i=0;i<numPDA;i++)
+ {
+ btVector3 norm;
+ spuGetPreferredPenetrationDirection(shapeTypeA,convexA,i,norm);
+ norm = transA.getBasis() * norm;
+ sPenetrationDirections[numSampleDirections] = norm;
+ numSampleDirections++;
+ }
+ }
+ }
+
+ {
+ int numPDB = spuGetNumPreferredPenetrationDirections(shapeTypeB,convexB);
+ if (numPDB)
+ {
+ for (int i=0;i<numPDB;i++)
+ {
+ btVector3 norm;
+ spuGetPreferredPenetrationDirection(shapeTypeB,convexB,i,norm);
+ norm = transB.getBasis() * norm;
+ sPenetrationDirections[numSampleDirections] = norm;
+ numSampleDirections++;
+ }
+ }
+ }
+#endif //DO_PREFERRED_DIRECTIONS
+
+ for (int i=0;i<numSampleDirections;i++)
+ {
+ const btVector3& norm = sPenetrationDirections[i];
+ seperatingAxisInA = (-norm)* transA.getBasis();
+ seperatingAxisInB = norm* transB.getBasis();
+
+ pInA = convexA->localGetSupportVertexWithoutMarginNonVirtual( seperatingAxisInA);//, NULL);
+ qInB = convexB->localGetSupportVertexWithoutMarginNonVirtual(seperatingAxisInB);//, NULL);
+
+ // pInA = convexA->localGetSupportingVertexWithoutMargin(seperatingAxisInA);
+ // qInB = convexB->localGetSupportingVertexWithoutMargin(seperatingAxisInB);
+
+ pWorld = transA(pInA);
+ qWorld = transB(qInB);
+ w = qWorld - pWorld;
+ btScalar delta = norm.dot(w);
+ //find smallest delta
+ if (delta < minProj)
+ {
+ minProj = delta;
+ minNorm = norm;
+ minA = pWorld;
+ minB = qWorld;
+ }
+ }
+#endif //USE_BATCHED_SUPPORT
+
+ //add the margins
+
+ minA += minNorm*marginA;
+ minB -= minNorm*marginB;
+ //no penetration
+ if (minProj < btScalar(0.))
+ return false;
+
+ minProj += (marginA + marginB) + btScalar(1.00);
+
+
+
+
+
+//#define DEBUG_DRAW 1
+#ifdef DEBUG_DRAW
+ if (debugDraw)
+ {
+ btVector3 color(0,1,0);
+ debugDraw->drawLine(minA,minB,color);
+ color = btVector3 (1,1,1);
+ btVector3 vec = minB-minA;
+ btScalar prj2 = minNorm.dot(vec);
+ debugDraw->drawLine(minA,minA+(minNorm*minProj),color);
+
+ }
+#endif //DEBUG_DRAW
+
+
+ btGjkPairDetector gjkdet(convexA,convexB,&simplexSolver,0);
+
+ btScalar offsetDist = minProj;
+ btVector3 offset = minNorm * offsetDist;
+
+
+ SpuClosestPointInput input;
+ input.m_convexVertexData[0] = convexVertexDataA;
+ input.m_convexVertexData[1] = convexVertexDataB;
+ btVector3 newOrg = transA.getOrigin() + offset;
+
+ btTransform displacedTrans = transA;
+ displacedTrans.setOrigin(newOrg);
+
+ input.m_transformA = displacedTrans;
+ input.m_transformB = transB;
+ input.m_maximumDistanceSquared = btScalar(BT_LARGE_FLOAT);//minProj;
+
+ btIntermediateResult res;
+ gjkdet.getClosestPoints(input,res,0);
+
+ btScalar correctedMinNorm = minProj - res.m_depth;
+
+
+ //the penetration depth is over-estimated, relax it
+ btScalar penetration_relaxation= btScalar(1.);
+ minNorm*=penetration_relaxation;
+
+ if (res.m_hasResult)
+ {
+
+ pa = res.m_pointInWorld - minNorm * correctedMinNorm;
+ pb = res.m_pointInWorld;
+
+#ifdef DEBUG_DRAW
+ if (debugDraw)
+ {
+ btVector3 color(1,0,0);
+ debugDraw->drawLine(pa,pb,color);
+ }
+#endif//DEBUG_DRAW
+
+
+ } else {
+ // could not seperate shapes
+ //btAssert (false);
+ }
+ return res.m_hasResult;
+#endif
+ return false;
+}
+
+
+
--- /dev/null
+
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2006 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef MINKOWSKI_PENETRATION_DEPTH_SOLVER_H
+#define MINKOWSKI_PENETRATION_DEPTH_SOLVER_H
+
+
+#include "BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h"
+
+class btStackAlloc;
+class btIDebugDraw;
+class btVoronoiSimplexSolver;
+class btConvexShape;
+
+///MinkowskiPenetrationDepthSolver implements bruteforce penetration depth estimation.
+///Implementation is based on sampling the depth using support mapping, and using GJK step to get the witness points.
+class SpuMinkowskiPenetrationDepthSolver : public btConvexPenetrationDepthSolver
+{
+public:
+ SpuMinkowskiPenetrationDepthSolver() {}
+ virtual ~SpuMinkowskiPenetrationDepthSolver() {};
+
+ virtual bool calcPenDepth( btSimplexSolverInterface& simplexSolver,
+ const btConvexShape* convexA,const btConvexShape* convexB,
+ const btTransform& transA,const btTransform& transB,
+ btVector3& v, btVector3& pa, btVector3& pb,
+ class btIDebugDraw* debugDraw,btStackAlloc* stackAlloc
+ );
+
+
+};
+
+
+#endif //MINKOWSKI_PENETRATION_DEPTH_SOLVER_H
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://continuousphysics.com/Bullet/
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef _SPU_PREFERRED_PENETRATION_DIRECTIONS_H
+#define _SPU_PREFERRED_PENETRATION_DIRECTIONS_H
+
+
+#include "BulletCollision/BroadphaseCollision/btBroadphaseProxy.h"
+
+int spuGetNumPreferredPenetrationDirections(int shapeType, void* shape)
+{
+ switch (shapeType)
+ {
+ case TRIANGLE_SHAPE_PROXYTYPE:
+ {
+ return 2;
+ //spu_printf("2\n");
+ break;
+ }
+ default:
+ {
+#if __ASSERT
+ spu_printf("spuGetNumPreferredPenetrationDirections() - Unsupported bound type: %d.\n", shapeType);
+#endif // __ASSERT
+ }
+ }
+
+ return 0;
+}
+
+void spuGetPreferredPenetrationDirection(int shapeType, void* shape, int index, btVector3& penetrationVector)
+{
+
+
+ switch (shapeType)
+ {
+ case TRIANGLE_SHAPE_PROXYTYPE:
+ {
+ btVector3* vertices = (btVector3*)shape;
+ ///calcNormal
+ penetrationVector = (vertices[1]-vertices[0]).cross(vertices[2]-vertices[0]);
+ penetrationVector.normalize();
+ if (index)
+ penetrationVector *= btScalar(-1.);
+ break;
+ }
+ default:
+ {
+
+#if __ASSERT
+ spu_printf("spuGetNumPreferredPenetrationDirections() - Unsupported bound type: %d.\n", shapeType);
+#endif // __ASSERT
+ }
+ }
+
+}
+
+#endif //_SPU_PREFERRED_PENETRATION_DIRECTIONS_H
--- /dev/null
+/*
+ Copyright (C) 2006, 2008 Sony Computer Entertainment Inc.
+ All rights reserved.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+*/
+
+
+//#include "PfxContactBoxBox.h"
+
+#include <math.h>
+#include "../PlatformDefinitions.h"
+#include "boxBoxDistance.h"
+
+static inline float sqr( float a )
+{
+ return (a * a);
+}
+
+enum BoxSepAxisType
+{
+ A_AXIS, B_AXIS, CROSS_AXIS
+};
+
+//-------------------------------------------------------------------------------------------------
+// voronoiTol: bevels Voronoi planes slightly which helps when features are parallel.
+//-------------------------------------------------------------------------------------------------
+
+static const float voronoiTol = -1.0e-5f;
+
+//-------------------------------------------------------------------------------------------------
+// separating axis tests: gaps along each axis are computed, and the axis with the maximum
+// gap is stored. cross product axes are normalized.
+//-------------------------------------------------------------------------------------------------
+
+#define AaxisTest( dim, letter, first ) \
+{ \
+ if ( first ) \
+ { \
+ maxGap = gap = gapsA.get##letter(); \
+ if ( gap > distanceThreshold ) return gap; \
+ axisType = A_AXIS; \
+ faceDimA = dim; \
+ axisA = identity.getCol##dim(); \
+ } \
+ else \
+ { \
+ gap = gapsA.get##letter(); \
+ if ( gap > distanceThreshold ) return gap; \
+ else if ( gap > maxGap ) \
+ { \
+ maxGap = gap; \
+ axisType = A_AXIS; \
+ faceDimA = dim; \
+ axisA = identity.getCol##dim(); \
+ } \
+ } \
+}
+
+
+#define BaxisTest( dim, letter ) \
+{ \
+ gap = gapsB.get##letter(); \
+ if ( gap > distanceThreshold ) return gap; \
+ else if ( gap > maxGap ) \
+ { \
+ maxGap = gap; \
+ axisType = B_AXIS; \
+ faceDimB = dim; \
+ axisB = identity.getCol##dim(); \
+ } \
+}
+
+#define CrossAxisTest( dima, dimb, letterb ) \
+{ \
+ const float lsqr_tolerance = 1.0e-30f; \
+ float lsqr; \
+ \
+ lsqr = lsqrs.getCol##dima().get##letterb(); \
+ \
+ if ( lsqr > lsqr_tolerance ) \
+ { \
+ float l_recip = 1.0f / sqrtf( lsqr ); \
+ gap = float(gapsAxB.getCol##dima().get##letterb()) * l_recip; \
+ \
+ if ( gap > distanceThreshold ) \
+ { \
+ return gap; \
+ } \
+ \
+ if ( gap > maxGap ) \
+ { \
+ maxGap = gap; \
+ axisType = CROSS_AXIS; \
+ edgeDimA = dima; \
+ edgeDimB = dimb; \
+ axisA = cross(identity.getCol##dima(),matrixAB.getCol##dimb()) * l_recip; \
+ } \
+ } \
+}
+
+//-------------------------------------------------------------------------------------------------
+// tests whether a vertex of box B and a face of box A are the closest features
+//-------------------------------------------------------------------------------------------------
+
+inline
+float
+VertexBFaceATest(
+ bool & inVoronoi,
+ float & t0,
+ float & t1,
+ const vmVector3 & hA,
+ PE_REF(vmVector3) faceOffsetAB,
+ PE_REF(vmVector3) faceOffsetBA,
+ const vmMatrix3 & matrixAB,
+ const vmMatrix3 & matrixBA,
+ PE_REF(vmVector3) signsB,
+ PE_REF(vmVector3) scalesB )
+{
+ // compute a corner of box B in A's coordinate system
+
+ vmVector3 corner =
+ vmVector3( faceOffsetAB + matrixAB.getCol0() * scalesB.getX() + matrixAB.getCol1() * scalesB.getY() );
+
+ // compute the parameters of the point on A, closest to this corner
+
+ t0 = corner[0];
+ t1 = corner[1];
+
+ if ( t0 > hA[0] )
+ t0 = hA[0];
+ else if ( t0 < -hA[0] )
+ t0 = -hA[0];
+ if ( t1 > hA[1] )
+ t1 = hA[1];
+ else if ( t1 < -hA[1] )
+ t1 = -hA[1];
+
+ // do the Voronoi test: already know the point on B is in the Voronoi region of the
+ // point on A, check the reverse.
+
+ vmVector3 facePointB =
+ vmVector3( mulPerElem( faceOffsetBA + matrixBA.getCol0() * t0 + matrixBA.getCol1() * t1 - scalesB, signsB ) );
+
+ inVoronoi = ( ( facePointB[0] >= voronoiTol * facePointB[2] ) &&
+ ( facePointB[1] >= voronoiTol * facePointB[0] ) &&
+ ( facePointB[2] >= voronoiTol * facePointB[1] ) );
+
+ return (sqr( corner[0] - t0 ) + sqr( corner[1] - t1 ) + sqr( corner[2] ));
+}
+
+#define VertexBFaceA_SetNewMin() \
+{ \
+ minDistSqr = distSqr; \
+ localPointA.setX(t0); \
+ localPointA.setY(t1); \
+ localPointB.setX( scalesB.getX() ); \
+ localPointB.setY( scalesB.getY() ); \
+ featureA = F; \
+ featureB = V; \
+}
+
+void
+VertexBFaceATests(
+ bool & done,
+ float & minDistSqr,
+ vmPoint3 & localPointA,
+ vmPoint3 & localPointB,
+ FeatureType & featureA,
+ FeatureType & featureB,
+ const vmVector3 & hA,
+ PE_REF(vmVector3) faceOffsetAB,
+ PE_REF(vmVector3) faceOffsetBA,
+ const vmMatrix3 & matrixAB,
+ const vmMatrix3 & matrixBA,
+ PE_REF(vmVector3) signsB,
+ PE_REF(vmVector3) scalesB,
+ bool first )
+{
+
+ float t0, t1;
+ float distSqr;
+
+ distSqr = VertexBFaceATest( done, t0, t1, hA, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsB, scalesB );
+
+ if ( first ) {
+ VertexBFaceA_SetNewMin();
+ } else {
+ if ( distSqr < minDistSqr ) {
+ VertexBFaceA_SetNewMin();
+ }
+ }
+
+ if ( done )
+ return;
+
+ signsB.setX( -signsB.getX() );
+ scalesB.setX( -scalesB.getX() );
+
+ distSqr = VertexBFaceATest( done, t0, t1, hA, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsB, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ VertexBFaceA_SetNewMin();
+ }
+
+ if ( done )
+ return;
+
+ signsB.setY( -signsB.getY() );
+ scalesB.setY( -scalesB.getY() );
+
+ distSqr = VertexBFaceATest( done, t0, t1, hA, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsB, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ VertexBFaceA_SetNewMin();
+ }
+
+ if ( done )
+ return;
+
+ signsB.setX( -signsB.getX() );
+ scalesB.setX( -scalesB.getX() );
+
+ distSqr = VertexBFaceATest( done, t0, t1, hA, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsB, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ VertexBFaceA_SetNewMin();
+ }
+}
+
+//-------------------------------------------------------------------------------------------------
+// VertexAFaceBTest: tests whether a vertex of box A and a face of box B are the closest features
+//-------------------------------------------------------------------------------------------------
+
+inline
+float
+VertexAFaceBTest(
+ bool & inVoronoi,
+ float & t0,
+ float & t1,
+ const vmVector3 & hB,
+ PE_REF(vmVector3) faceOffsetAB,
+ PE_REF(vmVector3) faceOffsetBA,
+ const vmMatrix3 & matrixAB,
+ const vmMatrix3 & matrixBA,
+ PE_REF(vmVector3) signsA,
+ PE_REF(vmVector3) scalesA )
+{
+ vmVector3 corner =
+ vmVector3( faceOffsetBA + matrixBA.getCol0() * scalesA.getX() + matrixBA.getCol1() * scalesA.getY() );
+
+ t0 = corner[0];
+ t1 = corner[1];
+
+ if ( t0 > hB[0] )
+ t0 = hB[0];
+ else if ( t0 < -hB[0] )
+ t0 = -hB[0];
+ if ( t1 > hB[1] )
+ t1 = hB[1];
+ else if ( t1 < -hB[1] )
+ t1 = -hB[1];
+
+ vmVector3 facePointA =
+ vmVector3( mulPerElem( faceOffsetAB + matrixAB.getCol0() * t0 + matrixAB.getCol1() * t1 - scalesA, signsA ) );
+
+ inVoronoi = ( ( facePointA[0] >= voronoiTol * facePointA[2] ) &&
+ ( facePointA[1] >= voronoiTol * facePointA[0] ) &&
+ ( facePointA[2] >= voronoiTol * facePointA[1] ) );
+
+ return (sqr( corner[0] - t0 ) + sqr( corner[1] - t1 ) + sqr( corner[2] ));
+}
+
+#define VertexAFaceB_SetNewMin() \
+{ \
+ minDistSqr = distSqr; \
+ localPointB.setX(t0); \
+ localPointB.setY(t1); \
+ localPointA.setX( scalesA.getX() ); \
+ localPointA.setY( scalesA.getY() ); \
+ featureA = V; \
+ featureB = F; \
+}
+
+void
+VertexAFaceBTests(
+ bool & done,
+ float & minDistSqr,
+ vmPoint3 & localPointA,
+ vmPoint3 & localPointB,
+ FeatureType & featureA,
+ FeatureType & featureB,
+ const vmVector3 & hB,
+ PE_REF(vmVector3) faceOffsetAB,
+ PE_REF(vmVector3) faceOffsetBA,
+ const vmMatrix3 & matrixAB,
+ const vmMatrix3 & matrixBA,
+ PE_REF(vmVector3) signsA,
+ PE_REF(vmVector3) scalesA,
+ bool first )
+{
+ float t0, t1;
+ float distSqr;
+
+ distSqr = VertexAFaceBTest( done, t0, t1, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, scalesA );
+
+ if ( first ) {
+ VertexAFaceB_SetNewMin();
+ } else {
+ if ( distSqr < minDistSqr ) {
+ VertexAFaceB_SetNewMin();
+ }
+ }
+
+ if ( done )
+ return;
+
+ signsA.setX( -signsA.getX() );
+ scalesA.setX( -scalesA.getX() );
+
+ distSqr = VertexAFaceBTest( done, t0, t1, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, scalesA );
+
+ if ( distSqr < minDistSqr ) {
+ VertexAFaceB_SetNewMin();
+ }
+
+ if ( done )
+ return;
+
+ signsA.setY( -signsA.getY() );
+ scalesA.setY( -scalesA.getY() );
+
+ distSqr = VertexAFaceBTest( done, t0, t1, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, scalesA );
+
+ if ( distSqr < minDistSqr ) {
+ VertexAFaceB_SetNewMin();
+ }
+
+ if ( done )
+ return;
+
+ signsA.setX( -signsA.getX() );
+ scalesA.setX( -scalesA.getX() );
+
+ distSqr = VertexAFaceBTest( done, t0, t1, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, scalesA );
+
+ if ( distSqr < minDistSqr ) {
+ VertexAFaceB_SetNewMin();
+ }
+}
+
+//-------------------------------------------------------------------------------------------------
+// CustomEdgeEdgeTest:
+//
+// tests whether a pair of edges are the closest features
+//
+// note on the shorthand:
+// 'a' & 'b' refer to the edges.
+// 'c' is the dimension of the axis that points from the face center to the edge Center
+// 'd' is the dimension of the edge Direction
+// the dimension of the face normal is 2
+//-------------------------------------------------------------------------------------------------
+
+#define CustomEdgeEdgeTest( ac, ac_letter, ad, ad_letter, bc, bc_letter, bd, bd_letter ) \
+{ \
+ vmVector3 edgeOffsetAB; \
+ vmVector3 edgeOffsetBA; \
+ \
+ edgeOffsetAB = faceOffsetAB + matrixAB.getCol##bc() * scalesB.get##bc_letter(); \
+ edgeOffsetAB.set##ac_letter( edgeOffsetAB.get##ac_letter() - scalesA.get##ac_letter() ); \
+ \
+ edgeOffsetBA = faceOffsetBA + matrixBA.getCol##ac() * scalesA.get##ac_letter(); \
+ edgeOffsetBA.set##bc_letter( edgeOffsetBA.get##bc_letter() - scalesB.get##bc_letter() ); \
+ \
+ float dirDot = matrixAB.getCol##bd().get##ad_letter(); \
+ float denom = 1.0f - dirDot*dirDot; \
+ float edgeOffsetAB_ad = edgeOffsetAB.get##ad_letter(); \
+ float edgeOffsetBA_bd = edgeOffsetBA.get##bd_letter(); \
+ \
+ if ( denom == 0.0f ) \
+ { \
+ tA = 0.0f; \
+ } \
+ else \
+ { \
+ tA = ( edgeOffsetAB_ad + edgeOffsetBA_bd * dirDot ) / denom; \
+ } \
+ \
+ if ( tA < -hA[ad] ) tA = -hA[ad]; \
+ else if ( tA > hA[ad] ) tA = hA[ad]; \
+ \
+ tB = tA * dirDot + edgeOffsetBA_bd; \
+ \
+ if ( tB < -hB[bd] ) \
+ { \
+ tB = -hB[bd]; \
+ tA = tB * dirDot + edgeOffsetAB_ad; \
+ \
+ if ( tA < -hA[ad] ) tA = -hA[ad]; \
+ else if ( tA > hA[ad] ) tA = hA[ad]; \
+ } \
+ else if ( tB > hB[bd] ) \
+ { \
+ tB = hB[bd]; \
+ tA = tB * dirDot + edgeOffsetAB_ad; \
+ \
+ if ( tA < -hA[ad] ) tA = -hA[ad]; \
+ else if ( tA > hA[ad] ) tA = hA[ad]; \
+ } \
+ \
+ vmVector3 edgeOffAB = vmVector3( mulPerElem( edgeOffsetAB + matrixAB.getCol##bd() * tB, signsA ) );\
+ vmVector3 edgeOffBA = vmVector3( mulPerElem( edgeOffsetBA + matrixBA.getCol##ad() * tA, signsB ) );\
+ \
+ inVoronoi = ( edgeOffAB[ac] >= voronoiTol * edgeOffAB[2] ) && \
+ ( edgeOffAB[2] >= voronoiTol * edgeOffAB[ac] ) && \
+ ( edgeOffBA[bc] >= voronoiTol * edgeOffBA[2] ) && \
+ ( edgeOffBA[2] >= voronoiTol * edgeOffBA[bc] ); \
+ \
+ edgeOffAB[ad] -= tA; \
+ edgeOffBA[bd] -= tB; \
+ \
+ return dot(edgeOffAB,edgeOffAB); \
+}
+
+float
+CustomEdgeEdgeTest_0101(
+ bool & inVoronoi,
+ float & tA,
+ float & tB,
+ const vmVector3 & hA,
+ const vmVector3 & hB,
+ PE_REF(vmVector3) faceOffsetAB,
+ PE_REF(vmVector3) faceOffsetBA,
+ const vmMatrix3 & matrixAB,
+ const vmMatrix3 & matrixBA,
+ PE_REF(vmVector3) signsA,
+ PE_REF(vmVector3) signsB,
+ PE_REF(vmVector3) scalesA,
+ PE_REF(vmVector3) scalesB )
+{
+ CustomEdgeEdgeTest( 0, X, 1, Y, 0, X, 1, Y );
+}
+
+float
+CustomEdgeEdgeTest_0110(
+ bool & inVoronoi,
+ float & tA,
+ float & tB,
+ const vmVector3 & hA,
+ const vmVector3 & hB,
+ PE_REF(vmVector3) faceOffsetAB,
+ PE_REF(vmVector3) faceOffsetBA,
+ const vmMatrix3 & matrixAB,
+ const vmMatrix3 & matrixBA,
+ PE_REF(vmVector3) signsA,
+ PE_REF(vmVector3) signsB,
+ PE_REF(vmVector3) scalesA,
+ PE_REF(vmVector3) scalesB )
+{
+ CustomEdgeEdgeTest( 0, X, 1, Y, 1, Y, 0, X );
+}
+
+float
+CustomEdgeEdgeTest_1001(
+ bool & inVoronoi,
+ float & tA,
+ float & tB,
+ const vmVector3 & hA,
+ const vmVector3 & hB,
+ PE_REF(vmVector3) faceOffsetAB,
+ PE_REF(vmVector3) faceOffsetBA,
+ const vmMatrix3 & matrixAB,
+ const vmMatrix3 & matrixBA,
+ PE_REF(vmVector3) signsA,
+ PE_REF(vmVector3) signsB,
+ PE_REF(vmVector3) scalesA,
+ PE_REF(vmVector3) scalesB )
+{
+ CustomEdgeEdgeTest( 1, Y, 0, X, 0, X, 1, Y );
+}
+
+float
+CustomEdgeEdgeTest_1010(
+ bool & inVoronoi,
+ float & tA,
+ float & tB,
+ const vmVector3 & hA,
+ const vmVector3 & hB,
+ PE_REF(vmVector3) faceOffsetAB,
+ PE_REF(vmVector3) faceOffsetBA,
+ const vmMatrix3 & matrixAB,
+ const vmMatrix3 & matrixBA,
+ PE_REF(vmVector3) signsA,
+ PE_REF(vmVector3) signsB,
+ PE_REF(vmVector3) scalesA,
+ PE_REF(vmVector3) scalesB )
+{
+ CustomEdgeEdgeTest( 1, Y, 0, X, 1, Y, 0, X );
+}
+
+#define EdgeEdge_SetNewMin( ac_letter, ad_letter, bc_letter, bd_letter ) \
+{ \
+ minDistSqr = distSqr; \
+ localPointA.set##ac_letter(scalesA.get##ac_letter()); \
+ localPointA.set##ad_letter(tA); \
+ localPointB.set##bc_letter(scalesB.get##bc_letter()); \
+ localPointB.set##bd_letter(tB); \
+ otherFaceDimA = testOtherFaceDimA; \
+ otherFaceDimB = testOtherFaceDimB; \
+ featureA = E; \
+ featureB = E; \
+}
+
+void
+EdgeEdgeTests(
+ bool & done,
+ float & minDistSqr,
+ vmPoint3 & localPointA,
+ vmPoint3 & localPointB,
+ int & otherFaceDimA,
+ int & otherFaceDimB,
+ FeatureType & featureA,
+ FeatureType & featureB,
+ const vmVector3 & hA,
+ const vmVector3 & hB,
+ PE_REF(vmVector3) faceOffsetAB,
+ PE_REF(vmVector3) faceOffsetBA,
+ const vmMatrix3 & matrixAB,
+ const vmMatrix3 & matrixBA,
+ PE_REF(vmVector3) signsA,
+ PE_REF(vmVector3) signsB,
+ PE_REF(vmVector3) scalesA,
+ PE_REF(vmVector3) scalesB,
+ bool first )
+{
+
+ float distSqr;
+ float tA, tB;
+
+ int testOtherFaceDimA, testOtherFaceDimB;
+
+ testOtherFaceDimA = 0;
+ testOtherFaceDimB = 0;
+
+ distSqr = CustomEdgeEdgeTest_0101( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( first ) {
+ EdgeEdge_SetNewMin( X, Y, X, Y );
+ } else {
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( X, Y, X, Y );
+ }
+ }
+
+ if ( done )
+ return;
+
+ signsA.setX( -signsA.getX() );
+ scalesA.setX( -scalesA.getX() );
+
+ distSqr = CustomEdgeEdgeTest_0101( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( X, Y, X, Y );
+ }
+
+ if ( done )
+ return;
+
+ signsB.setX( -signsB.getX() );
+ scalesB.setX( -scalesB.getX() );
+
+ distSqr = CustomEdgeEdgeTest_0101( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( X, Y, X, Y );
+ }
+
+ if ( done )
+ return;
+
+ signsA.setX( -signsA.getX() );
+ scalesA.setX( -scalesA.getX() );
+
+ distSqr = CustomEdgeEdgeTest_0101( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( X, Y, X, Y );
+ }
+
+ if ( done )
+ return;
+
+ testOtherFaceDimA = 1;
+ testOtherFaceDimB = 0;
+ signsB.setX( -signsB.getX() );
+ scalesB.setX( -scalesB.getX() );
+
+ distSqr = CustomEdgeEdgeTest_1001( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( Y, X, X, Y );
+ }
+
+ if ( done )
+ return;
+
+ signsA.setY( -signsA.getY() );
+ scalesA.setY( -scalesA.getY() );
+
+ distSqr = CustomEdgeEdgeTest_1001( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( Y, X, X, Y );
+ }
+
+ if ( done )
+ return;
+
+ signsB.setX( -signsB.getX() );
+ scalesB.setX( -scalesB.getX() );
+
+ distSqr = CustomEdgeEdgeTest_1001( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( Y, X, X, Y );
+ }
+
+ if ( done )
+ return;
+
+ signsA.setY( -signsA.getY() );
+ scalesA.setY( -scalesA.getY() );
+
+ distSqr = CustomEdgeEdgeTest_1001( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( Y, X, X, Y );
+ }
+
+ if ( done )
+ return;
+
+ testOtherFaceDimA = 0;
+ testOtherFaceDimB = 1;
+ signsB.setX( -signsB.getX() );
+ scalesB.setX( -scalesB.getX() );
+
+ distSqr = CustomEdgeEdgeTest_0110( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( X, Y, Y, X );
+ }
+
+ if ( done )
+ return;
+
+ signsA.setX( -signsA.getX() );
+ scalesA.setX( -scalesA.getX() );
+
+ distSqr = CustomEdgeEdgeTest_0110( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( X, Y, Y, X );
+ }
+
+ if ( done )
+ return;
+
+ signsB.setY( -signsB.getY() );
+ scalesB.setY( -scalesB.getY() );
+
+ distSqr = CustomEdgeEdgeTest_0110( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( X, Y, Y, X );
+ }
+
+ if ( done )
+ return;
+
+ signsA.setX( -signsA.getX() );
+ scalesA.setX( -scalesA.getX() );
+
+ distSqr = CustomEdgeEdgeTest_0110( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( X, Y, Y, X );
+ }
+
+ if ( done )
+ return;
+
+ testOtherFaceDimA = 1;
+ testOtherFaceDimB = 1;
+ signsB.setY( -signsB.getY() );
+ scalesB.setY( -scalesB.getY() );
+
+ distSqr = CustomEdgeEdgeTest_1010( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( Y, X, Y, X );
+ }
+
+ if ( done )
+ return;
+
+ signsA.setY( -signsA.getY() );
+ scalesA.setY( -scalesA.getY() );
+
+ distSqr = CustomEdgeEdgeTest_1010( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( Y, X, Y, X );
+ }
+
+ if ( done )
+ return;
+
+ signsB.setY( -signsB.getY() );
+ scalesB.setY( -scalesB.getY() );
+
+ distSqr = CustomEdgeEdgeTest_1010( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( Y, X, Y, X );
+ }
+
+ if ( done )
+ return;
+
+ signsA.setY( -signsA.getY() );
+ scalesA.setY( -scalesA.getY() );
+
+ distSqr = CustomEdgeEdgeTest_1010( done, tA, tB, hA, hB, faceOffsetAB, faceOffsetBA,
+ matrixAB, matrixBA, signsA, signsB, scalesA, scalesB );
+
+ if ( distSqr < minDistSqr ) {
+ EdgeEdge_SetNewMin( Y, X, Y, X );
+ }
+}
+
+
+float
+boxBoxDistance(vmVector3& normal, BoxPoint& boxPointA, BoxPoint& boxPointB,
+ PE_REF(Box) boxA, const vmTransform3 & transformA, PE_REF(Box) boxB,
+ const vmTransform3 & transformB,
+ float distanceThreshold)
+{
+ vmMatrix3 identity;
+ identity = vmMatrix3::identity();
+ vmVector3 ident[3];
+ ident[0] = identity.getCol0();
+ ident[1] = identity.getCol1();
+ ident[2] = identity.getCol2();
+
+ // get relative transformations
+
+ vmTransform3 transformAB, transformBA;
+ vmMatrix3 matrixAB, matrixBA;
+ vmVector3 offsetAB, offsetBA;
+
+ transformAB = orthoInverse(transformA) * transformB;
+ transformBA = orthoInverse(transformAB);
+
+ matrixAB = transformAB.getUpper3x3();
+ offsetAB = transformAB.getTranslation();
+ matrixBA = transformBA.getUpper3x3();
+ offsetBA = transformBA.getTranslation();
+
+ vmMatrix3 absMatrixAB = absPerElem(matrixAB);
+ vmMatrix3 absMatrixBA = absPerElem(matrixBA);
+
+ // find separating axis with largest gap between projections
+
+ BoxSepAxisType axisType;
+ vmVector3 axisA(0.0f), axisB(0.0f);
+ float gap, maxGap;
+ int faceDimA = 0, faceDimB = 0, edgeDimA = 0, edgeDimB = 0;
+
+ // face axes
+
+ vmVector3 gapsA = absPerElem(offsetAB) - boxA.mHalf - absMatrixAB * boxB.mHalf;
+
+ AaxisTest(0,X,true);
+ AaxisTest(1,Y,false);
+ AaxisTest(2,Z,false);
+
+ vmVector3 gapsB = absPerElem(offsetBA) - boxB.mHalf - absMatrixBA * boxA.mHalf;
+
+ BaxisTest(0,X);
+ BaxisTest(1,Y);
+ BaxisTest(2,Z);
+
+ // cross product axes
+
+ // \8aO\90Ï\82ª\82O\82Ì\82Æ\82«\82Ì\91Î\8dô
+ absMatrixAB += vmMatrix3(1.0e-5f);
+ absMatrixBA += vmMatrix3(1.0e-5f);
+
+ vmMatrix3 lsqrs, projOffset, projAhalf, projBhalf;
+
+ lsqrs.setCol0( mulPerElem( matrixBA.getCol2(), matrixBA.getCol2() ) +
+ mulPerElem( matrixBA.getCol1(), matrixBA.getCol1() ) );
+ lsqrs.setCol1( mulPerElem( matrixBA.getCol2(), matrixBA.getCol2() ) +
+ mulPerElem( matrixBA.getCol0(), matrixBA.getCol0() ) );
+ lsqrs.setCol2( mulPerElem( matrixBA.getCol1(), matrixBA.getCol1() ) +
+ mulPerElem( matrixBA.getCol0(), matrixBA.getCol0() ) );
+
+ projOffset.setCol0(matrixBA.getCol1() * offsetAB.getZ() - matrixBA.getCol2() * offsetAB.getY());
+ projOffset.setCol1(matrixBA.getCol2() * offsetAB.getX() - matrixBA.getCol0() * offsetAB.getZ());
+ projOffset.setCol2(matrixBA.getCol0() * offsetAB.getY() - matrixBA.getCol1() * offsetAB.getX());
+
+ projAhalf.setCol0(absMatrixBA.getCol1() * boxA.mHalf.getZ() + absMatrixBA.getCol2() * boxA.mHalf.getY());
+ projAhalf.setCol1(absMatrixBA.getCol2() * boxA.mHalf.getX() + absMatrixBA.getCol0() * boxA.mHalf.getZ());
+ projAhalf.setCol2(absMatrixBA.getCol0() * boxA.mHalf.getY() + absMatrixBA.getCol1() * boxA.mHalf.getX());
+
+ projBhalf.setCol0(absMatrixAB.getCol1() * boxB.mHalf.getZ() + absMatrixAB.getCol2() * boxB.mHalf.getY());
+ projBhalf.setCol1(absMatrixAB.getCol2() * boxB.mHalf.getX() + absMatrixAB.getCol0() * boxB.mHalf.getZ());
+ projBhalf.setCol2(absMatrixAB.getCol0() * boxB.mHalf.getY() + absMatrixAB.getCol1() * boxB.mHalf.getX());
+
+ vmMatrix3 gapsAxB = absPerElem(projOffset) - projAhalf - transpose(projBhalf);
+
+ CrossAxisTest(0,0,X);
+ CrossAxisTest(0,1,Y);
+ CrossAxisTest(0,2,Z);
+ CrossAxisTest(1,0,X);
+ CrossAxisTest(1,1,Y);
+ CrossAxisTest(1,2,Z);
+ CrossAxisTest(2,0,X);
+ CrossAxisTest(2,1,Y);
+ CrossAxisTest(2,2,Z);
+
+ // need to pick the face on each box whose normal best matches the separating axis.
+ // will transform vectors to be in the coordinate system of this face to simplify things later.
+ // for this, a permutation matrix can be used, which the next section computes.
+
+ int dimA[3], dimB[3];
+
+ if ( axisType == A_AXIS ) {
+ if ( dot(axisA,offsetAB) < 0.0f )
+ axisA = -axisA;
+ axisB = matrixBA * -axisA;
+
+ vmVector3 absAxisB = vmVector3(absPerElem(axisB));
+
+ if ( ( absAxisB[0] > absAxisB[1] ) && ( absAxisB[0] > absAxisB[2] ) )
+ faceDimB = 0;
+ else if ( absAxisB[1] > absAxisB[2] )
+ faceDimB = 1;
+ else
+ faceDimB = 2;
+ } else if ( axisType == B_AXIS ) {
+ if ( dot(axisB,offsetBA) < 0.0f )
+ axisB = -axisB;
+ axisA = matrixAB * -axisB;
+
+ vmVector3 absAxisA = vmVector3(absPerElem(axisA));
+
+ if ( ( absAxisA[0] > absAxisA[1] ) && ( absAxisA[0] > absAxisA[2] ) )
+ faceDimA = 0;
+ else if ( absAxisA[1] > absAxisA[2] )
+ faceDimA = 1;
+ else
+ faceDimA = 2;
+ }
+
+ if ( axisType == CROSS_AXIS ) {
+ if ( dot(axisA,offsetAB) < 0.0f )
+ axisA = -axisA;
+ axisB = matrixBA * -axisA;
+
+ vmVector3 absAxisA = vmVector3(absPerElem(axisA));
+ vmVector3 absAxisB = vmVector3(absPerElem(axisB));
+
+ dimA[1] = edgeDimA;
+ dimB[1] = edgeDimB;
+
+ if ( edgeDimA == 0 ) {
+ if ( absAxisA[1] > absAxisA[2] ) {
+ dimA[0] = 2;
+ dimA[2] = 1;
+ } else {
+ dimA[0] = 1;
+ dimA[2] = 2;
+ }
+ } else if ( edgeDimA == 1 ) {
+ if ( absAxisA[2] > absAxisA[0] ) {
+ dimA[0] = 0;
+ dimA[2] = 2;
+ } else {
+ dimA[0] = 2;
+ dimA[2] = 0;
+ }
+ } else {
+ if ( absAxisA[0] > absAxisA[1] ) {
+ dimA[0] = 1;
+ dimA[2] = 0;
+ } else {
+ dimA[0] = 0;
+ dimA[2] = 1;
+ }
+ }
+
+ if ( edgeDimB == 0 ) {
+ if ( absAxisB[1] > absAxisB[2] ) {
+ dimB[0] = 2;
+ dimB[2] = 1;
+ } else {
+ dimB[0] = 1;
+ dimB[2] = 2;
+ }
+ } else if ( edgeDimB == 1 ) {
+ if ( absAxisB[2] > absAxisB[0] ) {
+ dimB[0] = 0;
+ dimB[2] = 2;
+ } else {
+ dimB[0] = 2;
+ dimB[2] = 0;
+ }
+ } else {
+ if ( absAxisB[0] > absAxisB[1] ) {
+ dimB[0] = 1;
+ dimB[2] = 0;
+ } else {
+ dimB[0] = 0;
+ dimB[2] = 1;
+ }
+ }
+ } else {
+ dimA[2] = faceDimA;
+ dimA[0] = (faceDimA+1)%3;
+ dimA[1] = (faceDimA+2)%3;
+ dimB[2] = faceDimB;
+ dimB[0] = (faceDimB+1)%3;
+ dimB[1] = (faceDimB+2)%3;
+ }
+
+ vmMatrix3 aperm_col, bperm_col;
+
+ aperm_col.setCol0(ident[dimA[0]]);
+ aperm_col.setCol1(ident[dimA[1]]);
+ aperm_col.setCol2(ident[dimA[2]]);
+
+ bperm_col.setCol0(ident[dimB[0]]);
+ bperm_col.setCol1(ident[dimB[1]]);
+ bperm_col.setCol2(ident[dimB[2]]);
+
+ vmMatrix3 aperm_row, bperm_row;
+
+ aperm_row = transpose(aperm_col);
+ bperm_row = transpose(bperm_col);
+
+ // permute all box parameters to be in the face coordinate systems
+
+ vmMatrix3 matrixAB_perm = aperm_row * matrixAB * bperm_col;
+ vmMatrix3 matrixBA_perm = transpose(matrixAB_perm);
+
+ vmVector3 offsetAB_perm, offsetBA_perm;
+
+ offsetAB_perm = aperm_row * offsetAB;
+ offsetBA_perm = bperm_row * offsetBA;
+
+ vmVector3 halfA_perm, halfB_perm;
+
+ halfA_perm = aperm_row * boxA.mHalf;
+ halfB_perm = bperm_row * boxB.mHalf;
+
+ // compute the vector between the centers of each face, in each face's coordinate frame
+
+ vmVector3 signsA_perm, signsB_perm, scalesA_perm, scalesB_perm, faceOffsetAB_perm, faceOffsetBA_perm;
+
+ signsA_perm = copySignPerElem(vmVector3(1.0f),aperm_row * axisA);
+ signsB_perm = copySignPerElem(vmVector3(1.0f),bperm_row * axisB);
+ scalesA_perm = mulPerElem( signsA_perm, halfA_perm );
+ scalesB_perm = mulPerElem( signsB_perm, halfB_perm );
+
+ faceOffsetAB_perm = offsetAB_perm + matrixAB_perm.getCol2() * scalesB_perm.getZ();
+ faceOffsetAB_perm.setZ( faceOffsetAB_perm.getZ() - scalesA_perm.getZ() );
+
+ faceOffsetBA_perm = offsetBA_perm + matrixBA_perm.getCol2() * scalesA_perm.getZ();
+ faceOffsetBA_perm.setZ( faceOffsetBA_perm.getZ() - scalesB_perm.getZ() );
+
+ if ( maxGap < 0.0f ) {
+ // if boxes overlap, this will separate the faces for finding points of penetration.
+
+ faceOffsetAB_perm -= aperm_row * axisA * maxGap * 1.01f;
+ faceOffsetBA_perm -= bperm_row * axisB * maxGap * 1.01f;
+ }
+
+ // for each vertex/face or edge/edge pair of the two faces, find the closest points.
+ //
+ // these points each have an associated box feature (vertex, edge, or face). if each
+ // point is in the external Voronoi region of the other's feature, they are the
+ // closest points of the boxes, and the algorithm can exit.
+ //
+ // the feature pairs are arranged so that in the general case, the first test will
+ // succeed. degenerate cases (parallel faces) may require up to all tests in the
+ // worst case.
+ //
+ // if for some reason no case passes the Voronoi test, the features with the minimum
+ // distance are returned.
+
+ vmPoint3 localPointA_perm, localPointB_perm;
+ float minDistSqr;
+ bool done;
+
+ vmVector3 hA_perm( halfA_perm ), hB_perm( halfB_perm );
+
+ localPointA_perm.setZ( scalesA_perm.getZ() );
+ localPointB_perm.setZ( scalesB_perm.getZ() );
+ scalesA_perm.setZ(0.0f);
+ scalesB_perm.setZ(0.0f);
+
+ int otherFaceDimA, otherFaceDimB;
+ FeatureType featureA, featureB;
+
+ if ( axisType == CROSS_AXIS ) {
+ EdgeEdgeTests( done, minDistSqr, localPointA_perm, localPointB_perm,
+ otherFaceDimA, otherFaceDimB, featureA, featureB,
+ hA_perm, hB_perm, faceOffsetAB_perm, faceOffsetBA_perm,
+ matrixAB_perm, matrixBA_perm, signsA_perm, signsB_perm,
+ scalesA_perm, scalesB_perm, true );
+
+ if ( !done ) {
+ VertexBFaceATests( done, minDistSqr, localPointA_perm, localPointB_perm,
+ featureA, featureB,
+ hA_perm, faceOffsetAB_perm, faceOffsetBA_perm,
+ matrixAB_perm, matrixBA_perm, signsB_perm, scalesB_perm, false );
+
+ if ( !done ) {
+ VertexAFaceBTests( done, minDistSqr, localPointA_perm, localPointB_perm,
+ featureA, featureB,
+ hB_perm, faceOffsetAB_perm, faceOffsetBA_perm,
+ matrixAB_perm, matrixBA_perm, signsA_perm, scalesA_perm, false );
+ }
+ }
+ } else if ( axisType == B_AXIS ) {
+ VertexAFaceBTests( done, minDistSqr, localPointA_perm, localPointB_perm,
+ featureA, featureB,
+ hB_perm, faceOffsetAB_perm, faceOffsetBA_perm,
+ matrixAB_perm, matrixBA_perm, signsA_perm, scalesA_perm, true );
+
+ if ( !done ) {
+ VertexBFaceATests( done, minDistSqr, localPointA_perm, localPointB_perm,
+ featureA, featureB,
+ hA_perm, faceOffsetAB_perm, faceOffsetBA_perm,
+ matrixAB_perm, matrixBA_perm, signsB_perm, scalesB_perm, false );
+
+ if ( !done ) {
+ EdgeEdgeTests( done, minDistSqr, localPointA_perm, localPointB_perm,
+ otherFaceDimA, otherFaceDimB, featureA, featureB,
+ hA_perm, hB_perm, faceOffsetAB_perm, faceOffsetBA_perm,
+ matrixAB_perm, matrixBA_perm, signsA_perm, signsB_perm,
+ scalesA_perm, scalesB_perm, false );
+ }
+ }
+ } else {
+ VertexBFaceATests( done, minDistSqr, localPointA_perm, localPointB_perm,
+ featureA, featureB,
+ hA_perm, faceOffsetAB_perm, faceOffsetBA_perm,
+ matrixAB_perm, matrixBA_perm, signsB_perm, scalesB_perm, true );
+
+ if ( !done ) {
+ VertexAFaceBTests( done, minDistSqr, localPointA_perm, localPointB_perm,
+ featureA, featureB,
+ hB_perm, faceOffsetAB_perm, faceOffsetBA_perm,
+ matrixAB_perm, matrixBA_perm, signsA_perm, scalesA_perm, false );
+
+ if ( !done ) {
+ EdgeEdgeTests( done, minDistSqr, localPointA_perm, localPointB_perm,
+ otherFaceDimA, otherFaceDimB, featureA, featureB,
+ hA_perm, hB_perm, faceOffsetAB_perm, faceOffsetBA_perm,
+ matrixAB_perm, matrixBA_perm, signsA_perm, signsB_perm,
+ scalesA_perm, scalesB_perm, false );
+ }
+ }
+ }
+
+ // convert local points from face-local to box-local coordinate system
+
+
+ boxPointA.localPoint = vmPoint3( aperm_col * vmVector3( localPointA_perm )) ;
+ boxPointB.localPoint = vmPoint3( bperm_col * vmVector3( localPointB_perm )) ;
+
+#if 0
+ // find which features of the boxes are involved.
+ // the only feature pairs which occur in this function are VF, FV, and EE, even though the
+ // closest points might actually lie on sub-features, as in a VF contact might be used for
+ // what's actually a VV contact. this means some feature pairs could possibly seem distinct
+ // from others, although their contact positions are the same. don't know yet whether this
+ // matters.
+
+ int sA[3], sB[3];
+
+ sA[0] = boxPointA.localPoint.getX() > 0.0f;
+ sA[1] = boxPointA.localPoint.getY() > 0.0f;
+ sA[2] = boxPointA.localPoint.getZ() > 0.0f;
+
+ sB[0] = boxPointB.localPoint.getX() > 0.0f;
+ sB[1] = boxPointB.localPoint.getY() > 0.0f;
+ sB[2] = boxPointB.localPoint.getZ() > 0.0f;
+
+ if ( featureA == F ) {
+ boxPointA.setFaceFeature( dimA[2], sA[dimA[2]] );
+ } else if ( featureA == E ) {
+ boxPointA.setEdgeFeature( dimA[2], sA[dimA[2]], dimA[otherFaceDimA], sA[dimA[otherFaceDimA]] );
+ } else {
+ boxPointA.setVertexFeature( sA[0], sA[1], sA[2] );
+ }
+
+ if ( featureB == F ) {
+ boxPointB.setFaceFeature( dimB[2], sB[dimB[2]] );
+ } else if ( featureB == E ) {
+ boxPointB.setEdgeFeature( dimB[2], sB[dimB[2]], dimB[otherFaceDimB], sB[dimB[otherFaceDimB]] );
+ } else {
+ boxPointB.setVertexFeature( sB[0], sB[1], sB[2] );
+ }
+#endif
+
+ normal = transformA * axisA;
+
+ if ( maxGap < 0.0f ) {
+ return (maxGap);
+ } else {
+ return (sqrtf( minDistSqr ));
+ }
+}
--- /dev/null
+/*
+ Copyright (C) 2006, 2008 Sony Computer Entertainment Inc.
+ All rights reserved.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+*/
+
+
+#ifndef __BOXBOXDISTANCE_H__
+#define __BOXBOXDISTANCE_H__
+
+
+#include "Box.h"
+
+
+//---------------------------------------------------------------------------
+// boxBoxDistance:
+//
+// description:
+// this computes info that can be used for the collision response of two boxes. when the boxes
+// do not overlap, the points are set to the closest points of the boxes, and a positive
+// distance between them is returned. if the boxes do overlap, a negative distance is returned
+// and the points are set to two points that would touch after the boxes are translated apart.
+// the contact normal gives the direction to repel or separate the boxes when they touch or
+// overlap (it's being approximated here as one of the 15 "separating axis" directions).
+//
+// returns:
+// positive or negative distance between two boxes.
+//
+// args:
+// vmVector3& normal: set to a unit contact normal pointing from box A to box B.
+//
+// BoxPoint& boxPointA, BoxPoint& boxPointB:
+// set to a closest point or point of penetration on each box.
+//
+// Box boxA, Box boxB:
+// boxes, represented as 3 half-widths
+//
+// const vmTransform3& transformA, const vmTransform3& transformB:
+// box transformations, in world coordinates
+//
+// float distanceThreshold:
+// the algorithm will exit early if it finds that the boxes are more distant than this
+// threshold, and not compute a contact normal or points. if this distance returned
+// exceeds the threshold, all the other output data may not have been computed. by
+// default, this is set to MAX_FLOAT so it will have no effect.
+//
+//---------------------------------------------------------------------------
+
+float
+boxBoxDistance(vmVector3& normal, BoxPoint& boxPointA, BoxPoint& boxPointB,
+ PE_REF(Box) boxA, const vmTransform3 & transformA, PE_REF(Box) boxB,
+ const vmTransform3 & transformB,
+ float distanceThreshold = FLT_MAX );
+
+#endif /* __BOXBOXDISTANCE_H__ */
--- /dev/null
+Empty placeholder for future Libspe2 SPU task
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library, Copyright (c) 2007 Erwin Coumans
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+*/
+
+
+#include "SpuSampleTask.h"
+#include "BulletDynamics/Dynamics/btRigidBody.h"
+#include "../PlatformDefinitions.h"
+#include "../SpuFakeDma.h"
+#include "LinearMath/btMinMax.h"
+
+#ifdef __SPU__
+#include <spu_printf.h>
+#else
+#include <stdio.h>
+#define spu_printf printf
+#endif
+
+#define MAX_NUM_BODIES 8192
+
+struct SampleTask_LocalStoreMemory
+{
+ ATTRIBUTE_ALIGNED16(char gLocalRigidBody [sizeof(btRigidBody)+16]);
+ ATTRIBUTE_ALIGNED16(void* gPointerArray[MAX_NUM_BODIES]);
+
+};
+
+
+
+
+//-- MAIN METHOD
+void processSampleTask(void* userPtr, void* lsMemory)
+{
+ // BT_PROFILE("processSampleTask");
+
+ SampleTask_LocalStoreMemory* localMemory = (SampleTask_LocalStoreMemory*)lsMemory;
+
+ SpuSampleTaskDesc* taskDescPtr = (SpuSampleTaskDesc*)userPtr;
+ SpuSampleTaskDesc& taskDesc = *taskDescPtr;
+
+ switch (taskDesc.m_sampleCommand)
+ {
+ case CMD_SAMPLE_INTEGRATE_BODIES:
+ {
+ btTransform predictedTrans;
+ btCollisionObject** eaPtr = (btCollisionObject**)taskDesc.m_mainMemoryPtr;
+
+ int batchSize = taskDesc.m_sampleValue;
+ if (batchSize>MAX_NUM_BODIES)
+ {
+ spu_printf("SPU Error: exceed number of bodies, see MAX_NUM_BODIES in SpuSampleTask.cpp\n");
+ break;
+ }
+ int dmaArraySize = batchSize*sizeof(void*);
+
+ uint64_t ppuArrayAddress = reinterpret_cast<uint64_t>(eaPtr);
+
+ // spu_printf("array location is at %llx, batchSize = %d, DMA size = %d\n",ppuArrayAddress,batchSize,dmaArraySize);
+
+ if (dmaArraySize>=16)
+ {
+ cellDmaLargeGet((void*)&localMemory->gPointerArray[0], ppuArrayAddress , dmaArraySize, DMA_TAG(1), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+ } else
+ {
+ stallingUnalignedDmaSmallGet((void*)&localMemory->gPointerArray[0], ppuArrayAddress , dmaArraySize);
+ }
+
+
+ for ( int i=0;i<batchSize;i++)
+ {
+ ///DMA rigid body
+
+ void* localPtr = &localMemory->gLocalRigidBody[0];
+ void* shortAdd = localMemory->gPointerArray[i];
+ uint64_t ppuRigidBodyAddress = reinterpret_cast<uint64_t>(shortAdd);
+
+ // spu_printf("cellDmaGet at CMD_SAMPLE_INTEGRATE_BODIES from %llx to %llx\n",ppuRigidBodyAddress,localPtr);
+
+ int dmaBodySize = sizeof(btRigidBody);
+
+ cellDmaGet((void*)localPtr, ppuRigidBodyAddress , dmaBodySize, DMA_TAG(1), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+
+
+ float timeStep = 1.f/60.f;
+
+ btRigidBody* body = (btRigidBody*) localPtr;//btRigidBody::upcast(colObj);
+ if (body)
+ {
+ if (body->isActive() && (!body->isStaticOrKinematicObject()))
+ {
+ body->predictIntegratedTransform(timeStep, predictedTrans);
+ body->proceedToTransform( predictedTrans);
+ void* ptr = (void*)localPtr;
+ // spu_printf("cellDmaLargePut from %llx to LS %llx\n",ptr,ppuRigidBodyAddress);
+
+ cellDmaLargePut(ptr, ppuRigidBodyAddress , dmaBodySize, DMA_TAG(1), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+
+ }
+ }
+
+ }
+ break;
+ }
+
+
+ case CMD_SAMPLE_PREDICT_MOTION_BODIES:
+ {
+ btTransform predictedTrans;
+ btCollisionObject** eaPtr = (btCollisionObject**)taskDesc.m_mainMemoryPtr;
+
+ int batchSize = taskDesc.m_sampleValue;
+ int dmaArraySize = batchSize*sizeof(void*);
+
+ if (batchSize>MAX_NUM_BODIES)
+ {
+ spu_printf("SPU Error: exceed number of bodies, see MAX_NUM_BODIES in SpuSampleTask.cpp\n");
+ break;
+ }
+
+ uint64_t ppuArrayAddress = reinterpret_cast<uint64_t>(eaPtr);
+
+ // spu_printf("array location is at %llx, batchSize = %d, DMA size = %d\n",ppuArrayAddress,batchSize,dmaArraySize);
+
+ if (dmaArraySize>=16)
+ {
+ cellDmaLargeGet((void*)&localMemory->gPointerArray[0], ppuArrayAddress , dmaArraySize, DMA_TAG(1), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+ } else
+ {
+ stallingUnalignedDmaSmallGet((void*)&localMemory->gPointerArray[0], ppuArrayAddress , dmaArraySize);
+ }
+
+
+ for ( int i=0;i<batchSize;i++)
+ {
+ ///DMA rigid body
+
+ void* localPtr = &localMemory->gLocalRigidBody[0];
+ void* shortAdd = localMemory->gPointerArray[i];
+ uint64_t ppuRigidBodyAddress = reinterpret_cast<uint64_t>(shortAdd);
+
+ // spu_printf("cellDmaGet at CMD_SAMPLE_INTEGRATE_BODIES from %llx to %llx\n",ppuRigidBodyAddress,localPtr);
+
+ int dmaBodySize = sizeof(btRigidBody);
+
+ cellDmaGet((void*)localPtr, ppuRigidBodyAddress , dmaBodySize, DMA_TAG(1), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+
+
+ float timeStep = 1.f/60.f;
+
+ btRigidBody* body = (btRigidBody*) localPtr;//btRigidBody::upcast(colObj);
+ if (body)
+ {
+ if (!body->isStaticOrKinematicObject())
+ {
+ if (body->isActive())
+ {
+ body->integrateVelocities( timeStep);
+ //damping
+ body->applyDamping(timeStep);
+
+ body->predictIntegratedTransform(timeStep,body->getInterpolationWorldTransform());
+
+ void* ptr = (void*)localPtr;
+ cellDmaLargePut(ptr, ppuRigidBodyAddress , dmaBodySize, DMA_TAG(1), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(1));
+ }
+ }
+ }
+
+ }
+ break;
+ }
+
+
+
+ default:
+ {
+
+ }
+ };
+}
+
+
+#if defined(__CELLOS_LV2__) || defined (LIBSPE2)
+
+ATTRIBUTE_ALIGNED16(SampleTask_LocalStoreMemory gLocalStoreMemory);
+
+void* createSampleLocalStoreMemory()
+{
+ return &gLocalStoreMemory;
+}
+#else
+void* createSampleLocalStoreMemory()
+{
+ return new SampleTask_LocalStoreMemory;
+};
+
+#endif
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library, Copyright (c) 2007 Erwin Coumans
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+*/
+
+#ifndef SPU_SAMPLE_TASK_H
+#define SPU_SAMPLE_TASK_H
+
+#include "../PlatformDefinitions.h"
+#include "LinearMath/btScalar.h"
+#include "LinearMath/btVector3.h"
+#include "LinearMath/btMatrix3x3.h"
+
+#include "LinearMath/btAlignedAllocator.h"
+
+
+enum
+{
+ CMD_SAMPLE_INTEGRATE_BODIES = 1,
+ CMD_SAMPLE_PREDICT_MOTION_BODIES
+};
+
+
+
+ATTRIBUTE_ALIGNED16(struct) SpuSampleTaskDesc
+{
+ BT_DECLARE_ALIGNED_ALLOCATOR();
+
+ uint32_t m_sampleCommand;
+ uint32_t m_taskId;
+
+ uint64_t m_mainMemoryPtr;
+ int m_sampleValue;
+
+
+};
+
+
+void processSampleTask(void* userPtr, void* lsMemory);
+void* createSampleLocalStoreMemory();
+
+
+#endif //SPU_SAMPLE_TASK_H
+
--- /dev/null
+Empty placeholder for future Libspe2 SPU task
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+//#define __CELLOS_LV2__ 1
+
+#define USE_SAMPLE_PROCESS 1
+#ifdef USE_SAMPLE_PROCESS
+
+
+#include "SpuSampleTaskProcess.h"
+#include <stdio.h>
+
+#ifdef __SPU__
+
+
+
+void SampleThreadFunc(void* userPtr,void* lsMemory)
+{
+ //do nothing
+ printf("hello world\n");
+}
+
+
+void* SamplelsMemoryFunc()
+{
+ //don't create local store memory, just return 0
+ return 0;
+}
+
+
+#else
+
+
+#include "btThreadSupportInterface.h"
+
+//# include "SPUAssert.h"
+#include <string.h>
+
+
+
+extern "C" {
+ extern char SPU_SAMPLE_ELF_SYMBOL[];
+}
+
+
+
+
+
+SpuSampleTaskProcess::SpuSampleTaskProcess(btThreadSupportInterface* threadInterface, int maxNumOutstandingTasks)
+:m_threadInterface(threadInterface),
+m_maxNumOutstandingTasks(maxNumOutstandingTasks)
+{
+
+ m_taskBusy.resize(m_maxNumOutstandingTasks);
+ m_spuSampleTaskDesc.resize(m_maxNumOutstandingTasks);
+
+ for (int i = 0; i < m_maxNumOutstandingTasks; i++)
+ {
+ m_taskBusy[i] = false;
+ }
+ m_numBusyTasks = 0;
+ m_currentTask = 0;
+
+ m_initialized = false;
+
+ m_threadInterface->startSPU();
+
+
+}
+
+SpuSampleTaskProcess::~SpuSampleTaskProcess()
+{
+ m_threadInterface->stopSPU();
+
+}
+
+
+
+void SpuSampleTaskProcess::initialize()
+{
+#ifdef DEBUG_SPU_TASK_SCHEDULING
+ printf("SpuSampleTaskProcess::initialize()\n");
+#endif //DEBUG_SPU_TASK_SCHEDULING
+
+ for (int i = 0; i < m_maxNumOutstandingTasks; i++)
+ {
+ m_taskBusy[i] = false;
+ }
+ m_numBusyTasks = 0;
+ m_currentTask = 0;
+ m_initialized = true;
+
+}
+
+
+void SpuSampleTaskProcess::issueTask(void* sampleMainMemPtr,int sampleValue,int sampleCommand)
+{
+
+#ifdef DEBUG_SPU_TASK_SCHEDULING
+ printf("SpuSampleTaskProcess::issueTask (m_currentTask= %d\)n", m_currentTask);
+#endif //DEBUG_SPU_TASK_SCHEDULING
+
+ m_taskBusy[m_currentTask] = true;
+ m_numBusyTasks++;
+
+ SpuSampleTaskDesc& taskDesc = m_spuSampleTaskDesc[m_currentTask];
+ {
+ // send task description in event message
+ // no error checking here...
+ // but, currently, event queue can be no larger than NUM_WORKUNIT_TASKS.
+
+ taskDesc.m_mainMemoryPtr = reinterpret_cast<uint64_t>(sampleMainMemPtr);
+ taskDesc.m_sampleValue = sampleValue;
+ taskDesc.m_sampleCommand = sampleCommand;
+
+ //some bookkeeping to recognize finished tasks
+ taskDesc.m_taskId = m_currentTask;
+ }
+
+
+ m_threadInterface->sendRequest(1, (ppu_address_t) &taskDesc, m_currentTask);
+
+ // if all tasks busy, wait for spu event to clear the task.
+
+ if (m_numBusyTasks >= m_maxNumOutstandingTasks)
+ {
+ unsigned int taskId;
+ unsigned int outputSize;
+
+ for (int i=0;i<m_maxNumOutstandingTasks;i++)
+ {
+ if (m_taskBusy[i])
+ {
+ taskId = i;
+ break;
+ }
+ }
+ m_threadInterface->waitForResponse(&taskId, &outputSize);
+
+ //printf("PPU: after issue, received event: %u %d\n", taskId, outputSize);
+
+ postProcess(taskId, outputSize);
+
+ m_taskBusy[taskId] = false;
+
+ m_numBusyTasks--;
+ }
+
+ // find new task buffer
+ for (int i = 0; i < m_maxNumOutstandingTasks; i++)
+ {
+ if (!m_taskBusy[i])
+ {
+ m_currentTask = i;
+ break;
+ }
+ }
+}
+
+
+///Optional PPU-size post processing for each task
+void SpuSampleTaskProcess::postProcess(int taskId, int outputSize)
+{
+
+}
+
+
+void SpuSampleTaskProcess::flush()
+{
+#ifdef DEBUG_SPU_TASK_SCHEDULING
+ printf("\nSpuCollisionTaskProcess::flush()\n");
+#endif //DEBUG_SPU_TASK_SCHEDULING
+
+
+ // all tasks are issued, wait for all tasks to be complete
+ while(m_numBusyTasks > 0)
+ {
+// Consolidating SPU code
+ unsigned int taskId;
+ unsigned int outputSize;
+
+ for (int i=0;i<m_maxNumOutstandingTasks;i++)
+ {
+ if (m_taskBusy[i])
+ {
+ taskId = i;
+ break;
+ }
+ }
+ {
+
+ m_threadInterface->waitForResponse(&taskId, &outputSize);
+ }
+
+ //printf("PPU: flushing, received event: %u %d\n", taskId, outputSize);
+
+ postProcess(taskId, outputSize);
+
+ m_taskBusy[taskId] = false;
+
+ m_numBusyTasks--;
+ }
+
+
+}
+
+#endif
+
+
+#endif //USE_SAMPLE_PROCESS
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef BT_SPU_SAMPLE_TASK_PROCESS_H
+#define BT_SPU_SAMPLE_TASK_PROCESS_H
+
+#include <assert.h>
+
+
+#include "PlatformDefinitions.h"
+
+#include <stdlib.h>
+
+#include "LinearMath/btAlignedObjectArray.h"
+
+
+#include "SpuSampleTask/SpuSampleTask.h"
+
+
+//just add your commands here, try to keep them globally unique for debugging purposes
+#define CMD_SAMPLE_TASK_COMMAND 10
+
+
+
+/// SpuSampleTaskProcess handles SPU processing of collision pairs.
+/// When PPU issues a task, it will look for completed task buffers
+/// PPU will do postprocessing, dependent on workunit output (not likely)
+class SpuSampleTaskProcess
+{
+ // track task buffers that are being used, and total busy tasks
+ btAlignedObjectArray<bool> m_taskBusy;
+ btAlignedObjectArray<SpuSampleTaskDesc>m_spuSampleTaskDesc;
+
+ int m_numBusyTasks;
+
+ // the current task and the current entry to insert a new work unit
+ int m_currentTask;
+
+ bool m_initialized;
+
+ void postProcess(int taskId, int outputSize);
+
+ class btThreadSupportInterface* m_threadInterface;
+
+ int m_maxNumOutstandingTasks;
+
+
+
+public:
+ SpuSampleTaskProcess(btThreadSupportInterface* threadInterface, int maxNumOutstandingTasks);
+
+ ~SpuSampleTaskProcess();
+
+ ///call initialize in the beginning of the frame, before addCollisionPairToTask
+ void initialize();
+
+ void issueTask(void* sampleMainMemPtr,int sampleValue,int sampleCommand);
+
+ ///call flush to submit potential outstanding work to SPUs and wait for all involved SPUs to be finished
+ void flush();
+};
+
+
+#if defined(USE_LIBSPE2) && defined(__SPU__)
+////////////////////MAIN/////////////////////////////
+#include "../SpuLibspe2Support.h"
+#include <spu_intrinsics.h>
+#include <spu_mfcio.h>
+#include <SpuFakeDma.h>
+
+void * SamplelsMemoryFunc();
+void SampleThreadFunc(void* userPtr,void* lsMemory);
+
+//#define DEBUG_LIBSPE2_MAINLOOP
+
+int main(unsigned long long speid, addr64 argp, addr64 envp)
+{
+ printf("SPU is up \n");
+
+ ATTRIBUTE_ALIGNED128(btSpuStatus status);
+ ATTRIBUTE_ALIGNED16( SpuSampleTaskDesc taskDesc ) ;
+ unsigned int received_message = Spu_Mailbox_Event_Nothing;
+ bool shutdown = false;
+
+ cellDmaGet(&status, argp.ull, sizeof(btSpuStatus), DMA_TAG(3), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(3));
+
+ status.m_status = Spu_Status_Free;
+ status.m_lsMemory.p = SamplelsMemoryFunc();
+
+ cellDmaLargePut(&status, argp.ull, sizeof(btSpuStatus), DMA_TAG(3), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(3));
+
+
+ while (!shutdown)
+ {
+ received_message = spu_read_in_mbox();
+
+
+
+ switch(received_message)
+ {
+ case Spu_Mailbox_Event_Shutdown:
+ shutdown = true;
+ break;
+ case Spu_Mailbox_Event_Task:
+ // refresh the status
+#ifdef DEBUG_LIBSPE2_MAINLOOP
+ printf("SPU recieved Task \n");
+#endif //DEBUG_LIBSPE2_MAINLOOP
+ cellDmaGet(&status, argp.ull, sizeof(btSpuStatus), DMA_TAG(3), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(3));
+
+ btAssert(status.m_status==Spu_Status_Occupied);
+
+ cellDmaGet(&taskDesc, status.m_taskDesc.p, sizeof(SpuSampleTaskDesc), DMA_TAG(3), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(3));
+
+ SampleThreadFunc((void*)&taskDesc, reinterpret_cast<void*> (taskDesc.m_mainMemoryPtr) );
+ break;
+ case Spu_Mailbox_Event_Nothing:
+ default:
+ break;
+ }
+
+ // set to status free and wait for next task
+ status.m_status = Spu_Status_Free;
+ cellDmaLargePut(&status, argp.ull, sizeof(btSpuStatus), DMA_TAG(3), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(3));
+
+
+ }
+ return 0;
+}
+//////////////////////////////////////////////////////
+#endif
+
+
+
+#endif // BT_SPU_SAMPLE_TASK_PROCESS_H
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2007 Starbreeze Studios
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+Written by: Marten Svanfeldt
+*/
+
+#ifndef BT_SPU_SYNC_H
+#define BT_SPU_SYNC_H
+
+
+#include "PlatformDefinitions.h"
+
+
+#if defined(WIN32)
+
+#define WIN32_LEAN_AND_MEAN
+#ifdef _XBOX
+#include <Xtl.h>
+#else
+#include <Windows.h>
+#endif
+
+///The btSpinlock is a structure to allow multi-platform synchronization. This allows to port the SPU tasks to other platforms.
+class btSpinlock
+{
+public:
+ //typedef volatile LONG SpinVariable;
+ typedef CRITICAL_SECTION SpinVariable;
+
+ btSpinlock (SpinVariable* var)
+ : spinVariable (var)
+ {}
+
+ void Init ()
+ {
+ //*spinVariable = 0;
+ InitializeCriticalSection(spinVariable);
+ }
+
+ void Lock ()
+ {
+ EnterCriticalSection(spinVariable);
+ }
+
+ void Unlock ()
+ {
+ LeaveCriticalSection(spinVariable);
+ }
+
+private:
+ SpinVariable* spinVariable;
+};
+
+
+#elif defined (__CELLOS_LV2__)
+
+//#include <cell/atomic.h>
+#include <cell/sync/mutex.h>
+
+///The btSpinlock is a structure to allow multi-platform synchronization. This allows to port the SPU tasks to other platforms.
+class btSpinlock
+{
+public:
+ typedef CellSyncMutex SpinVariable;
+
+ btSpinlock (SpinVariable* var)
+ : spinVariable (var)
+ {}
+
+ void Init ()
+ {
+#ifndef __SPU__
+ //*spinVariable = 1;
+ cellSyncMutexInitialize(spinVariable);
+#endif
+ }
+
+
+
+ void Lock ()
+ {
+#ifdef __SPU__
+ // lock semaphore
+ /*while (cellAtomicTestAndDecr32(atomic_buf, (uint64_t)spinVariable) == 0)
+ {
+
+ };*/
+ cellSyncMutexLock((uint64_t)spinVariable);
+#endif
+ }
+
+ void Unlock ()
+ {
+#ifdef __SPU__
+ //cellAtomicIncr32(atomic_buf, (uint64_t)spinVariable);
+ cellSyncMutexUnlock((uint64_t)spinVariable);
+#endif
+ }
+
+
+private:
+ SpinVariable* spinVariable;
+ ATTRIBUTE_ALIGNED128(uint32_t atomic_buf[32]);
+};
+
+#else
+//create a dummy implementation (without any locking) useful for serial processing
+class btSpinlock
+{
+public:
+ typedef int SpinVariable;
+
+ btSpinlock (SpinVariable* var)
+ : spinVariable (var)
+ {}
+
+ void Init ()
+ {
+ }
+
+ void Lock ()
+ {
+ }
+
+ void Unlock ()
+ {
+ }
+
+private:
+ SpinVariable* spinVariable;
+};
+
+
+#endif
+
+
+#endif //BT_SPU_SYNC_H
+
--- /dev/null
+/*
+ Copyright (C) 2009 Sony Computer Entertainment Inc.
+ All rights reserved.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+*/
+
+#ifndef BT_RB_DYN_BODY_H__
+#define BT_RB_DYN_BODY_H__
+
+#include "vectormath/vmInclude.h"
+using namespace Vectormath::Aos;
+
+#include "TrbStateVec.h"
+
+class CollObject;
+
+class TrbDynBody
+{
+public:
+ TrbDynBody()
+ {
+ fMass = 0.0f;
+ fCollObject = NULL;
+ fElasticity = 0.2f;
+ fFriction = 0.8f;
+ }
+
+ // Get methods
+ float getMass() const {return fMass;};
+ float getElasticity() const {return fElasticity;}
+ float getFriction() const {return fFriction;}
+ CollObject* getCollObject() const {return fCollObject;}
+ const Matrix3 &getBodyInertia() const {return fIBody;}
+ const Matrix3 &getBodyInertiaInv() const {return fIBodyInv;}
+ float getMassInv() const {return fMassInv;}
+
+ // Set methods
+ void setMass(float mass) {fMass=mass;fMassInv=mass>0.0f?1.0f/mass:0.0f;}
+ void setBodyInertia(const Matrix3 bodyInertia) {fIBody = bodyInertia;fIBodyInv = inverse(bodyInertia);}
+ void setElasticity(float elasticity) {fElasticity = elasticity;}
+ void setFriction(float friction) {fFriction = friction;}
+ void setCollObject(CollObject *collObj) {fCollObject = collObj;}
+
+ void setBodyInertiaInv(const Matrix3 bodyInertiaInv)
+ {
+ fIBody = inverse(bodyInertiaInv);
+ fIBodyInv = bodyInertiaInv;
+ }
+ void setMassInv(float invMass) {
+ fMass= invMass>0.0f ? 1.0f/invMass :0.0f;
+ fMassInv=invMass;
+ }
+
+
+private:
+ // Rigid Body constants
+ float fMass; // Rigid Body mass
+ float fMassInv; // Inverse of mass
+ Matrix3 fIBody; // Inertia matrix in body's coords
+ Matrix3 fIBodyInv; // Inertia matrix inverse in body's coords
+ float fElasticity; // Coefficient of restitution
+ float fFriction; // Coefficient of friction
+
+public:
+ CollObject* fCollObject; // Collision object corresponding the RB
+} __attribute__ ((aligned(16)));
+
+#endif //BT_RB_DYN_BODY_H__
+
--- /dev/null
+/*
+ Copyright (C) 2009 Sony Computer Entertainment Inc.
+ All rights reserved.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+*/
+
+#ifndef BT_TRBSTATEVEC_H__
+#define BT_TRBSTATEVEC_H__
+
+#include <stdlib.h>
+#ifdef PFX_USE_FREE_VECTORMATH
+#include "vecmath/vmInclude.h"
+#else
+#include "vectormath/vmInclude.h"
+#endif //PFX_USE_FREE_VECTORMATH
+
+
+#include "PlatformDefinitions.h"
+
+
+static inline vmVector3 read_Vector3(const float* p)
+{
+ vmVector3 v;
+ loadXYZ(v, p);
+ return v;
+}
+
+static inline vmQuat read_Quat(const float* p)
+{
+ vmQuat vq;
+ loadXYZW(vq, p);
+ return vq;
+}
+
+static inline void store_Vector3(const vmVector3 &src, float* p)
+{
+ vmVector3 v = src;
+ storeXYZ(v, p);
+}
+
+static inline void store_Quat(const vmQuat &src, float* p)
+{
+ vmQuat vq = src;
+ storeXYZW(vq, p);
+}
+
+// Motion Type
+enum {
+ PfxMotionTypeFixed = 0,
+ PfxMotionTypeActive,
+ PfxMotionTypeKeyframe,
+ PfxMotionTypeOneWay,
+ PfxMotionTypeTrigger,
+ PfxMotionTypeCount
+};
+
+#define PFX_MOTION_MASK_DYNAMIC 0x0a // Active,OneWay
+#define PFX_MOTION_MASK_STATIC 0x95 // Fixed,Keyframe,Trigger,Sleeping
+#define PFX_MOTION_MASK_SLEEP 0x0e // Can sleep
+#define PFX_MOTION_MASK_TYPE 0x7f
+
+//
+// Rigid Body state
+//
+
+#ifdef __CELLOS_LV2__
+ATTRIBUTE_ALIGNED128(class) TrbState
+#else
+ATTRIBUTE_ALIGNED16(class) TrbState
+#endif
+
+{
+public:
+ TrbState()
+ {
+ setMotionType(PfxMotionTypeActive);
+ contactFilterSelf=contactFilterTarget=0xffffffff;
+ deleted = 0;
+ mSleeping = 0;
+ useSleep = 1;
+ trbBodyIdx=0;
+ mSleepCount=0;
+ useCcd = 0;
+ useContactCallback = 0;
+ useSleepCallback = 0;
+ linearDamping = 1.0f;
+ angularDamping = 0.99f;
+ }
+
+ TrbState(const uint8_t m, const vmVector3& x, const vmQuat& q, const vmVector3& v, const vmVector3& omega );
+
+ uint16_t mSleepCount;
+ uint8_t mMotionType;
+ uint8_t deleted : 1;
+ uint8_t mSleeping : 1;
+ uint8_t useSleep : 1;
+ uint8_t useCcd : 1;
+ uint8_t useContactCallback : 1;
+ uint8_t useSleepCallback : 1;
+
+ uint16_t trbBodyIdx;
+ uint32_t contactFilterSelf;
+ uint32_t contactFilterTarget;
+
+ float center[3]; // AABB center(World)
+ float half[3]; // AABB half(World)
+
+ float linearDamping;
+ float angularDamping;
+
+ float deltaLinearVelocity[3];
+ float deltaAngularVelocity[3];
+
+ float fX[3]; // position
+ float fQ[4]; // orientation
+ float fV[3]; // velocity
+ float fOmega[3]; // angular velocity
+
+ inline void setZero(); // Zeroes out the elements
+ inline void setIdentity(); // Sets the rotation to identity and zeroes out the other elements
+
+ bool isDeleted() const {return deleted==1;}
+
+ uint16_t getRigidBodyId() const {return trbBodyIdx;}
+ void setRigidBodyId(uint16_t i) {trbBodyIdx = i;}
+
+
+ uint32_t getContactFilterSelf() const {return contactFilterSelf;}
+ void setContactFilterSelf(uint32_t filter) {contactFilterSelf = filter;}
+
+ uint32_t getContactFilterTarget() const {return contactFilterTarget;}
+ void setContactFilterTarget(uint32_t filter) {contactFilterTarget = filter;}
+
+ float getLinearDamping() const {return linearDamping;}
+ float getAngularDamping() const {return angularDamping;}
+
+ void setLinearDamping(float damping) {linearDamping=damping;}
+ void setAngularDamping(float damping) {angularDamping=damping;}
+
+
+ uint8_t getMotionType() const {return mMotionType;}
+ void setMotionType(uint8_t t) {mMotionType = t;mSleeping=0;mSleepCount=0;}
+
+ uint8_t getMotionMask() const {return (1<<mMotionType)|(mSleeping<<7);}
+
+ bool isAsleep() const {return mSleeping==1;}
+ bool isAwake() const {return mSleeping==0;}
+
+ void wakeup() {mSleeping=0;mSleepCount=0;}
+ void sleep() {if(useSleep) {mSleeping=1;mSleepCount=0;}}
+
+ uint8_t getUseSleep() const {return useSleep;}
+ void setUseSleep(uint8_t b) {useSleep=b;}
+
+ uint8_t getUseCcd() const {return useCcd;}
+ void setUseCcd(uint8_t b) {useCcd=b;}
+
+ uint8_t getUseContactCallback() const {return useContactCallback;}
+ void setUseContactCallback(uint8_t b) {useContactCallback=b;}
+
+ uint8_t getUseSleepCallback() const {return useSleepCallback;}
+ void setUseSleepCallback(uint8_t b) {useSleepCallback=b;}
+
+ void incrementSleepCount() {mSleepCount++;}
+ void resetSleepCount() {mSleepCount=0;}
+ uint16_t getSleepCount() const {return mSleepCount;}
+
+ vmVector3 getPosition() const {return read_Vector3(fX);}
+ vmQuat getOrientation() const {return read_Quat(fQ);}
+ vmVector3 getLinearVelocity() const {return read_Vector3(fV);}
+ vmVector3 getAngularVelocity() const {return read_Vector3(fOmega);}
+ vmVector3 getDeltaLinearVelocity() const {return read_Vector3(deltaLinearVelocity);}
+ vmVector3 getDeltaAngularVelocity() const {return read_Vector3(deltaAngularVelocity);}
+
+ void setPosition(const vmVector3 &pos) {store_Vector3(pos, fX);}
+ void setLinearVelocity(const vmVector3 &vel) {store_Vector3(vel, fV);}
+ void setAngularVelocity(const vmVector3 &vel) {store_Vector3(vel, fOmega);}
+ void setDeltaLinearVelocity(const vmVector3 &vel) {store_Vector3(vel, deltaLinearVelocity);}
+ void setDeltaAngularVelocity(const vmVector3 &vel) {store_Vector3(vel, deltaAngularVelocity);}
+ void setOrientation(const vmQuat &rot) {store_Quat(rot, fQ);}
+
+ inline void setAuxils(const vmVector3 ¢erLocal,const vmVector3 &halfLocal);
+ inline void setAuxilsCcd(const vmVector3 ¢erLocal,const vmVector3 &halfLocal,float timeStep);
+ inline void reset();
+};
+
+inline
+TrbState::TrbState(const uint8_t m, const vmVector3& x, const vmQuat& q, const vmVector3& v, const vmVector3& omega)
+{
+ setMotionType(m);
+ fX[0] = x[0];
+ fX[1] = x[1];
+ fX[2] = x[2];
+ fQ[0] = q[0];
+ fQ[1] = q[1];
+ fQ[2] = q[2];
+ fQ[3] = q[3];
+ fV[0] = v[0];
+ fV[1] = v[1];
+ fV[2] = v[2];
+ fOmega[0] = omega[0];
+ fOmega[1] = omega[1];
+ fOmega[2] = omega[2];
+ contactFilterSelf=contactFilterTarget=0xffff;
+ trbBodyIdx=0;
+ mSleeping = 0;
+ deleted = 0;
+ useSleep = 1;
+ useCcd = 0;
+ useContactCallback = 0;
+ useSleepCallback = 0;
+ mSleepCount=0;
+ linearDamping = 1.0f;
+ angularDamping = 0.99f;
+}
+
+inline void
+TrbState::setIdentity()
+{
+ fX[0] = 0.0f;
+ fX[1] = 0.0f;
+ fX[2] = 0.0f;
+ fQ[0] = 0.0f;
+ fQ[1] = 0.0f;
+ fQ[2] = 0.0f;
+ fQ[3] = 1.0f;
+ fV[0] = 0.0f;
+ fV[1] = 0.0f;
+ fV[2] = 0.0f;
+ fOmega[0] = 0.0f;
+ fOmega[1] = 0.0f;
+ fOmega[2] = 0.0f;
+}
+
+inline void
+TrbState::setZero()
+{
+ fX[0] = 0.0f;
+ fX[1] = 0.0f;
+ fX[2] = 0.0f;
+ fQ[0] = 0.0f;
+ fQ[1] = 0.0f;
+ fQ[2] = 0.0f;
+ fQ[3] = 0.0f;
+ fV[0] = 0.0f;
+ fV[1] = 0.0f;
+ fV[2] = 0.0f;
+ fOmega[0] = 0.0f;
+ fOmega[1] = 0.0f;
+ fOmega[2] = 0.0f;
+}
+
+inline void
+TrbState::setAuxils(const vmVector3 ¢erLocal,const vmVector3 &halfLocal)
+{
+ vmVector3 centerW = getPosition() + rotate(getOrientation(),centerLocal);
+ vmVector3 halfW = absPerElem(vmMatrix3(getOrientation())) * halfLocal;
+ center[0] = centerW[0];
+ center[1] = centerW[1];
+ center[2] = centerW[2];
+ half[0] = halfW[0];
+ half[1] = halfW[1];
+ half[2] = halfW[2];
+}
+
+inline void
+TrbState::setAuxilsCcd(const vmVector3 ¢erLocal,const vmVector3 &halfLocal,float timeStep)
+{
+ vmVector3 centerW = getPosition() + rotate(getOrientation(),centerLocal);
+ vmVector3 halfW = absPerElem(vmMatrix3(getOrientation())) * halfLocal;
+
+ vmVector3 diffvec = getLinearVelocity()*timeStep;
+
+ vmVector3 newCenter = centerW + diffvec;
+ vmVector3 aabbMin = minPerElem(newCenter - halfW,centerW - halfW);
+ vmVector3 aabbMax = maxPerElem(newCenter + halfW,centerW + halfW);
+
+ centerW = 0.5f * (aabbMin + aabbMax);
+ halfW =0.5f * (aabbMax - aabbMin);
+
+ center[0] = centerW[0];
+ center[1] = centerW[1];
+ center[2] = centerW[2];
+
+ half[0] = halfW[0];
+ half[1] = halfW[1];
+ half[2] = halfW[2];
+}
+
+inline
+void TrbState::reset()
+{
+#if 0
+ mSleepCount = 0;
+ mMotionType = PfxMotionTypeActive;
+ mDeleted = 0;
+ mSleeping = 0;
+ mUseSleep = 1;
+ mUseCcd = 0;
+ mUseContactCallback = 0;
+ mUseSleepCallback = 0;
+ mRigidBodyId = 0;
+ mContactFilterSelf = 0xffffffff;
+ mContactFilterTarget = 0xffffffff;
+ mLinearDamping = 1.0f;
+ mAngularDamping = 0.99f;
+ mPosition = vmVector3(0.0f);
+ mOrientation = vmQuat::identity();
+ mLinearVelocity = vmVector3(0.0f);
+ mAngularVelocity = vmVector3(0.0f);
+#endif
+
+ setMotionType(PfxMotionTypeActive);
+ contactFilterSelf=contactFilterTarget=0xffffffff;
+ deleted = 0;
+ mSleeping = 0;
+ useSleep = 1;
+ trbBodyIdx=0;
+ mSleepCount=0;
+ useCcd = 0;
+ useContactCallback = 0;
+ useSleepCallback = 0;
+ linearDamping = 1.0f;
+ angularDamping = 0.99f;
+}
+
+#endif //BT_TRBSTATEVEC_H__
+
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "Win32ThreadSupport.h"
+
+#ifdef USE_WIN32_THREADING
+
+#include <windows.h>
+
+#include "SpuCollisionTaskProcess.h"
+
+#include "SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h"
+
+
+
+///The number of threads should be equal to the number of available cores
+///@todo: each worker should be linked to a single core, using SetThreadIdealProcessor.
+
+///Win32ThreadSupport helps to initialize/shutdown libspe2, start/stop SPU tasks and communication
+///Setup and initialize SPU/CELL/Libspe2
+Win32ThreadSupport::Win32ThreadSupport(const Win32ThreadConstructionInfo & threadConstructionInfo)
+{
+ m_maxNumTasks = threadConstructionInfo.m_numThreads;
+ startThreads(threadConstructionInfo);
+}
+
+///cleanup/shutdown Libspe2
+Win32ThreadSupport::~Win32ThreadSupport()
+{
+ stopSPU();
+}
+
+
+
+
+#include <stdio.h>
+
+DWORD WINAPI Thread_no_1( LPVOID lpParam )
+{
+
+ Win32ThreadSupport::btSpuStatus* status = (Win32ThreadSupport::btSpuStatus*)lpParam;
+
+
+ while (1)
+ {
+ WaitForSingleObject(status->m_eventStartHandle,INFINITE);
+
+ void* userPtr = status->m_userPtr;
+
+ if (userPtr)
+ {
+ btAssert(status->m_status);
+ status->m_userThreadFunc(userPtr,status->m_lsMemory);
+ status->m_status = 2;
+ SetEvent(status->m_eventCompletetHandle);
+ } else
+ {
+ //exit Thread
+ status->m_status = 3;
+ printf("Thread with taskId %i with handle %p exiting\n",status->m_taskId, status->m_threadHandle);
+ SetEvent(status->m_eventCompletetHandle);
+ break;
+ }
+
+ }
+
+ printf("Thread TERMINATED\n");
+ return 0;
+
+}
+
+///send messages to SPUs
+void Win32ThreadSupport::sendRequest(uint32_t uiCommand, ppu_address_t uiArgument0, uint32_t taskId)
+{
+ /// gMidphaseSPU.sendRequest(CMD_GATHER_AND_PROCESS_PAIRLIST, (ppu_address_t) &taskDesc);
+
+ ///we should spawn an SPU task here, and in 'waitForResponse' it should wait for response of the (one of) the first tasks that finished
+
+
+
+ switch (uiCommand)
+ {
+ case CMD_GATHER_AND_PROCESS_PAIRLIST:
+ {
+
+
+//#define SINGLE_THREADED 1
+#ifdef SINGLE_THREADED
+
+ btSpuStatus& spuStatus = m_activeSpuStatus[0];
+ spuStatus.m_userPtr=(void*)uiArgument0;
+ spuStatus.m_userThreadFunc(spuStatus.m_userPtr,spuStatus.m_lsMemory);
+ HANDLE handle =0;
+#else
+
+
+ btSpuStatus& spuStatus = m_activeSpuStatus[taskId];
+ btAssert(taskId>=0);
+ btAssert(int(taskId)<m_activeSpuStatus.size());
+
+ spuStatus.m_commandId = uiCommand;
+ spuStatus.m_status = 1;
+ spuStatus.m_userPtr = (void*)uiArgument0;
+
+ ///fire event to start new task
+ SetEvent(spuStatus.m_eventStartHandle);
+
+#endif //CollisionTask_LocalStoreMemory
+
+
+
+ break;
+ }
+ default:
+ {
+ ///not implemented
+ btAssert(0);
+ }
+
+ };
+
+
+}
+
+
+///check for messages from SPUs
+void Win32ThreadSupport::waitForResponse(unsigned int *puiArgument0, unsigned int *puiArgument1)
+{
+ ///We should wait for (one of) the first tasks to finish (or other SPU messages), and report its response
+
+ ///A possible response can be 'yes, SPU handled it', or 'no, please do a PPU fallback'
+
+
+ btAssert(m_activeSpuStatus.size());
+
+ int last = -1;
+#ifndef SINGLE_THREADED
+ DWORD res = WaitForMultipleObjects(m_completeHandles.size(), &m_completeHandles[0], FALSE, INFINITE);
+ btAssert(res != WAIT_FAILED);
+ last = res - WAIT_OBJECT_0;
+
+ btSpuStatus& spuStatus = m_activeSpuStatus[last];
+ btAssert(spuStatus.m_threadHandle);
+ btAssert(spuStatus.m_eventCompletetHandle);
+
+ //WaitForSingleObject(spuStatus.m_eventCompletetHandle, INFINITE);
+ btAssert(spuStatus.m_status > 1);
+ spuStatus.m_status = 0;
+
+ ///need to find an active spu
+ btAssert(last>=0);
+
+#else
+ last=0;
+ btSpuStatus& spuStatus = m_activeSpuStatus[last];
+#endif //SINGLE_THREADED
+
+
+
+ *puiArgument0 = spuStatus.m_taskId;
+ *puiArgument1 = spuStatus.m_status;
+
+
+}
+
+
+///check for messages from SPUs
+bool Win32ThreadSupport::isTaskCompleted(unsigned int *puiArgument0, unsigned int *puiArgument1, int timeOutInMilliseconds)
+{
+ ///We should wait for (one of) the first tasks to finish (or other SPU messages), and report its response
+
+ ///A possible response can be 'yes, SPU handled it', or 'no, please do a PPU fallback'
+
+
+ btAssert(m_activeSpuStatus.size());
+
+ int last = -1;
+#ifndef SINGLE_THREADED
+ DWORD res = WaitForMultipleObjects(m_completeHandles.size(), &m_completeHandles[0], FALSE, timeOutInMilliseconds);
+
+ if ((res != STATUS_TIMEOUT) && (res != WAIT_FAILED))
+ {
+
+ btAssert(res != WAIT_FAILED);
+ last = res - WAIT_OBJECT_0;
+
+ btSpuStatus& spuStatus = m_activeSpuStatus[last];
+ btAssert(spuStatus.m_threadHandle);
+ btAssert(spuStatus.m_eventCompletetHandle);
+
+ //WaitForSingleObject(spuStatus.m_eventCompletetHandle, INFINITE);
+ btAssert(spuStatus.m_status > 1);
+ spuStatus.m_status = 0;
+
+ ///need to find an active spu
+ btAssert(last>=0);
+
+ #else
+ last=0;
+ btSpuStatus& spuStatus = m_activeSpuStatus[last];
+ #endif //SINGLE_THREADED
+
+
+
+ *puiArgument0 = spuStatus.m_taskId;
+ *puiArgument1 = spuStatus.m_status;
+
+ return true;
+ }
+
+ return false;
+}
+
+
+void Win32ThreadSupport::startThreads(const Win32ThreadConstructionInfo& threadConstructionInfo)
+{
+
+ m_activeSpuStatus.resize(threadConstructionInfo.m_numThreads);
+ m_completeHandles.resize(threadConstructionInfo.m_numThreads);
+
+ m_maxNumTasks = threadConstructionInfo.m_numThreads;
+
+ for (int i=0;i<threadConstructionInfo.m_numThreads;i++)
+ {
+ printf("starting thread %d\n",i);
+
+ btSpuStatus& spuStatus = m_activeSpuStatus[i];
+
+ LPSECURITY_ATTRIBUTES lpThreadAttributes=NULL;
+ SIZE_T dwStackSize=threadConstructionInfo.m_threadStackSize;
+ LPTHREAD_START_ROUTINE lpStartAddress=&Thread_no_1;
+ LPVOID lpParameter=&spuStatus;
+ DWORD dwCreationFlags=0;
+ LPDWORD lpThreadId=0;
+
+ spuStatus.m_userPtr=0;
+
+ sprintf(spuStatus.m_eventStartHandleName,"eventStart%s%d",threadConstructionInfo.m_uniqueName,i);
+ spuStatus.m_eventStartHandle = CreateEventA (0,false,false,spuStatus.m_eventStartHandleName);
+
+ sprintf(spuStatus.m_eventCompletetHandleName,"eventComplete%s%d",threadConstructionInfo.m_uniqueName,i);
+ spuStatus.m_eventCompletetHandle = CreateEventA (0,false,false,spuStatus.m_eventCompletetHandleName);
+
+ m_completeHandles[i] = spuStatus.m_eventCompletetHandle;
+
+ HANDLE handle = CreateThread(lpThreadAttributes,dwStackSize,lpStartAddress,lpParameter, dwCreationFlags,lpThreadId);
+ SetThreadPriority(handle,THREAD_PRIORITY_HIGHEST);
+ //SetThreadPriority(handle,THREAD_PRIORITY_TIME_CRITICAL);
+
+ SetThreadAffinityMask(handle, 1<<i);
+
+ spuStatus.m_taskId = i;
+ spuStatus.m_commandId = 0;
+ spuStatus.m_status = 0;
+ spuStatus.m_threadHandle = handle;
+ spuStatus.m_lsMemory = threadConstructionInfo.m_lsMemoryFunc();
+ spuStatus.m_userThreadFunc = threadConstructionInfo.m_userThreadFunc;
+
+ printf("started thread %d with threadHandle %p\n",i,handle);
+
+ }
+
+}
+
+void Win32ThreadSupport::startSPU()
+{
+}
+
+
+///tell the task scheduler we are done with the SPU tasks
+void Win32ThreadSupport::stopSPU()
+{
+ int i;
+ for (i=0;i<m_activeSpuStatus.size();i++)
+ {
+ btSpuStatus& spuStatus = m_activeSpuStatus[i];
+ if (spuStatus.m_status>0)
+ {
+ WaitForSingleObject(spuStatus.m_eventCompletetHandle, INFINITE);
+ }
+
+
+ spuStatus.m_userPtr = 0;
+ SetEvent(spuStatus.m_eventStartHandle);
+ WaitForSingleObject(spuStatus.m_eventCompletetHandle, INFINITE);
+
+ CloseHandle(spuStatus.m_eventCompletetHandle);
+ CloseHandle(spuStatus.m_eventStartHandle);
+ CloseHandle(spuStatus.m_threadHandle);
+
+ }
+
+ m_activeSpuStatus.clear();
+ m_completeHandles.clear();
+
+}
+
+
+
+class btWin32Barrier : public btBarrier
+{
+private:
+ CRITICAL_SECTION mExternalCriticalSection;
+ CRITICAL_SECTION mLocalCriticalSection;
+ HANDLE mRunEvent,mNotifyEvent;
+ int mCounter,mEnableCounter;
+ int mMaxCount;
+
+public:
+ btWin32Barrier()
+ {
+ mCounter = 0;
+ mMaxCount = 1;
+ mEnableCounter = 0;
+ InitializeCriticalSection(&mExternalCriticalSection);
+ InitializeCriticalSection(&mLocalCriticalSection);
+ mRunEvent = CreateEvent(NULL,TRUE,FALSE,NULL);
+ mNotifyEvent = CreateEvent(NULL,TRUE,FALSE,NULL);
+ }
+
+ virtual ~btWin32Barrier()
+ {
+ DeleteCriticalSection(&mExternalCriticalSection);
+ DeleteCriticalSection(&mLocalCriticalSection);
+ CloseHandle(mRunEvent);
+ CloseHandle(mNotifyEvent);
+ }
+
+ void sync()
+ {
+ int eventId;
+
+ EnterCriticalSection(&mExternalCriticalSection);
+
+ //PFX_PRINTF("enter taskId %d count %d stage %d phase %d mEnableCounter %d\n",taskId,mCounter,debug&0xff,debug>>16,mEnableCounter);
+
+ if(mEnableCounter > 0) {
+ ResetEvent(mNotifyEvent);
+ LeaveCriticalSection(&mExternalCriticalSection);
+ WaitForSingleObject(mNotifyEvent,INFINITE);
+ EnterCriticalSection(&mExternalCriticalSection);
+ }
+
+ eventId = mCounter;
+ mCounter++;
+
+ if(eventId == mMaxCount-1) {
+ SetEvent(mRunEvent);
+
+ mEnableCounter = mCounter-1;
+ mCounter = 0;
+ }
+ else {
+ ResetEvent(mRunEvent);
+ LeaveCriticalSection(&mExternalCriticalSection);
+ WaitForSingleObject(mRunEvent,INFINITE);
+ EnterCriticalSection(&mExternalCriticalSection);
+ mEnableCounter--;
+ }
+
+ if(mEnableCounter == 0) {
+ SetEvent(mNotifyEvent);
+ }
+
+ //PFX_PRINTF("leave taskId %d count %d stage %d phase %d mEnableCounter %d\n",taskId,mCounter,debug&0xff,debug>>16,mEnableCounter);
+
+ LeaveCriticalSection(&mExternalCriticalSection);
+ }
+
+ virtual void setMaxCount(int n) {mMaxCount = n;}
+ virtual int getMaxCount() {return mMaxCount;}
+};
+
+class btWin32CriticalSection : public btCriticalSection
+{
+private:
+ CRITICAL_SECTION mCriticalSection;
+
+public:
+ btWin32CriticalSection()
+ {
+ InitializeCriticalSection(&mCriticalSection);
+ }
+
+ ~btWin32CriticalSection()
+ {
+ DeleteCriticalSection(&mCriticalSection);
+ }
+
+ unsigned int getSharedParam(int i)
+ {
+ btAssert(i>=0&&i<31);
+ return mCommonBuff[i+1];
+ }
+
+ void setSharedParam(int i,unsigned int p)
+ {
+ btAssert(i>=0&&i<31);
+ mCommonBuff[i+1] = p;
+ }
+
+ void lock()
+ {
+ EnterCriticalSection(&mCriticalSection);
+ mCommonBuff[0] = 1;
+ }
+
+ void unlock()
+ {
+ mCommonBuff[0] = 0;
+ LeaveCriticalSection(&mCriticalSection);
+ }
+};
+
+
+btBarrier* Win32ThreadSupport::createBarrier()
+{
+ unsigned char* mem = (unsigned char*)btAlignedAlloc(sizeof(btWin32Barrier),16);
+ btWin32Barrier* barrier = new(mem) btWin32Barrier();
+ barrier->setMaxCount(getNumTasks());
+ return barrier;
+}
+
+btCriticalSection* Win32ThreadSupport::createCriticalSection()
+{
+ unsigned char* mem = (unsigned char*) btAlignedAlloc(sizeof(btWin32CriticalSection),16);
+ btWin32CriticalSection* cs = new(mem) btWin32CriticalSection();
+ return cs;
+}
+
+void Win32ThreadSupport::deleteBarrier(btBarrier* barrier)
+{
+ barrier->~btBarrier();
+ btAlignedFree(barrier);
+}
+
+void Win32ThreadSupport::deleteCriticalSection(btCriticalSection* criticalSection)
+{
+ criticalSection->~btCriticalSection();
+ btAlignedFree(criticalSection);
+}
+
+
+#endif //USE_WIN32_THREADING
+
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "LinearMath/btScalar.h"
+#include "PlatformDefinitions.h"
+
+#ifdef USE_WIN32_THREADING //platform specific defines are defined in PlatformDefinitions.h
+
+#ifndef BT_WIN32_THREAD_SUPPORT_H
+#define BT_WIN32_THREAD_SUPPORT_H
+
+#include "LinearMath/btAlignedObjectArray.h"
+
+#include "btThreadSupportInterface.h"
+
+
+typedef void (*Win32ThreadFunc)(void* userPtr,void* lsMemory);
+typedef void* (*Win32lsMemorySetupFunc)();
+
+
+///Win32ThreadSupport helps to initialize/shutdown libspe2, start/stop SPU tasks and communication
+class Win32ThreadSupport : public btThreadSupportInterface
+{
+public:
+ ///placeholder, until libspe2 support is there
+ struct btSpuStatus
+ {
+ uint32_t m_taskId;
+ uint32_t m_commandId;
+ uint32_t m_status;
+
+ Win32ThreadFunc m_userThreadFunc;
+ void* m_userPtr; //for taskDesc etc
+ void* m_lsMemory; //initialized using Win32LocalStoreMemorySetupFunc
+
+ void* m_threadHandle; //this one is calling 'Win32ThreadFunc'
+
+ void* m_eventStartHandle;
+ char m_eventStartHandleName[32];
+
+ void* m_eventCompletetHandle;
+ char m_eventCompletetHandleName[32];
+
+
+ };
+private:
+
+ btAlignedObjectArray<btSpuStatus> m_activeSpuStatus;
+ btAlignedObjectArray<void*> m_completeHandles;
+
+ int m_maxNumTasks;
+public:
+ ///Setup and initialize SPU/CELL/Libspe2
+
+ struct Win32ThreadConstructionInfo
+ {
+ Win32ThreadConstructionInfo(const char* uniqueName,
+ Win32ThreadFunc userThreadFunc,
+ Win32lsMemorySetupFunc lsMemoryFunc,
+ int numThreads=1,
+ int threadStackSize=65535
+ )
+ :m_uniqueName(uniqueName),
+ m_userThreadFunc(userThreadFunc),
+ m_lsMemoryFunc(lsMemoryFunc),
+ m_numThreads(numThreads),
+ m_threadStackSize(threadStackSize)
+ {
+
+ }
+
+ const char* m_uniqueName;
+ Win32ThreadFunc m_userThreadFunc;
+ Win32lsMemorySetupFunc m_lsMemoryFunc;
+ int m_numThreads;
+ int m_threadStackSize;
+
+ };
+
+
+
+ Win32ThreadSupport(const Win32ThreadConstructionInfo& threadConstructionInfo);
+
+///cleanup/shutdown Libspe2
+ virtual ~Win32ThreadSupport();
+
+ void startThreads(const Win32ThreadConstructionInfo& threadInfo);
+
+
+///send messages to SPUs
+ virtual void sendRequest(uint32_t uiCommand, ppu_address_t uiArgument0, uint32_t uiArgument1);
+
+///check for messages from SPUs
+ virtual void waitForResponse(unsigned int *puiArgument0, unsigned int *puiArgument1);
+
+ virtual bool isTaskCompleted(unsigned int *puiArgument0, unsigned int *puiArgument1, int timeOutInMilliseconds);
+
+///start the spus (can be called at the beginning of each frame, to make sure that the right SPU program is loaded)
+ virtual void startSPU();
+
+///tell the task scheduler we are done with the SPU tasks
+ virtual void stopSPU();
+
+ virtual void setNumTasks(int numTasks)
+ {
+ m_maxNumTasks = numTasks;
+ }
+
+ virtual int getNumTasks() const
+ {
+ return m_maxNumTasks;
+ }
+
+ virtual void* getThreadLocalMemory(int taskId)
+ {
+ return m_activeSpuStatus[taskId].m_lsMemory;
+ }
+ virtual btBarrier* createBarrier();
+
+ virtual btCriticalSection* createCriticalSection();
+
+ virtual void deleteBarrier(btBarrier* barrier);
+
+ virtual void deleteCriticalSection(btCriticalSection* criticalSection);
+};
+
+#endif //BT_WIN32_THREAD_SUPPORT_H
+
+#endif //USE_WIN32_THREADING
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library, http://bulletphysics.org
+Copyright (C) 2006, 2009 Sony Computer Entertainment Inc.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+///The 3 following lines include the CPU implementation of the kernels, keep them in this order.
+#include "BulletMultiThreaded/btGpuDefines.h"
+#include "BulletMultiThreaded/btGpuUtilsSharedDefs.h"
+#include "BulletMultiThreaded/btGpuUtilsSharedCode.h"
+
+
+
+#include "LinearMath/btAlignedAllocator.h"
+#include "LinearMath/btQuickprof.h"
+#include "BulletCollision/BroadphaseCollision/btOverlappingPairCache.h"
+
+
+
+#include "btGpuDefines.h"
+#include "btGpuUtilsSharedDefs.h"
+
+#include "btGpu3DGridBroadphaseSharedDefs.h"
+
+#include "btGpu3DGridBroadphase.h"
+#include <string.h> //for memset
+
+
+#include <stdio.h>
+
+
+
+static bt3DGridBroadphaseParams s3DGridBroadphaseParams;
+
+
+
+btGpu3DGridBroadphase::btGpu3DGridBroadphase( const btVector3& worldAabbMin,const btVector3& worldAabbMax,
+ int gridSizeX, int gridSizeY, int gridSizeZ,
+ int maxSmallProxies, int maxLargeProxies, int maxPairsPerBody,
+ int maxBodiesPerCell,
+ btScalar cellFactorAABB) :
+ btSimpleBroadphase(maxSmallProxies,
+// new (btAlignedAlloc(sizeof(btSortedOverlappingPairCache),16)) btSortedOverlappingPairCache),
+ new (btAlignedAlloc(sizeof(btHashedOverlappingPairCache),16)) btHashedOverlappingPairCache),
+ m_bInitialized(false),
+ m_numBodies(0)
+{
+ _initialize(worldAabbMin, worldAabbMax, gridSizeX, gridSizeY, gridSizeZ,
+ maxSmallProxies, maxLargeProxies, maxPairsPerBody,
+ maxBodiesPerCell, cellFactorAABB);
+}
+
+
+
+btGpu3DGridBroadphase::btGpu3DGridBroadphase( btOverlappingPairCache* overlappingPairCache,
+ const btVector3& worldAabbMin,const btVector3& worldAabbMax,
+ int gridSizeX, int gridSizeY, int gridSizeZ,
+ int maxSmallProxies, int maxLargeProxies, int maxPairsPerBody,
+ int maxBodiesPerCell,
+ btScalar cellFactorAABB) :
+ btSimpleBroadphase(maxSmallProxies, overlappingPairCache),
+ m_bInitialized(false),
+ m_numBodies(0)
+{
+ _initialize(worldAabbMin, worldAabbMax, gridSizeX, gridSizeY, gridSizeZ,
+ maxSmallProxies, maxLargeProxies, maxPairsPerBody,
+ maxBodiesPerCell, cellFactorAABB);
+}
+
+
+
+btGpu3DGridBroadphase::~btGpu3DGridBroadphase()
+{
+ //btSimpleBroadphase will free memory of btSortedOverlappingPairCache, because m_ownsPairCache
+ btAssert(m_bInitialized);
+ _finalize();
+}
+
+
+
+void btGpu3DGridBroadphase::_initialize( const btVector3& worldAabbMin,const btVector3& worldAabbMax,
+ int gridSizeX, int gridSizeY, int gridSizeZ,
+ int maxSmallProxies, int maxLargeProxies, int maxPairsPerBody,
+ int maxBodiesPerCell,
+ btScalar cellFactorAABB)
+{
+ // set various paramerers
+ m_ownsPairCache = true;
+ m_params.m_gridSizeX = gridSizeX;
+ m_params.m_gridSizeY = gridSizeY;
+ m_params.m_gridSizeZ = gridSizeZ;
+ m_params.m_numCells = m_params.m_gridSizeX * m_params.m_gridSizeY * m_params.m_gridSizeZ;
+ btVector3 w_org = worldAabbMin;
+ m_params.m_worldOriginX = w_org.getX();
+ m_params.m_worldOriginY = w_org.getY();
+ m_params.m_worldOriginZ = w_org.getZ();
+ btVector3 w_size = worldAabbMax - worldAabbMin;
+ m_params.m_cellSizeX = w_size.getX() / m_params.m_gridSizeX;
+ m_params.m_cellSizeY = w_size.getY() / m_params.m_gridSizeY;
+ m_params.m_cellSizeZ = w_size.getZ() / m_params.m_gridSizeZ;
+ m_maxRadius = btMin(btMin(m_params.m_cellSizeX, m_params.m_cellSizeY), m_params.m_cellSizeZ);
+ m_maxRadius *= btScalar(0.5f);
+ m_params.m_numBodies = m_numBodies;
+ m_params.m_maxBodiesPerCell = maxBodiesPerCell;
+
+ m_numLargeHandles = 0;
+ m_maxLargeHandles = maxLargeProxies;
+
+ m_maxPairsPerBody = maxPairsPerBody;
+
+ m_cellFactorAABB = cellFactorAABB;
+
+ m_LastLargeHandleIndex = -1;
+
+ btAssert(!m_bInitialized);
+ // allocate host storage
+ m_hBodiesHash = new unsigned int[m_maxHandles * 2];
+ memset(m_hBodiesHash, 0x00, m_maxHandles*2*sizeof(unsigned int));
+
+ m_hCellStart = new unsigned int[m_params.m_numCells];
+ memset(m_hCellStart, 0x00, m_params.m_numCells * sizeof(unsigned int));
+
+ m_hPairBuffStartCurr = new unsigned int[m_maxHandles * 2 + 2];
+ // --------------- for now, init with m_maxPairsPerBody for each body
+ m_hPairBuffStartCurr[0] = 0;
+ m_hPairBuffStartCurr[1] = 0;
+ for(int i = 1; i <= m_maxHandles; i++)
+ {
+ m_hPairBuffStartCurr[i * 2] = m_hPairBuffStartCurr[(i-1) * 2] + m_maxPairsPerBody;
+ m_hPairBuffStartCurr[i * 2 + 1] = 0;
+ }
+ //----------------
+ unsigned int numAABB = m_maxHandles + m_maxLargeHandles;
+ m_hAABB = new bt3DGrid3F1U[numAABB * 2]; // AABB Min & Max
+
+ m_hPairBuff = new unsigned int[m_maxHandles * m_maxPairsPerBody];
+ memset(m_hPairBuff, 0x00, m_maxHandles * m_maxPairsPerBody * sizeof(unsigned int)); // needed?
+
+ m_hPairScan = new unsigned int[m_maxHandles + 1];
+
+ m_hPairOut = new unsigned int[m_maxHandles * m_maxPairsPerBody];
+
+// large proxies
+
+ // allocate handles buffer and put all handles on free list
+ m_pLargeHandlesRawPtr = btAlignedAlloc(sizeof(btSimpleBroadphaseProxy) * m_maxLargeHandles, 16);
+ m_pLargeHandles = new(m_pLargeHandlesRawPtr) btSimpleBroadphaseProxy[m_maxLargeHandles];
+ m_firstFreeLargeHandle = 0;
+ {
+ for (int i = m_firstFreeLargeHandle; i < m_maxLargeHandles; i++)
+ {
+ m_pLargeHandles[i].SetNextFree(i + 1);
+ m_pLargeHandles[i].m_uniqueId = m_maxHandles+2+i;
+ }
+ m_pLargeHandles[m_maxLargeHandles - 1].SetNextFree(0);
+ }
+
+// debug data
+ m_numPairsAdded = 0;
+ m_numOverflows = 0;
+
+ m_bInitialized = true;
+}
+
+
+
+void btGpu3DGridBroadphase::_finalize()
+{
+ btAssert(m_bInitialized);
+ delete [] m_hBodiesHash;
+ delete [] m_hCellStart;
+ delete [] m_hPairBuffStartCurr;
+ delete [] m_hAABB;
+ delete [] m_hPairBuff;
+ delete [] m_hPairScan;
+ delete [] m_hPairOut;
+ btAlignedFree(m_pLargeHandlesRawPtr);
+ m_bInitialized = false;
+}
+
+
+
+void btGpu3DGridBroadphase::calculateOverlappingPairs(btDispatcher* dispatcher)
+{
+ if(m_numHandles <= 0)
+ {
+ BT_PROFILE("addLarge2LargePairsToCache");
+ addLarge2LargePairsToCache(dispatcher);
+ return;
+ }
+ // update constants
+ setParameters(&m_params);
+ // prepare AABB array
+ prepareAABB();
+ // calculate hash
+ calcHashAABB();
+ // sort bodies based on hash
+ sortHash();
+ // find start of each cell
+ findCellStart();
+ // findOverlappingPairs (small/small)
+ findOverlappingPairs();
+ // findOverlappingPairs (small/large)
+ findPairsLarge();
+ // add pairs to CPU cache
+ computePairCacheChanges();
+ scanOverlappingPairBuff();
+ squeezeOverlappingPairBuff();
+ addPairsToCache(dispatcher);
+ // find and add large/large pairs to CPU cache
+ addLarge2LargePairsToCache(dispatcher);
+ return;
+}
+
+
+
+void btGpu3DGridBroadphase::addPairsToCache(btDispatcher* dispatcher)
+{
+ m_numPairsAdded = 0;
+ m_numPairsRemoved = 0;
+ for(int i = 0; i < m_numHandles; i++)
+ {
+ unsigned int num = m_hPairScan[i+1] - m_hPairScan[i];
+ if(!num)
+ {
+ continue;
+ }
+ unsigned int* pInp = m_hPairOut + m_hPairScan[i];
+ unsigned int index0 = m_hAABB[i * 2].uw;
+ btSimpleBroadphaseProxy* proxy0 = &m_pHandles[index0];
+ for(unsigned int j = 0; j < num; j++)
+ {
+ unsigned int indx1_s = pInp[j];
+ unsigned int index1 = indx1_s & (~BT_3DGRID_PAIR_ANY_FLG);
+ btSimpleBroadphaseProxy* proxy1;
+ if(index1 < (unsigned int)m_maxHandles)
+ {
+ proxy1 = &m_pHandles[index1];
+ }
+ else
+ {
+ index1 -= m_maxHandles;
+ btAssert((index1 >= 0) && (index1 < (unsigned int)m_maxLargeHandles));
+ proxy1 = &m_pLargeHandles[index1];
+ }
+ if(indx1_s & BT_3DGRID_PAIR_NEW_FLG)
+ {
+ m_pairCache->addOverlappingPair(proxy0,proxy1);
+ m_numPairsAdded++;
+ }
+ else
+ {
+ m_pairCache->removeOverlappingPair(proxy0,proxy1,dispatcher);
+ m_numPairsRemoved++;
+ }
+ }
+ }
+}
+
+
+
+btBroadphaseProxy* btGpu3DGridBroadphase::createProxy( const btVector3& aabbMin, const btVector3& aabbMax,int shapeType,void* userPtr ,short int collisionFilterGroup,short int collisionFilterMask, btDispatcher* dispatcher,void* multiSapProxy)
+{
+ btBroadphaseProxy* proxy;
+ bool bIsLarge = isLargeProxy(aabbMin, aabbMax);
+ if(bIsLarge)
+ {
+ if (m_numLargeHandles >= m_maxLargeHandles)
+ {
+ ///you have to increase the cell size, so 'large' proxies become 'small' proxies (fitting a cell)
+ btAssert(0);
+ return 0; //should never happen, but don't let the game crash ;-)
+ }
+ btAssert((aabbMin[0]<= aabbMax[0]) && (aabbMin[1]<= aabbMax[1]) && (aabbMin[2]<= aabbMax[2]));
+ int newHandleIndex = allocLargeHandle();
+ proxy = new (&m_pLargeHandles[newHandleIndex])btSimpleBroadphaseProxy(aabbMin,aabbMax,shapeType,userPtr,collisionFilterGroup,collisionFilterMask,multiSapProxy);
+ }
+ else
+ {
+ proxy = btSimpleBroadphase::createProxy(aabbMin, aabbMax, shapeType, userPtr, collisionFilterGroup, collisionFilterMask, dispatcher, multiSapProxy);
+ }
+ return proxy;
+}
+
+
+
+void btGpu3DGridBroadphase::destroyProxy(btBroadphaseProxy* proxy, btDispatcher* dispatcher)
+{
+ bool bIsLarge = isLargeProxy(proxy);
+ if(bIsLarge)
+ {
+
+ btSimpleBroadphaseProxy* proxy0 = static_cast<btSimpleBroadphaseProxy*>(proxy);
+ freeLargeHandle(proxy0);
+ m_pairCache->removeOverlappingPairsContainingProxy(proxy,dispatcher);
+ }
+ else
+ {
+ btSimpleBroadphase::destroyProxy(proxy, dispatcher);
+ }
+ return;
+}
+
+
+
+void btGpu3DGridBroadphase::resetPool(btDispatcher* dispatcher)
+{
+ m_hPairBuffStartCurr[0] = 0;
+ m_hPairBuffStartCurr[1] = 0;
+ for(int i = 1; i <= m_maxHandles; i++)
+ {
+ m_hPairBuffStartCurr[i * 2] = m_hPairBuffStartCurr[(i-1) * 2] + m_maxPairsPerBody;
+ m_hPairBuffStartCurr[i * 2 + 1] = 0;
+ }
+}
+
+
+
+bool btGpu3DGridBroadphase::isLargeProxy(const btVector3& aabbMin, const btVector3& aabbMax)
+{
+ btVector3 diag = aabbMax - aabbMin;
+
+ ///use the bounding sphere radius of this bounding box, to include rotation
+ btScalar radius = diag.length() * btScalar(0.5f);
+ radius *= m_cellFactorAABB; // user-defined factor
+
+ return (radius > m_maxRadius);
+}
+
+
+
+bool btGpu3DGridBroadphase::isLargeProxy(btBroadphaseProxy* proxy)
+{
+ return (proxy->getUid() >= (m_maxHandles+2));
+}
+
+
+
+void btGpu3DGridBroadphase::addLarge2LargePairsToCache(btDispatcher* dispatcher)
+{
+ int i,j;
+ if (m_numLargeHandles <= 0)
+ {
+ return;
+ }
+ int new_largest_index = -1;
+ for(i = 0; i <= m_LastLargeHandleIndex; i++)
+ {
+ btSimpleBroadphaseProxy* proxy0 = &m_pLargeHandles[i];
+ if(!proxy0->m_clientObject)
+ {
+ continue;
+ }
+ new_largest_index = i;
+ for(j = i + 1; j <= m_LastLargeHandleIndex; j++)
+ {
+ btSimpleBroadphaseProxy* proxy1 = &m_pLargeHandles[j];
+ if(!proxy1->m_clientObject)
+ {
+ continue;
+ }
+ btAssert(proxy0 != proxy1);
+ btSimpleBroadphaseProxy* p0 = getSimpleProxyFromProxy(proxy0);
+ btSimpleBroadphaseProxy* p1 = getSimpleProxyFromProxy(proxy1);
+ if(aabbOverlap(p0,p1))
+ {
+ if (!m_pairCache->findPair(proxy0,proxy1))
+ {
+ m_pairCache->addOverlappingPair(proxy0,proxy1);
+ }
+ }
+ else
+ {
+ if(m_pairCache->findPair(proxy0,proxy1))
+ {
+ m_pairCache->removeOverlappingPair(proxy0,proxy1,dispatcher);
+ }
+ }
+ }
+ }
+ m_LastLargeHandleIndex = new_largest_index;
+ return;
+}
+
+
+
+void btGpu3DGridBroadphase::rayTest(const btVector3& rayFrom,const btVector3& rayTo, btBroadphaseRayCallback& rayCallback,const btVector3& aabbMin,const btVector3& aabbMax)
+{
+ btSimpleBroadphase::rayTest(rayFrom, rayTo, rayCallback);
+ for (int i=0; i <= m_LastLargeHandleIndex; i++)
+ {
+ btSimpleBroadphaseProxy* proxy = &m_pLargeHandles[i];
+ if(!proxy->m_clientObject)
+ {
+ continue;
+ }
+ rayCallback.process(proxy);
+ }
+}
+
+
+
+//
+// overrides for CPU version
+//
+
+
+
+void btGpu3DGridBroadphase::prepareAABB()
+{
+ BT_PROFILE("prepareAABB");
+ bt3DGrid3F1U* pBB = m_hAABB;
+ int i;
+ int new_largest_index = -1;
+ unsigned int num_small = 0;
+ for(i = 0; i <= m_LastHandleIndex; i++)
+ {
+ btSimpleBroadphaseProxy* proxy0 = &m_pHandles[i];
+ if(!proxy0->m_clientObject)
+ {
+ continue;
+ }
+ new_largest_index = i;
+ pBB->fx = proxy0->m_aabbMin.getX();
+ pBB->fy = proxy0->m_aabbMin.getY();
+ pBB->fz = proxy0->m_aabbMin.getZ();
+ pBB->uw = i;
+ pBB++;
+ pBB->fx = proxy0->m_aabbMax.getX();
+ pBB->fy = proxy0->m_aabbMax.getY();
+ pBB->fz = proxy0->m_aabbMax.getZ();
+ pBB->uw = num_small;
+ pBB++;
+ num_small++;
+ }
+ m_LastHandleIndex = new_largest_index;
+ new_largest_index = -1;
+ unsigned int num_large = 0;
+ for(i = 0; i <= m_LastLargeHandleIndex; i++)
+ {
+ btSimpleBroadphaseProxy* proxy0 = &m_pLargeHandles[i];
+ if(!proxy0->m_clientObject)
+ {
+ continue;
+ }
+ new_largest_index = i;
+ pBB->fx = proxy0->m_aabbMin.getX();
+ pBB->fy = proxy0->m_aabbMin.getY();
+ pBB->fz = proxy0->m_aabbMin.getZ();
+ pBB->uw = i + m_maxHandles;
+ pBB++;
+ pBB->fx = proxy0->m_aabbMax.getX();
+ pBB->fy = proxy0->m_aabbMax.getY();
+ pBB->fz = proxy0->m_aabbMax.getZ();
+ pBB->uw = num_large + m_maxHandles;
+ pBB++;
+ num_large++;
+ }
+ m_LastLargeHandleIndex = new_largest_index;
+ // paranoid checks
+ btAssert(num_small == m_numHandles);
+ btAssert(num_large == m_numLargeHandles);
+ return;
+}
+
+
+
+void btGpu3DGridBroadphase::setParameters(bt3DGridBroadphaseParams* hostParams)
+{
+ s3DGridBroadphaseParams = *hostParams;
+ return;
+}
+
+
+
+void btGpu3DGridBroadphase::calcHashAABB()
+{
+ BT_PROFILE("bt3DGrid_calcHashAABB");
+ btGpu_calcHashAABB(m_hAABB, m_hBodiesHash, m_numHandles);
+ return;
+}
+
+
+
+void btGpu3DGridBroadphase::sortHash()
+{
+ class bt3DGridHashKey
+ {
+ public:
+ unsigned int hash;
+ unsigned int index;
+ void quickSort(bt3DGridHashKey* pData, int lo, int hi)
+ {
+ int i=lo, j=hi;
+ bt3DGridHashKey x = pData[(lo+hi)/2];
+ do
+ {
+ while(pData[i].hash > x.hash) i++;
+ while(x.hash > pData[j].hash) j--;
+ if(i <= j)
+ {
+ bt3DGridHashKey t = pData[i];
+ pData[i] = pData[j];
+ pData[j] = t;
+ i++; j--;
+ }
+ } while(i <= j);
+ if(lo < j) pData->quickSort(pData, lo, j);
+ if(i < hi) pData->quickSort(pData, i, hi);
+ }
+ };
+ BT_PROFILE("bt3DGrid_sortHash");
+ bt3DGridHashKey* pHash = (bt3DGridHashKey*)m_hBodiesHash;
+ pHash->quickSort(pHash, 0, m_numHandles - 1);
+ return;
+}
+
+
+
+void btGpu3DGridBroadphase::findCellStart()
+{
+ BT_PROFILE("bt3DGrid_findCellStart");
+ btGpu_findCellStart(m_hBodiesHash, m_hCellStart, m_numHandles, m_params.m_numCells);
+ return;
+}
+
+
+
+void btGpu3DGridBroadphase::findOverlappingPairs()
+{
+ BT_PROFILE("bt3DGrid_findOverlappingPairs");
+ btGpu_findOverlappingPairs(m_hAABB, m_hBodiesHash, m_hCellStart, m_hPairBuff, m_hPairBuffStartCurr, m_numHandles);
+ return;
+}
+
+
+
+void btGpu3DGridBroadphase::findPairsLarge()
+{
+ BT_PROFILE("bt3DGrid_findPairsLarge");
+ btGpu_findPairsLarge(m_hAABB, m_hBodiesHash, m_hCellStart, m_hPairBuff, m_hPairBuffStartCurr, m_numHandles, m_numLargeHandles);
+ return;
+}
+
+
+
+void btGpu3DGridBroadphase::computePairCacheChanges()
+{
+ BT_PROFILE("bt3DGrid_computePairCacheChanges");
+ btGpu_computePairCacheChanges(m_hPairBuff, m_hPairBuffStartCurr, m_hPairScan, m_hAABB, m_numHandles);
+ return;
+}
+
+
+
+void btGpu3DGridBroadphase::scanOverlappingPairBuff()
+{
+ BT_PROFILE("bt3DGrid_scanOverlappingPairBuff");
+ m_hPairScan[0] = 0;
+ for(int i = 1; i <= m_numHandles; i++)
+ {
+ unsigned int delta = m_hPairScan[i];
+ m_hPairScan[i] = m_hPairScan[i-1] + delta;
+ }
+ return;
+}
+
+
+
+void btGpu3DGridBroadphase::squeezeOverlappingPairBuff()
+{
+ BT_PROFILE("bt3DGrid_squeezeOverlappingPairBuff");
+ btGpu_squeezeOverlappingPairBuff(m_hPairBuff, m_hPairBuffStartCurr, m_hPairScan, m_hPairOut, m_hAABB, m_numHandles);
+ return;
+}
+
+
+
+#include "btGpu3DGridBroadphaseSharedCode.h"
+
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library, http://bulletphysics.org
+Copyright (C) 2006, 2009 Sony Computer Entertainment Inc.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+//----------------------------------------------------------------------------------------
+
+#ifndef BTGPU3DGRIDBROADPHASE_H
+#define BTGPU3DGRIDBROADPHASE_H
+
+//----------------------------------------------------------------------------------------
+
+#include "BulletCollision/BroadphaseCollision/btSimpleBroadphase.h"
+
+#include "btGpu3DGridBroadphaseSharedTypes.h"
+
+//----------------------------------------------------------------------------------------
+
+///The btGpu3DGridBroadphase uses GPU-style code compiled for CPU to compute overlapping pairs
+
+class btGpu3DGridBroadphase : public btSimpleBroadphase
+{
+protected:
+ bool m_bInitialized;
+ unsigned int m_numBodies;
+ unsigned int m_numCells;
+ unsigned int m_maxPairsPerBody;
+ btScalar m_cellFactorAABB;
+ unsigned int m_maxBodiesPerCell;
+ bt3DGridBroadphaseParams m_params;
+ btScalar m_maxRadius;
+ // CPU data
+ unsigned int* m_hBodiesHash;
+ unsigned int* m_hCellStart;
+ unsigned int* m_hPairBuffStartCurr;
+ bt3DGrid3F1U* m_hAABB;
+ unsigned int* m_hPairBuff;
+ unsigned int* m_hPairScan;
+ unsigned int* m_hPairOut;
+// large proxies
+ int m_numLargeHandles;
+ int m_maxLargeHandles;
+ int m_LastLargeHandleIndex;
+ btSimpleBroadphaseProxy* m_pLargeHandles;
+ void* m_pLargeHandlesRawPtr;
+ int m_firstFreeLargeHandle;
+ int allocLargeHandle()
+ {
+ btAssert(m_numLargeHandles < m_maxLargeHandles);
+ int freeLargeHandle = m_firstFreeLargeHandle;
+ m_firstFreeLargeHandle = m_pLargeHandles[freeLargeHandle].GetNextFree();
+ m_numLargeHandles++;
+ if(freeLargeHandle > m_LastLargeHandleIndex)
+ {
+ m_LastLargeHandleIndex = freeLargeHandle;
+ }
+ return freeLargeHandle;
+ }
+ void freeLargeHandle(btSimpleBroadphaseProxy* proxy)
+ {
+ int handle = int(proxy - m_pLargeHandles);
+ btAssert((handle >= 0) && (handle < m_maxHandles));
+ if(handle == m_LastLargeHandleIndex)
+ {
+ m_LastLargeHandleIndex--;
+ }
+ proxy->SetNextFree(m_firstFreeLargeHandle);
+ m_firstFreeLargeHandle = handle;
+ proxy->m_clientObject = 0;
+ m_numLargeHandles--;
+ }
+ bool isLargeProxy(const btVector3& aabbMin, const btVector3& aabbMax);
+ bool isLargeProxy(btBroadphaseProxy* proxy);
+// debug
+ unsigned int m_numPairsAdded;
+ unsigned int m_numPairsRemoved;
+ unsigned int m_numOverflows;
+//
+public:
+ btGpu3DGridBroadphase(const btVector3& worldAabbMin,const btVector3& worldAabbMax,
+ int gridSizeX, int gridSizeY, int gridSizeZ,
+ int maxSmallProxies, int maxLargeProxies, int maxPairsPerBody,
+ int maxBodiesPerCell = 8,
+ btScalar cellFactorAABB = btScalar(1.0f));
+ btGpu3DGridBroadphase( btOverlappingPairCache* overlappingPairCache,
+ const btVector3& worldAabbMin,const btVector3& worldAabbMax,
+ int gridSizeX, int gridSizeY, int gridSizeZ,
+ int maxSmallProxies, int maxLargeProxies, int maxPairsPerBody,
+ int maxBodiesPerCell = 8,
+ btScalar cellFactorAABB = btScalar(1.0f));
+ virtual ~btGpu3DGridBroadphase();
+ virtual void calculateOverlappingPairs(btDispatcher* dispatcher);
+
+ virtual btBroadphaseProxy* createProxy(const btVector3& aabbMin, const btVector3& aabbMax,int shapeType,void* userPtr ,short int collisionFilterGroup,short int collisionFilterMask, btDispatcher* dispatcher,void* multiSapProxy);
+ virtual void destroyProxy(btBroadphaseProxy* proxy,btDispatcher* dispatcher);
+ virtual void rayTest(const btVector3& rayFrom,const btVector3& rayTo, btBroadphaseRayCallback& rayCallback, const btVector3& aabbMin=btVector3(0,0,0),const btVector3& aabbMax=btVector3(0,0,0));
+
+
+ virtual void resetPool(btDispatcher* dispatcher);
+
+protected:
+ void _initialize( const btVector3& worldAabbMin,const btVector3& worldAabbMax,
+ int gridSizeX, int gridSizeY, int gridSizeZ,
+ int maxSmallProxies, int maxLargeProxies, int maxPairsPerBody,
+ int maxBodiesPerCell = 8,
+ btScalar cellFactorAABB = btScalar(1.0f));
+ void _finalize();
+ void addPairsToCache(btDispatcher* dispatcher);
+ void addLarge2LargePairsToCache(btDispatcher* dispatcher);
+
+// overrides for CPU version
+ virtual void setParameters(bt3DGridBroadphaseParams* hostParams);
+ virtual void prepareAABB();
+ virtual void calcHashAABB();
+ virtual void sortHash();
+ virtual void findCellStart();
+ virtual void findOverlappingPairs();
+ virtual void findPairsLarge();
+ virtual void computePairCacheChanges();
+ virtual void scanOverlappingPairBuff();
+ virtual void squeezeOverlappingPairBuff();
+};
+
+//----------------------------------------------------------------------------------------
+
+#endif //BTGPU3DGRIDBROADPHASE_H
+
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library, http://bulletphysics.org
+Copyright (C) 2006, 2009 Sony Computer Entertainment Inc.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+//----------------------------------------------------------------------------------------
+
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
+// K E R N E L F U N C T I O N S
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
+
+// calculate position in uniform grid
+BT_GPU___device__ int3 bt3DGrid_calcGridPos(float4 p)
+{
+ int3 gridPos;
+ gridPos.x = (int)floor((p.x - BT_GPU_params.m_worldOriginX) / BT_GPU_params.m_cellSizeX);
+ gridPos.y = (int)floor((p.y - BT_GPU_params.m_worldOriginY) / BT_GPU_params.m_cellSizeY);
+ gridPos.z = (int)floor((p.z - BT_GPU_params.m_worldOriginZ) / BT_GPU_params.m_cellSizeZ);
+ return gridPos;
+} // bt3DGrid_calcGridPos()
+
+//----------------------------------------------------------------------------------------
+
+// calculate address in grid from position (clamping to edges)
+BT_GPU___device__ uint bt3DGrid_calcGridHash(int3 gridPos)
+{
+ gridPos.x = BT_GPU_max(0, BT_GPU_min(gridPos.x, (int)BT_GPU_params.m_gridSizeX - 1));
+ gridPos.y = BT_GPU_max(0, BT_GPU_min(gridPos.y, (int)BT_GPU_params.m_gridSizeY - 1));
+ gridPos.z = BT_GPU_max(0, BT_GPU_min(gridPos.z, (int)BT_GPU_params.m_gridSizeZ - 1));
+ return BT_GPU___mul24(BT_GPU___mul24(gridPos.z, BT_GPU_params.m_gridSizeY), BT_GPU_params.m_gridSizeX) + BT_GPU___mul24(gridPos.y, BT_GPU_params.m_gridSizeX) + gridPos.x;
+} // bt3DGrid_calcGridHash()
+
+//----------------------------------------------------------------------------------------
+
+// calculate grid hash value for each body using its AABB
+BT_GPU___global__ void calcHashAABBD(bt3DGrid3F1U* pAABB, uint2* pHash, uint numBodies)
+{
+ int index = BT_GPU___mul24(BT_GPU_blockIdx.x, BT_GPU_blockDim.x) + BT_GPU_threadIdx.x;
+ if(index >= (int)numBodies)
+ {
+ return;
+ }
+ bt3DGrid3F1U bbMin = pAABB[index*2];
+ bt3DGrid3F1U bbMax = pAABB[index*2 + 1];
+ float4 pos;
+ pos.x = (bbMin.fx + bbMax.fx) * 0.5f;
+ pos.y = (bbMin.fy + bbMax.fy) * 0.5f;
+ pos.z = (bbMin.fz + bbMax.fz) * 0.5f;
+ // get address in grid
+ int3 gridPos = bt3DGrid_calcGridPos(pos);
+ uint gridHash = bt3DGrid_calcGridHash(gridPos);
+ // store grid hash and body index
+ pHash[index] = BT_GPU_make_uint2(gridHash, index);
+} // calcHashAABBD()
+
+//----------------------------------------------------------------------------------------
+
+BT_GPU___global__ void findCellStartD(uint2* pHash, uint* cellStart, uint numBodies)
+{
+ int index = BT_GPU___mul24(BT_GPU_blockIdx.x, BT_GPU_blockDim.x) + BT_GPU_threadIdx.x;
+ if(index >= (int)numBodies)
+ {
+ return;
+ }
+ uint2 sortedData = pHash[index];
+ // Load hash data into shared memory so that we can look
+ // at neighboring body's hash value without loading
+ // two hash values per thread
+ BT_GPU___shared__ uint sharedHash[257];
+ sharedHash[BT_GPU_threadIdx.x+1] = sortedData.x;
+ if((index > 0) && (BT_GPU_threadIdx.x == 0))
+ {
+ // first thread in block must load neighbor body hash
+ volatile uint2 prevData = pHash[index-1];
+ sharedHash[0] = prevData.x;
+ }
+ BT_GPU___syncthreads();
+ if((index == 0) || (sortedData.x != sharedHash[BT_GPU_threadIdx.x]))
+ {
+ cellStart[sortedData.x] = index;
+ }
+} // findCellStartD()
+
+//----------------------------------------------------------------------------------------
+
+BT_GPU___device__ uint cudaTestAABBOverlap(bt3DGrid3F1U min0, bt3DGrid3F1U max0, bt3DGrid3F1U min1, bt3DGrid3F1U max1)
+{
+ return (min0.fx <= max1.fx)&& (min1.fx <= max0.fx) &&
+ (min0.fy <= max1.fy)&& (min1.fy <= max0.fy) &&
+ (min0.fz <= max1.fz)&& (min1.fz <= max0.fz);
+} // cudaTestAABBOverlap()
+
+//----------------------------------------------------------------------------------------
+
+BT_GPU___device__ void findPairsInCell( int3 gridPos,
+ uint index,
+ uint2* pHash,
+ uint* pCellStart,
+ bt3DGrid3F1U* pAABB,
+ uint* pPairBuff,
+ uint2* pPairBuffStartCurr,
+ uint numBodies)
+{
+ if ( (gridPos.x < 0) || (gridPos.x > (int)BT_GPU_params.m_gridSizeX - 1)
+ || (gridPos.y < 0) || (gridPos.y > (int)BT_GPU_params.m_gridSizeY - 1)
+ || (gridPos.z < 0) || (gridPos.z > (int)BT_GPU_params.m_gridSizeZ - 1))
+ {
+ return;
+ }
+ uint gridHash = bt3DGrid_calcGridHash(gridPos);
+ // get start of bucket for this cell
+ uint bucketStart = pCellStart[gridHash];
+ if (bucketStart == 0xffffffff)
+ {
+ return; // cell empty
+ }
+ // iterate over bodies in this cell
+ uint2 sortedData = pHash[index];
+ uint unsorted_indx = sortedData.y;
+ bt3DGrid3F1U min0 = BT_GPU_FETCH(pAABB, unsorted_indx*2);
+ bt3DGrid3F1U max0 = BT_GPU_FETCH(pAABB, unsorted_indx*2 + 1);
+ uint handleIndex = min0.uw;
+ uint2 start_curr = pPairBuffStartCurr[handleIndex];
+ uint start = start_curr.x;
+ uint curr = start_curr.y;
+ uint2 start_curr_next = pPairBuffStartCurr[handleIndex+1];
+ uint curr_max = start_curr_next.x - start - 1;
+ uint bucketEnd = bucketStart + BT_GPU_params.m_maxBodiesPerCell;
+ bucketEnd = (bucketEnd > numBodies) ? numBodies : bucketEnd;
+ for(uint index2 = bucketStart; index2 < bucketEnd; index2++)
+ {
+ uint2 cellData = pHash[index2];
+ if (cellData.x != gridHash)
+ {
+ break; // no longer in same bucket
+ }
+ uint unsorted_indx2 = cellData.y;
+ if (unsorted_indx2 < unsorted_indx) // check not colliding with self
+ {
+ bt3DGrid3F1U min1 = BT_GPU_FETCH(pAABB, unsorted_indx2*2);
+ bt3DGrid3F1U max1 = BT_GPU_FETCH(pAABB, unsorted_indx2*2 + 1);
+ if(cudaTestAABBOverlap(min0, max0, min1, max1))
+ {
+ uint handleIndex2 = min1.uw;
+ uint k;
+ for(k = 0; k < curr; k++)
+ {
+ uint old_pair = pPairBuff[start+k] & (~BT_3DGRID_PAIR_ANY_FLG);
+ if(old_pair == handleIndex2)
+ {
+ pPairBuff[start+k] |= BT_3DGRID_PAIR_FOUND_FLG;
+ break;
+ }
+ }
+ if(k == curr)
+ {
+ if(curr >= curr_max)
+ { // not a good solution, but let's avoid crash
+ break;
+ }
+ pPairBuff[start+curr] = handleIndex2 | BT_3DGRID_PAIR_NEW_FLG;
+ curr++;
+ }
+ }
+ }
+ }
+ pPairBuffStartCurr[handleIndex] = BT_GPU_make_uint2(start, curr);
+ return;
+} // findPairsInCell()
+
+//----------------------------------------------------------------------------------------
+
+BT_GPU___global__ void findOverlappingPairsD( bt3DGrid3F1U* pAABB, uint2* pHash, uint* pCellStart,
+ uint* pPairBuff, uint2* pPairBuffStartCurr, uint numBodies)
+{
+ int index = BT_GPU___mul24(BT_GPU_blockIdx.x, BT_GPU_blockDim.x) + BT_GPU_threadIdx.x;
+ if(index >= (int)numBodies)
+ {
+ return;
+ }
+ uint2 sortedData = pHash[index];
+ uint unsorted_indx = sortedData.y;
+ bt3DGrid3F1U bbMin = BT_GPU_FETCH(pAABB, unsorted_indx*2);
+ bt3DGrid3F1U bbMax = BT_GPU_FETCH(pAABB, unsorted_indx*2 + 1);
+ float4 pos;
+ pos.x = (bbMin.fx + bbMax.fx) * 0.5f;
+ pos.y = (bbMin.fy + bbMax.fy) * 0.5f;
+ pos.z = (bbMin.fz + bbMax.fz) * 0.5f;
+ // get address in grid
+ int3 gridPos = bt3DGrid_calcGridPos(pos);
+ // examine only neighbouring cells
+ for(int z=-1; z<=1; z++) {
+ for(int y=-1; y<=1; y++) {
+ for(int x=-1; x<=1; x++) {
+ findPairsInCell(gridPos + BT_GPU_make_int3(x, y, z), index, pHash, pCellStart, pAABB, pPairBuff, pPairBuffStartCurr, numBodies);
+ }
+ }
+ }
+} // findOverlappingPairsD()
+
+//----------------------------------------------------------------------------------------
+
+BT_GPU___global__ void findPairsLargeD( bt3DGrid3F1U* pAABB, uint2* pHash, uint* pCellStart, uint* pPairBuff,
+ uint2* pPairBuffStartCurr, uint numBodies, uint numLarge)
+{
+ int index = BT_GPU___mul24(BT_GPU_blockIdx.x, BT_GPU_blockDim.x) + BT_GPU_threadIdx.x;
+ if(index >= (int)numBodies)
+ {
+ return;
+ }
+ uint2 sortedData = pHash[index];
+ uint unsorted_indx = sortedData.y;
+ bt3DGrid3F1U min0 = BT_GPU_FETCH(pAABB, unsorted_indx*2);
+ bt3DGrid3F1U max0 = BT_GPU_FETCH(pAABB, unsorted_indx*2 + 1);
+ uint handleIndex = min0.uw;
+ uint2 start_curr = pPairBuffStartCurr[handleIndex];
+ uint start = start_curr.x;
+ uint curr = start_curr.y;
+ uint2 start_curr_next = pPairBuffStartCurr[handleIndex+1];
+ uint curr_max = start_curr_next.x - start - 1;
+ for(uint i = 0; i < numLarge; i++)
+ {
+ uint indx2 = numBodies + i;
+ bt3DGrid3F1U min1 = BT_GPU_FETCH(pAABB, indx2*2);
+ bt3DGrid3F1U max1 = BT_GPU_FETCH(pAABB, indx2*2 + 1);
+ if(cudaTestAABBOverlap(min0, max0, min1, max1))
+ {
+ uint k;
+ uint handleIndex2 = min1.uw;
+ for(k = 0; k < curr; k++)
+ {
+ uint old_pair = pPairBuff[start+k] & (~BT_3DGRID_PAIR_ANY_FLG);
+ if(old_pair == handleIndex2)
+ {
+ pPairBuff[start+k] |= BT_3DGRID_PAIR_FOUND_FLG;
+ break;
+ }
+ }
+ if(k == curr)
+ {
+ pPairBuff[start+curr] = handleIndex2 | BT_3DGRID_PAIR_NEW_FLG;
+ if(curr >= curr_max)
+ { // not a good solution, but let's avoid crash
+ break;
+ }
+ curr++;
+ }
+ }
+ }
+ pPairBuffStartCurr[handleIndex] = BT_GPU_make_uint2(start, curr);
+ return;
+} // findPairsLargeD()
+
+//----------------------------------------------------------------------------------------
+
+BT_GPU___global__ void computePairCacheChangesD(uint* pPairBuff, uint2* pPairBuffStartCurr,
+ uint* pPairScan, bt3DGrid3F1U* pAABB, uint numBodies)
+{
+ int index = BT_GPU___mul24(BT_GPU_blockIdx.x, BT_GPU_blockDim.x) + BT_GPU_threadIdx.x;
+ if(index >= (int)numBodies)
+ {
+ return;
+ }
+ bt3DGrid3F1U bbMin = pAABB[index * 2];
+ uint handleIndex = bbMin.uw;
+ uint2 start_curr = pPairBuffStartCurr[handleIndex];
+ uint start = start_curr.x;
+ uint curr = start_curr.y;
+ uint *pInp = pPairBuff + start;
+ uint num_changes = 0;
+ for(uint k = 0; k < curr; k++, pInp++)
+ {
+ if(!((*pInp) & BT_3DGRID_PAIR_FOUND_FLG))
+ {
+ num_changes++;
+ }
+ }
+ pPairScan[index+1] = num_changes;
+} // computePairCacheChangesD()
+
+//----------------------------------------------------------------------------------------
+
+BT_GPU___global__ void squeezeOverlappingPairBuffD(uint* pPairBuff, uint2* pPairBuffStartCurr, uint* pPairScan,
+ uint* pPairOut, bt3DGrid3F1U* pAABB, uint numBodies)
+{
+ int index = BT_GPU___mul24(BT_GPU_blockIdx.x, BT_GPU_blockDim.x) + BT_GPU_threadIdx.x;
+ if(index >= (int)numBodies)
+ {
+ return;
+ }
+ bt3DGrid3F1U bbMin = pAABB[index * 2];
+ uint handleIndex = bbMin.uw;
+ uint2 start_curr = pPairBuffStartCurr[handleIndex];
+ uint start = start_curr.x;
+ uint curr = start_curr.y;
+ uint* pInp = pPairBuff + start;
+ uint* pOut = pPairOut + pPairScan[index];
+ uint* pOut2 = pInp;
+ uint num = 0;
+ for(uint k = 0; k < curr; k++, pInp++)
+ {
+ if(!((*pInp) & BT_3DGRID_PAIR_FOUND_FLG))
+ {
+ *pOut = *pInp;
+ pOut++;
+ }
+ if((*pInp) & BT_3DGRID_PAIR_ANY_FLG)
+ {
+ *pOut2 = (*pInp) & (~BT_3DGRID_PAIR_ANY_FLG);
+ pOut2++;
+ num++;
+ }
+ }
+ pPairBuffStartCurr[handleIndex] = BT_GPU_make_uint2(start, num);
+} // squeezeOverlappingPairBuffD()
+
+
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
+// E N D O F K E R N E L F U N C T I O N S
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
+//----------------------------------------------------------------------------------------
+
+extern "C"
+{
+
+//----------------------------------------------------------------------------------------
+
+void BT_GPU_PREF(calcHashAABB)(bt3DGrid3F1U* pAABB, unsigned int* hash, unsigned int numBodies)
+{
+ int numThreads, numBlocks;
+ BT_GPU_PREF(computeGridSize)(numBodies, 256, numBlocks, numThreads);
+ // execute the kernel
+ BT_GPU_EXECKERNEL(numBlocks, numThreads, calcHashAABBD, (pAABB, (uint2*)hash, numBodies));
+ // check if kernel invocation generated an error
+ BT_GPU_CHECK_ERROR("calcHashAABBD kernel execution failed");
+} // calcHashAABB()
+
+//----------------------------------------------------------------------------------------
+
+void BT_GPU_PREF(findCellStart(unsigned int* hash, unsigned int* cellStart, unsigned int numBodies, unsigned int numCells))
+{
+ int numThreads, numBlocks;
+ BT_GPU_PREF(computeGridSize)(numBodies, 256, numBlocks, numThreads);
+ BT_GPU_SAFE_CALL(BT_GPU_Memset(cellStart, 0xffffffff, numCells*sizeof(uint)));
+ BT_GPU_EXECKERNEL(numBlocks, numThreads, findCellStartD, ((uint2*)hash, (uint*)cellStart, numBodies));
+ BT_GPU_CHECK_ERROR("Kernel execution failed: findCellStartD");
+} // findCellStart()
+
+//----------------------------------------------------------------------------------------
+
+void BT_GPU_PREF(findOverlappingPairs(bt3DGrid3F1U* pAABB, unsigned int* pHash, unsigned int* pCellStart, unsigned int* pPairBuff, unsigned int* pPairBuffStartCurr, unsigned int numBodies))
+{
+#if B_CUDA_USE_TEX
+ BT_GPU_SAFE_CALL(cudaBindTexture(0, pAABBTex, pAABB, numBodies * 2 * sizeof(bt3DGrid3F1U)));
+#endif
+ int numThreads, numBlocks;
+ BT_GPU_PREF(computeGridSize)(numBodies, 64, numBlocks, numThreads);
+ BT_GPU_EXECKERNEL(numBlocks, numThreads, findOverlappingPairsD, (pAABB,(uint2*)pHash,(uint*)pCellStart,(uint*)pPairBuff,(uint2*)pPairBuffStartCurr,numBodies));
+ BT_GPU_CHECK_ERROR("Kernel execution failed: bt_CudaFindOverlappingPairsD");
+#if B_CUDA_USE_TEX
+ BT_GPU_SAFE_CALL(cudaUnbindTexture(pAABBTex));
+#endif
+} // findOverlappingPairs()
+
+//----------------------------------------------------------------------------------------
+
+void BT_GPU_PREF(findPairsLarge(bt3DGrid3F1U* pAABB, unsigned int* pHash, unsigned int* pCellStart, unsigned int* pPairBuff, unsigned int* pPairBuffStartCurr, unsigned int numBodies, unsigned int numLarge))
+{
+#if B_CUDA_USE_TEX
+ BT_GPU_SAFE_CALL(cudaBindTexture(0, pAABBTex, pAABB, (numBodies+numLarge) * 2 * sizeof(bt3DGrid3F1U)));
+#endif
+ int numThreads, numBlocks;
+ BT_GPU_PREF(computeGridSize)(numBodies, 64, numBlocks, numThreads);
+ BT_GPU_EXECKERNEL(numBlocks, numThreads, findPairsLargeD, (pAABB,(uint2*)pHash,(uint*)pCellStart,(uint*)pPairBuff,(uint2*)pPairBuffStartCurr,numBodies,numLarge));
+ BT_GPU_CHECK_ERROR("Kernel execution failed: btCuda_findPairsLargeD");
+#if B_CUDA_USE_TEX
+ BT_GPU_SAFE_CALL(cudaUnbindTexture(pAABBTex));
+#endif
+} // findPairsLarge()
+
+//----------------------------------------------------------------------------------------
+
+void BT_GPU_PREF(computePairCacheChanges(unsigned int* pPairBuff, unsigned int* pPairBuffStartCurr, unsigned int* pPairScan, bt3DGrid3F1U* pAABB, unsigned int numBodies))
+{
+ int numThreads, numBlocks;
+ BT_GPU_PREF(computeGridSize)(numBodies, 256, numBlocks, numThreads);
+ BT_GPU_EXECKERNEL(numBlocks, numThreads, computePairCacheChangesD, ((uint*)pPairBuff,(uint2*)pPairBuffStartCurr,(uint*)pPairScan,pAABB,numBodies));
+ BT_GPU_CHECK_ERROR("Kernel execution failed: btCudaComputePairCacheChangesD");
+} // computePairCacheChanges()
+
+//----------------------------------------------------------------------------------------
+
+void BT_GPU_PREF(squeezeOverlappingPairBuff(unsigned int* pPairBuff, unsigned int* pPairBuffStartCurr, unsigned int* pPairScan, unsigned int* pPairOut, bt3DGrid3F1U* pAABB, unsigned int numBodies))
+{
+ int numThreads, numBlocks;
+ BT_GPU_PREF(computeGridSize)(numBodies, 256, numBlocks, numThreads);
+ BT_GPU_EXECKERNEL(numBlocks, numThreads, squeezeOverlappingPairBuffD, ((uint*)pPairBuff,(uint2*)pPairBuffStartCurr,(uint*)pPairScan,(uint*)pPairOut,pAABB,numBodies));
+ BT_GPU_CHECK_ERROR("Kernel execution failed: btCudaSqueezeOverlappingPairBuffD");
+} // btCuda_squeezeOverlappingPairBuff()
+
+//------------------------------------------------------------------------------------------------
+
+} // extern "C"
+
+//------------------------------------------------------------------------------------------------
+//------------------------------------------------------------------------------------------------
+//------------------------------------------------------------------------------------------------
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library, http://bulletphysics.org
+Copyright (C) 2006, 2009 Sony Computer Entertainment Inc.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+//----------------------------------------------------------------------------------------
+
+// Shared definitions for GPU-based 3D Grid collision detection broadphase
+
+//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+// Keep this file free from Bullet headers
+// it is included into both CUDA and CPU code
+//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+//----------------------------------------------------------------------------------------
+
+#ifndef BTGPU3DGRIDBROADPHASESHAREDDEFS_H
+#define BTGPU3DGRIDBROADPHASESHAREDDEFS_H
+
+//----------------------------------------------------------------------------------------
+
+#include "btGpu3DGridBroadphaseSharedTypes.h"
+
+//----------------------------------------------------------------------------------------
+
+extern "C"
+{
+
+//----------------------------------------------------------------------------------------
+
+void BT_GPU_PREF(calcHashAABB)(bt3DGrid3F1U* pAABB, unsigned int* hash, unsigned int numBodies);
+
+void BT_GPU_PREF(findCellStart)(unsigned int* hash, unsigned int* cellStart, unsigned int numBodies, unsigned int numCells);
+
+void BT_GPU_PREF(findOverlappingPairs)(bt3DGrid3F1U* pAABB, unsigned int* pHash, unsigned int* pCellStart, unsigned int* pPairBuff, unsigned int* pPairBuffStartCurr, unsigned int numBodies);
+
+void BT_GPU_PREF(findPairsLarge)(bt3DGrid3F1U* pAABB, unsigned int* pHash, unsigned int* pCellStart, unsigned int* pPairBuff, unsigned int* pPairBuffStartCurr, unsigned int numBodies, unsigned int numLarge);
+
+void BT_GPU_PREF(computePairCacheChanges)(unsigned int* pPairBuff, unsigned int* pPairBuffStartCurr, unsigned int* pPairScan, bt3DGrid3F1U* pAABB, unsigned int numBodies);
+
+void BT_GPU_PREF(squeezeOverlappingPairBuff)(unsigned int* pPairBuff, unsigned int* pPairBuffStartCurr, unsigned int* pPairScan, unsigned int* pPairOut, bt3DGrid3F1U* pAABB, unsigned int numBodies);
+
+
+//----------------------------------------------------------------------------------------
+
+} // extern "C"
+
+//----------------------------------------------------------------------------------------
+
+#endif // BTGPU3DGRIDBROADPHASESHAREDDEFS_H
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library, http://bulletphysics.org
+Copyright (C) 2006, 2009 Sony Computer Entertainment Inc.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+//----------------------------------------------------------------------------------------
+
+// Shared definitions for GPU-based 3D Grid collision detection broadphase
+
+//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+// Keep this file free from Bullet headers
+// it is included into both CUDA and CPU code
+//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+//----------------------------------------------------------------------------------------
+
+#ifndef BTGPU3DGRIDBROADPHASESHAREDTYPES_H
+#define BTGPU3DGRIDBROADPHASESHAREDTYPES_H
+
+//----------------------------------------------------------------------------------------
+
+#define BT_3DGRID_PAIR_FOUND_FLG (0x40000000)
+#define BT_3DGRID_PAIR_NEW_FLG (0x20000000)
+#define BT_3DGRID_PAIR_ANY_FLG (BT_3DGRID_PAIR_FOUND_FLG | BT_3DGRID_PAIR_NEW_FLG)
+
+//----------------------------------------------------------------------------------------
+
+struct bt3DGridBroadphaseParams
+{
+ unsigned int m_gridSizeX;
+ unsigned int m_gridSizeY;
+ unsigned int m_gridSizeZ;
+ unsigned int m_numCells;
+ float m_worldOriginX;
+ float m_worldOriginY;
+ float m_worldOriginZ;
+ float m_cellSizeX;
+ float m_cellSizeY;
+ float m_cellSizeZ;
+ unsigned int m_numBodies;
+ unsigned int m_maxBodiesPerCell;
+};
+
+//----------------------------------------------------------------------------------------
+
+struct bt3DGrid3F1U
+{
+ float fx;
+ float fy;
+ float fz;
+ unsigned int uw;
+};
+
+//----------------------------------------------------------------------------------------
+
+#endif // BTGPU3DGRIDBROADPHASESHAREDTYPES_H
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library, http://bulletphysics.org
+Copyright (C) 2006, 2009 Sony Computer Entertainment Inc.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+
+
+// definitions for "GPU on CPU" code
+
+
+#ifndef BT_GPU_DEFINES_H
+#define BT_GPU_DEFINES_H
+
+typedef unsigned int uint;
+
+struct int2
+{
+ int x, y;
+};
+
+struct uint2
+{
+ unsigned int x, y;
+};
+
+struct int3
+{
+ int x, y, z;
+};
+
+struct uint3
+{
+ unsigned int x, y, z;
+};
+
+struct float4
+{
+ float x, y, z, w;
+};
+
+struct float3
+{
+ float x, y, z;
+};
+
+
+#define BT_GPU___device__ inline
+#define BT_GPU___devdata__
+#define BT_GPU___constant__
+#define BT_GPU_max(a, b) ((a) > (b) ? (a) : (b))
+#define BT_GPU_min(a, b) ((a) < (b) ? (a) : (b))
+#define BT_GPU_params s3DGridBroadphaseParams
+#define BT_GPU___mul24(a, b) ((a)*(b))
+#define BT_GPU___global__ inline
+#define BT_GPU___shared__ static
+#define BT_GPU___syncthreads()
+#define CUDART_PI_F SIMD_PI
+
+static inline uint2 bt3dGrid_make_uint2(unsigned int x, unsigned int y)
+{
+ uint2 t; t.x = x; t.y = y; return t;
+}
+#define BT_GPU_make_uint2(x, y) bt3dGrid_make_uint2(x, y)
+
+static inline int3 bt3dGrid_make_int3(int x, int y, int z)
+{
+ int3 t; t.x = x; t.y = y; t.z = z; return t;
+}
+#define BT_GPU_make_int3(x, y, z) bt3dGrid_make_int3(x, y, z)
+
+static inline float3 bt3dGrid_make_float3(float x, float y, float z)
+{
+ float3 t; t.x = x; t.y = y; t.z = z; return t;
+}
+#define BT_GPU_make_float3(x, y, z) bt3dGrid_make_float3(x, y, z)
+
+static inline float3 bt3dGrid_make_float34(float4 f)
+{
+ float3 t; t.x = f.x; t.y = f.y; t.z = f.z; return t;
+}
+#define BT_GPU_make_float34(f) bt3dGrid_make_float34(f)
+
+static inline float3 bt3dGrid_make_float31(float f)
+{
+ float3 t; t.x = t.y = t.z = f; return t;
+}
+#define BT_GPU_make_float31(x) bt3dGrid_make_float31(x)
+
+static inline float4 bt3dGrid_make_float42(float3 v, float f)
+{
+ float4 t; t.x = v.x; t.y = v.y; t.z = v.z; t.w = f; return t;
+}
+#define BT_GPU_make_float42(a, b) bt3dGrid_make_float42(a, b)
+
+static inline float4 bt3dGrid_make_float44(float a, float b, float c, float d)
+{
+ float4 t; t.x = a; t.y = b; t.z = c; t.w = d; return t;
+}
+#define BT_GPU_make_float44(a, b, c, d) bt3dGrid_make_float44(a, b, c, d)
+
+inline int3 operator+(int3 a, int3 b)
+{
+ return bt3dGrid_make_int3(a.x + b.x, a.y + b.y, a.z + b.z);
+}
+
+inline float4 operator+(const float4& a, const float4& b)
+{
+ 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;
+}
+inline float4 operator*(const float4& a, float fact)
+{
+ float4 r; r.x = a.x*fact; r.y = a.y*fact; r.z = a.z*fact; r.w = a.w*fact; return r;
+}
+inline float4 operator*(float fact, float4& a)
+{
+ return (a * fact);
+}
+inline float4& operator*=(float4& a, float fact)
+{
+ a = fact * a;
+ return a;
+}
+inline float4& operator+=(float4& a, const float4& b)
+{
+ a = a + b;
+ return a;
+}
+
+inline float3 operator+(const float3& a, const float3& b)
+{
+ float3 r; r.x = a.x+b.x; r.y = a.y+b.y; r.z = a.z+b.z; return r;
+}
+inline float3 operator-(const float3& a, const float3& b)
+{
+ float3 r; r.x = a.x-b.x; r.y = a.y-b.y; r.z = a.z-b.z; return r;
+}
+static inline float bt3dGrid_dot(float3& a, float3& b)
+{
+ return a.x*b.x+a.y*b.y+a.z*b.z;
+}
+#define BT_GPU_dot(a,b) bt3dGrid_dot(a,b)
+
+static inline float bt3dGrid_dot4(float4& a, float4& b)
+{
+ return a.x*b.x+a.y*b.y+a.z*b.z+a.w*b.w;
+}
+#define BT_GPU_dot4(a,b) bt3dGrid_dot4(a,b)
+
+static inline float3 bt3dGrid_cross(const float3& a, const float3& b)
+{
+ 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;
+}
+#define BT_GPU_cross(a,b) bt3dGrid_cross(a,b)
+
+
+inline float3 operator*(const float3& a, float fact)
+{
+ float3 r; r.x = a.x*fact; r.y = a.y*fact; r.z = a.z*fact; return r;
+}
+
+
+inline float3& operator+=(float3& a, const float3& b)
+{
+ a = a + b;
+ return a;
+}
+inline float3& operator-=(float3& a, const float3& b)
+{
+ a = a - b;
+ return a;
+}
+inline float3& operator*=(float3& a, float fact)
+{
+ a = a * fact;
+ return a;
+}
+inline float3 operator-(const float3& v)
+{
+ float3 r; r.x = -v.x; r.y = -v.y; r.z = -v.z; return r;
+}
+
+
+#define BT_GPU_FETCH(a, b) a[b]
+#define BT_GPU_FETCH4(a, b) a[b]
+#define BT_GPU_PREF(func) btGpu_##func
+#define BT_GPU_SAFE_CALL(func) func
+#define BT_GPU_Memset memset
+#define BT_GPU_MemcpyToSymbol(a, b, c) memcpy(&a, b, c)
+#define BT_GPU_BindTexture(a, b, c, d)
+#define BT_GPU_UnbindTexture(a)
+
+static uint2 s_blockIdx, s_blockDim, s_threadIdx;
+#define BT_GPU_blockIdx s_blockIdx
+#define BT_GPU_blockDim s_blockDim
+#define BT_GPU_threadIdx s_threadIdx
+#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;}}}
+
+#define BT_GPU_CHECK_ERROR(s)
+
+
+#endif //BT_GPU_DEFINES_H
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library, http://bulletphysics.org
+Copyright (C) 2006, 2009 Sony Computer Entertainment Inc.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+//----------------------------------------------------------------------------------------
+
+// Shared code for GPU-based utilities
+
+//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+// Keep this file free from Bullet headers
+// will be compiled by both CPU and CUDA compilers
+// file with definitions of BT_GPU_xxx should be included first
+//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+//----------------------------------------------------------------------------------------
+
+#include "btGpuUtilsSharedDefs.h"
+
+//----------------------------------------------------------------------------------------
+
+extern "C"
+{
+
+//----------------------------------------------------------------------------------------
+
+//Round a / b to nearest higher integer value
+int BT_GPU_PREF(iDivUp)(int a, int b)
+{
+ return (a % b != 0) ? (a / b + 1) : (a / b);
+} // iDivUp()
+
+//----------------------------------------------------------------------------------------
+
+// compute grid and thread block size for a given number of elements
+void BT_GPU_PREF(computeGridSize)(int n, int blockSize, int &numBlocks, int &numThreads)
+{
+ numThreads = BT_GPU_min(blockSize, n);
+ numBlocks = BT_GPU_PREF(iDivUp)(n, numThreads);
+} // computeGridSize()
+
+//----------------------------------------------------------------------------------------
+
+} // extern "C"
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library, http://bulletphysics.org
+Copyright (C) 2006, 2007 Sony Computer Entertainment Inc.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+// Shared definitions for GPU-based utilities
+
+//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+// Keep this file free from Bullet headers
+// it is included into both CUDA and CPU code
+// file with definitions of BT_GPU_xxx should be included first
+//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+
+#ifndef BTGPUUTILSDHAREDDEFS_H
+#define BTGPUUTILSDHAREDDEFS_H
+
+
+extern "C"
+{
+
+
+//Round a / b to nearest higher integer value
+int BT_GPU_PREF(iDivUp)(int a, int b);
+
+// compute grid and thread block size for a given number of elements
+void BT_GPU_PREF(computeGridSize)(int n, int blockSize, int &numBlocks, int &numThreads);
+
+void BT_GPU_PREF(allocateArray)(void** devPtr, unsigned int size);
+void BT_GPU_PREF(freeArray)(void* devPtr);
+void BT_GPU_PREF(copyArrayFromDevice)(void* host, const void* device, unsigned int size);
+void BT_GPU_PREF(copyArrayToDevice)(void* device, const void* host, unsigned int size);
+void BT_GPU_PREF(registerGLBufferObject(unsigned int vbo));
+void* BT_GPU_PREF(mapGLBufferObject(unsigned int vbo));
+void BT_GPU_PREF(unmapGLBufferObject(unsigned int vbo));
+
+
+} // extern "C"
+
+
+#endif // BTGPUUTILSDHAREDDEFS_H
+
--- /dev/null
+/*
+ Copyright (C) 2010 Sony Computer Entertainment Inc.
+ All rights reserved.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+*/
+
+
+#include "btParallelConstraintSolver.h"
+#include "BulletDynamics/ConstraintSolver/btContactSolverInfo.h"
+#include "BulletCollision/BroadphaseCollision/btDispatcher.h"
+#include "LinearMath/btPoolAllocator.h"
+#include "BulletCollision/NarrowPhaseCollision/btPersistentManifold.h"
+#include "BulletMultiThreaded/vectormath2bullet.h"
+
+#include "LinearMath/btQuickprof.h"
+#include "BulletMultiThreaded/btThreadSupportInterface.h"
+#ifdef PFX_USE_FREE_VECTORMATH
+#include "vecmath/vmInclude.h"
+#else
+#include "vectormath/vmInclude.h"
+#endif //PFX_USE_FREE_VECTORMATH
+
+#include "HeapManager.h"
+
+#include "PlatformDefinitions.h"
+
+//#include "PfxSimdUtils.h"
+#include "LinearMath/btScalar.h"
+
+#include "TrbStateVec.h"
+
+
+
+/////////////////
+
+
+#define TMP_BUFF_BYTES (15*1024*1024)
+unsigned char ATTRIBUTE_ALIGNED128(tmp_buff[TMP_BUFF_BYTES]);
+
+
+
+// Project Gauss Seidel or the equivalent Sequential Impulse
+ inline void resolveSingleConstraintRowGeneric(PfxSolverBody& body1,PfxSolverBody& body2,const btSolverConstraint& c)
+{
+
+ btScalar deltaImpulse = c.m_rhs-btScalar(c.m_appliedImpulse)*c.m_cfm;
+ const btScalar deltaVel1Dotn = c.m_contactNormal.dot(getBtVector3(body1.mDeltaLinearVelocity)) + c.m_relpos1CrossNormal.dot(getBtVector3(body1.mDeltaAngularVelocity));
+ const btScalar deltaVel2Dotn = -c.m_contactNormal.dot(getBtVector3(body2.mDeltaLinearVelocity)) + c.m_relpos2CrossNormal.dot(getBtVector3(body2.mDeltaAngularVelocity));
+// const btScalar delta_rel_vel = deltaVel1Dotn-deltaVel2Dotn;
+ deltaImpulse -= deltaVel1Dotn*c.m_jacDiagABInv;
+ deltaImpulse -= deltaVel2Dotn*c.m_jacDiagABInv;
+
+ const btScalar sum = btScalar(c.m_appliedImpulse) + deltaImpulse;
+ if (sum < c.m_lowerLimit)
+ {
+ deltaImpulse = c.m_lowerLimit-c.m_appliedImpulse;
+ c.m_appliedImpulse = c.m_lowerLimit;
+ }
+ else if (sum > c.m_upperLimit)
+ {
+ deltaImpulse = c.m_upperLimit-c.m_appliedImpulse;
+ c.m_appliedImpulse = c.m_upperLimit;
+ }
+ else
+ {
+ c.m_appliedImpulse = sum;
+ }
+
+
+ if (body1.mMassInv)
+ {
+ btVector3 linearComponent = c.m_contactNormal*body1.mMassInv;
+ body1.mDeltaLinearVelocity += vmVector3(linearComponent.getX()*deltaImpulse,linearComponent.getY()*deltaImpulse,linearComponent.getZ()*deltaImpulse);
+ btVector3 tmp=c.m_angularComponentA*(btVector3(deltaImpulse,deltaImpulse,deltaImpulse));
+ body1.mDeltaAngularVelocity += vmVector3(tmp.getX(),tmp.getY(),tmp.getZ());
+ }
+
+ if (body2.mMassInv)
+ {
+ btVector3 linearComponent = -c.m_contactNormal*body2.mMassInv;
+ body2.mDeltaLinearVelocity += vmVector3(linearComponent.getX()*deltaImpulse,linearComponent.getY()*deltaImpulse,linearComponent.getZ()*deltaImpulse);
+ btVector3 tmp = c.m_angularComponentB*((btVector3(deltaImpulse,deltaImpulse,deltaImpulse)));//*m_angularFactor);
+ body2.mDeltaAngularVelocity += vmVector3(tmp.getX(),tmp.getY(),tmp.getZ());
+ }
+
+ //body1.internalApplyImpulse(c.m_contactNormal*body1.internalGetInvMass(),c.m_angularComponentA,deltaImpulse);
+ //body2.internalApplyImpulse(-c.m_contactNormal*body2.internalGetInvMass(),c.m_angularComponentB,deltaImpulse);
+
+}
+
+
+static SIMD_FORCE_INLINE
+void pfxSolveLinearConstraintRow(btConstraintRow &constraint,
+ vmVector3 &deltaLinearVelocityA,vmVector3 &deltaAngularVelocityA,
+ float massInvA,const vmMatrix3 &inertiaInvA,const vmVector3 &rA,
+ vmVector3 &deltaLinearVelocityB,vmVector3 &deltaAngularVelocityB,
+ float massInvB,const vmMatrix3 &inertiaInvB,const vmVector3 &rB)
+{
+ const vmVector3 normal(btReadVector3(constraint.m_normal));
+ btScalar deltaImpulse = constraint.m_rhs;
+ vmVector3 dVA = deltaLinearVelocityA + cross(deltaAngularVelocityA,rA);
+ vmVector3 dVB = deltaLinearVelocityB + cross(deltaAngularVelocityB,rB);
+ deltaImpulse -= constraint.m_jacDiagInv * dot(normal,dVA-dVB);
+ btScalar oldImpulse = constraint.m_accumImpulse;
+ constraint.m_accumImpulse = btClamped(oldImpulse + deltaImpulse,constraint.m_lowerLimit,constraint.m_upperLimit);
+ deltaImpulse = constraint.m_accumImpulse - oldImpulse;
+ deltaLinearVelocityA += deltaImpulse * massInvA * normal;
+ deltaAngularVelocityA += deltaImpulse * inertiaInvA * cross(rA,normal);
+ deltaLinearVelocityB -= deltaImpulse * massInvB * normal;
+ deltaAngularVelocityB -= deltaImpulse * inertiaInvB * cross(rB,normal);
+
+}
+
+void btSolveContactConstraint(
+ btConstraintRow &constraintResponse,
+ btConstraintRow &constraintFriction1,
+ btConstraintRow &constraintFriction2,
+ const vmVector3 &contactPointA,
+ const vmVector3 &contactPointB,
+ PfxSolverBody &solverBodyA,
+ PfxSolverBody &solverBodyB,
+ float friction
+ )
+{
+ vmVector3 rA = rotate(solverBodyA.mOrientation,contactPointA);
+ vmVector3 rB = rotate(solverBodyB.mOrientation,contactPointB);
+
+ pfxSolveLinearConstraintRow(constraintResponse,
+ solverBodyA.mDeltaLinearVelocity,solverBodyA.mDeltaAngularVelocity,solverBodyA.mMassInv,solverBodyA.mInertiaInv,rA,
+ solverBodyB.mDeltaLinearVelocity,solverBodyB.mDeltaAngularVelocity,solverBodyB.mMassInv,solverBodyB.mInertiaInv,rB);
+
+ float mf = friction*fabsf(constraintResponse.m_accumImpulse);
+ constraintFriction1.m_lowerLimit = -mf;
+ constraintFriction1.m_upperLimit = mf;
+ constraintFriction2.m_lowerLimit = -mf;
+ constraintFriction2.m_upperLimit = mf;
+
+ pfxSolveLinearConstraintRow(constraintFriction1,
+ solverBodyA.mDeltaLinearVelocity,solverBodyA.mDeltaAngularVelocity,solverBodyA.mMassInv,solverBodyA.mInertiaInv,rA,
+ solverBodyB.mDeltaLinearVelocity,solverBodyB.mDeltaAngularVelocity,solverBodyB.mMassInv,solverBodyB.mInertiaInv,rB);
+
+ pfxSolveLinearConstraintRow(constraintFriction2,
+ solverBodyA.mDeltaLinearVelocity,solverBodyA.mDeltaAngularVelocity,solverBodyA.mMassInv,solverBodyA.mInertiaInv,rA,
+ solverBodyB.mDeltaLinearVelocity,solverBodyB.mDeltaAngularVelocity,solverBodyB.mMassInv,solverBodyB.mInertiaInv,rB);
+}
+
+
+void CustomSolveConstraintsTaskParallel(
+ const PfxParallelGroup *contactParallelGroup,const PfxParallelBatch *contactParallelBatches,
+ PfxConstraintPair *contactPairs,uint32_t numContactPairs,
+ btPersistentManifold* offsetContactManifolds,
+ btConstraintRow* offsetContactConstraintRows,
+ const PfxParallelGroup *jointParallelGroup,const PfxParallelBatch *jointParallelBatches,
+ PfxConstraintPair *jointPairs,uint32_t numJointPairs,
+ btSolverConstraint* offsetSolverConstraints,
+ TrbState *offsetRigStates,
+ PfxSolverBody *offsetSolverBodies,
+ uint32_t numRigidBodies,
+ int iteration,unsigned int taskId,unsigned int numTasks,btBarrier *barrier)
+{
+
+ PfxSolverBody staticBody;
+ staticBody.mMassInv = 0.f;
+ staticBody.mDeltaAngularVelocity=vmVector3(0,0,0);
+ staticBody.mDeltaLinearVelocity =vmVector3(0,0,0);
+
+
+ for(int k=0;k<iteration+1;k++) {
+ // Joint
+ for(uint32_t phaseId=0;phaseId<jointParallelGroup->numPhases;phaseId++) {
+ for(uint32_t batchId=0;batchId<jointParallelGroup->numBatches[phaseId];batchId++) {
+ uint32_t numPairs = jointParallelGroup->numPairs[phaseId*PFX_MAX_SOLVER_BATCHES+batchId];
+ if(batchId%numTasks == taskId && numPairs > 0) {
+ const PfxParallelBatch &batch = jointParallelBatches[phaseId*PFX_MAX_SOLVER_BATCHES+batchId];
+ for(uint32_t i=0;i<numPairs;i++) {
+ PfxConstraintPair &pair = jointPairs[batch.pairIndices[i]];
+ uint16_t iA = pfxGetRigidBodyIdA(pair);
+ uint16_t iB = pfxGetRigidBodyIdB(pair);
+
+
+ PfxSolverBody &solverBodyA = iA != 65535 ? offsetSolverBodies[iA] : staticBody;
+ PfxSolverBody &solverBodyB = iB != 65535 ? offsetSolverBodies[iB] : staticBody;
+
+ if(k==0) {
+
+ }
+ else {
+ btSolverConstraint* constraintRow = &offsetSolverConstraints[pfxGetContactId1(pair)];
+ int numRows = pfxGetNumConstraints(pair);
+ int i;
+ for (i=0;i<numRows;i++)
+ {
+ resolveSingleConstraintRowGeneric(solverBodyA,solverBodyB,constraintRow[i]);
+ }
+
+ }
+ }
+ }
+ }
+
+ barrier->sync();
+ }
+
+ // Contact
+ for(uint32_t phaseId=0;phaseId<contactParallelGroup->numPhases;phaseId++) {
+ for(uint32_t batchId=0;batchId<contactParallelGroup->numBatches[phaseId];batchId++) {
+ uint32_t numPairs = contactParallelGroup->numPairs[phaseId*PFX_MAX_SOLVER_BATCHES+batchId];
+ if(batchId%numTasks == taskId && numPairs > 0) {
+ const PfxParallelBatch &batch = contactParallelBatches[phaseId*PFX_MAX_SOLVER_BATCHES+batchId];
+ for(uint32_t i=0;i<numPairs;i++) {
+ PfxConstraintPair &pair = contactPairs[batch.pairIndices[i]];
+ uint16_t iA = pfxGetRigidBodyIdA(pair);
+ uint16_t iB = pfxGetRigidBodyIdB(pair);
+
+ uint32_t contactIndex = pfxGetConstraintId1(pair);
+ btPersistentManifold& contact = offsetContactManifolds[contactIndex];
+ btConstraintRow* contactConstraintRows = &offsetContactConstraintRows[contactIndex*12];
+
+ PfxSolverBody &solverBodyA = offsetSolverBodies[iA];
+ PfxSolverBody &solverBodyB = offsetSolverBodies[iB];
+
+ for(int j=0;j<contact.getNumContacts();j++) {
+ btManifoldPoint& cp = contact.getContactPoint(j);
+
+ if(k==0) {
+ vmVector3 rA = rotate(solverBodyA.mOrientation,btReadVector3(cp.m_localPointA));
+ vmVector3 rB = rotate(solverBodyB.mOrientation,btReadVector3(cp.m_localPointB));
+
+ float imp[3] =
+ {
+ cp.m_appliedImpulse,
+ cp.m_appliedImpulseLateral1,
+ cp.m_appliedImpulseLateral2
+ };
+ for(int k=0;k<3;k++)
+ {
+ vmVector3 normal = btReadVector3(contactConstraintRows[j*3+k].m_normal);
+ contactConstraintRows[j*3+k].m_accumImpulse = imp[k];
+ float deltaImpulse = contactConstraintRows[j*3+k].m_accumImpulse;
+ solverBodyA.mDeltaLinearVelocity += deltaImpulse * solverBodyA.mMassInv * normal;
+ solverBodyA.mDeltaAngularVelocity += deltaImpulse * solverBodyA.mInertiaInv * cross(rA,normal);
+ solverBodyB.mDeltaLinearVelocity -= deltaImpulse * solverBodyB.mMassInv * normal;
+ solverBodyB.mDeltaAngularVelocity -= deltaImpulse * solverBodyB.mInertiaInv * cross(rB,normal);
+ }
+ }
+ else {
+ btSolveContactConstraint(
+ contactConstraintRows[j*3],
+ contactConstraintRows[j*3+1],
+ contactConstraintRows[j*3+2],
+ btReadVector3(cp.m_localPointA),
+ btReadVector3(cp.m_localPointB),
+ solverBodyA,
+ solverBodyB,
+ cp.m_combinedFriction
+ );
+ }
+ }
+ }
+ }
+ }
+
+ if (barrier)
+ barrier->sync();
+ }
+ }
+}
+
+void CustomPostSolverTask(
+ TrbState *states,
+ PfxSolverBody *solverBodies,
+ uint32_t numRigidBodies)
+{
+ for(uint32_t i=0;i<numRigidBodies;i++) {
+ TrbState &state = states[i];
+ PfxSolverBody &solverBody = solverBodies[i];
+ state.setLinearVelocity(state.getLinearVelocity()+solverBody.mDeltaLinearVelocity);
+ state.setAngularVelocity(state.getAngularVelocity()+solverBody.mDeltaAngularVelocity);
+ }
+}
+
+void* SolverlsMemoryFunc()
+{
+ //don't create local store memory, just return 0
+ return 0;
+}
+
+
+static SIMD_FORCE_INLINE
+void pfxGetPlaneSpace(const vmVector3& n, vmVector3& p, vmVector3& q)
+{
+ if(fabsf(n[2]) > 0.707f) {
+ // choose p in y-z plane
+ float a = n[1]*n[1] + n[2]*n[2];
+ float k = 1.0f/sqrtf(a);
+ p[0] = 0;
+ p[1] = -n[2]*k;
+ p[2] = n[1]*k;
+ // set q = n x p
+ q[0] = a*k;
+ q[1] = -n[0]*p[2];
+ q[2] = n[0]*p[1];
+ }
+ else {
+ // choose p in x-y plane
+ float a = n[0]*n[0] + n[1]*n[1];
+ float k = 1.0f/sqrtf(a);
+ p[0] = -n[1]*k;
+ p[1] = n[0]*k;
+ p[2] = 0;
+ // set q = n x p
+ q[0] = -n[2]*p[1];
+ q[1] = n[2]*p[0];
+ q[2] = a*k;
+ }
+}
+
+
+
+#define PFX_CONTACT_SLOP 0.001f
+
+void btSetupContactConstraint(
+ btConstraintRow &constraintResponse,
+ btConstraintRow &constraintFriction1,
+ btConstraintRow &constraintFriction2,
+ float penetrationDepth,
+ float restitution,
+ float friction,
+ const vmVector3 &contactNormal,
+ const vmVector3 &contactPointA,
+ const vmVector3 &contactPointB,
+ const TrbState &stateA,
+ const TrbState &stateB,
+ PfxSolverBody &solverBodyA,
+ PfxSolverBody &solverBodyB,
+ const vmVector3& linVelA,
+ const vmVector3& angVelA,
+ const vmVector3& linVelB,
+ const vmVector3& angVelB,
+
+ float separateBias,
+ float timeStep
+ )
+{
+ vmVector3 rA = rotate(solverBodyA.mOrientation,contactPointA);
+ vmVector3 rB = rotate(solverBodyB.mOrientation,contactPointB);
+
+ vmMatrix3 K = vmMatrix3::scale(vmVector3(solverBodyA.mMassInv + solverBodyB.mMassInv)) -
+ crossMatrix(rA) * solverBodyA.mInertiaInv * crossMatrix(rA) -
+ crossMatrix(rB) * solverBodyB.mInertiaInv * crossMatrix(rB);
+
+ //use the velocities without the applied (gravity and external) forces for restitution computation
+ vmVector3 vArestitution = linVelA + cross(angVelA,rA);
+ vmVector3 vBrestitution = linVelB + cross(angVelB,rB);
+ vmVector3 vABrestitution = vArestitution-vBrestitution;
+
+ vmVector3 vA = stateA.getLinearVelocity() + cross(stateA.getAngularVelocity(),rA);
+ vmVector3 vB = stateB.getLinearVelocity() + cross(stateB.getAngularVelocity(),rB);
+ vmVector3 vAB = vA-vB;
+
+
+ vmVector3 tangent1,tangent2;
+ btPlaneSpace1(contactNormal,tangent1,tangent2);
+
+// constraintResponse.m_accumImpulse = 0.f;
+// constraintFriction1.m_accumImpulse = 0.f;
+// constraintFriction2.m_accumImpulse = 0.f;
+
+ // Contact Constraint
+ {
+ vmVector3 normal = contactNormal;
+
+ float denom = dot(K*normal,normal);
+
+ constraintResponse.m_rhs = -(1.0f+restitution)*dot(vAB,normal); // velocity error
+ constraintResponse.m_rhs -= (separateBias * btMin(0.0f,penetrationDepth+PFX_CONTACT_SLOP)) / timeStep; // position error
+ constraintResponse.m_rhs /= denom;
+ constraintResponse.m_jacDiagInv = 1.0f/denom;
+ constraintResponse.m_lowerLimit = 0.0f;
+ constraintResponse.m_upperLimit = SIMD_INFINITY;
+ btStoreVector3(normal,constraintResponse.m_normal);
+ }
+
+ // Friction Constraint 1
+ {
+ vmVector3 normal = tangent1;
+
+ float denom = dot(K*normal,normal);
+
+ constraintFriction1.m_jacDiagInv = 1.0f/denom;
+ constraintFriction1.m_rhs = -dot(vAB,normal);
+ constraintFriction1.m_rhs *= constraintFriction1.m_jacDiagInv;
+ constraintFriction1.m_lowerLimit = 0.0f;
+ constraintFriction1.m_upperLimit = SIMD_INFINITY;
+ btStoreVector3(normal,constraintFriction1.m_normal);
+ }
+
+ // Friction Constraint 2
+ {
+ vmVector3 normal = tangent2;
+
+ float denom = dot(K*normal,normal);
+
+ constraintFriction2.m_jacDiagInv = 1.0f/denom;
+ constraintFriction2.m_rhs = -dot(vAB,normal);
+ constraintFriction2.m_rhs *= constraintFriction2.m_jacDiagInv;
+ constraintFriction2.m_lowerLimit = 0.0f;
+ constraintFriction2.m_upperLimit = SIMD_INFINITY;
+ btStoreVector3(normal,constraintFriction2.m_normal);
+ }
+}
+
+
+void CustomSetupContactConstraintsTask(
+ PfxConstraintPair *contactPairs,uint32_t numContactPairs,
+ btPersistentManifold* offsetContactManifolds,
+ btConstraintRow* offsetContactConstraintRows,
+ TrbState *offsetRigStates,
+ PfxSolverBody *offsetSolverBodies,
+ uint32_t numRigidBodies,
+ float separateBias,
+ float timeStep)
+{
+ for(uint32_t i=0;i<numContactPairs;i++) {
+ PfxConstraintPair &pair = contactPairs[i];
+ if(!pfxGetActive(pair) || pfxGetNumConstraints(pair) == 0 ||
+ ((pfxGetMotionMaskA(pair)&PFX_MOTION_MASK_STATIC) && (pfxGetMotionMaskB(pair)&PFX_MOTION_MASK_STATIC)) ) {
+ continue;
+ }
+
+ uint16_t iA = pfxGetRigidBodyIdA(pair);
+ uint16_t iB = pfxGetRigidBodyIdB(pair);
+
+ int id = pfxGetConstraintId1(pair);
+ btPersistentManifold& contact = offsetContactManifolds[id];
+ btConstraintRow* contactConstraintRows = &offsetContactConstraintRows[id*12];
+
+ TrbState &stateA = offsetRigStates[iA];
+// PfxRigBody &bodyA = offsetRigBodies[iA];
+ PfxSolverBody &solverBodyA = offsetSolverBodies[iA];
+
+ TrbState &stateB = offsetRigStates[iB];
+// PfxRigBody &bodyB = offsetRigBodies[iB];
+ PfxSolverBody &solverBodyB = offsetSolverBodies[iB];
+
+ float restitution = 0.5f * (solverBodyA.restitution + solverBodyB.restitution);
+ //if(contact.getDuration() > 1) restitution = 0.0f;
+
+ float friction = sqrtf(solverBodyA.friction * solverBodyB.friction);
+
+ for(int j=0;j<contact.getNumContacts();j++) {
+ btManifoldPoint& cp = contact.getContactPoint(j);
+
+ //pass the velocities without the applied (gravity and external) forces for restitution computation
+ const btRigidBody* rbA = btRigidBody::upcast(contact.getBody0());
+ const btRigidBody* rbB = btRigidBody::upcast(contact.getBody1());
+
+ btVector3 linVelA, linVelB;
+ btVector3 angVelA, angVelB;
+
+ if (rbA && (rbA->getInvMass()>0.f))
+ {
+ linVelA = rbA->getLinearVelocity();
+ angVelA = rbA->getAngularVelocity();
+ } else
+ {
+ linVelA.setValue(0,0,0);
+ angVelA.setValue(0,0,0);
+ }
+
+ if (rbB && (rbB->getInvMass()>0.f))
+ {
+ linVelB = rbB->getLinearVelocity();
+ angVelB = rbB->getAngularVelocity();
+ } else
+ {
+ linVelB.setValue(0,0,0);
+ angVelB.setValue(0,0,0);
+ }
+
+
+
+ btSetupContactConstraint(
+ contactConstraintRows[j*3],
+ contactConstraintRows[j*3+1],
+ contactConstraintRows[j*3+2],
+ cp.getDistance(),
+ restitution,
+ friction,
+ btReadVector3(cp.m_normalWorldOnB),//.mConstraintRow[0].m_normal),
+ btReadVector3(cp.m_localPointA),
+ btReadVector3(cp.m_localPointB),
+ stateA,
+ stateB,
+ solverBodyA,
+ solverBodyB,
+ (const vmVector3&)linVelA, (const vmVector3&)angVelA,
+ (const vmVector3&)linVelB, (const vmVector3&)angVelB,
+ separateBias,
+ timeStep
+ );
+ }
+
+ //contact.setCompositeFriction(friction);
+ }
+}
+
+
+void CustomWritebackContactConstraintsTask(
+ PfxConstraintPair *contactPairs,uint32_t numContactPairs,
+ btPersistentManifold* offsetContactManifolds,
+ btConstraintRow* offsetContactConstraintRows,
+ TrbState *offsetRigStates,
+ PfxSolverBody *offsetSolverBodies,
+ uint32_t numRigidBodies,
+ float separateBias,
+ float timeStep)
+{
+ for(uint32_t i=0;i<numContactPairs;i++) {
+ PfxConstraintPair &pair = contactPairs[i];
+ if(!pfxGetActive(pair) || pfxGetNumConstraints(pair) == 0 ||
+ ((pfxGetMotionMaskA(pair)&PFX_MOTION_MASK_STATIC) && (pfxGetMotionMaskB(pair)&PFX_MOTION_MASK_STATIC)) ) {
+ continue;
+ }
+ int id = pfxGetConstraintId1(pair);
+ btPersistentManifold& contact = offsetContactManifolds[id];
+ btConstraintRow* contactConstraintRows = &offsetContactConstraintRows[id*12];
+ for(int j=0;j<contact.getNumContacts();j++) {
+ btManifoldPoint& cp = contact.getContactPoint(j);
+ cp.m_appliedImpulse = contactConstraintRows[j*3+0].m_accumImpulse;
+ cp.m_appliedImpulseLateral1 = contactConstraintRows[j*3+1].m_accumImpulse;
+ cp.m_appliedImpulseLateral2 = contactConstraintRows[j*3+2].m_accumImpulse;
+ }
+ //contact.setCompositeFriction(friction);
+ }
+}
+
+void SolverThreadFunc(void* userPtr,void* lsMemory)
+{
+ btConstraintSolverIO* io = (btConstraintSolverIO*)(userPtr);//arg->io);
+ btCriticalSection* criticalsection = io->setupContactConstraints.criticalSection;
+
+
+ //CustomCriticalSection *criticalsection = &io->m_cs;
+ switch(io->cmd) {
+
+ case PFX_CONSTRAINT_SOLVER_CMD_SOLVE_CONSTRAINTS:
+ CustomSolveConstraintsTaskParallel(
+ io->solveConstraints.contactParallelGroup,
+ io->solveConstraints.contactParallelBatches,
+ io->solveConstraints.contactPairs,
+ io->solveConstraints.numContactPairs,
+ io->solveConstraints.offsetContactManifolds,
+ io->solveConstraints.offsetContactConstraintRows,
+
+ io->solveConstraints.jointParallelGroup,
+ io->solveConstraints.jointParallelBatches,
+ io->solveConstraints.jointPairs,
+ io->solveConstraints.numJointPairs,
+ io->solveConstraints.offsetSolverConstraints,
+ io->solveConstraints.offsetRigStates1,
+ io->solveConstraints.offsetSolverBodies,
+ io->solveConstraints.numRigidBodies,
+ io->solveConstraints.iteration,
+
+ io->solveConstraints.taskId,
+ io->maxTasks1,
+ io->solveConstraints.barrier
+ );
+ break;
+
+ case PFX_CONSTRAINT_SOLVER_CMD_POST_SOLVER:
+ CustomPostSolverTask( io->postSolver.states,io->postSolver.solverBodies, io->postSolver.numRigidBodies);
+ break;
+
+
+ case PFX_CONSTRAINT_SOLVER_CMD_SETUP_CONTACT_CONSTRAINTS:
+ {
+ bool empty = false;
+ while(!empty) {
+ int start,batch;
+
+ criticalsection->lock();
+
+ start = (int)criticalsection->getSharedParam(0);
+ batch = (int)criticalsection->getSharedParam(1);
+
+ //PFX_PRINTF("taskId %d start %d num %d\n",arg->taskId,start,batch);
+
+ // \8e\9f\82Ì\83o\83b\83t\83@\82ð\83Z\83b\83g
+ int nextStart = start + batch;
+ int rest = btMax((int)io->setupContactConstraints.numContactPairs1 - nextStart,0);
+ int nextBatch = (rest > batch)?batch:rest;
+
+ criticalsection->setSharedParam(0,nextStart);
+ criticalsection->setSharedParam(1,nextBatch);
+
+ criticalsection->unlock();
+
+ if(batch > 0) {
+ CustomSetupContactConstraintsTask(
+ io->setupContactConstraints.offsetContactPairs+start,batch,
+ io->setupContactConstraints.offsetContactManifolds,
+ io->setupContactConstraints.offsetContactConstraintRows,
+ io->setupContactConstraints.offsetRigStates,
+// io->setupContactConstraints.offsetRigBodies,
+ io->setupContactConstraints.offsetSolverBodies,
+ io->setupContactConstraints.numRigidBodies,
+ io->setupContactConstraints.separateBias,
+ io->setupContactConstraints.timeStep);
+ }
+ else {
+ empty = true;
+ }
+ }
+ }
+ break;
+
+ case PFX_CONSTRAINT_SOLVER_CMD_WRITEBACK_APPLIED_IMPULSES_CONTACT_CONSTRAINTS:
+ {
+ bool empty = false;
+ while(!empty) {
+ int start,batch;
+
+ criticalsection->lock();
+
+ start = (int)criticalsection->getSharedParam(0);
+ batch = (int)criticalsection->getSharedParam(1);
+
+ //PFX_PRINTF("taskId %d start %d num %d\n",arg->taskId,start,batch);
+
+ // \8e\9f\82Ì\83o\83b\83t\83@\82ð\83Z\83b\83g
+ int nextStart = start + batch;
+ int rest = btMax((int)io->setupContactConstraints.numContactPairs1 - nextStart,0);
+ int nextBatch = (rest > batch)?batch:rest;
+
+ criticalsection->setSharedParam(0,nextStart);
+ criticalsection->setSharedParam(1,nextBatch);
+
+ criticalsection->unlock();
+
+ if(batch > 0) {
+ CustomWritebackContactConstraintsTask(
+ io->setupContactConstraints.offsetContactPairs+start,batch,
+ io->setupContactConstraints.offsetContactManifolds,
+ io->setupContactConstraints.offsetContactConstraintRows,
+ io->setupContactConstraints.offsetRigStates,
+// io->setupContactConstraints.offsetRigBodies,
+ io->setupContactConstraints.offsetSolverBodies,
+ io->setupContactConstraints.numRigidBodies,
+ io->setupContactConstraints.separateBias,
+ io->setupContactConstraints.timeStep);
+ }
+ else {
+ empty = true;
+ }
+ }
+ }
+ break;
+
+ default:
+ {
+ btAssert(0);
+ }
+ }
+
+}
+
+
+void CustomSetupContactConstraintsNew(
+ PfxConstraintPair *contactPairs1,uint32_t numContactPairs,
+ btPersistentManifold *offsetContactManifolds,
+ btConstraintRow* offsetContactConstraintRows,
+ TrbState *offsetRigStates,
+ PfxSolverBody *offsetSolverBodies,
+ uint32_t numRigidBodies,
+ float separationBias,
+ float timeStep,
+ class btThreadSupportInterface* threadSupport,
+ btCriticalSection* criticalSection,
+ btConstraintSolverIO *io ,
+ uint8_t cmd
+ )
+{
+ int maxTasks = threadSupport->getNumTasks();
+
+ int div = (int)maxTasks * 4;
+ int batch = ((int)numContactPairs + div - 1) / div;
+#ifdef __PPU__
+ BulletPE2ConstraintSolverSpursSupport* spursThread = (BulletPE2ConstraintSolverSpursSupport*) threadSupport;
+#endif
+ if (criticalSection)
+ {
+ criticalSection->setSharedParam(0,0);
+ criticalSection->setSharedParam(1,btMin(batch,64)); // batched number
+ } else
+ {
+#ifdef __PPU__
+ spursThread->setSharedParam(0,0);
+ spursThread->setSharedParam(1,btMin(batch,64)); // batched number
+#endif //__PPU__
+ }
+
+ for(int t=0;t<maxTasks;t++) {
+ io[t].cmd = cmd;
+ io[t].setupContactConstraints.offsetContactPairs = contactPairs1;
+ io[t].setupContactConstraints.numContactPairs1 = numContactPairs;
+ io[t].setupContactConstraints.offsetRigStates = offsetRigStates;
+ io[t].setupContactConstraints.offsetContactManifolds = offsetContactManifolds;
+ io[t].setupContactConstraints.offsetContactConstraintRows = offsetContactConstraintRows;
+ io[t].setupContactConstraints.offsetSolverBodies = offsetSolverBodies;
+ io[t].setupContactConstraints.numRigidBodies = numRigidBodies;
+ io[t].setupContactConstraints.separateBias = separationBias;
+ io[t].setupContactConstraints.timeStep = timeStep;
+ io[t].setupContactConstraints.criticalSection = criticalSection;
+ io[t].maxTasks1 = maxTasks;
+#ifdef __PPU__
+ io[t].barrierAddr2 = (unsigned int)spursThread->getBarrierAddress();
+ io[t].criticalsectionAddr2 = (unsigned int)spursThread->getCriticalSectionAddress();
+#endif
+
+
+//#define SEQUENTIAL_SETUP
+#ifdef SEQUENTIAL_SETUP
+ CustomSetupContactConstraintsTask(contactPairs1,numContactPairs,offsetContactManifolds,offsetRigStates,offsetSolverBodies,numRigidBodies,separationBias,timeStep);
+#else
+ threadSupport->sendRequest(1,(ppu_address_t)&io[t],t);
+#endif
+
+ }
+#ifndef SEQUENTIAL_SETUP
+ unsigned int arg0,arg1;
+ for(int t=0;t<maxTasks;t++) {
+ arg0 = t;
+ threadSupport->waitForResponse(&arg0,&arg1);
+ }
+#endif //SEQUENTIAL_SETUP
+
+}
+
+
+void CustomSplitConstraints(
+ PfxConstraintPair *pairs,uint32_t numPairs,
+ PfxParallelGroup &group,PfxParallelBatch *batches,
+ uint32_t numTasks,
+ uint32_t numRigidBodies,
+ void *poolBuff,
+ uint32_t poolBytes
+ )
+{
+ HeapManager pool((unsigned char*)poolBuff,poolBytes);
+
+ // \83X\83e\81[\83g\83`\83F\83b\83N\97p\83r\83b\83g\83t\83\89\83O\83e\81[\83u\83\8b
+ int bufSize = sizeof(uint8_t)*numRigidBodies;
+ bufSize = ((bufSize+127)>>7)<<7; // 128 bytes alignment
+ uint8_t *bodyTable = (uint8_t*)pool.allocate(bufSize,HeapManager::ALIGN128);
+
+ // \83y\83A\83`\83F\83b\83N\97p\83r\83b\83g\83t\83\89\83O\83e\81[\83u\83\8b
+ uint32_t *pairTable;
+ size_t allocSize = sizeof(uint32_t)*((numPairs+31)/32);
+ pairTable = (uint32_t*)pool.allocate(allocSize);
+ memset(pairTable,0,allocSize);
+
+ // \96Ú\95W\82Æ\82·\82é\95ª\8a\84\90\94
+ uint32_t targetCount = btMax(uint32_t(PFX_MIN_SOLVER_PAIRS),btMin(numPairs / (numTasks*2),uint32_t(PFX_MAX_SOLVER_PAIRS)));
+ uint32_t startIndex = 0;
+
+ uint32_t phaseId;
+ uint32_t batchId;
+ uint32_t totalCount=0;
+
+ uint32_t maxBatches = btMin(numTasks,uint32_t(PFX_MAX_SOLVER_BATCHES));
+
+ for(phaseId=0;phaseId<PFX_MAX_SOLVER_PHASES&&totalCount<numPairs;phaseId++) {
+ bool startIndexCheck = true;
+
+ group.numBatches[phaseId] = 0;
+
+ uint32_t i = startIndex;
+
+ // \83`\83F\83b\83N\97p\83r\83b\83g\83t\83\89\83O\83e\81[\83u\83\8b\82ð\83N\83\8a\83A
+ memset(bodyTable,0xff,bufSize);
+
+ for(batchId=0;i<numPairs&&totalCount<numPairs&&batchId<maxBatches;batchId++) {
+ uint32_t pairCount=0;
+
+ PfxParallelBatch &batch = batches[phaseId*PFX_MAX_SOLVER_BATCHES+batchId];
+ uint32_t pairId = 0;
+
+ for(;i<numPairs&&pairCount<targetCount;i++) {
+ uint32_t idxP = i>>5;
+ uint32_t maskP = 1L << (i & 31);
+
+ //pair is already assigned to a phase/batch
+ if(pairTable[idxP] & maskP) {
+ continue;
+ }
+
+ uint32_t idxA = pfxGetRigidBodyIdA(pairs[i]);
+ uint32_t idxB = pfxGetRigidBodyIdB(pairs[i]);
+
+ // \97¼\95û\82Æ\82à\83A\83N\83e\83B\83u\82Å\82È\82¢\81A\82Ü\82½\82Í\8fÕ\93Ë\93_\82ª\82O\82Ì\83y\83A\82Í\93o\98^\91Î\8fÛ\82©\82ç\82Í\82¸\82·
+ if(!pfxGetActive(pairs[i]) || pfxGetNumConstraints(pairs[i]) == 0 ||
+ ((pfxGetMotionMaskA(pairs[i])&PFX_MOTION_MASK_STATIC) && (pfxGetMotionMaskB(pairs[i])&PFX_MOTION_MASK_STATIC)) ) {
+ if(startIndexCheck)
+ startIndex++;
+ //assign pair -> skip it because it has no constraints
+ pairTable[idxP] |= maskP;
+ totalCount++;
+ continue;
+ }
+
+ // \88Ë\91¶\90«\82Ì\83`\83F\83b\83N
+ if( (bodyTable[idxA] != batchId && bodyTable[idxA] != 0xff) ||
+ (bodyTable[idxB] != batchId && bodyTable[idxB] != 0xff) ) {
+ startIndexCheck = false;
+ //bodies of the pair are already assigned to another batch within this phase
+ continue;
+ }
+
+ // \88Ë\91¶\90«\94»\92è\83e\81[\83u\83\8b\82É\93o\98^
+ if(pfxGetMotionMaskA(pairs[i])&PFX_MOTION_MASK_DYNAMIC)
+ bodyTable[idxA] = batchId;
+ if(pfxGetMotionMaskB(pairs[i])&PFX_MOTION_MASK_DYNAMIC)
+ bodyTable[idxB] = batchId;
+
+ if(startIndexCheck)
+ startIndex++;
+
+ pairTable[idxP] |= maskP;
+ //add the pair 'i' to the current batch
+ batch.pairIndices[pairId++] = i;
+ pairCount++;
+ }
+
+ group.numPairs[phaseId*PFX_MAX_SOLVER_BATCHES+batchId] = (uint16_t)pairId;
+ totalCount += pairCount;
+ }
+
+ group.numBatches[phaseId] = batchId;
+ }
+
+ group.numPhases = phaseId;
+
+ pool.clear();
+}
+
+
+
+void CustomSolveConstraintsParallel(
+ PfxConstraintPair *contactPairs,uint32_t numContactPairs,
+
+ PfxConstraintPair *jointPairs,uint32_t numJointPairs,
+ btPersistentManifold* offsetContactManifolds,
+ btConstraintRow* offsetContactConstraintRows,
+ btSolverConstraint* offsetSolverConstraints,
+ TrbState *offsetRigStates,
+ PfxSolverBody *offsetSolverBodies,
+ uint32_t numRigidBodies,
+ struct btConstraintSolverIO* io,
+ class btThreadSupportInterface* threadSupport,
+ int iteration,
+ void* poolBuf,
+ int poolBytes,
+ class btBarrier* barrier)
+ {
+
+ int maxTasks = threadSupport->getNumTasks();
+// config.taskManager->setTaskEntry(PFX_SOLVER_ENTRY);
+
+ HeapManager pool((unsigned char*)poolBuf,poolBytes);
+
+ {
+ PfxParallelGroup *cgroup = (PfxParallelGroup*)pool.allocate(sizeof(PfxParallelGroup));
+ PfxParallelBatch *cbatches = (PfxParallelBatch*)pool.allocate(sizeof(PfxParallelBatch)*(PFX_MAX_SOLVER_PHASES*PFX_MAX_SOLVER_BATCHES),128);
+ PfxParallelGroup *jgroup = (PfxParallelGroup*)pool.allocate(sizeof(PfxParallelGroup));
+ PfxParallelBatch *jbatches = (PfxParallelBatch*)pool.allocate(sizeof(PfxParallelBatch)*(PFX_MAX_SOLVER_PHASES*PFX_MAX_SOLVER_BATCHES),128);
+
+ uint32_t tmpBytes = poolBytes - 2 * (sizeof(PfxParallelGroup) + sizeof(PfxParallelBatch)*(PFX_MAX_SOLVER_PHASES*PFX_MAX_SOLVER_BATCHES) + 128);
+ void *tmpBuff = pool.allocate(tmpBytes);
+
+ {
+ BT_PROFILE("CustomSplitConstraints");
+ CustomSplitConstraints(contactPairs,numContactPairs,*cgroup,cbatches,maxTasks,numRigidBodies,tmpBuff,tmpBytes);
+ CustomSplitConstraints(jointPairs,numJointPairs,*jgroup,jbatches,maxTasks,numRigidBodies,tmpBuff,tmpBytes);
+ }
+
+ {
+ BT_PROFILE("PFX_CONSTRAINT_SOLVER_CMD_SOLVE_CONSTRAINTS");
+//#define SOLVE_SEQUENTIAL
+#ifdef SOLVE_SEQUENTIAL
+ CustomSolveConstraintsTask(
+ io->solveConstraints.contactParallelGroup,
+ io->solveConstraints.contactParallelBatches,
+ io->solveConstraints.contactPairs,
+ io->solveConstraints.numContactPairs,
+ io->solveConstraints.offsetContactManifolds,
+
+ io->solveConstraints.jointParallelGroup,
+ io->solveConstraints.jointParallelBatches,
+ io->solveConstraints.jointPairs,
+ io->solveConstraints.numJointPairs,
+ io->solveConstraints.offsetSolverConstraints,
+
+ io->solveConstraints.offsetRigStates1,
+ io->solveConstraints.offsetSolverBodies,
+ io->solveConstraints.numRigidBodies,
+ io->solveConstraints.iteration,0,1,0);//arg->taskId,1,0);//,arg->maxTasks,arg->barrier);
+#else
+ for(int t=0;t<maxTasks;t++) {
+ io[t].cmd = PFX_CONSTRAINT_SOLVER_CMD_SOLVE_CONSTRAINTS;
+ io[t].solveConstraints.contactParallelGroup = cgroup;
+ io[t].solveConstraints.contactParallelBatches = cbatches;
+ io[t].solveConstraints.contactPairs = contactPairs;
+ io[t].solveConstraints.numContactPairs = numContactPairs;
+ io[t].solveConstraints.offsetContactManifolds = offsetContactManifolds;
+ io[t].solveConstraints.offsetContactConstraintRows = offsetContactConstraintRows;
+ io[t].solveConstraints.jointParallelGroup = jgroup;
+ io[t].solveConstraints.jointParallelBatches = jbatches;
+ io[t].solveConstraints.jointPairs = jointPairs;
+ io[t].solveConstraints.numJointPairs = numJointPairs;
+ io[t].solveConstraints.offsetSolverConstraints = offsetSolverConstraints;
+ io[t].solveConstraints.offsetRigStates1 = offsetRigStates;
+ io[t].solveConstraints.offsetSolverBodies = offsetSolverBodies;
+ io[t].solveConstraints.numRigidBodies = numRigidBodies;
+ io[t].solveConstraints.iteration = iteration;
+ io[t].solveConstraints.taskId = t;
+ io[t].solveConstraints.barrier = barrier;
+
+ io[t].maxTasks1 = maxTasks;
+#ifdef __PPU__
+ BulletPE2ConstraintSolverSpursSupport* spursThread = (BulletPE2ConstraintSolverSpursSupport*) threadSupport;
+ io[t].barrierAddr2 = (unsigned int) spursThread->getBarrierAddress();
+ io[t].criticalsectionAddr2 = (unsigned int)spursThread->getCriticalSectionAddress();
+#endif
+
+ threadSupport->sendRequest(1,(ppu_address_t)&io[t],t);
+ }
+
+ unsigned int arg0,arg1;
+ for(int t=0;t<maxTasks;t++) {
+ arg0 = t;
+ threadSupport->waitForResponse(&arg0,&arg1);
+ }
+#endif
+ }
+ pool.clear();
+ }
+
+ {
+ BT_PROFILE("PFX_CONSTRAINT_SOLVER_CMD_POST_SOLVER");
+ int batch = ((int)numRigidBodies + maxTasks - 1) / maxTasks;
+ int rest = (int)numRigidBodies;
+ int start = 0;
+
+ for(int t=0;t<maxTasks;t++) {
+ int num = (rest - batch ) > 0 ? batch : rest;
+ io[t].cmd = PFX_CONSTRAINT_SOLVER_CMD_POST_SOLVER;
+ io[t].postSolver.states = offsetRigStates + start;
+ io[t].postSolver.solverBodies = offsetSolverBodies + start;
+ io[t].postSolver.numRigidBodies = (uint32_t)num;
+ io[t].maxTasks1 = maxTasks;
+#ifdef __PPU__
+ BulletPE2ConstraintSolverSpursSupport* spursThread = (BulletPE2ConstraintSolverSpursSupport*) threadSupport;
+ io[t].barrierAddr2 = (unsigned int)spursThread->getBarrierAddress();
+ io[t].criticalsectionAddr2 = (unsigned int)spursThread->getCriticalSectionAddress();
+#endif
+
+#ifdef SOLVE_SEQUENTIAL
+ CustomPostSolverTask( io[t].postSolver.states,io[t].postSolver.solverBodies, io[t].postSolver.numRigidBodies);
+#else
+ threadSupport->sendRequest(1,(ppu_address_t)&io[t],t);
+#endif
+ rest -= num;
+ start += num;
+ }
+
+ unsigned int arg0,arg1;
+ for(int t=0;t<maxTasks;t++) {
+#ifndef SOLVE_SEQUENTIAL
+ arg0 = t;
+ threadSupport->waitForResponse(&arg0,&arg1);
+#endif
+ }
+ }
+
+}
+
+
+
+void BPE_customConstraintSolverSequentialNew(unsigned int new_num, PfxBroadphasePair *new_pairs1 ,
+ btPersistentManifold* offsetContactManifolds,
+ PfxConstraintRow* offsetContactConstraintRows,
+ TrbState* states,int numRigidBodies,
+ struct PfxSolverBody* solverBodies,
+ PfxConstraintPair* jointPairs, unsigned int numJoints,
+ btSolverConstraint* offsetSolverConstraints,
+ float separateBias,
+ float timeStep,
+ int iteration,
+ btThreadSupportInterface* solverThreadSupport,
+ btCriticalSection* criticalSection,
+ struct btConstraintSolverIO* solverIO,
+ btBarrier* barrier
+ )
+{
+
+ {
+ BT_PROFILE("pfxSetupConstraints");
+
+ for(uint32_t i=0;i<numJoints;i++) {
+ // \8fî\95ñ\82Ì\8dX\90V
+ PfxConstraintPair &pair = jointPairs[i];
+ int idA = pfxGetRigidBodyIdA(pair);
+
+ if (idA != 65535)
+ {
+ pfxSetMotionMaskA(pair,states[pfxGetRigidBodyIdA(pair)].getMotionMask());
+ }
+ else
+ {
+ pfxSetMotionMaskA(pair,PFX_MOTION_MASK_STATIC);
+ }
+ int idB = pfxGetRigidBodyIdB(pair);
+ if (idB!= 65535)
+ {
+ pfxSetMotionMaskB(pair,states[pfxGetRigidBodyIdB(pair)].getMotionMask());
+ } else
+ {
+ pfxSetMotionMaskB(pair,PFX_MOTION_MASK_STATIC);
+ }
+ }
+
+// CustomSetupJointConstraintsSeq( jointPairs,numJoints,joints, states, solverBodies, numRigidBodies, timeStep);
+
+#ifdef SEQUENTIAL_SETUP
+ CustomSetupContactConstraintsSeqNew(
+ (PfxConstraintPair*)new_pairs1,new_num,contacts,
+ states,
+ solverBodies,
+ numRigidBodies,
+ separateBias,
+ timeStep);
+#else
+
+ CustomSetupContactConstraintsNew(
+ (PfxConstraintPair*)new_pairs1,new_num,
+ offsetContactManifolds,
+ offsetContactConstraintRows,
+ states,
+ solverBodies,
+ numRigidBodies,
+ separateBias,
+ timeStep,
+ solverThreadSupport,
+ criticalSection,solverIO,
+ PFX_CONSTRAINT_SOLVER_CMD_SETUP_CONTACT_CONSTRAINTS
+ );
+
+#endif //SEQUENTIAL_SETUP
+
+ }
+ {
+ BT_PROFILE("pfxSolveConstraints");
+
+//#define SEQUENTIAL
+#ifdef SEQUENTIAL
+ CustomSolveConstraintsSeq(
+ (PfxConstraintPair*)new_pairs1,new_num,contacts,
+ jointPairs,numJoints,
+ states,
+ solverBodies,
+ numRigidBodies,
+ separateBias,
+ timeStep,
+ iteration);
+#else //SEQUENTIAL
+ CustomSolveConstraintsParallel(
+ (PfxConstraintPair*)new_pairs1,new_num,
+ jointPairs,numJoints,
+ offsetContactManifolds,
+ offsetContactConstraintRows,
+ offsetSolverConstraints,
+ states,
+ solverBodies,
+ numRigidBodies,
+ solverIO, solverThreadSupport,
+ iteration,
+ tmp_buff,
+ TMP_BUFF_BYTES,
+ barrier
+ );
+
+#endif //SEQUENTIAL
+ }
+
+ {
+ BT_PROFILE("writeback appliedImpulses");
+
+ CustomSetupContactConstraintsNew(
+ (PfxConstraintPair*)new_pairs1,new_num,
+ offsetContactManifolds,
+ offsetContactConstraintRows,
+ states,
+ solverBodies,
+ numRigidBodies,
+ separateBias,
+ timeStep,
+ solverThreadSupport,
+ criticalSection,solverIO,
+ PFX_CONSTRAINT_SOLVER_CMD_WRITEBACK_APPLIED_IMPULSES_CONTACT_CONSTRAINTS
+ );
+ }
+
+}
+
+
+struct btParallelSolverMemoryCache
+{
+ btAlignedObjectArray<TrbState> m_mystates;
+ btAlignedObjectArray<PfxSolverBody> m_mysolverbodies;
+ btAlignedObjectArray<PfxBroadphasePair> m_mypairs;
+ btAlignedObjectArray<PfxConstraintPair> m_jointPairs;
+ btAlignedObjectArray<PfxConstraintRow> m_constraintRows;
+
+};
+
+
+btConstraintSolverIO* createSolverIO(int numThreads)
+{
+ return new btConstraintSolverIO[numThreads];
+}
+
+btParallelConstraintSolver::btParallelConstraintSolver(btThreadSupportInterface* solverThreadSupport)
+{
+
+ m_solverThreadSupport = solverThreadSupport;//createSolverThreadSupport(maxNumThreads);
+ m_solverIO = createSolverIO(m_solverThreadSupport->getNumTasks());
+
+ m_barrier = m_solverThreadSupport->createBarrier();
+ m_criticalSection = m_solverThreadSupport->createCriticalSection();
+
+ m_memoryCache = new btParallelSolverMemoryCache();
+}
+
+btParallelConstraintSolver::~btParallelConstraintSolver()
+{
+ delete m_memoryCache;
+ delete m_solverIO;
+ m_solverThreadSupport->deleteBarrier(m_barrier);
+ m_solverThreadSupport->deleteCriticalSection(m_criticalSection);
+}
+
+
+
+btScalar btParallelConstraintSolver::solveGroup(btCollisionObject** bodies1,int numRigidBodies,btPersistentManifold** manifoldPtr,int numManifolds,btTypedConstraint** constraints,int numConstraints,const btContactSolverInfo& infoGlobal, btIDebugDraw* debugDrawer, btStackAlloc* stackAlloc,btDispatcher* dispatcher)
+{
+
+/* int sz = sizeof(PfxSolverBody);
+ int sz2 = sizeof(vmVector3);
+ int sz3 = sizeof(vmMatrix3);
+ int sz4 = sizeof(vmQuat);
+ int sz5 = sizeof(btConstraintRow);
+ int sz6 = sizeof(btSolverConstraint);
+ int sz7 = sizeof(TrbState);
+*/
+
+ btPersistentManifold* offsetContactManifolds= (btPersistentManifold*) dispatcher->getInternalManifoldPool()->getPoolAddress();
+
+
+ m_memoryCache->m_mysolverbodies.resize(numRigidBodies);
+ m_memoryCache->m_mystates.resize(numRigidBodies);
+
+ {
+ BT_PROFILE("create states and solver bodies");
+ for (int i=0;i<numRigidBodies;i++)
+ {
+ btCollisionObject* obj = bodies1[i];
+ obj->setCompanionId(i);
+
+ PfxSolverBody& solverBody = m_memoryCache->m_mysolverbodies[i];
+ btRigidBody* rb = btRigidBody::upcast(obj);
+ TrbState& state = m_memoryCache->m_mystates[i];
+
+ state.reset();
+ const btQuaternion& orgOri = obj->getWorldTransform().getRotation();
+ vmQuat orn(orgOri.getX(),orgOri.getY(),orgOri.getZ(),orgOri.getW());
+ state.setPosition(getVmVector3(obj->getWorldTransform().getOrigin()));
+ state.setOrientation(orn);
+ state.setPosition(state.getPosition());
+ state.setRigidBodyId(i);
+ state.setAngularDamping(0);
+ state.setLinearDamping(0);
+
+
+ solverBody.mOrientation = state.getOrientation();
+ solverBody.mDeltaLinearVelocity = vmVector3(0.0f);
+ solverBody.mDeltaAngularVelocity = vmVector3(0.0f);
+ solverBody.friction = obj->getFriction();
+ solverBody.restitution = obj->getRestitution();
+
+ state.resetSleepCount();
+
+ //if(state.getMotionMask()&PFX_MOTION_MASK_DYNAMIC) {
+ if (rb && (rb->getInvMass()>0.f))
+ {
+ btVector3 angVelPlusForces = rb->getAngularVelocity()+rb->getTotalTorque()*rb->getInvInertiaTensorWorld()*infoGlobal.m_timeStep;
+ btVector3 linVelPlusForces = rb->getLinearVelocity()+rb->getTotalForce()*rb->getInvMass()*infoGlobal.m_timeStep;
+
+ state.setAngularVelocity((const vmVector3&)angVelPlusForces);
+ state.setLinearVelocity((const vmVector3&) linVelPlusForces);
+
+ state.setMotionType(PfxMotionTypeActive);
+ vmMatrix3 ori(solverBody.mOrientation);
+ vmMatrix3 localInvInertia = vmMatrix3::identity();
+ localInvInertia.setCol(0,vmVector3(rb->getInvInertiaDiagLocal().getX(),0,0));
+ localInvInertia.setCol(1,vmVector3(0, rb->getInvInertiaDiagLocal().getY(),0));
+ localInvInertia.setCol(2,vmVector3(0,0, rb->getInvInertiaDiagLocal().getZ()));
+
+ solverBody.mMassInv = rb->getInvMass();
+ solverBody.mInertiaInv = ori * localInvInertia * transpose(ori);
+ } else
+ {
+ state.setAngularVelocity(vmVector3(0));
+ state.setLinearVelocity(vmVector3(0));
+
+ state.setMotionType(PfxMotionTypeFixed);
+ m_memoryCache->m_mysolverbodies[i].mMassInv = 0.f;
+ m_memoryCache->m_mysolverbodies[i].mInertiaInv = vmMatrix3(0.0f);
+ }
+
+ }
+ }
+
+
+
+ int totalPoints = 0;
+#ifndef USE_C_ARRAYS
+ m_memoryCache->m_mypairs.resize(numManifolds);
+ //4 points per manifold and 3 rows per point makes 12 rows per manifold
+ m_memoryCache->m_constraintRows.resize(numManifolds*12);
+ m_memoryCache->m_jointPairs.resize(numConstraints);
+#endif//USE_C_ARRAYS
+
+ int actualNumManifolds= 0;
+ {
+ BT_PROFILE("convert manifolds");
+ for (int i1=0;i1<numManifolds;i1++)
+ {
+ if (manifoldPtr[i1]->getNumContacts()>0)
+ {
+ btPersistentManifold* m = manifoldPtr[i1];
+ btCollisionObject* obA = (btCollisionObject*)m->getBody0();
+ btCollisionObject* obB = (btCollisionObject*)m->getBody1();
+ bool obAisActive = !obA->isStaticOrKinematicObject() && obA->isActive();
+ bool obBisActive = !obB->isStaticOrKinematicObject() && obB->isActive();
+
+ if (!obAisActive && !obBisActive)
+ continue;
+
+
+ //int contactId = i1;//actualNumManifolds;
+
+ PfxBroadphasePair& pair = m_memoryCache->m_mypairs[actualNumManifolds];
+ //init those
+ // float compFric = obA->getFriction()*obB->getFriction();//@todo
+ int idA = obA->getCompanionId();
+ int idB = obB->getCompanionId();
+
+ m->m_companionIdA = idA;
+ m->m_companionIdB = idB;
+
+
+ // if ((mysolverbodies[idA].mMassInv!=0)&&(mysolverbodies[idB].mMassInv!=0))
+ // continue;
+ int numPosPoints=0;
+ for (int p=0;p<m->getNumContacts();p++)
+ {
+ //btManifoldPoint& pt = m->getContactPoint(p);
+ //float dist = pt.getDistance();
+ //if (dist<0.001)
+ numPosPoints++;
+ }
+
+
+ totalPoints+=numPosPoints;
+ pfxSetRigidBodyIdA(pair,idA);
+ pfxSetRigidBodyIdB(pair,idB);
+ pfxSetMotionMaskA(pair,m_memoryCache->m_mystates[idA].getMotionMask());
+ pfxSetMotionMaskB(pair,m_memoryCache->m_mystates[idB].getMotionMask());
+ pfxSetActive(pair,numPosPoints>0);
+
+ pfxSetBroadphaseFlag(pair,0);
+ int contactId = m-offsetContactManifolds;
+ //likely the contact pool is not contiguous, make sure to allocate large enough contact pool
+ btAssert(contactId>=0);
+ btAssert(contactId<dispatcher->getInternalManifoldPool()->getMaxCount());
+
+ pfxSetContactId(pair,contactId);
+ pfxSetNumConstraints(pair,numPosPoints);//manifoldPtr[i]->getNumContacts());
+ actualNumManifolds++;
+ }
+
+ }
+ }
+
+ PfxConstraintPair* jointPairs=0;
+ jointPairs = numConstraints? &m_memoryCache->m_jointPairs[0]:0;
+ int actualNumJoints=0;
+
+
+ btSolverConstraint* offsetSolverConstraints = 0;
+
+ //if (1)
+ {
+
+ {
+ BT_PROFILE("convert constraints");
+
+ int totalNumRows = 0;
+ int i;
+
+ m_tmpConstraintSizesPool.resize(numConstraints);
+ //calculate the total number of contraint rows
+ for (i=0;i<numConstraints;i++)
+ {
+ btTypedConstraint::btConstraintInfo1& info1 = m_tmpConstraintSizesPool[i];
+ constraints[i]->getInfo1(&info1);
+ totalNumRows += info1.m_numConstraintRows;
+ }
+ m_tmpSolverNonContactConstraintPool.resize(totalNumRows);
+ offsetSolverConstraints =totalNumRows? &m_tmpSolverNonContactConstraintPool[0]:0;
+
+
+ ///setup the btSolverConstraints
+ int currentRow = 0;
+
+ for (i=0;i<numConstraints;i++)
+ {
+ const btTypedConstraint::btConstraintInfo1& info1 = m_tmpConstraintSizesPool[i];
+
+ if (info1.m_numConstraintRows)
+ {
+ btAssert(currentRow<totalNumRows);
+ btTypedConstraint* constraint = constraints[i];
+ btSolverConstraint* currentConstraintRow = &m_tmpSolverNonContactConstraintPool[currentRow];
+
+ btRigidBody& rbA = constraint->getRigidBodyA();
+ btRigidBody& rbB = constraint->getRigidBodyB();
+
+ int idA = constraint->getRigidBodyA().getCompanionId();
+ int idB = constraint->getRigidBodyB().getCompanionId();
+
+
+ int j;
+ for ( j=0;j<info1.m_numConstraintRows;j++)
+ {
+ memset(¤tConstraintRow[j],0,sizeof(btSolverConstraint));
+ currentConstraintRow[j].m_lowerLimit = -FLT_MAX;
+ currentConstraintRow[j].m_upperLimit = FLT_MAX;
+ currentConstraintRow[j].m_appliedImpulse = 0.f;
+ currentConstraintRow[j].m_appliedPushImpulse = 0.f;
+ currentConstraintRow[j].m_solverBodyIdA = idA;
+ currentConstraintRow[j].m_solverBodyIdB = idB;
+ }
+
+
+
+
+
+ btTypedConstraint::btConstraintInfo2 info2;
+ info2.fps = 1.f/infoGlobal.m_timeStep;
+ info2.erp = infoGlobal.m_erp;
+ info2.m_J1linearAxis = currentConstraintRow->m_contactNormal;
+ info2.m_J1angularAxis = currentConstraintRow->m_relpos1CrossNormal;
+ info2.m_J2linearAxis = 0;
+ info2.m_J2angularAxis = currentConstraintRow->m_relpos2CrossNormal;
+ info2.rowskip = sizeof(btSolverConstraint)/sizeof(btScalar);//check this
+ ///the size of btSolverConstraint needs be a multiple of btScalar
+ btAssert(info2.rowskip*sizeof(btScalar)== sizeof(btSolverConstraint));
+ info2.m_constraintError = ¤tConstraintRow->m_rhs;
+ currentConstraintRow->m_cfm = infoGlobal.m_globalCfm;
+ info2.cfm = ¤tConstraintRow->m_cfm;
+ info2.m_lowerLimit = ¤tConstraintRow->m_lowerLimit;
+ info2.m_upperLimit = ¤tConstraintRow->m_upperLimit;
+ info2.m_numIterations = infoGlobal.m_numIterations;
+ constraints[i]->getInfo2(&info2);
+
+
+
+
+ ///finalize the constraint setup
+ for ( j=0;j<info1.m_numConstraintRows;j++)
+ {
+ btSolverConstraint& solverConstraint = currentConstraintRow[j];
+ solverConstraint.m_originalContactPoint = constraint;
+
+ solverConstraint.m_solverBodyIdA = idA;
+ solverConstraint.m_solverBodyIdB = idB;
+
+ {
+ const btVector3& ftorqueAxis1 = solverConstraint.m_relpos1CrossNormal;
+ solverConstraint.m_angularComponentA = constraint->getRigidBodyA().getInvInertiaTensorWorld()*ftorqueAxis1*constraint->getRigidBodyA().getAngularFactor();
+ }
+ {
+ const btVector3& ftorqueAxis2 = solverConstraint.m_relpos2CrossNormal;
+ solverConstraint.m_angularComponentB = constraint->getRigidBodyB().getInvInertiaTensorWorld()*ftorqueAxis2*constraint->getRigidBodyB().getAngularFactor();
+ }
+
+ {
+ btVector3 iMJlA = solverConstraint.m_contactNormal*rbA.getInvMass();
+ btVector3 iMJaA = rbA.getInvInertiaTensorWorld()*solverConstraint.m_relpos1CrossNormal;
+ btVector3 iMJlB = solverConstraint.m_contactNormal*rbB.getInvMass();//sign of normal?
+ btVector3 iMJaB = rbB.getInvInertiaTensorWorld()*solverConstraint.m_relpos2CrossNormal;
+
+ btScalar sum = iMJlA.dot(solverConstraint.m_contactNormal);
+ sum += iMJaA.dot(solverConstraint.m_relpos1CrossNormal);
+ sum += iMJlB.dot(solverConstraint.m_contactNormal);
+ sum += iMJaB.dot(solverConstraint.m_relpos2CrossNormal);
+
+ solverConstraint.m_jacDiagABInv = btScalar(1.)/sum;
+ }
+
+
+ ///fix rhs
+ ///todo: add force/torque accelerators
+ {
+ btScalar rel_vel;
+ btScalar vel1Dotn = solverConstraint.m_contactNormal.dot(rbA.getLinearVelocity()) + solverConstraint.m_relpos1CrossNormal.dot(rbA.getAngularVelocity());
+ btScalar vel2Dotn = -solverConstraint.m_contactNormal.dot(rbB.getLinearVelocity()) + solverConstraint.m_relpos2CrossNormal.dot(rbB.getAngularVelocity());
+
+ rel_vel = vel1Dotn+vel2Dotn;
+
+ btScalar restitution = 0.f;
+ btScalar positionalError = solverConstraint.m_rhs;//already filled in by getConstraintInfo2
+ btScalar velocityError = restitution - rel_vel;// * damping;
+ btScalar penetrationImpulse = positionalError*solverConstraint.m_jacDiagABInv;
+ btScalar velocityImpulse = velocityError *solverConstraint.m_jacDiagABInv;
+ solverConstraint.m_rhs = penetrationImpulse+velocityImpulse;
+ solverConstraint.m_appliedImpulse = 0.f;
+
+ }
+ }
+
+ PfxConstraintPair& pair = jointPairs[actualNumJoints];
+
+ int numConstraintRows= info1.m_numConstraintRows;
+ pfxSetNumConstraints(pair,numConstraintRows);
+
+
+
+ pfxSetRigidBodyIdA(pair,idA);
+ pfxSetRigidBodyIdB(pair,idB);
+ //is this needed?
+ if (idA>=0)
+ pfxSetMotionMaskA(pair,m_memoryCache->m_mystates[idA].getMotionMask());
+ if (idB>=0)
+ pfxSetMotionMaskB(pair,m_memoryCache->m_mystates[idB].getMotionMask());
+
+ pfxSetActive(pair,true);
+ int id = currentConstraintRow-offsetSolverConstraints;
+ pfxSetContactId(pair,id);
+ actualNumJoints++;
+
+
+ }
+ currentRow+=m_tmpConstraintSizesPool[i].m_numConstraintRows;
+ }
+ }
+ }
+
+
+
+ float separateBias=0.1;//info.m_erp;//or m_erp2?
+ float timeStep=infoGlobal.m_timeStep;
+ int iteration=infoGlobal.m_numIterations;
+
+ //create a pair for each constraints, copy over info etc
+
+
+
+
+
+ {
+ BT_PROFILE("compute num contacts");
+ int totalContacts =0;
+
+ for (int i=0;i<actualNumManifolds;i++)
+ {
+ PfxConstraintPair* pair = &m_memoryCache->m_mypairs[i];
+ totalContacts += pfxGetNumConstraints(*pair);
+ }
+ //printf("numManifolds = %d\n",numManifolds);
+ //printf("totalContacts=%d\n",totalContacts);
+ }
+
+
+
+// printf("actualNumManifolds=%d\n",actualNumManifolds);
+ {
+ BT_PROFILE("BPE_customConstraintSolverSequentialNew");
+ if (numRigidBodies>0 && (actualNumManifolds+actualNumJoints)>0)
+ {
+// PFX_PRINTF("num points = %d\n",totalPoints);
+// PFX_PRINTF("num points PFX = %d\n",total);
+
+
+ PfxConstraintRow* contactRows = actualNumManifolds? &m_memoryCache->m_constraintRows[0] : 0;
+ PfxBroadphasePair* actualPairs = m_memoryCache->m_mypairs.size() ? &m_memoryCache->m_mypairs[0] : 0;
+ BPE_customConstraintSolverSequentialNew(
+ actualNumManifolds,
+ actualPairs,
+ offsetContactManifolds,
+ contactRows,
+ &m_memoryCache->m_mystates[0],numRigidBodies,
+ &m_memoryCache->m_mysolverbodies[0],
+ jointPairs,actualNumJoints,
+ offsetSolverConstraints,
+ separateBias,timeStep,iteration,
+ m_solverThreadSupport,m_criticalSection,m_solverIO,m_barrier);
+ }
+ }
+
+ //copy results back to bodies
+ {
+ BT_PROFILE("copy back");
+ for (int i=0;i<numRigidBodies;i++)
+ {
+ btCollisionObject* obj = bodies1[i];
+ btRigidBody* rb = btRigidBody::upcast(obj);
+ TrbState& state = m_memoryCache->m_mystates[i];
+ if (rb && (rb->getInvMass()>0.f))
+ {
+ rb->setLinearVelocity(btVector3(state.getLinearVelocity().getX(),state.getLinearVelocity().getY(),state.getLinearVelocity().getZ()));
+ rb->setAngularVelocity(btVector3(state.getAngularVelocity().getX(),state.getAngularVelocity().getY(),state.getAngularVelocity().getZ()));
+ }
+ }
+ }
+
+
+ return 0.f;
+}
--- /dev/null
+/*
+ Copyright (C) 2010 Sony Computer Entertainment Inc.
+ All rights reserved.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+*/
+
+#ifndef __BT_PARALLEL_CONSTRAINT_SOLVER_H
+#define __BT_PARALLEL_CONSTRAINT_SOLVER_H
+
+#include "BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h"
+
+
+
+
+#include "LinearMath/btScalar.h"
+#include "PlatformDefinitions.h"
+
+
+#define PFX_MAX_SOLVER_PHASES 64
+#define PFX_MAX_SOLVER_BATCHES 16
+#define PFX_MAX_SOLVER_PAIRS 128
+#define PFX_MIN_SOLVER_PAIRS 16
+
+#ifdef __CELLOS_LV2__
+ATTRIBUTE_ALIGNED128(struct) PfxParallelBatch {
+#else
+ATTRIBUTE_ALIGNED16(struct) PfxParallelBatch {
+#endif
+ uint16_t pairIndices[PFX_MAX_SOLVER_PAIRS];
+};
+
+#ifdef __CELLOS_LV2__
+ATTRIBUTE_ALIGNED128(struct) PfxParallelGroup {
+#else
+ATTRIBUTE_ALIGNED16(struct) PfxParallelGroup {
+#endif
+ uint16_t numPhases;
+ uint16_t numBatches[PFX_MAX_SOLVER_PHASES];
+ uint16_t numPairs[PFX_MAX_SOLVER_PHASES*PFX_MAX_SOLVER_BATCHES];
+};
+
+
+
+ATTRIBUTE_ALIGNED16(struct) PfxSortData16 {
+ union {
+ uint8_t i8data[16];
+ uint16_t i16data[8];
+ uint32_t i32data[4];
+#ifdef __SPU__
+ vec_uint4 vdata;
+#endif
+ };
+
+#ifdef __SPU__
+ void set8(int elem,uint8_t data) {vdata=(vec_uint4)spu_insert(data,(vec_uchar16)vdata,elem);}
+ void set16(int elem,uint16_t data) {vdata=(vec_uint4)spu_insert(data,(vec_ushort8)vdata,elem);}
+ void set32(int elem,uint32_t data) {vdata=(vec_uint4)spu_insert(data,(vec_uint4)vdata,elem);}
+ uint8_t get8(int elem) const {return spu_extract((vec_uchar16)vdata,elem);}
+ uint16_t get16(int elem) const {return spu_extract((vec_ushort8)vdata,elem);}
+ uint32_t get32(int elem) const {return spu_extract((vec_uint4)vdata,elem);}
+#else
+ void set8(int elem,uint8_t data) {i8data[elem] = data;}
+ void set16(int elem,uint16_t data) {i16data[elem] = data;}
+ void set32(int elem,uint32_t data) {i32data[elem] = data;}
+ uint8_t get8(int elem) const {return i8data[elem];}
+ uint16_t get16(int elem) const {return i16data[elem];}
+ uint32_t get32(int elem) const {return i32data[elem];}
+#endif
+};
+
+typedef PfxSortData16 PfxConstraintPair;
+
+
+//J PfxBroadphasePair\82Æ\8b¤\92Ê
+
+SIMD_FORCE_INLINE void pfxSetConstraintId(PfxConstraintPair &pair,uint32_t i) {pair.set32(2,i);}
+SIMD_FORCE_INLINE void pfxSetNumConstraints(PfxConstraintPair &pair,uint8_t n) {pair.set8(7,n);}
+
+SIMD_FORCE_INLINE uint32_t pfxGetConstraintId1(const PfxConstraintPair &pair) {return pair.get32(2);}
+SIMD_FORCE_INLINE uint8_t pfxGetNumConstraints(const PfxConstraintPair &pair) {return pair.get8(7);}
+
+typedef PfxSortData16 PfxBroadphasePair;
+
+SIMD_FORCE_INLINE void pfxSetRigidBodyIdA(PfxBroadphasePair &pair,uint16_t i) {pair.set16(0,i);}
+SIMD_FORCE_INLINE void pfxSetRigidBodyIdB(PfxBroadphasePair &pair,uint16_t i) {pair.set16(1,i);}
+SIMD_FORCE_INLINE void pfxSetMotionMaskA(PfxBroadphasePair &pair,uint8_t i) {pair.set8(4,i);}
+SIMD_FORCE_INLINE void pfxSetMotionMaskB(PfxBroadphasePair &pair,uint8_t i) {pair.set8(5,i);}
+SIMD_FORCE_INLINE void pfxSetBroadphaseFlag(PfxBroadphasePair &pair,uint8_t f) {pair.set8(6,(pair.get8(6)&0xf0)|(f&0x0f));}
+SIMD_FORCE_INLINE void pfxSetActive(PfxBroadphasePair &pair,bool b) {pair.set8(6,(pair.get8(6)&0x0f)|((b?1:0)<<4));}
+SIMD_FORCE_INLINE void pfxSetContactId(PfxBroadphasePair &pair,uint32_t i) {pair.set32(2,i);}
+
+SIMD_FORCE_INLINE uint16_t pfxGetRigidBodyIdA(const PfxBroadphasePair &pair) {return pair.get16(0);}
+SIMD_FORCE_INLINE uint16_t pfxGetRigidBodyIdB(const PfxBroadphasePair &pair) {return pair.get16(1);}
+SIMD_FORCE_INLINE uint8_t pfxGetMotionMaskA(const PfxBroadphasePair &pair) {return pair.get8(4);}
+SIMD_FORCE_INLINE uint8_t pfxGetMotionMaskB(const PfxBroadphasePair &pair) {return pair.get8(5);}
+SIMD_FORCE_INLINE uint8_t pfxGetBroadphaseFlag(const PfxBroadphasePair &pair) {return pair.get8(6)&0x0f;}
+SIMD_FORCE_INLINE bool pfxGetActive(const PfxBroadphasePair &pair) {return (pair.get8(6)>>4)!=0;}
+SIMD_FORCE_INLINE uint32_t pfxGetContactId1(const PfxBroadphasePair &pair) {return pair.get32(2);}
+
+
+
+#if defined(__PPU__) || defined (__SPU__)
+ATTRIBUTE_ALIGNED128(struct) PfxSolverBody {
+#else
+ATTRIBUTE_ALIGNED16(struct) PfxSolverBody {
+#endif
+ vmVector3 mDeltaLinearVelocity;
+ vmVector3 mDeltaAngularVelocity;
+ vmMatrix3 mInertiaInv;
+ vmQuat mOrientation;
+ float mMassInv;
+ float friction;
+ float restitution;
+ float unused;
+ float unused2;
+ float unused3;
+ float unused4;
+ float unused5;
+};
+
+
+#ifdef __PPU__
+#include "SpuDispatch/BulletPE2ConstraintSolverSpursSupport.h"
+#endif
+
+static SIMD_FORCE_INLINE vmVector3 btReadVector3(const double* p)
+{
+ float tmp[3] = {float(p[0]),float(p[1]),float(p[2])};
+ vmVector3 v;
+ loadXYZ(v, tmp);
+ return v;
+}
+
+static SIMD_FORCE_INLINE vmQuat btReadQuat(const double* p)
+{
+ float tmp[4] = {float(p[0]),float(p[1]),float(p[2]),float(p[4])};
+ vmQuat vq;
+ loadXYZW(vq, tmp);
+ return vq;
+}
+
+static SIMD_FORCE_INLINE void btStoreVector3(const vmVector3 &src, double* p)
+{
+ float tmp[3];
+ vmVector3 v = src;
+ storeXYZ(v, tmp);
+ p[0] = tmp[0];
+ p[1] = tmp[1];
+ p[2] = tmp[2];
+}
+
+
+static SIMD_FORCE_INLINE vmVector3 btReadVector3(const float* p)
+{
+ vmVector3 v;
+ loadXYZ(v, p);
+ return v;
+}
+
+static SIMD_FORCE_INLINE vmQuat btReadQuat(const float* p)
+{
+ vmQuat vq;
+ loadXYZW(vq, p);
+ return vq;
+}
+
+static SIMD_FORCE_INLINE void btStoreVector3(const vmVector3 &src, float* p)
+{
+ vmVector3 v = src;
+ storeXYZ(v, p);
+}
+
+
+
+
+class btPersistentManifold;
+
+enum {
+ PFX_CONSTRAINT_SOLVER_CMD_SETUP_SOLVER_BODIES,
+ PFX_CONSTRAINT_SOLVER_CMD_SETUP_CONTACT_CONSTRAINTS,
+ PFX_CONSTRAINT_SOLVER_CMD_WRITEBACK_APPLIED_IMPULSES_CONTACT_CONSTRAINTS,
+ PFX_CONSTRAINT_SOLVER_CMD_SETUP_JOINT_CONSTRAINTS,
+ PFX_CONSTRAINT_SOLVER_CMD_SOLVE_CONSTRAINTS,
+ PFX_CONSTRAINT_SOLVER_CMD_POST_SOLVER
+};
+
+
+struct PfxSetupContactConstraintsIO {
+ PfxConstraintPair *offsetContactPairs;
+ uint32_t numContactPairs1;
+ btPersistentManifold* offsetContactManifolds;
+ btConstraintRow* offsetContactConstraintRows;
+ class TrbState *offsetRigStates;
+ struct PfxSolverBody *offsetSolverBodies;
+ uint32_t numRigidBodies;
+ float separateBias;
+ float timeStep;
+ class btCriticalSection* criticalSection;
+};
+
+
+
+struct PfxSolveConstraintsIO {
+ PfxParallelGroup *contactParallelGroup;
+ PfxParallelBatch *contactParallelBatches;
+ PfxConstraintPair *contactPairs;
+ uint32_t numContactPairs;
+ btPersistentManifold *offsetContactManifolds;
+ btConstraintRow* offsetContactConstraintRows;
+ PfxParallelGroup *jointParallelGroup;
+ PfxParallelBatch *jointParallelBatches;
+ PfxConstraintPair *jointPairs;
+ uint32_t numJointPairs;
+ struct btSolverConstraint* offsetSolverConstraints;
+ TrbState *offsetRigStates1;
+ PfxSolverBody *offsetSolverBodies;
+ uint32_t numRigidBodies;
+ uint32_t iteration;
+
+ uint32_t taskId;
+
+ class btBarrier* barrier;
+
+};
+
+struct PfxPostSolverIO {
+ TrbState *states;
+ PfxSolverBody *solverBodies;
+ uint32_t numRigidBodies;
+};
+
+ATTRIBUTE_ALIGNED16(struct) btConstraintSolverIO {
+ uint8_t cmd;
+ union {
+ PfxSetupContactConstraintsIO setupContactConstraints;
+ PfxSolveConstraintsIO solveConstraints;
+ PfxPostSolverIO postSolver;
+ };
+
+ //SPU only
+ uint32_t barrierAddr2;
+ uint32_t criticalsectionAddr2;
+ uint32_t maxTasks1;
+};
+
+
+
+
+void SolverThreadFunc(void* userPtr,void* lsMemory);
+void* SolverlsMemoryFunc();
+///The btParallelConstraintSolver performs computations on constraint rows in parallel
+///Using the cross-platform threading it supports Windows, Linux, Mac OSX and PlayStation 3 Cell SPUs
+class btParallelConstraintSolver : public btSequentialImpulseConstraintSolver
+{
+
+protected:
+ struct btParallelSolverMemoryCache* m_memoryCache;
+
+ class btThreadSupportInterface* m_solverThreadSupport;
+
+ struct btConstraintSolverIO* m_solverIO;
+ class btBarrier* m_barrier;
+ class btCriticalSection* m_criticalSection;
+
+
+public:
+
+ btParallelConstraintSolver(class btThreadSupportInterface* solverThreadSupport);
+
+ virtual ~btParallelConstraintSolver();
+
+ virtual btScalar solveGroup(btCollisionObject** bodies,int numBodies,btPersistentManifold** manifold,int numManifolds,btTypedConstraint** constraints,int numConstraints,const btContactSolverInfo& info, btIDebugDraw* debugDrawer, btStackAlloc* stackAlloc,btDispatcher* dispatcher);
+
+};
+
+
+
+#endif //__BT_PARALLEL_CONSTRAINT_SOLVER_H
\ No newline at end of file
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#include "btThreadSupportInterface.h"
+
+btThreadSupportInterface::~btThreadSupportInterface()
+{
+
+}
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef BT_THREAD_SUPPORT_INTERFACE_H
+#define BT_THREAD_SUPPORT_INTERFACE_H
+
+
+#include <LinearMath/btScalar.h> //for ATTRIBUTE_ALIGNED16
+#include "PlatformDefinitions.h"
+#include "PpuAddressSpace.h"
+
+class btBarrier {
+public:
+ btBarrier() {}
+ virtual ~btBarrier() {}
+
+ virtual void sync() = 0;
+ virtual void setMaxCount(int n) = 0;
+ virtual int getMaxCount() = 0;
+};
+
+class btCriticalSection {
+public:
+ btCriticalSection() {}
+ virtual ~btCriticalSection() {}
+
+ ATTRIBUTE_ALIGNED16(unsigned int mCommonBuff[32]);
+
+ virtual unsigned int getSharedParam(int i) = 0;
+ virtual void setSharedParam(int i,unsigned int p) = 0;
+
+ virtual void lock() = 0;
+ virtual void unlock() = 0;
+};
+
+
+class btThreadSupportInterface
+{
+public:
+
+ virtual ~btThreadSupportInterface();
+
+///send messages to SPUs
+ virtual void sendRequest(uint32_t uiCommand, ppu_address_t uiArgument0, uint32_t uiArgument1) =0;
+
+///check for messages from SPUs
+ virtual void waitForResponse(unsigned int *puiArgument0, unsigned int *puiArgument1) =0;
+
+
+ ///non-blocking test if a task is completed. First implement all versions, and then enable this API
+ ///virtual bool isTaskCompleted(unsigned int *puiArgument0, unsigned int *puiArgument1, int timeOutInMilliseconds)=0;
+
+///start the spus (can be called at the beginning of each frame, to make sure that the right SPU program is loaded)
+ virtual void startSPU() =0;
+
+///tell the task scheduler we are done with the SPU tasks
+ virtual void stopSPU()=0;
+
+ ///tell the task scheduler to use no more than numTasks tasks
+ virtual void setNumTasks(int numTasks)=0;
+
+ virtual int getNumTasks() const = 0;
+
+ virtual btBarrier* createBarrier() = 0;
+
+ virtual btCriticalSection* createCriticalSection() = 0;
+
+ virtual void deleteBarrier(btBarrier* barrier)=0;
+
+ virtual void deleteCriticalSection(btCriticalSection* criticalSection)=0;
+
+ virtual void* getThreadLocalMemory(int taskId) { return 0; }
+
+};
+
+#endif //BT_THREAD_SUPPORT_INTERFACE_H
+
--- /dev/null
+# Install script for directory: /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded
+
+# Set the install prefix
+IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ SET(CMAKE_INSTALL_PREFIX "/usr/local")
+ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ IF(BUILD_TYPE)
+ STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ ELSE(BUILD_TYPE)
+ SET(CMAKE_INSTALL_CONFIG_NAME "Release")
+ ENDIF(BUILD_TYPE)
+ MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+
+# Set the component getting installed.
+IF(NOT CMAKE_INSTALL_COMPONENT)
+ IF(COMPONENT)
+ MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
+ SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ ELSE(COMPONENT)
+ SET(CMAKE_INSTALL_COMPONENT)
+ ENDIF(COMPONENT)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT)
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE STATIC_LIBRARY FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/libBulletMultiThreaded.a")
+ IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libBulletMultiThreaded.a" AND
+ NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libBulletMultiThreaded.a")
+ EXECUTE_PROCESS(COMMAND "/usr/bin/ranlib" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libBulletMultiThreaded.a")
+ ENDIF()
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ list(APPEND CPACK_ABSOLUTE_DESTINATION_FILES
+ "/usr/local/include/bullet/BulletMultiThreaded")
+FILE(INSTALL DESTINATION "/usr/local/include/bullet" TYPE DIRECTORY FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded" FILES_MATCHING REGEX "/[^/]*\\.h$" REGEX "/\\.svn$" EXCLUDE REGEX "/cmakefiles$" EXCLUDE)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
+IF(NOT CMAKE_INSTALL_LOCAL_ONLY)
+ # Include the install script for each subdirectory.
+ INCLUDE("/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/GpuSoftBodySolvers/cmake_install.cmake")
+
+ENDIF(NOT CMAKE_INSTALL_LOCAL_ONLY)
+
--- /dev/null
+/*
+ Copyright (C) 2006, 2007 Sony Computer Entertainment Inc.
+ All rights reserved.
+
+ Redistribution and use in source and binary forms,
+ with or without modification, are permitted provided that the
+ following conditions are met:
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+ * Neither the name of the Sony Computer Entertainment Inc nor the names
+ of its contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGE.
+*/
+
+#ifndef BT_AOS_VECTORMATH_BULLET_CONVERT_H
+#define BT_AOS_VECTORMATH_BULLET_CONVERT_H
+
+#include "PlatformDefinitions.h"
+#include "LinearMath/btVector3.h"
+#include "LinearMath/btQuaternion.h"
+#include "LinearMath/btMatrix3x3.h"
+
+inline Vectormath::Aos::Vector3 getVmVector3(const btVector3& bulletVec)
+{
+ return Vectormath::Aos::Vector3((float)bulletVec.getX(),(float)bulletVec.getY(),(float)bulletVec.getZ());
+}
+
+inline btVector3 getBtVector3(const Vectormath::Aos::Vector3& vmVec)
+{
+ return btVector3(vmVec.getX(),vmVec.getY(),vmVec.getZ());
+}
+inline btVector3 getBtVector3(const Vectormath::Aos::Point3& vmVec)
+{
+ return btVector3(vmVec.getX(),vmVec.getY(),vmVec.getZ());
+}
+
+inline Vectormath::Aos::Quat getVmQuat(const btQuaternion& bulletQuat)
+{
+ Vectormath::Aos::Quat vmQuat((float)bulletQuat.getX(),(float)bulletQuat.getY(),(float)bulletQuat.getZ(),(float)bulletQuat.getW());
+ return vmQuat;
+}
+
+inline btQuaternion getBtQuat(const Vectormath::Aos::Quat& vmQuat)
+{
+ return btQuaternion (vmQuat.getX(),vmQuat.getY(),vmQuat.getZ(),vmQuat.getW());
+}
+
+inline Vectormath::Aos::Matrix3 getVmMatrix3(const btMatrix3x3& btMat)
+{
+ Vectormath::Aos::Matrix3 mat(
+ getVmVector3(btMat.getColumn(0)),
+ getVmVector3(btMat.getColumn(1)),
+ getVmVector3(btMat.getColumn(2)));
+ return mat;
+}
+
+
+#endif //BT_AOS_VECTORMATH_BULLET_CONVERT_H
--- /dev/null
+#IncludeRegexLine: ^[ ]*#[ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btDefaultSoftBodySolver.cpp
+BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionShapes/btCollisionShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btCollisionShape.h
+btDefaultSoftBodySolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btDefaultSoftBodySolver.h
+BulletCollision/CollisionShapes/btCapsuleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btCapsuleShape.h
+BulletSoftBody/btSoftBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletSoftBody/btSoftBody.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btDefaultSoftBodySolver.h
+BulletSoftBody/btSoftBodySolvers.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletSoftBody/btSoftBodySolvers.h
+btSoftBodySolverVertexBuffer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodySolverVertexBuffer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.cpp
+btSoftBodyInternals.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyInternals.h
+BulletSoftBody/btSoftBodySolvers.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletSoftBody/btSoftBodySolvers.h
+btSoftBodyData.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyData.h
+LinearMath/btSerializer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/LinearMath/btSerializer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.h
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/LinearMath/btAlignedObjectArray.h
+LinearMath/btTransform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/LinearMath/btTransform.h
+LinearMath/btIDebugDraw.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/LinearMath/btIDebugDraw.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletDynamics/Dynamics/btRigidBody.h
+BulletCollision/CollisionShapes/btConcaveShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btConcaveShape.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btSparseSDF.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSparseSDF.h
+BulletCollision/BroadphaseCollision/btDbvt.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/BroadphaseCollision/btDbvt.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp
+btSoftBodyConcaveCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/CollisionShapes/btMultiSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btMultiSphereShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionShapes/btConcaveShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btConcaveShape.h
+BulletCollision/CollisionDispatch/btManifoldResult.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+BulletCollision/CollisionShapes/btTriangleShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btTriangleShape.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btSphereShape.h
+BulletCollision/CollisionShapes/btTetrahedronShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btTetrahedronShape.h
+BulletCollision/CollisionShapes/btConvexHullShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btConvexHullShape.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+LinearMath/btIDebugDraw.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/LinearMath/btIDebugDraw.h
+BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+BulletSoftBody/btSoftBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletSoftBody/btSoftBody.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+BulletCollision/CollisionShapes/btTriangleCallback.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btTriangleCallback.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+LinearMath/btHashMap.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/LinearMath/btHashMap.h
+BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyData.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletDynamics/Dynamics/btRigidBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletDynamics/Dynamics/btRigidBody.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyHelpers.cpp
+btSoftBodyInternals.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyInternals.h
+stdio.h
+-
+string.h
+-
+btSoftBodyHelpers.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyHelpers.h
+LinearMath/btConvexHull.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/LinearMath/btConvexHull.h
+LinearMath/btConvexHullComputer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/LinearMath/btConvexHullComputer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyHelpers.h
+btSoftBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyInternals.h
+btSoftBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.h
+LinearMath/btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/LinearMath/btQuickprof.h
+LinearMath/btPolarDecomposition.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/LinearMath/btPolarDecomposition.h
+BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/CollisionShapes/btConvexInternalShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+string.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp
+btSoftBodyRigidBodyCollisionConfiguration.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.h
+btSoftRigidCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidCollisionAlgorithm.h
+btSoftBodyConcaveCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h
+btSoftSoftCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftSoftCollisionAlgorithm.h
+LinearMath/btPoolAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/LinearMath/btPoolAllocator.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.h
+BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodySolverVertexBuffer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodySolvers.h
+BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp
+btSoftRigidCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/CollisionShapes/btSphereShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btSphereShape.h
+BulletCollision/CollisionShapes/btBoxShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btBoxShape.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionObject.h
+btSoftBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.h
+BulletSoftBody/btSoftBodySolvers.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletSoftBody/btSoftBodySolvers.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+LinearMath/btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/LinearMath/btVector3.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp
+btSoftRigidDynamicsWorld.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidDynamicsWorld.h
+LinearMath/btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/LinearMath/btQuickprof.h
+btSoftBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.h
+btSoftBodyHelpers.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyHelpers.h
+btSoftBodySolvers.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodySolvers.h
+btDefaultSoftBodySolver.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btDefaultSoftBodySolver.h
+LinearMath/btSerializer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/LinearMath/btSerializer.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidDynamicsWorld.h
+BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
+btSoftBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp
+btSoftSoftCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftSoftCollisionAlgorithm.h
+BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/CollisionShapes/btBoxShape.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionShapes/btBoxShape.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletSoftBody/btSoftBodySolvers.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletSoftBody/btSoftBodySolvers.h
+btSoftBody.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftSoftCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSparseSDF.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+
+src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+btBroadphaseProxy.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+
+src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btScalar.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+
+src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+LinearMath/btScalar.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/BroadphaseCollision/btDbvt.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btTransform.h
+LinearMath/btAabbUtil2.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAabbUtil2.h
+emmintrin.h
+-
+memory.h
+-
+string.h
+-
+
+src/BulletCollision/BroadphaseCollision/btDispatcher.h
+LinearMath/btScalar.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btScalar.h
+
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+btBroadphaseInterface.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+btBroadphaseProxy.h
+src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btOverlappingPairCallback.h
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+
+src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+stdio.h
+-
+stdlib.h
+-
+LinearMath/btVector3.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btVector3.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/BroadphaseCollision/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btDispatcher.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+btCollisionCreateFunc.h
+src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+
+src/BulletCollision/CollisionDispatch/btCollisionObject.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+LinearMath/btMotionState.h
+src/BulletCollision/CollisionDispatch/LinearMath/btMotionState.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedAllocator.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+LinearMath/btScalar.h
+src/BulletCollision/CollisionDispatch/LinearMath/btScalar.h
+
+src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionDispatch/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+btCollisionObject.h
+src/BulletCollision/CollisionDispatch/btCollisionObject.h
+btCollisionDispatcher.h
+src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletCollision/CollisionDispatch/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionDispatch/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
+btCollisionConfiguration.h
+src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+
+src/BulletCollision/CollisionDispatch/btManifoldResult.h
+BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletCollision/CollisionDispatch/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionDispatch/LinearMath/btTransform.h
+BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletCollision/CollisionDispatch/BulletCollision/CollisionDispatch/btCollisionObject.h
+
+src/BulletCollision/CollisionShapes/btBoxShape.h
+btPolyhedralConvexShape.h
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+btCollisionMargin.h
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btMinMax.h
+src/BulletCollision/CollisionShapes/LinearMath/btMinMax.h
+
+src/BulletCollision/CollisionShapes/btCapsuleShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+btCollisionShape.h
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+btTriangleCallback.h
+src/BulletCollision/CollisionShapes/btTriangleCallback.h
+
+src/BulletCollision/CollisionShapes/btConvexHullShape.h
+btPolyhedralConvexShape.h
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+btConvexShape.h
+src/BulletCollision/CollisionShapes/btConvexShape.h
+LinearMath/btAabbUtil2.h
+src/BulletCollision/CollisionShapes/LinearMath/btAabbUtil2.h
+
+src/BulletCollision/CollisionShapes/btConvexShape.h
+btCollisionShape.h
+src/BulletCollision/CollisionShapes/btCollisionShape.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/CollisionShapes/LinearMath/btTransform.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btCollisionMargin.h
+src/BulletCollision/CollisionShapes/btCollisionMargin.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedAllocator.h
+
+src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+LinearMath/btAabbUtil2.h
+src/BulletCollision/CollisionShapes/LinearMath/btAabbUtil2.h
+
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+LinearMath/btMatrix3x3.h
+src/BulletCollision/CollisionShapes/LinearMath/btMatrix3x3.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+
+src/BulletCollision/CollisionShapes/btSphereShape.h
+btConvexInternalShape.h
+src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+btTriangleCallback.h
+src/BulletCollision/CollisionShapes/btTriangleCallback.h
+btConcaveShape.h
+src/BulletCollision/CollisionShapes/btConcaveShape.h
+
+src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+btPolyhedralConvexShape.h
+src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletCollision/CollisionShapes/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+
+src/BulletCollision/CollisionShapes/btTriangleCallback.h
+LinearMath/btVector3.h
+src/BulletCollision/CollisionShapes/LinearMath/btVector3.h
+
+src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+btStridingMeshInterface.h
+src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+LinearMath/btAlignedObjectArray.h
+src/BulletCollision/CollisionShapes/LinearMath/btAlignedObjectArray.h
+LinearMath/btScalar.h
+src/BulletCollision/CollisionShapes/LinearMath/btScalar.h
+
+src/BulletCollision/CollisionShapes/btTriangleShape.h
+btConvexShape.h
+src/BulletCollision/CollisionShapes/btConvexShape.h
+btBoxShape.h
+src/BulletCollision/CollisionShapes/btBoxShape.h
+
+src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btScalar.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btScalar.h
+LinearMath/btIDebugDraw.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btIDebugDraw.h
+
+src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+
+src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btConvexShape.h
+
+src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btTransformUtil.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransformUtil.h
+physics_effects/base_level/solver/pfx_constraint_row.h
+src/BulletCollision/NarrowPhaseCollision/physics_effects/base_level/solver/pfx_constraint_row.h
+
+src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+btManifoldPoint.h
+src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+LinearMath/btAlignedAllocator.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btAlignedAllocator.h
+
+src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletCollision/NarrowPhaseCollision/BulletCollision/CollisionShapes/btTriangleCallback.h
+LinearMath/btTransform.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btTransform.h
+
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+LinearMath/btVector3.h
+src/BulletCollision/NarrowPhaseCollision/LinearMath/btVector3.h
+btVoronoiSimplexSolver.h
+src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+
+src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+btConvexCast.h
+src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+btSimplexSolverInterface.h
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+btSimplexSolverInterface.h
+src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+
+src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+LinearMath/btScalar.h
+src/BulletDynamics/ConstraintSolver/LinearMath/btScalar.h
+
+src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
+btDynamicsWorld.h
+src/BulletDynamics/Dynamics/btDynamicsWorld.h
+LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/Dynamics/LinearMath/btAlignedObjectArray.h
+
+src/BulletDynamics/Dynamics/btDynamicsWorld.h
+BulletCollision/CollisionDispatch/btCollisionWorld.h
+src/BulletDynamics/Dynamics/BulletCollision/CollisionDispatch/btCollisionWorld.h
+BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+src/BulletDynamics/Dynamics/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+
+src/BulletDynamics/Dynamics/btRigidBody.h
+LinearMath/btAlignedObjectArray.h
+src/BulletDynamics/Dynamics/LinearMath/btAlignedObjectArray.h
+LinearMath/btTransform.h
+src/BulletDynamics/Dynamics/LinearMath/btTransform.h
+BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletDynamics/Dynamics/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletDynamics/Dynamics/BulletCollision/CollisionDispatch/btCollisionObject.h
+
+src/BulletSoftBody/btSoftBody.h
+LinearMath/btAlignedObjectArray.h
+src/BulletSoftBody/LinearMath/btAlignedObjectArray.h
+LinearMath/btTransform.h
+src/BulletSoftBody/LinearMath/btTransform.h
+LinearMath/btIDebugDraw.h
+src/BulletSoftBody/LinearMath/btIDebugDraw.h
+BulletDynamics/Dynamics/btRigidBody.h
+src/BulletSoftBody/BulletDynamics/Dynamics/btRigidBody.h
+BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletSoftBody/BulletCollision/CollisionShapes/btConcaveShape.h
+BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+btSparseSDF.h
+src/BulletSoftBody/btSparseSDF.h
+BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletSoftBody/BulletCollision/BroadphaseCollision/btDbvt.h
+
+src/BulletSoftBody/btSoftBodySolvers.h
+BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletSoftBody/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+
+src/BulletSoftBody/btSparseSDF.h
+BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletSoftBody/BulletCollision/CollisionDispatch/btCollisionObject.h
+BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletSoftBody/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+
+src/LinearMath/btAabbUtil2.h
+btTransform.h
+src/LinearMath/btTransform.h
+btVector3.h
+src/LinearMath/btVector3.h
+btMinMax.h
+src/LinearMath/btMinMax.h
+
+src/LinearMath/btAlignedAllocator.h
+btScalar.h
+src/LinearMath/btScalar.h
+
+src/LinearMath/btAlignedObjectArray.h
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+memory.h
+-
+string.h
+-
+new
+-
+
+src/LinearMath/btConvexHull.h
+btVector3.h
+src/LinearMath/btVector3.h
+btAlignedObjectArray.h
+src/LinearMath/btAlignedObjectArray.h
+
+src/LinearMath/btConvexHullComputer.h
+btVector3.h
+src/LinearMath/btVector3.h
+btAlignedObjectArray.h
+src/LinearMath/btAlignedObjectArray.h
+
+src/LinearMath/btHashMap.h
+btAlignedObjectArray.h
+src/LinearMath/btAlignedObjectArray.h
+
+src/LinearMath/btIDebugDraw.h
+btVector3.h
+src/LinearMath/btVector3.h
+btTransform.h
+src/LinearMath/btTransform.h
+
+src/LinearMath/btMatrix3x3.h
+btVector3.h
+src/LinearMath/btVector3.h
+btQuaternion.h
+src/LinearMath/btQuaternion.h
+stdio.h
+-
+
+src/LinearMath/btMinMax.h
+btScalar.h
+src/LinearMath/btScalar.h
+
+src/LinearMath/btMotionState.h
+btTransform.h
+src/LinearMath/btTransform.h
+
+src/LinearMath/btPolarDecomposition.h
+btMatrix3x3.h
+src/LinearMath/btMatrix3x3.h
+
+src/LinearMath/btPoolAllocator.h
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+
+src/LinearMath/btQuadWord.h
+btScalar.h
+src/LinearMath/btScalar.h
+btMinMax.h
+src/LinearMath/btMinMax.h
+altivec.h
+-
+
+src/LinearMath/btQuaternion.h
+btVector3.h
+src/LinearMath/btVector3.h
+btQuadWord.h
+src/LinearMath/btQuadWord.h
+
+src/LinearMath/btQuickprof.h
+stdio.h
+-
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+new
+-
+
+src/LinearMath/btScalar.h
+math.h
+-
+stdlib.h
+-
+float.h
+-
+ppcintrinsics.h
+-
+emmintrin.h
+-
+stdio.h
+-
+assert.h
+-
+assert.h
+-
+spu_printf.h
+-
+assert.h
+-
+smmintrin.h
+-
+tmmintrin.h
+-
+pmmintrin.h
+-
+emmintrin.h
+-
+arm_neon.h
+-
+assert.h
+-
+stdio.h
+-
+assert.h
+-
+arm_neon.h
+-
+
+src/LinearMath/btSerializer.h
+btScalar.h
+src/LinearMath/btScalar.h
+btStackAlloc.h
+src/LinearMath/btStackAlloc.h
+btHashMap.h
+src/LinearMath/btHashMap.h
+memory.h
+-
+string.h
+-
+
+src/LinearMath/btStackAlloc.h
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+
+src/LinearMath/btTransform.h
+btMatrix3x3.h
+src/LinearMath/btMatrix3x3.h
+
+src/LinearMath/btTransformUtil.h
+btTransform.h
+src/LinearMath/btTransform.h
+
+src/LinearMath/btVector3.h
+btScalar.h
+src/LinearMath/btScalar.h
+btMinMax.h
+src/LinearMath/btMinMax.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+
--- /dev/null
+# The set of languages for which implicit dependencies are needed:
+SET(CMAKE_DEPENDS_LANGUAGES
+ "CXX"
+ )
+# The set of files for implicit dependencies of each language:
+SET(CMAKE_DEPENDS_CHECK_CXX
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btDefaultSoftBodySolver.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyHelpers.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o"
+ )
+SET(CMAKE_CXX_COMPILER_ID "GNU")
+
+# Preprocessor definitions for this target.
+SET(CMAKE_TARGET_DEFINITIONS
+ "USE_GRAPHICAL_BENCHMARK"
+ )
+
+# Targets to which this target links.
+SET(CMAKE_TARGET_LINKED_INFO_FILES
+ )
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# Include any dependencies generated for this target.
+include src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/depend.make
+
+# Include the progress variables for this target.
+include src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/flags.make
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/flags.make
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletSoftBody/btSoftBody.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_1)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletSoftBody.dir/btSoftBody.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.cpp
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletSoftBody.dir/btSoftBody.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.cpp > CMakeFiles/BulletSoftBody.dir/btSoftBody.i
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletSoftBody.dir/btSoftBody.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.cpp -o CMakeFiles/BulletSoftBody.dir/btSoftBody.s
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o.requires:
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o.requires
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o.provides: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o.requires
+ $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o.provides.build
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o.provides
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o.provides.build: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/flags.make
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_2)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp > CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.i
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp -o CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.s
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o.requires:
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o.requires
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o.provides: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o.provides
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o.provides.build: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/flags.make
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletSoftBody/btSoftBodyHelpers.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_3)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyHelpers.cpp
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyHelpers.cpp > CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.i
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyHelpers.cpp -o CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.s
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o.requires:
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o.requires
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o.provides: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o.requires
+ $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o.provides.build
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o.provides
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o.provides.build: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/flags.make
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_4)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp > CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.i
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp -o CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.s
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o.requires:
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o.requires
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o.provides: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o.requires
+ $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o.provides.build
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o.provides
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o.provides.build: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/flags.make
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_5)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp > CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.i
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp -o CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.s
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o.requires:
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o.requires
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o.provides: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o.provides
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o.provides.build: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/flags.make
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_6)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp > CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.i
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp -o CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.s
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o.requires:
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o.requires
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o.provides: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o.requires
+ $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o.provides.build
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o.provides
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o.provides.build: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/flags.make
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_7)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp > CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.i
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp -o CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.s
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o.requires:
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o.requires
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o.provides: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o.requires
+ $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o.provides.build
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o.provides
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o.provides.build: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/flags.make
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletSoftBody/btDefaultSoftBodySolver.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_8)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btDefaultSoftBodySolver.cpp
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btDefaultSoftBodySolver.cpp > CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.i
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btDefaultSoftBodySolver.cpp -o CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.s
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o.requires:
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o.requires
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o.provides: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o.requires
+ $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o.provides.build
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o.provides
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o.provides.build: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o
+
+# Object files for target BulletSoftBody
+BulletSoftBody_OBJECTS = \
+"CMakeFiles/BulletSoftBody.dir/btSoftBody.o" \
+"CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o" \
+"CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o" \
+"CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o" \
+"CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o" \
+"CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o" \
+"CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o" \
+"CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o"
+
+# External object files for target BulletSoftBody
+BulletSoftBody_EXTERNAL_OBJECTS =
+
+src/BulletSoftBody/libBulletSoftBody.a: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o
+src/BulletSoftBody/libBulletSoftBody.a: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o
+src/BulletSoftBody/libBulletSoftBody.a: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o
+src/BulletSoftBody/libBulletSoftBody.a: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o
+src/BulletSoftBody/libBulletSoftBody.a: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o
+src/BulletSoftBody/libBulletSoftBody.a: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o
+src/BulletSoftBody/libBulletSoftBody.a: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o
+src/BulletSoftBody/libBulletSoftBody.a: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o
+src/BulletSoftBody/libBulletSoftBody.a: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make
+src/BulletSoftBody/libBulletSoftBody.a: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX static library libBulletSoftBody.a"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && $(CMAKE_COMMAND) -P CMakeFiles/BulletSoftBody.dir/cmake_clean_target.cmake
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/BulletSoftBody.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build: src/BulletSoftBody/libBulletSoftBody.a
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/requires: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o.requires
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/requires: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o.requires
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/requires: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o.requires
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/requires: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o.requires
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/requires: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o.requires
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/requires: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o.requires
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/requires: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o.requires
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/requires: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o.requires
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/requires
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody && $(CMAKE_COMMAND) -P CMakeFiles/BulletSoftBody.dir/cmake_clean.cmake
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/clean
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/depend
+
--- /dev/null
+FILE(REMOVE_RECURSE
+ "CMakeFiles/BulletSoftBody.dir/btSoftBody.o"
+ "CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o"
+ "CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o"
+ "CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o"
+ "CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o"
+ "CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o"
+ "CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o"
+ "CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o"
+ "libBulletSoftBody.pdb"
+ "libBulletSoftBody.a"
+)
+
+# Per-language clean rules from dependency scanning.
+FOREACH(lang CXX)
+ INCLUDE(CMakeFiles/BulletSoftBody.dir/cmake_clean_${lang}.cmake OPTIONAL)
+ENDFOREACH(lang)
--- /dev/null
+FILE(REMOVE_RECURSE
+ "libBulletSoftBody.a"
+)
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btDefaultSoftBodySolver.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btDefaultSoftBodySolver.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodySolverVertexBuffer.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btDbvt.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionShapes/btCapsuleShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/BulletSoftBody/btSoftBody.h
+ src/BulletSoftBody/btSoftBodySolvers.h
+ src/BulletSoftBody/btSparseSDF.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btVector3.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyData.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyInternals.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSparseSDF.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btDbvt.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/BulletSoftBody/btSoftBodySolvers.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btPolarDecomposition.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDbvt.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexHullShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleShape.h
+ src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+ src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+ src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/BulletSoftBody/btSoftBody.h
+ src/BulletSoftBody/btSparseSDF.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyHelpers.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyHelpers.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyInternals.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSparseSDF.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btDbvt.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btConvexHull.h
+ src/LinearMath/btConvexHullComputer.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btPolarDecomposition.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftSoftCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+ src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btPoolAllocator.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSparseSDF.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDbvt.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btSphereShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/BulletSoftBody/btSoftBodySolvers.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btDefaultSoftBodySolver.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodyHelpers.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodySolverVertexBuffer.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBodySolvers.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftRigidDynamicsWorld.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSparseSDF.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btDbvt.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+ src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+ src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
+ src/BulletDynamics/Dynamics/btDynamicsWorld.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/BulletSoftBody/btSoftBodySolvers.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btHashMap.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btQuickprof.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btSerializer.h
+ src/LinearMath/btStackAlloc.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftBody.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSoftSoftCollisionAlgorithm.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/btSparseSDF.h
+ src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+ src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+ src/BulletCollision/BroadphaseCollision/btDbvt.h
+ src/BulletCollision/BroadphaseCollision/btDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+ src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+ src/BulletCollision/CollisionDispatch/btCollisionObject.h
+ src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+ src/BulletCollision/CollisionDispatch/btManifoldResult.h
+ src/BulletCollision/CollisionShapes/btBoxShape.h
+ src/BulletCollision/CollisionShapes/btCollisionMargin.h
+ src/BulletCollision/CollisionShapes/btCollisionShape.h
+ src/BulletCollision/CollisionShapes/btConcaveShape.h
+ src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+ src/BulletCollision/CollisionShapes/btConvexShape.h
+ src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+ src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+ src/BulletCollision/CollisionShapes/btTriangleCallback.h
+ src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+ src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+ src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+ src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+ src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+ src/BulletDynamics/Dynamics/btRigidBody.h
+ src/BulletSoftBody/btSoftBodySolvers.h
+ src/LinearMath/btAabbUtil2.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btIDebugDraw.h
+ src/LinearMath/btMatrix3x3.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btMotionState.h
+ src/LinearMath/btQuadWord.h
+ src/LinearMath/btQuaternion.h
+ src/LinearMath/btScalar.h
+ src/LinearMath/btTransform.h
+ src/LinearMath/btTransformUtil.h
+ src/LinearMath/btVector3.h
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletSoftBody/btDefaultSoftBodySolver.cpp
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletSoftBody/btDefaultSoftBodySolver.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletSoftBody/btSoftBodySolverVertexBuffer.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletCollision/CollisionShapes/btCapsuleShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletSoftBody/btSoftBody.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletSoftBody/btSoftBodySolvers.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/BulletSoftBody/btSparseSDF.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/LinearMath/btAabbUtil2.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/LinearMath/btAlignedAllocator.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/LinearMath/btIDebugDraw.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/LinearMath/btMatrix3x3.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/LinearMath/btMinMax.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/LinearMath/btMotionState.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/LinearMath/btQuadWord.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/LinearMath/btQuaternion.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/LinearMath/btScalar.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/LinearMath/btTransform.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o: src/LinearMath/btVector3.h
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletSoftBody/btSoftBody.cpp
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletSoftBody/btSoftBody.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletSoftBody/btSoftBodyData.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletSoftBody/btSoftBodyInternals.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletSoftBody/btSparseSDF.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/BulletSoftBody/btSoftBodySolvers.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btAabbUtil2.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btAlignedAllocator.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btHashMap.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btIDebugDraw.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btMatrix3x3.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btMinMax.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btMotionState.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btPolarDecomposition.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btQuadWord.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btQuaternion.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btQuickprof.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btScalar.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btSerializer.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btStackAlloc.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btTransform.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btTransformUtil.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o: src/LinearMath/btVector3.h
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexHullShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btMultiSphereShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btTetrahedronShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btTriangleShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btConvexCast.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletSoftBody/btSoftBody.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/BulletSoftBody/btSparseSDF.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/LinearMath/btAabbUtil2.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/LinearMath/btHashMap.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/LinearMath/btIDebugDraw.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletSoftBody/btSoftBody.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletSoftBody/btSoftBodyHelpers.cpp
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletSoftBody/btSoftBodyHelpers.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletSoftBody/btSoftBodyInternals.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletSoftBody/btSparseSDF.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btAabbUtil2.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btAlignedAllocator.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btConvexHull.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btConvexHullComputer.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btIDebugDraw.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btMatrix3x3.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btMinMax.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btMotionState.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btPolarDecomposition.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btQuadWord.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btQuaternion.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btQuickprof.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btScalar.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btTransform.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btTransformUtil.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o: src/LinearMath/btVector3.h
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletSoftBody/btSoftRigidCollisionAlgorithm.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletSoftBody/btSoftSoftCollisionAlgorithm.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/LinearMath/btAlignedAllocator.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/LinearMath/btHashMap.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/LinearMath/btMatrix3x3.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/LinearMath/btMinMax.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/LinearMath/btMotionState.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/LinearMath/btPoolAllocator.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/LinearMath/btQuadWord.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/LinearMath/btQuaternion.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/LinearMath/btScalar.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/LinearMath/btTransform.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/LinearMath/btTransformUtil.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o: src/LinearMath/btVector3.h
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletSoftBody/btSoftBody.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletSoftBody/btSoftRigidCollisionAlgorithm.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletSoftBody/btSparseSDF.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btSphereShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/BulletSoftBody/btSoftBodySolvers.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/LinearMath/btAabbUtil2.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/LinearMath/btIDebugDraw.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o: src/LinearMath/btVector3.h
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletSoftBody/btDefaultSoftBodySolver.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletSoftBody/btSoftBody.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletSoftBody/btSoftBodyHelpers.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletSoftBody/btSoftBodySolverVertexBuffer.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletSoftBody/btSoftBodySolvers.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletSoftBody/btSoftRigidDynamicsWorld.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletSoftBody/btSparseSDF.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btCollisionWorld.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletDynamics/Dynamics/btDynamicsWorld.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/BulletSoftBody/btSoftBodySolvers.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btAabbUtil2.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btAlignedAllocator.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btHashMap.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btIDebugDraw.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btMatrix3x3.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btMinMax.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btMotionState.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btQuadWord.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btQuaternion.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btQuickprof.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btScalar.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btSerializer.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btStackAlloc.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btTransform.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btTransformUtil.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o: src/LinearMath/btVector3.h
+
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletSoftBody/btSoftBody.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletSoftBody/btSoftSoftCollisionAlgorithm.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletSoftBody/btSparseSDF.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDbvt.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/BroadphaseCollision/btDispatcher.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObject.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/CollisionDispatch/btManifoldResult.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btBoxShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionMargin.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btCollisionShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConcaveShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexInternalShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btConvexShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btStridingMeshInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btTriangleCallback.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletDynamics/Dynamics/btRigidBody.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/BulletSoftBody/btSoftBodySolvers.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/LinearMath/btAabbUtil2.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/LinearMath/btAlignedAllocator.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/LinearMath/btAlignedObjectArray.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/LinearMath/btIDebugDraw.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/LinearMath/btMatrix3x3.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/LinearMath/btMinMax.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/LinearMath/btMotionState.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/LinearMath/btQuadWord.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/LinearMath/btQuaternion.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/LinearMath/btScalar.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/LinearMath/btTransform.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/LinearMath/btTransformUtil.h
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o: src/LinearMath/btVector3.h
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -O3 -DNDEBUG -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk -I/usr/local/include -I/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src
+
+CXX_DEFINES = -DUSE_GRAPHICAL_BENCHMARK
+
--- /dev/null
+/usr/bin/ar cr libBulletSoftBody.a CMakeFiles/BulletSoftBody.dir/btSoftBody.o CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o
+/usr/bin/ranlib libBulletSoftBody.a
--- /dev/null
+CMAKE_PROGRESS_1 = 87
+CMAKE_PROGRESS_2 = 88
+CMAKE_PROGRESS_3 =
+CMAKE_PROGRESS_4 = 89
+CMAKE_PROGRESS_5 = 90
+CMAKE_PROGRESS_6 =
+CMAKE_PROGRESS_7 = 91
+CMAKE_PROGRESS_8 = 92
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Relative path conversion top directories.
+SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+
+# Force unix paths in dependencies.
+SET(CMAKE_FORCE_UNIX_PATHS 1)
+
+# The C and CXX include file search paths:
+SET(CMAKE_C_INCLUDE_PATH
+ "/usr/local/include"
+ "src"
+ )
+SET(CMAKE_CXX_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+SET(CMAKE_Fortran_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+
+# The C and CXX include file regular expressions for this directory.
+SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/ccmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target install
+install: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install
+
+# Special rule for the target install
+install/fast: preinstall/fast
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install/fast
+
+# Special rule for the target install/local
+install/local: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
+.PHONY : install/local
+
+# Special rule for the target install/local
+install/local/fast: install/local
+.PHONY : install/local/fast
+
+# Special rule for the target install/strip
+install/strip: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
+.PHONY : install/strip
+
+# Special rule for the target install/strip
+install/strip/fast: install/strip
+.PHONY : install/strip/fast
+
+# Special rule for the target list_install_components
+list_install_components:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
+.PHONY : list_install_components
+
+# Special rule for the target list_install_components
+list_install_components/fast: list_install_components
+.PHONY : list_install_components/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/CMakeFiles/progress.marks
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletSoftBody/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletSoftBody/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletSoftBody/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletSoftBody/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Convenience name for target.
+src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/rule:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/rule
+.PHONY : src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/rule
+
+# Convenience name for target.
+BulletSoftBody: src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/rule
+.PHONY : BulletSoftBody
+
+# fast build rule for target.
+BulletSoftBody/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build
+.PHONY : BulletSoftBody/fast
+
+# target to build an object file
+btDefaultSoftBodySolver.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.o
+.PHONY : btDefaultSoftBodySolver.o
+
+# target to preprocess a source file
+btDefaultSoftBodySolver.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.i
+.PHONY : btDefaultSoftBodySolver.i
+
+# target to generate assembly for a file
+btDefaultSoftBodySolver.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btDefaultSoftBodySolver.s
+.PHONY : btDefaultSoftBodySolver.s
+
+# target to build an object file
+btSoftBody.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.o
+.PHONY : btSoftBody.o
+
+# target to preprocess a source file
+btSoftBody.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.i
+.PHONY : btSoftBody.i
+
+# target to generate assembly for a file
+btSoftBody.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBody.s
+.PHONY : btSoftBody.s
+
+# target to build an object file
+btSoftBodyConcaveCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.o
+.PHONY : btSoftBodyConcaveCollisionAlgorithm.o
+
+# target to preprocess a source file
+btSoftBodyConcaveCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.i
+.PHONY : btSoftBodyConcaveCollisionAlgorithm.i
+
+# target to generate assembly for a file
+btSoftBodyConcaveCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyConcaveCollisionAlgorithm.s
+.PHONY : btSoftBodyConcaveCollisionAlgorithm.s
+
+# target to build an object file
+btSoftBodyHelpers.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.o
+.PHONY : btSoftBodyHelpers.o
+
+# target to preprocess a source file
+btSoftBodyHelpers.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.i
+.PHONY : btSoftBodyHelpers.i
+
+# target to generate assembly for a file
+btSoftBodyHelpers.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyHelpers.s
+.PHONY : btSoftBodyHelpers.s
+
+# target to build an object file
+btSoftBodyRigidBodyCollisionConfiguration.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.o
+.PHONY : btSoftBodyRigidBodyCollisionConfiguration.o
+
+# target to preprocess a source file
+btSoftBodyRigidBodyCollisionConfiguration.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.i
+.PHONY : btSoftBodyRigidBodyCollisionConfiguration.i
+
+# target to generate assembly for a file
+btSoftBodyRigidBodyCollisionConfiguration.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftBodyRigidBodyCollisionConfiguration.s
+.PHONY : btSoftBodyRigidBodyCollisionConfiguration.s
+
+# target to build an object file
+btSoftRigidCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.o
+.PHONY : btSoftRigidCollisionAlgorithm.o
+
+# target to preprocess a source file
+btSoftRigidCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.i
+.PHONY : btSoftRigidCollisionAlgorithm.i
+
+# target to generate assembly for a file
+btSoftRigidCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidCollisionAlgorithm.s
+.PHONY : btSoftRigidCollisionAlgorithm.s
+
+# target to build an object file
+btSoftRigidDynamicsWorld.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.o
+.PHONY : btSoftRigidDynamicsWorld.o
+
+# target to preprocess a source file
+btSoftRigidDynamicsWorld.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.i
+.PHONY : btSoftRigidDynamicsWorld.i
+
+# target to generate assembly for a file
+btSoftRigidDynamicsWorld.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftRigidDynamicsWorld.s
+.PHONY : btSoftRigidDynamicsWorld.s
+
+# target to build an object file
+btSoftSoftCollisionAlgorithm.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.o
+.PHONY : btSoftSoftCollisionAlgorithm.o
+
+# target to preprocess a source file
+btSoftSoftCollisionAlgorithm.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.i
+.PHONY : btSoftSoftCollisionAlgorithm.i
+
+# target to generate assembly for a file
+btSoftSoftCollisionAlgorithm.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/build.make src/BulletSoftBody/CMakeFiles/BulletSoftBody.dir/btSoftSoftCollisionAlgorithm.s
+.PHONY : btSoftSoftCollisionAlgorithm.s
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... BulletSoftBody"
+ @echo "... edit_cache"
+ @echo "... install"
+ @echo "... install/local"
+ @echo "... install/strip"
+ @echo "... list_install_components"
+ @echo "... rebuild_cache"
+ @echo "... btDefaultSoftBodySolver.o"
+ @echo "... btDefaultSoftBodySolver.i"
+ @echo "... btDefaultSoftBodySolver.s"
+ @echo "... btSoftBody.o"
+ @echo "... btSoftBody.i"
+ @echo "... btSoftBody.s"
+ @echo "... btSoftBodyConcaveCollisionAlgorithm.o"
+ @echo "... btSoftBodyConcaveCollisionAlgorithm.i"
+ @echo "... btSoftBodyConcaveCollisionAlgorithm.s"
+ @echo "... btSoftBodyHelpers.o"
+ @echo "... btSoftBodyHelpers.i"
+ @echo "... btSoftBodyHelpers.s"
+ @echo "... btSoftBodyRigidBodyCollisionConfiguration.o"
+ @echo "... btSoftBodyRigidBodyCollisionConfiguration.i"
+ @echo "... btSoftBodyRigidBodyCollisionConfiguration.s"
+ @echo "... btSoftRigidCollisionAlgorithm.o"
+ @echo "... btSoftRigidCollisionAlgorithm.i"
+ @echo "... btSoftRigidCollisionAlgorithm.s"
+ @echo "... btSoftRigidDynamicsWorld.o"
+ @echo "... btSoftRigidDynamicsWorld.i"
+ @echo "... btSoftRigidDynamicsWorld.s"
+ @echo "... btSoftSoftCollisionAlgorithm.o"
+ @echo "... btSoftSoftCollisionAlgorithm.i"
+ @echo "... btSoftSoftCollisionAlgorithm.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
--- /dev/null
+# Install script for directory: /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody
+
+# Set the install prefix
+IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ SET(CMAKE_INSTALL_PREFIX "/usr/local")
+ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ IF(BUILD_TYPE)
+ STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ ELSE(BUILD_TYPE)
+ SET(CMAKE_INSTALL_CONFIG_NAME "Release")
+ ENDIF(BUILD_TYPE)
+ MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+
+# Set the component getting installed.
+IF(NOT CMAKE_INSTALL_COMPONENT)
+ IF(COMPONENT)
+ MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
+ SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ ELSE(COMPONENT)
+ SET(CMAKE_INSTALL_COMPONENT)
+ ENDIF(COMPONENT)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT)
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE STATIC_LIBRARY FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/libBulletSoftBody.a")
+ IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libBulletSoftBody.a" AND
+ NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libBulletSoftBody.a")
+ EXECUTE_PROCESS(COMMAND "/usr/bin/ranlib" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libBulletSoftBody.a")
+ ENDIF()
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ list(APPEND CPACK_ABSOLUTE_DESTINATION_FILES
+ "/usr/local/include/bullet/BulletSoftBody")
+FILE(INSTALL DESTINATION "/usr/local/include/bullet" TYPE DIRECTORY FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody" FILES_MATCHING REGEX "/[^/]*\\.h$" REGEX "/\\.svn$" EXCLUDE REGEX "/cmakefiles$" EXCLUDE)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Relative path conversion top directories.
+SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+
+# Force unix paths in dependencies.
+SET(CMAKE_FORCE_UNIX_PATHS 1)
+
+# The C and CXX include file search paths:
+SET(CMAKE_C_INCLUDE_PATH
+ "/usr/local/include"
+ )
+SET(CMAKE_CXX_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+SET(CMAKE_Fortran_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+
+# The C and CXX include file regular expressions for this directory.
+SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Relative path conversion top directories.
+SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+
+# Force unix paths in dependencies.
+SET(CMAKE_FORCE_UNIX_PATHS 1)
+
+# The C and CXX include file search paths:
+SET(CMAKE_C_INCLUDE_PATH
+ "/usr/local/include"
+ "src"
+ )
+SET(CMAKE_CXX_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+SET(CMAKE_Fortran_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+
+# The C and CXX include file regular expressions for this directory.
+SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
--- /dev/null
+#IncludeRegexLine: ^[ ]*#[ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.cpp
+btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.h
+malloc.h
+-
+stdlib.h
+-
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.h
+btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btScalar.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedObjectArray.h
+btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btScalar.h
+btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.h
+memory.h
+-
+string.h
+-
+new
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHull.cpp
+string.h
+-
+btConvexHull.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHull.h
+btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedObjectArray.h
+btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btMinMax.h
+btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHull.h
+btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.h
+btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHullComputer.cpp
+string.h
+-
+btConvexHullComputer.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHullComputer.h
+btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedObjectArray.h
+btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btMinMax.h
+btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.h
+stdint.h
+-
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHullComputer.h
+btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.h
+btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btGeometryUtil.cpp
+btGeometryUtil.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btGeometryUtil.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btGeometryUtil.h
+btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.h
+btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedObjectArray.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btMatrix3x3.h
+btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.h
+btQuaternion.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btQuaternion.h
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btMinMax.h
+btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btScalar.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btPolarDecomposition.cpp
+btPolarDecomposition.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btPolarDecomposition.h
+btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btMinMax.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btPolarDecomposition.h
+btMatrix3x3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btMatrix3x3.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btQuadWord.h
+btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btScalar.h
+btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btMinMax.h
+altivec.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btQuaternion.h
+btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.h
+btQuadWord.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btQuadWord.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btQuickprof.cpp
+btQuickprof.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btQuickprof.h
+sys/sys_time.h
+-
+sys/time_util.h
+-
+stdio.h
+-
+stdio.h
+-
+Xtl.h
+-
+windows.h
+-
+time.h
+-
+sys/time.h
+-
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btQuickprof.h
+stdio.h
+-
+btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btScalar.h
+btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.h
+new
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btScalar.h
+math.h
+-
+stdlib.h
+-
+float.h
+-
+ppcintrinsics.h
+-
+emmintrin.h
+-
+stdio.h
+-
+assert.h
+-
+assert.h
+-
+spu_printf.h
+-
+assert.h
+-
+smmintrin.h
+-
+tmmintrin.h
+-
+pmmintrin.h
+-
+emmintrin.h
+-
+arm_neon.h
+-
+assert.h
+-
+stdio.h
+-
+assert.h
+-
+arm_neon.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btSerializer.cpp
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.cpp
+btVector3.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.h
+stdint.h
+-
+emmintrin.h
+-
+arm_neon.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.h
+btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btScalar.h
+btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btMinMax.h
+btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.h
+
--- /dev/null
+# The set of languages for which implicit dependencies are needed:
+SET(CMAKE_DEPENDS_LANGUAGES
+ "CXX"
+ )
+# The set of files for implicit dependencies of each language:
+SET(CMAKE_DEPENDS_CHECK_CXX
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHull.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHullComputer.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btGeometryUtil.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btPolarDecomposition.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btQuickprof.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btSerializer.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o"
+ )
+SET(CMAKE_CXX_COMPILER_ID "GNU")
+
+# Preprocessor definitions for this target.
+SET(CMAKE_TARGET_DEFINITIONS
+ "USE_GRAPHICAL_BENCHMARK"
+ )
+
+# Targets to which this target links.
+SET(CMAKE_TARGET_LINKED_INFO_FILES
+ )
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# Include any dependencies generated for this target.
+include src/LinearMath/CMakeFiles/LinearMath.dir/depend.make
+
+# Include the progress variables for this target.
+include src/LinearMath/CMakeFiles/LinearMath.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include src/LinearMath/CMakeFiles/LinearMath.dir/flags.make
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o: src/LinearMath/CMakeFiles/LinearMath.dir/flags.make
+src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o: src/LinearMath/btAlignedAllocator.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_1)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/LinearMath.dir/btAlignedAllocator.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.cpp
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/LinearMath.dir/btAlignedAllocator.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.cpp > CMakeFiles/LinearMath.dir/btAlignedAllocator.i
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/LinearMath.dir/btAlignedAllocator.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.cpp -o CMakeFiles/LinearMath.dir/btAlignedAllocator.s
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o.requires:
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o.requires
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o.provides: src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o.requires
+ $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o.provides.build
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o.provides
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o.provides.build: src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o: src/LinearMath/CMakeFiles/LinearMath.dir/flags.make
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o: src/LinearMath/btConvexHull.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_2)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/LinearMath.dir/btConvexHull.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHull.cpp
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/LinearMath.dir/btConvexHull.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHull.cpp > CMakeFiles/LinearMath.dir/btConvexHull.i
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/LinearMath.dir/btConvexHull.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHull.cpp -o CMakeFiles/LinearMath.dir/btConvexHull.s
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o.requires:
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o.requires
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o.provides: src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o.requires
+ $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o.provides.build
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o.provides
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o.provides.build: src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o: src/LinearMath/CMakeFiles/LinearMath.dir/flags.make
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o: src/LinearMath/btConvexHullComputer.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_3)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/LinearMath.dir/btConvexHullComputer.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHullComputer.cpp
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/LinearMath.dir/btConvexHullComputer.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHullComputer.cpp > CMakeFiles/LinearMath.dir/btConvexHullComputer.i
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/LinearMath.dir/btConvexHullComputer.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHullComputer.cpp -o CMakeFiles/LinearMath.dir/btConvexHullComputer.s
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o.requires:
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o.requires
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o.provides: src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o.requires
+ $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o.provides.build
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o.provides
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o.provides.build: src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o: src/LinearMath/CMakeFiles/LinearMath.dir/flags.make
+src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o: src/LinearMath/btGeometryUtil.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_4)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/LinearMath.dir/btGeometryUtil.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btGeometryUtil.cpp
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/LinearMath.dir/btGeometryUtil.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btGeometryUtil.cpp > CMakeFiles/LinearMath.dir/btGeometryUtil.i
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/LinearMath.dir/btGeometryUtil.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btGeometryUtil.cpp -o CMakeFiles/LinearMath.dir/btGeometryUtil.s
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o.requires:
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o.requires
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o.provides: src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o.requires
+ $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o.provides.build
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o.provides
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o.provides.build: src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o: src/LinearMath/CMakeFiles/LinearMath.dir/flags.make
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o: src/LinearMath/btPolarDecomposition.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_5)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/LinearMath.dir/btPolarDecomposition.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btPolarDecomposition.cpp
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/LinearMath.dir/btPolarDecomposition.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btPolarDecomposition.cpp > CMakeFiles/LinearMath.dir/btPolarDecomposition.i
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/LinearMath.dir/btPolarDecomposition.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btPolarDecomposition.cpp -o CMakeFiles/LinearMath.dir/btPolarDecomposition.s
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o.requires:
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o.requires
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o.provides: src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o.requires
+ $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o.provides.build
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o.provides
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o.provides.build: src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o: src/LinearMath/CMakeFiles/LinearMath.dir/flags.make
+src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o: src/LinearMath/btQuickprof.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_6)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/LinearMath.dir/btQuickprof.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btQuickprof.cpp
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/LinearMath.dir/btQuickprof.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btQuickprof.cpp > CMakeFiles/LinearMath.dir/btQuickprof.i
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/LinearMath.dir/btQuickprof.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btQuickprof.cpp -o CMakeFiles/LinearMath.dir/btQuickprof.s
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o.requires:
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o.requires
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o.provides: src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o.requires
+ $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o.provides.build
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o.provides
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o.provides.build: src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o: src/LinearMath/CMakeFiles/LinearMath.dir/flags.make
+src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o: src/LinearMath/btSerializer.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_7)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/LinearMath.dir/btSerializer.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btSerializer.cpp
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/LinearMath.dir/btSerializer.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btSerializer.cpp > CMakeFiles/LinearMath.dir/btSerializer.i
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/LinearMath.dir/btSerializer.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btSerializer.cpp -o CMakeFiles/LinearMath.dir/btSerializer.s
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o.requires:
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o.requires
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o.provides: src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o.requires
+ $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o.provides.build
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o.provides
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o.provides.build: src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o: src/LinearMath/CMakeFiles/LinearMath.dir/flags.make
+src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o: src/LinearMath/btVector3.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_8)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/LinearMath.dir/btVector3.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.cpp
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/LinearMath.dir/btVector3.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.cpp > CMakeFiles/LinearMath.dir/btVector3.i
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/LinearMath.dir/btVector3.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.cpp -o CMakeFiles/LinearMath.dir/btVector3.s
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o.requires:
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o.requires
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o.provides: src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o.requires
+ $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o.provides.build
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o.provides
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o.provides.build: src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o
+
+# Object files for target LinearMath
+LinearMath_OBJECTS = \
+"CMakeFiles/LinearMath.dir/btAlignedAllocator.o" \
+"CMakeFiles/LinearMath.dir/btConvexHull.o" \
+"CMakeFiles/LinearMath.dir/btConvexHullComputer.o" \
+"CMakeFiles/LinearMath.dir/btGeometryUtil.o" \
+"CMakeFiles/LinearMath.dir/btPolarDecomposition.o" \
+"CMakeFiles/LinearMath.dir/btQuickprof.o" \
+"CMakeFiles/LinearMath.dir/btSerializer.o" \
+"CMakeFiles/LinearMath.dir/btVector3.o"
+
+# External object files for target LinearMath
+LinearMath_EXTERNAL_OBJECTS =
+
+src/LinearMath/libLinearMath.a: src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o
+src/LinearMath/libLinearMath.a: src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o
+src/LinearMath/libLinearMath.a: src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o
+src/LinearMath/libLinearMath.a: src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o
+src/LinearMath/libLinearMath.a: src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o
+src/LinearMath/libLinearMath.a: src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o
+src/LinearMath/libLinearMath.a: src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o
+src/LinearMath/libLinearMath.a: src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o
+src/LinearMath/libLinearMath.a: src/LinearMath/CMakeFiles/LinearMath.dir/build.make
+src/LinearMath/libLinearMath.a: src/LinearMath/CMakeFiles/LinearMath.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX static library libLinearMath.a"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && $(CMAKE_COMMAND) -P CMakeFiles/LinearMath.dir/cmake_clean_target.cmake
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/LinearMath.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+src/LinearMath/CMakeFiles/LinearMath.dir/build: src/LinearMath/libLinearMath.a
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/build
+
+src/LinearMath/CMakeFiles/LinearMath.dir/requires: src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o.requires
+src/LinearMath/CMakeFiles/LinearMath.dir/requires: src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o.requires
+src/LinearMath/CMakeFiles/LinearMath.dir/requires: src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o.requires
+src/LinearMath/CMakeFiles/LinearMath.dir/requires: src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o.requires
+src/LinearMath/CMakeFiles/LinearMath.dir/requires: src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o.requires
+src/LinearMath/CMakeFiles/LinearMath.dir/requires: src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o.requires
+src/LinearMath/CMakeFiles/LinearMath.dir/requires: src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o.requires
+src/LinearMath/CMakeFiles/LinearMath.dir/requires: src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o.requires
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/requires
+
+src/LinearMath/CMakeFiles/LinearMath.dir/clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath && $(CMAKE_COMMAND) -P CMakeFiles/LinearMath.dir/cmake_clean.cmake
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/clean
+
+src/LinearMath/CMakeFiles/LinearMath.dir/depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/CMakeFiles/LinearMath.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/depend
+
--- /dev/null
+FILE(REMOVE_RECURSE
+ "CMakeFiles/LinearMath.dir/btAlignedAllocator.o"
+ "CMakeFiles/LinearMath.dir/btConvexHull.o"
+ "CMakeFiles/LinearMath.dir/btConvexHullComputer.o"
+ "CMakeFiles/LinearMath.dir/btGeometryUtil.o"
+ "CMakeFiles/LinearMath.dir/btPolarDecomposition.o"
+ "CMakeFiles/LinearMath.dir/btQuickprof.o"
+ "CMakeFiles/LinearMath.dir/btSerializer.o"
+ "CMakeFiles/LinearMath.dir/btVector3.o"
+ "libLinearMath.pdb"
+ "libLinearMath.a"
+)
+
+# Per-language clean rules from dependency scanning.
+FOREACH(lang CXX)
+ INCLUDE(CMakeFiles/LinearMath.dir/cmake_clean_${lang}.cmake OPTIONAL)
+ENDFOREACH(lang)
--- /dev/null
+FILE(REMOVE_RECURSE
+ "libLinearMath.a"
+)
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btScalar.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedObjectArray.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHull.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHull.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btMinMax.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btScalar.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedObjectArray.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHullComputer.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btConvexHullComputer.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btMinMax.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btScalar.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedObjectArray.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btGeometryUtil.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btGeometryUtil.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btMinMax.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btScalar.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btMatrix3x3.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btMinMax.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btPolarDecomposition.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btPolarDecomposition.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btQuadWord.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btQuaternion.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btScalar.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btQuickprof.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btQuickprof.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btScalar.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btSerializer.cpp
+src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btAlignedAllocator.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btMinMax.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btScalar.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/btVector3.h
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o: src/LinearMath/btAlignedAllocator.cpp
+src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o: src/LinearMath/btAlignedAllocator.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o: src/LinearMath/btScalar.h
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o: src/LinearMath/btAlignedAllocator.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o: src/LinearMath/btAlignedObjectArray.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o: src/LinearMath/btConvexHull.cpp
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o: src/LinearMath/btConvexHull.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o: src/LinearMath/btMinMax.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o: src/LinearMath/btScalar.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o: src/LinearMath/btVector3.h
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o: src/LinearMath/btAlignedAllocator.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o: src/LinearMath/btAlignedObjectArray.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o: src/LinearMath/btConvexHullComputer.cpp
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o: src/LinearMath/btConvexHullComputer.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o: src/LinearMath/btMinMax.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o: src/LinearMath/btScalar.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o: src/LinearMath/btVector3.h
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o: src/LinearMath/btAlignedAllocator.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o: src/LinearMath/btAlignedObjectArray.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o: src/LinearMath/btGeometryUtil.cpp
+src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o: src/LinearMath/btGeometryUtil.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o: src/LinearMath/btMinMax.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o: src/LinearMath/btScalar.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o: src/LinearMath/btVector3.h
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o: src/LinearMath/btAlignedAllocator.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o: src/LinearMath/btMatrix3x3.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o: src/LinearMath/btMinMax.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o: src/LinearMath/btPolarDecomposition.cpp
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o: src/LinearMath/btPolarDecomposition.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o: src/LinearMath/btQuadWord.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o: src/LinearMath/btQuaternion.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o: src/LinearMath/btScalar.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o: src/LinearMath/btVector3.h
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o: src/LinearMath/btAlignedAllocator.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o: src/LinearMath/btQuickprof.cpp
+src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o: src/LinearMath/btQuickprof.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o: src/LinearMath/btScalar.h
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o: src/LinearMath/btSerializer.cpp
+
+src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o: src/LinearMath/btAlignedAllocator.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o: src/LinearMath/btMinMax.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o: src/LinearMath/btScalar.h
+src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o: src/LinearMath/btVector3.cpp
+src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o: src/LinearMath/btVector3.h
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -O3 -DNDEBUG -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk -I/usr/local/include -I/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src
+
+CXX_DEFINES = -DUSE_GRAPHICAL_BENCHMARK
+
--- /dev/null
+/usr/bin/ar cr libLinearMath.a CMakeFiles/LinearMath.dir/btAlignedAllocator.o CMakeFiles/LinearMath.dir/btConvexHull.o CMakeFiles/LinearMath.dir/btConvexHullComputer.o CMakeFiles/LinearMath.dir/btGeometryUtil.o CMakeFiles/LinearMath.dir/btPolarDecomposition.o CMakeFiles/LinearMath.dir/btQuickprof.o CMakeFiles/LinearMath.dir/btSerializer.o CMakeFiles/LinearMath.dir/btVector3.o
+/usr/bin/ranlib libLinearMath.a
--- /dev/null
+CMAKE_PROGRESS_1 = 93
+CMAKE_PROGRESS_2 = 94
+CMAKE_PROGRESS_3 =
+CMAKE_PROGRESS_4 = 95
+CMAKE_PROGRESS_5 = 96
+CMAKE_PROGRESS_6 =
+CMAKE_PROGRESS_7 = 97
+CMAKE_PROGRESS_8 = 98
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/ccmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target install
+install: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install
+
+# Special rule for the target install
+install/fast: preinstall/fast
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install/fast
+
+# Special rule for the target install/local
+install/local: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
+.PHONY : install/local
+
+# Special rule for the target install/local
+install/local/fast: install/local
+.PHONY : install/local/fast
+
+# Special rule for the target install/strip
+install/strip: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
+.PHONY : install/strip
+
+# Special rule for the target install/strip
+install/strip/fast: install/strip
+.PHONY : install/strip/fast
+
+# Special rule for the target list_install_components
+list_install_components:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
+.PHONY : list_install_components
+
+# Special rule for the target list_install_components
+list_install_components/fast: list_install_components
+.PHONY : list_install_components/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/CMakeFiles/progress.marks
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/LinearMath/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/LinearMath/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/LinearMath/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/LinearMath/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Convenience name for target.
+src/LinearMath/CMakeFiles/LinearMath.dir/rule:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/LinearMath/CMakeFiles/LinearMath.dir/rule
+.PHONY : src/LinearMath/CMakeFiles/LinearMath.dir/rule
+
+# Convenience name for target.
+LinearMath: src/LinearMath/CMakeFiles/LinearMath.dir/rule
+.PHONY : LinearMath
+
+# fast build rule for target.
+LinearMath/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/build
+.PHONY : LinearMath/fast
+
+# target to build an object file
+btAlignedAllocator.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.o
+.PHONY : btAlignedAllocator.o
+
+# target to preprocess a source file
+btAlignedAllocator.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.i
+.PHONY : btAlignedAllocator.i
+
+# target to generate assembly for a file
+btAlignedAllocator.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btAlignedAllocator.s
+.PHONY : btAlignedAllocator.s
+
+# target to build an object file
+btConvexHull.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.o
+.PHONY : btConvexHull.o
+
+# target to preprocess a source file
+btConvexHull.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.i
+.PHONY : btConvexHull.i
+
+# target to generate assembly for a file
+btConvexHull.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHull.s
+.PHONY : btConvexHull.s
+
+# target to build an object file
+btConvexHullComputer.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.o
+.PHONY : btConvexHullComputer.o
+
+# target to preprocess a source file
+btConvexHullComputer.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.i
+.PHONY : btConvexHullComputer.i
+
+# target to generate assembly for a file
+btConvexHullComputer.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btConvexHullComputer.s
+.PHONY : btConvexHullComputer.s
+
+# target to build an object file
+btGeometryUtil.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.o
+.PHONY : btGeometryUtil.o
+
+# target to preprocess a source file
+btGeometryUtil.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.i
+.PHONY : btGeometryUtil.i
+
+# target to generate assembly for a file
+btGeometryUtil.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btGeometryUtil.s
+.PHONY : btGeometryUtil.s
+
+# target to build an object file
+btPolarDecomposition.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.o
+.PHONY : btPolarDecomposition.o
+
+# target to preprocess a source file
+btPolarDecomposition.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.i
+.PHONY : btPolarDecomposition.i
+
+# target to generate assembly for a file
+btPolarDecomposition.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btPolarDecomposition.s
+.PHONY : btPolarDecomposition.s
+
+# target to build an object file
+btQuickprof.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.o
+.PHONY : btQuickprof.o
+
+# target to preprocess a source file
+btQuickprof.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.i
+.PHONY : btQuickprof.i
+
+# target to generate assembly for a file
+btQuickprof.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btQuickprof.s
+.PHONY : btQuickprof.s
+
+# target to build an object file
+btSerializer.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.o
+.PHONY : btSerializer.o
+
+# target to preprocess a source file
+btSerializer.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.i
+.PHONY : btSerializer.i
+
+# target to generate assembly for a file
+btSerializer.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btSerializer.s
+.PHONY : btSerializer.s
+
+# target to build an object file
+btVector3.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.o
+.PHONY : btVector3.o
+
+# target to preprocess a source file
+btVector3.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.i
+.PHONY : btVector3.i
+
+# target to generate assembly for a file
+btVector3.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/LinearMath/CMakeFiles/LinearMath.dir/build.make src/LinearMath/CMakeFiles/LinearMath.dir/btVector3.s
+.PHONY : btVector3.s
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... LinearMath"
+ @echo "... edit_cache"
+ @echo "... install"
+ @echo "... install/local"
+ @echo "... install/strip"
+ @echo "... list_install_components"
+ @echo "... rebuild_cache"
+ @echo "... btAlignedAllocator.o"
+ @echo "... btAlignedAllocator.i"
+ @echo "... btAlignedAllocator.s"
+ @echo "... btConvexHull.o"
+ @echo "... btConvexHull.i"
+ @echo "... btConvexHull.s"
+ @echo "... btConvexHullComputer.o"
+ @echo "... btConvexHullComputer.i"
+ @echo "... btConvexHullComputer.s"
+ @echo "... btGeometryUtil.o"
+ @echo "... btGeometryUtil.i"
+ @echo "... btGeometryUtil.s"
+ @echo "... btPolarDecomposition.o"
+ @echo "... btPolarDecomposition.i"
+ @echo "... btPolarDecomposition.s"
+ @echo "... btQuickprof.o"
+ @echo "... btQuickprof.i"
+ @echo "... btQuickprof.s"
+ @echo "... btSerializer.o"
+ @echo "... btSerializer.i"
+ @echo "... btSerializer.s"
+ @echo "... btVector3.o"
+ @echo "... btVector3.i"
+ @echo "... btVector3.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
--- /dev/null
+# Install script for directory: /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath
+
+# Set the install prefix
+IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ SET(CMAKE_INSTALL_PREFIX "/usr/local")
+ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ IF(BUILD_TYPE)
+ STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ ELSE(BUILD_TYPE)
+ SET(CMAKE_INSTALL_CONFIG_NAME "Release")
+ ENDIF(BUILD_TYPE)
+ MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+
+# Set the component getting installed.
+IF(NOT CMAKE_INSTALL_COMPONENT)
+ IF(COMPONENT)
+ MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
+ SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ ELSE(COMPONENT)
+ SET(CMAKE_INSTALL_COMPONENT)
+ ENDIF(COMPONENT)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT)
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE STATIC_LIBRARY FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/libLinearMath.a")
+ IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libLinearMath.a" AND
+ NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libLinearMath.a")
+ EXECUTE_PROCESS(COMMAND "/usr/bin/ranlib" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libLinearMath.a")
+ ENDIF()
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ list(APPEND CPACK_ABSOLUTE_DESTINATION_FILES
+ "/usr/local/include/bullet/LinearMath")
+FILE(INSTALL DESTINATION "/usr/local/include/bullet" TYPE DIRECTORY FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath" FILES_MATCHING REGEX "/[^/]*\\.h$" REGEX "/\\.svn$" EXCLUDE REGEX "/cmakefiles$" EXCLUDE)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/ccmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target install
+install: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install
+
+# Special rule for the target install
+install/fast: preinstall/fast
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install/fast
+
+# Special rule for the target install/local
+install/local: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
+.PHONY : install/local
+
+# Special rule for the target install/local
+install/local/fast: install/local
+.PHONY : install/local/fast
+
+# Special rule for the target install/strip
+install/strip: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
+.PHONY : install/strip
+
+# Special rule for the target install/strip
+install/strip/fast: install/strip
+.PHONY : install/strip/fast
+
+# Special rule for the target list_install_components
+list_install_components:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
+.PHONY : list_install_components
+
+# Special rule for the target list_install_components
+list_install_components/fast: list_install_components
+.PHONY : list_install_components/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/CMakeFiles/progress.marks
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... edit_cache"
+ @echo "... install"
+ @echo "... install/local"
+ @echo "... install/strip"
+ @echo "... list_install_components"
+ @echo "... rebuild_cache"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
--- /dev/null
+# Makefile.in generated by automake 1.11 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@am__append_1 = \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/PosixThreadSupport.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/vectormath/scalar/cpp/mat_aos.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/vectormath/scalar/cpp/vec_aos.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/vectormath/scalar/cpp/quat_aos.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/vectormath/scalar/cpp/vectormath_aos.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/PpuAddressSpace.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuCollisionTaskProcess.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/PlatformDefinitions.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/vectormath2bullet.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuGatheringCollisionDispatcher.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuCollisionObjectWrapper.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuSampleTaskProcess.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/Box.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuLocalSupport.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuConvexPenetrationDepthSolver.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuPreferredPenetrationDirections.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuSync.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/btThreadSupportInterface.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuLibspe2Support.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuSampleTask/SpuSampleTask.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuFakeDma.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuDoubleBuffer.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/Win32ThreadSupport.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SequentialThreadSupport.h
+
+subdir = src
+DIST_COMMON = $(am__nobase_bullet_include_HEADERS_DIST) \
+ $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+ if (++n[$$2] == $(am__install_max)) \
+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+ END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__installdirs = "$(DESTDIR)$(libdir)" \
+ "$(DESTDIR)$(bullet_includedir)"
+LTLIBRARIES = $(lib_LTLIBRARIES)
+libBulletCollision_la_LIBADD =
+am_libBulletCollision_la_OBJECTS = btRaycastCallback.lo \
+ btMinkowskiPenetrationDepthSolver.lo btSubSimplexConvexCast.lo \
+ btGjkEpaPenetrationDepthSolver.lo btGjkConvexCast.lo \
+ btPersistentManifold.lo btConvexCast.lo \
+ btPolyhedralContactClipping.lo btContinuousConvexCollision.lo \
+ btGjkPairDetector.lo btGjkEpa2.lo btVoronoiSimplexSolver.lo \
+ btActivatingCollisionAlgorithm.lo btCollisionObject.lo \
+ btEmptyCollisionAlgorithm.lo btGhostObject.lo \
+ btSphereSphereCollisionAlgorithm.lo \
+ btSphereBoxCollisionAlgorithm.lo btCollisionDispatcher.lo \
+ btDefaultCollisionConfiguration.lo \
+ btSimulationIslandManager.lo btBoxBoxDetector.lo \
+ btConvexPlaneCollisionAlgorithm.lo \
+ btConvexConcaveCollisionAlgorithm.lo \
+ btBoxBoxCollisionAlgorithm.lo \
+ btBox2dBox2dCollisionAlgorithm.lo SphereTriangleDetector.lo \
+ btInternalEdgeUtility.lo btManifoldResult.lo \
+ btCollisionWorld.lo btSphereTriangleCollisionAlgorithm.lo \
+ btConvexConvexAlgorithm.lo btConvex2dConvex2dAlgorithm.lo \
+ btUnionFind.lo btCompoundCollisionAlgorithm.lo \
+ btTetrahedronShape.lo btShapeHull.lo btMinkowskiSumShape.lo \
+ btCompoundShape.lo btConeShape.lo btConvexPolyhedron.lo \
+ btMultiSphereShape.lo btUniformScalingShape.lo \
+ btSphereShape.lo btTriangleIndexVertexArray.lo \
+ btBvhTriangleMeshShape.lo btTriangleMeshShape.lo \
+ btTriangleBuffer.lo btStaticPlaneShape.lo \
+ btPolyhedralConvexShape.lo btEmptyShape.lo btCollisionShape.lo \
+ btConvexShape.lo btConvex2dShape.lo btConvexInternalShape.lo \
+ btConvexHullShape.lo btTriangleCallback.lo btCapsuleShape.lo \
+ btConvexTriangleMeshShape.lo btConcaveShape.lo \
+ btConvexPointCloudShape.lo btBoxShape.lo btBox2dShape.lo \
+ btOptimizedBvh.lo btHeightfieldTerrainShape.lo \
+ btMultimaterialTriangleMeshShape.lo btCylinderShape.lo \
+ btScaledBvhTriangleMeshShape.lo btStridingMeshInterface.lo \
+ btTriangleIndexVertexMaterialArray.lo btTriangleMesh.lo \
+ btAxisSweep3.lo btOverlappingPairCache.lo btDbvtBroadphase.lo \
+ btMultiSapBroadphase.lo btDispatcher.lo btBroadphaseProxy.lo \
+ btQuantizedBvh.lo btCollisionAlgorithm.lo btDbvt.lo \
+ btSimpleBroadphase.lo btGImpactBvh.lo btGImpactQuantizedBvh.lo \
+ btTriangleShapeEx.lo btGImpactCollisionAlgorithm.lo \
+ btGImpactShape.lo gim_box_set.lo gim_contact.lo gim_memory.lo \
+ gim_tri_collision.lo
+libBulletCollision_la_OBJECTS = $(am_libBulletCollision_la_OBJECTS)
+@CONDITIONAL_BUILD_MULTITHREADED_FALSE@am_libBulletCollision_la_rpath = \
+@CONDITIONAL_BUILD_MULTITHREADED_FALSE@ -rpath $(libdir)
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@am_libBulletCollision_la_rpath = \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ -rpath $(libdir)
+libBulletDynamics_la_LIBADD =
+am_libBulletDynamics_la_OBJECTS = btRigidBody.lo \
+ btSimpleDynamicsWorld.lo Bullet-C-API.lo \
+ btDiscreteDynamicsWorld.lo btGearConstraint.lo \
+ btGeneric6DofConstraint.lo btGeneric6DofSpringConstraint.lo \
+ btSolve2LinearConstraint.lo btPoint2PointConstraint.lo \
+ btTypedConstraint.lo btContactConstraint.lo \
+ btSliderConstraint.lo btConeTwistConstraint.lo \
+ btHingeConstraint.lo btHinge2Constraint.lo \
+ btUniversalConstraint.lo \
+ btSequentialImpulseConstraintSolver.lo btWheelInfo.lo \
+ btRaycastVehicle.lo btKinematicCharacterController.lo
+libBulletDynamics_la_OBJECTS = $(am_libBulletDynamics_la_OBJECTS)
+@CONDITIONAL_BUILD_MULTITHREADED_FALSE@am_libBulletDynamics_la_rpath = \
+@CONDITIONAL_BUILD_MULTITHREADED_FALSE@ -rpath $(libdir)
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@am_libBulletDynamics_la_rpath = \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ -rpath $(libdir)
+libBulletMultiThreaded_la_LIBADD =
+am__libBulletMultiThreaded_la_SOURCES_DIST = \
+ BulletMultiThreaded/SpuCollisionObjectWrapper.cpp \
+ BulletMultiThreaded/SpuSampleTask/SpuSampleTask.cpp \
+ BulletMultiThreaded/SpuLibspe2Support.cpp \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp \
+ BulletMultiThreaded/btThreadSupportInterface.cpp \
+ BulletMultiThreaded/SequentialThreadSupport.cpp \
+ BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp \
+ BulletMultiThreaded/Win32ThreadSupport.cpp \
+ BulletMultiThreaded/SpuFakeDma.cpp \
+ BulletMultiThreaded/PosixThreadSupport.cpp \
+ BulletMultiThreaded/SpuCollisionTaskProcess.cpp \
+ BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp \
+ BulletMultiThreaded/SpuSampleTaskProcess.cpp \
+ BulletMultiThreaded/SpuSampleTask/SpuSampleTask.h \
+ BulletMultiThreaded/PpuAddressSpace.h \
+ BulletMultiThreaded/SpuSampleTaskProcess.h \
+ BulletMultiThreaded/SequentialThreadSupport.h \
+ BulletMultiThreaded/PlatformDefinitions.h \
+ BulletMultiThreaded/Win32ThreadSupport.h \
+ BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.h \
+ BulletMultiThreaded/btThreadSupportInterface.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuConvexPenetrationDepthSolver.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuPreferredPenetrationDirections.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuLocalSupport.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h \
+ BulletMultiThreaded/SpuGatheringCollisionDispatcher.h \
+ BulletMultiThreaded/SpuFakeDma.h BulletMultiThreaded/SpuSync.h \
+ BulletMultiThreaded/SpuCollisionObjectWrapper.h \
+ BulletMultiThreaded/SpuDoubleBuffer.h \
+ BulletMultiThreaded/SpuCollisionTaskProcess.h \
+ BulletMultiThreaded/PosixThreadSupport.h \
+ BulletMultiThreaded/SpuLibspe2Support.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/Box.h
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@am_libBulletMultiThreaded_la_OBJECTS = libBulletMultiThreaded_la-SpuCollisionObjectWrapper.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-SpuSampleTask.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-SpuLibspe2Support.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-SpuContactResult.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-SpuGatheringCollisionTask.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-SpuMinkowskiPenetrationDepthSolver.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-SpuCollisionShapes.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-btThreadSupportInterface.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-SequentialThreadSupport.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-SpuGatheringCollisionDispatcher.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-Win32ThreadSupport.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-SpuFakeDma.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-PosixThreadSupport.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-SpuCollisionTaskProcess.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-SpuContactManifoldCollisionAlgorithm.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-SpuSampleTaskProcess.lo \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ libBulletMultiThreaded_la-boxBoxDistance.lo
+libBulletMultiThreaded_la_OBJECTS = \
+ $(am_libBulletMultiThreaded_la_OBJECTS)
+libBulletMultiThreaded_la_LINK = $(LIBTOOL) --tag=CXX \
+ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
+ $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@am_libBulletMultiThreaded_la_rpath = \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ -rpath $(libdir)
+libBulletSoftBody_la_LIBADD =
+am_libBulletSoftBody_la_OBJECTS = btDefaultSoftBodySolver.lo \
+ btSoftBodyRigidBodyCollisionConfiguration.lo btSoftBody.lo \
+ btSoftRigidCollisionAlgorithm.lo \
+ btSoftBodyConcaveCollisionAlgorithm.lo \
+ btSoftRigidDynamicsWorld.lo btSoftBodyHelpers.lo \
+ btSoftSoftCollisionAlgorithm.lo
+libBulletSoftBody_la_OBJECTS = $(am_libBulletSoftBody_la_OBJECTS)
+@CONDITIONAL_BUILD_MULTITHREADED_FALSE@am_libBulletSoftBody_la_rpath = \
+@CONDITIONAL_BUILD_MULTITHREADED_FALSE@ -rpath $(libdir)
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@am_libBulletSoftBody_la_rpath = \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ -rpath $(libdir)
+libLinearMath_la_LIBADD =
+am_libLinearMath_la_OBJECTS = btQuickprof.lo btGeometryUtil.lo \
+ btAlignedAllocator.lo btSerializer.lo btConvexHull.lo \
+ btPolarDecomposition.lo btVector3.lo btConvexHullComputer.lo
+libLinearMath_la_OBJECTS = $(am_libLinearMath_la_OBJECTS)
+@CONDITIONAL_BUILD_MULTITHREADED_FALSE@am_libLinearMath_la_rpath = \
+@CONDITIONAL_BUILD_MULTITHREADED_FALSE@ -rpath $(libdir)
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@am_libLinearMath_la_rpath = \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ -rpath $(libdir)
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+am__mv = mv -f
+CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+CXXLD = $(CXX)
+CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
+SOURCES = $(libBulletCollision_la_SOURCES) \
+ $(libBulletDynamics_la_SOURCES) \
+ $(libBulletMultiThreaded_la_SOURCES) \
+ $(libBulletSoftBody_la_SOURCES) $(libLinearMath_la_SOURCES)
+DIST_SOURCES = $(libBulletCollision_la_SOURCES) \
+ $(libBulletDynamics_la_SOURCES) \
+ $(am__libBulletMultiThreaded_la_SOURCES_DIST) \
+ $(libBulletSoftBody_la_SOURCES) $(libLinearMath_la_SOURCES)
+am__nobase_bullet_include_HEADERS_DIST = btBulletDynamicsCommon.h \
+ Bullet-C-Api.h btBulletCollisionCommon.h \
+ BulletMultiThreaded/PosixThreadSupport.h \
+ BulletMultiThreaded/vectormath/scalar/cpp/mat_aos.h \
+ BulletMultiThreaded/vectormath/scalar/cpp/vec_aos.h \
+ BulletMultiThreaded/vectormath/scalar/cpp/quat_aos.h \
+ BulletMultiThreaded/vectormath/scalar/cpp/vectormath_aos.h \
+ BulletMultiThreaded/PpuAddressSpace.h \
+ BulletMultiThreaded/SpuCollisionTaskProcess.h \
+ BulletMultiThreaded/PlatformDefinitions.h \
+ BulletMultiThreaded/vectormath2bullet.h \
+ BulletMultiThreaded/SpuGatheringCollisionDispatcher.h \
+ BulletMultiThreaded/SpuCollisionObjectWrapper.h \
+ BulletMultiThreaded/SpuSampleTaskProcess.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/Box.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuLocalSupport.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuConvexPenetrationDepthSolver.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h \
+ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuPreferredPenetrationDirections.h \
+ BulletMultiThreaded/SpuSync.h \
+ BulletMultiThreaded/btThreadSupportInterface.h \
+ BulletMultiThreaded/SpuLibspe2Support.h \
+ BulletMultiThreaded/SpuSampleTask/SpuSampleTask.h \
+ BulletMultiThreaded/SpuFakeDma.h \
+ BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.h \
+ BulletMultiThreaded/SpuDoubleBuffer.h \
+ BulletMultiThreaded/Win32ThreadSupport.h \
+ BulletMultiThreaded/SequentialThreadSupport.h \
+ BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.h \
+ BulletSoftBody/btSoftBodyInternals.h \
+ BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h \
+ BulletSoftBody/btSoftSoftCollisionAlgorithm.h \
+ BulletSoftBody/btSoftBody.h BulletSoftBody/btSoftBodyHelpers.h \
+ BulletSoftBody/btSparseSDF.h \
+ BulletSoftBody/btSoftRigidCollisionAlgorithm.h \
+ BulletSoftBody/btSoftRigidDynamicsWorld.h \
+ BulletDynamics/Vehicle/btRaycastVehicle.h \
+ BulletDynamics/Vehicle/btWheelInfo.h \
+ BulletDynamics/Vehicle/btVehicleRaycaster.h \
+ BulletDynamics/Dynamics/btActionInterface.h \
+ BulletDynamics/Dynamics/btRigidBody.h \
+ BulletDynamics/Dynamics/btDynamicsWorld.h \
+ BulletDynamics/Dynamics/btSimpleDynamicsWorld.h \
+ BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h \
+ BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h \
+ BulletDynamics/ConstraintSolver/btSolverConstraint.h \
+ BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h \
+ BulletDynamics/ConstraintSolver/btTypedConstraint.h \
+ BulletDynamics/ConstraintSolver/btSliderConstraint.h \
+ BulletDynamics/ConstraintSolver/btConstraintSolver.h \
+ BulletDynamics/ConstraintSolver/btContactConstraint.h \
+ BulletDynamics/ConstraintSolver/btContactSolverInfo.h \
+ BulletDynamics/ConstraintSolver/btGearConstraint.h \
+ BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h \
+ BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h \
+ BulletDynamics/ConstraintSolver/btJacobianEntry.h \
+ BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h \
+ BulletDynamics/ConstraintSolver/btConeTwistConstraint.h \
+ BulletDynamics/ConstraintSolver/btHingeConstraint.h \
+ BulletDynamics/ConstraintSolver/btHinge2Constraint.h \
+ BulletDynamics/ConstraintSolver/btUniversalConstraint.h \
+ BulletDynamics/ConstraintSolver/btSolverBody.h \
+ BulletDynamics/Character/btCharacterControllerInterface.h \
+ BulletDynamics/Character/btKinematicCharacterController.h \
+ BulletCollision/CollisionShapes/btShapeHull.h \
+ BulletCollision/CollisionShapes/btConcaveShape.h \
+ BulletCollision/CollisionShapes/btCollisionMargin.h \
+ BulletCollision/CollisionShapes/btCompoundShape.h \
+ BulletCollision/CollisionShapes/btConvexHullShape.h \
+ BulletCollision/CollisionShapes/btCylinderShape.h \
+ BulletCollision/CollisionShapes/btTriangleMesh.h \
+ BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h \
+ BulletCollision/CollisionShapes/btUniformScalingShape.h \
+ BulletCollision/CollisionShapes/btConvexPointCloudShape.h \
+ BulletCollision/CollisionShapes/btTetrahedronShape.h \
+ BulletCollision/CollisionShapes/btCapsuleShape.h \
+ BulletCollision/CollisionShapes/btSphereShape.h \
+ BulletCollision/CollisionShapes/btMultiSphereShape.h \
+ BulletCollision/CollisionShapes/btConvexInternalShape.h \
+ BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h \
+ BulletCollision/CollisionShapes/btStridingMeshInterface.h \
+ BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h \
+ BulletCollision/CollisionShapes/btEmptyShape.h \
+ BulletCollision/CollisionShapes/btOptimizedBvh.h \
+ BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h \
+ BulletCollision/CollisionShapes/btTriangleCallback.h \
+ BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h \
+ BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h \
+ BulletCollision/CollisionShapes/btTriangleInfoMap.h \
+ BulletCollision/CollisionShapes/btTriangleBuffer.h \
+ BulletCollision/CollisionShapes/btConvexShape.h \
+ BulletCollision/CollisionShapes/btConvex2dShape.h \
+ BulletCollision/CollisionShapes/btStaticPlaneShape.h \
+ BulletCollision/CollisionShapes/btConeShape.h \
+ BulletCollision/CollisionShapes/btCollisionShape.h \
+ BulletCollision/CollisionShapes/btTriangleShape.h \
+ BulletCollision/CollisionShapes/btBoxShape.h \
+ BulletCollision/CollisionShapes/btBox2dShape.h \
+ BulletCollision/CollisionShapes/btMinkowskiSumShape.h \
+ BulletCollision/CollisionShapes/btTriangleMeshShape.h \
+ BulletCollision/CollisionShapes/btMaterial.h \
+ BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h \
+ BulletCollision/CollisionShapes/btPolyhedralConvexShape.h \
+ BulletCollision/NarrowPhaseCollision/btConvexCast.h \
+ BulletCollision/NarrowPhaseCollision/btGjkEpa2.h \
+ BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h \
+ BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h \
+ BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h \
+ BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h \
+ BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h \
+ BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h \
+ BulletCollision/NarrowPhaseCollision/btPersistentManifold.h \
+ BulletCollision/NarrowPhaseCollision/btManifoldPoint.h \
+ BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h \
+ BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h \
+ BulletCollision/NarrowPhaseCollision/btRaycastCallback.h \
+ BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h \
+ BulletCollision/NarrowPhaseCollision/btPointCollector.h \
+ BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h \
+ BulletCollision/BroadphaseCollision/btDbvt.h \
+ BulletCollision/BroadphaseCollision/btDispatcher.h \
+ BulletCollision/BroadphaseCollision/btDbvtBroadphase.h \
+ BulletCollision/BroadphaseCollision/btSimpleBroadphase.h \
+ BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h \
+ BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h \
+ BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h \
+ BulletCollision/BroadphaseCollision/btQuantizedBvh.h \
+ BulletCollision/BroadphaseCollision/btAxisSweep3.h \
+ BulletCollision/BroadphaseCollision/btBroadphaseInterface.h \
+ BulletCollision/BroadphaseCollision/btOverlappingPairCache.h \
+ BulletCollision/BroadphaseCollision/btBroadphaseProxy.h \
+ BulletCollision/CollisionDispatch/btUnionFind.h \
+ BulletCollision/CollisionDispatch/btCollisionConfiguration.h \
+ BulletCollision/CollisionDispatch/btCollisionDispatcher.h \
+ BulletCollision/CollisionDispatch/SphereTriangleDetector.h \
+ BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btCollisionWorld.h \
+ BulletCollision/CollisionDispatch/btCollisionCreateFunc.h \
+ BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h \
+ BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h \
+ BulletCollision/CollisionDispatch/btCollisionObject.h \
+ BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h \
+ BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h \
+ BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btGhostObject.h \
+ BulletCollision/CollisionDispatch/btSimulationIslandManager.h \
+ BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btBoxBoxDetector.h \
+ BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btInternalEdgeUtility.h \
+ BulletCollision/CollisionDispatch/btManifoldResult.h \
+ BulletCollision/Gimpact/gim_memory.h \
+ BulletCollision/Gimpact/gim_clip_polygon.h \
+ BulletCollision/Gimpact/gim_bitset.h \
+ BulletCollision/Gimpact/gim_linear_math.h \
+ BulletCollision/Gimpact/btGeometryOperations.h \
+ BulletCollision/Gimpact/btGImpactCollisionAlgorithm.h \
+ BulletCollision/Gimpact/btGImpactBvh.h \
+ BulletCollision/Gimpact/gim_box_set.h \
+ BulletCollision/Gimpact/gim_array.h \
+ BulletCollision/Gimpact/btGImpactShape.h \
+ BulletCollision/Gimpact/btTriangleShapeEx.h \
+ BulletCollision/Gimpact/btClipPolygon.h \
+ BulletCollision/Gimpact/gim_box_collision.h \
+ BulletCollision/Gimpact/gim_tri_collision.h \
+ BulletCollision/Gimpact/gim_geometry.h \
+ BulletCollision/Gimpact/gim_math.h \
+ BulletCollision/Gimpact/btQuantization.h \
+ BulletCollision/Gimpact/btGImpactQuantizedBvh.h \
+ BulletCollision/Gimpact/gim_geom_types.h \
+ BulletCollision/Gimpact/gim_basic_geometry_operations.h \
+ BulletCollision/Gimpact/gim_contact.h \
+ BulletCollision/Gimpact/gim_hash_table.h \
+ BulletCollision/Gimpact/gim_radixsort.h \
+ BulletCollision/Gimpact/btGImpactMassUtil.h \
+ BulletCollision/Gimpact/btGenericPoolAllocator.h \
+ BulletCollision/Gimpact/btBoxCollision.h \
+ BulletCollision/Gimpact/btContactProcessing.h \
+ LinearMath/btGeometryUtil.h LinearMath/btConvexHull.h \
+ LinearMath/btList.h LinearMath/btMatrix3x3.h \
+ LinearMath/btVector3.h LinearMath/btPoolAllocator.h \
+ LinearMath/btPolarDecomposition.h LinearMath/btScalar.h \
+ LinearMath/btDefaultMotionState.h LinearMath/btTransform.h \
+ LinearMath/btQuadWord.h LinearMath/btAabbUtil2.h \
+ LinearMath/btTransformUtil.h LinearMath/btRandom.h \
+ LinearMath/btQuaternion.h LinearMath/btMinMax.h \
+ LinearMath/btMotionState.h LinearMath/btIDebugDraw.h \
+ LinearMath/btAlignedAllocator.h LinearMath/btStackAlloc.h \
+ LinearMath/btAlignedObjectArray.h LinearMath/btHashMap.h \
+ LinearMath/btQuickprof.h LinearMath/btSerializer.h
+HEADERS = $(nobase_bullet_include_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GL_LIBS = @GL_LIBS@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+opengl_LIBS = @opengl_LIBS@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+bullet_includedir = $(includedir)/bullet
+nobase_bullet_include_HEADERS = btBulletDynamicsCommon.h \
+ Bullet-C-Api.h btBulletCollisionCommon.h $(am__append_1) \
+ BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.h \
+ BulletSoftBody/btSoftBodyInternals.h \
+ BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h \
+ BulletSoftBody/btSoftSoftCollisionAlgorithm.h \
+ BulletSoftBody/btSoftBody.h BulletSoftBody/btSoftBodyHelpers.h \
+ BulletSoftBody/btSparseSDF.h \
+ BulletSoftBody/btSoftRigidCollisionAlgorithm.h \
+ BulletSoftBody/btSoftRigidDynamicsWorld.h \
+ BulletDynamics/Vehicle/btRaycastVehicle.h \
+ BulletDynamics/Vehicle/btWheelInfo.h \
+ BulletDynamics/Vehicle/btVehicleRaycaster.h \
+ BulletDynamics/Dynamics/btActionInterface.h \
+ BulletDynamics/Dynamics/btRigidBody.h \
+ BulletDynamics/Dynamics/btDynamicsWorld.h \
+ BulletDynamics/Dynamics/btSimpleDynamicsWorld.h \
+ BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h \
+ BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h \
+ BulletDynamics/ConstraintSolver/btSolverConstraint.h \
+ BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h \
+ BulletDynamics/ConstraintSolver/btTypedConstraint.h \
+ BulletDynamics/ConstraintSolver/btSliderConstraint.h \
+ BulletDynamics/ConstraintSolver/btConstraintSolver.h \
+ BulletDynamics/ConstraintSolver/btContactConstraint.h \
+ BulletDynamics/ConstraintSolver/btContactSolverInfo.h \
+ BulletDynamics/ConstraintSolver/btGearConstraint.h \
+ BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h \
+ BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h \
+ BulletDynamics/ConstraintSolver/btJacobianEntry.h \
+ BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h \
+ BulletDynamics/ConstraintSolver/btConeTwistConstraint.h \
+ BulletDynamics/ConstraintSolver/btHingeConstraint.h \
+ BulletDynamics/ConstraintSolver/btHinge2Constraint.h \
+ BulletDynamics/ConstraintSolver/btUniversalConstraint.h \
+ BulletDynamics/ConstraintSolver/btSolverBody.h \
+ BulletDynamics/Character/btCharacterControllerInterface.h \
+ BulletDynamics/Character/btKinematicCharacterController.h \
+ BulletCollision/CollisionShapes/btShapeHull.h \
+ BulletCollision/CollisionShapes/btConcaveShape.h \
+ BulletCollision/CollisionShapes/btCollisionMargin.h \
+ BulletCollision/CollisionShapes/btCompoundShape.h \
+ BulletCollision/CollisionShapes/btConvexHullShape.h \
+ BulletCollision/CollisionShapes/btCylinderShape.h \
+ BulletCollision/CollisionShapes/btTriangleMesh.h \
+ BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h \
+ BulletCollision/CollisionShapes/btUniformScalingShape.h \
+ BulletCollision/CollisionShapes/btConvexPointCloudShape.h \
+ BulletCollision/CollisionShapes/btTetrahedronShape.h \
+ BulletCollision/CollisionShapes/btCapsuleShape.h \
+ BulletCollision/CollisionShapes/btSphereShape.h \
+ BulletCollision/CollisionShapes/btMultiSphereShape.h \
+ BulletCollision/CollisionShapes/btConvexInternalShape.h \
+ BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h \
+ BulletCollision/CollisionShapes/btStridingMeshInterface.h \
+ BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h \
+ BulletCollision/CollisionShapes/btEmptyShape.h \
+ BulletCollision/CollisionShapes/btOptimizedBvh.h \
+ BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h \
+ BulletCollision/CollisionShapes/btTriangleCallback.h \
+ BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h \
+ BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h \
+ BulletCollision/CollisionShapes/btTriangleInfoMap.h \
+ BulletCollision/CollisionShapes/btTriangleBuffer.h \
+ BulletCollision/CollisionShapes/btConvexShape.h \
+ BulletCollision/CollisionShapes/btConvex2dShape.h \
+ BulletCollision/CollisionShapes/btStaticPlaneShape.h \
+ BulletCollision/CollisionShapes/btConeShape.h \
+ BulletCollision/CollisionShapes/btCollisionShape.h \
+ BulletCollision/CollisionShapes/btTriangleShape.h \
+ BulletCollision/CollisionShapes/btBoxShape.h \
+ BulletCollision/CollisionShapes/btBox2dShape.h \
+ BulletCollision/CollisionShapes/btMinkowskiSumShape.h \
+ BulletCollision/CollisionShapes/btTriangleMeshShape.h \
+ BulletCollision/CollisionShapes/btMaterial.h \
+ BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h \
+ BulletCollision/CollisionShapes/btPolyhedralConvexShape.h \
+ BulletCollision/NarrowPhaseCollision/btConvexCast.h \
+ BulletCollision/NarrowPhaseCollision/btGjkEpa2.h \
+ BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h \
+ BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h \
+ BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h \
+ BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h \
+ BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h \
+ BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h \
+ BulletCollision/NarrowPhaseCollision/btPersistentManifold.h \
+ BulletCollision/NarrowPhaseCollision/btManifoldPoint.h \
+ BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h \
+ BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h \
+ BulletCollision/NarrowPhaseCollision/btRaycastCallback.h \
+ BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h \
+ BulletCollision/NarrowPhaseCollision/btPointCollector.h \
+ BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h \
+ BulletCollision/BroadphaseCollision/btDbvt.h \
+ BulletCollision/BroadphaseCollision/btDispatcher.h \
+ BulletCollision/BroadphaseCollision/btDbvtBroadphase.h \
+ BulletCollision/BroadphaseCollision/btSimpleBroadphase.h \
+ BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h \
+ BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h \
+ BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h \
+ BulletCollision/BroadphaseCollision/btQuantizedBvh.h \
+ BulletCollision/BroadphaseCollision/btAxisSweep3.h \
+ BulletCollision/BroadphaseCollision/btBroadphaseInterface.h \
+ BulletCollision/BroadphaseCollision/btOverlappingPairCache.h \
+ BulletCollision/BroadphaseCollision/btBroadphaseProxy.h \
+ BulletCollision/CollisionDispatch/btUnionFind.h \
+ BulletCollision/CollisionDispatch/btCollisionConfiguration.h \
+ BulletCollision/CollisionDispatch/btCollisionDispatcher.h \
+ BulletCollision/CollisionDispatch/SphereTriangleDetector.h \
+ BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btCollisionWorld.h \
+ BulletCollision/CollisionDispatch/btCollisionCreateFunc.h \
+ BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h \
+ BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h \
+ BulletCollision/CollisionDispatch/btCollisionObject.h \
+ BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h \
+ BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h \
+ BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btGhostObject.h \
+ BulletCollision/CollisionDispatch/btSimulationIslandManager.h \
+ BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btBoxBoxDetector.h \
+ BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btInternalEdgeUtility.h \
+ BulletCollision/CollisionDispatch/btManifoldResult.h \
+ BulletCollision/Gimpact/gim_memory.h \
+ BulletCollision/Gimpact/gim_clip_polygon.h \
+ BulletCollision/Gimpact/gim_bitset.h \
+ BulletCollision/Gimpact/gim_linear_math.h \
+ BulletCollision/Gimpact/btGeometryOperations.h \
+ BulletCollision/Gimpact/btGImpactCollisionAlgorithm.h \
+ BulletCollision/Gimpact/btGImpactBvh.h \
+ BulletCollision/Gimpact/gim_box_set.h \
+ BulletCollision/Gimpact/gim_array.h \
+ BulletCollision/Gimpact/btGImpactShape.h \
+ BulletCollision/Gimpact/btTriangleShapeEx.h \
+ BulletCollision/Gimpact/btClipPolygon.h \
+ BulletCollision/Gimpact/gim_box_collision.h \
+ BulletCollision/Gimpact/gim_tri_collision.h \
+ BulletCollision/Gimpact/gim_geometry.h \
+ BulletCollision/Gimpact/gim_math.h \
+ BulletCollision/Gimpact/btQuantization.h \
+ BulletCollision/Gimpact/btGImpactQuantizedBvh.h \
+ BulletCollision/Gimpact/gim_geom_types.h \
+ BulletCollision/Gimpact/gim_basic_geometry_operations.h \
+ BulletCollision/Gimpact/gim_contact.h \
+ BulletCollision/Gimpact/gim_hash_table.h \
+ BulletCollision/Gimpact/gim_radixsort.h \
+ BulletCollision/Gimpact/btGImpactMassUtil.h \
+ BulletCollision/Gimpact/btGenericPoolAllocator.h \
+ BulletCollision/Gimpact/btBoxCollision.h \
+ BulletCollision/Gimpact/btContactProcessing.h \
+ LinearMath/btGeometryUtil.h LinearMath/btConvexHull.h \
+ LinearMath/btList.h LinearMath/btMatrix3x3.h \
+ LinearMath/btVector3.h LinearMath/btPoolAllocator.h \
+ LinearMath/btPolarDecomposition.h LinearMath/btScalar.h \
+ LinearMath/btDefaultMotionState.h LinearMath/btTransform.h \
+ LinearMath/btQuadWord.h LinearMath/btAabbUtil2.h \
+ LinearMath/btTransformUtil.h LinearMath/btRandom.h \
+ LinearMath/btQuaternion.h LinearMath/btMinMax.h \
+ LinearMath/btMotionState.h LinearMath/btIDebugDraw.h \
+ LinearMath/btAlignedAllocator.h LinearMath/btStackAlloc.h \
+ LinearMath/btAlignedObjectArray.h LinearMath/btHashMap.h \
+ LinearMath/btQuickprof.h LinearMath/btSerializer.h
+@CONDITIONAL_BUILD_MULTITHREADED_FALSE@lib_LTLIBRARIES = libLinearMath.la libBulletCollision.la libBulletDynamics.la libBulletSoftBody.la
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@lib_LTLIBRARIES = libLinearMath.la libBulletCollision.la libBulletDynamics.la libBulletSoftBody.la libBulletMultiThreaded.la
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@libBulletMultiThreaded_la_CXXFLAGS = ${CXXFLAGS} -I./BulletMultiThreaded/vectormath/scalar/cpp
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@libBulletMultiThreaded_la_SOURCES = \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuCollisionObjectWrapper.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuSampleTask/SpuSampleTask.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuLibspe2Support.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/btThreadSupportInterface.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SequentialThreadSupport.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/Win32ThreadSupport.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuFakeDma.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/PosixThreadSupport.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuCollisionTaskProcess.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuSampleTaskProcess.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuSampleTask/SpuSampleTask.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/PpuAddressSpace.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuSampleTaskProcess.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SequentialThreadSupport.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/PlatformDefinitions.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/Win32ThreadSupport.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/btThreadSupportInterface.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuConvexPenetrationDepthSolver.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuPreferredPenetrationDirections.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuLocalSupport.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuGatheringCollisionDispatcher.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuFakeDma.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuSync.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuCollisionObjectWrapper.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuDoubleBuffer.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuCollisionTaskProcess.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/PosixThreadSupport.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuLibspe2Support.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.h \
+@CONDITIONAL_BUILD_MULTITHREADED_TRUE@ BulletMultiThreaded/SpuNarrowPhaseCollisionTask/Box.h
+
+libLinearMath_la_SOURCES = \
+ LinearMath/btQuickprof.cpp \
+ LinearMath/btGeometryUtil.cpp \
+ LinearMath/btAlignedAllocator.cpp \
+ LinearMath/btSerializer.cpp \
+ LinearMath/btConvexHull.cpp \
+ LinearMath/btPolarDecomposition.cpp \
+ LinearMath/btVector3.cpp \
+ LinearMath/btConvexHullComputer.cpp \
+ LinearMath/btHashMap.h \
+ LinearMath/btConvexHull.h \
+ LinearMath/btAabbUtil2.h \
+ LinearMath/btGeometryUtil.h \
+ LinearMath/btQuadWord.h \
+ LinearMath/btPoolAllocator.h \
+ LinearMath/btPolarDecomposition.h \
+ LinearMath/btScalar.h \
+ LinearMath/btMinMax.h \
+ LinearMath/btVector3.h \
+ LinearMath/btList.h \
+ LinearMath/btStackAlloc.h \
+ LinearMath/btMatrix3x3.h \
+ LinearMath/btMotionState.h \
+ LinearMath/btAlignedAllocator.h \
+ LinearMath/btQuaternion.h \
+ LinearMath/btAlignedObjectArray.h \
+ LinearMath/btQuickprof.h \
+ LinearMath/btSerializer.h \
+ LinearMath/btTransformUtil.h \
+ LinearMath/btTransform.h \
+ LinearMath/btDefaultMotionState.h \
+ LinearMath/btIDebugDraw.h \
+ LinearMath/btRandom.h
+
+libBulletCollision_la_SOURCES = \
+ BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp \
+ BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp \
+ BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp \
+ BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp \
+ BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp \
+ BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp \
+ BulletCollision/NarrowPhaseCollision/btConvexCast.cpp \
+ BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp \
+ BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp \
+ BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp \
+ BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp \
+ BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp \
+ BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp \
+ BulletCollision/CollisionDispatch/btCollisionObject.cpp \
+ BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp \
+ BulletCollision/CollisionDispatch/btGhostObject.cpp \
+ BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp \
+ BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp \
+ BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp \
+ BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp \
+ BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp \
+ BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp \
+ BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp \
+ BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp \
+ BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp \
+ BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp \
+ BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp \
+ BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp \
+ BulletCollision/CollisionDispatch/btManifoldResult.cpp \
+ BulletCollision/CollisionDispatch/btCollisionWorld.cpp \
+ BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp \
+ BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp \
+ BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp \
+ BulletCollision/CollisionDispatch/btUnionFind.cpp \
+ BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp \
+ BulletCollision/CollisionShapes/btTetrahedronShape.cpp \
+ BulletCollision/CollisionShapes/btShapeHull.cpp \
+ BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp \
+ BulletCollision/CollisionShapes/btCompoundShape.cpp \
+ BulletCollision/CollisionShapes/btConeShape.cpp \
+ BulletCollision/CollisionShapes/btConvexPolyhedron.cpp \
+ BulletCollision/CollisionShapes/btMultiSphereShape.cpp \
+ BulletCollision/CollisionShapes/btUniformScalingShape.cpp \
+ BulletCollision/CollisionShapes/btSphereShape.cpp \
+ BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp \
+ BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp \
+ BulletCollision/CollisionShapes/btTriangleMeshShape.cpp \
+ BulletCollision/CollisionShapes/btTriangleBuffer.cpp \
+ BulletCollision/CollisionShapes/btStaticPlaneShape.cpp \
+ BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp \
+ BulletCollision/CollisionShapes/btEmptyShape.cpp \
+ BulletCollision/CollisionShapes/btCollisionShape.cpp \
+ BulletCollision/CollisionShapes/btConvexShape.cpp \
+ BulletCollision/CollisionShapes/btConvex2dShape.cpp \
+ BulletCollision/CollisionShapes/btConvexInternalShape.cpp \
+ BulletCollision/CollisionShapes/btConvexHullShape.cpp \
+ BulletCollision/CollisionShapes/btTriangleCallback.cpp \
+ BulletCollision/CollisionShapes/btCapsuleShape.cpp \
+ BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp \
+ BulletCollision/CollisionShapes/btConcaveShape.cpp \
+ BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp \
+ BulletCollision/CollisionShapes/btBoxShape.cpp \
+ BulletCollision/CollisionShapes/btBox2dShape.cpp \
+ BulletCollision/CollisionShapes/btOptimizedBvh.cpp \
+ BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp \
+ BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp \
+ BulletCollision/CollisionShapes/btCylinderShape.cpp \
+ BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp \
+ BulletCollision/CollisionShapes/btStridingMeshInterface.cpp \
+ BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp \
+ BulletCollision/CollisionShapes/btTriangleMesh.cpp \
+ BulletCollision/BroadphaseCollision/btAxisSweep3.cpp \
+ BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp \
+ BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp \
+ BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp \
+ BulletCollision/BroadphaseCollision/btDispatcher.cpp \
+ BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp \
+ BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp \
+ BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp \
+ BulletCollision/BroadphaseCollision/btDbvt.cpp \
+ BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp \
+ BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h \
+ BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h \
+ BulletCollision/NarrowPhaseCollision/btConvexCast.h \
+ BulletCollision/NarrowPhaseCollision/btGjkEpa2.h \
+ BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h \
+ BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h \
+ BulletCollision/NarrowPhaseCollision/btPointCollector.h \
+ BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h \
+ BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h \
+ BulletCollision/NarrowPhaseCollision/btRaycastCallback.h \
+ BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h \
+ BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h \
+ BulletCollision/NarrowPhaseCollision/btPersistentManifold.h \
+ BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h \
+ BulletCollision/NarrowPhaseCollision/btManifoldPoint.h \
+ BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h \
+ BulletCollision/CollisionDispatch/btCollisionObject.h \
+ BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h \
+ BulletCollision/CollisionDispatch/btGhostObject.h \
+ BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btCollisionCreateFunc.h \
+ BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h \
+ BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h \
+ BulletCollision/CollisionDispatch/btBoxBoxDetector.h \
+ BulletCollision/CollisionDispatch/btCollisionDispatcher.h \
+ BulletCollision/CollisionDispatch/SphereTriangleDetector.h \
+ BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btUnionFind.h \
+ BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btSimulationIslandManager.h \
+ BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h \
+ BulletCollision/CollisionDispatch/btCollisionWorld.h \
+ BulletCollision/CollisionDispatch/btInternalEdgeUtility.h \
+ BulletCollision/CollisionDispatch/btManifoldResult.h \
+ BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h \
+ BulletCollision/CollisionDispatch/btCollisionConfiguration.h \
+ BulletCollision/CollisionShapes/btConvexShape.h \
+ BulletCollision/CollisionShapes/btConvex2dShape.h \
+ BulletCollision/CollisionShapes/btTriangleCallback.h \
+ BulletCollision/CollisionShapes/btPolyhedralConvexShape.h \
+ BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h \
+ BulletCollision/CollisionShapes/btCompoundShape.h \
+ BulletCollision/CollisionShapes/btBoxShape.h \
+ BulletCollision/CollisionShapes/btBox2dShape.h \
+ BulletCollision/CollisionShapes/btMultiSphereShape.h \
+ BulletCollision/CollisionShapes/btCollisionMargin.h \
+ BulletCollision/CollisionShapes/btConcaveShape.h \
+ BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h \
+ BulletCollision/CollisionShapes/btEmptyShape.h \
+ BulletCollision/CollisionShapes/btUniformScalingShape.h \
+ BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h \
+ BulletCollision/CollisionShapes/btMaterial.h \
+ BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h \
+ BulletCollision/CollisionShapes/btTriangleInfoMap.h \
+ BulletCollision/CollisionShapes/btSphereShape.h \
+ BulletCollision/CollisionShapes/btConvexPointCloudShape.h \
+ BulletCollision/CollisionShapes/btCapsuleShape.h \
+ BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h \
+ BulletCollision/CollisionShapes/btCollisionShape.h \
+ BulletCollision/CollisionShapes/btStaticPlaneShape.h \
+ BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h \
+ BulletCollision/CollisionShapes/btTriangleMeshShape.h \
+ BulletCollision/CollisionShapes/btStridingMeshInterface.h \
+ BulletCollision/CollisionShapes/btTriangleMesh.h \
+ BulletCollision/CollisionShapes/btTriangleBuffer.h \
+ BulletCollision/CollisionShapes/btShapeHull.h \
+ BulletCollision/CollisionShapes/btMinkowskiSumShape.h \
+ BulletCollision/CollisionShapes/btOptimizedBvh.h \
+ BulletCollision/CollisionShapes/btTriangleShape.h \
+ BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.h \
+ BulletCollision/CollisionShapes/btCylinderShape.h \
+ BulletCollision/CollisionShapes/btTetrahedronShape.h \
+ BulletCollision/CollisionShapes/btConvexInternalShape.h \
+ BulletCollision/CollisionShapes/btConeShape.h \
+ BulletCollision/CollisionShapes/btConvexHullShape.h \
+ BulletCollision/BroadphaseCollision/btAxisSweep3.h \
+ BulletCollision/BroadphaseCollision/btDbvtBroadphase.h \
+ BulletCollision/BroadphaseCollision/btSimpleBroadphase.h \
+ BulletCollision/BroadphaseCollision/btMultiSapBroadphase.h \
+ BulletCollision/BroadphaseCollision/btDbvt.h \
+ BulletCollision/BroadphaseCollision/btOverlappingPairCallback.h \
+ BulletCollision/BroadphaseCollision/btDispatcher.h \
+ BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h \
+ BulletCollision/BroadphaseCollision/btBroadphaseProxy.h \
+ BulletCollision/BroadphaseCollision/btOverlappingPairCache.h \
+ BulletCollision/BroadphaseCollision/btBroadphaseInterface.h \
+ BulletCollision/BroadphaseCollision/btQuantizedBvh.h \
+ BulletCollision/Gimpact/btGImpactBvh.cpp\
+ BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp\
+ BulletCollision/Gimpact/btTriangleShapeEx.cpp\
+ BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp\
+ BulletCollision/Gimpact/btGImpactShape.cpp\
+ BulletCollision/Gimpact/gim_box_set.cpp\
+ BulletCollision/Gimpact/gim_contact.cpp\
+ BulletCollision/Gimpact/gim_memory.cpp\
+ BulletCollision/Gimpact/gim_tri_collision.cpp
+
+libBulletDynamics_la_SOURCES = \
+ BulletDynamics/Dynamics/btRigidBody.cpp \
+ BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp \
+ BulletDynamics/Dynamics/Bullet-C-API.cpp \
+ BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp \
+ BulletDynamics/ConstraintSolver/btGearConstraint.cpp \
+ BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp \
+ BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp \
+ BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp \
+ BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp \
+ BulletDynamics/ConstraintSolver/btTypedConstraint.cpp \
+ BulletDynamics/ConstraintSolver/btContactConstraint.cpp \
+ BulletDynamics/ConstraintSolver/btSliderConstraint.cpp \
+ BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp \
+ BulletDynamics/ConstraintSolver/btHingeConstraint.cpp \
+ BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp \
+ BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp \
+ BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp \
+ BulletDynamics/Vehicle/btWheelInfo.cpp \
+ BulletDynamics/Vehicle/btRaycastVehicle.cpp \
+ BulletDynamics/Character/btKinematicCharacterController.cpp \
+ BulletDynamics/Character/btKinematicCharacterController.h \
+ BulletDynamics/Character/btCharacterControllerInterface.h \
+ BulletDynamics/Dynamics/btActionInterface.h \
+ BulletDynamics/Dynamics/btSimpleDynamicsWorld.h \
+ BulletDynamics/Dynamics/btRigidBody.h \
+ BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h \
+ BulletDynamics/Dynamics/btDynamicsWorld.h \
+ BulletDynamics/ConstraintSolver/btSolverBody.h \
+ BulletDynamics/ConstraintSolver/btConstraintSolver.h \
+ BulletDynamics/ConstraintSolver/btConeTwistConstraint.h \
+ BulletDynamics/ConstraintSolver/btTypedConstraint.h \
+ BulletDynamics/ConstraintSolver/btContactSolverInfo.h \
+ BulletDynamics/ConstraintSolver/btContactConstraint.h \
+ BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h \
+ BulletDynamics/ConstraintSolver/btJacobianEntry.h \
+ BulletDynamics/ConstraintSolver/btSolverConstraint.h \
+ BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h \
+ BulletDynamics/ConstraintSolver/btGearConstraint.h \
+ BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h \
+ BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h \
+ BulletDynamics/ConstraintSolver/btSliderConstraint.h \
+ BulletDynamics/ConstraintSolver/btHingeConstraint.h \
+ BulletDynamics/ConstraintSolver/btHinge2Constraint.h \
+ BulletDynamics/ConstraintSolver/btUniversalConstraint.h \
+ BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h \
+ BulletDynamics/Vehicle/btVehicleRaycaster.h \
+ BulletDynamics/Vehicle/btRaycastVehicle.h \
+ BulletDynamics/Vehicle/btWheelInfo.h
+
+libBulletSoftBody_la_SOURCES = \
+ BulletSoftBody/btDefaultSoftBodySolver.cpp \
+ BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp \
+ BulletSoftBody/btSoftBody.cpp \
+ BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp \
+ BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp \
+ BulletSoftBody/btSoftRigidDynamicsWorld.cpp \
+ BulletSoftBody/btSoftBodyHelpers.cpp \
+ BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp \
+ BulletSoftBody/btSparseSDF.h \
+ BulletSoftBody/btSoftRigidCollisionAlgorithm.h \
+ BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.h \
+ BulletSoftBody/btSoftBody.h \
+ BulletSoftBody/btSoftSoftCollisionAlgorithm.h \
+ BulletSoftBody/btSoftBodyInternals.h \
+ BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h \
+ BulletSoftBody/btSoftRigidDynamicsWorld.h \
+ BulletSoftBody/btSoftBodyHelpers.h
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .cpp .lo .o .obj
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu src/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+install-libLTLIBRARIES: $(lib_LTLIBRARIES)
+ @$(NORMAL_INSTALL)
+ test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
+ @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
+ list2=; for p in $$list; do \
+ if test -f $$p; then \
+ list2="$$list2 $$p"; \
+ else :; fi; \
+ done; \
+ test -z "$$list2" || { \
+ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
+ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
+ }
+
+uninstall-libLTLIBRARIES:
+ @$(NORMAL_UNINSTALL)
+ @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
+ for p in $$list; do \
+ $(am__strip_dir) \
+ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
+ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
+ done
+
+clean-libLTLIBRARIES:
+ -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
+ @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
+ test "$$dir" != "$$p" || dir=.; \
+ echo "rm -f \"$${dir}/so_locations\""; \
+ rm -f "$${dir}/so_locations"; \
+ done
+libBulletCollision.la: $(libBulletCollision_la_OBJECTS) $(libBulletCollision_la_DEPENDENCIES)
+ $(CXXLINK) $(am_libBulletCollision_la_rpath) $(libBulletCollision_la_OBJECTS) $(libBulletCollision_la_LIBADD) $(LIBS)
+libBulletDynamics.la: $(libBulletDynamics_la_OBJECTS) $(libBulletDynamics_la_DEPENDENCIES)
+ $(CXXLINK) $(am_libBulletDynamics_la_rpath) $(libBulletDynamics_la_OBJECTS) $(libBulletDynamics_la_LIBADD) $(LIBS)
+libBulletMultiThreaded.la: $(libBulletMultiThreaded_la_OBJECTS) $(libBulletMultiThreaded_la_DEPENDENCIES)
+ $(libBulletMultiThreaded_la_LINK) $(am_libBulletMultiThreaded_la_rpath) $(libBulletMultiThreaded_la_OBJECTS) $(libBulletMultiThreaded_la_LIBADD) $(LIBS)
+libBulletSoftBody.la: $(libBulletSoftBody_la_OBJECTS) $(libBulletSoftBody_la_DEPENDENCIES)
+ $(CXXLINK) $(am_libBulletSoftBody_la_rpath) $(libBulletSoftBody_la_OBJECTS) $(libBulletSoftBody_la_LIBADD) $(LIBS)
+libLinearMath.la: $(libLinearMath_la_OBJECTS) $(libLinearMath_la_DEPENDENCIES)
+ $(CXXLINK) $(am_libLinearMath_la_rpath) $(libLinearMath_la_OBJECTS) $(libLinearMath_la_LIBADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Bullet-C-API.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SphereTriangleDetector.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btActivatingCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btAlignedAllocator.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btAxisSweep3.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btBox2dBox2dCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btBox2dShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btBoxBoxCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btBoxBoxDetector.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btBoxShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btBroadphaseProxy.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btBvhTriangleMeshShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btCapsuleShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btCollisionDispatcher.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btCollisionObject.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btCollisionShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btCollisionWorld.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btCompoundCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btCompoundShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConcaveShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConeShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConeTwistConstraint.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btContactConstraint.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btContinuousConvexCollision.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConvex2dConvex2dAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConvex2dShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConvexCast.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConvexConcaveCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConvexConvexAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConvexHull.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConvexHullComputer.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConvexHullShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConvexInternalShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConvexPlaneCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConvexPointCloudShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConvexPolyhedron.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConvexShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btConvexTriangleMeshShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btCylinderShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btDbvt.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btDbvtBroadphase.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btDefaultCollisionConfiguration.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btDefaultSoftBodySolver.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btDiscreteDynamicsWorld.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btDispatcher.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btEmptyCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btEmptyShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btGImpactBvh.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btGImpactCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btGImpactQuantizedBvh.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btGImpactShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btGearConstraint.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btGeneric6DofConstraint.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btGeneric6DofSpringConstraint.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btGeometryUtil.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btGhostObject.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btGjkConvexCast.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btGjkEpa2.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btGjkEpaPenetrationDepthSolver.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btGjkPairDetector.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btHeightfieldTerrainShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btHinge2Constraint.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btHingeConstraint.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btInternalEdgeUtility.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btKinematicCharacterController.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btManifoldResult.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btMinkowskiPenetrationDepthSolver.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btMinkowskiSumShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btMultiSapBroadphase.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btMultiSphereShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btMultimaterialTriangleMeshShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btOptimizedBvh.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btOverlappingPairCache.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btPersistentManifold.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btPoint2PointConstraint.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btPolarDecomposition.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btPolyhedralContactClipping.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btPolyhedralConvexShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btQuantizedBvh.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btQuickprof.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btRaycastCallback.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btRaycastVehicle.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btRigidBody.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btScaledBvhTriangleMeshShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSequentialImpulseConstraintSolver.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSerializer.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btShapeHull.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSimpleBroadphase.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSimpleDynamicsWorld.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSimulationIslandManager.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSliderConstraint.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSoftBody.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSoftBodyConcaveCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSoftBodyHelpers.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSoftBodyRigidBodyCollisionConfiguration.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSoftRigidCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSoftRigidDynamicsWorld.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSoftSoftCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSolve2LinearConstraint.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSphereBoxCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSphereShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSphereSphereCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSphereTriangleCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btStaticPlaneShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btStridingMeshInterface.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btSubSimplexConvexCast.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btTetrahedronShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btTriangleBuffer.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btTriangleCallback.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btTriangleIndexVertexArray.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btTriangleIndexVertexMaterialArray.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btTriangleMesh.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btTriangleMeshShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btTriangleShapeEx.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btTypedConstraint.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btUniformScalingShape.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btUnionFind.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btUniversalConstraint.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btVector3.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btVoronoiSimplexSolver.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btWheelInfo.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gim_box_set.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gim_contact.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gim_memory.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gim_tri_collision.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-PosixThreadSupport.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-SequentialThreadSupport.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-SpuCollisionObjectWrapper.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-SpuCollisionShapes.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-SpuCollisionTaskProcess.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-SpuContactManifoldCollisionAlgorithm.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-SpuContactResult.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-SpuFakeDma.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-SpuGatheringCollisionDispatcher.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-SpuGatheringCollisionTask.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-SpuLibspe2Support.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-SpuMinkowskiPenetrationDepthSolver.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-SpuSampleTask.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-SpuSampleTaskProcess.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-Win32ThreadSupport.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-boxBoxDistance.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libBulletMultiThreaded_la-btThreadSupportInterface.Plo@am__quote@
+
+.cpp.o:
+@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
+
+.cpp.obj:
+@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.cpp.lo:
+@am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
+
+btRaycastCallback.lo: BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btRaycastCallback.lo -MD -MP -MF $(DEPDIR)/btRaycastCallback.Tpo -c -o btRaycastCallback.lo `test -f 'BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btRaycastCallback.Tpo $(DEPDIR)/btRaycastCallback.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp' object='btRaycastCallback.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btRaycastCallback.lo `test -f 'BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp
+
+btMinkowskiPenetrationDepthSolver.lo: BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btMinkowskiPenetrationDepthSolver.lo -MD -MP -MF $(DEPDIR)/btMinkowskiPenetrationDepthSolver.Tpo -c -o btMinkowskiPenetrationDepthSolver.lo `test -f 'BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btMinkowskiPenetrationDepthSolver.Tpo $(DEPDIR)/btMinkowskiPenetrationDepthSolver.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp' object='btMinkowskiPenetrationDepthSolver.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btMinkowskiPenetrationDepthSolver.lo `test -f 'BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp
+
+btSubSimplexConvexCast.lo: BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSubSimplexConvexCast.lo -MD -MP -MF $(DEPDIR)/btSubSimplexConvexCast.Tpo -c -o btSubSimplexConvexCast.lo `test -f 'BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSubSimplexConvexCast.Tpo $(DEPDIR)/btSubSimplexConvexCast.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp' object='btSubSimplexConvexCast.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSubSimplexConvexCast.lo `test -f 'BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp
+
+btGjkEpaPenetrationDepthSolver.lo: BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btGjkEpaPenetrationDepthSolver.lo -MD -MP -MF $(DEPDIR)/btGjkEpaPenetrationDepthSolver.Tpo -c -o btGjkEpaPenetrationDepthSolver.lo `test -f 'BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btGjkEpaPenetrationDepthSolver.Tpo $(DEPDIR)/btGjkEpaPenetrationDepthSolver.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp' object='btGjkEpaPenetrationDepthSolver.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btGjkEpaPenetrationDepthSolver.lo `test -f 'BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp
+
+btGjkConvexCast.lo: BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btGjkConvexCast.lo -MD -MP -MF $(DEPDIR)/btGjkConvexCast.Tpo -c -o btGjkConvexCast.lo `test -f 'BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btGjkConvexCast.Tpo $(DEPDIR)/btGjkConvexCast.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp' object='btGjkConvexCast.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btGjkConvexCast.lo `test -f 'BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp
+
+btPersistentManifold.lo: BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btPersistentManifold.lo -MD -MP -MF $(DEPDIR)/btPersistentManifold.Tpo -c -o btPersistentManifold.lo `test -f 'BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btPersistentManifold.Tpo $(DEPDIR)/btPersistentManifold.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp' object='btPersistentManifold.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btPersistentManifold.lo `test -f 'BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp
+
+btConvexCast.lo: BulletCollision/NarrowPhaseCollision/btConvexCast.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConvexCast.lo -MD -MP -MF $(DEPDIR)/btConvexCast.Tpo -c -o btConvexCast.lo `test -f 'BulletCollision/NarrowPhaseCollision/btConvexCast.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btConvexCast.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConvexCast.Tpo $(DEPDIR)/btConvexCast.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/NarrowPhaseCollision/btConvexCast.cpp' object='btConvexCast.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConvexCast.lo `test -f 'BulletCollision/NarrowPhaseCollision/btConvexCast.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btConvexCast.cpp
+
+btPolyhedralContactClipping.lo: BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btPolyhedralContactClipping.lo -MD -MP -MF $(DEPDIR)/btPolyhedralContactClipping.Tpo -c -o btPolyhedralContactClipping.lo `test -f 'BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btPolyhedralContactClipping.Tpo $(DEPDIR)/btPolyhedralContactClipping.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp' object='btPolyhedralContactClipping.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btPolyhedralContactClipping.lo `test -f 'BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp
+
+btContinuousConvexCollision.lo: BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btContinuousConvexCollision.lo -MD -MP -MF $(DEPDIR)/btContinuousConvexCollision.Tpo -c -o btContinuousConvexCollision.lo `test -f 'BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btContinuousConvexCollision.Tpo $(DEPDIR)/btContinuousConvexCollision.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp' object='btContinuousConvexCollision.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btContinuousConvexCollision.lo `test -f 'BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp
+
+btGjkPairDetector.lo: BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btGjkPairDetector.lo -MD -MP -MF $(DEPDIR)/btGjkPairDetector.Tpo -c -o btGjkPairDetector.lo `test -f 'BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btGjkPairDetector.Tpo $(DEPDIR)/btGjkPairDetector.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp' object='btGjkPairDetector.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btGjkPairDetector.lo `test -f 'BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp
+
+btGjkEpa2.lo: BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btGjkEpa2.lo -MD -MP -MF $(DEPDIR)/btGjkEpa2.Tpo -c -o btGjkEpa2.lo `test -f 'BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btGjkEpa2.Tpo $(DEPDIR)/btGjkEpa2.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp' object='btGjkEpa2.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btGjkEpa2.lo `test -f 'BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp
+
+btVoronoiSimplexSolver.lo: BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btVoronoiSimplexSolver.lo -MD -MP -MF $(DEPDIR)/btVoronoiSimplexSolver.Tpo -c -o btVoronoiSimplexSolver.lo `test -f 'BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btVoronoiSimplexSolver.Tpo $(DEPDIR)/btVoronoiSimplexSolver.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp' object='btVoronoiSimplexSolver.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btVoronoiSimplexSolver.lo `test -f 'BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp' || echo '$(srcdir)/'`BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp
+
+btActivatingCollisionAlgorithm.lo: BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btActivatingCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/btActivatingCollisionAlgorithm.Tpo -c -o btActivatingCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btActivatingCollisionAlgorithm.Tpo $(DEPDIR)/btActivatingCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp' object='btActivatingCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btActivatingCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp
+
+btCollisionObject.lo: BulletCollision/CollisionDispatch/btCollisionObject.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btCollisionObject.lo -MD -MP -MF $(DEPDIR)/btCollisionObject.Tpo -c -o btCollisionObject.lo `test -f 'BulletCollision/CollisionDispatch/btCollisionObject.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btCollisionObject.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btCollisionObject.Tpo $(DEPDIR)/btCollisionObject.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btCollisionObject.cpp' object='btCollisionObject.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btCollisionObject.lo `test -f 'BulletCollision/CollisionDispatch/btCollisionObject.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btCollisionObject.cpp
+
+btEmptyCollisionAlgorithm.lo: BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btEmptyCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/btEmptyCollisionAlgorithm.Tpo -c -o btEmptyCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btEmptyCollisionAlgorithm.Tpo $(DEPDIR)/btEmptyCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp' object='btEmptyCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btEmptyCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp
+
+btGhostObject.lo: BulletCollision/CollisionDispatch/btGhostObject.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btGhostObject.lo -MD -MP -MF $(DEPDIR)/btGhostObject.Tpo -c -o btGhostObject.lo `test -f 'BulletCollision/CollisionDispatch/btGhostObject.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btGhostObject.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btGhostObject.Tpo $(DEPDIR)/btGhostObject.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btGhostObject.cpp' object='btGhostObject.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btGhostObject.lo `test -f 'BulletCollision/CollisionDispatch/btGhostObject.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btGhostObject.cpp
+
+btSphereSphereCollisionAlgorithm.lo: BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSphereSphereCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/btSphereSphereCollisionAlgorithm.Tpo -c -o btSphereSphereCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSphereSphereCollisionAlgorithm.Tpo $(DEPDIR)/btSphereSphereCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp' object='btSphereSphereCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSphereSphereCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp
+
+btSphereBoxCollisionAlgorithm.lo: BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSphereBoxCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/btSphereBoxCollisionAlgorithm.Tpo -c -o btSphereBoxCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSphereBoxCollisionAlgorithm.Tpo $(DEPDIR)/btSphereBoxCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp' object='btSphereBoxCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSphereBoxCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
+
+btCollisionDispatcher.lo: BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btCollisionDispatcher.lo -MD -MP -MF $(DEPDIR)/btCollisionDispatcher.Tpo -c -o btCollisionDispatcher.lo `test -f 'BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btCollisionDispatcher.Tpo $(DEPDIR)/btCollisionDispatcher.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp' object='btCollisionDispatcher.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btCollisionDispatcher.lo `test -f 'BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp
+
+btDefaultCollisionConfiguration.lo: BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btDefaultCollisionConfiguration.lo -MD -MP -MF $(DEPDIR)/btDefaultCollisionConfiguration.Tpo -c -o btDefaultCollisionConfiguration.lo `test -f 'BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btDefaultCollisionConfiguration.Tpo $(DEPDIR)/btDefaultCollisionConfiguration.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp' object='btDefaultCollisionConfiguration.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btDefaultCollisionConfiguration.lo `test -f 'BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp
+
+btSimulationIslandManager.lo: BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSimulationIslandManager.lo -MD -MP -MF $(DEPDIR)/btSimulationIslandManager.Tpo -c -o btSimulationIslandManager.lo `test -f 'BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSimulationIslandManager.Tpo $(DEPDIR)/btSimulationIslandManager.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp' object='btSimulationIslandManager.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSimulationIslandManager.lo `test -f 'BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp
+
+btBoxBoxDetector.lo: BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btBoxBoxDetector.lo -MD -MP -MF $(DEPDIR)/btBoxBoxDetector.Tpo -c -o btBoxBoxDetector.lo `test -f 'BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btBoxBoxDetector.Tpo $(DEPDIR)/btBoxBoxDetector.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp' object='btBoxBoxDetector.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btBoxBoxDetector.lo `test -f 'BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp
+
+btConvexPlaneCollisionAlgorithm.lo: BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConvexPlaneCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/btConvexPlaneCollisionAlgorithm.Tpo -c -o btConvexPlaneCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConvexPlaneCollisionAlgorithm.Tpo $(DEPDIR)/btConvexPlaneCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp' object='btConvexPlaneCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConvexPlaneCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp
+
+btConvexConcaveCollisionAlgorithm.lo: BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConvexConcaveCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/btConvexConcaveCollisionAlgorithm.Tpo -c -o btConvexConcaveCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConvexConcaveCollisionAlgorithm.Tpo $(DEPDIR)/btConvexConcaveCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp' object='btConvexConcaveCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConvexConcaveCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp
+
+btBoxBoxCollisionAlgorithm.lo: BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btBoxBoxCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/btBoxBoxCollisionAlgorithm.Tpo -c -o btBoxBoxCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btBoxBoxCollisionAlgorithm.Tpo $(DEPDIR)/btBoxBoxCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp' object='btBoxBoxCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btBoxBoxCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp
+
+btBox2dBox2dCollisionAlgorithm.lo: BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btBox2dBox2dCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/btBox2dBox2dCollisionAlgorithm.Tpo -c -o btBox2dBox2dCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btBox2dBox2dCollisionAlgorithm.Tpo $(DEPDIR)/btBox2dBox2dCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp' object='btBox2dBox2dCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btBox2dBox2dCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp
+
+SphereTriangleDetector.lo: BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT SphereTriangleDetector.lo -MD -MP -MF $(DEPDIR)/SphereTriangleDetector.Tpo -c -o SphereTriangleDetector.lo `test -f 'BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/SphereTriangleDetector.Tpo $(DEPDIR)/SphereTriangleDetector.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp' object='SphereTriangleDetector.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o SphereTriangleDetector.lo `test -f 'BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp
+
+btInternalEdgeUtility.lo: BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btInternalEdgeUtility.lo -MD -MP -MF $(DEPDIR)/btInternalEdgeUtility.Tpo -c -o btInternalEdgeUtility.lo `test -f 'BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btInternalEdgeUtility.Tpo $(DEPDIR)/btInternalEdgeUtility.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp' object='btInternalEdgeUtility.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btInternalEdgeUtility.lo `test -f 'BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp
+
+btManifoldResult.lo: BulletCollision/CollisionDispatch/btManifoldResult.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btManifoldResult.lo -MD -MP -MF $(DEPDIR)/btManifoldResult.Tpo -c -o btManifoldResult.lo `test -f 'BulletCollision/CollisionDispatch/btManifoldResult.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btManifoldResult.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btManifoldResult.Tpo $(DEPDIR)/btManifoldResult.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btManifoldResult.cpp' object='btManifoldResult.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btManifoldResult.lo `test -f 'BulletCollision/CollisionDispatch/btManifoldResult.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btManifoldResult.cpp
+
+btCollisionWorld.lo: BulletCollision/CollisionDispatch/btCollisionWorld.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btCollisionWorld.lo -MD -MP -MF $(DEPDIR)/btCollisionWorld.Tpo -c -o btCollisionWorld.lo `test -f 'BulletCollision/CollisionDispatch/btCollisionWorld.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btCollisionWorld.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btCollisionWorld.Tpo $(DEPDIR)/btCollisionWorld.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btCollisionWorld.cpp' object='btCollisionWorld.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btCollisionWorld.lo `test -f 'BulletCollision/CollisionDispatch/btCollisionWorld.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btCollisionWorld.cpp
+
+btSphereTriangleCollisionAlgorithm.lo: BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSphereTriangleCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/btSphereTriangleCollisionAlgorithm.Tpo -c -o btSphereTriangleCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSphereTriangleCollisionAlgorithm.Tpo $(DEPDIR)/btSphereTriangleCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp' object='btSphereTriangleCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSphereTriangleCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
+
+btConvexConvexAlgorithm.lo: BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConvexConvexAlgorithm.lo -MD -MP -MF $(DEPDIR)/btConvexConvexAlgorithm.Tpo -c -o btConvexConvexAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConvexConvexAlgorithm.Tpo $(DEPDIR)/btConvexConvexAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp' object='btConvexConvexAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConvexConvexAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp
+
+btConvex2dConvex2dAlgorithm.lo: BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConvex2dConvex2dAlgorithm.lo -MD -MP -MF $(DEPDIR)/btConvex2dConvex2dAlgorithm.Tpo -c -o btConvex2dConvex2dAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConvex2dConvex2dAlgorithm.Tpo $(DEPDIR)/btConvex2dConvex2dAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp' object='btConvex2dConvex2dAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConvex2dConvex2dAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp
+
+btUnionFind.lo: BulletCollision/CollisionDispatch/btUnionFind.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btUnionFind.lo -MD -MP -MF $(DEPDIR)/btUnionFind.Tpo -c -o btUnionFind.lo `test -f 'BulletCollision/CollisionDispatch/btUnionFind.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btUnionFind.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btUnionFind.Tpo $(DEPDIR)/btUnionFind.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btUnionFind.cpp' object='btUnionFind.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btUnionFind.lo `test -f 'BulletCollision/CollisionDispatch/btUnionFind.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btUnionFind.cpp
+
+btCompoundCollisionAlgorithm.lo: BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btCompoundCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/btCompoundCollisionAlgorithm.Tpo -c -o btCompoundCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btCompoundCollisionAlgorithm.Tpo $(DEPDIR)/btCompoundCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp' object='btCompoundCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btCompoundCollisionAlgorithm.lo `test -f 'BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp
+
+btTetrahedronShape.lo: BulletCollision/CollisionShapes/btTetrahedronShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btTetrahedronShape.lo -MD -MP -MF $(DEPDIR)/btTetrahedronShape.Tpo -c -o btTetrahedronShape.lo `test -f 'BulletCollision/CollisionShapes/btTetrahedronShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btTetrahedronShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btTetrahedronShape.Tpo $(DEPDIR)/btTetrahedronShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btTetrahedronShape.cpp' object='btTetrahedronShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btTetrahedronShape.lo `test -f 'BulletCollision/CollisionShapes/btTetrahedronShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btTetrahedronShape.cpp
+
+btShapeHull.lo: BulletCollision/CollisionShapes/btShapeHull.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btShapeHull.lo -MD -MP -MF $(DEPDIR)/btShapeHull.Tpo -c -o btShapeHull.lo `test -f 'BulletCollision/CollisionShapes/btShapeHull.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btShapeHull.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btShapeHull.Tpo $(DEPDIR)/btShapeHull.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btShapeHull.cpp' object='btShapeHull.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btShapeHull.lo `test -f 'BulletCollision/CollisionShapes/btShapeHull.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btShapeHull.cpp
+
+btMinkowskiSumShape.lo: BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btMinkowskiSumShape.lo -MD -MP -MF $(DEPDIR)/btMinkowskiSumShape.Tpo -c -o btMinkowskiSumShape.lo `test -f 'BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btMinkowskiSumShape.Tpo $(DEPDIR)/btMinkowskiSumShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp' object='btMinkowskiSumShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btMinkowskiSumShape.lo `test -f 'BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp
+
+btCompoundShape.lo: BulletCollision/CollisionShapes/btCompoundShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btCompoundShape.lo -MD -MP -MF $(DEPDIR)/btCompoundShape.Tpo -c -o btCompoundShape.lo `test -f 'BulletCollision/CollisionShapes/btCompoundShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btCompoundShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btCompoundShape.Tpo $(DEPDIR)/btCompoundShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btCompoundShape.cpp' object='btCompoundShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btCompoundShape.lo `test -f 'BulletCollision/CollisionShapes/btCompoundShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btCompoundShape.cpp
+
+btConeShape.lo: BulletCollision/CollisionShapes/btConeShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConeShape.lo -MD -MP -MF $(DEPDIR)/btConeShape.Tpo -c -o btConeShape.lo `test -f 'BulletCollision/CollisionShapes/btConeShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConeShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConeShape.Tpo $(DEPDIR)/btConeShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btConeShape.cpp' object='btConeShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConeShape.lo `test -f 'BulletCollision/CollisionShapes/btConeShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConeShape.cpp
+
+btConvexPolyhedron.lo: BulletCollision/CollisionShapes/btConvexPolyhedron.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConvexPolyhedron.lo -MD -MP -MF $(DEPDIR)/btConvexPolyhedron.Tpo -c -o btConvexPolyhedron.lo `test -f 'BulletCollision/CollisionShapes/btConvexPolyhedron.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConvexPolyhedron.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConvexPolyhedron.Tpo $(DEPDIR)/btConvexPolyhedron.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btConvexPolyhedron.cpp' object='btConvexPolyhedron.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConvexPolyhedron.lo `test -f 'BulletCollision/CollisionShapes/btConvexPolyhedron.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConvexPolyhedron.cpp
+
+btMultiSphereShape.lo: BulletCollision/CollisionShapes/btMultiSphereShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btMultiSphereShape.lo -MD -MP -MF $(DEPDIR)/btMultiSphereShape.Tpo -c -o btMultiSphereShape.lo `test -f 'BulletCollision/CollisionShapes/btMultiSphereShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btMultiSphereShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btMultiSphereShape.Tpo $(DEPDIR)/btMultiSphereShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btMultiSphereShape.cpp' object='btMultiSphereShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btMultiSphereShape.lo `test -f 'BulletCollision/CollisionShapes/btMultiSphereShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btMultiSphereShape.cpp
+
+btUniformScalingShape.lo: BulletCollision/CollisionShapes/btUniformScalingShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btUniformScalingShape.lo -MD -MP -MF $(DEPDIR)/btUniformScalingShape.Tpo -c -o btUniformScalingShape.lo `test -f 'BulletCollision/CollisionShapes/btUniformScalingShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btUniformScalingShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btUniformScalingShape.Tpo $(DEPDIR)/btUniformScalingShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btUniformScalingShape.cpp' object='btUniformScalingShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btUniformScalingShape.lo `test -f 'BulletCollision/CollisionShapes/btUniformScalingShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btUniformScalingShape.cpp
+
+btSphereShape.lo: BulletCollision/CollisionShapes/btSphereShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSphereShape.lo -MD -MP -MF $(DEPDIR)/btSphereShape.Tpo -c -o btSphereShape.lo `test -f 'BulletCollision/CollisionShapes/btSphereShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btSphereShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSphereShape.Tpo $(DEPDIR)/btSphereShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btSphereShape.cpp' object='btSphereShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSphereShape.lo `test -f 'BulletCollision/CollisionShapes/btSphereShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btSphereShape.cpp
+
+btTriangleIndexVertexArray.lo: BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btTriangleIndexVertexArray.lo -MD -MP -MF $(DEPDIR)/btTriangleIndexVertexArray.Tpo -c -o btTriangleIndexVertexArray.lo `test -f 'BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btTriangleIndexVertexArray.Tpo $(DEPDIR)/btTriangleIndexVertexArray.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp' object='btTriangleIndexVertexArray.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btTriangleIndexVertexArray.lo `test -f 'BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp
+
+btBvhTriangleMeshShape.lo: BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btBvhTriangleMeshShape.lo -MD -MP -MF $(DEPDIR)/btBvhTriangleMeshShape.Tpo -c -o btBvhTriangleMeshShape.lo `test -f 'BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btBvhTriangleMeshShape.Tpo $(DEPDIR)/btBvhTriangleMeshShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp' object='btBvhTriangleMeshShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btBvhTriangleMeshShape.lo `test -f 'BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp
+
+btTriangleMeshShape.lo: BulletCollision/CollisionShapes/btTriangleMeshShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btTriangleMeshShape.lo -MD -MP -MF $(DEPDIR)/btTriangleMeshShape.Tpo -c -o btTriangleMeshShape.lo `test -f 'BulletCollision/CollisionShapes/btTriangleMeshShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btTriangleMeshShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btTriangleMeshShape.Tpo $(DEPDIR)/btTriangleMeshShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btTriangleMeshShape.cpp' object='btTriangleMeshShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btTriangleMeshShape.lo `test -f 'BulletCollision/CollisionShapes/btTriangleMeshShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btTriangleMeshShape.cpp
+
+btTriangleBuffer.lo: BulletCollision/CollisionShapes/btTriangleBuffer.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btTriangleBuffer.lo -MD -MP -MF $(DEPDIR)/btTriangleBuffer.Tpo -c -o btTriangleBuffer.lo `test -f 'BulletCollision/CollisionShapes/btTriangleBuffer.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btTriangleBuffer.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btTriangleBuffer.Tpo $(DEPDIR)/btTriangleBuffer.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btTriangleBuffer.cpp' object='btTriangleBuffer.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btTriangleBuffer.lo `test -f 'BulletCollision/CollisionShapes/btTriangleBuffer.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btTriangleBuffer.cpp
+
+btStaticPlaneShape.lo: BulletCollision/CollisionShapes/btStaticPlaneShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btStaticPlaneShape.lo -MD -MP -MF $(DEPDIR)/btStaticPlaneShape.Tpo -c -o btStaticPlaneShape.lo `test -f 'BulletCollision/CollisionShapes/btStaticPlaneShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btStaticPlaneShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btStaticPlaneShape.Tpo $(DEPDIR)/btStaticPlaneShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btStaticPlaneShape.cpp' object='btStaticPlaneShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btStaticPlaneShape.lo `test -f 'BulletCollision/CollisionShapes/btStaticPlaneShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btStaticPlaneShape.cpp
+
+btPolyhedralConvexShape.lo: BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btPolyhedralConvexShape.lo -MD -MP -MF $(DEPDIR)/btPolyhedralConvexShape.Tpo -c -o btPolyhedralConvexShape.lo `test -f 'BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btPolyhedralConvexShape.Tpo $(DEPDIR)/btPolyhedralConvexShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp' object='btPolyhedralConvexShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btPolyhedralConvexShape.lo `test -f 'BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
+
+btEmptyShape.lo: BulletCollision/CollisionShapes/btEmptyShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btEmptyShape.lo -MD -MP -MF $(DEPDIR)/btEmptyShape.Tpo -c -o btEmptyShape.lo `test -f 'BulletCollision/CollisionShapes/btEmptyShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btEmptyShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btEmptyShape.Tpo $(DEPDIR)/btEmptyShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btEmptyShape.cpp' object='btEmptyShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btEmptyShape.lo `test -f 'BulletCollision/CollisionShapes/btEmptyShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btEmptyShape.cpp
+
+btCollisionShape.lo: BulletCollision/CollisionShapes/btCollisionShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btCollisionShape.lo -MD -MP -MF $(DEPDIR)/btCollisionShape.Tpo -c -o btCollisionShape.lo `test -f 'BulletCollision/CollisionShapes/btCollisionShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btCollisionShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btCollisionShape.Tpo $(DEPDIR)/btCollisionShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btCollisionShape.cpp' object='btCollisionShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btCollisionShape.lo `test -f 'BulletCollision/CollisionShapes/btCollisionShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btCollisionShape.cpp
+
+btConvexShape.lo: BulletCollision/CollisionShapes/btConvexShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConvexShape.lo -MD -MP -MF $(DEPDIR)/btConvexShape.Tpo -c -o btConvexShape.lo `test -f 'BulletCollision/CollisionShapes/btConvexShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConvexShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConvexShape.Tpo $(DEPDIR)/btConvexShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btConvexShape.cpp' object='btConvexShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConvexShape.lo `test -f 'BulletCollision/CollisionShapes/btConvexShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConvexShape.cpp
+
+btConvex2dShape.lo: BulletCollision/CollisionShapes/btConvex2dShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConvex2dShape.lo -MD -MP -MF $(DEPDIR)/btConvex2dShape.Tpo -c -o btConvex2dShape.lo `test -f 'BulletCollision/CollisionShapes/btConvex2dShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConvex2dShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConvex2dShape.Tpo $(DEPDIR)/btConvex2dShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btConvex2dShape.cpp' object='btConvex2dShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConvex2dShape.lo `test -f 'BulletCollision/CollisionShapes/btConvex2dShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConvex2dShape.cpp
+
+btConvexInternalShape.lo: BulletCollision/CollisionShapes/btConvexInternalShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConvexInternalShape.lo -MD -MP -MF $(DEPDIR)/btConvexInternalShape.Tpo -c -o btConvexInternalShape.lo `test -f 'BulletCollision/CollisionShapes/btConvexInternalShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConvexInternalShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConvexInternalShape.Tpo $(DEPDIR)/btConvexInternalShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btConvexInternalShape.cpp' object='btConvexInternalShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConvexInternalShape.lo `test -f 'BulletCollision/CollisionShapes/btConvexInternalShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConvexInternalShape.cpp
+
+btConvexHullShape.lo: BulletCollision/CollisionShapes/btConvexHullShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConvexHullShape.lo -MD -MP -MF $(DEPDIR)/btConvexHullShape.Tpo -c -o btConvexHullShape.lo `test -f 'BulletCollision/CollisionShapes/btConvexHullShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConvexHullShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConvexHullShape.Tpo $(DEPDIR)/btConvexHullShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btConvexHullShape.cpp' object='btConvexHullShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConvexHullShape.lo `test -f 'BulletCollision/CollisionShapes/btConvexHullShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConvexHullShape.cpp
+
+btTriangleCallback.lo: BulletCollision/CollisionShapes/btTriangleCallback.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btTriangleCallback.lo -MD -MP -MF $(DEPDIR)/btTriangleCallback.Tpo -c -o btTriangleCallback.lo `test -f 'BulletCollision/CollisionShapes/btTriangleCallback.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btTriangleCallback.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btTriangleCallback.Tpo $(DEPDIR)/btTriangleCallback.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btTriangleCallback.cpp' object='btTriangleCallback.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btTriangleCallback.lo `test -f 'BulletCollision/CollisionShapes/btTriangleCallback.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btTriangleCallback.cpp
+
+btCapsuleShape.lo: BulletCollision/CollisionShapes/btCapsuleShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btCapsuleShape.lo -MD -MP -MF $(DEPDIR)/btCapsuleShape.Tpo -c -o btCapsuleShape.lo `test -f 'BulletCollision/CollisionShapes/btCapsuleShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btCapsuleShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btCapsuleShape.Tpo $(DEPDIR)/btCapsuleShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btCapsuleShape.cpp' object='btCapsuleShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btCapsuleShape.lo `test -f 'BulletCollision/CollisionShapes/btCapsuleShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btCapsuleShape.cpp
+
+btConvexTriangleMeshShape.lo: BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConvexTriangleMeshShape.lo -MD -MP -MF $(DEPDIR)/btConvexTriangleMeshShape.Tpo -c -o btConvexTriangleMeshShape.lo `test -f 'BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConvexTriangleMeshShape.Tpo $(DEPDIR)/btConvexTriangleMeshShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp' object='btConvexTriangleMeshShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConvexTriangleMeshShape.lo `test -f 'BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp
+
+btConcaveShape.lo: BulletCollision/CollisionShapes/btConcaveShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConcaveShape.lo -MD -MP -MF $(DEPDIR)/btConcaveShape.Tpo -c -o btConcaveShape.lo `test -f 'BulletCollision/CollisionShapes/btConcaveShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConcaveShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConcaveShape.Tpo $(DEPDIR)/btConcaveShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btConcaveShape.cpp' object='btConcaveShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConcaveShape.lo `test -f 'BulletCollision/CollisionShapes/btConcaveShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConcaveShape.cpp
+
+btConvexPointCloudShape.lo: BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConvexPointCloudShape.lo -MD -MP -MF $(DEPDIR)/btConvexPointCloudShape.Tpo -c -o btConvexPointCloudShape.lo `test -f 'BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConvexPointCloudShape.Tpo $(DEPDIR)/btConvexPointCloudShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp' object='btConvexPointCloudShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConvexPointCloudShape.lo `test -f 'BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp
+
+btBoxShape.lo: BulletCollision/CollisionShapes/btBoxShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btBoxShape.lo -MD -MP -MF $(DEPDIR)/btBoxShape.Tpo -c -o btBoxShape.lo `test -f 'BulletCollision/CollisionShapes/btBoxShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btBoxShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btBoxShape.Tpo $(DEPDIR)/btBoxShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btBoxShape.cpp' object='btBoxShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btBoxShape.lo `test -f 'BulletCollision/CollisionShapes/btBoxShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btBoxShape.cpp
+
+btBox2dShape.lo: BulletCollision/CollisionShapes/btBox2dShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btBox2dShape.lo -MD -MP -MF $(DEPDIR)/btBox2dShape.Tpo -c -o btBox2dShape.lo `test -f 'BulletCollision/CollisionShapes/btBox2dShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btBox2dShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btBox2dShape.Tpo $(DEPDIR)/btBox2dShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btBox2dShape.cpp' object='btBox2dShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btBox2dShape.lo `test -f 'BulletCollision/CollisionShapes/btBox2dShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btBox2dShape.cpp
+
+btOptimizedBvh.lo: BulletCollision/CollisionShapes/btOptimizedBvh.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btOptimizedBvh.lo -MD -MP -MF $(DEPDIR)/btOptimizedBvh.Tpo -c -o btOptimizedBvh.lo `test -f 'BulletCollision/CollisionShapes/btOptimizedBvh.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btOptimizedBvh.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btOptimizedBvh.Tpo $(DEPDIR)/btOptimizedBvh.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btOptimizedBvh.cpp' object='btOptimizedBvh.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btOptimizedBvh.lo `test -f 'BulletCollision/CollisionShapes/btOptimizedBvh.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btOptimizedBvh.cpp
+
+btHeightfieldTerrainShape.lo: BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btHeightfieldTerrainShape.lo -MD -MP -MF $(DEPDIR)/btHeightfieldTerrainShape.Tpo -c -o btHeightfieldTerrainShape.lo `test -f 'BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btHeightfieldTerrainShape.Tpo $(DEPDIR)/btHeightfieldTerrainShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp' object='btHeightfieldTerrainShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btHeightfieldTerrainShape.lo `test -f 'BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp
+
+btMultimaterialTriangleMeshShape.lo: BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btMultimaterialTriangleMeshShape.lo -MD -MP -MF $(DEPDIR)/btMultimaterialTriangleMeshShape.Tpo -c -o btMultimaterialTriangleMeshShape.lo `test -f 'BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btMultimaterialTriangleMeshShape.Tpo $(DEPDIR)/btMultimaterialTriangleMeshShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp' object='btMultimaterialTriangleMeshShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btMultimaterialTriangleMeshShape.lo `test -f 'BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp
+
+btCylinderShape.lo: BulletCollision/CollisionShapes/btCylinderShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btCylinderShape.lo -MD -MP -MF $(DEPDIR)/btCylinderShape.Tpo -c -o btCylinderShape.lo `test -f 'BulletCollision/CollisionShapes/btCylinderShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btCylinderShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btCylinderShape.Tpo $(DEPDIR)/btCylinderShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btCylinderShape.cpp' object='btCylinderShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btCylinderShape.lo `test -f 'BulletCollision/CollisionShapes/btCylinderShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btCylinderShape.cpp
+
+btScaledBvhTriangleMeshShape.lo: BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btScaledBvhTriangleMeshShape.lo -MD -MP -MF $(DEPDIR)/btScaledBvhTriangleMeshShape.Tpo -c -o btScaledBvhTriangleMeshShape.lo `test -f 'BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btScaledBvhTriangleMeshShape.Tpo $(DEPDIR)/btScaledBvhTriangleMeshShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp' object='btScaledBvhTriangleMeshShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btScaledBvhTriangleMeshShape.lo `test -f 'BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp
+
+btStridingMeshInterface.lo: BulletCollision/CollisionShapes/btStridingMeshInterface.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btStridingMeshInterface.lo -MD -MP -MF $(DEPDIR)/btStridingMeshInterface.Tpo -c -o btStridingMeshInterface.lo `test -f 'BulletCollision/CollisionShapes/btStridingMeshInterface.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btStridingMeshInterface.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btStridingMeshInterface.Tpo $(DEPDIR)/btStridingMeshInterface.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btStridingMeshInterface.cpp' object='btStridingMeshInterface.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btStridingMeshInterface.lo `test -f 'BulletCollision/CollisionShapes/btStridingMeshInterface.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btStridingMeshInterface.cpp
+
+btTriangleIndexVertexMaterialArray.lo: BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btTriangleIndexVertexMaterialArray.lo -MD -MP -MF $(DEPDIR)/btTriangleIndexVertexMaterialArray.Tpo -c -o btTriangleIndexVertexMaterialArray.lo `test -f 'BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btTriangleIndexVertexMaterialArray.Tpo $(DEPDIR)/btTriangleIndexVertexMaterialArray.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp' object='btTriangleIndexVertexMaterialArray.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btTriangleIndexVertexMaterialArray.lo `test -f 'BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp
+
+btTriangleMesh.lo: BulletCollision/CollisionShapes/btTriangleMesh.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btTriangleMesh.lo -MD -MP -MF $(DEPDIR)/btTriangleMesh.Tpo -c -o btTriangleMesh.lo `test -f 'BulletCollision/CollisionShapes/btTriangleMesh.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btTriangleMesh.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btTriangleMesh.Tpo $(DEPDIR)/btTriangleMesh.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/CollisionShapes/btTriangleMesh.cpp' object='btTriangleMesh.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btTriangleMesh.lo `test -f 'BulletCollision/CollisionShapes/btTriangleMesh.cpp' || echo '$(srcdir)/'`BulletCollision/CollisionShapes/btTriangleMesh.cpp
+
+btAxisSweep3.lo: BulletCollision/BroadphaseCollision/btAxisSweep3.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btAxisSweep3.lo -MD -MP -MF $(DEPDIR)/btAxisSweep3.Tpo -c -o btAxisSweep3.lo `test -f 'BulletCollision/BroadphaseCollision/btAxisSweep3.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btAxisSweep3.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btAxisSweep3.Tpo $(DEPDIR)/btAxisSweep3.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/BroadphaseCollision/btAxisSweep3.cpp' object='btAxisSweep3.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btAxisSweep3.lo `test -f 'BulletCollision/BroadphaseCollision/btAxisSweep3.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btAxisSweep3.cpp
+
+btOverlappingPairCache.lo: BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btOverlappingPairCache.lo -MD -MP -MF $(DEPDIR)/btOverlappingPairCache.Tpo -c -o btOverlappingPairCache.lo `test -f 'BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btOverlappingPairCache.Tpo $(DEPDIR)/btOverlappingPairCache.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp' object='btOverlappingPairCache.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btOverlappingPairCache.lo `test -f 'BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp
+
+btDbvtBroadphase.lo: BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btDbvtBroadphase.lo -MD -MP -MF $(DEPDIR)/btDbvtBroadphase.Tpo -c -o btDbvtBroadphase.lo `test -f 'BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btDbvtBroadphase.Tpo $(DEPDIR)/btDbvtBroadphase.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp' object='btDbvtBroadphase.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btDbvtBroadphase.lo `test -f 'BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp
+
+btMultiSapBroadphase.lo: BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btMultiSapBroadphase.lo -MD -MP -MF $(DEPDIR)/btMultiSapBroadphase.Tpo -c -o btMultiSapBroadphase.lo `test -f 'BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btMultiSapBroadphase.Tpo $(DEPDIR)/btMultiSapBroadphase.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp' object='btMultiSapBroadphase.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btMultiSapBroadphase.lo `test -f 'BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp
+
+btDispatcher.lo: BulletCollision/BroadphaseCollision/btDispatcher.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btDispatcher.lo -MD -MP -MF $(DEPDIR)/btDispatcher.Tpo -c -o btDispatcher.lo `test -f 'BulletCollision/BroadphaseCollision/btDispatcher.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btDispatcher.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btDispatcher.Tpo $(DEPDIR)/btDispatcher.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/BroadphaseCollision/btDispatcher.cpp' object='btDispatcher.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btDispatcher.lo `test -f 'BulletCollision/BroadphaseCollision/btDispatcher.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btDispatcher.cpp
+
+btBroadphaseProxy.lo: BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btBroadphaseProxy.lo -MD -MP -MF $(DEPDIR)/btBroadphaseProxy.Tpo -c -o btBroadphaseProxy.lo `test -f 'BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btBroadphaseProxy.Tpo $(DEPDIR)/btBroadphaseProxy.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp' object='btBroadphaseProxy.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btBroadphaseProxy.lo `test -f 'BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp
+
+btQuantizedBvh.lo: BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btQuantizedBvh.lo -MD -MP -MF $(DEPDIR)/btQuantizedBvh.Tpo -c -o btQuantizedBvh.lo `test -f 'BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btQuantizedBvh.Tpo $(DEPDIR)/btQuantizedBvh.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp' object='btQuantizedBvh.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btQuantizedBvh.lo `test -f 'BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp
+
+btCollisionAlgorithm.lo: BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/btCollisionAlgorithm.Tpo -c -o btCollisionAlgorithm.lo `test -f 'BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btCollisionAlgorithm.Tpo $(DEPDIR)/btCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp' object='btCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btCollisionAlgorithm.lo `test -f 'BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp
+
+btDbvt.lo: BulletCollision/BroadphaseCollision/btDbvt.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btDbvt.lo -MD -MP -MF $(DEPDIR)/btDbvt.Tpo -c -o btDbvt.lo `test -f 'BulletCollision/BroadphaseCollision/btDbvt.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btDbvt.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btDbvt.Tpo $(DEPDIR)/btDbvt.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/BroadphaseCollision/btDbvt.cpp' object='btDbvt.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btDbvt.lo `test -f 'BulletCollision/BroadphaseCollision/btDbvt.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btDbvt.cpp
+
+btSimpleBroadphase.lo: BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSimpleBroadphase.lo -MD -MP -MF $(DEPDIR)/btSimpleBroadphase.Tpo -c -o btSimpleBroadphase.lo `test -f 'BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSimpleBroadphase.Tpo $(DEPDIR)/btSimpleBroadphase.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp' object='btSimpleBroadphase.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSimpleBroadphase.lo `test -f 'BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp' || echo '$(srcdir)/'`BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp
+
+btGImpactBvh.lo: BulletCollision/Gimpact/btGImpactBvh.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btGImpactBvh.lo -MD -MP -MF $(DEPDIR)/btGImpactBvh.Tpo -c -o btGImpactBvh.lo `test -f 'BulletCollision/Gimpact/btGImpactBvh.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/btGImpactBvh.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btGImpactBvh.Tpo $(DEPDIR)/btGImpactBvh.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/Gimpact/btGImpactBvh.cpp' object='btGImpactBvh.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btGImpactBvh.lo `test -f 'BulletCollision/Gimpact/btGImpactBvh.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/btGImpactBvh.cpp
+
+btGImpactQuantizedBvh.lo: BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btGImpactQuantizedBvh.lo -MD -MP -MF $(DEPDIR)/btGImpactQuantizedBvh.Tpo -c -o btGImpactQuantizedBvh.lo `test -f 'BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btGImpactQuantizedBvh.Tpo $(DEPDIR)/btGImpactQuantizedBvh.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp' object='btGImpactQuantizedBvh.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btGImpactQuantizedBvh.lo `test -f 'BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp
+
+btTriangleShapeEx.lo: BulletCollision/Gimpact/btTriangleShapeEx.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btTriangleShapeEx.lo -MD -MP -MF $(DEPDIR)/btTriangleShapeEx.Tpo -c -o btTriangleShapeEx.lo `test -f 'BulletCollision/Gimpact/btTriangleShapeEx.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/btTriangleShapeEx.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btTriangleShapeEx.Tpo $(DEPDIR)/btTriangleShapeEx.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/Gimpact/btTriangleShapeEx.cpp' object='btTriangleShapeEx.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btTriangleShapeEx.lo `test -f 'BulletCollision/Gimpact/btTriangleShapeEx.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/btTriangleShapeEx.cpp
+
+btGImpactCollisionAlgorithm.lo: BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btGImpactCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/btGImpactCollisionAlgorithm.Tpo -c -o btGImpactCollisionAlgorithm.lo `test -f 'BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btGImpactCollisionAlgorithm.Tpo $(DEPDIR)/btGImpactCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp' object='btGImpactCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btGImpactCollisionAlgorithm.lo `test -f 'BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp
+
+btGImpactShape.lo: BulletCollision/Gimpact/btGImpactShape.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btGImpactShape.lo -MD -MP -MF $(DEPDIR)/btGImpactShape.Tpo -c -o btGImpactShape.lo `test -f 'BulletCollision/Gimpact/btGImpactShape.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/btGImpactShape.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btGImpactShape.Tpo $(DEPDIR)/btGImpactShape.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/Gimpact/btGImpactShape.cpp' object='btGImpactShape.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btGImpactShape.lo `test -f 'BulletCollision/Gimpact/btGImpactShape.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/btGImpactShape.cpp
+
+gim_box_set.lo: BulletCollision/Gimpact/gim_box_set.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gim_box_set.lo -MD -MP -MF $(DEPDIR)/gim_box_set.Tpo -c -o gim_box_set.lo `test -f 'BulletCollision/Gimpact/gim_box_set.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/gim_box_set.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/gim_box_set.Tpo $(DEPDIR)/gim_box_set.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/Gimpact/gim_box_set.cpp' object='gim_box_set.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gim_box_set.lo `test -f 'BulletCollision/Gimpact/gim_box_set.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/gim_box_set.cpp
+
+gim_contact.lo: BulletCollision/Gimpact/gim_contact.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gim_contact.lo -MD -MP -MF $(DEPDIR)/gim_contact.Tpo -c -o gim_contact.lo `test -f 'BulletCollision/Gimpact/gim_contact.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/gim_contact.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/gim_contact.Tpo $(DEPDIR)/gim_contact.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/Gimpact/gim_contact.cpp' object='gim_contact.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gim_contact.lo `test -f 'BulletCollision/Gimpact/gim_contact.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/gim_contact.cpp
+
+gim_memory.lo: BulletCollision/Gimpact/gim_memory.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gim_memory.lo -MD -MP -MF $(DEPDIR)/gim_memory.Tpo -c -o gim_memory.lo `test -f 'BulletCollision/Gimpact/gim_memory.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/gim_memory.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/gim_memory.Tpo $(DEPDIR)/gim_memory.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/Gimpact/gim_memory.cpp' object='gim_memory.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gim_memory.lo `test -f 'BulletCollision/Gimpact/gim_memory.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/gim_memory.cpp
+
+gim_tri_collision.lo: BulletCollision/Gimpact/gim_tri_collision.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT gim_tri_collision.lo -MD -MP -MF $(DEPDIR)/gim_tri_collision.Tpo -c -o gim_tri_collision.lo `test -f 'BulletCollision/Gimpact/gim_tri_collision.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/gim_tri_collision.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/gim_tri_collision.Tpo $(DEPDIR)/gim_tri_collision.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletCollision/Gimpact/gim_tri_collision.cpp' object='gim_tri_collision.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o gim_tri_collision.lo `test -f 'BulletCollision/Gimpact/gim_tri_collision.cpp' || echo '$(srcdir)/'`BulletCollision/Gimpact/gim_tri_collision.cpp
+
+btRigidBody.lo: BulletDynamics/Dynamics/btRigidBody.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btRigidBody.lo -MD -MP -MF $(DEPDIR)/btRigidBody.Tpo -c -o btRigidBody.lo `test -f 'BulletDynamics/Dynamics/btRigidBody.cpp' || echo '$(srcdir)/'`BulletDynamics/Dynamics/btRigidBody.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btRigidBody.Tpo $(DEPDIR)/btRigidBody.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/Dynamics/btRigidBody.cpp' object='btRigidBody.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btRigidBody.lo `test -f 'BulletDynamics/Dynamics/btRigidBody.cpp' || echo '$(srcdir)/'`BulletDynamics/Dynamics/btRigidBody.cpp
+
+btSimpleDynamicsWorld.lo: BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSimpleDynamicsWorld.lo -MD -MP -MF $(DEPDIR)/btSimpleDynamicsWorld.Tpo -c -o btSimpleDynamicsWorld.lo `test -f 'BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp' || echo '$(srcdir)/'`BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSimpleDynamicsWorld.Tpo $(DEPDIR)/btSimpleDynamicsWorld.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp' object='btSimpleDynamicsWorld.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSimpleDynamicsWorld.lo `test -f 'BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp' || echo '$(srcdir)/'`BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp
+
+Bullet-C-API.lo: BulletDynamics/Dynamics/Bullet-C-API.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Bullet-C-API.lo -MD -MP -MF $(DEPDIR)/Bullet-C-API.Tpo -c -o Bullet-C-API.lo `test -f 'BulletDynamics/Dynamics/Bullet-C-API.cpp' || echo '$(srcdir)/'`BulletDynamics/Dynamics/Bullet-C-API.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/Bullet-C-API.Tpo $(DEPDIR)/Bullet-C-API.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/Dynamics/Bullet-C-API.cpp' object='Bullet-C-API.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Bullet-C-API.lo `test -f 'BulletDynamics/Dynamics/Bullet-C-API.cpp' || echo '$(srcdir)/'`BulletDynamics/Dynamics/Bullet-C-API.cpp
+
+btDiscreteDynamicsWorld.lo: BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btDiscreteDynamicsWorld.lo -MD -MP -MF $(DEPDIR)/btDiscreteDynamicsWorld.Tpo -c -o btDiscreteDynamicsWorld.lo `test -f 'BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp' || echo '$(srcdir)/'`BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btDiscreteDynamicsWorld.Tpo $(DEPDIR)/btDiscreteDynamicsWorld.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp' object='btDiscreteDynamicsWorld.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btDiscreteDynamicsWorld.lo `test -f 'BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp' || echo '$(srcdir)/'`BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp
+
+btGearConstraint.lo: BulletDynamics/ConstraintSolver/btGearConstraint.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btGearConstraint.lo -MD -MP -MF $(DEPDIR)/btGearConstraint.Tpo -c -o btGearConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btGearConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btGearConstraint.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btGearConstraint.Tpo $(DEPDIR)/btGearConstraint.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/ConstraintSolver/btGearConstraint.cpp' object='btGearConstraint.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btGearConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btGearConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btGearConstraint.cpp
+
+btGeneric6DofConstraint.lo: BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btGeneric6DofConstraint.lo -MD -MP -MF $(DEPDIR)/btGeneric6DofConstraint.Tpo -c -o btGeneric6DofConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btGeneric6DofConstraint.Tpo $(DEPDIR)/btGeneric6DofConstraint.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp' object='btGeneric6DofConstraint.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btGeneric6DofConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp
+
+btGeneric6DofSpringConstraint.lo: BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btGeneric6DofSpringConstraint.lo -MD -MP -MF $(DEPDIR)/btGeneric6DofSpringConstraint.Tpo -c -o btGeneric6DofSpringConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btGeneric6DofSpringConstraint.Tpo $(DEPDIR)/btGeneric6DofSpringConstraint.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp' object='btGeneric6DofSpringConstraint.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btGeneric6DofSpringConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp
+
+btSolve2LinearConstraint.lo: BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSolve2LinearConstraint.lo -MD -MP -MF $(DEPDIR)/btSolve2LinearConstraint.Tpo -c -o btSolve2LinearConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSolve2LinearConstraint.Tpo $(DEPDIR)/btSolve2LinearConstraint.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp' object='btSolve2LinearConstraint.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSolve2LinearConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp
+
+btPoint2PointConstraint.lo: BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btPoint2PointConstraint.lo -MD -MP -MF $(DEPDIR)/btPoint2PointConstraint.Tpo -c -o btPoint2PointConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btPoint2PointConstraint.Tpo $(DEPDIR)/btPoint2PointConstraint.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp' object='btPoint2PointConstraint.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btPoint2PointConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp
+
+btTypedConstraint.lo: BulletDynamics/ConstraintSolver/btTypedConstraint.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btTypedConstraint.lo -MD -MP -MF $(DEPDIR)/btTypedConstraint.Tpo -c -o btTypedConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btTypedConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btTypedConstraint.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btTypedConstraint.Tpo $(DEPDIR)/btTypedConstraint.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/ConstraintSolver/btTypedConstraint.cpp' object='btTypedConstraint.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btTypedConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btTypedConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btTypedConstraint.cpp
+
+btContactConstraint.lo: BulletDynamics/ConstraintSolver/btContactConstraint.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btContactConstraint.lo -MD -MP -MF $(DEPDIR)/btContactConstraint.Tpo -c -o btContactConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btContactConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btContactConstraint.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btContactConstraint.Tpo $(DEPDIR)/btContactConstraint.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/ConstraintSolver/btContactConstraint.cpp' object='btContactConstraint.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btContactConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btContactConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btContactConstraint.cpp
+
+btSliderConstraint.lo: BulletDynamics/ConstraintSolver/btSliderConstraint.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSliderConstraint.lo -MD -MP -MF $(DEPDIR)/btSliderConstraint.Tpo -c -o btSliderConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btSliderConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btSliderConstraint.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSliderConstraint.Tpo $(DEPDIR)/btSliderConstraint.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/ConstraintSolver/btSliderConstraint.cpp' object='btSliderConstraint.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSliderConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btSliderConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btSliderConstraint.cpp
+
+btConeTwistConstraint.lo: BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConeTwistConstraint.lo -MD -MP -MF $(DEPDIR)/btConeTwistConstraint.Tpo -c -o btConeTwistConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConeTwistConstraint.Tpo $(DEPDIR)/btConeTwistConstraint.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp' object='btConeTwistConstraint.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConeTwistConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp
+
+btHingeConstraint.lo: BulletDynamics/ConstraintSolver/btHingeConstraint.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btHingeConstraint.lo -MD -MP -MF $(DEPDIR)/btHingeConstraint.Tpo -c -o btHingeConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btHingeConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btHingeConstraint.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btHingeConstraint.Tpo $(DEPDIR)/btHingeConstraint.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/ConstraintSolver/btHingeConstraint.cpp' object='btHingeConstraint.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btHingeConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btHingeConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btHingeConstraint.cpp
+
+btHinge2Constraint.lo: BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btHinge2Constraint.lo -MD -MP -MF $(DEPDIR)/btHinge2Constraint.Tpo -c -o btHinge2Constraint.lo `test -f 'BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btHinge2Constraint.Tpo $(DEPDIR)/btHinge2Constraint.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp' object='btHinge2Constraint.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btHinge2Constraint.lo `test -f 'BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp
+
+btUniversalConstraint.lo: BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btUniversalConstraint.lo -MD -MP -MF $(DEPDIR)/btUniversalConstraint.Tpo -c -o btUniversalConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btUniversalConstraint.Tpo $(DEPDIR)/btUniversalConstraint.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp' object='btUniversalConstraint.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btUniversalConstraint.lo `test -f 'BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp
+
+btSequentialImpulseConstraintSolver.lo: BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSequentialImpulseConstraintSolver.lo -MD -MP -MF $(DEPDIR)/btSequentialImpulseConstraintSolver.Tpo -c -o btSequentialImpulseConstraintSolver.lo `test -f 'BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSequentialImpulseConstraintSolver.Tpo $(DEPDIR)/btSequentialImpulseConstraintSolver.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp' object='btSequentialImpulseConstraintSolver.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSequentialImpulseConstraintSolver.lo `test -f 'BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp' || echo '$(srcdir)/'`BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp
+
+btWheelInfo.lo: BulletDynamics/Vehicle/btWheelInfo.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btWheelInfo.lo -MD -MP -MF $(DEPDIR)/btWheelInfo.Tpo -c -o btWheelInfo.lo `test -f 'BulletDynamics/Vehicle/btWheelInfo.cpp' || echo '$(srcdir)/'`BulletDynamics/Vehicle/btWheelInfo.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btWheelInfo.Tpo $(DEPDIR)/btWheelInfo.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/Vehicle/btWheelInfo.cpp' object='btWheelInfo.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btWheelInfo.lo `test -f 'BulletDynamics/Vehicle/btWheelInfo.cpp' || echo '$(srcdir)/'`BulletDynamics/Vehicle/btWheelInfo.cpp
+
+btRaycastVehicle.lo: BulletDynamics/Vehicle/btRaycastVehicle.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btRaycastVehicle.lo -MD -MP -MF $(DEPDIR)/btRaycastVehicle.Tpo -c -o btRaycastVehicle.lo `test -f 'BulletDynamics/Vehicle/btRaycastVehicle.cpp' || echo '$(srcdir)/'`BulletDynamics/Vehicle/btRaycastVehicle.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btRaycastVehicle.Tpo $(DEPDIR)/btRaycastVehicle.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/Vehicle/btRaycastVehicle.cpp' object='btRaycastVehicle.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btRaycastVehicle.lo `test -f 'BulletDynamics/Vehicle/btRaycastVehicle.cpp' || echo '$(srcdir)/'`BulletDynamics/Vehicle/btRaycastVehicle.cpp
+
+btKinematicCharacterController.lo: BulletDynamics/Character/btKinematicCharacterController.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btKinematicCharacterController.lo -MD -MP -MF $(DEPDIR)/btKinematicCharacterController.Tpo -c -o btKinematicCharacterController.lo `test -f 'BulletDynamics/Character/btKinematicCharacterController.cpp' || echo '$(srcdir)/'`BulletDynamics/Character/btKinematicCharacterController.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btKinematicCharacterController.Tpo $(DEPDIR)/btKinematicCharacterController.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletDynamics/Character/btKinematicCharacterController.cpp' object='btKinematicCharacterController.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btKinematicCharacterController.lo `test -f 'BulletDynamics/Character/btKinematicCharacterController.cpp' || echo '$(srcdir)/'`BulletDynamics/Character/btKinematicCharacterController.cpp
+
+libBulletMultiThreaded_la-SpuCollisionObjectWrapper.lo: BulletMultiThreaded/SpuCollisionObjectWrapper.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-SpuCollisionObjectWrapper.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-SpuCollisionObjectWrapper.Tpo -c -o libBulletMultiThreaded_la-SpuCollisionObjectWrapper.lo `test -f 'BulletMultiThreaded/SpuCollisionObjectWrapper.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuCollisionObjectWrapper.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-SpuCollisionObjectWrapper.Tpo $(DEPDIR)/libBulletMultiThreaded_la-SpuCollisionObjectWrapper.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/SpuCollisionObjectWrapper.cpp' object='libBulletMultiThreaded_la-SpuCollisionObjectWrapper.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-SpuCollisionObjectWrapper.lo `test -f 'BulletMultiThreaded/SpuCollisionObjectWrapper.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuCollisionObjectWrapper.cpp
+
+libBulletMultiThreaded_la-SpuSampleTask.lo: BulletMultiThreaded/SpuSampleTask/SpuSampleTask.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-SpuSampleTask.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-SpuSampleTask.Tpo -c -o libBulletMultiThreaded_la-SpuSampleTask.lo `test -f 'BulletMultiThreaded/SpuSampleTask/SpuSampleTask.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuSampleTask/SpuSampleTask.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-SpuSampleTask.Tpo $(DEPDIR)/libBulletMultiThreaded_la-SpuSampleTask.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/SpuSampleTask/SpuSampleTask.cpp' object='libBulletMultiThreaded_la-SpuSampleTask.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-SpuSampleTask.lo `test -f 'BulletMultiThreaded/SpuSampleTask/SpuSampleTask.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuSampleTask/SpuSampleTask.cpp
+
+libBulletMultiThreaded_la-SpuLibspe2Support.lo: BulletMultiThreaded/SpuLibspe2Support.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-SpuLibspe2Support.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-SpuLibspe2Support.Tpo -c -o libBulletMultiThreaded_la-SpuLibspe2Support.lo `test -f 'BulletMultiThreaded/SpuLibspe2Support.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuLibspe2Support.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-SpuLibspe2Support.Tpo $(DEPDIR)/libBulletMultiThreaded_la-SpuLibspe2Support.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/SpuLibspe2Support.cpp' object='libBulletMultiThreaded_la-SpuLibspe2Support.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-SpuLibspe2Support.lo `test -f 'BulletMultiThreaded/SpuLibspe2Support.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuLibspe2Support.cpp
+
+libBulletMultiThreaded_la-SpuContactResult.lo: BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-SpuContactResult.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-SpuContactResult.Tpo -c -o libBulletMultiThreaded_la-SpuContactResult.lo `test -f 'BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-SpuContactResult.Tpo $(DEPDIR)/libBulletMultiThreaded_la-SpuContactResult.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp' object='libBulletMultiThreaded_la-SpuContactResult.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-SpuContactResult.lo `test -f 'BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuContactResult.cpp
+
+libBulletMultiThreaded_la-SpuGatheringCollisionTask.lo: BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-SpuGatheringCollisionTask.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-SpuGatheringCollisionTask.Tpo -c -o libBulletMultiThreaded_la-SpuGatheringCollisionTask.lo `test -f 'BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-SpuGatheringCollisionTask.Tpo $(DEPDIR)/libBulletMultiThreaded_la-SpuGatheringCollisionTask.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp' object='libBulletMultiThreaded_la-SpuGatheringCollisionTask.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-SpuGatheringCollisionTask.lo `test -f 'BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuGatheringCollisionTask.cpp
+
+libBulletMultiThreaded_la-SpuMinkowskiPenetrationDepthSolver.lo: BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-SpuMinkowskiPenetrationDepthSolver.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-SpuMinkowskiPenetrationDepthSolver.Tpo -c -o libBulletMultiThreaded_la-SpuMinkowskiPenetrationDepthSolver.lo `test -f 'BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-SpuMinkowskiPenetrationDepthSolver.Tpo $(DEPDIR)/libBulletMultiThreaded_la-SpuMinkowskiPenetrationDepthSolver.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp' object='libBulletMultiThreaded_la-SpuMinkowskiPenetrationDepthSolver.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-SpuMinkowskiPenetrationDepthSolver.lo `test -f 'BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuMinkowskiPenetrationDepthSolver.cpp
+
+libBulletMultiThreaded_la-SpuCollisionShapes.lo: BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-SpuCollisionShapes.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-SpuCollisionShapes.Tpo -c -o libBulletMultiThreaded_la-SpuCollisionShapes.lo `test -f 'BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-SpuCollisionShapes.Tpo $(DEPDIR)/libBulletMultiThreaded_la-SpuCollisionShapes.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp' object='libBulletMultiThreaded_la-SpuCollisionShapes.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-SpuCollisionShapes.lo `test -f 'BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuNarrowPhaseCollisionTask/SpuCollisionShapes.cpp
+
+libBulletMultiThreaded_la-btThreadSupportInterface.lo: BulletMultiThreaded/btThreadSupportInterface.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-btThreadSupportInterface.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-btThreadSupportInterface.Tpo -c -o libBulletMultiThreaded_la-btThreadSupportInterface.lo `test -f 'BulletMultiThreaded/btThreadSupportInterface.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/btThreadSupportInterface.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-btThreadSupportInterface.Tpo $(DEPDIR)/libBulletMultiThreaded_la-btThreadSupportInterface.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/btThreadSupportInterface.cpp' object='libBulletMultiThreaded_la-btThreadSupportInterface.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-btThreadSupportInterface.lo `test -f 'BulletMultiThreaded/btThreadSupportInterface.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/btThreadSupportInterface.cpp
+
+libBulletMultiThreaded_la-SequentialThreadSupport.lo: BulletMultiThreaded/SequentialThreadSupport.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-SequentialThreadSupport.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-SequentialThreadSupport.Tpo -c -o libBulletMultiThreaded_la-SequentialThreadSupport.lo `test -f 'BulletMultiThreaded/SequentialThreadSupport.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SequentialThreadSupport.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-SequentialThreadSupport.Tpo $(DEPDIR)/libBulletMultiThreaded_la-SequentialThreadSupport.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/SequentialThreadSupport.cpp' object='libBulletMultiThreaded_la-SequentialThreadSupport.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-SequentialThreadSupport.lo `test -f 'BulletMultiThreaded/SequentialThreadSupport.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SequentialThreadSupport.cpp
+
+libBulletMultiThreaded_la-SpuGatheringCollisionDispatcher.lo: BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-SpuGatheringCollisionDispatcher.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-SpuGatheringCollisionDispatcher.Tpo -c -o libBulletMultiThreaded_la-SpuGatheringCollisionDispatcher.lo `test -f 'BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-SpuGatheringCollisionDispatcher.Tpo $(DEPDIR)/libBulletMultiThreaded_la-SpuGatheringCollisionDispatcher.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp' object='libBulletMultiThreaded_la-SpuGatheringCollisionDispatcher.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-SpuGatheringCollisionDispatcher.lo `test -f 'BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuGatheringCollisionDispatcher.cpp
+
+libBulletMultiThreaded_la-Win32ThreadSupport.lo: BulletMultiThreaded/Win32ThreadSupport.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-Win32ThreadSupport.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-Win32ThreadSupport.Tpo -c -o libBulletMultiThreaded_la-Win32ThreadSupport.lo `test -f 'BulletMultiThreaded/Win32ThreadSupport.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/Win32ThreadSupport.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-Win32ThreadSupport.Tpo $(DEPDIR)/libBulletMultiThreaded_la-Win32ThreadSupport.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/Win32ThreadSupport.cpp' object='libBulletMultiThreaded_la-Win32ThreadSupport.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-Win32ThreadSupport.lo `test -f 'BulletMultiThreaded/Win32ThreadSupport.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/Win32ThreadSupport.cpp
+
+libBulletMultiThreaded_la-SpuFakeDma.lo: BulletMultiThreaded/SpuFakeDma.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-SpuFakeDma.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-SpuFakeDma.Tpo -c -o libBulletMultiThreaded_la-SpuFakeDma.lo `test -f 'BulletMultiThreaded/SpuFakeDma.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuFakeDma.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-SpuFakeDma.Tpo $(DEPDIR)/libBulletMultiThreaded_la-SpuFakeDma.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/SpuFakeDma.cpp' object='libBulletMultiThreaded_la-SpuFakeDma.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-SpuFakeDma.lo `test -f 'BulletMultiThreaded/SpuFakeDma.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuFakeDma.cpp
+
+libBulletMultiThreaded_la-PosixThreadSupport.lo: BulletMultiThreaded/PosixThreadSupport.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-PosixThreadSupport.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-PosixThreadSupport.Tpo -c -o libBulletMultiThreaded_la-PosixThreadSupport.lo `test -f 'BulletMultiThreaded/PosixThreadSupport.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/PosixThreadSupport.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-PosixThreadSupport.Tpo $(DEPDIR)/libBulletMultiThreaded_la-PosixThreadSupport.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/PosixThreadSupport.cpp' object='libBulletMultiThreaded_la-PosixThreadSupport.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-PosixThreadSupport.lo `test -f 'BulletMultiThreaded/PosixThreadSupport.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/PosixThreadSupport.cpp
+
+libBulletMultiThreaded_la-SpuCollisionTaskProcess.lo: BulletMultiThreaded/SpuCollisionTaskProcess.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-SpuCollisionTaskProcess.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-SpuCollisionTaskProcess.Tpo -c -o libBulletMultiThreaded_la-SpuCollisionTaskProcess.lo `test -f 'BulletMultiThreaded/SpuCollisionTaskProcess.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuCollisionTaskProcess.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-SpuCollisionTaskProcess.Tpo $(DEPDIR)/libBulletMultiThreaded_la-SpuCollisionTaskProcess.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/SpuCollisionTaskProcess.cpp' object='libBulletMultiThreaded_la-SpuCollisionTaskProcess.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-SpuCollisionTaskProcess.lo `test -f 'BulletMultiThreaded/SpuCollisionTaskProcess.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuCollisionTaskProcess.cpp
+
+libBulletMultiThreaded_la-SpuContactManifoldCollisionAlgorithm.lo: BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-SpuContactManifoldCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-SpuContactManifoldCollisionAlgorithm.Tpo -c -o libBulletMultiThreaded_la-SpuContactManifoldCollisionAlgorithm.lo `test -f 'BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-SpuContactManifoldCollisionAlgorithm.Tpo $(DEPDIR)/libBulletMultiThreaded_la-SpuContactManifoldCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp' object='libBulletMultiThreaded_la-SpuContactManifoldCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-SpuContactManifoldCollisionAlgorithm.lo `test -f 'BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp
+
+libBulletMultiThreaded_la-SpuSampleTaskProcess.lo: BulletMultiThreaded/SpuSampleTaskProcess.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-SpuSampleTaskProcess.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-SpuSampleTaskProcess.Tpo -c -o libBulletMultiThreaded_la-SpuSampleTaskProcess.lo `test -f 'BulletMultiThreaded/SpuSampleTaskProcess.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuSampleTaskProcess.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-SpuSampleTaskProcess.Tpo $(DEPDIR)/libBulletMultiThreaded_la-SpuSampleTaskProcess.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/SpuSampleTaskProcess.cpp' object='libBulletMultiThreaded_la-SpuSampleTaskProcess.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-SpuSampleTaskProcess.lo `test -f 'BulletMultiThreaded/SpuSampleTaskProcess.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuSampleTaskProcess.cpp
+
+libBulletMultiThreaded_la-boxBoxDistance.lo: BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -MT libBulletMultiThreaded_la-boxBoxDistance.lo -MD -MP -MF $(DEPDIR)/libBulletMultiThreaded_la-boxBoxDistance.Tpo -c -o libBulletMultiThreaded_la-boxBoxDistance.lo `test -f 'BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libBulletMultiThreaded_la-boxBoxDistance.Tpo $(DEPDIR)/libBulletMultiThreaded_la-boxBoxDistance.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp' object='libBulletMultiThreaded_la-boxBoxDistance.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libBulletMultiThreaded_la_CXXFLAGS) $(CXXFLAGS) -c -o libBulletMultiThreaded_la-boxBoxDistance.lo `test -f 'BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp' || echo '$(srcdir)/'`BulletMultiThreaded/SpuNarrowPhaseCollisionTask/boxBoxDistance.cpp
+
+btDefaultSoftBodySolver.lo: BulletSoftBody/btDefaultSoftBodySolver.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btDefaultSoftBodySolver.lo -MD -MP -MF $(DEPDIR)/btDefaultSoftBodySolver.Tpo -c -o btDefaultSoftBodySolver.lo `test -f 'BulletSoftBody/btDefaultSoftBodySolver.cpp' || echo '$(srcdir)/'`BulletSoftBody/btDefaultSoftBodySolver.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btDefaultSoftBodySolver.Tpo $(DEPDIR)/btDefaultSoftBodySolver.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletSoftBody/btDefaultSoftBodySolver.cpp' object='btDefaultSoftBodySolver.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btDefaultSoftBodySolver.lo `test -f 'BulletSoftBody/btDefaultSoftBodySolver.cpp' || echo '$(srcdir)/'`BulletSoftBody/btDefaultSoftBodySolver.cpp
+
+btSoftBodyRigidBodyCollisionConfiguration.lo: BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSoftBodyRigidBodyCollisionConfiguration.lo -MD -MP -MF $(DEPDIR)/btSoftBodyRigidBodyCollisionConfiguration.Tpo -c -o btSoftBodyRigidBodyCollisionConfiguration.lo `test -f 'BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp' || echo '$(srcdir)/'`BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSoftBodyRigidBodyCollisionConfiguration.Tpo $(DEPDIR)/btSoftBodyRigidBodyCollisionConfiguration.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp' object='btSoftBodyRigidBodyCollisionConfiguration.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSoftBodyRigidBodyCollisionConfiguration.lo `test -f 'BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp' || echo '$(srcdir)/'`BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp
+
+btSoftBody.lo: BulletSoftBody/btSoftBody.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSoftBody.lo -MD -MP -MF $(DEPDIR)/btSoftBody.Tpo -c -o btSoftBody.lo `test -f 'BulletSoftBody/btSoftBody.cpp' || echo '$(srcdir)/'`BulletSoftBody/btSoftBody.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSoftBody.Tpo $(DEPDIR)/btSoftBody.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletSoftBody/btSoftBody.cpp' object='btSoftBody.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSoftBody.lo `test -f 'BulletSoftBody/btSoftBody.cpp' || echo '$(srcdir)/'`BulletSoftBody/btSoftBody.cpp
+
+btSoftRigidCollisionAlgorithm.lo: BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSoftRigidCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/btSoftRigidCollisionAlgorithm.Tpo -c -o btSoftRigidCollisionAlgorithm.lo `test -f 'BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSoftRigidCollisionAlgorithm.Tpo $(DEPDIR)/btSoftRigidCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp' object='btSoftRigidCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSoftRigidCollisionAlgorithm.lo `test -f 'BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp
+
+btSoftBodyConcaveCollisionAlgorithm.lo: BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSoftBodyConcaveCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/btSoftBodyConcaveCollisionAlgorithm.Tpo -c -o btSoftBodyConcaveCollisionAlgorithm.lo `test -f 'BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSoftBodyConcaveCollisionAlgorithm.Tpo $(DEPDIR)/btSoftBodyConcaveCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp' object='btSoftBodyConcaveCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSoftBodyConcaveCollisionAlgorithm.lo `test -f 'BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp
+
+btSoftRigidDynamicsWorld.lo: BulletSoftBody/btSoftRigidDynamicsWorld.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSoftRigidDynamicsWorld.lo -MD -MP -MF $(DEPDIR)/btSoftRigidDynamicsWorld.Tpo -c -o btSoftRigidDynamicsWorld.lo `test -f 'BulletSoftBody/btSoftRigidDynamicsWorld.cpp' || echo '$(srcdir)/'`BulletSoftBody/btSoftRigidDynamicsWorld.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSoftRigidDynamicsWorld.Tpo $(DEPDIR)/btSoftRigidDynamicsWorld.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletSoftBody/btSoftRigidDynamicsWorld.cpp' object='btSoftRigidDynamicsWorld.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSoftRigidDynamicsWorld.lo `test -f 'BulletSoftBody/btSoftRigidDynamicsWorld.cpp' || echo '$(srcdir)/'`BulletSoftBody/btSoftRigidDynamicsWorld.cpp
+
+btSoftBodyHelpers.lo: BulletSoftBody/btSoftBodyHelpers.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSoftBodyHelpers.lo -MD -MP -MF $(DEPDIR)/btSoftBodyHelpers.Tpo -c -o btSoftBodyHelpers.lo `test -f 'BulletSoftBody/btSoftBodyHelpers.cpp' || echo '$(srcdir)/'`BulletSoftBody/btSoftBodyHelpers.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSoftBodyHelpers.Tpo $(DEPDIR)/btSoftBodyHelpers.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletSoftBody/btSoftBodyHelpers.cpp' object='btSoftBodyHelpers.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSoftBodyHelpers.lo `test -f 'BulletSoftBody/btSoftBodyHelpers.cpp' || echo '$(srcdir)/'`BulletSoftBody/btSoftBodyHelpers.cpp
+
+btSoftSoftCollisionAlgorithm.lo: BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSoftSoftCollisionAlgorithm.lo -MD -MP -MF $(DEPDIR)/btSoftSoftCollisionAlgorithm.Tpo -c -o btSoftSoftCollisionAlgorithm.lo `test -f 'BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSoftSoftCollisionAlgorithm.Tpo $(DEPDIR)/btSoftSoftCollisionAlgorithm.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp' object='btSoftSoftCollisionAlgorithm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSoftSoftCollisionAlgorithm.lo `test -f 'BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp' || echo '$(srcdir)/'`BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp
+
+btQuickprof.lo: LinearMath/btQuickprof.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btQuickprof.lo -MD -MP -MF $(DEPDIR)/btQuickprof.Tpo -c -o btQuickprof.lo `test -f 'LinearMath/btQuickprof.cpp' || echo '$(srcdir)/'`LinearMath/btQuickprof.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btQuickprof.Tpo $(DEPDIR)/btQuickprof.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='LinearMath/btQuickprof.cpp' object='btQuickprof.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btQuickprof.lo `test -f 'LinearMath/btQuickprof.cpp' || echo '$(srcdir)/'`LinearMath/btQuickprof.cpp
+
+btGeometryUtil.lo: LinearMath/btGeometryUtil.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btGeometryUtil.lo -MD -MP -MF $(DEPDIR)/btGeometryUtil.Tpo -c -o btGeometryUtil.lo `test -f 'LinearMath/btGeometryUtil.cpp' || echo '$(srcdir)/'`LinearMath/btGeometryUtil.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btGeometryUtil.Tpo $(DEPDIR)/btGeometryUtil.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='LinearMath/btGeometryUtil.cpp' object='btGeometryUtil.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btGeometryUtil.lo `test -f 'LinearMath/btGeometryUtil.cpp' || echo '$(srcdir)/'`LinearMath/btGeometryUtil.cpp
+
+btAlignedAllocator.lo: LinearMath/btAlignedAllocator.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btAlignedAllocator.lo -MD -MP -MF $(DEPDIR)/btAlignedAllocator.Tpo -c -o btAlignedAllocator.lo `test -f 'LinearMath/btAlignedAllocator.cpp' || echo '$(srcdir)/'`LinearMath/btAlignedAllocator.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btAlignedAllocator.Tpo $(DEPDIR)/btAlignedAllocator.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='LinearMath/btAlignedAllocator.cpp' object='btAlignedAllocator.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btAlignedAllocator.lo `test -f 'LinearMath/btAlignedAllocator.cpp' || echo '$(srcdir)/'`LinearMath/btAlignedAllocator.cpp
+
+btSerializer.lo: LinearMath/btSerializer.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btSerializer.lo -MD -MP -MF $(DEPDIR)/btSerializer.Tpo -c -o btSerializer.lo `test -f 'LinearMath/btSerializer.cpp' || echo '$(srcdir)/'`LinearMath/btSerializer.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btSerializer.Tpo $(DEPDIR)/btSerializer.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='LinearMath/btSerializer.cpp' object='btSerializer.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btSerializer.lo `test -f 'LinearMath/btSerializer.cpp' || echo '$(srcdir)/'`LinearMath/btSerializer.cpp
+
+btConvexHull.lo: LinearMath/btConvexHull.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConvexHull.lo -MD -MP -MF $(DEPDIR)/btConvexHull.Tpo -c -o btConvexHull.lo `test -f 'LinearMath/btConvexHull.cpp' || echo '$(srcdir)/'`LinearMath/btConvexHull.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConvexHull.Tpo $(DEPDIR)/btConvexHull.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='LinearMath/btConvexHull.cpp' object='btConvexHull.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConvexHull.lo `test -f 'LinearMath/btConvexHull.cpp' || echo '$(srcdir)/'`LinearMath/btConvexHull.cpp
+
+btPolarDecomposition.lo: LinearMath/btPolarDecomposition.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btPolarDecomposition.lo -MD -MP -MF $(DEPDIR)/btPolarDecomposition.Tpo -c -o btPolarDecomposition.lo `test -f 'LinearMath/btPolarDecomposition.cpp' || echo '$(srcdir)/'`LinearMath/btPolarDecomposition.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btPolarDecomposition.Tpo $(DEPDIR)/btPolarDecomposition.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='LinearMath/btPolarDecomposition.cpp' object='btPolarDecomposition.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btPolarDecomposition.lo `test -f 'LinearMath/btPolarDecomposition.cpp' || echo '$(srcdir)/'`LinearMath/btPolarDecomposition.cpp
+
+btVector3.lo: LinearMath/btVector3.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btVector3.lo -MD -MP -MF $(DEPDIR)/btVector3.Tpo -c -o btVector3.lo `test -f 'LinearMath/btVector3.cpp' || echo '$(srcdir)/'`LinearMath/btVector3.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btVector3.Tpo $(DEPDIR)/btVector3.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='LinearMath/btVector3.cpp' object='btVector3.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btVector3.lo `test -f 'LinearMath/btVector3.cpp' || echo '$(srcdir)/'`LinearMath/btVector3.cpp
+
+btConvexHullComputer.lo: LinearMath/btConvexHullComputer.cpp
+@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT btConvexHullComputer.lo -MD -MP -MF $(DEPDIR)/btConvexHullComputer.Tpo -c -o btConvexHullComputer.lo `test -f 'LinearMath/btConvexHullComputer.cpp' || echo '$(srcdir)/'`LinearMath/btConvexHullComputer.cpp
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/btConvexHullComputer.Tpo $(DEPDIR)/btConvexHullComputer.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='LinearMath/btConvexHullComputer.cpp' object='btConvexHullComputer.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o btConvexHullComputer.lo `test -f 'LinearMath/btConvexHullComputer.cpp' || echo '$(srcdir)/'`LinearMath/btConvexHullComputer.cpp
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+install-nobase_bullet_includeHEADERS: $(nobase_bullet_include_HEADERS)
+ @$(NORMAL_INSTALL)
+ test -z "$(bullet_includedir)" || $(MKDIR_P) "$(DESTDIR)$(bullet_includedir)"
+ @list='$(nobase_bullet_include_HEADERS)'; test -n "$(bullet_includedir)" || list=; \
+ $(am__nobase_list) | while read dir files; do \
+ xfiles=; for file in $$files; do \
+ if test -f "$$file"; then xfiles="$$xfiles $$file"; \
+ else xfiles="$$xfiles $(srcdir)/$$file"; fi; done; \
+ test -z "$$xfiles" || { \
+ test "x$$dir" = x. || { \
+ echo "$(MKDIR_P) '$(DESTDIR)$(bullet_includedir)/$$dir'"; \
+ $(MKDIR_P) "$(DESTDIR)$(bullet_includedir)/$$dir"; }; \
+ echo " $(INSTALL_HEADER) $$xfiles '$(DESTDIR)$(bullet_includedir)/$$dir'"; \
+ $(INSTALL_HEADER) $$xfiles "$(DESTDIR)$(bullet_includedir)/$$dir" || exit $$?; }; \
+ done
+
+uninstall-nobase_bullet_includeHEADERS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nobase_bullet_include_HEADERS)'; test -n "$(bullet_includedir)" || list=; \
+ $(am__nobase_strip_setup); files=`$(am__nobase_strip)`; \
+ test -n "$$files" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(bullet_includedir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(bullet_includedir)" && rm -f $$files
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ set x; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: CTAGS
+CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile $(LTLIBRARIES) $(HEADERS)
+installdirs:
+ for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bullet_includedir)"; do \
+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
+ mostlyclean-am
+
+distclean: distclean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am: install-nobase_bullet_includeHEADERS
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am: install-libLTLIBRARIES
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-libLTLIBRARIES \
+ uninstall-nobase_bullet_includeHEADERS
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+ clean-libLTLIBRARIES clean-libtool ctags distclean \
+ distclean-compile distclean-generic distclean-libtool \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am \
+ install-libLTLIBRARIES install-man \
+ install-nobase_bullet_includeHEADERS install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ tags uninstall uninstall-am uninstall-libLTLIBRARIES \
+ uninstall-nobase_bullet_includeHEADERS
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Relative path conversion top directories.
+SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx")
+
+# Force unix paths in dependencies.
+SET(CMAKE_FORCE_UNIX_PATHS 1)
+
+# The C and CXX include file search paths:
+SET(CMAKE_C_INCLUDE_PATH
+ "/usr/local/include"
+ "src"
+ )
+SET(CMAKE_CXX_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+SET(CMAKE_Fortran_INCLUDE_PATH ${CMAKE_C_INCLUDE_PATH})
+
+# The C and CXX include file regular expressions for this directory.
+SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
--- /dev/null
+#IncludeRegexLine: ^[ ]*#[ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCL.cpp
+MiniCL/cl.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCL/cl.h
+BulletMultiThreaded/Win32ThreadSupport.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/BulletMultiThreaded/Win32ThreadSupport.h
+BulletMultiThreaded/PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/BulletMultiThreaded/PlatformDefinitions.h
+BulletMultiThreaded/PosixThreadSupport.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/BulletMultiThreaded/PosixThreadSupport.h
+BulletMultiThreaded/SequentialThreadSupport.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/BulletMultiThreaded/SequentialThreadSupport.h
+MiniCLTaskScheduler.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTaskScheduler.h
+MiniCLTask/MiniCLTask.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/MiniCLTask.h
+LinearMath/btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/LinearMath/btMinMax.h
+stdio.h
+-
+stddef.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/MiniCLTask.cpp
+MiniCLTask.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/MiniCLTask.h
+BulletMultiThreaded/PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/BulletMultiThreaded/PlatformDefinitions.h
+BulletMultiThreaded/SpuFakeDma.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/BulletMultiThreaded/SpuFakeDma.h
+LinearMath/btMinMax.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/LinearMath/btMinMax.h
+MiniCLTask.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/MiniCLTask.h
+MiniCL/MiniCLTaskScheduler.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/MiniCL/MiniCLTaskScheduler.h
+spu_printf.h
+-
+stdio.h
+-
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/MiniCLTask.h
+BulletMultiThreaded/PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/BulletMultiThreaded/PlatformDefinitions.h
+LinearMath/btScalar.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/LinearMath/btScalar.h
+LinearMath/btAlignedAllocator.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/LinearMath/btAlignedAllocator.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTaskScheduler.cpp
+MiniCLTaskScheduler.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTaskScheduler.h
+stdio.h
+-
+BulletMultiThreaded/btThreadSupportInterface.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/BulletMultiThreaded/btThreadSupportInterface.h
+string.h
+-
+MiniCL/cl_platform.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCL/cl_platform.h
+
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTaskScheduler.h
+assert.h
+-
+BulletMultiThreaded/PlatformDefinitions.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/BulletMultiThreaded/PlatformDefinitions.h
+stdlib.h
+-
+LinearMath/btAlignedObjectArray.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/LinearMath/btAlignedObjectArray.h
+MiniCLTask/MiniCLTask.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/MiniCLTask.h
+../SpuLibspe2Support.h
+/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/../SpuLibspe2Support.h
+spu_intrinsics.h
+-
+spu_mfcio.h
+-
+SpuFakeDma.h
+-
+
+src/BulletMultiThreaded/PlatformDefinitions.h
+LinearMath/btScalar.h
+src/BulletMultiThreaded/LinearMath/btScalar.h
+LinearMath/btMinMax.h
+src/BulletMultiThreaded/LinearMath/btMinMax.h
+physics_effects/base_level/base/pfx_vectormath_include.win32.h
+src/BulletMultiThreaded/physics_effects/base_level/base/pfx_vectormath_include.win32.h
+vectormath/vmInclude.h
+src/BulletMultiThreaded/vectormath/vmInclude.h
+malloc.h
+-
+string.h
+-
+stdio.h
+-
+stdint.h
+-
+stdlib.h
+-
+string.h
+-
+spu_printf.h
+-
+stdio.h
+-
+stdio.h
+-
+PpuAddressSpace.h
+src/BulletMultiThreaded/PpuAddressSpace.h
+
+src/BulletMultiThreaded/PosixThreadSupport.h
+LinearMath/btScalar.h
+src/BulletMultiThreaded/LinearMath/btScalar.h
+PlatformDefinitions.h
+src/BulletMultiThreaded/PlatformDefinitions.h
+pthread.h
+-
+semaphore.h
+-
+LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/LinearMath/btAlignedObjectArray.h
+btThreadSupportInterface.h
+src/BulletMultiThreaded/btThreadSupportInterface.h
+
+src/BulletMultiThreaded/PpuAddressSpace.h
+
+src/BulletMultiThreaded/SequentialThreadSupport.h
+LinearMath/btScalar.h
+src/BulletMultiThreaded/LinearMath/btScalar.h
+PlatformDefinitions.h
+src/BulletMultiThreaded/PlatformDefinitions.h
+LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/LinearMath/btAlignedObjectArray.h
+btThreadSupportInterface.h
+src/BulletMultiThreaded/btThreadSupportInterface.h
+
+src/BulletMultiThreaded/SpuFakeDma.h
+PlatformDefinitions.h
+src/BulletMultiThreaded/PlatformDefinitions.h
+LinearMath/btScalar.h
+src/BulletMultiThreaded/LinearMath/btScalar.h
+cell/dma.h
+-
+stdint.h
+-
+spu_mfcio.h
+-
+
+src/BulletMultiThreaded/Win32ThreadSupport.h
+LinearMath/btScalar.h
+src/BulletMultiThreaded/LinearMath/btScalar.h
+PlatformDefinitions.h
+src/BulletMultiThreaded/PlatformDefinitions.h
+LinearMath/btAlignedObjectArray.h
+src/BulletMultiThreaded/LinearMath/btAlignedObjectArray.h
+btThreadSupportInterface.h
+src/BulletMultiThreaded/btThreadSupportInterface.h
+
+src/BulletMultiThreaded/btThreadSupportInterface.h
+LinearMath/btScalar.h
+-
+PlatformDefinitions.h
+src/BulletMultiThreaded/PlatformDefinitions.h
+PpuAddressSpace.h
+src/BulletMultiThreaded/PpuAddressSpace.h
+
+src/LinearMath/btAlignedAllocator.h
+btScalar.h
+src/LinearMath/btScalar.h
+
+src/LinearMath/btAlignedObjectArray.h
+btScalar.h
+src/LinearMath/btScalar.h
+btAlignedAllocator.h
+src/LinearMath/btAlignedAllocator.h
+memory.h
+-
+string.h
+-
+new
+-
+
+src/LinearMath/btMinMax.h
+btScalar.h
+src/LinearMath/btScalar.h
+
+src/LinearMath/btScalar.h
+math.h
+-
+stdlib.h
+-
+float.h
+-
+ppcintrinsics.h
+-
+emmintrin.h
+-
+stdio.h
+-
+assert.h
+-
+assert.h
+-
+spu_printf.h
+-
+assert.h
+-
+smmintrin.h
+-
+tmmintrin.h
+-
+pmmintrin.h
+-
+emmintrin.h
+-
+arm_neon.h
+-
+assert.h
+-
+stdio.h
+-
+assert.h
+-
+arm_neon.h
+-
+
+src/MiniCL/MiniCLTask/MiniCLTask.h
+BulletMultiThreaded/PlatformDefinitions.h
+src/MiniCL/MiniCLTask/BulletMultiThreaded/PlatformDefinitions.h
+LinearMath/btScalar.h
+src/MiniCL/MiniCLTask/LinearMath/btScalar.h
+LinearMath/btAlignedAllocator.h
+src/MiniCL/MiniCLTask/LinearMath/btAlignedAllocator.h
+
+src/MiniCL/MiniCLTaskScheduler.h
+assert.h
+-
+BulletMultiThreaded/PlatformDefinitions.h
+src/MiniCL/BulletMultiThreaded/PlatformDefinitions.h
+stdlib.h
+-
+LinearMath/btAlignedObjectArray.h
+src/MiniCL/LinearMath/btAlignedObjectArray.h
+MiniCLTask/MiniCLTask.h
+src/MiniCL/MiniCLTask/MiniCLTask.h
+../SpuLibspe2Support.h
+src/MiniCL/../SpuLibspe2Support.h
+spu_intrinsics.h
+-
+spu_mfcio.h
+-
+SpuFakeDma.h
+-
+
+src/MiniCL/cl.h
+MiniCL/cl_platform.h
+-
+MiniCL/cl_platform.h
+-
+
+src/MiniCL/cl_platform.h
+AvailabilityMacros.h
+-
+stdint.h
+-
+stddef.h
+-
+
+src/vectormath/neon/vectormath_aos.h
+math.h
+-
+stdio.h
+-
+vec_aos.h
+src/vectormath/neon/vec_aos.h
+quat_aos.h
+src/vectormath/neon/quat_aos.h
+mat_aos.h
+src/vectormath/neon/mat_aos.h
+
+src/vectormath/scalar/vectormath_aos.h
+math.h
+-
+stdio.h
+-
+vec_aos.h
+src/vectormath/scalar/vec_aos.h
+quat_aos.h
+src/vectormath/scalar/quat_aos.h
+mat_aos.h
+src/vectormath/scalar/mat_aos.h
+
+src/vectormath/sse/boolInVec.h
+math.h
+-
+floatInVec.h
+src/vectormath/sse/floatInVec.h
+
+src/vectormath/sse/floatInVec.h
+math.h
+-
+xmmintrin.h
+-
+boolInVec.h
+src/vectormath/sse/boolInVec.h
+
+src/vectormath/sse/mat_aos.h
+
+src/vectormath/sse/quat_aos.h
+
+src/vectormath/sse/vec_aos.h
+
+src/vectormath/sse/vecidx_aos.h
+floatInVec.h
+src/vectormath/sse/floatInVec.h
+
+src/vectormath/sse/vectormath_aos.h
+math.h
+-
+xmmintrin.h
+-
+emmintrin.h
+-
+assert.h
+-
+pmmintrin.h
+-
+vecidx_aos.h
+src/vectormath/sse/vecidx_aos.h
+floatInVec.h
+src/vectormath/sse/floatInVec.h
+boolInVec.h
+src/vectormath/sse/boolInVec.h
+stdio.h
+-
+vec_aos.h
+src/vectormath/sse/vec_aos.h
+quat_aos.h
+src/vectormath/sse/quat_aos.h
+mat_aos.h
+src/vectormath/sse/mat_aos.h
+
+src/vectormath/vmInclude.h
+LinearMath/btScalar.h
+src/vectormath/LinearMath/btScalar.h
+vectormath_aos.h
+-
+sse/vectormath_aos.h
+src/vectormath/sse/vectormath_aos.h
+neon/vectormath_aos.h
+src/vectormath/neon/vectormath_aos.h
+scalar/vectormath_aos.h
+src/vectormath/scalar/vectormath_aos.h
+
--- /dev/null
+# The set of languages for which implicit dependencies are needed:
+SET(CMAKE_DEPENDS_LANGUAGES
+ "CXX"
+ )
+# The set of files for implicit dependencies of each language:
+SET(CMAKE_DEPENDS_CHECK_CXX
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCL.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/MiniCLTask.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTaskScheduler.cpp" "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o"
+ )
+SET(CMAKE_CXX_COMPILER_ID "GNU")
+
+# Preprocessor definitions for this target.
+SET(CMAKE_TARGET_DEFINITIONS
+ "USE_GRAPHICAL_BENCHMARK"
+ )
+
+# Targets to which this target links.
+SET(CMAKE_TARGET_LINKED_INFO_FILES
+ )
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# Include any dependencies generated for this target.
+include src/MiniCL/CMakeFiles/MiniCL.dir/depend.make
+
+# Include the progress variables for this target.
+include src/MiniCL/CMakeFiles/MiniCL.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include src/MiniCL/CMakeFiles/MiniCL.dir/flags.make
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/MiniCL/CMakeFiles/MiniCL.dir/flags.make
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/MiniCL/MiniCL.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_1)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/MiniCL.dir/MiniCL.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCL.cpp
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/MiniCL.dir/MiniCL.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCL.cpp > CMakeFiles/MiniCL.dir/MiniCL.i
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/MiniCL.dir/MiniCL.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCL.cpp -o CMakeFiles/MiniCL.dir/MiniCL.s
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o.requires:
+.PHONY : src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o.requires
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o.provides: src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o.requires
+ $(MAKE) -f src/MiniCL/CMakeFiles/MiniCL.dir/build.make src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o.provides.build
+.PHONY : src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o.provides
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o.provides.build: src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/MiniCL/CMakeFiles/MiniCL.dir/flags.make
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/MiniCL/MiniCLTaskScheduler.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_2)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTaskScheduler.cpp
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTaskScheduler.cpp > CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.i
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTaskScheduler.cpp -o CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.s
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o.requires:
+.PHONY : src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o.requires
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o.provides: src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o.requires
+ $(MAKE) -f src/MiniCL/CMakeFiles/MiniCL.dir/build.make src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o.provides.build
+.PHONY : src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o.provides
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o.provides.build: src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/MiniCL/CMakeFiles/MiniCL.dir/flags.make
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/MiniCL/MiniCLTask/MiniCLTask.cpp
+ $(CMAKE_COMMAND) -E cmake_progress_report /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles $(CMAKE_PROGRESS_3)
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o -c /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/MiniCLTask.cpp
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.i"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/MiniCLTask.cpp > CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.i
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.s"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/MiniCLTask.cpp -o CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.s
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o.requires:
+.PHONY : src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o.requires
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o.provides: src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o.requires
+ $(MAKE) -f src/MiniCL/CMakeFiles/MiniCL.dir/build.make src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o.provides.build
+.PHONY : src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o.provides
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o.provides.build: src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o
+
+# Object files for target MiniCL
+MiniCL_OBJECTS = \
+"CMakeFiles/MiniCL.dir/MiniCL.o" \
+"CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o" \
+"CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o"
+
+# External object files for target MiniCL
+MiniCL_EXTERNAL_OBJECTS =
+
+src/MiniCL/libMiniCL.a: src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o
+src/MiniCL/libMiniCL.a: src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o
+src/MiniCL/libMiniCL.a: src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o
+src/MiniCL/libMiniCL.a: src/MiniCL/CMakeFiles/MiniCL.dir/build.make
+src/MiniCL/libMiniCL.a: src/MiniCL/CMakeFiles/MiniCL.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX static library libMiniCL.a"
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL && $(CMAKE_COMMAND) -P CMakeFiles/MiniCL.dir/cmake_clean_target.cmake
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/MiniCL.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+src/MiniCL/CMakeFiles/MiniCL.dir/build: src/MiniCL/libMiniCL.a
+.PHONY : src/MiniCL/CMakeFiles/MiniCL.dir/build
+
+src/MiniCL/CMakeFiles/MiniCL.dir/requires: src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o.requires
+src/MiniCL/CMakeFiles/MiniCL.dir/requires: src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o.requires
+src/MiniCL/CMakeFiles/MiniCL.dir/requires: src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o.requires
+.PHONY : src/MiniCL/CMakeFiles/MiniCL.dir/requires
+
+src/MiniCL/CMakeFiles/MiniCL.dir/clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL && $(CMAKE_COMMAND) -P CMakeFiles/MiniCL.dir/cmake_clean.cmake
+.PHONY : src/MiniCL/CMakeFiles/MiniCL.dir/clean
+
+src/MiniCL/CMakeFiles/MiniCL.dir/depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/CMakeFiles/MiniCL.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : src/MiniCL/CMakeFiles/MiniCL.dir/depend
+
--- /dev/null
+FILE(REMOVE_RECURSE
+ "CMakeFiles/MiniCL.dir/MiniCL.o"
+ "CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o"
+ "CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o"
+ "libMiniCL.pdb"
+ "libMiniCL.a"
+)
+
+# Per-language clean rules from dependency scanning.
+FOREACH(lang CXX)
+ INCLUDE(CMakeFiles/MiniCL.dir/cmake_clean_${lang}.cmake OPTIONAL)
+ENDFOREACH(lang)
--- /dev/null
+FILE(REMOVE_RECURSE
+ "libMiniCL.a"
+)
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCL.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/MiniCLTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTaskScheduler.h
+ src/BulletMultiThreaded/PlatformDefinitions.h
+ src/BulletMultiThreaded/PosixThreadSupport.h
+ src/BulletMultiThreaded/PpuAddressSpace.h
+ src/BulletMultiThreaded/SequentialThreadSupport.h
+ src/BulletMultiThreaded/Win32ThreadSupport.h
+ src/BulletMultiThreaded/btThreadSupportInterface.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btScalar.h
+ src/MiniCL/cl.h
+ src/MiniCL/cl_platform.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/MiniCLTask.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/MiniCLTask.h
+ src/BulletMultiThreaded/PlatformDefinitions.h
+ src/BulletMultiThreaded/PpuAddressSpace.h
+ src/BulletMultiThreaded/SpuFakeDma.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btScalar.h
+ src/MiniCL/MiniCLTask/MiniCLTask.h
+ src/MiniCL/MiniCLTaskScheduler.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTask/MiniCLTask.h
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTaskScheduler.cpp
+ /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/MiniCLTaskScheduler.h
+ src/BulletMultiThreaded/PlatformDefinitions.h
+ src/BulletMultiThreaded/PpuAddressSpace.h
+ src/BulletMultiThreaded/btThreadSupportInterface.h
+ src/LinearMath/btAlignedAllocator.h
+ src/LinearMath/btAlignedObjectArray.h
+ src/LinearMath/btMinMax.h
+ src/LinearMath/btScalar.h
+ src/MiniCL/cl_platform.h
+ src/vectormath/neon/vectormath_aos.h
+ src/vectormath/scalar/vectormath_aos.h
+ src/vectormath/sse/boolInVec.h
+ src/vectormath/sse/floatInVec.h
+ src/vectormath/sse/mat_aos.h
+ src/vectormath/sse/quat_aos.h
+ src/vectormath/sse/vec_aos.h
+ src/vectormath/sse/vecidx_aos.h
+ src/vectormath/sse/vectormath_aos.h
+ src/vectormath/vmInclude.h
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/MiniCL/MiniCL.cpp
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/MiniCL/MiniCLTask/MiniCLTask.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/MiniCL/MiniCLTaskScheduler.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/BulletMultiThreaded/PlatformDefinitions.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/BulletMultiThreaded/PosixThreadSupport.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/BulletMultiThreaded/PpuAddressSpace.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/BulletMultiThreaded/SequentialThreadSupport.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/BulletMultiThreaded/Win32ThreadSupport.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/BulletMultiThreaded/btThreadSupportInterface.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/LinearMath/btAlignedAllocator.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/LinearMath/btAlignedObjectArray.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/LinearMath/btMinMax.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/LinearMath/btScalar.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/MiniCL/cl.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/MiniCL/cl_platform.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/vectormath/neon/vectormath_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/vectormath/scalar/vectormath_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/vectormath/sse/boolInVec.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/vectormath/sse/floatInVec.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/vectormath/sse/mat_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/vectormath/sse/quat_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/vectormath/sse/vec_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/vectormath/sse/vecidx_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/vectormath/sse/vectormath_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o: src/vectormath/vmInclude.h
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/MiniCL/MiniCLTask/MiniCLTask.cpp
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/MiniCL/MiniCLTask/MiniCLTask.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/BulletMultiThreaded/PlatformDefinitions.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/BulletMultiThreaded/PpuAddressSpace.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/BulletMultiThreaded/SpuFakeDma.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/LinearMath/btAlignedAllocator.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/LinearMath/btAlignedObjectArray.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/LinearMath/btMinMax.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/LinearMath/btScalar.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/MiniCL/MiniCLTask/MiniCLTask.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/MiniCL/MiniCLTaskScheduler.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/vectormath/neon/vectormath_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/vectormath/scalar/vectormath_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/vectormath/sse/boolInVec.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/vectormath/sse/floatInVec.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/vectormath/sse/mat_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/vectormath/sse/quat_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/vectormath/sse/vec_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/vectormath/sse/vecidx_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/vectormath/sse/vectormath_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o: src/vectormath/vmInclude.h
+
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/MiniCL/MiniCLTask/MiniCLTask.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/MiniCL/MiniCLTaskScheduler.cpp
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/MiniCL/MiniCLTaskScheduler.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/BulletMultiThreaded/PlatformDefinitions.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/BulletMultiThreaded/PpuAddressSpace.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/BulletMultiThreaded/btThreadSupportInterface.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/LinearMath/btAlignedAllocator.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/LinearMath/btAlignedObjectArray.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/LinearMath/btMinMax.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/LinearMath/btScalar.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/MiniCL/cl_platform.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/vectormath/neon/vectormath_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/vectormath/scalar/vectormath_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/vectormath/sse/boolInVec.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/vectormath/sse/floatInVec.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/vectormath/sse/mat_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/vectormath/sse/quat_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/vectormath/sse/vec_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/vectormath/sse/vecidx_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/vectormath/sse/vectormath_aos.h
+src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o: src/vectormath/vmInclude.h
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -O3 -DNDEBUG -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk -I/usr/local/include -I/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src
+
+CXX_DEFINES = -DUSE_GRAPHICAL_BENCHMARK
+
--- /dev/null
+/usr/bin/ar cr libMiniCL.a CMakeFiles/MiniCL.dir/MiniCL.o CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o
+/usr/bin/ranlib libMiniCL.a
--- /dev/null
+CMAKE_PROGRESS_1 =
+CMAKE_PROGRESS_2 = 99
+CMAKE_PROGRESS_3 = 100
+
--- /dev/null
+#MiniCL provides a small subset of OpenCL
+
+INCLUDE_DIRECTORIES(
+ ${BULLET_PHYSICS_SOURCE_DIR}/src
+ ${VECTOR_MATH_INCLUDE}
+)
+
+SET(MiniCL_SRCS
+ MiniCL.cpp
+ MiniCLTaskScheduler.cpp
+ MiniCLTask/MiniCLTask.cpp
+)
+
+SET(Root_HDRS
+ MiniCLTaskScheduler.h
+ cl.h
+ cl_gl.h
+ cl_platform.h
+ cl_MiniCL_Defs.h
+)
+
+SET(MiniCLTask_HDRS
+ MiniCLTask/MiniCLTask.h
+)
+
+SET(MiniCL_HDRS
+ ${Root_HDRS}
+ ${MiniCLTask_HDRS}
+)
+
+ADD_LIBRARY(MiniCL ${MiniCL_SRCS} ${MiniCL_HDRS} )
+SET_TARGET_PROPERTIES(MiniCL PROPERTIES VERSION ${BULLET_VERSION})
+SET_TARGET_PROPERTIES(MiniCL PROPERTIES SOVERSION ${BULLET_VERSION})
+
+
+IF (BUILD_SHARED_LIBS)
+ TARGET_LINK_LIBRARIES(MiniCL BulletMultiThreaded BulletDynamics BulletCollision)
+ENDIF (BUILD_SHARED_LIBS)
+
+IF (INSTALL_LIBS)
+ IF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ #INSTALL of other files requires CMake 2.6
+ IF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+# IF(INSTALL_EXTRA_LIBS)
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS MiniCL DESTINATION .)
+ ELSE (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ INSTALL(TARGETS MiniCL DESTINATION lib${LIB_SUFFIX})
+ INSTALL(DIRECTORY
+${CMAKE_CURRENT_SOURCE_DIR} DESTINATION ${INCLUDE_INSTALL_DIR} FILES_MATCHING
+PATTERN "*.h" PATTERN ".svn" EXCLUDE PATTERN "CMakeFiles" EXCLUDE)
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+# ENDIF (INSTALL_EXTRA_LIBS)
+ ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
+
+ IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ SET_TARGET_PROPERTIES(MiniCL PROPERTIES FRAMEWORK true)
+
+ SET_TARGET_PROPERTIES(MiniCL PROPERTIES PUBLIC_HEADER "${Root_HDRS}")
+ # Have to list out sub-directories manually:
+ SET_PROPERTY(SOURCE ${MiniCLTask_HDRS} PROPERTY MACOSX_PACKAGE_LOCATION Headers/MiniCLTask)
+
+ ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
+ ENDIF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
+ENDIF (INSTALL_LIBS)
+
--- /dev/null
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/cmake"
+
+# The command to remove a file.
+RM = "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = "/Applications/CMake 2.8-6.app/Contents/bin/ccmake"
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/ccmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target install
+install: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install
+
+# Special rule for the target install
+install/fast: preinstall/fast
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -P cmake_install.cmake
+.PHONY : install/fast
+
+# Special rule for the target install/local
+install/local: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
+.PHONY : install/local
+
+# Special rule for the target install/local
+install/local/fast: install/local
+.PHONY : install/local/fast
+
+# Special rule for the target install/strip
+install/strip: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
+.PHONY : install/strip
+
+# Special rule for the target install/strip
+install/strip/fast: install/strip
+.PHONY : install/strip/fast
+
+# Special rule for the target list_install_components
+list_install_components:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
+.PHONY : list_install_components
+
+# Special rule for the target list_install_components
+list_install_components/fast: list_install_components
+.PHONY : list_install_components/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ "/Applications/CMake 2.8-6.app/Contents/bin/cmake" -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/CMakeFiles/progress.marks
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/MiniCL/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/MiniCL/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/MiniCL/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/MiniCL/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Convenience name for target.
+src/MiniCL/CMakeFiles/MiniCL.dir/rule:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f CMakeFiles/Makefile2 src/MiniCL/CMakeFiles/MiniCL.dir/rule
+.PHONY : src/MiniCL/CMakeFiles/MiniCL.dir/rule
+
+# Convenience name for target.
+MiniCL: src/MiniCL/CMakeFiles/MiniCL.dir/rule
+.PHONY : MiniCL
+
+# fast build rule for target.
+MiniCL/fast:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/MiniCL/CMakeFiles/MiniCL.dir/build.make src/MiniCL/CMakeFiles/MiniCL.dir/build
+.PHONY : MiniCL/fast
+
+# target to build an object file
+MiniCL.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/MiniCL/CMakeFiles/MiniCL.dir/build.make src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.o
+.PHONY : MiniCL.o
+
+# target to preprocess a source file
+MiniCL.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/MiniCL/CMakeFiles/MiniCL.dir/build.make src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.i
+.PHONY : MiniCL.i
+
+# target to generate assembly for a file
+MiniCL.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/MiniCL/CMakeFiles/MiniCL.dir/build.make src/MiniCL/CMakeFiles/MiniCL.dir/MiniCL.s
+.PHONY : MiniCL.s
+
+# target to build an object file
+MiniCLTask/MiniCLTask.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/MiniCL/CMakeFiles/MiniCL.dir/build.make src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.o
+.PHONY : MiniCLTask/MiniCLTask.o
+
+# target to preprocess a source file
+MiniCLTask/MiniCLTask.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/MiniCL/CMakeFiles/MiniCL.dir/build.make src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.i
+.PHONY : MiniCLTask/MiniCLTask.i
+
+# target to generate assembly for a file
+MiniCLTask/MiniCLTask.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/MiniCL/CMakeFiles/MiniCL.dir/build.make src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTask/MiniCLTask.s
+.PHONY : MiniCLTask/MiniCLTask.s
+
+# target to build an object file
+MiniCLTaskScheduler.o:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/MiniCL/CMakeFiles/MiniCL.dir/build.make src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.o
+.PHONY : MiniCLTaskScheduler.o
+
+# target to preprocess a source file
+MiniCLTaskScheduler.i:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/MiniCL/CMakeFiles/MiniCL.dir/build.make src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.i
+.PHONY : MiniCLTaskScheduler.i
+
+# target to generate assembly for a file
+MiniCLTaskScheduler.s:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(MAKE) -f src/MiniCL/CMakeFiles/MiniCL.dir/build.make src/MiniCL/CMakeFiles/MiniCL.dir/MiniCLTaskScheduler.s
+.PHONY : MiniCLTaskScheduler.s
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... MiniCL"
+ @echo "... edit_cache"
+ @echo "... install"
+ @echo "... install/local"
+ @echo "... install/strip"
+ @echo "... list_install_components"
+ @echo "... rebuild_cache"
+ @echo "... MiniCL.o"
+ @echo "... MiniCL.i"
+ @echo "... MiniCL.s"
+ @echo "... MiniCLTask/MiniCLTask.o"
+ @echo "... MiniCLTask/MiniCLTask.i"
+ @echo "... MiniCLTask/MiniCLTask.s"
+ @echo "... MiniCLTaskScheduler.o"
+ @echo "... MiniCLTaskScheduler.i"
+ @echo "... MiniCLTaskScheduler.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ cd /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
--- /dev/null
+/*
+ Copyright (C) 2010 Sony Computer Entertainment Inc.
+ All rights reserved.
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+*/
+
+
+#include "MiniCL/cl.h"
+#define __PHYSICS_COMMON_H__ 1
+#ifdef _WIN32
+#include "BulletMultiThreaded/Win32ThreadSupport.h"
+#endif
+
+#include "BulletMultiThreaded/PlatformDefinitions.h"
+#ifdef USE_PTHREADS
+#include "BulletMultiThreaded/PosixThreadSupport.h"
+#endif
+
+
+#include "BulletMultiThreaded/SequentialThreadSupport.h"
+#include "MiniCLTaskScheduler.h"
+#include "MiniCLTask/MiniCLTask.h"
+#include "LinearMath/btMinMax.h"
+#include <stdio.h>
+#include <stddef.h>
+
+//#define DEBUG_MINICL_KERNELS 1
+
+static const char* spPlatformID = "MiniCL, SCEA";
+static const char* spDriverVersion= "1.0";
+
+CL_API_ENTRY cl_int CL_API_CALL clGetPlatformIDs(
+ cl_uint num_entries,
+ cl_platform_id * platforms,
+ cl_uint * num_platforms ) CL_API_SUFFIX__VERSION_1_0
+{
+ if(platforms != NULL)
+ {
+ if(num_entries <= 0)
+ {
+ return CL_INVALID_VALUE;
+ }
+ *((const char**)platforms) = spPlatformID;
+ }
+ if(num_platforms != NULL)
+ {
+ *num_platforms = 1;
+ }
+ return CL_SUCCESS;
+}
+
+
+CL_API_ENTRY cl_int CL_API_CALL clGetPlatformInfo(
+ cl_platform_id platform,
+ cl_platform_info param_name,
+ size_t param_value_size,
+ void * param_value,
+ size_t * param_value_size_ret) CL_API_SUFFIX__VERSION_1_0
+{
+ char* pId = (char*)platform;
+ if(strcmp(pId, spPlatformID))
+ {
+ return CL_INVALID_PLATFORM;
+ }
+ switch(param_name)
+ {
+ case CL_PLATFORM_VERSION:
+ {
+ if(param_value_size < (strlen(spDriverVersion) + 1))
+ {
+ return CL_INVALID_VALUE;
+ }
+ strcpy((char*)param_value, spDriverVersion);
+ if(param_value_size_ret != NULL)
+ {
+ *param_value_size_ret = strlen(spDriverVersion) + 1;
+ }
+ break;
+ }
+ case CL_PLATFORM_NAME:
+ case CL_PLATFORM_VENDOR :
+ if(param_value_size < (strlen(spPlatformID) + 1))
+ {
+ return CL_INVALID_VALUE;
+ }
+ strcpy((char*)param_value, spPlatformID);
+ if(param_value_size_ret != NULL)
+ {
+ *param_value_size_ret = strlen(spPlatformID) + 1;
+ }
+ break;
+ default :
+ return CL_INVALID_VALUE;
+ }
+ return CL_SUCCESS;
+}
+
+
+
+
+CL_API_ENTRY cl_int CL_API_CALL clGetDeviceInfo(
+ cl_device_id device ,
+ cl_device_info param_name ,
+ size_t param_value_size ,
+ void * param_value ,
+ size_t * param_value_size_ret) CL_API_SUFFIX__VERSION_1_0
+{
+
+ switch (param_name)
+ {
+ case CL_DEVICE_NAME:
+ {
+ char deviceName[] = "MiniCL CPU";
+ unsigned int nameLen = (unsigned int)strlen(deviceName)+1;
+ btAssert(param_value_size>strlen(deviceName));
+ if (nameLen < param_value_size)
+ {
+ const char* cpuName = "MiniCL CPU";
+ sprintf((char*)param_value,"%s",cpuName);
+ } else
+ {
+ printf("error: param_value_size should be at least %d, but it is %zu\n",nameLen,param_value_size);
+ return CL_INVALID_VALUE;
+ }
+ break;
+ }
+ case CL_DEVICE_TYPE:
+ {
+ if (param_value_size>=sizeof(cl_device_type))
+ {
+ cl_device_type* deviceType = (cl_device_type*)param_value;
+ *deviceType = CL_DEVICE_TYPE_CPU;
+ } else
+ {
+ printf("error: param_value_size should be at least %zu\n",sizeof(cl_device_type));
+ return CL_INVALID_VALUE;
+ }
+ break;
+ }
+ case CL_DEVICE_MAX_COMPUTE_UNITS:
+ {
+ if (param_value_size>=sizeof(cl_uint))
+ {
+ cl_uint* numUnits = (cl_uint*)param_value;
+ *numUnits= 4;
+ } else
+ {
+ printf("error: param_value_size should be at least %zu\n",sizeof(cl_uint));
+ return CL_INVALID_VALUE;
+ }
+
+ break;
+ }
+ case CL_DEVICE_MAX_WORK_ITEM_SIZES:
+ {
+ size_t workitem_size[3];
+
+ if (param_value_size>=sizeof(workitem_size))
+ {
+ size_t* workItemSize = (size_t*)param_value;
+ workItemSize[0] = 64;
+ workItemSize[1] = 24;
+ workItemSize[2] = 16;
+ } else
+ {
+ printf("error: param_value_size should be at least %zu\n",sizeof(cl_uint));
+ return CL_INVALID_VALUE;
+ }
+ break;
+ }
+ case CL_DEVICE_MAX_CLOCK_FREQUENCY:
+ {
+ cl_uint* clock_frequency = (cl_uint*)param_value;
+ *clock_frequency = 3*1024;
+ break;
+ }
+
+ case CL_DEVICE_VENDOR :
+ {
+ if(param_value_size < (strlen(spPlatformID) + 1))
+ {
+ return CL_INVALID_VALUE;
+ }
+ strcpy((char*)param_value, spPlatformID);
+ if(param_value_size_ret != NULL)
+ {
+ *param_value_size_ret = strlen(spPlatformID) + 1;
+ }
+ break;
+ }
+ case CL_DRIVER_VERSION:
+ {
+ if(param_value_size < (strlen(spDriverVersion) + 1))
+ {
+ return CL_INVALID_VALUE;
+ }
+ strcpy((char*)param_value, spDriverVersion);
+ if(param_value_size_ret != NULL)
+ {
+ *param_value_size_ret = strlen(spDriverVersion) + 1;
+ }
+
+ break;
+ }
+ case CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS:
+ {
+ cl_uint* maxDimensions = (cl_uint*)param_value;
+ *maxDimensions = 1;
+ break;
+ }
+ case CL_DEVICE_MAX_WORK_GROUP_SIZE:
+ {
+ cl_uint* maxWorkGroupSize = (cl_uint*)param_value;
+ *maxWorkGroupSize = 128;//1;
+ break;
+ }
+ case CL_DEVICE_ADDRESS_BITS:
+ {
+ cl_uint* addressBits = (cl_uint*)param_value;
+ *addressBits= 32; //@todo: should this be 64 for 64bit builds?
+ break;
+ }
+ case CL_DEVICE_MAX_MEM_ALLOC_SIZE:
+ {
+ cl_ulong* maxMemAlloc = (cl_ulong*)param_value;
+ *maxMemAlloc= 512*1024*1024; //this "should be enough for everyone" ?
+ break;
+ }
+ case CL_DEVICE_GLOBAL_MEM_SIZE:
+ {
+ cl_ulong* maxMemAlloc = (cl_ulong*)param_value;
+ *maxMemAlloc= 1024*1024*1024; //this "should be enough for everyone" ?
+ break;
+ }
+
+ case CL_DEVICE_ERROR_CORRECTION_SUPPORT:
+ {
+ cl_bool* error_correction_support = (cl_bool*)param_value;
+ *error_correction_support = CL_FALSE;
+ break;
+ }
+
+ case CL_DEVICE_LOCAL_MEM_TYPE:
+ {
+ cl_device_local_mem_type* local_mem_type = (cl_device_local_mem_type*)param_value;
+ *local_mem_type = CL_GLOBAL;
+ break;
+ }
+ case CL_DEVICE_LOCAL_MEM_SIZE:
+ {
+ cl_ulong* localmem = (cl_ulong*) param_value;
+ *localmem = 32*1024;
+ break;
+ }
+
+ case CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE:
+ {
+ cl_ulong* localmem = (cl_ulong*) param_value;
+ *localmem = 64*1024;
+ break;
+ }
+ case CL_DEVICE_QUEUE_PROPERTIES:
+ {
+ cl_command_queue_properties* queueProp = (cl_command_queue_properties*) param_value;
+ memset(queueProp,0,param_value_size);
+
+ break;
+ }
+ case CL_DEVICE_IMAGE_SUPPORT:
+ {
+ cl_bool* imageSupport = (cl_bool*) param_value;
+ *imageSupport = CL_FALSE;
+ break;
+ }
+
+ case CL_DEVICE_MAX_WRITE_IMAGE_ARGS:
+ case CL_DEVICE_MAX_READ_IMAGE_ARGS:
+ {
+ cl_uint* imageArgs = (cl_uint*) param_value;
+ *imageArgs = 0;
+ break;
+ }
+ case CL_DEVICE_IMAGE3D_MAX_DEPTH:
+ case CL_DEVICE_IMAGE3D_MAX_HEIGHT:
+ case CL_DEVICE_IMAGE2D_MAX_HEIGHT:
+ case CL_DEVICE_IMAGE3D_MAX_WIDTH:
+ case CL_DEVICE_IMAGE2D_MAX_WIDTH:
+ {
+ size_t* maxSize = (size_t*) param_value;
+ *maxSize = 0;
+ break;
+ }
+
+ case CL_DEVICE_EXTENSIONS:
+ {
+ char* extensions = (char*) param_value;
+ *extensions = 0;
+ break;
+ }
+
+ case CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE:
+ case CL_DEVICE_PREFERRED_VECTOR_WIDTH_FLOAT:
+ case CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG:
+ case CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT:
+ case CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT:
+ case CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR:
+ {
+ cl_uint* width = (cl_uint*) param_value;
+ *width = 1;
+ break;
+ }
+
+ default:
+ {
+ printf("error: unsupported param_name:%d\n",param_name);
+ }
+ }
+
+
+ return 0;
+}
+
+CL_API_ENTRY cl_int CL_API_CALL clReleaseMemObject(cl_mem /* memobj */) CL_API_SUFFIX__VERSION_1_0
+{
+ return 0;
+}
+
+
+
+CL_API_ENTRY cl_int CL_API_CALL clReleaseCommandQueue(cl_command_queue /* command_queue */) CL_API_SUFFIX__VERSION_1_0
+{
+ return 0;
+}
+
+CL_API_ENTRY cl_int CL_API_CALL clReleaseProgram(cl_program /* program */) CL_API_SUFFIX__VERSION_1_0
+{
+ return 0;
+}
+
+CL_API_ENTRY cl_int CL_API_CALL clReleaseKernel(cl_kernel /* kernel */) CL_API_SUFFIX__VERSION_1_0
+{
+ return 0;
+}
+
+
+// Enqueued Commands APIs
+CL_API_ENTRY cl_int CL_API_CALL clEnqueueReadBuffer(cl_command_queue command_queue ,
+ cl_mem buffer ,
+ cl_bool /* blocking_read */,
+ size_t offset ,
+ size_t cb ,
+ void * ptr ,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0
+{
+ MiniCLTaskScheduler* scheduler = (MiniCLTaskScheduler*) command_queue;
+
+ ///wait for all work items to be completed
+ scheduler->flush();
+
+ memcpy(ptr,(char*)buffer + offset,cb);
+ return 0;
+}
+
+
+CL_API_ENTRY cl_int clGetProgramBuildInfo(cl_program /* program */,
+ cl_device_id /* device */,
+ cl_program_build_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0
+{
+
+ return 0;
+}
+
+
+// Program Object APIs
+CL_API_ENTRY cl_program
+clCreateProgramWithSource(cl_context context ,
+ cl_uint /* count */,
+ const char ** /* strings */,
+ const size_t * /* lengths */,
+ cl_int * errcode_ret ) CL_API_SUFFIX__VERSION_1_0
+{
+ *errcode_ret = CL_SUCCESS;
+ return (cl_program)context;
+}
+
+CL_API_ENTRY cl_int CL_API_CALL clEnqueueWriteBuffer(cl_command_queue command_queue ,
+ cl_mem buffer ,
+ cl_bool /* blocking_read */,
+ size_t offset,
+ size_t cb ,
+ const void * ptr ,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0
+{
+ MiniCLTaskScheduler* scheduler = (MiniCLTaskScheduler*) command_queue;
+
+ ///wait for all work items to be completed
+ scheduler->flush();
+
+ memcpy((char*)buffer + offset, ptr,cb);
+ return 0;
+}
+
+CL_API_ENTRY cl_int CL_API_CALL clFlush(cl_command_queue command_queue)
+{
+ MiniCLTaskScheduler* scheduler = (MiniCLTaskScheduler*) command_queue;
+ ///wait for all work items to be completed
+ scheduler->flush();
+ return 0;
+}
+
+
+CL_API_ENTRY cl_int CL_API_CALL clEnqueueNDRangeKernel(cl_command_queue /* command_queue */,
+ cl_kernel clKernel ,
+ cl_uint work_dim ,
+ const size_t * /* global_work_offset */,
+ const size_t * global_work_size ,
+ const size_t * /* local_work_size */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0
+{
+
+
+ MiniCLKernel* kernel = (MiniCLKernel*) clKernel;
+ for (unsigned int ii=0;ii<work_dim;ii++)
+ {
+ int maxTask = kernel->m_scheduler->getMaxNumOutstandingTasks();
+ int numWorkItems = global_work_size[ii];
+
+// //at minimum 64 work items per task
+// int numWorkItemsPerTask = btMax(64,numWorkItems / maxTask);
+ int numWorkItemsPerTask = numWorkItems / maxTask;
+ if (!numWorkItemsPerTask) numWorkItemsPerTask = 1;
+
+ for (int t=0;t<numWorkItems;)
+ {
+ //Performance Hint: tweak this number during benchmarking
+ int endIndex = (t+numWorkItemsPerTask) < numWorkItems ? t+numWorkItemsPerTask : numWorkItems;
+ kernel->m_scheduler->issueTask(t, endIndex, kernel);
+ t = endIndex;
+ }
+ }
+/*
+
+ void* bla = 0;
+
+ scheduler->issueTask(bla,2,3);
+ scheduler->flush();
+
+ */
+
+ return 0;
+}
+
+#define LOCAL_BUF_SIZE 32768
+static int sLocalMemBuf[LOCAL_BUF_SIZE * 4 + 16];
+static int* spLocalBufCurr = NULL;
+static int sLocalBufUsed = LOCAL_BUF_SIZE; // so it will be reset at the first call
+static void* localBufMalloc(int size)
+{
+ int size16 = (size + 15) >> 4; // in 16-byte units
+ if((sLocalBufUsed + size16) > LOCAL_BUF_SIZE)
+ { // reset
+ spLocalBufCurr = sLocalMemBuf;
+ while((size_t)spLocalBufCurr & 0x0F) spLocalBufCurr++; // align to 16 bytes
+ sLocalBufUsed = 0;
+ }
+ void* ret = spLocalBufCurr;
+ spLocalBufCurr += size16 * 4;
+ sLocalBufUsed += size;
+ return ret;
+}
+
+
+
+CL_API_ENTRY cl_int CL_API_CALL clSetKernelArg(cl_kernel clKernel ,
+ cl_uint arg_index ,
+ size_t arg_size ,
+ const void * arg_value ) CL_API_SUFFIX__VERSION_1_0
+{
+ MiniCLKernel* kernel = (MiniCLKernel* ) clKernel;
+ btAssert(arg_size <= MINICL_MAX_ARGLENGTH);
+ if (arg_index>MINI_CL_MAX_ARG)
+ {
+ printf("error: clSetKernelArg arg_index (%u) exceeds %u\n",arg_index,MINI_CL_MAX_ARG);
+ } else
+ {
+ if (arg_size>MINICL_MAX_ARGLENGTH)
+ //if (arg_size != MINICL_MAX_ARGLENGTH)
+ {
+ printf("error: clSetKernelArg argdata too large: %zu (maximum is %zu)\n",arg_size,MINICL_MAX_ARGLENGTH);
+ }
+ else
+ {
+ if(arg_value == NULL)
+ { // this is only for __local memory qualifier
+ void* ptr = localBufMalloc(arg_size);
+ kernel->m_argData[arg_index] = ptr;
+ }
+ else
+ {
+ memcpy(&(kernel->m_argData[arg_index]), arg_value, arg_size);
+ }
+ kernel->m_argSizes[arg_index] = arg_size;
+ if(arg_index >= kernel->m_numArgs)
+ {
+ kernel->m_numArgs = arg_index + 1;
+ kernel->updateLauncher();
+ }
+ }
+ }
+ return 0;
+}
+
+// Kernel Object APIs
+CL_API_ENTRY cl_kernel CL_API_CALL clCreateKernel(cl_program program ,
+ const char * kernel_name ,
+ cl_int * errcode_ret ) CL_API_SUFFIX__VERSION_1_0
+{
+ MiniCLTaskScheduler* scheduler = (MiniCLTaskScheduler*) program;
+ int nameLen = strlen(kernel_name);
+ if(nameLen >= MINI_CL_MAX_KERNEL_NAME)
+ {
+ *errcode_ret = CL_INVALID_KERNEL_NAME;
+ return NULL;
+ }
+
+ MiniCLKernel* kernel = new MiniCLKernel();
+
+ strcpy(kernel->m_name, kernel_name);
+ kernel->m_numArgs = 0;
+
+ //kernel->m_kernelProgramCommandId = scheduler->findProgramCommandIdByName(kernel_name);
+ //if (kernel->m_kernelProgramCommandId>=0)
+ //{
+ // *errcode_ret = CL_SUCCESS;
+ //} else
+ //{
+ // *errcode_ret = CL_INVALID_KERNEL_NAME;
+ //}
+ kernel->m_scheduler = scheduler;
+ if(kernel->registerSelf() == NULL)
+ {
+ *errcode_ret = CL_INVALID_KERNEL_NAME;
+ delete kernel;
+ return NULL;
+ }
+ else
+ {
+ *errcode_ret = CL_SUCCESS;
+ }
+
+ return (cl_kernel)kernel;
+
+}
+
+
+CL_API_ENTRY cl_int CL_API_CALL clBuildProgram(cl_program /* program */,
+ cl_uint /* num_devices */,
+ const cl_device_id * /* device_list */,
+ const char * /* options */,
+ void (*pfn_notify)(cl_program /* program */, void * /* user_data */),
+ void * /* user_data */) CL_API_SUFFIX__VERSION_1_0
+{
+ return CL_SUCCESS;
+}
+
+CL_API_ENTRY cl_program CL_API_CALL clCreateProgramWithBinary(cl_context context ,
+ cl_uint /* num_devices */,
+ const cl_device_id * /* device_list */,
+ const size_t * /* lengths */,
+ const unsigned char ** /* binaries */,
+ cl_int * /* binary_status */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0
+{
+ return (cl_program)context;
+}
+
+
+// Memory Object APIs
+CL_API_ENTRY cl_mem CL_API_CALL clCreateBuffer(cl_context /* context */,
+ cl_mem_flags flags ,
+ size_t size,
+ void * host_ptr ,
+ cl_int * errcode_ret ) CL_API_SUFFIX__VERSION_1_0
+{
+ cl_mem buf = (cl_mem)malloc(size);
+ if ((flags&CL_MEM_COPY_HOST_PTR) && host_ptr)
+ {
+ memcpy(buf,host_ptr,size);
+ }
+ *errcode_ret = 0;
+ return buf;
+}
+
+// Command Queue APIs
+CL_API_ENTRY cl_command_queue CL_API_CALL clCreateCommandQueue(cl_context context ,
+ cl_device_id /* device */,
+ cl_command_queue_properties /* properties */,
+ cl_int * errcode_ret ) CL_API_SUFFIX__VERSION_1_0
+{
+ *errcode_ret = 0;
+ return (cl_command_queue) context;
+}
+
+extern CL_API_ENTRY cl_int CL_API_CALL clGetContextInfo(cl_context /* context */,
+ cl_context_info param_name ,
+ size_t param_value_size ,
+ void * param_value,
+ size_t * param_value_size_ret ) CL_API_SUFFIX__VERSION_1_0
+{
+
+ switch (param_name)
+ {
+ case CL_CONTEXT_DEVICES:
+ {
+ if (!param_value_size)
+ {
+ *param_value_size_ret = 13;
+ } else
+ {
+ const char* testName = "MiniCL_Test.";
+ sprintf((char*)param_value,"%s",testName);
+ }
+ break;
+ };
+ default:
+ {
+ printf("unsupported\n");
+ }
+ }
+
+ return 0;
+}
+
+
+
+CL_API_ENTRY cl_context CL_API_CALL clCreateContextFromType(const cl_context_properties * /* properties */,
+ cl_device_type device_type ,
+ void (*pfn_notify)(const char *, const void *, size_t, void *) /* pfn_notify */,
+ void * /* user_data */,
+ cl_int * errcode_ret ) CL_API_SUFFIX__VERSION_1_0
+{
+ int maxNumOutstandingTasks = 4;
+// int maxNumOutstandingTasks = 2;
+// int maxNumOutstandingTasks = 1;
+ gMiniCLNumOutstandingTasks = maxNumOutstandingTasks;
+ const int maxNumOfThreadSupports = 8;
+ static int sUniqueThreadSupportIndex = 0;
+ static const char* sUniqueThreadSupportName[maxNumOfThreadSupports] =
+ {
+ "MiniCL_0", "MiniCL_1", "MiniCL_2", "MiniCL_3", "MiniCL_4", "MiniCL_5", "MiniCL_6", "MiniCL_7"
+ };
+
+ btThreadSupportInterface* threadSupport = 0;
+
+ if (device_type==CL_DEVICE_TYPE_DEBUG)
+ {
+ SequentialThreadSupport::SequentialThreadConstructionInfo stc("MiniCL",processMiniCLTask,createMiniCLLocalStoreMemory);
+ threadSupport = new SequentialThreadSupport(stc);
+ } else
+ {
+
+#if _WIN32
+ btAssert(sUniqueThreadSupportIndex < maxNumOfThreadSupports);
+ const char* bla = "MiniCL";
+ threadSupport = new Win32ThreadSupport(Win32ThreadSupport::Win32ThreadConstructionInfo(
+// bla,
+ sUniqueThreadSupportName[sUniqueThreadSupportIndex++],
+ processMiniCLTask, //processCollisionTask,
+ createMiniCLLocalStoreMemory,//createCollisionLocalStoreMemory,
+ maxNumOutstandingTasks));
+#else
+
+#ifdef USE_PTHREADS
+ PosixThreadSupport::ThreadConstructionInfo constructionInfo("PosixThreads",
+ processMiniCLTask,
+ createMiniCLLocalStoreMemory,
+ maxNumOutstandingTasks);
+ threadSupport = new PosixThreadSupport(constructionInfo);
+
+#else
+ ///todo: add posix thread support for other platforms
+ SequentialThreadSupport::SequentialThreadConstructionInfo stc("MiniCL",processMiniCLTask,createMiniCLLocalStoreMemory);
+ threadSupport = new SequentialThreadSupport(stc);
+#endif //USE_PTHREADS
+#endif
+
+ }
+
+
+ MiniCLTaskScheduler* scheduler = new MiniCLTaskScheduler(threadSupport,maxNumOutstandingTasks);
+
+ *errcode_ret = 0;
+ return (cl_context)scheduler;
+}
+
+CL_API_ENTRY cl_int CL_API_CALL
+clGetDeviceIDs(cl_platform_id /* platform */,
+ cl_device_type /* device_type */,
+ cl_uint /* num_entries */,
+ cl_device_id * /* devices */,
+ cl_uint * /* num_devices */) CL_API_SUFFIX__VERSION_1_0
+{
+ return 0;
+}
+
+CL_API_ENTRY cl_context CL_API_CALL
+clCreateContext(const cl_context_properties * properties ,
+ cl_uint num_devices ,
+ const cl_device_id * devices ,
+ void (*pfn_notify)(const char *, const void *, size_t, void *),
+ void * user_data ,
+ cl_int * errcode_ret ) CL_API_SUFFIX__VERSION_1_0
+{
+
+ return clCreateContextFromType(properties,CL_DEVICE_TYPE_ALL,pfn_notify,user_data,errcode_ret);
+}
+
+CL_API_ENTRY cl_int CL_API_CALL clReleaseContext(cl_context context ) CL_API_SUFFIX__VERSION_1_0
+{
+
+ MiniCLTaskScheduler* scheduler = (MiniCLTaskScheduler*) context;
+
+ btThreadSupportInterface* threadSupport = scheduler->getThreadSupportInterface();
+ delete scheduler;
+ delete threadSupport;
+
+ return 0;
+}
+extern CL_API_ENTRY cl_int CL_API_CALL
+clFinish(cl_command_queue command_queue ) CL_API_SUFFIX__VERSION_1_0
+{
+ MiniCLTaskScheduler* scheduler = (MiniCLTaskScheduler*) command_queue;
+ ///wait for all work items to be completed
+ scheduler->flush();
+ return CL_SUCCESS;
+}
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetProgramInfo(cl_program /* program */,
+ cl_program_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0
+{
+ return 0;
+}
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetKernelWorkGroupInfo(cl_kernel kernel ,
+ cl_device_id /* device */,
+ cl_kernel_work_group_info wgi/* param_name */,
+ size_t sz /* param_value_size */,
+ void * ptr /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0
+{
+ if((wgi == CL_KERNEL_WORK_GROUP_SIZE)
+ &&(sz == sizeof(size_t))
+ &&(ptr != NULL))
+ {
+ MiniCLKernel* miniCLKernel = (MiniCLKernel*)kernel;
+ MiniCLTaskScheduler* scheduler = miniCLKernel->m_scheduler;
+ *((size_t*)ptr) = scheduler->getMaxNumOutstandingTasks();
+ return CL_SUCCESS;
+ }
+ else
+ {
+ return CL_INVALID_VALUE;
+ }
+}
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library, Copyright (c) 2007 Erwin Coumans
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+*/
+
+
+#include "MiniCLTask.h"
+#include "BulletMultiThreaded/PlatformDefinitions.h"
+#include "BulletMultiThreaded/SpuFakeDma.h"
+#include "LinearMath/btMinMax.h"
+#include "MiniCLTask.h"
+#include "MiniCL/MiniCLTaskScheduler.h"
+
+
+#ifdef __SPU__
+#include <spu_printf.h>
+#else
+#include <stdio.h>
+#define spu_printf printf
+#endif
+
+int gMiniCLNumOutstandingTasks = 0;
+
+struct MiniCLTask_LocalStoreMemory
+{
+
+};
+
+
+//-- MAIN METHOD
+void processMiniCLTask(void* userPtr, void* lsMemory)
+{
+ // BT_PROFILE("processSampleTask");
+
+ MiniCLTask_LocalStoreMemory* localMemory = (MiniCLTask_LocalStoreMemory*)lsMemory;
+
+ MiniCLTaskDesc* taskDescPtr = (MiniCLTaskDesc*)userPtr;
+ MiniCLTaskDesc& taskDesc = *taskDescPtr;
+
+ for (unsigned int i=taskDesc.m_firstWorkUnit;i<taskDesc.m_lastWorkUnit;i++)
+ {
+ taskDesc.m_kernel->m_launcher(&taskDesc, i);
+ }
+
+// printf("Compute Unit[%d] executed kernel %d work items [%d..%d)\n",taskDesc.m_taskId,taskDesc.m_kernelProgramId,taskDesc.m_firstWorkUnit,taskDesc.m_lastWorkUnit);
+
+}
+
+
+#if defined(__CELLOS_LV2__) || defined (LIBSPE2)
+
+ATTRIBUTE_ALIGNED16(MiniCLTask_LocalStoreMemory gLocalStoreMemory);
+
+void* createMiniCLLocalStoreMemory()
+{
+ return &gLocalStoreMemory;
+}
+#else
+void* createMiniCLLocalStoreMemory()
+{
+ return new MiniCLTask_LocalStoreMemory;
+};
+
+#endif
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library, Copyright (c) 2007 Erwin Coumans
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+*/
+
+#ifndef MINICL__TASK_H
+#define MINICL__TASK_H
+
+#include "BulletMultiThreaded/PlatformDefinitions.h"
+#include "LinearMath/btScalar.h"
+
+#include "LinearMath/btAlignedAllocator.h"
+
+
+#define MINICL_MAX_ARGLENGTH (sizeof(void*))
+#define MINI_CL_MAX_ARG 16
+#define MINI_CL_MAX_KERNEL_NAME 256
+
+struct MiniCLKernel;
+
+ATTRIBUTE_ALIGNED16(struct) MiniCLTaskDesc
+{
+ BT_DECLARE_ALIGNED_ALLOCATOR();
+
+ MiniCLTaskDesc()
+ {
+ for (int i=0;i<MINI_CL_MAX_ARG;i++)
+ {
+ m_argSizes[i]=0;
+ }
+ }
+
+ uint32_t m_taskId;
+
+ uint32_t m_firstWorkUnit;
+ uint32_t m_lastWorkUnit;
+
+ MiniCLKernel* m_kernel;
+
+ void* m_argData[MINI_CL_MAX_ARG];
+ int m_argSizes[MINI_CL_MAX_ARG];
+};
+
+extern "C" int gMiniCLNumOutstandingTasks;
+
+
+void processMiniCLTask(void* userPtr, void* lsMemory);
+void* createMiniCLLocalStoreMemory();
+
+
+#endif //MINICL__TASK_H
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+//#define __CELLOS_LV2__ 1
+#define __BT_SKIP_UINT64_H 1
+
+#define USE_SAMPLE_PROCESS 1
+#ifdef USE_SAMPLE_PROCESS
+
+
+#include "MiniCLTaskScheduler.h"
+#include <stdio.h>
+
+#ifdef __SPU__
+
+
+
+void SampleThreadFunc(void* userPtr,void* lsMemory)
+{
+ //do nothing
+ printf("hello world\n");
+}
+
+
+void* SamplelsMemoryFunc()
+{
+ //don't create local store memory, just return 0
+ return 0;
+}
+
+
+#else
+
+
+#include "BulletMultiThreaded/btThreadSupportInterface.h"
+
+//# include "SPUAssert.h"
+#include <string.h>
+
+#include "MiniCL/cl_platform.h"
+
+extern "C" {
+ extern char SPU_SAMPLE_ELF_SYMBOL[];
+}
+
+
+MiniCLTaskScheduler::MiniCLTaskScheduler(btThreadSupportInterface* threadInterface, int maxNumOutstandingTasks)
+:m_threadInterface(threadInterface),
+m_maxNumOutstandingTasks(maxNumOutstandingTasks)
+{
+
+ m_taskBusy.resize(m_maxNumOutstandingTasks);
+ m_spuSampleTaskDesc.resize(m_maxNumOutstandingTasks);
+
+ m_kernels.resize(0);
+
+ for (int i = 0; i < m_maxNumOutstandingTasks; i++)
+ {
+ m_taskBusy[i] = false;
+ }
+ m_numBusyTasks = 0;
+ m_currentTask = 0;
+
+ m_initialized = false;
+
+ m_threadInterface->startSPU();
+
+
+}
+
+MiniCLTaskScheduler::~MiniCLTaskScheduler()
+{
+ m_threadInterface->stopSPU();
+
+}
+
+
+
+void MiniCLTaskScheduler::initialize()
+{
+#ifdef DEBUG_SPU_TASK_SCHEDULING
+ printf("MiniCLTaskScheduler::initialize()\n");
+#endif //DEBUG_SPU_TASK_SCHEDULING
+
+ for (int i = 0; i < m_maxNumOutstandingTasks; i++)
+ {
+ m_taskBusy[i] = false;
+ }
+ m_numBusyTasks = 0;
+ m_currentTask = 0;
+ m_initialized = true;
+
+}
+
+
+void MiniCLTaskScheduler::issueTask(int firstWorkUnit, int lastWorkUnit, MiniCLKernel* kernel)
+{
+
+#ifdef DEBUG_SPU_TASK_SCHEDULING
+ printf("MiniCLTaskScheduler::issueTask (m_currentTask= %d\)n", m_currentTask);
+#endif //DEBUG_SPU_TASK_SCHEDULING
+
+ m_taskBusy[m_currentTask] = true;
+ m_numBusyTasks++;
+
+ MiniCLTaskDesc& taskDesc = m_spuSampleTaskDesc[m_currentTask];
+ {
+ // send task description in event message
+ taskDesc.m_firstWorkUnit = firstWorkUnit;
+ taskDesc.m_lastWorkUnit = lastWorkUnit;
+ taskDesc.m_kernel = kernel;
+ //some bookkeeping to recognize finished tasks
+ taskDesc.m_taskId = m_currentTask;
+
+// for (int i=0;i<MINI_CL_MAX_ARG;i++)
+ for (unsigned int i=0; i < kernel->m_numArgs; i++)
+ {
+ taskDesc.m_argSizes[i] = kernel->m_argSizes[i];
+ if (taskDesc.m_argSizes[i])
+ {
+ taskDesc.m_argData[i] = kernel->m_argData[i];
+// memcpy(&taskDesc.m_argData[i],&argData[MINICL_MAX_ARGLENGTH*i],taskDesc.m_argSizes[i]);
+ }
+ }
+ }
+
+
+ m_threadInterface->sendRequest(1, (ppu_address_t) &taskDesc, m_currentTask);
+
+ // if all tasks busy, wait for spu event to clear the task.
+
+ if (m_numBusyTasks >= m_maxNumOutstandingTasks)
+ {
+ unsigned int taskId;
+ unsigned int outputSize;
+
+ for (int i=0;i<m_maxNumOutstandingTasks;i++)
+ {
+ if (m_taskBusy[i])
+ {
+ taskId = i;
+ break;
+ }
+ }
+ m_threadInterface->waitForResponse(&taskId, &outputSize);
+
+ //printf("PPU: after issue, received event: %u %d\n", taskId, outputSize);
+
+ postProcess(taskId, outputSize);
+
+ m_taskBusy[taskId] = false;
+
+ m_numBusyTasks--;
+ }
+
+ // find new task buffer
+ for (int i = 0; i < m_maxNumOutstandingTasks; i++)
+ {
+ if (!m_taskBusy[i])
+ {
+ m_currentTask = i;
+ break;
+ }
+ }
+}
+
+
+///Optional PPU-size post processing for each task
+void MiniCLTaskScheduler::postProcess(int taskId, int outputSize)
+{
+
+}
+
+
+void MiniCLTaskScheduler::flush()
+{
+#ifdef DEBUG_SPU_TASK_SCHEDULING
+ printf("\nSpuCollisionTaskProcess::flush()\n");
+#endif //DEBUG_SPU_TASK_SCHEDULING
+
+
+ // all tasks are issued, wait for all tasks to be complete
+ while(m_numBusyTasks > 0)
+ {
+// Consolidating SPU code
+ unsigned int taskId;
+ unsigned int outputSize;
+
+ for (int i=0;i<m_maxNumOutstandingTasks;i++)
+ {
+ if (m_taskBusy[i])
+ {
+ taskId = i;
+ break;
+ }
+ }
+ {
+
+ m_threadInterface->waitForResponse(&taskId, &outputSize);
+ }
+
+ //printf("PPU: flushing, received event: %u %d\n", taskId, outputSize);
+
+ postProcess(taskId, outputSize);
+
+ m_taskBusy[taskId] = false;
+
+ m_numBusyTasks--;
+ }
+
+
+}
+
+
+
+typedef void (*MiniCLKernelLauncher0)(int);
+typedef void (*MiniCLKernelLauncher1)(void*, int);
+typedef void (*MiniCLKernelLauncher2)(void*, void*, int);
+typedef void (*MiniCLKernelLauncher3)(void*, void*, void*, int);
+typedef void (*MiniCLKernelLauncher4)(void*, void*, void*, void*, int);
+typedef void (*MiniCLKernelLauncher5)(void*, void*, void*, void*, void*, int);
+typedef void (*MiniCLKernelLauncher6)(void*, void*, void*, void*, void*, void*, int);
+typedef void (*MiniCLKernelLauncher7)(void*, void*, void*, void*, void*, void*, void*, int);
+typedef void (*MiniCLKernelLauncher8)(void*, void*, void*, void*, void*, void*, void*, void*, int);
+typedef void (*MiniCLKernelLauncher9)(void*, void*, void*, void*, void*, void*, void*, void*, void*, int);
+typedef void (*MiniCLKernelLauncher10)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, int);
+typedef void (*MiniCLKernelLauncher11)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, int);
+typedef void (*MiniCLKernelLauncher12)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, int);
+typedef void (*MiniCLKernelLauncher13)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, int);
+typedef void (*MiniCLKernelLauncher14)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, int);
+typedef void (*MiniCLKernelLauncher15)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, int);
+typedef void (*MiniCLKernelLauncher16)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, int);
+
+
+static void kernelLauncher0(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher0)(taskDesc->m_kernel->m_launcher))(guid);
+}
+static void kernelLauncher1(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher1)(taskDesc->m_kernel->m_pCode))( taskDesc->m_argData[0],
+ guid);
+}
+static void kernelLauncher2(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher2)(taskDesc->m_kernel->m_pCode))( taskDesc->m_argData[0],
+ taskDesc->m_argData[1],
+ guid);
+}
+static void kernelLauncher3(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher3)(taskDesc->m_kernel->m_pCode))( taskDesc->m_argData[0],
+ taskDesc->m_argData[1],
+ taskDesc->m_argData[2],
+ guid);
+}
+static void kernelLauncher4(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher4)(taskDesc->m_kernel->m_pCode))( taskDesc->m_argData[0],
+ taskDesc->m_argData[1],
+ taskDesc->m_argData[2],
+ taskDesc->m_argData[3],
+ guid);
+}
+static void kernelLauncher5(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher5)(taskDesc->m_kernel->m_pCode))( taskDesc->m_argData[0],
+ taskDesc->m_argData[1],
+ taskDesc->m_argData[2],
+ taskDesc->m_argData[3],
+ taskDesc->m_argData[4],
+ guid);
+}
+static void kernelLauncher6(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher6)(taskDesc->m_kernel->m_pCode))( taskDesc->m_argData[0],
+ taskDesc->m_argData[1],
+ taskDesc->m_argData[2],
+ taskDesc->m_argData[3],
+ taskDesc->m_argData[4],
+ taskDesc->m_argData[5],
+ guid);
+}
+static void kernelLauncher7(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher7)(taskDesc->m_kernel->m_pCode))( taskDesc->m_argData[0],
+ taskDesc->m_argData[1],
+ taskDesc->m_argData[2],
+ taskDesc->m_argData[3],
+ taskDesc->m_argData[4],
+ taskDesc->m_argData[5],
+ taskDesc->m_argData[6],
+ guid);
+}
+static void kernelLauncher8(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher8)(taskDesc->m_kernel->m_pCode))( taskDesc->m_argData[0],
+ taskDesc->m_argData[1],
+ taskDesc->m_argData[2],
+ taskDesc->m_argData[3],
+ taskDesc->m_argData[4],
+ taskDesc->m_argData[5],
+ taskDesc->m_argData[6],
+ taskDesc->m_argData[7],
+ guid);
+}
+static void kernelLauncher9(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher9)(taskDesc->m_kernel->m_pCode))( taskDesc->m_argData[0],
+ taskDesc->m_argData[1],
+ taskDesc->m_argData[2],
+ taskDesc->m_argData[3],
+ taskDesc->m_argData[4],
+ taskDesc->m_argData[5],
+ taskDesc->m_argData[6],
+ taskDesc->m_argData[7],
+ taskDesc->m_argData[8],
+ guid);
+}
+static void kernelLauncher10(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher10)(taskDesc->m_kernel->m_pCode))(taskDesc->m_argData[0],
+ taskDesc->m_argData[1],
+ taskDesc->m_argData[2],
+ taskDesc->m_argData[3],
+ taskDesc->m_argData[4],
+ taskDesc->m_argData[5],
+ taskDesc->m_argData[6],
+ taskDesc->m_argData[7],
+ taskDesc->m_argData[8],
+ taskDesc->m_argData[9],
+ guid);
+}
+static void kernelLauncher11(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher11)(taskDesc->m_kernel->m_pCode))(taskDesc->m_argData[0],
+ taskDesc->m_argData[1],
+ taskDesc->m_argData[2],
+ taskDesc->m_argData[3],
+ taskDesc->m_argData[4],
+ taskDesc->m_argData[5],
+ taskDesc->m_argData[6],
+ taskDesc->m_argData[7],
+ taskDesc->m_argData[8],
+ taskDesc->m_argData[9],
+ taskDesc->m_argData[10],
+ guid);
+}
+static void kernelLauncher12(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher12)(taskDesc->m_kernel->m_pCode))(taskDesc->m_argData[0],
+ taskDesc->m_argData[1],
+ taskDesc->m_argData[2],
+ taskDesc->m_argData[3],
+ taskDesc->m_argData[4],
+ taskDesc->m_argData[5],
+ taskDesc->m_argData[6],
+ taskDesc->m_argData[7],
+ taskDesc->m_argData[8],
+ taskDesc->m_argData[9],
+ taskDesc->m_argData[10],
+ taskDesc->m_argData[11],
+ guid);
+}
+static void kernelLauncher13(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher13)(taskDesc->m_kernel->m_pCode))(taskDesc->m_argData[0],
+ taskDesc->m_argData[1],
+ taskDesc->m_argData[2],
+ taskDesc->m_argData[3],
+ taskDesc->m_argData[4],
+ taskDesc->m_argData[5],
+ taskDesc->m_argData[6],
+ taskDesc->m_argData[7],
+ taskDesc->m_argData[8],
+ taskDesc->m_argData[9],
+ taskDesc->m_argData[10],
+ taskDesc->m_argData[11],
+ taskDesc->m_argData[12],
+ guid);
+}
+static void kernelLauncher14(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher14)(taskDesc->m_kernel->m_pCode))(taskDesc->m_argData[0],
+ taskDesc->m_argData[1],
+ taskDesc->m_argData[2],
+ taskDesc->m_argData[3],
+ taskDesc->m_argData[4],
+ taskDesc->m_argData[5],
+ taskDesc->m_argData[6],
+ taskDesc->m_argData[7],
+ taskDesc->m_argData[8],
+ taskDesc->m_argData[9],
+ taskDesc->m_argData[10],
+ taskDesc->m_argData[11],
+ taskDesc->m_argData[12],
+ taskDesc->m_argData[13],
+ guid);
+}
+static void kernelLauncher15(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher15)(taskDesc->m_kernel->m_pCode))(taskDesc->m_argData[0],
+ taskDesc->m_argData[1],
+ taskDesc->m_argData[2],
+ taskDesc->m_argData[3],
+ taskDesc->m_argData[4],
+ taskDesc->m_argData[5],
+ taskDesc->m_argData[6],
+ taskDesc->m_argData[7],
+ taskDesc->m_argData[8],
+ taskDesc->m_argData[9],
+ taskDesc->m_argData[10],
+ taskDesc->m_argData[11],
+ taskDesc->m_argData[12],
+ taskDesc->m_argData[13],
+ taskDesc->m_argData[14],
+ guid);
+}
+static void kernelLauncher16(MiniCLTaskDesc* taskDesc, int guid)
+{
+ ((MiniCLKernelLauncher16)(taskDesc->m_kernel->m_pCode))(taskDesc->m_argData[0],
+ taskDesc->m_argData[1],
+ taskDesc->m_argData[2],
+ taskDesc->m_argData[3],
+ taskDesc->m_argData[4],
+ taskDesc->m_argData[5],
+ taskDesc->m_argData[6],
+ taskDesc->m_argData[7],
+ taskDesc->m_argData[8],
+ taskDesc->m_argData[9],
+ taskDesc->m_argData[10],
+ taskDesc->m_argData[11],
+ taskDesc->m_argData[12],
+ taskDesc->m_argData[13],
+ taskDesc->m_argData[14],
+ taskDesc->m_argData[15],
+ guid);
+}
+
+static kernelLauncherCB spLauncherList[MINI_CL_MAX_ARG+1] =
+{
+ kernelLauncher0,
+ kernelLauncher1,
+ kernelLauncher2,
+ kernelLauncher3,
+ kernelLauncher4,
+ kernelLauncher5,
+ kernelLauncher6,
+ kernelLauncher7,
+ kernelLauncher8,
+ kernelLauncher9,
+ kernelLauncher10,
+ kernelLauncher11,
+ kernelLauncher12,
+ kernelLauncher13,
+ kernelLauncher14,
+ kernelLauncher15,
+ kernelLauncher16
+};
+
+void MiniCLKernel::updateLauncher()
+{
+ m_launcher = spLauncherList[m_numArgs];
+}
+
+struct MiniCLKernelDescEntry
+{
+ void* pCode;
+ const char* pName;
+};
+static MiniCLKernelDescEntry spKernelDesc[256];
+static int sNumKernelDesc = 0;
+
+MiniCLKernelDesc::MiniCLKernelDesc(void* pCode, const char* pName)
+{
+ for(int i = 0; i < sNumKernelDesc; i++)
+ {
+ if(!strcmp(pName, spKernelDesc[i].pName))
+ { // already registered
+ btAssert(spKernelDesc[i].pCode == pCode);
+ return;
+ }
+ }
+ spKernelDesc[sNumKernelDesc].pCode = pCode;
+ spKernelDesc[sNumKernelDesc].pName = pName;
+ sNumKernelDesc++;
+}
+
+
+MiniCLKernel* MiniCLKernel::registerSelf()
+{
+ m_scheduler->registerKernel(this);
+ for(int i = 0; i < sNumKernelDesc; i++)
+ {
+ if(!strcmp(m_name, spKernelDesc[i].pName))
+ {
+ m_pCode = spKernelDesc[i].pCode;
+ return this;
+ }
+ }
+ return NULL;
+}
+
+#endif
+
+
+#endif //USE_SAMPLE_PROCESS
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library
+Copyright (c) 2003-2007 Erwin Coumans http://bulletphysics.com
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+*/
+
+
+
+#ifndef MINICL_TASK_SCHEDULER_H
+#define MINICL_TASK_SCHEDULER_H
+
+#include <assert.h>
+
+
+#include "BulletMultiThreaded/PlatformDefinitions.h"
+
+#include <stdlib.h>
+
+#include "LinearMath/btAlignedObjectArray.h"
+
+
+#include "MiniCLTask/MiniCLTask.h"
+
+//just add your commands here, try to keep them globally unique for debugging purposes
+#define CMD_SAMPLE_TASK_COMMAND 10
+
+struct MiniCLKernel;
+
+/// MiniCLTaskScheduler handles SPU processing of collision pairs.
+/// When PPU issues a task, it will look for completed task buffers
+/// PPU will do postprocessing, dependent on workunit output (not likely)
+class MiniCLTaskScheduler
+{
+ // track task buffers that are being used, and total busy tasks
+ btAlignedObjectArray<bool> m_taskBusy;
+ btAlignedObjectArray<MiniCLTaskDesc> m_spuSampleTaskDesc;
+
+
+ btAlignedObjectArray<const MiniCLKernel*> m_kernels;
+
+
+ int m_numBusyTasks;
+
+ // the current task and the current entry to insert a new work unit
+ int m_currentTask;
+
+ bool m_initialized;
+
+ void postProcess(int taskId, int outputSize);
+
+ class btThreadSupportInterface* m_threadInterface;
+
+ int m_maxNumOutstandingTasks;
+
+
+
+public:
+ MiniCLTaskScheduler(btThreadSupportInterface* threadInterface, int maxNumOutstandingTasks);
+
+ ~MiniCLTaskScheduler();
+
+ ///call initialize in the beginning of the frame, before addCollisionPairToTask
+ void initialize();
+
+ void issueTask(int firstWorkUnit, int lastWorkUnit, MiniCLKernel* kernel);
+
+ ///call flush to submit potential outstanding work to SPUs and wait for all involved SPUs to be finished
+ void flush();
+
+ class btThreadSupportInterface* getThreadSupportInterface()
+ {
+ return m_threadInterface;
+ }
+
+ int findProgramCommandIdByName(const char* programName) const;
+
+ int getMaxNumOutstandingTasks() const
+ {
+ return m_maxNumOutstandingTasks;
+ }
+
+ void registerKernel(MiniCLKernel* kernel)
+ {
+ m_kernels.push_back(kernel);
+ }
+};
+
+typedef void (*kernelLauncherCB)(MiniCLTaskDesc* taskDesc, int guid);
+
+struct MiniCLKernel
+{
+ MiniCLTaskScheduler* m_scheduler;
+
+// int m_kernelProgramCommandId;
+
+ char m_name[MINI_CL_MAX_KERNEL_NAME];
+ unsigned int m_numArgs;
+ kernelLauncherCB m_launcher;
+ void* m_pCode;
+ void updateLauncher();
+ MiniCLKernel* registerSelf();
+
+ void* m_argData[MINI_CL_MAX_ARG];
+ int m_argSizes[MINI_CL_MAX_ARG];
+};
+
+
+#if defined(USE_LIBSPE2) && defined(__SPU__)
+////////////////////MAIN/////////////////////////////
+#include "../SpuLibspe2Support.h"
+#include <spu_intrinsics.h>
+#include <spu_mfcio.h>
+#include <SpuFakeDma.h>
+
+void * SamplelsMemoryFunc();
+void SampleThreadFunc(void* userPtr,void* lsMemory);
+
+//#define DEBUG_LIBSPE2_MAINLOOP
+
+int main(unsigned long long speid, addr64 argp, addr64 envp)
+{
+ printf("SPU is up \n");
+
+ ATTRIBUTE_ALIGNED128(btSpuStatus status);
+ ATTRIBUTE_ALIGNED16( SpuSampleTaskDesc taskDesc ) ;
+ unsigned int received_message = Spu_Mailbox_Event_Nothing;
+ bool shutdown = false;
+
+ cellDmaGet(&status, argp.ull, sizeof(btSpuStatus), DMA_TAG(3), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(3));
+
+ status.m_status = Spu_Status_Free;
+ status.m_lsMemory.p = SamplelsMemoryFunc();
+
+ cellDmaLargePut(&status, argp.ull, sizeof(btSpuStatus), DMA_TAG(3), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(3));
+
+
+ while (!shutdown)
+ {
+ received_message = spu_read_in_mbox();
+
+
+
+ switch(received_message)
+ {
+ case Spu_Mailbox_Event_Shutdown:
+ shutdown = true;
+ break;
+ case Spu_Mailbox_Event_Task:
+ // refresh the status
+#ifdef DEBUG_LIBSPE2_MAINLOOP
+ printf("SPU recieved Task \n");
+#endif //DEBUG_LIBSPE2_MAINLOOP
+ cellDmaGet(&status, argp.ull, sizeof(btSpuStatus), DMA_TAG(3), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(3));
+
+ btAssert(status.m_status==Spu_Status_Occupied);
+
+ cellDmaGet(&taskDesc, status.m_taskDesc.p, sizeof(SpuSampleTaskDesc), DMA_TAG(3), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(3));
+
+ SampleThreadFunc((void*)&taskDesc, reinterpret_cast<void*> (taskDesc.m_mainMemoryPtr) );
+ break;
+ case Spu_Mailbox_Event_Nothing:
+ default:
+ break;
+ }
+
+ // set to status free and wait for next task
+ status.m_status = Spu_Status_Free;
+ cellDmaLargePut(&status, argp.ull, sizeof(btSpuStatus), DMA_TAG(3), 0, 0);
+ cellDmaWaitTagStatusAll(DMA_MASK(3));
+
+
+ }
+ return 0;
+}
+//////////////////////////////////////////////////////
+#endif
+
+
+
+#endif // MINICL_TASK_SCHEDULER_H
+
--- /dev/null
+/*******************************************************************************
+ * Copyright (c) 2008-2009 The Khronos Group Inc.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and/or associated documentation files (the
+ * "Materials"), to deal in the Materials without restriction, including
+ * without limitation the rights to use, copy, modify, merge, publish,
+ * distribute, sublicense, and/or sell copies of the Materials, and to
+ * permit persons to whom the Materials are furnished to do so, subject to
+ * the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Materials.
+ *
+ * THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+ * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+ * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+ * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+ * MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
+ ******************************************************************************/
+
+#ifndef __OPENCL_CL_H
+#define __OPENCL_CL_H
+
+#ifdef __APPLE__
+#include <MiniCL/cl_platform.h>
+#else
+#include <MiniCL/cl_platform.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/******************************************************************************/
+
+typedef struct _cl_platform_id * cl_platform_id;
+typedef struct _cl_device_id * cl_device_id;
+typedef struct _cl_context * cl_context;
+typedef struct _cl_command_queue * cl_command_queue;
+typedef struct _cl_mem * cl_mem;
+typedef struct _cl_program * cl_program;
+typedef struct _cl_kernel * cl_kernel;
+typedef struct _cl_event * cl_event;
+typedef struct _cl_sampler * cl_sampler;
+
+typedef cl_uint cl_bool; /* WARNING! Unlike cl_ types in cl_platform.h, cl_bool is not guaranteed to be the same size as the bool in kernels. */
+typedef cl_ulong cl_bitfield;
+typedef cl_bitfield cl_device_type;
+typedef cl_uint cl_platform_info;
+typedef cl_uint cl_device_info;
+typedef cl_bitfield cl_device_address_info;
+typedef cl_bitfield cl_device_fp_config;
+typedef cl_uint cl_device_mem_cache_type;
+typedef cl_uint cl_device_local_mem_type;
+typedef cl_bitfield cl_device_exec_capabilities;
+typedef cl_bitfield cl_command_queue_properties;
+
+typedef intptr_t cl_context_properties;
+typedef cl_uint cl_context_info;
+typedef cl_uint cl_command_queue_info;
+typedef cl_uint cl_channel_order;
+typedef cl_uint cl_channel_type;
+typedef cl_bitfield cl_mem_flags;
+typedef cl_uint cl_mem_object_type;
+typedef cl_uint cl_mem_info;
+typedef cl_uint cl_image_info;
+typedef cl_uint cl_addressing_mode;
+typedef cl_uint cl_filter_mode;
+typedef cl_uint cl_sampler_info;
+typedef cl_bitfield cl_map_flags;
+typedef cl_uint cl_program_info;
+typedef cl_uint cl_program_build_info;
+typedef cl_int cl_build_status;
+typedef cl_uint cl_kernel_info;
+typedef cl_uint cl_kernel_work_group_info;
+typedef cl_uint cl_event_info;
+typedef cl_uint cl_command_type;
+typedef cl_uint cl_profiling_info;
+
+typedef struct _cl_image_format {
+ cl_channel_order image_channel_order;
+ cl_channel_type image_channel_data_type;
+} cl_image_format;
+
+/******************************************************************************/
+
+// Error Codes
+#define CL_SUCCESS 0
+#define CL_DEVICE_NOT_FOUND -1
+#define CL_DEVICE_NOT_AVAILABLE -2
+#define CL_DEVICE_COMPILER_NOT_AVAILABLE -3
+#define CL_MEM_OBJECT_ALLOCATION_FAILURE -4
+#define CL_OUT_OF_RESOURCES -5
+#define CL_OUT_OF_HOST_MEMORY -6
+#define CL_PROFILING_INFO_NOT_AVAILABLE -7
+#define CL_MEM_COPY_OVERLAP -8
+#define CL_IMAGE_FORMAT_MISMATCH -9
+#define CL_IMAGE_FORMAT_NOT_SUPPORTED -10
+#define CL_BUILD_PROGRAM_FAILURE -11
+#define CL_MAP_FAILURE -12
+
+#define CL_INVALID_VALUE -30
+#define CL_INVALID_DEVICE_TYPE -31
+#define CL_INVALID_PLATFORM -32
+#define CL_INVALID_DEVICE -33
+#define CL_INVALID_CONTEXT -34
+#define CL_INVALID_QUEUE_PROPERTIES -35
+#define CL_INVALID_COMMAND_QUEUE -36
+#define CL_INVALID_HOST_PTR -37
+#define CL_INVALID_MEM_OBJECT -38
+#define CL_INVALID_IMAGE_FORMAT_DESCRIPTOR -39
+#define CL_INVALID_IMAGE_SIZE -40
+#define CL_INVALID_SAMPLER -41
+#define CL_INVALID_BINARY -42
+#define CL_INVALID_BUILD_OPTIONS -43
+#define CL_INVALID_PROGRAM -44
+#define CL_INVALID_PROGRAM_EXECUTABLE -45
+#define CL_INVALID_KERNEL_NAME -46
+#define CL_INVALID_KERNEL_DEFINITION -47
+#define CL_INVALID_KERNEL -48
+#define CL_INVALID_ARG_INDEX -49
+#define CL_INVALID_ARG_VALUE -50
+#define CL_INVALID_ARG_SIZE -51
+#define CL_INVALID_KERNEL_ARGS -52
+#define CL_INVALID_WORK_DIMENSION -53
+#define CL_INVALID_WORK_GROUP_SIZE -54
+#define CL_INVALID_WORK_ITEM_SIZE -55
+#define CL_INVALID_GLOBAL_OFFSET -56
+#define CL_INVALID_EVENT_WAIT_LIST -57
+#define CL_INVALID_EVENT -58
+#define CL_INVALID_OPERATION -59
+#define CL_INVALID_GL_OBJECT -60
+#define CL_INVALID_BUFFER_SIZE -61
+#define CL_INVALID_MIP_LEVEL -62
+
+// OpenCL Version
+#define CL_VERSION_1_0 1
+
+// cl_bool
+#define CL_FALSE 0
+#define CL_TRUE 1
+
+// cl_platform_info
+#define CL_PLATFORM_PROFILE 0x0900
+#define CL_PLATFORM_VERSION 0x0901
+#define CL_PLATFORM_NAME 0x0902
+#define CL_PLATFORM_VENDOR 0x0903
+#define CL_PLATFORM_EXTENSIONS 0x0904
+
+// cl_device_type - bitfield
+#define CL_DEVICE_TYPE_DEFAULT (1 << 0)
+#define CL_DEVICE_TYPE_CPU (1 << 1)
+#define CL_DEVICE_TYPE_GPU (1 << 2)
+#define CL_DEVICE_TYPE_ACCELERATOR (1 << 3)
+#define CL_DEVICE_TYPE_DEBUG (1 << 4)
+#define CL_DEVICE_TYPE_ALL 0xFFFFFFFF
+
+
+// cl_device_info
+#define CL_DEVICE_TYPE 0x1000
+#define CL_DEVICE_VENDOR_ID 0x1001
+#define CL_DEVICE_MAX_COMPUTE_UNITS 0x1002
+#define CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS 0x1003
+#define CL_DEVICE_MAX_WORK_GROUP_SIZE 0x1004
+#define CL_DEVICE_MAX_WORK_ITEM_SIZES 0x1005
+#define CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR 0x1006
+#define CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT 0x1007
+#define CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT 0x1008
+#define CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG 0x1009
+#define CL_DEVICE_PREFERRED_VECTOR_WIDTH_FLOAT 0x100A
+#define CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE 0x100B
+#define CL_DEVICE_MAX_CLOCK_FREQUENCY 0x100C
+#define CL_DEVICE_ADDRESS_BITS 0x100D
+#define CL_DEVICE_MAX_READ_IMAGE_ARGS 0x100E
+#define CL_DEVICE_MAX_WRITE_IMAGE_ARGS 0x100F
+#define CL_DEVICE_MAX_MEM_ALLOC_SIZE 0x1010
+#define CL_DEVICE_IMAGE2D_MAX_WIDTH 0x1011
+#define CL_DEVICE_IMAGE2D_MAX_HEIGHT 0x1012
+#define CL_DEVICE_IMAGE3D_MAX_WIDTH 0x1013
+#define CL_DEVICE_IMAGE3D_MAX_HEIGHT 0x1014
+#define CL_DEVICE_IMAGE3D_MAX_DEPTH 0x1015
+#define CL_DEVICE_IMAGE_SUPPORT 0x1016
+#define CL_DEVICE_MAX_PARAMETER_SIZE 0x1017
+#define CL_DEVICE_MAX_SAMPLERS 0x1018
+#define CL_DEVICE_MEM_BASE_ADDR_ALIGN 0x1019
+#define CL_DEVICE_MIN_DATA_TYPE_ALIGN_SIZE 0x101A
+#define CL_DEVICE_SINGLE_FP_CONFIG 0x101B
+#define CL_DEVICE_GLOBAL_MEM_CACHE_TYPE 0x101C
+#define CL_DEVICE_GLOBAL_MEM_CACHELINE_SIZE 0x101D
+#define CL_DEVICE_GLOBAL_MEM_CACHE_SIZE 0x101E
+#define CL_DEVICE_GLOBAL_MEM_SIZE 0x101F
+#define CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE 0x1020
+#define CL_DEVICE_MAX_CONSTANT_ARGS 0x1021
+#define CL_DEVICE_LOCAL_MEM_TYPE 0x1022
+#define CL_DEVICE_LOCAL_MEM_SIZE 0x1023
+#define CL_DEVICE_ERROR_CORRECTION_SUPPORT 0x1024
+#define CL_DEVICE_PROFILING_TIMER_RESOLUTION 0x1025
+#define CL_DEVICE_ENDIAN_LITTLE 0x1026
+#define CL_DEVICE_AVAILABLE 0x1027
+#define CL_DEVICE_COMPILER_AVAILABLE 0x1028
+#define CL_DEVICE_EXECUTION_CAPABILITIES 0x1029
+#define CL_DEVICE_QUEUE_PROPERTIES 0x102A
+#define CL_DEVICE_NAME 0x102B
+#define CL_DEVICE_VENDOR 0x102C
+#define CL_DRIVER_VERSION 0x102D
+#define CL_DEVICE_PROFILE 0x102E
+#define CL_DEVICE_VERSION 0x102F
+#define CL_DEVICE_EXTENSIONS 0x1030
+#define CL_DEVICE_PLATFORM 0x1031
+
+// cl_device_address_info - bitfield
+#define CL_DEVICE_ADDRESS_32_BITS (1 << 0)
+#define CL_DEVICE_ADDRESS_64_BITS (1 << 1)
+
+// cl_device_fp_config - bitfield
+#define CL_FP_DENORM (1 << 0)
+#define CL_FP_INF_NAN (1 << 1)
+#define CL_FP_ROUND_TO_NEAREST (1 << 2)
+#define CL_FP_ROUND_TO_ZERO (1 << 3)
+#define CL_FP_ROUND_TO_INF (1 << 4)
+#define CL_FP_FMA (1 << 5)
+
+// cl_device_mem_cache_type
+#define CL_NONE 0x0
+#define CL_READ_ONLY_CACHE 0x1
+#define CL_READ_WRITE_CACHE 0x2
+
+// cl_device_local_mem_type
+#define CL_LOCAL 0x1
+#define CL_GLOBAL 0x2
+
+// cl_device_exec_capabilities - bitfield
+#define CL_EXEC_KERNEL (1 << 0)
+#define CL_EXEC_NATIVE_KERNEL (1 << 1)
+
+// cl_command_queue_properties - bitfield
+#define CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE (1 << 0)
+#define CL_QUEUE_PROFILING_ENABLE (1 << 1)
+
+// cl_context_info
+#define CL_CONTEXT_REFERENCE_COUNT 0x1080
+#define CL_CONTEXT_NUM_DEVICES 0x1081
+#define CL_CONTEXT_DEVICES 0x1082
+#define CL_CONTEXT_PROPERTIES 0x1083
+#define CL_CONTEXT_PLATFORM 0x1084
+
+// cl_command_queue_info
+#define CL_QUEUE_CONTEXT 0x1090
+#define CL_QUEUE_DEVICE 0x1091
+#define CL_QUEUE_REFERENCE_COUNT 0x1092
+#define CL_QUEUE_PROPERTIES 0x1093
+
+// cl_mem_flags - bitfield
+#define CL_MEM_READ_WRITE (1 << 0)
+#define CL_MEM_WRITE_ONLY (1 << 1)
+#define CL_MEM_READ_ONLY (1 << 2)
+#define CL_MEM_USE_HOST_PTR (1 << 3)
+#define CL_MEM_ALLOC_HOST_PTR (1 << 4)
+#define CL_MEM_COPY_HOST_PTR (1 << 5)
+
+// cl_channel_order
+#define CL_R 0x10B0
+#define CL_A 0x10B1
+#define CL_RG 0x10B2
+#define CL_RA 0x10B3
+#define CL_RGB 0x10B4
+#define CL_RGBA 0x10B5
+#define CL_BGRA 0x10B6
+#define CL_ARGB 0x10B7
+#define CL_INTENSITY 0x10B8
+#define CL_LUMINANCE 0x10B9
+
+// cl_channel_type
+#define CL_SNORM_INT8 0x10D0
+#define CL_SNORM_INT16 0x10D1
+#define CL_UNORM_INT8 0x10D2
+#define CL_UNORM_INT16 0x10D3
+#define CL_UNORM_SHORT_565 0x10D4
+#define CL_UNORM_SHORT_555 0x10D5
+#define CL_UNORM_INT_101010 0x10D6
+#define CL_SIGNED_INT8 0x10D7
+#define CL_SIGNED_INT16 0x10D8
+#define CL_SIGNED_INT32 0x10D9
+#define CL_UNSIGNED_INT8 0x10DA
+#define CL_UNSIGNED_INT16 0x10DB
+#define CL_UNSIGNED_INT32 0x10DC
+#define CL_HALF_FLOAT 0x10DD
+#define CL_FLOAT 0x10DE
+
+// cl_mem_object_type
+#define CL_MEM_OBJECT_BUFFER 0x10F0
+#define CL_MEM_OBJECT_IMAGE2D 0x10F1
+#define CL_MEM_OBJECT_IMAGE3D 0x10F2
+
+// cl_mem_info
+#define CL_MEM_TYPE 0x1100
+#define CL_MEM_FLAGS 0x1101
+#define CL_MEM_SIZE 0x1102
+#define CL_MEM_HOST_PTR 0x1103
+#define CL_MEM_MAP_COUNT 0x1104
+#define CL_MEM_REFERENCE_COUNT 0x1105
+#define CL_MEM_CONTEXT 0x1106
+
+// cl_image_info
+#define CL_IMAGE_FORMAT 0x1110
+#define CL_IMAGE_ELEMENT_SIZE 0x1111
+#define CL_IMAGE_ROW_PITCH 0x1112
+#define CL_IMAGE_SLICE_PITCH 0x1113
+#define CL_IMAGE_WIDTH 0x1114
+#define CL_IMAGE_HEIGHT 0x1115
+#define CL_IMAGE_DEPTH 0x1116
+
+// cl_addressing_mode
+#define CL_ADDRESS_NONE 0x1130
+#define CL_ADDRESS_CLAMP_TO_EDGE 0x1131
+#define CL_ADDRESS_CLAMP 0x1132
+#define CL_ADDRESS_REPEAT 0x1133
+
+// cl_filter_mode
+#define CL_FILTER_NEAREST 0x1140
+#define CL_FILTER_LINEAR 0x1141
+
+// cl_sampler_info
+#define CL_SAMPLER_REFERENCE_COUNT 0x1150
+#define CL_SAMPLER_CONTEXT 0x1151
+#define CL_SAMPLER_NORMALIZED_COORDS 0x1152
+#define CL_SAMPLER_ADDRESSING_MODE 0x1153
+#define CL_SAMPLER_FILTER_MODE 0x1154
+
+// cl_map_flags - bitfield
+#define CL_MAP_READ (1 << 0)
+#define CL_MAP_WRITE (1 << 1)
+
+// cl_program_info
+#define CL_PROGRAM_REFERENCE_COUNT 0x1160
+#define CL_PROGRAM_CONTEXT 0x1161
+#define CL_PROGRAM_NUM_DEVICES 0x1162
+#define CL_PROGRAM_DEVICES 0x1163
+#define CL_PROGRAM_SOURCE 0x1164
+#define CL_PROGRAM_BINARY_SIZES 0x1165
+#define CL_PROGRAM_BINARIES 0x1166
+
+// cl_program_build_info
+#define CL_PROGRAM_BUILD_STATUS 0x1181
+#define CL_PROGRAM_BUILD_OPTIONS 0x1182
+#define CL_PROGRAM_BUILD_LOG 0x1183
+
+// cl_build_status
+#define CL_BUILD_SUCCESS 0
+#define CL_BUILD_NONE -1
+#define CL_BUILD_ERROR -2
+#define CL_BUILD_IN_PROGRESS -3
+
+// cl_kernel_info
+#define CL_KERNEL_FUNCTION_NAME 0x1190
+#define CL_KERNEL_NUM_ARGS 0x1191
+#define CL_KERNEL_REFERENCE_COUNT 0x1192
+#define CL_KERNEL_CONTEXT 0x1193
+#define CL_KERNEL_PROGRAM 0x1194
+
+// cl_kernel_work_group_info
+#define CL_KERNEL_WORK_GROUP_SIZE 0x11B0
+#define CL_KERNEL_COMPILE_WORK_GROUP_SIZE 0x11B1
+#define CL_KERNEL_LOCAL_MEM_SIZE 0x11B2
+
+// cl_event_info
+#define CL_EVENT_COMMAND_QUEUE 0x11D0
+#define CL_EVENT_COMMAND_TYPE 0x11D1
+#define CL_EVENT_REFERENCE_COUNT 0x11D2
+#define CL_EVENT_COMMAND_EXECUTION_STATUS 0x11D3
+
+// cl_command_type
+#define CL_COMMAND_NDRANGE_KERNEL 0x11F0
+#define CL_COMMAND_TASK 0x11F1
+#define CL_COMMAND_NATIVE_KERNEL 0x11F2
+#define CL_COMMAND_READ_BUFFER 0x11F3
+#define CL_COMMAND_WRITE_BUFFER 0x11F4
+#define CL_COMMAND_COPY_BUFFER 0x11F5
+#define CL_COMMAND_READ_IMAGE 0x11F6
+#define CL_COMMAND_WRITE_IMAGE 0x11F7
+#define CL_COMMAND_COPY_IMAGE 0x11F8
+#define CL_COMMAND_COPY_IMAGE_TO_BUFFER 0x11F9
+#define CL_COMMAND_COPY_BUFFER_TO_IMAGE 0x11FA
+#define CL_COMMAND_MAP_BUFFER 0x11FB
+#define CL_COMMAND_MAP_IMAGE 0x11FC
+#define CL_COMMAND_UNMAP_MEM_OBJECT 0x11FD
+#define CL_COMMAND_MARKER 0x11FE
+#define CL_COMMAND_WAIT_FOR_EVENTS 0x11FF
+#define CL_COMMAND_BARRIER 0x1200
+#define CL_COMMAND_ACQUIRE_GL_OBJECTS 0x1201
+#define CL_COMMAND_RELEASE_GL_OBJECTS 0x1202
+
+// command execution status
+#define CL_COMPLETE 0x0
+#define CL_RUNNING 0x1
+#define CL_SUBMITTED 0x2
+#define CL_QUEUED 0x3
+
+// cl_profiling_info
+#define CL_PROFILING_COMMAND_QUEUED 0x1280
+#define CL_PROFILING_COMMAND_SUBMIT 0x1281
+#define CL_PROFILING_COMMAND_START 0x1282
+#define CL_PROFILING_COMMAND_END 0x1283
+
+/********************************************************************************************************/
+
+// Platform API
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetPlatformIDs(cl_uint /* num_entries */,
+ cl_platform_id * /* platforms */,
+ cl_uint * /* num_platforms */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetPlatformInfo(cl_platform_id /* platform */,
+ cl_platform_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+// Device APIs
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetDeviceIDs(cl_platform_id /* platform */,
+ cl_device_type /* device_type */,
+ cl_uint /* num_entries */,
+ cl_device_id * /* devices */,
+ cl_uint * /* num_devices */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetDeviceInfo(cl_device_id /* device */,
+ cl_device_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+// Context APIs
+extern CL_API_ENTRY cl_context CL_API_CALL
+clCreateContext(const cl_context_properties * /* properties */,
+ cl_uint /* num_devices */,
+ const cl_device_id * /* devices */,
+ void (*pfn_notify)(const char *, const void *, size_t, void *) /* pfn_notify */,
+ void * /* user_data */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_context CL_API_CALL
+clCreateContextFromType(const cl_context_properties * /* properties */,
+ cl_device_type /* device_type */,
+ void (*pfn_notify)(const char *, const void *, size_t, void *) /* pfn_notify */,
+ void * /* user_data */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clRetainContext(cl_context /* context */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clReleaseContext(cl_context /* context */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetContextInfo(cl_context /* context */,
+ cl_context_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+// Command Queue APIs
+extern CL_API_ENTRY cl_command_queue CL_API_CALL
+clCreateCommandQueue(cl_context /* context */,
+ cl_device_id /* device */,
+ cl_command_queue_properties /* properties */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clRetainCommandQueue(cl_command_queue /* command_queue */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clReleaseCommandQueue(cl_command_queue /* command_queue */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetCommandQueueInfo(cl_command_queue /* command_queue */,
+ cl_command_queue_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clSetCommandQueueProperty(cl_command_queue /* command_queue */,
+ cl_command_queue_properties /* properties */,
+ cl_bool /* enable */,
+ cl_command_queue_properties * /* old_properties */) CL_API_SUFFIX__VERSION_1_0;
+
+// Memory Object APIs
+extern CL_API_ENTRY cl_mem CL_API_CALL
+clCreateBuffer(cl_context /* context */,
+ cl_mem_flags /* flags */,
+ size_t /* size */,
+ void * /* host_ptr */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_mem CL_API_CALL
+clCreateImage2D(cl_context /* context */,
+ cl_mem_flags /* flags */,
+ const cl_image_format * /* image_format */,
+ size_t /* image_width */,
+ size_t /* image_height */,
+ size_t /* image_row_pitch */,
+ void * /* host_ptr */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_mem CL_API_CALL
+clCreateImage3D(cl_context /* context */,
+ cl_mem_flags /* flags */,
+ const cl_image_format * /* image_format */,
+ size_t /* image_width */,
+ size_t /* image_height */,
+ size_t /* image_depth */,
+ size_t /* image_row_pitch */,
+ size_t /* image_slice_pitch */,
+ void * /* host_ptr */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clRetainMemObject(cl_mem /* memobj */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clReleaseMemObject(cl_mem /* memobj */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetSupportedImageFormats(cl_context /* context */,
+ cl_mem_flags /* flags */,
+ cl_mem_object_type /* image_type */,
+ cl_uint /* num_entries */,
+ cl_image_format * /* image_formats */,
+ cl_uint * /* num_image_formats */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetMemObjectInfo(cl_mem /* memobj */,
+ cl_mem_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetImageInfo(cl_mem /* image */,
+ cl_image_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+// Sampler APIs
+extern CL_API_ENTRY cl_sampler CL_API_CALL
+clCreateSampler(cl_context /* context */,
+ cl_bool /* normalized_coords */,
+ cl_addressing_mode /* addressing_mode */,
+ cl_filter_mode /* filter_mode */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clRetainSampler(cl_sampler /* sampler */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clReleaseSampler(cl_sampler /* sampler */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetSamplerInfo(cl_sampler /* sampler */,
+ cl_sampler_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+// Program Object APIs
+extern CL_API_ENTRY cl_program CL_API_CALL
+clCreateProgramWithSource(cl_context /* context */,
+ cl_uint /* count */,
+ const char ** /* strings */,
+ const size_t * /* lengths */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_program CL_API_CALL
+clCreateProgramWithBinary(cl_context /* context */,
+ cl_uint /* num_devices */,
+ const cl_device_id * /* device_list */,
+ const size_t * /* lengths */,
+ const unsigned char ** /* binaries */,
+ cl_int * /* binary_status */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clRetainProgram(cl_program /* program */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clReleaseProgram(cl_program /* program */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clBuildProgram(cl_program /* program */,
+ cl_uint /* num_devices */,
+ const cl_device_id * /* device_list */,
+ const char * /* options */,
+ void (*pfn_notify)(cl_program /* program */, void * /* user_data */),
+ void * /* user_data */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clUnloadCompiler(void) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetProgramInfo(cl_program /* program */,
+ cl_program_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetProgramBuildInfo(cl_program /* program */,
+ cl_device_id /* device */,
+ cl_program_build_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+// Kernel Object APIs
+extern CL_API_ENTRY cl_kernel CL_API_CALL
+clCreateKernel(cl_program /* program */,
+ const char * /* kernel_name */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clCreateKernelsInProgram(cl_program /* program */,
+ cl_uint /* num_kernels */,
+ cl_kernel * /* kernels */,
+ cl_uint * /* num_kernels_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clRetainKernel(cl_kernel /* kernel */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clReleaseKernel(cl_kernel /* kernel */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clSetKernelArg(cl_kernel /* kernel */,
+ cl_uint /* arg_index */,
+ size_t /* arg_size */,
+ const void * /* arg_value */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetKernelInfo(cl_kernel /* kernel */,
+ cl_kernel_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetKernelWorkGroupInfo(cl_kernel /* kernel */,
+ cl_device_id /* device */,
+ cl_kernel_work_group_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+// Event Object APIs
+extern CL_API_ENTRY cl_int CL_API_CALL
+clWaitForEvents(cl_uint /* num_events */,
+ const cl_event * /* event_list */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetEventInfo(cl_event /* event */,
+ cl_event_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clRetainEvent(cl_event /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clReleaseEvent(cl_event /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+// Profiling APIs
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetEventProfilingInfo(cl_event /* event */,
+ cl_profiling_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+// Flush and Finish APIs
+extern CL_API_ENTRY cl_int CL_API_CALL
+clFlush(cl_command_queue /* command_queue */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clFinish(cl_command_queue /* command_queue */) CL_API_SUFFIX__VERSION_1_0;
+
+// Enqueued Commands APIs
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueReadBuffer(cl_command_queue /* command_queue */,
+ cl_mem /* buffer */,
+ cl_bool /* blocking_read */,
+ size_t /* offset */,
+ size_t /* cb */,
+ void * /* ptr */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueWriteBuffer(cl_command_queue /* command_queue */,
+ cl_mem /* buffer */,
+ cl_bool /* blocking_write */,
+ size_t /* offset */,
+ size_t /* cb */,
+ const void * /* ptr */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueCopyBuffer(cl_command_queue /* command_queue */,
+ cl_mem /* src_buffer */,
+ cl_mem /* dst_buffer */,
+ size_t /* src_offset */,
+ size_t /* dst_offset */,
+ size_t /* cb */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueReadImage(cl_command_queue /* command_queue */,
+ cl_mem /* image */,
+ cl_bool /* blocking_read */,
+ const size_t * /* origin[3] */,
+ const size_t * /* region[3] */,
+ size_t /* row_pitch */,
+ size_t /* slice_pitch */,
+ void * /* ptr */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueWriteImage(cl_command_queue /* command_queue */,
+ cl_mem /* image */,
+ cl_bool /* blocking_write */,
+ const size_t * /* origin[3] */,
+ const size_t * /* region[3] */,
+ size_t /* input_row_pitch */,
+ size_t /* input_slice_pitch */,
+ const void * /* ptr */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueCopyImage(cl_command_queue /* command_queue */,
+ cl_mem /* src_image */,
+ cl_mem /* dst_image */,
+ const size_t * /* src_origin[3] */,
+ const size_t * /* dst_origin[3] */,
+ const size_t * /* region[3] */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueCopyImageToBuffer(cl_command_queue /* command_queue */,
+ cl_mem /* src_image */,
+ cl_mem /* dst_buffer */,
+ const size_t * /* src_origin[3] */,
+ const size_t * /* region[3] */,
+ size_t /* dst_offset */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueCopyBufferToImage(cl_command_queue /* command_queue */,
+ cl_mem /* src_buffer */,
+ cl_mem /* dst_image */,
+ size_t /* src_offset */,
+ const size_t * /* dst_origin[3] */,
+ const size_t * /* region[3] */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY void * CL_API_CALL
+clEnqueueMapBuffer(cl_command_queue /* command_queue */,
+ cl_mem /* buffer */,
+ cl_bool /* blocking_map */,
+ cl_map_flags /* map_flags */,
+ size_t /* offset */,
+ size_t /* cb */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY void * CL_API_CALL
+clEnqueueMapImage(cl_command_queue /* command_queue */,
+ cl_mem /* image */,
+ cl_bool /* blocking_map */,
+ cl_map_flags /* map_flags */,
+ const size_t * /* origin[3] */,
+ const size_t * /* region[3] */,
+ size_t * /* image_row_pitch */,
+ size_t * /* image_slice_pitch */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueUnmapMemObject(cl_command_queue /* command_queue */,
+ cl_mem /* memobj */,
+ void * /* mapped_ptr */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueNDRangeKernel(cl_command_queue /* command_queue */,
+ cl_kernel /* kernel */,
+ cl_uint /* work_dim */,
+ const size_t * /* global_work_offset */,
+ const size_t * /* global_work_size */,
+ const size_t * /* local_work_size */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueTask(cl_command_queue /* command_queue */,
+ cl_kernel /* kernel */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueNativeKernel(cl_command_queue /* command_queue */,
+ void (*user_func)(void *),
+ void * /* args */,
+ size_t /* cb_args */,
+ cl_uint /* num_mem_objects */,
+ const cl_mem * /* mem_list */,
+ const void ** /* args_mem_loc */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueMarker(cl_command_queue /* command_queue */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueWaitForEvents(cl_command_queue /* command_queue */,
+ cl_uint /* num_events */,
+ const cl_event * /* event_list */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueBarrier(cl_command_queue /* command_queue */) CL_API_SUFFIX__VERSION_1_0;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // __OPENCL_CL_H
+
--- /dev/null
+/*
+Bullet Continuous Collision Detection and Physics Library, Copyright (c) 2007 Erwin Coumans
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+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.
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+3. This notice may not be removed or altered from any source distribution.
+
+*/
+
+#include <float.h>
+#include <math.h>
+#include "LinearMath/btScalar.h"
+
+#include "MiniCL/cl.h"
+
+
+#define __kernel
+#define __global
+#define __local
+#define get_global_id(a) __guid_arg
+#define get_local_id(a) ((__guid_arg) % gMiniCLNumOutstandingTasks)
+#define get_local_size(a) (gMiniCLNumOutstandingTasks)
+#define get_group_id(a) ((__guid_arg) / gMiniCLNumOutstandingTasks)
+
+//static unsigned int as_uint(float val) { return *((unsigned int*)&val); }
+
+
+#define CLK_LOCAL_MEM_FENCE 0x01
+#define CLK_GLOBAL_MEM_FENCE 0x02
+
+static void barrier(unsigned int a)
+{
+ // TODO : implement
+}
+
+//ATTRIBUTE_ALIGNED16(struct) float8
+struct float8
+{
+ float s0;
+ float s1;
+ float s2;
+ float s3;
+ float s4;
+ float s5;
+ float s6;
+ float s7;
+
+ float8(float scalar)
+ {
+ s0=s1=s2=s3=s4=s5=s6=s7=scalar;
+ }
+};
+
+
+float select( float arg0, float arg1, bool select)
+{
+ if (select)
+ return arg0;
+ return arg1;
+}
+
+#define __constant
+
+
+struct float3
+{
+ float x,y,z;
+
+ float3& operator+=(const float3& other)
+ {
+ x += other.x;
+ y += other.y;
+ z += other.z;
+ return *this;
+ }
+
+ float3& operator-=(const float3& other)
+ {
+ x -= other.x;
+ y -= other.y;
+ z -= other.z;
+ return *this;
+ }
+
+};
+
+static float dot(const float3&a ,const float3& b)
+{
+ float3 tmp;
+ tmp.x = a.x*b.x;
+ tmp.y = a.y*b.y;
+ tmp.z = a.z*b.z;
+ return tmp.x+tmp.y+tmp.z;
+}
+
+static float3 operator-(const float3& a,const float3& b)
+{
+ float3 tmp;
+ tmp.x = a.x - b.x;
+ tmp.y = a.y - b.y;
+ tmp.z = a.z - b.z;
+ return tmp;
+}
+
+static float3 operator*(const float& scalar,const float3& b)
+{
+ float3 tmp;
+ tmp.x = scalar * b.x;
+ tmp.y = scalar * b.y;
+ tmp.z = scalar * b.z;
+ return tmp;
+}
+
+static float3 operator*(const float3& a,const float& scalar)
+{
+ float3 tmp;
+ tmp.x = a.x * scalar;
+ tmp.y = a.y * scalar;
+ tmp.z = a.z * scalar;
+ return tmp;
+}
+
+
+static float3 operator*(const float3& a,const float3& b)
+{
+ float3 tmp;
+ tmp.x = a.x * b.x;
+ tmp.y = a.y * b.y;
+ tmp.z = a.z * b.z;
+ return tmp;
+}
+
+
+//ATTRIBUTE_ALIGNED16(struct) float4
+struct float4
+{
+ union
+ {
+ struct {
+ float x;
+ float y;
+ float z;
+ };
+ float3 xyz;
+ };
+ float w;
+
+ float4() {}
+
+ float4(float v0, float v1, float v2, float v3)
+ {
+ x=v0;
+ y=v1;
+ z=v2;
+ w=v3;
+
+ }
+ float4(float3 xyz, float scalarW)
+ {
+ x = xyz.x;
+ y = xyz.y;
+ z = xyz.z;
+ w = scalarW;
+ }
+
+ float4(float v)
+ {
+ x = y = z = w = v;
+ }
+ float4 operator*(const float4& other)
+ {
+ float4 tmp;
+ tmp.x = x*other.x;
+ tmp.y = y*other.y;
+ tmp.z = z*other.z;
+ tmp.w = w*other.w;
+ return tmp;
+ }
+
+
+
+ float4 operator*(const float& other)
+ {
+ float4 tmp;
+ tmp.x = x*other;
+ tmp.y = y*other;
+ tmp.z = z*other;
+ tmp.w = w*other;
+ return tmp;
+ }
+
+
+
+ float4& operator+=(const float4& other)
+ {
+ x += other.x;
+ y += other.y;
+ z += other.z;
+ w += other.w;
+ return *this;
+ }
+
+ float4& operator-=(const float4& other)
+ {
+ x -= other.x;
+ y -= other.y;
+ z -= other.z;
+ w -= other.w;
+ return *this;
+ }
+
+ float4& operator *=(float scalar)
+ {
+ x *= scalar;
+ y *= scalar;
+ z *= scalar;
+ w *= scalar;
+ return (*this);
+ }
+
+
+
+
+
+};
+
+static float4 fabs(const float4& a)
+{
+ float4 tmp;
+ tmp.x = a.x < 0.f ? 0.f : a.x;
+ tmp.y = a.y < 0.f ? 0.f : a.y;
+ tmp.z = a.z < 0.f ? 0.f : a.z;
+ tmp.w = a.w < 0.f ? 0.f : a.w;
+ return tmp;
+}
+static float4 operator+(const float4& a,const float4& b)
+{
+ float4 tmp;
+ tmp.x = a.x + b.x;
+ tmp.y = a.y + b.y;
+ tmp.z = a.z + b.z;
+ tmp.w = a.w + b.w;
+ return tmp;
+}
+
+
+static float8 operator+(const float8& a,const float8& b)
+{
+ float8 tmp(0);
+ tmp.s0 = a.s0 + b.s0;
+ tmp.s1 = a.s1 + b.s1;
+ tmp.s2 = a.s2 + b.s2;
+ tmp.s3 = a.s3 + b.s3;
+ tmp.s4 = a.s4 + b.s4;
+ tmp.s5 = a.s5 + b.s5;
+ tmp.s6 = a.s6 + b.s6;
+ tmp.s7 = a.s7 + b.s7;
+ return tmp;
+}
+
+
+static float4 operator-(const float4& a,const float4& b)
+{
+ float4 tmp;
+ tmp.x = a.x - b.x;
+ tmp.y = a.y - b.y;
+ tmp.z = a.z - b.z;
+ tmp.w = a.w - b.w;
+ return tmp;
+}
+
+static float8 operator-(const float8& a,const float8& b)
+{
+ float8 tmp(0);
+ tmp.s0 = a.s0 - b.s0;
+ tmp.s1 = a.s1 - b.s1;
+ tmp.s2 = a.s2 - b.s2;
+ tmp.s3 = a.s3 - b.s3;
+ tmp.s4 = a.s4 - b.s4;
+ tmp.s5 = a.s5 - b.s5;
+ tmp.s6 = a.s6 - b.s6;
+ tmp.s7 = a.s7 - b.s7;
+ return tmp;
+}
+
+static float4 operator*(float a,const float4& b)
+{
+ float4 tmp;
+ tmp.x = a * b.x;
+ tmp.y = a * b.y;
+ tmp.z = a * b.z;
+ tmp.w = a * b.w;
+ return tmp;
+}
+
+static float4 operator/(const float4& b,float a)
+{
+ float4 tmp;
+ tmp.x = b.x/a;
+ tmp.y = b.y/a;
+ tmp.z = b.z/a;
+ tmp.w = b.w/a;
+ return tmp;
+}
+
+
+
+
+
+static float dot(const float4&a ,const float4& b)
+{
+ float4 tmp;
+ tmp.x = a.x*b.x;
+ tmp.y = a.y*b.y;
+ tmp.z = a.z*b.z;
+ tmp.w = a.w*b.w;
+ return tmp.x+tmp.y+tmp.z+tmp.w;
+}
+
+static float length(const float4&a)
+{
+ float l = sqrtf(a.x*a.x+a.y*a.y+a.z*a.z);
+ return l;
+}
+
+static float4 normalize(const float4&a)
+{
+ float4 tmp;
+ float l = length(a);
+ tmp = 1.f/l*a;
+ return tmp;
+}
+
+
+
+static float4 cross(const float4&a ,const float4& b)
+{
+ float4 tmp;
+ tmp.x = a.y*b.z - a.z*b.y;
+ tmp.y = -a.x*b.z + a.z*b.x;
+ tmp.z = a.x*b.y - a.y*b.x;
+ tmp.w = 0.f;
+ return tmp;
+}
+
+static float max(float a, float b)
+{
+ return (a >= b) ? a : b;
+}
+
+
+static float min(float a, float b)
+{
+ return (a <= b) ? a : b;
+}
+
+static float fmax(float a, float b)
+{
+ return (a >= b) ? a : b;
+}
+
+static float fmin(float a, float b)
+{
+ return (a <= b) ? a : b;
+}
+
+struct int2
+{
+ int x,y;
+};
+
+struct uint2
+{
+ unsigned int x,y;
+};
+
+//typedef int2 uint2;
+
+typedef unsigned int uint;
+
+struct int4
+{
+ int x,y,z,w;
+};
+
+struct uint4
+{
+ unsigned int x,y,z,w;
+ uint4() {}
+ uint4(uint val) { x = y = z = w = val; }
+ uint4& operator+=(const uint4& other)
+ {
+ x += other.x;
+ y += other.y;
+ z += other.z;
+ w += other.w;
+ return *this;
+ }
+};
+static uint4 operator+(const uint4& a,const uint4& b)
+{
+ uint4 tmp;
+ tmp.x = a.x + b.x;
+ tmp.y = a.y + b.y;
+ tmp.z = a.z + b.z;
+ tmp.w = a.w + b.w;
+ return tmp;
+}
+static uint4 operator-(const uint4& a,const uint4& b)
+{
+ uint4 tmp;
+ tmp.x = a.x - b.x;
+ tmp.y = a.y - b.y;
+ tmp.z = a.z - b.z;
+ tmp.w = a.w - b.w;
+ return tmp;
+}
+
+#define native_sqrt sqrtf
+#define native_sin sinf
+#define native_cos cosf
+#define native_powr powf
+
+#define GUID_ARG ,int __guid_arg
+#define GUID_ARG_VAL ,__guid_arg
+
+
+#define as_int(a) (*((int*)&(a)))
+
+extern "C" int gMiniCLNumOutstandingTasks;
+// extern "C" void __kernel_func();
+
+
--- /dev/null
+/**********************************************************************************
+ * Copyright (c) 2008-2009 The Khronos Group Inc.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and/or associated documentation files (the
+ * "Materials"), to deal in the Materials without restriction, including
+ * without limitation the rights to use, copy, modify, merge, publish,
+ * distribute, sublicense, and/or sell copies of the Materials, and to
+ * permit persons to whom the Materials are furnished to do so, subject to
+ * the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Materials.
+ *
+ * THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+ * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+ * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+ * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+ * MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
+ **********************************************************************************/
+
+#ifndef __OPENCL_CL_GL_H
+#define __OPENCL_CL_GL_H
+
+#ifdef __APPLE__
+#include <OpenCL/cl_platform.h>
+#else
+#include <MiniCL/cl_platform.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+// NOTE: Make sure that appropriate GL header file is included separately
+
+typedef cl_uint cl_gl_object_type;
+typedef cl_uint cl_gl_texture_info;
+typedef cl_uint cl_gl_platform_info;
+
+// cl_gl_object_type
+#define CL_GL_OBJECT_BUFFER 0x2000
+#define CL_GL_OBJECT_TEXTURE2D 0x2001
+#define CL_GL_OBJECT_TEXTURE3D 0x2002
+#define CL_GL_OBJECT_RENDERBUFFER 0x2003
+
+// cl_gl_texture_info
+#define CL_GL_TEXTURE_TARGET 0x2004
+#define CL_GL_MIPMAP_LEVEL 0x2005
+
+extern CL_API_ENTRY cl_mem CL_API_CALL
+clCreateFromGLBuffer(cl_context /* context */,
+ cl_mem_flags /* flags */,
+ GLuint /* bufobj */,
+ int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_mem CL_API_CALL
+clCreateFromGLTexture2D(cl_context /* context */,
+ cl_mem_flags /* flags */,
+ GLenum /* target */,
+ GLint /* miplevel */,
+ GLuint /* texture */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_mem CL_API_CALL
+clCreateFromGLTexture3D(cl_context /* context */,
+ cl_mem_flags /* flags */,
+ GLenum /* target */,
+ GLint /* miplevel */,
+ GLuint /* texture */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_mem CL_API_CALL
+clCreateFromGLRenderbuffer(cl_context /* context */,
+ cl_mem_flags /* flags */,
+ GLuint /* renderbuffer */,
+ cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetGLObjectInfo(cl_mem /* memobj */,
+ cl_gl_object_type * /* gl_object_type */,
+ GLuint * /* gl_object_name */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clGetGLTextureInfo(cl_mem /* memobj */,
+ cl_gl_texture_info /* param_name */,
+ size_t /* param_value_size */,
+ void * /* param_value */,
+ size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueAcquireGLObjects(cl_command_queue /* command_queue */,
+ cl_uint /* num_objects */,
+ const cl_mem * /* mem_objects */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+extern CL_API_ENTRY cl_int CL_API_CALL
+clEnqueueReleaseGLObjects(cl_command_queue /* command_queue */,
+ cl_uint /* num_objects */,
+ const cl_mem * /* mem_objects */,
+ cl_uint /* num_events_in_wait_list */,
+ const cl_event * /* event_wait_list */,
+ cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // __OPENCL_CL_GL_H
--- /dev/null
+/**********************************************************************************
+ * Copyright (c) 2008-2009 The Khronos Group Inc.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and/or associated documentation files (the
+ * "Materials"), to deal in the Materials without restriction, including
+ * without limitation the rights to use, copy, modify, merge, publish,
+ * distribute, sublicense, and/or sell copies of the Materials, and to
+ * permit persons to whom the Materials are furnished to do so, subject to
+ * the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Materials.
+ *
+ * THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+ * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+ * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+ * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+ * MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
+ **********************************************************************************/
+
+#ifndef __CL_PLATFORM_H
+#define __CL_PLATFORM_H
+
+#define CL_PLATFORM_MINI_CL 0x12345
+
+struct MiniCLKernelDesc
+{
+ MiniCLKernelDesc(void* pCode, const char* pName);
+};
+
+#define MINICL_REGISTER(__kernel_func) static MiniCLKernelDesc __kernel_func##Desc((void*)__kernel_func, #__kernel_func);
+
+
+#ifdef __APPLE__
+ /* Contains #defines for AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER below */
+ #include <AvailabilityMacros.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define CL_API_ENTRY
+#define CL_API_CALL
+#ifdef __APPLE__
+#define CL_API_SUFFIX__VERSION_1_0 // AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
+#define CL_EXTENSION_WEAK_LINK __attribute__((weak_import))
+#else
+#define CL_API_SUFFIX__VERSION_1_0
+#define CL_EXTENSION_WEAK_LINK
+#endif
+
+#if defined (_WIN32) && ! defined (__MINGW32__)
+typedef signed __int8 int8_t;
+typedef unsigned __int8 uint8_t;
+typedef signed __int16 int16_t;
+typedef unsigned __int16 uint16_t;
+typedef signed __int32 int32_t;
+typedef unsigned __int32 uint32_t;
+typedef signed __int64 int64_t;
+typedef unsigned __int64 uint64_t;
+
+typedef int8_t cl_char;
+typedef uint8_t cl_uchar;
+typedef int16_t cl_short ;
+typedef uint16_t cl_ushort ;
+typedef int32_t cl_int ;
+typedef uint32_t cl_uint ;
+typedef int64_t cl_long ;
+typedef uint64_t cl_ulong ;
+
+typedef uint16_t cl_half ;
+typedef float cl_float ;
+typedef double cl_double ;
+
+
+typedef int8_t cl_char2[2] ;
+typedef int8_t cl_char4[4] ;
+typedef int8_t cl_char8[8] ;
+typedef int8_t cl_char16[16] ;
+typedef uint8_t cl_uchar2[2] ;
+typedef uint8_t cl_uchar4[4] ;
+typedef uint8_t cl_uchar8[8] ;
+typedef uint8_t cl_uchar16[16] ;
+
+typedef int16_t cl_short2[2] ;
+typedef int16_t cl_short4[4] ;
+typedef int16_t cl_short8[8] ;
+typedef int16_t cl_short16[16] ;
+typedef uint16_t cl_ushort2[2] ;
+typedef uint16_t cl_ushort4[4] ;
+typedef uint16_t cl_ushort8[8] ;
+typedef uint16_t cl_ushort16[16] ;
+
+typedef int32_t cl_int2[2] ;
+typedef int32_t cl_int4[4] ;
+typedef int32_t cl_int8[8] ;
+typedef int32_t cl_int16[16] ;
+typedef uint32_t cl_uint2[2] ;
+typedef uint32_t cl_uint4[4] ;
+typedef uint32_t cl_uint8[8] ;
+typedef uint32_t cl_uint16[16] ;
+
+typedef int64_t cl_long2[2] ;
+typedef int64_t cl_long4[4] ;
+typedef int64_t cl_long8[8] ;
+typedef int64_t cl_long16[16] ;
+typedef uint64_t cl_ulong2[2] ;
+typedef uint64_t cl_ulong4[4] ;
+typedef uint64_t cl_ulong8[8] ;
+typedef uint64_t cl_ulong16[16] ;
+
+typedef float cl_float2[2] ;
+typedef float cl_float4[4] ;
+typedef float cl_float8[8] ;
+typedef float cl_float16[16] ;
+
+typedef double cl_double2[2] ;
+typedef double cl_double4[4] ;
+typedef double cl_double8[8] ;
+typedef double cl_double16[16] ;
+
+
+#else
+#include <stdint.h>
+
+/* scalar types */
+typedef int8_t cl_char;
+typedef uint8_t cl_uchar;
+typedef int16_t cl_short __attribute__((aligned(2)));
+typedef uint16_t cl_ushort __attribute__((aligned(2)));
+typedef int32_t cl_int __attribute__((aligned(4)));
+typedef uint32_t cl_uint __attribute__((aligned(4)));
+typedef int64_t cl_long __attribute__((aligned(8)));
+typedef uint64_t cl_ulong __attribute__((aligned(8)));
+
+typedef uint16_t cl_half __attribute__((aligned(2)));
+typedef float cl_float __attribute__((aligned(4)));
+typedef double cl_double __attribute__((aligned(8)));
+
+
+/*
+ * Vector types
+ *
+ * Note: OpenCL requires that all types be naturally aligned.
+ * This means that vector types must be naturally aligned.
+ * For example, a vector of four floats must be aligned to
+ * a 16 byte boundary (calculated as 4 * the natural 4-byte
+ * alignment of the float). The alignment qualifiers here
+ * will only function properly if your compiler supports them
+ * and if you don't actively work to defeat them. For example,
+ * in order for a cl_float4 to be 16 byte aligned in a struct,
+ * the start of the struct must itself be 16-byte aligned.
+ *
+ * Maintaining proper alignment is the user's responsibility.
+ */
+typedef int8_t cl_char2[2] __attribute__((aligned(2)));
+typedef int8_t cl_char4[4] __attribute__((aligned(4)));
+typedef int8_t cl_char8[8] __attribute__((aligned(8)));
+typedef int8_t cl_char16[16] __attribute__((aligned(16)));
+typedef uint8_t cl_uchar2[2] __attribute__((aligned(2)));
+typedef uint8_t cl_uchar4[4] __attribute__((aligned(4)));
+typedef uint8_t cl_uchar8[8] __attribute__((aligned(8)));
+typedef uint8_t cl_uchar16[16] __attribute__((aligned(16)));
+
+typedef int16_t cl_short2[2] __attribute__((aligned(4)));
+typedef int16_t cl_short4[4] __attribute__((aligned(8)));
+typedef int16_t cl_short8[8] __attribute__((aligned(16)));
+typedef int16_t cl_short16[16] __attribute__((aligned(32)));
+typedef uint16_t cl_ushort2[2] __attribute__((aligned(4)));
+typedef uint16_t cl_ushort4[4] __attribute__((aligned(8)));
+typedef uint16_t cl_ushort8[8] __attribute__((aligned(16)));
+typedef uint16_t cl_ushort16[16] __attribute__((aligned(32)));
+
+typedef int32_t cl_int2[2] __attribute__((aligned(8)));
+typedef int32_t cl_int4[4] __attribute__((aligned(16)));
+typedef int32_t cl_int8[8] __attribute__((aligned(32)));
+typedef int32_t cl_int16[16] __attribute__((aligned(64)));
+typedef uint32_t cl_uint2[2] __attribute__((aligned(8)));
+typedef uint32_t cl_uint4[4] __attribute__((aligned(16)));
+typedef uint32_t cl_uint8[8] __attribute__((aligned(32)));
+typedef uint32_t cl_uint16[16] __attribute__((aligned(64)));
+
+typedef int64_t cl_long2[2] __attribute__((aligned(16)));
+typedef int64_t cl_long4[4] __attribute__((aligned(32)));
+typedef int64_t cl_long8[8] __attribute__((aligned(64)));
+typedef int64_t cl_long16[16] __attribute__((aligned(128)));
+typedef uint64_t cl_ulong2[2] __attribute__((aligned(16)));
+typedef uint64_t cl_ulong4[4] __attribute__((aligned(32)));
+typedef uint64_t cl_ulong8[8] __attribute__((aligned(64)));
+typedef uint64_t cl_ulong16[16] __attribute__((aligned(128)));
+
+typedef float cl_float2[2] __attribute__((aligned(8)));
+typedef float cl_float4[4] __attribute__((aligned(16)));
+typedef float cl_float8[8] __attribute__((aligned(32)));
+typedef float cl_float16[16] __attribute__((aligned(64)));
+
+typedef double cl_double2[2] __attribute__((aligned(16)));
+typedef double cl_double4[4] __attribute__((aligned(32)));
+typedef double cl_double8[8] __attribute__((aligned(64)));
+typedef double cl_double16[16] __attribute__((aligned(128)));
+#endif
+
+#include <stddef.h>
+
+/* and a few goodies to go with them */
+#define CL_CHAR_BIT 8
+#define CL_SCHAR_MAX 127
+#define CL_SCHAR_MIN (-127-1)
+#define CL_CHAR_MAX CL_SCHAR_MAX
+#define CL_CHAR_MIN CL_SCHAR_MIN
+#define CL_UCHAR_MAX 255
+#define CL_SHRT_MAX 32767
+#define CL_SHRT_MIN (-32767-1)
+#define CL_USHRT_MAX 65535
+#define CL_INT_MAX 2147483647
+#define CL_INT_MIN (-2147483647-1)
+#define CL_UINT_MAX 0xffffffffU
+#define CL_LONG_MAX ((cl_long) 0x7FFFFFFFFFFFFFFFLL)
+#define CL_LONG_MIN ((cl_long) -0x7FFFFFFFFFFFFFFFLL - 1LL)
+#define CL_ULONG_MAX ((cl_ulong) 0xFFFFFFFFFFFFFFFFULL)
+
+#define CL_FLT_DIG 6
+#define CL_FLT_MANT_DIG 24
+#define CL_FLT_MAX_10_EXP +38
+#define CL_FLT_MAX_EXP +128
+#define CL_FLT_MIN_10_EXP -37
+#define CL_FLT_MIN_EXP -125
+#define CL_FLT_RADIX 2
+#define CL_FLT_MAX 0x1.fffffep127f
+#define CL_FLT_MIN 0x1.0p-126f
+#define CL_FLT_EPSILON 0x1.0p-23f
+
+#define CL_DBL_DIG 15
+#define CL_DBL_MANT_DIG 53
+#define CL_DBL_MAX_10_EXP +308
+#define CL_DBL_MAX_EXP +1024
+#define CL_DBL_MIN_10_EXP -307
+#define CL_DBL_MIN_EXP -1021
+#define CL_DBL_RADIX 2
+#define CL_DBL_MAX 0x1.fffffffffffffp1023
+#define CL_DBL_MIN 0x1.0p-1022
+#define CL_DBL_EPSILON 0x1.0p-52
+
+/* There are no vector types for half */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // __CL_PLATFORM_H
--- /dev/null
+# Install script for directory: /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL
+
+# Set the install prefix
+IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ SET(CMAKE_INSTALL_PREFIX "/usr/local")
+ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ IF(BUILD_TYPE)
+ STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ ELSE(BUILD_TYPE)
+ SET(CMAKE_INSTALL_CONFIG_NAME "Release")
+ ENDIF(BUILD_TYPE)
+ MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+
+# Set the component getting installed.
+IF(NOT CMAKE_INSTALL_COMPONENT)
+ IF(COMPONENT)
+ MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
+ SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ ELSE(COMPONENT)
+ SET(CMAKE_INSTALL_COMPONENT)
+ ENDIF(COMPONENT)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT)
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE STATIC_LIBRARY FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/libMiniCL.a")
+ IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libMiniCL.a" AND
+ NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libMiniCL.a")
+ EXECUTE_PROCESS(COMMAND "/usr/bin/ranlib" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libMiniCL.a")
+ ENDIF()
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ list(APPEND CPACK_ABSOLUTE_DESTINATION_FILES
+ "/usr/local/include/bullet/MiniCL")
+FILE(INSTALL DESTINATION "/usr/local/include/bullet" TYPE DIRECTORY FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL" FILES_MATCHING REGEX "/[^/]*\\.h$" REGEX "/\\.svn$" EXCLUDE REGEX "/cmakefiles$" EXCLUDE)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
--- /dev/null
+# Install script for directory: /Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src
+
+# Set the install prefix
+IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ SET(CMAKE_INSTALL_PREFIX "/usr/local")
+ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
+STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ IF(BUILD_TYPE)
+ STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ ELSE(BUILD_TYPE)
+ SET(CMAKE_INSTALL_CONFIG_NAME "Release")
+ ENDIF(BUILD_TYPE)
+ MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+
+# Set the component getting installed.
+IF(NOT CMAKE_INSTALL_COMPONENT)
+ IF(COMPONENT)
+ MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
+ SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ ELSE(COMPONENT)
+ SET(CMAKE_INSTALL_COMPONENT)
+ ENDIF(COMPONENT)
+ENDIF(NOT CMAKE_INSTALL_COMPONENT)
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ list(APPEND CPACK_ABSOLUTE_DESTINATION_FILES
+ "/usr/local/include/bullet/btBulletCollisionCommon.h;/usr/local/include/bullet/btBulletDynamicsCommon.h;/usr/local/include/bullet/Bullet-C-Api.h")
+FILE(INSTALL DESTINATION "/usr/local/include/bullet" TYPE FILE FILES
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/btBulletCollisionCommon.h"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/btBulletDynamicsCommon.h"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/Bullet-C-Api.h"
+ )
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ list(APPEND CPACK_ABSOLUTE_DESTINATION_FILES
+ "/usr/local/include/bullet/vectormath/vmInclude.h")
+FILE(INSTALL DESTINATION "/usr/local/include/bullet/vectormath" TYPE FILE FILES "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/vectormath/vmInclude.h")
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ list(APPEND CPACK_ABSOLUTE_DESTINATION_FILES
+ "/usr/local/include/bullet/vectormath/scalar/boolInVec.h;/usr/local/include/bullet/vectormath/scalar/floatInVec.h;/usr/local/include/bullet/vectormath/scalar/mat_aos.h;/usr/local/include/bullet/vectormath/scalar/quat_aos.h;/usr/local/include/bullet/vectormath/scalar/vec_aos.h;/usr/local/include/bullet/vectormath/scalar/vectormath_aos.h")
+FILE(INSTALL DESTINATION "/usr/local/include/bullet/vectormath/scalar" TYPE FILE FILES
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/vectormath/scalar/boolInVec.h"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/vectormath/scalar/floatInVec.h"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/vectormath/scalar/mat_aos.h"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/vectormath/scalar/quat_aos.h"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/vectormath/scalar/vec_aos.h"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/vectormath/scalar/vectormath_aos.h"
+ )
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
+IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+ list(APPEND CPACK_ABSOLUTE_DESTINATION_FILES
+ "/usr/local/include/bullet/vectormath/sse/boolInVec.h;/usr/local/include/bullet/vectormath/sse/floatInVec.h;/usr/local/include/bullet/vectormath/sse/mat_aos.h;/usr/local/include/bullet/vectormath/sse/quat_aos.h;/usr/local/include/bullet/vectormath/sse/vec_aos.h;/usr/local/include/bullet/vectormath/sse/vecidx_aos.h;/usr/local/include/bullet/vectormath/sse/vectormath_aos.h")
+FILE(INSTALL DESTINATION "/usr/local/include/bullet/vectormath/sse" TYPE FILE FILES
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/vectormath/sse/boolInVec.h"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/vectormath/sse/floatInVec.h"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/vectormath/sse/mat_aos.h"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/vectormath/sse/quat_aos.h"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/vectormath/sse/vec_aos.h"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/vectormath/sse/vecidx_aos.h"
+ "/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/vectormath/sse/vectormath_aos.h"
+ )
+ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified")
+
+IF(NOT CMAKE_INSTALL_LOCAL_ONLY)
+ # Include the install script for each subdirectory.
+ INCLUDE("/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletSoftBody/cmake_install.cmake")
+ INCLUDE("/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletCollision/cmake_install.cmake")
+ INCLUDE("/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletDynamics/cmake_install.cmake")
+ INCLUDE("/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/LinearMath/cmake_install.cmake")
+ INCLUDE("/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/MiniCL/cmake_install.cmake")
+ INCLUDE("/Users/kobayasi/NetBeansProjects/MMD/MikuMikuStudio/mikumikustudio/bullet-2.81-macosx/src/BulletMultiThreaded/cmake_install.cmake")
+
+ENDIF(NOT CMAKE_INSTALL_LOCAL_ONLY)
+
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="build bullet natives" default="all" basedir="../../../">
+ <!-- load cpp compiler ant task -->
+ <taskdef resource="cpptasks.tasks" classpath="lib/antlibs/cpptasks.jar"/>
+ <!-- load properties -->
+ <property file="src/bullet/native/bullet.properties"/>
+ <!-- condition for mac platform check -->
+ <condition property="isSolaris">
+ <os name="SunOS"/>
+ </condition>
+ <condition property="isMac">
+ <and>
+ <os family="mac" />
+ <os family="unix" />
+ </and>
+ </condition>
+ <!-- condition for windows platform check -->
+ <condition property="isWindows">
+ <os family="windows" />
+ </condition>
+ <!-- condition for linux platform check -->
+ <condition property="isLinux">
+ <and>
+ <os family="unix"/>
+ <not>
+ <os family="mac"/>
+ </not>
+ <not>
+ <os name="SunOS"/>
+ </not>
+ </and>
+ </condition>
+ <!-- condition for x86_64 check -->
+ <condition property="isx86_64">
+ <os arch="x86_64" />
+ </condition>
+
+ <fileset id="lib.jars" dir="${bullet.lib.dir}">
+ <include name="**/*.jar"/>
+ </fileset>
+ <fileset id="lib.jme.jars" dir="${bullet.jme.dir}">
+ <include name="**/*.jar"/>
+ </fileset>
+
+ <pathconvert property="lib.importpath">
+ <fileset refid="lib.jars"/>
+ <fileset refid="lib.jme.jars"/>
+ </pathconvert>
+
+ <target name="build-bullet-natives" description="builds the native bullet library for the platform being run on" depends="-create-folders, create-native-headers, -nativelib-osx, -nativelib-windows, -nativelib-linux, -nativelib-solaris">
+ <echo message="Updating native jME3-bullet-natives.jar"/>
+ <zip basedir="${bullet.output.base}/jarcontent" file="${bullet.output.base}/jME3-bullet-natives.jar" compress="true"/>
+ <copy file="${bullet.output.base}/jME3-bullet-natives.jar" todir="dist/lib"/>
+ </target>
+
+ <target name="create-native-headers" description="creates the native headers">
+ <javah destdir="${bullet.source.dir}" classpath="${bullet.build.dir}${path.separator}${lib.importpath}" force="yes">
+ <class name="com.jme3.bullet.PhysicsSpace"/>
+
+ <class name="com.jme3.bullet.collision.PhysicsCollisionEvent"/>
+ <class name="com.jme3.bullet.collision.PhysicsCollisionObject"/>
+ <class name="com.jme3.bullet.objects.PhysicsCharacter"/>
+ <class name="com.jme3.bullet.objects.PhysicsGhostObject"/>
+ <class name="com.jme3.bullet.objects.PhysicsRigidBody"/>
+ <class name="com.jme3.bullet.objects.PhysicsVehicle"/>
+ <class name="com.jme3.bullet.objects.VehicleWheel"/>
+ <class name="com.jme3.bullet.objects.infos.RigidBodyMotionState"/>
+
+ <class name="com.jme3.bullet.collision.shapes.CollisionShape"/>
+ <class name="com.jme3.bullet.collision.shapes.BoxCollisionShape"/>
+ <class name="com.jme3.bullet.collision.shapes.CapsuleCollisionShape"/>
+ <class name="com.jme3.bullet.collision.shapes.CompoundCollisionShape"/>
+ <class name="com.jme3.bullet.collision.shapes.ConeCollisionShape"/>
+ <class name="com.jme3.bullet.collision.shapes.CylinderCollisionShape"/>
+ <class name="com.jme3.bullet.collision.shapes.GImpactCollisionShape"/>
+ <class name="com.jme3.bullet.collision.shapes.HeightfieldCollisionShape"/>
+ <class name="com.jme3.bullet.collision.shapes.HullCollisionShape"/>
+ <class name="com.jme3.bullet.collision.shapes.MeshCollisionShape"/>
+ <class name="com.jme3.bullet.collision.shapes.PlaneCollisionShape"/>
+ <class name="com.jme3.bullet.collision.shapes.SimplexCollisionShape"/>
+ <class name="com.jme3.bullet.collision.shapes.SphereCollisionShape"/>
+
+ <class name="com.jme3.bullet.joints.PhysicsJoint"/>
+ <class name="com.jme3.bullet.joints.ConeJoint"/>
+ <class name="com.jme3.bullet.joints.HingeJoint"/>
+ <class name="com.jme3.bullet.joints.Point2PointJoint"/>
+ <class name="com.jme3.bullet.joints.SixDofJoint"/>
+ <class name="com.jme3.bullet.joints.SixDofSpringJoint"/>
+ <class name="com.jme3.bullet.joints.SliderJoint"/>
+ <class name="com.jme3.bullet.joints.motors.RotationalLimitMotor"/>
+ <class name="com.jme3.bullet.joints.motors.TranslationalLimitMotor"/>
+
+ <class name="com.jme3.bullet.util.NativeMeshUtil"/>
+ <class name="com.jme3.bullet.util.DebugShapeFactory"/>
+ <class name="projectkyoto.jme3.mmd.nativelib.SkinUtil"/>
+ </javah>
+ </target>
+
+ <!-- compares the API of native bullet and java version-->
+ <target name="bullet-api-diff">
+ <echo message="Comparing bullet and jbullet API"/>
+ <property name="dependencyfinder.home" value="lib/antlibs/depfinder"/>
+ <path id="dependencyfinder">
+ <pathelement location="${dependencyfinder.home}/classes"/>
+ <pathelement location="${dependencyfinder.home}/lib/DependencyFinder.jar"/>
+ <pathelement location="${dependencyfinder.home}/lib/jakarta-oro.jar"/>
+ <pathelement location="${dependencyfinder.home}/lib/log4j.jar"/>
+ <pathelement location="${dependencyfinder.home}/lib/guava.jar"/>
+ </path>
+ <taskdef resource="dependencyfindertasks.properties">
+ <classpath refid="dependencyfinder"/>
+ </taskdef>
+ <jarjardiff destfile="bullet-api-diff.xml"
+ name="jMonkeyEngine3 Bullet Physics API Comparison"
+ oldlabel="Java Version"
+ newlabel="Native Version"
+ level="incompatible">
+ <old>
+ <pathelement location="build/jME3-jbullet.jar"/>
+ </old>
+ <new>
+ <pathelement location="build/jME3-bullet.jar"/>
+ </new>
+ </jarjardiff>
+ <xslt style="${dependencyfinder.home}/etc/DiffToHTML.xsl"
+ in="bullet-api-diff.xml"
+ out="bullet-api-diff.html" force="true"/>
+ <delete file="bullet-api-diff.xml"/>
+ </target>
+
+ <target name="-create-folders" description="creates the native headers">
+ <mkdir dir="${bullet.source.dir}"/>
+ <mkdir dir="${bullet.build.dir}"/>
+ <mkdir dir="${bullet.output.dir}"/>
+ </target>
+
+ <target name="-nativelib-osx" if="isMac">
+ <echo message="Building MacOSX version of native bullet"/>
+ <mkdir dir="${bullet.output.dir}/macosx"/>
+ <cc name="${bullet.osx.compiler}" warnings="none" debug="${bullet.compile.debug}" link="shared" outfile="${bullet.output.dir}/macosx/${bullet.library.name}" objdir="${bullet.build.dir}">
+ <fileset dir="${bullet.source.dir}">
+ <include name="*.cpp">
+ </include>
+ </fileset>
+ <includepath path="${bullet.osx.java.include}"/>
+ <includepath path="${bullet.bullet.include}"/>
+ <compilerarg value="-syslibroot ${bullet.osx.syslibroot}"/>
+<!-- <compilerarg value="-arch"/>-->
+<!-- <compilerarg value="ppc"/>-->
+ <compilerarg value="-arch"/>
+ <compilerarg value="i386"/>
+ <compilerarg value="-arch"/>
+ <compilerarg value="x86_64"/>
+ <linker name="${bullet.osx.compiler}">
+ <libset dir="${bullet.folder}/src/BulletSoftBody" libs="BulletSoftBody"/>
+ <libset dir="${bullet.folder}/src/BulletMultiThreaded" libs="BulletMultiThreaded"/>
+ <libset dir="${bullet.folder}/src/BulletDynamics" libs="BulletDynamics"/>
+ <libset dir="${bullet.folder}/src/BulletCollision" libs="BulletCollision"/>
+ <libset dir="${bullet.folder}/src/LinearMath" libs="LinearMath"/>
+<!-- <linkerarg value="-arch"/>-->
+<!-- <linkerarg value="ppc"/>-->
+ <linkerarg value="-arch"/>
+ <linkerarg value="i386"/>
+ <linkerarg value="-arch"/>
+ <linkerarg value="x86_64"/>
+ </linker>
+ </cc>
+ <move file="${bullet.output.dir}/macosx/lib${bullet.library.name}.dylib" tofile="${bullet.output.dir}/macosx/lib${bullet.library.name}.jnilib" failonerror="true" verbose="true"/>
+ <delete file="${bullet.output.dir}/macosx/history.xml"/>
+ </target>
+
+ <target name="-nativelib-linux" if="isLinux">
+ <echo message="Building Linux version of native bullet"/>
+ <mkdir dir="${bullet.output.dir}/linux"/>
+ <cc name="${bullet.linux.compiler}" warnings="severe" debug="${bullet.compile.debug}" link="shared" outfile="${bullet.output.dir}/linux/${bullet.library.name}" objdir="${bullet.build.dir}">
+ <fileset dir="${bullet.source.dir}">
+ <include name="*.cpp">
+ </include>
+ </fileset>
+ <includepath path="${bullet.java.include}"/>
+ <includepath path="${bullet.java.include}/linux"/>
+ <includepath path="${bullet.bullet.include}"/>
+ <!--compilerarg value="-m32"/-->
+ <compilerarg value="-m32"/>
+ <compilerarg value="-static-libgcc"/>
+ <linker name="${bullet.linux.compiler}">
+ <!-- linkerarg value="-static-libgcc"/ -->
+ <libset dir="${bullet.folder}/src/BulletMultiThreaded" libs="BulletMultiThreaded"/>
+ <libset dir="${bullet.folder}/src/BulletDynamics" libs="BulletDynamics"/>
+ <libset dir="${bullet.folder}/src/BulletCollision" libs="BulletCollision"/>
+ <libset dir="${bullet.folder}/src/LinearMath" libs="LinearMath"/>
+ </linker>
+ </cc>
+ <delete file="${bullet.output.dir}/linux/history.xml"/>
+ </target>
+ <target name="-nativelib-solaris" if="isSolaris">
+ <echo message="Building Solaris version of native bullet"/>
+ <mkdir dir="${bullet.output.dir}/linux"/>
+ <cc name="${bullet.solaris.compiler}" warnings="severe" debug="${bullet.compile.debug}" link="shared" outfile="${bullet.output.dir}/solaris/${bullet.library.name}" objdir="${bullet.build.dir}">
+ <fileset dir="${bullet.source.dir}">
+ <include name="*.cpp">
+ </include>
+ </fileset>
+ <includepath path="${bullet.java.include}"/>
+ <includepath path="${bullet.java.include}/solaris"/>
+ <includepath path="${bullet.bullet.include}"/>
+ <!--compilerarg value="-m32"/-->
+ <compilerarg value="-m64"/>
+ <compilerarg value="-fno-strict-aliasing"/>
+ <compilerarg value="-pthread"/>
+ <compilerarg value="-fPIC"/>
+ <compilerarg value="-D_REENTRANT"/>
+ <compilerarg value="-static-libstdc++"/>
+ <compilerarg value="-static-libgcc"/>
+ <compilerarg value="-D_REENTRANT"/>
+ <linker name="${bullet.solaris.compiler}">
+ <linkerarg value="-R/usr/sfw/lib"/>
+ <linkerarg value="-m64"/>
+ <libset dir="${bullet.folder}/src/BulletMultiThreaded" libs="BulletMultiThreaded"/>
+ <libset dir="${bullet.folder}/src/BulletDynamics" libs="BulletDynamics"/>
+ <libset dir="${bullet.folder}/src/BulletCollision" libs="BulletCollision"/>
+ <libset dir="${bullet.folder}/src/LinearMath" libs="LinearMath"/>
+ </linker>
+ </cc>
+ <delete file="${bullet.output.dir}/solaris/history.xml"/>
+ </target>
+
+ <target name="-nativelib-windows" if="isWindows">
+ <echo message="Building Windows version of native bullet"/>
+ <mkdir dir="${bullet.output.dir}/windows"/>
+ <cc multithreaded="true" name="${bullet.windows.compiler}" warnings="none" debug="${bullet.compile.debug}" outtype="shared" outfile="${bullet.output.dir}/windows/${bullet.library.name}" objdir="${bullet.build.dir}">
+ <fileset dir="${bullet.source.dir}">
+ <include name="*.cpp">
+ </include>
+ </fileset>
+ <includepath path="${bullet.java.include}"/>
+ <includepath path="${bullet.java.include}/win32"/>
+ <includepath path="${bullet.bullet.include}"/>
+ <includepath path="src/bullet/native"/>
+ <!--compilerarg value="-m32"/-->
+ <!-- compilerarg value="-static-libgcc -static-libstdc++"/ -->
+ <linker name="${bullet.windows.compiler}" debug="${bullet.compile.debug}" >
+ <linkerarg value="-o${bullet.library.name}.dll" />
+ <linkerarg value="--kill-at" />
+ <linkerarg value="-static"/>
+ <libset dir="${bullet.folder}/lib/Release" libs="BulletMultiThreaded,BulletDynamics,BulletCollision,LinearMath"/>
+ </linker>
+ </cc>
+ <delete file="${bullet.output.dir}/windows/history.xml"/>
+ </target>
+</project>
--- /dev/null
+***********************************
+* Build info for bulletjme *
+* (c) 2011 Normen Hansen *
+***********************************
+
+This document outlines the process of building bullet-jme on different platforms.
+Since bullet-jme is a native java library and bullet gets included statically,
+building requires you to download and build the bullet source first.
+
+
+
+***********************************
+* Building bullet *
+***********************************
+
+-----------------------------------
+General info
+-----------------------------------
+Note that the compilation of bullet should not produce dll / so / dylib files
+but static *.a libraries which can later be compiled into the binary of bullet-jme.
+
+-----------------------------------
+Downloading and extracting bullet
+-----------------------------------
+Requirements:
+- Bullet source: http://bullet.googlecode.com/
+
+Extract bullet source and build bullet (see below)
+
+-----------------------------------
+Building on Mac OSX
+-----------------------------------
+Requirements:
+- Apple Developer tools: http://developer.apple.com/
+- CMake: http://www.cmake.org/ (or via http://www.macports.org)
+
+Commands:
+> cd bullet-trunk
+> cmake -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON \
+ -DCMAKE_OSX_ARCHITECTURES='ppc;i386;x86_64' \
+ -DBUILD_EXTRAS=off -DBUILD_DEMOS=off -DCMAKE_BUILD_TYPE=Release
+> make
+
+-----------------------------------
+Building on WINDOWS (MinGW/GCC, Recommended)
+-----------------------------------
+Requirements:
+- GNU C++ Compiler: http://www.mingw.org/
+ http://mingw-w64.sourceforge.net/
+- CMake: http://www.cmake.org/
+
+Commands:
+> cd bullet-trunk
+> cmake . -DBUILD_SHARED_LIBS=OFF -DBUILD_DEMOS:BOOL=OFF -DBUILD_EXTRAS:BOOL=OFF -DCMAKE_BUILD_TYPE=Release . -G "MinGW Makefiles"
+> mingw32-make
+
+-----------------------------------
+Building on WINDOWS (VisualStudio, untested)
+-----------------------------------
+Requirements:
+- Microsoft Visual Studio http://msdn.microsoft.com/
+
+Bullet comes with autogenerated Project Files for Microsoft Visual Studio 6, 7, 7.1 and 8.
+The main Workspace/Solution is located in Bullet/msvc/8/wksbullet.sln (replace 8 with your version).
+
+Build the project to create static libraries.
+
+
+-----------------------------------
+Building bullet on LINUX
+-----------------------------------
+Requirements:
+- Gnu C++ Compiler: http://gcc.gnu.org/
+- CMake: http://www.cmake.org/ (or via your package manager of choice)
+
+Commands:
+> cd bullet-trunk
+> cmake -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON -DCMAKE_C_FLAGS="-fPIC" -DCMAKE_CXX_FLAGS="-fPIC"\
+ -DBUILD_EXTRAS=off -DBUILD_DEMOS=off -DCMAKE_BUILD_TYPE=Release
+> make
+
+-----------------------------------
+More info on building bullet
+-----------------------------------
+http://www.bulletphysics.org/mediawiki-1.5.8/index.php?title=Installation
+
+
+
+***********************************
+* Building bulletjme *
+***********************************
+
+-----------------------------------
+Requirements
+-----------------------------------
+- Java SDK 1.5+: http://java.sun.com
+- Apache ANT: http://ant.apache.org
+- C++ Compiler: (see below)
+- jme3 Source: http://jmonkeyengine.googlecode.com/
+- Statically compiled bullet source (see above)
+
+-----------------------------------
+Preparation
+-----------------------------------
+- copy/link bullet-trunk folder into the same folder where the bullet-jme folder is:
+
+disk
+ |
+ +-root folder
+ |
+ +-engine
+ |
+ +-sdk
+ |
+ +-bullet-trunk
+
+- You can alter options in the "src/bullet/native/bullet.properties" file, such as the used bullet
+ version, native compilation options etc. (see below)
+
+-----------------------------------
+Building bulletjme native
+-----------------------------------
+Commands:
+> cd engine
+> ant jar
+> ant build-bullet-natives
+
+Thats all. ANT takes care building native binaries and copies them to th elib directory.
+
+If you get compilation errors, try setting "native.java.include" in the build.properties file to your
+JDK include directory, e.g. /opt/java/include or "c:\Program Files\Java\jdk1.6.0_20\include".
+
+-----------------------------------
+Altering the native build process
+-----------------------------------
+bullet-jme uses cpptasks to compile native code.
+
+To change the used compiler, edit the "native.platform.compiler" entry in the
+"build.properties" file. The following c++ compilers work with cpptasks:
+
+gcc GCC C++ compiler
+g++ GCC C++ compiler
+c++ GCC C++ compiler
+msvc Microsoft Visual C++
+bcc Borland C++ Compiler
+icl Intel C++ compiler for Windows (IA-32)
+ecl Intel C++ compiler for Windows (IA-64)
+icc Intel C++ compiler for Linux (IA-32)
+ecc Intel C++ compiler for Linux (IA-64)
+CC Sun ONE C++ compiler
+aCC HP aC++ C++ Compiler
+wcl OpenWatcom C/C++ compiler
+
+In the "nbproject" folder you can find "build-native-platform.xml" files containing the commands
+to compile bullet-jme on different platforms. If you want to alter the process,
+you can copy and modify one of the files and import it in the "build.xml" file instead
+of the old one.
+
+-----------------------------------
+Netbeans Project
+-----------------------------------
+The project also includes a Netbeans project to edit and build
+the source in the Netbeans IDE in the /src/bullet/ subfolder.
+
+To have correct syntax highlighting in .cpp/.h files:
+
+- in Netbeans Settings -> C/C++ -> Code Assistance -> C++
+ - add bullet-2.77/src as include directories for c++
+ - add JAVA_HOME/include as include directories for c++
--- /dev/null
+####################################################
+# these are the ant build properties for bullet-jme #
+#####################################################
+bullet.library.name=bulletjme
+bullet.library.version=0.9
+
+# change if bullet folder has different location
+# bullet.folder=../bullet-trunk
+#bullet.folder=c:/tmp/bullet-trunk.win32
+bullet.folder=../bullet-2.81-linux
+# bullet.folder=../bullet-trunk.macosx2
+#bullet.folder=../bullet-trunk.solaris
+# bullet.folder=../bullet-trunk.solaris64
+# compile options
+bullet.compile.debug=false=
+
+# native library compilation options
+bullet.osx.compiler=g++
+bullet.osx.syslibroot=/Developer/SDKs/MacOSX10.5.sdk
+# change this to msvc for MS Visual Studio compiler
+bullet.windows.compiler=msvc
+bullet.linux.compiler=g++
+bullet.solaris.compiler=g++
+# native header include directories
+#bullet.java.include=${java.home}/../include:${java.home}/../include/win32
+# bullet.java.include=${java.home}/../include:${java.home}/../include/solaris
+bullet.java.include=${java.home}/../include:${java.home}/../include/linux
+# OSX has no JRE, only JDK
+# bullet.osx.java.include=${java.home}/include
+bullet.osx.java.include=/System/Library/Frameworks/JavaVM.framework/Versions/A/Headers
+# dont change these..
+bullet.bullet.include=${bullet.folder}/src
+bullet.build.dir=build/bullet/
+bullet.source.dir=src/bullet/native
+bullet.output.base=lib/bullet
+bullet.output.dir=${bullet.output.base}/jarcontent/native
+bullet.jme.dir=dist
+bullet.lib.dir=dist/lib
--- /dev/null
+####################################################
+# these are the ant build properties for bullet-jme #
+#####################################################
+bullet.library.name=bulletjme
+bullet.library.version=0.9
+
+bullet.folder=../bullet-trunk.solaris
+# compile options
+bullet.compile.debug=false
+
+# native library compilation options
+# change this to msvc for MS Visual Studio compiler
+bullet.solaris.compiler=g++
+# native header include directories
+bullet.java.include=${java.home}/../include:${java.home}/../include/solaris
+# OSX has no JRE, only JDK
+
+# dont change these..
+bullet.bullet.include=${bullet.folder}/src
+bullet.build.dir=build/bullet/
+bullet.source.dir=src/bullet/native
+bullet.output.base=lib/bullet
+bullet.output.dir=${bullet.output.base}/jarcontent/native
+bullet.jme.dir=dist
+bullet.lib.dir=dist/lib
--- /dev/null
+####################################################
+# these are the ant build properties for bullet-jme #
+#####################################################
+bullet.library.name=bulletjme64
+bullet.library.version=0.9
+
+bullet.folder=../bullet-trunk.solaris64
+# compile options
+bullet.compile.debug=false
+
+# native library compilation options
+# change this to msvc for MS Visual Studio compiler
+bullet.solaris.compiler=g++
+# native header include directories
+bullet.java.include=${java.home}/../include:${java.home}/../include/solaris
+# OSX has no JRE, only JDK
+
+# dont change these..
+bullet.bullet.include=${bullet.folder}/src
+bullet.build.dir=build/bullet/
+bullet.source.dir=src/bullet/native
+bullet.output.base=lib/bullet
+bullet.output.dir=${bullet.output.base}/jarcontent/native
+bullet.jme.dir=dist
+bullet.lib.dir=dist/lib
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include <stdio.h>
+#include "com_jme3_bullet_PhysicsSpace.h"
+#include "jmePhysicsSpace.h"
+#include "jmeBulletUtil.h"
+#include "jmeUserPointer.h"
+/**
+ * Author: Normen Hansen
+ */
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: createPhysicsSpace
+ * Signature: (FFFFFFI)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_PhysicsSpace_createPhysicsSpace
+ (JNIEnv * env, jobject object, jfloat minX, jfloat minY, jfloat minZ, jfloat maxX, jfloat maxY, jfloat maxZ, jint broadphase, jboolean threading) {
+fprintf(stderr, "createPhysicsSpace\n");
+fflush(stderr);
+ jmeClasses::initJavaClasses(env);
+if (env->ExceptionCheck()) return 0L;
+fprintf(stderr, "new jmePhysicsSpace()\n");
+fflush(stderr);
+ jmePhysicsSpace* space = new jmePhysicsSpace(env, object);
+if (env->ExceptionCheck()) return 0L;
+fprintf(stderr, "after new jmePhysicsSpace()\n");
+fflush(stderr);
+ if (space == NULL) {
+fprintf(stderr, "space == NULL\n");
+fflush(stderr);
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The physics space has not been created.");
+ return 0;
+ }
+fprintf(stderr, "createPhysicsSpace\n");
+fflush(stderr);
+ space->createPhysicsSpace(minX, minY, minZ, maxX, maxY, maxZ, broadphase, threading);
+ return reinterpret_cast<jlong>(space);
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: stepSimulation
+ * Signature: (JFIF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_stepSimulation
+ (JNIEnv * env, jobject object, jlong spaceId, jfloat tpf, jint maxSteps, jfloat accuracy) {
+ jmePhysicsSpace* space = reinterpret_cast<jmePhysicsSpace*>(spaceId);
+ if (space == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The physics space does not exist.");
+ return;
+ }
+ space->stepSimulation(tpf, maxSteps, accuracy);
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: addCollisionObject
+ * Signature: (JJ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_addCollisionObject
+ (JNIEnv * env, jobject object, jlong spaceId, jlong objectId) {
+ jmePhysicsSpace* space = reinterpret_cast<jmePhysicsSpace*>(spaceId);
+ btCollisionObject* collisionObject = reinterpret_cast<btCollisionObject*>(objectId);
+ if (space == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The physics space does not exist.");
+ return;
+ }
+ if (collisionObject == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The collision object does not exist.");
+ return;
+ }
+ jmeUserPointer *userPointer = (jmeUserPointer*)collisionObject->getUserPointer();
+ userPointer -> space = space;
+
+ space->getDynamicsWorld()->addCollisionObject(collisionObject);
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: removeCollisionObject
+ * Signature: (JJ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_removeCollisionObject
+ (JNIEnv * env, jobject object, jlong spaceId, jlong objectId) {
+ jmePhysicsSpace* space = reinterpret_cast<jmePhysicsSpace*>(spaceId);
+ btCollisionObject* collisionObject = reinterpret_cast<btCollisionObject*>(objectId);
+ if (space == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The physics space does not exist.");
+ return;
+ }
+ if (collisionObject == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The collision object does not exist.");
+ return;
+ }
+ space->getDynamicsWorld()->removeCollisionObject(collisionObject);
+ jmeUserPointer *userPointer = (jmeUserPointer*)collisionObject->getUserPointer();
+ userPointer -> space = NULL;
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: addRigidBody
+ * Signature: (JJ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_addRigidBody
+ (JNIEnv * env, jobject object, jlong spaceId, jlong rigidBodyId) {
+ jmePhysicsSpace* space = reinterpret_cast<jmePhysicsSpace*>(spaceId);
+ btRigidBody* collisionObject = reinterpret_cast<btRigidBody*>(rigidBodyId);
+ if (space == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The physics space does not exist.");
+ return;
+ }
+ if (collisionObject == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The collision object does not exist.");
+ return;
+ }
+ jmeUserPointer *userPointer = (jmeUserPointer*)collisionObject->getUserPointer();
+ userPointer -> space = space;
+ space->getDynamicsWorld()->addRigidBody(collisionObject);
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: removeRigidBody
+ * Signature: (JJ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_removeRigidBody
+ (JNIEnv * env, jobject object, jlong spaceId, jlong rigidBodyId) {
+ jmePhysicsSpace* space = reinterpret_cast<jmePhysicsSpace*>(spaceId);
+ btRigidBody* collisionObject = reinterpret_cast<btRigidBody*>(rigidBodyId);
+ if (space == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The physics space does not exist.");
+ return;
+ }
+ if (collisionObject == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The collision object does not exist.");
+ return;
+ }
+ jmeUserPointer *userPointer = (jmeUserPointer*)collisionObject->getUserPointer();
+ userPointer -> space = NULL;
+ space->getDynamicsWorld()->removeRigidBody(collisionObject);
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: addCharacterObject
+ * Signature: (JJ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_addCharacterObject
+ (JNIEnv * env, jobject object, jlong spaceId, jlong objectId) {
+ jmePhysicsSpace* space = reinterpret_cast<jmePhysicsSpace*>(spaceId);
+ btCollisionObject* collisionObject = reinterpret_cast<btCollisionObject*>(objectId);
+ if (space == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The physics space does not exist.");
+ return;
+ }
+ if (collisionObject == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The collision object does not exist.");
+ return;
+ }
+ jmeUserPointer *userPointer = (jmeUserPointer*)collisionObject->getUserPointer();
+ userPointer -> space = space;
+ space->getDynamicsWorld()->addCollisionObject(collisionObject,
+ btBroadphaseProxy::CharacterFilter,
+ btBroadphaseProxy::StaticFilter | btBroadphaseProxy::DefaultFilter
+ );
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: removeCharacterObject
+ * Signature: (JJ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_removeCharacterObject
+ (JNIEnv * env, jobject object, jlong spaceId, jlong objectId) {
+ jmePhysicsSpace* space = reinterpret_cast<jmePhysicsSpace*>(spaceId);
+ btCollisionObject* collisionObject = reinterpret_cast<btCollisionObject*>(objectId);
+ if (space == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The physics space does not exist.");
+ return;
+ }
+ if (collisionObject == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The collision object does not exist.");
+ return;
+ }
+ jmeUserPointer *userPointer = (jmeUserPointer*)collisionObject->getUserPointer();
+ userPointer -> space = NULL;
+ space->getDynamicsWorld()->removeCollisionObject(collisionObject);
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: addAction
+ * Signature: (JJ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_addAction
+ (JNIEnv * env, jobject object, jlong spaceId, jlong objectId) {
+ jmePhysicsSpace* space = reinterpret_cast<jmePhysicsSpace*>(spaceId);
+ btActionInterface* actionObject = reinterpret_cast<btActionInterface*>(objectId);
+ if (space == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The physics space does not exist.");
+ return;
+ }
+ if (actionObject == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The action object does not exist.");
+ return;
+ }
+ space->getDynamicsWorld()->addAction(actionObject);
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: removeAction
+ * Signature: (JJ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_removeAction
+ (JNIEnv * env, jobject object, jlong spaceId, jlong objectId) {
+ jmePhysicsSpace* space = reinterpret_cast<jmePhysicsSpace*>(spaceId);
+ btActionInterface* actionObject = reinterpret_cast<btActionInterface*>(objectId);
+ if (space == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The physics space does not exist.");
+ return;
+ }
+ if (actionObject == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The action object does not exist.");
+ return;
+ }
+ space->getDynamicsWorld()->removeAction(actionObject);
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: addVehicle
+ * Signature: (JJ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_addVehicle
+ (JNIEnv * env, jobject object, jlong spaceId, jlong objectId) {
+ jmePhysicsSpace* space = reinterpret_cast<jmePhysicsSpace*>(spaceId);
+ btActionInterface* actionObject = reinterpret_cast<btActionInterface*>(objectId);
+ if (space == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The physics space does not exist.");
+ return;
+ }
+ if (actionObject == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The vehicle object does not exist.");
+ return;
+ }
+ space->getDynamicsWorld()->addAction(actionObject);
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: removeVehicle
+ * Signature: (JJ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_removeVehicle
+ (JNIEnv * env, jobject object, jlong spaceId, jlong objectId) {
+ jmePhysicsSpace* space = reinterpret_cast<jmePhysicsSpace*>(spaceId);
+ btActionInterface* actionObject = reinterpret_cast<btActionInterface*>(objectId);
+ if (space == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The physics space does not exist.");
+ return;
+ }
+ if (actionObject == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The action object does not exist.");
+ return;
+ }
+ space->getDynamicsWorld()->removeVehicle(actionObject);
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: addConstraint
+ * Signature: (JJ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_addConstraint
+ (JNIEnv * env, jobject object, jlong spaceId, jlong objectId) {
+ jmePhysicsSpace* space = reinterpret_cast<jmePhysicsSpace*>(spaceId);
+ btTypedConstraint* constraint = reinterpret_cast<btTypedConstraint*>(objectId);
+ if (space == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The physics space does not exist.");
+ return;
+ }
+ if (constraint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The constraint object does not exist.");
+ return;
+ }
+ space->getDynamicsWorld()->addConstraint(constraint);
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: removeConstraint
+ * Signature: (JJ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_removeConstraint
+ (JNIEnv * env, jobject object, jlong spaceId, jlong objectId) {
+ jmePhysicsSpace* space = reinterpret_cast<jmePhysicsSpace*>(spaceId);
+ btTypedConstraint* constraint = reinterpret_cast<btTypedConstraint*>(objectId);
+ if (space == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The physics space does not exist.");
+ return;
+ }
+ if (constraint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The constraint object does not exist.");
+ return;
+ }
+ space->getDynamicsWorld()->removeConstraint(constraint);
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: setGravity
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_setGravity
+ (JNIEnv * env, jobject object, jlong spaceId, jobject vector) {
+ jmePhysicsSpace* space = reinterpret_cast<jmePhysicsSpace*>(spaceId);
+ if (space == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The physics space does not exist.");
+ return;
+ }
+ btVector3 gravity = btVector3();
+ jmeBulletUtil::convert(env, vector, &gravity);
+ space->getDynamicsWorld()->setGravity(gravity);
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: initNativePhysics
+ * Signature: ()V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_initNativePhysics
+ (JNIEnv * env, jclass clazz) {
+ jmeClasses::initJavaClasses(env);
+ }
+
+ /*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: finalizeNative
+ * Signature: (J)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_finalizeNative
+ (JNIEnv * env, jobject object, jlong spaceId) {
+ jmePhysicsSpace* space = reinterpret_cast<jmePhysicsSpace*>(spaceId);
+ delete(space);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_PhysicsSpace */
+
+#ifndef _Included_com_jme3_bullet_PhysicsSpace
+#define _Included_com_jme3_bullet_PhysicsSpace
+#ifdef __cplusplus
+extern "C" {
+#endif
+#undef com_jme3_bullet_PhysicsSpace_AXIS_X
+#define com_jme3_bullet_PhysicsSpace_AXIS_X 0L
+#undef com_jme3_bullet_PhysicsSpace_AXIS_Y
+#define com_jme3_bullet_PhysicsSpace_AXIS_Y 1L
+#undef com_jme3_bullet_PhysicsSpace_AXIS_Z
+#define com_jme3_bullet_PhysicsSpace_AXIS_Z 2L
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: createPhysicsSpace
+ * Signature: (FFFFFFIZ)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_PhysicsSpace_createPhysicsSpace
+ (JNIEnv *, jobject, jfloat, jfloat, jfloat, jfloat, jfloat, jfloat, jint, jboolean);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: stepSimulation
+ * Signature: (JFIF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_stepSimulation
+ (JNIEnv *, jobject, jlong, jfloat, jint, jfloat);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: addCollisionObject
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_addCollisionObject
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: removeCollisionObject
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_removeCollisionObject
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: addRigidBody
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_addRigidBody
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: removeRigidBody
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_removeRigidBody
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: addCharacterObject
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_addCharacterObject
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: removeCharacterObject
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_removeCharacterObject
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: addAction
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_addAction
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: removeAction
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_removeAction
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: addVehicle
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_addVehicle
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: removeVehicle
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_removeVehicle
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: addConstraint
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_addConstraint
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: removeConstraint
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_removeConstraint
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: setGravity
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_setGravity
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: initNativePhysics
+ * Signature: ()V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_initNativePhysics
+ (JNIEnv *, jclass);
+
+/*
+ * Class: com_jme3_bullet_PhysicsSpace
+ * Method: finalizeNative
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_PhysicsSpace_finalizeNative
+ (JNIEnv *, jobject, jlong);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_PhysicsSpace_BroadphaseType */
+
+#ifndef _Included_com_jme3_bullet_PhysicsSpace_BroadphaseType
+#define _Included_com_jme3_bullet_PhysicsSpace_BroadphaseType
+#ifdef __cplusplus
+extern "C" {
+#endif
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+#include "jmeBulletUtil.h"
+#include "BulletCollision/NarrowPhaseCollision/btManifoldPoint.h"
+#include "com_jme3_bullet_collision_PhysicsCollisionEvent.h"
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getAppliedImpulse
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getAppliedImpulse
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return 0;
+ }
+ return mp -> m_appliedImpulse;
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getAppliedImpulseLateral1
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getAppliedImpulseLateral1
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return 0;
+ }
+ return mp -> m_appliedImpulseLateral1;
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getAppliedImpulseLateral2
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getAppliedImpulseLateral2
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return 0;
+ }
+ return mp -> m_appliedImpulseLateral2;
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getCombinedFriction
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getCombinedFriction
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return 0;
+ }
+ return mp -> m_combinedFriction;
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getCombinedRestitution
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getCombinedRestitution
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return 0;
+ }
+ return mp -> m_combinedRestitution;
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getDistance1
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getDistance1
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return 0;
+ }
+ return mp -> m_distance1;
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getIndex0
+ * Signature: (J)I
+ */
+JNIEXPORT jint JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getIndex0
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return 0;
+ }
+ return mp -> m_index0;
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getIndex1
+ * Signature: (J)I
+ */
+JNIEXPORT jint JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getIndex1
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return 0;
+ }
+ return mp -> m_index1;
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getLateralFrictionDir1
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getLateralFrictionDir1
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId, jobject lateralFrictionDir1) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &mp -> m_lateralFrictionDir1, lateralFrictionDir1);
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getLateralFrictionDir2
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getLateralFrictionDir2
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId, jobject lateralFrictionDir2) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &mp -> m_lateralFrictionDir2, lateralFrictionDir2);
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: isLateralFrictionInitialized
+ * Signature: (J)Z
+ */
+JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_isLateralFrictionInitialized
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return 0;
+ }
+ return mp -> m_lateralFrictionInitialized;
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getLifeTime
+ * Signature: (J)I
+ */
+JNIEXPORT jint JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getLifeTime
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return 0;
+ }
+ return mp -> m_lifeTime;
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getLocalPointA
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getLocalPointA
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId, jobject localPointA) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &mp -> m_localPointA, localPointA);
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getLocalPointB
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getLocalPointB
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId, jobject localPointB) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &mp -> m_localPointB, localPointB);
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getNormalWorldOnB
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getNormalWorldOnB
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId, jobject normalWorldOnB) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &mp -> m_normalWorldOnB, normalWorldOnB);
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getPartId0
+ * Signature: (J)I
+ */
+JNIEXPORT jint JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getPartId0
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return 0;
+ }
+ return mp -> m_partId0;
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getPartId1
+ * Signature: (J)I
+ */
+JNIEXPORT jint JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getPartId1
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return 0;
+ }
+ return mp -> m_partId1;
+}
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getPositionWorldOnA
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getPositionWorldOnA
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId, jobject positionWorldOnA) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &mp -> m_positionWorldOnA, positionWorldOnA);
+}
+
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getPositionWorldOnB
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getPositionWorldOnB
+ (JNIEnv * env, jobject object, jlong manifoldPointObjectId, jobject positionWorldOnB) {
+ btManifoldPoint* mp = reinterpret_cast<btManifoldPoint*>(manifoldPointObjectId);
+ if (mp == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The manifoldPoint does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &mp -> m_positionWorldOnB, positionWorldOnB);
+}
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_collision_PhysicsCollisionEvent */
+
+#ifndef _Included_com_jme3_bullet_collision_PhysicsCollisionEvent
+#define _Included_com_jme3_bullet_collision_PhysicsCollisionEvent
+#ifdef __cplusplus
+extern "C" {
+#endif
+#undef com_jme3_bullet_collision_PhysicsCollisionEvent_serialVersionUID
+#define com_jme3_bullet_collision_PhysicsCollisionEvent_serialVersionUID 5516075349620653480LL
+#undef com_jme3_bullet_collision_PhysicsCollisionEvent_TYPE_ADDED
+#define com_jme3_bullet_collision_PhysicsCollisionEvent_TYPE_ADDED 0L
+#undef com_jme3_bullet_collision_PhysicsCollisionEvent_TYPE_PROCESSED
+#define com_jme3_bullet_collision_PhysicsCollisionEvent_TYPE_PROCESSED 1L
+#undef com_jme3_bullet_collision_PhysicsCollisionEvent_TYPE_DESTROYED
+#define com_jme3_bullet_collision_PhysicsCollisionEvent_TYPE_DESTROYED 2L
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getAppliedImpulse
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getAppliedImpulse
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getAppliedImpulseLateral1
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getAppliedImpulseLateral1
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getAppliedImpulseLateral2
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getAppliedImpulseLateral2
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getCombinedFriction
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getCombinedFriction
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getCombinedRestitution
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getCombinedRestitution
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getDistance1
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getDistance1
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getIndex0
+ * Signature: (J)I
+ */
+JNIEXPORT jint JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getIndex0
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getIndex1
+ * Signature: (J)I
+ */
+JNIEXPORT jint JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getIndex1
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getLateralFrictionDir1
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getLateralFrictionDir1
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getLateralFrictionDir2
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getLateralFrictionDir2
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: isLateralFrictionInitialized
+ * Signature: (J)Z
+ */
+JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_isLateralFrictionInitialized
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getLifeTime
+ * Signature: (J)I
+ */
+JNIEXPORT jint JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getLifeTime
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getLocalPointA
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getLocalPointA
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getLocalPointB
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getLocalPointB
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getNormalWorldOnB
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getNormalWorldOnB
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getPartId0
+ * Signature: (J)I
+ */
+JNIEXPORT jint JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getPartId0
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getPartId1
+ * Signature: (J)I
+ */
+JNIEXPORT jint JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getPartId1
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getPositionWorldOnA
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getPositionWorldOnA
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionEvent
+ * Method: getPositionWorldOnB
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionEvent_getPositionWorldOnB
+ (JNIEnv *, jobject, jlong, jobject);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_collision_PhysicsCollisionObject.h"
+#include "jmeBulletUtil.h"
+#include "jmePhysicsSpace.h"
+#include "jmeUserPointer.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionObject
+ * Method: attachCollisionShape
+ * Signature: (JJ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionObject_attachCollisionShape
+ (JNIEnv * env, jobject object, jlong objectId, jlong shapeId) {
+ btCollisionObject* collisionObject = reinterpret_cast<btCollisionObject*>(objectId);
+ if (collisionObject == NULL) {
+ jclass newExc = env->FindClass("java/lang/IllegalStateException");
+ env->ThrowNew(newExc, "The collision object does not exist.");
+ return;
+ }
+ btCollisionShape* collisionShape = reinterpret_cast<btCollisionShape*>(shapeId);
+ if (collisionShape == NULL) {
+ jclass newExc = env->FindClass("java/lang/IllegalStateException");
+ env->ThrowNew(newExc, "The collision shape does not exist.");
+ return;
+ }
+ collisionObject->setCollisionShape(collisionShape);
+ }
+
+ /*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionObject
+ * Method: finalizeNative
+ * Signature: (J)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionObject_finalizeNative
+ (JNIEnv * env, jobject object, jlong objectId) {
+ btCollisionObject* collisionObject = reinterpret_cast<btCollisionObject*>(objectId);
+ if (collisionObject == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ if (collisionObject -> getUserPointer() != NULL){
+ jmeUserPointer *userPointer = (jmeUserPointer*)collisionObject->getUserPointer();
+ delete(userPointer);
+ }
+ delete(collisionObject);
+ }
+ /*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionObject
+ * Method: initUserPointer
+ * Signature: (JII)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionObject_initUserPointer
+ (JNIEnv *env, jobject object, jlong objectId, jint group, jint groups) {
+ btCollisionObject* collisionObject = reinterpret_cast<btCollisionObject*>(objectId);
+ if (collisionObject == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeUserPointer *userPointer = (jmeUserPointer*)collisionObject->getUserPointer();
+ if (userPointer != NULL) {
+// delete(userPointer);
+ }
+ userPointer = new jmeUserPointer();
+ userPointer -> javaCollisionObject = env->NewGlobalRef(object);
+ userPointer -> group = group;
+ userPointer -> groups = groups;
+ userPointer -> space = NULL;
+ collisionObject -> setUserPointer(userPointer);
+ }
+ /*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionObject
+ * Method: setCollisionGroup
+ * Signature: (JI)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionObject_setCollisionGroup
+ (JNIEnv *env, jobject object, jlong objectId, jint group) {
+ btCollisionObject* collisionObject = reinterpret_cast<btCollisionObject*>(objectId);
+ if (collisionObject == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeUserPointer *userPointer = (jmeUserPointer*)collisionObject->getUserPointer();
+ if (userPointer != NULL){
+ userPointer -> group = group;
+ }
+ }
+ /*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionObject
+ * Method: setCollideWithGroups
+ * Signature: (JI)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionObject_setCollideWithGroups
+ (JNIEnv *env, jobject object, jlong objectId, jint groups) {
+ btCollisionObject* collisionObject = reinterpret_cast<btCollisionObject*>(objectId);
+ if (collisionObject == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeUserPointer *userPointer = (jmeUserPointer*)collisionObject->getUserPointer();
+ if (userPointer != NULL){
+ userPointer -> groups = groups;
+ }
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_collision_PhysicsCollisionObject */
+
+#ifndef _Included_com_jme3_bullet_collision_PhysicsCollisionObject
+#define _Included_com_jme3_bullet_collision_PhysicsCollisionObject
+#ifdef __cplusplus
+extern "C" {
+#endif
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_NONE
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_NONE 0L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_01
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_01 1L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_02
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_02 2L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_03
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_03 4L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_04
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_04 8L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_05
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_05 16L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_06
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_06 32L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_07
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_07 64L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_08
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_08 128L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_09
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_09 256L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_10
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_10 512L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_11
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_11 1024L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_12
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_12 2048L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_13
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_13 4096L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_14
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_14 8192L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_15
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_15 16384L
+#undef com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_16
+#define com_jme3_bullet_collision_PhysicsCollisionObject_COLLISION_GROUP_16 32768L
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionObject
+ * Method: initUserPointer
+ * Signature: (JII)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionObject_initUserPointer
+ (JNIEnv *, jobject, jlong, jint, jint);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionObject
+ * Method: attachCollisionShape
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionObject_attachCollisionShape
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionObject
+ * Method: setCollisionGroup
+ * Signature: (JI)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionObject_setCollisionGroup
+ (JNIEnv *, jobject, jlong, jint);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionObject
+ * Method: setCollideWithGroups
+ * Signature: (JI)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionObject_setCollideWithGroups
+ (JNIEnv *, jobject, jlong, jint);
+
+/*
+ * Class: com_jme3_bullet_collision_PhysicsCollisionObject
+ * Method: finalizeNative
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_PhysicsCollisionObject_finalizeNative
+ (JNIEnv *, jobject, jlong);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_collision_shapes_BoxCollisionShape.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_BoxCollisionShape
+ * Method: createShape
+ * Signature: (Lcom/jme3/math/Vector3f;)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_BoxCollisionShape_createShape
+ (JNIEnv *env, jobject object, jobject halfExtents) {
+ jmeClasses::initJavaClasses(env);
+ btVector3 extents = btVector3();
+ jmeBulletUtil::convert(env, halfExtents, &extents);
+ btBoxShape* shape = new btBoxShape(extents);
+ return reinterpret_cast<jlong>(shape);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_collision_shapes_BoxCollisionShape */
+
+#ifndef _Included_com_jme3_bullet_collision_shapes_BoxCollisionShape
+#define _Included_com_jme3_bullet_collision_shapes_BoxCollisionShape
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_collision_shapes_BoxCollisionShape
+ * Method: createShape
+ * Signature: (Lcom/jme3/math/Vector3f;)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_BoxCollisionShape_createShape
+ (JNIEnv *, jobject, jobject);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_collision_shapes_CapsuleCollisionShape.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_CapsuleCollisionShape
+ * Method: createShape
+ * Signature: (IFF)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_CapsuleCollisionShape_createShape
+ (JNIEnv * env, jobject object, jint axis, jfloat radius, jfloat height) {
+ jmeClasses::initJavaClasses(env);
+ btCollisionShape* shape;
+ switch(axis){
+ case 0:
+ shape = new btCapsuleShapeX(radius, height);
+ break;
+ case 1:
+ shape = new btCapsuleShape(radius, height);
+ break;
+ case 2:
+ shape = new btCapsuleShapeZ(radius, height);
+ break;
+ }
+ return reinterpret_cast<jlong>(shape);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_collision_shapes_CapsuleCollisionShape */
+
+#ifndef _Included_com_jme3_bullet_collision_shapes_CapsuleCollisionShape
+#define _Included_com_jme3_bullet_collision_shapes_CapsuleCollisionShape
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_collision_shapes_CapsuleCollisionShape
+ * Method: createShape
+ * Signature: (IFF)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_CapsuleCollisionShape_createShape
+ (JNIEnv *, jobject, jint, jfloat, jfloat);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_collision_shapes_CollisionShape.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_CollisionShape
+ * Method: getMargin
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_collision_shapes_CollisionShape_getMargin
+ (JNIEnv * env, jobject object, jlong shapeId) {
+ btCollisionShape* shape = reinterpret_cast<btCollisionShape*>(shapeId);
+ if (shape == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return shape->getMargin();
+ }
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_CollisionShape
+ * Method: setLocalScaling
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_shapes_CollisionShape_setLocalScaling
+ (JNIEnv * env, jobject object, jlong shapeId, jobject scale) {
+ btCollisionShape* shape = reinterpret_cast<btCollisionShape*>(shapeId);
+ if (shape == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 scl = btVector3();
+ jmeBulletUtil::convert(env, scale, &scl);
+ shape->setLocalScaling(scl);
+ }
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_CollisionShape
+ * Method: setMargin
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_shapes_CollisionShape_setMargin
+ (JNIEnv * env, jobject object, jlong shapeId, jfloat newMargin) {
+ btCollisionShape* shape = reinterpret_cast<btCollisionShape*>(shapeId);
+ if (shape == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ shape->setMargin(newMargin);
+ }
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_CollisionShape
+ * Method: finalizeNative
+ * Signature: (J)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_shapes_CollisionShape_finalizeNative
+ (JNIEnv * env, jobject object, jlong shapeId) {
+ btCollisionShape* shape = reinterpret_cast<btCollisionShape*>(shapeId);
+ if (shape == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ delete(shape);
+ }
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_collision_shapes_CollisionShape */
+
+#ifndef _Included_com_jme3_bullet_collision_shapes_CollisionShape
+#define _Included_com_jme3_bullet_collision_shapes_CollisionShape
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_collision_shapes_CollisionShape
+ * Method: getMargin
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_collision_shapes_CollisionShape_getMargin
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_shapes_CollisionShape
+ * Method: setLocalScaling
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_shapes_CollisionShape_setLocalScaling
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_collision_shapes_CollisionShape
+ * Method: setMargin
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_shapes_CollisionShape_setMargin
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_collision_shapes_CollisionShape
+ * Method: finalizeNative
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_shapes_CollisionShape_finalizeNative
+ (JNIEnv *, jobject, jlong);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_collision_shapes_CompoundCollisionShape.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+ * Class: com_jme3_bullet_collision_shapes_CompoundCollisionShape
+ * Method: createShape
+ * Signature: ()J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_CompoundCollisionShape_createShape
+ (JNIEnv *env, jobject object) {
+ jmeClasses::initJavaClasses(env);
+ btCompoundShape* shape = new btCompoundShape();
+ return reinterpret_cast<jlong>(shape);
+ }
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_CompoundCollisionShape
+ * Method: addChildShape
+ * Signature: (JJLcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_CompoundCollisionShape_addChildShape
+ (JNIEnv *env, jobject object, jlong compoundId, jlong childId, jobject childLocation, jobject childRotation) {
+ btCompoundShape* shape = reinterpret_cast<btCompoundShape*>(compoundId);
+ if (shape == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ btCollisionShape* child = reinterpret_cast<btCollisionShape*>(childId);
+ if (shape == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ btMatrix3x3 mtx = btMatrix3x3();
+ btTransform trans = btTransform(mtx);
+ jmeBulletUtil::convert(env, childLocation, &trans.getOrigin());
+ jmeBulletUtil::convert(env, childRotation, &trans.getBasis());
+ shape->addChildShape(trans, child);
+ return 0;
+ }
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_CompoundCollisionShape
+ * Method: removeChildShape
+ * Signature: (JJ)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_CompoundCollisionShape_removeChildShape
+ (JNIEnv * env, jobject object, jlong compoundId, jlong childId) {
+ btCompoundShape* shape = reinterpret_cast<btCompoundShape*>(compoundId);
+ if (shape == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ btCollisionShape* child = reinterpret_cast<btCollisionShape*>(childId);
+ if (shape == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ shape->removeChildShape(child);
+ return 0;
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_collision_shapes_CompoundCollisionShape */
+
+#ifndef _Included_com_jme3_bullet_collision_shapes_CompoundCollisionShape
+#define _Included_com_jme3_bullet_collision_shapes_CompoundCollisionShape
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_collision_shapes_CompoundCollisionShape
+ * Method: createShape
+ * Signature: ()J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_CompoundCollisionShape_createShape
+ (JNIEnv *, jobject);
+
+/*
+ * Class: com_jme3_bullet_collision_shapes_CompoundCollisionShape
+ * Method: addChildShape
+ * Signature: (JJLcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_CompoundCollisionShape_addChildShape
+ (JNIEnv *, jobject, jlong, jlong, jobject, jobject);
+
+/*
+ * Class: com_jme3_bullet_collision_shapes_CompoundCollisionShape
+ * Method: removeChildShape
+ * Signature: (JJ)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_CompoundCollisionShape_removeChildShape
+ (JNIEnv *, jobject, jlong, jlong);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_collision_shapes_ConeCollisionShape.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_ConeCollisionShape
+ * Method: createShape
+ * Signature: (IFF)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_ConeCollisionShape_createShape
+ (JNIEnv * env, jobject object, jint axis, jfloat radius, jfloat height) {
+ jmeClasses::initJavaClasses(env);
+ btCollisionShape* shape;
+ switch (axis) {
+ case 0:
+ shape = new btConeShapeX(radius, height);
+ break;
+ case 1:
+ shape = new btConeShape(radius, height);
+ break;
+ case 2:
+ shape = new btConeShapeZ(radius, height);
+ break;
+ }
+ return reinterpret_cast<jlong>(shape);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_collision_shapes_ConeCollisionShape */
+
+#ifndef _Included_com_jme3_bullet_collision_shapes_ConeCollisionShape
+#define _Included_com_jme3_bullet_collision_shapes_ConeCollisionShape
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_collision_shapes_ConeCollisionShape
+ * Method: createShape
+ * Signature: (IFF)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_ConeCollisionShape_createShape
+ (JNIEnv *, jobject, jint, jfloat, jfloat);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_collision_shapes_CylinderCollisionShape.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_CylinderCollisionShape
+ * Method: createShape
+ * Signature: (ILcom/jme3/math/Vector3f;)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_CylinderCollisionShape_createShape
+ (JNIEnv * env, jobject object, jint axis, jobject halfExtents) {
+ jmeClasses::initJavaClasses(env);
+ btVector3 extents = btVector3();
+ jmeBulletUtil::convert(env, halfExtents, &extents);
+ btCollisionShape* shape;
+ switch (axis) {
+ case 0:
+ shape = new btCylinderShapeX(extents);
+ break;
+ case 1:
+ shape = new btCylinderShape(extents);
+ break;
+ case 2:
+ shape = new btCylinderShapeZ(extents);
+ break;
+ }
+ return reinterpret_cast<jlong>(shape);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_collision_shapes_CylinderCollisionShape */
+
+#ifndef _Included_com_jme3_bullet_collision_shapes_CylinderCollisionShape
+#define _Included_com_jme3_bullet_collision_shapes_CylinderCollisionShape
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_collision_shapes_CylinderCollisionShape
+ * Method: createShape
+ * Signature: (ILcom/jme3/math/Vector3f;)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_CylinderCollisionShape_createShape
+ (JNIEnv *, jobject, jint, jobject);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_collision_shapes_GImpactCollisionShape.h"
+#include "jmeBulletUtil.h"
+#include <BulletCollision/Gimpact/btGImpactShape.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_GImpactCollisionShape
+ * Method: createShape
+ * Signature: (J)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_GImpactCollisionShape_createShape
+ (JNIEnv * env, jobject object, jlong meshId) {
+ jmeClasses::initJavaClasses(env);
+ btTriangleIndexVertexArray* array = reinterpret_cast<btTriangleIndexVertexArray*>(meshId);
+ btGImpactMeshShape* shape = new btGImpactMeshShape(array);
+ return reinterpret_cast<jlong>(shape);
+ }
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_GImpactCollisionShape
+ * Method: finalizeNative
+ * Signature: (J)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_shapes_GImpactCollisionShape_finalizeNative
+ (JNIEnv * env, jobject object, jlong meshId) {
+ btTriangleIndexVertexArray* array = reinterpret_cast<btTriangleIndexVertexArray*>(meshId);
+ delete(array);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_collision_shapes_GImpactCollisionShape */
+
+#ifndef _Included_com_jme3_bullet_collision_shapes_GImpactCollisionShape
+#define _Included_com_jme3_bullet_collision_shapes_GImpactCollisionShape
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_collision_shapes_GImpactCollisionShape
+ * Method: createShape
+ * Signature: (J)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_GImpactCollisionShape_createShape
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_shapes_GImpactCollisionShape
+ * Method: finalizeNative
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_shapes_GImpactCollisionShape_finalizeNative
+ (JNIEnv *, jobject, jlong);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_collision_shapes_HeightfieldCollisionShape.h"
+#include "jmeBulletUtil.h"
+#include "BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_HeightfieldCollisionShape
+ * Method: createShape
+ * Signature: (II[FFFFIZ)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_HeightfieldCollisionShape_createShape
+ (JNIEnv * env, jobject object, jint heightStickWidth, jint heightStickLength, jobject heightfieldData, jfloat heightScale, jfloat minHeight, jfloat maxHeight, jint upAxis, jboolean flipQuadEdges) {
+ jmeClasses::initJavaClasses(env);
+ void* data = env->GetDirectBufferAddress(heightfieldData);
+ btHeightfieldTerrainShape* shape=new btHeightfieldTerrainShape(heightStickWidth, heightStickLength, data, heightScale, minHeight, maxHeight, upAxis, PHY_FLOAT, flipQuadEdges);
+ return reinterpret_cast<jlong>(shape);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_collision_shapes_HeightfieldCollisionShape */
+
+#ifndef _Included_com_jme3_bullet_collision_shapes_HeightfieldCollisionShape
+#define _Included_com_jme3_bullet_collision_shapes_HeightfieldCollisionShape
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_collision_shapes_HeightfieldCollisionShape
+ * Method: createShape
+ * Signature: (IILjava/nio/ByteBuffer;FFFIZ)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_HeightfieldCollisionShape_createShape
+ (JNIEnv *, jobject, jint, jint, jobject, jfloat, jfloat, jfloat, jint, jboolean);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_collision_shapes_HullCollisionShape.h"
+#include "jmeBulletUtil.h"
+#include "BulletCollision/CollisionShapes/btConvexHullShape.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_HullCollisionShape
+ * Method: createShape
+ * Signature: ([F)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_HullCollisionShape_createShape
+ (JNIEnv *env, jobject object, jobject array) {
+ jmeClasses::initJavaClasses(env);
+ float* data = (float*) env->GetDirectBufferAddress(array);
+ //TODO: capacity will not always be length!
+ int length = env->GetDirectBufferCapacity(array)/4;
+ btConvexHullShape* shape = new btConvexHullShape();
+ for (int i = 0; i < length; i+=3) {
+ btVector3 vect = btVector3(data[i],
+ data[i + 1],
+ data[i + 2]);
+
+ shape->addPoint(vect);
+ }
+
+ return reinterpret_cast<jlong>(shape);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_collision_shapes_HullCollisionShape */
+
+#ifndef _Included_com_jme3_bullet_collision_shapes_HullCollisionShape
+#define _Included_com_jme3_bullet_collision_shapes_HullCollisionShape
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_collision_shapes_HullCollisionShape
+ * Method: createShape
+ * Signature: (Ljava/nio/ByteBuffer;)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_HullCollisionShape_createShape
+ (JNIEnv *, jobject, jobject);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_collision_shapes_MeshCollisionShape.h"
+#include "jmeBulletUtil.h"
+#include "BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_MeshCollisionShape
+ * Method: createShape
+ * Signature: (J)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_MeshCollisionShape_createShape
+ (JNIEnv * env, jobject object, jlong arrayId) {
+ jmeClasses::initJavaClasses(env);
+ btTriangleIndexVertexArray* array = reinterpret_cast<btTriangleIndexVertexArray*>(arrayId);
+ btBvhTriangleMeshShape* shape = new btBvhTriangleMeshShape(array, true, true);
+ return reinterpret_cast<jlong>(shape);
+ }
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_MeshCollisionShape
+ * Method: finalizeNative
+ * Signature: (J)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_shapes_MeshCollisionShape_finalizeNative
+ (JNIEnv * env, jobject object, jlong arrayId){
+ btTriangleIndexVertexArray* array = reinterpret_cast<btTriangleIndexVertexArray*>(arrayId);
+ delete(array);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_collision_shapes_MeshCollisionShape */
+
+#ifndef _Included_com_jme3_bullet_collision_shapes_MeshCollisionShape
+#define _Included_com_jme3_bullet_collision_shapes_MeshCollisionShape
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_collision_shapes_MeshCollisionShape
+ * Method: createShape
+ * Signature: (J)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_MeshCollisionShape_createShape
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_collision_shapes_MeshCollisionShape
+ * Method: finalizeNative
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_collision_shapes_MeshCollisionShape_finalizeNative
+ (JNIEnv *, jobject, jlong);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_collision_shapes_PlaneCollisionShape.h"
+#include "jmeBulletUtil.h"
+#include "BulletCollision/CollisionShapes/btStaticPlaneShape.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_PlaneCollisionShape
+ * Method: createShape
+ * Signature: (Lcom/jme3/math/Vector3f;F)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_PlaneCollisionShape_createShape
+ (JNIEnv * env, jobject object, jobject normal, jfloat constant) {
+ jmeClasses::initJavaClasses(env);
+ btVector3 norm = btVector3();
+ jmeBulletUtil::convert(env, normal, &norm);
+ btStaticPlaneShape* shape = new btStaticPlaneShape(norm, constant);
+ return reinterpret_cast<jlong>(shape);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_collision_shapes_PlaneCollisionShape */
+
+#ifndef _Included_com_jme3_bullet_collision_shapes_PlaneCollisionShape
+#define _Included_com_jme3_bullet_collision_shapes_PlaneCollisionShape
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_collision_shapes_PlaneCollisionShape
+ * Method: createShape
+ * Signature: (Lcom/jme3/math/Vector3f;F)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_PlaneCollisionShape_createShape
+ (JNIEnv *, jobject, jobject, jfloat);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_collision_shapes_SimplexCollisionShape.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_SimplexCollisionShape
+ * Method: createShape
+ * Signature: (Lcom/jme3/math/Vector3f;)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_SimplexCollisionShape_createShape__Lcom_jme3_math_Vector3f_2
+ (JNIEnv *env, jobject object, jobject vector1) {
+ jmeClasses::initJavaClasses(env);
+ btVector3 vec1 = btVector3();
+ jmeBulletUtil::convert(env, vector1, &vec1);
+ btBU_Simplex1to4* simplexShape = new btBU_Simplex1to4(vec1);
+ return reinterpret_cast<jlong>(simplexShape);
+ }
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_SimplexCollisionShape
+ * Method: createShape
+ * Signature: (Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_SimplexCollisionShape_createShape__Lcom_jme3_math_Vector3f_2Lcom_jme3_math_Vector3f_2
+ (JNIEnv *env, jobject object, jobject vector1, jobject vector2) {
+ jmeClasses::initJavaClasses(env);
+ btVector3 vec1 = btVector3();
+ jmeBulletUtil::convert(env, vector1, &vec1);
+ btVector3 vec2 = btVector3();
+ jmeBulletUtil::convert(env, vector2, &vec2);
+ btBU_Simplex1to4* simplexShape = new btBU_Simplex1to4(vec1, vec2);
+ return reinterpret_cast<jlong>(simplexShape);
+ }
+ /*
+ * Class: com_jme3_bullet_collision_shapes_SimplexCollisionShape
+ * Method: createShape
+ * Signature: (Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_SimplexCollisionShape_createShape__Lcom_jme3_math_Vector3f_2Lcom_jme3_math_Vector3f_2Lcom_jme3_math_Vector3f_2
+ (JNIEnv * env, jobject object, jobject vector1, jobject vector2, jobject vector3) {
+ jmeClasses::initJavaClasses(env);
+ btVector3 vec1 = btVector3();
+ jmeBulletUtil::convert(env, vector1, &vec1);
+ btVector3 vec2 = btVector3();
+ jmeBulletUtil::convert(env, vector2, &vec2);
+ btVector3 vec3 = btVector3();
+ jmeBulletUtil::convert(env, vector3, &vec3);
+ btBU_Simplex1to4* simplexShape = new btBU_Simplex1to4(vec1, vec2, vec3);
+ return reinterpret_cast<jlong>(simplexShape);
+ }
+ /*
+ * Class: com_jme3_bullet_collision_shapes_SimplexCollisionShape
+ * Method: createShape
+ * Signature: (Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_SimplexCollisionShape_createShape__Lcom_jme3_math_Vector3f_2Lcom_jme3_math_Vector3f_2Lcom_jme3_math_Vector3f_2Lcom_jme3_math_Vector3f_2
+ (JNIEnv * env, jobject object, jobject vector1, jobject vector2, jobject vector3, jobject vector4) {
+ jmeClasses::initJavaClasses(env);
+ btVector3 vec1 = btVector3();
+ jmeBulletUtil::convert(env, vector1, &vec1);
+ btVector3 vec2 = btVector3();
+ jmeBulletUtil::convert(env, vector2, &vec2);
+ btVector3 vec3 = btVector3();
+ jmeBulletUtil::convert(env, vector3, &vec3);
+ btVector3 vec4 = btVector3();
+ jmeBulletUtil::convert(env, vector4, &vec4);
+ btBU_Simplex1to4* simplexShape = new btBU_Simplex1to4(vec1, vec2, vec3, vec4);
+ return reinterpret_cast<jlong>(simplexShape);
+ }
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_collision_shapes_SimplexCollisionShape */
+
+#ifndef _Included_com_jme3_bullet_collision_shapes_SimplexCollisionShape
+#define _Included_com_jme3_bullet_collision_shapes_SimplexCollisionShape
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_collision_shapes_SimplexCollisionShape
+ * Method: createShape
+ * Signature: (Lcom/jme3/math/Vector3f;)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_SimplexCollisionShape_createShape__Lcom_jme3_math_Vector3f_2
+ (JNIEnv *, jobject, jobject);
+
+/*
+ * Class: com_jme3_bullet_collision_shapes_SimplexCollisionShape
+ * Method: createShape
+ * Signature: (Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_SimplexCollisionShape_createShape__Lcom_jme3_math_Vector3f_2Lcom_jme3_math_Vector3f_2
+ (JNIEnv *, jobject, jobject, jobject);
+
+/*
+ * Class: com_jme3_bullet_collision_shapes_SimplexCollisionShape
+ * Method: createShape
+ * Signature: (Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_SimplexCollisionShape_createShape__Lcom_jme3_math_Vector3f_2Lcom_jme3_math_Vector3f_2Lcom_jme3_math_Vector3f_2
+ (JNIEnv *, jobject, jobject, jobject, jobject);
+
+/*
+ * Class: com_jme3_bullet_collision_shapes_SimplexCollisionShape
+ * Method: createShape
+ * Signature: (Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_SimplexCollisionShape_createShape__Lcom_jme3_math_Vector3f_2Lcom_jme3_math_Vector3f_2Lcom_jme3_math_Vector3f_2Lcom_jme3_math_Vector3f_2
+ (JNIEnv *, jobject, jobject, jobject, jobject, jobject);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_collision_shapes_SphereCollisionShape.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_collision_shapes_SphereCollisionShape
+ * Method: createShape
+ * Signature: (F)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_SphereCollisionShape_createShape
+ (JNIEnv *env, jobject object, jfloat radius) {
+ jmeClasses::initJavaClasses(env);
+ btSphereShape* shape=new btSphereShape(radius);
+ return reinterpret_cast<jlong>(shape);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_collision_shapes_SphereCollisionShape */
+
+#ifndef _Included_com_jme3_bullet_collision_shapes_SphereCollisionShape
+#define _Included_com_jme3_bullet_collision_shapes_SphereCollisionShape
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_collision_shapes_SphereCollisionShape
+ * Method: createShape
+ * Signature: (F)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_collision_shapes_SphereCollisionShape_createShape
+ (JNIEnv *, jobject, jfloat);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_joints_ConeJoint.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_joints_ConeJoint
+ * Method: setLimit
+ * Signature: (JFFF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_ConeJoint_setLimit
+ (JNIEnv * env, jobject object, jlong jointId, jfloat swingSpan1, jfloat swingSpan2, jfloat twistSpan) {
+ btConeTwistConstraint* joint = reinterpret_cast<btConeTwistConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ //TODO: extended setLimit!
+ joint->setLimit(swingSpan1, swingSpan2, twistSpan);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_ConeJoint
+ * Method: setAngularOnly
+ * Signature: (JZ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_ConeJoint_setAngularOnly
+ (JNIEnv * env, jobject object, jlong jointId, jboolean angularOnly) {
+ btConeTwistConstraint* joint = reinterpret_cast<btConeTwistConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setAngularOnly(angularOnly);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_ConeJoint
+ * Method: createJoint
+ * Signature: (JJLcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_ConeJoint_createJoint
+ (JNIEnv * env, jobject object, jlong bodyIdA, jlong bodyIdB, jobject pivotA, jobject rotA, jobject pivotB, jobject rotB) {
+ jmeClasses::initJavaClasses(env);
+ btRigidBody* bodyA = reinterpret_cast<btRigidBody*>(bodyIdA);
+ btRigidBody* bodyB = reinterpret_cast<btRigidBody*>(bodyIdB);
+ btMatrix3x3 mtx1 = btMatrix3x3();
+ btMatrix3x3 mtx2 = btMatrix3x3();
+ btTransform transA = btTransform(mtx1);
+ jmeBulletUtil::convert(env, pivotA, &transA.getOrigin());
+ jmeBulletUtil::convert(env, rotA, &transA.getBasis());
+ btTransform transB = btTransform(mtx2);
+ jmeBulletUtil::convert(env, pivotB, &transB.getOrigin());
+ jmeBulletUtil::convert(env, rotB, &transB.getBasis());
+ btConeTwistConstraint* joint = new btConeTwistConstraint(*bodyA, *bodyB, transA, transB);
+ return reinterpret_cast<jlong>(joint);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_joints_ConeJoint */
+
+#ifndef _Included_com_jme3_bullet_joints_ConeJoint
+#define _Included_com_jme3_bullet_joints_ConeJoint
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_joints_ConeJoint
+ * Method: setLimit
+ * Signature: (JFFF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_ConeJoint_setLimit
+ (JNIEnv *, jobject, jlong, jfloat, jfloat, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_ConeJoint
+ * Method: setAngularOnly
+ * Signature: (JZ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_ConeJoint_setAngularOnly
+ (JNIEnv *, jobject, jlong, jboolean);
+
+/*
+ * Class: com_jme3_bullet_joints_ConeJoint
+ * Method: createJoint
+ * Signature: (JJLcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_ConeJoint_createJoint
+ (JNIEnv *, jobject, jlong, jlong, jobject, jobject, jobject, jobject);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_joints_HingeJoint.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: enableMotor
+ * Signature: (JZFF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_HingeJoint_enableMotor
+ (JNIEnv * env, jobject object, jlong jointId, jboolean enable, jfloat targetVelocity, jfloat maxMotorImpulse) {
+ btHingeConstraint* joint = reinterpret_cast<btHingeConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->enableAngularMotor(enable, targetVelocity, maxMotorImpulse);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: getEnableAngularMotor
+ * Signature: (J)Z
+ */
+ JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_joints_HingeJoint_getEnableAngularMotor
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btHingeConstraint* joint = reinterpret_cast<btHingeConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return false;
+ }
+ return joint->getEnableAngularMotor();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: getMotorTargetVelocity
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_HingeJoint_getMotorTargetVelocity
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btHingeConstraint* joint = reinterpret_cast<btHingeConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getMotorTargetVelosity();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: getMaxMotorImpulse
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_HingeJoint_getMaxMotorImpulse
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btHingeConstraint* joint = reinterpret_cast<btHingeConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getMaxMotorImpulse();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: setLimit
+ * Signature: (JFF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_HingeJoint_setLimit__JFF
+ (JNIEnv * env, jobject object, jlong jointId, jfloat low, jfloat high) {
+ btHingeConstraint* joint = reinterpret_cast<btHingeConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ return joint->setLimit(low, high);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: setLimit
+ * Signature: (JFFFFF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_HingeJoint_setLimit__JFFFFF
+ (JNIEnv * env, jobject object, jlong jointId, jfloat low, jfloat high, jfloat softness, jfloat biasFactor, jfloat relaxationFactor) {
+ btHingeConstraint* joint = reinterpret_cast<btHingeConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ return joint->setLimit(low, high, softness, biasFactor, relaxationFactor);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: getUpperLimit
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_HingeJoint_getUpperLimit
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btHingeConstraint* joint = reinterpret_cast<btHingeConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getUpperLimit();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: getLowerLimit
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_HingeJoint_getLowerLimit
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btHingeConstraint* joint = reinterpret_cast<btHingeConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getLowerLimit();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: setAngularOnly
+ * Signature: (JZ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_HingeJoint_setAngularOnly
+ (JNIEnv * env, jobject object, jlong jointId, jboolean angular) {
+ btHingeConstraint* joint = reinterpret_cast<btHingeConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setAngularOnly(angular);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: getHingeAngle
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_HingeJoint_getHingeAngle
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btHingeConstraint* joint = reinterpret_cast<btHingeConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getHingeAngle();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: createJoint
+ * Signature: (JJLcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_HingeJoint_createJoint
+ (JNIEnv * env, jobject object, jlong bodyIdA, jlong bodyIdB, jobject pivotA, jobject axisA, jobject pivotB, jobject axisB) {
+ jmeClasses::initJavaClasses(env);
+ btRigidBody* bodyA = reinterpret_cast<btRigidBody*>(bodyIdA);
+ btRigidBody* bodyB = reinterpret_cast<btRigidBody*>(bodyIdB);
+ btVector3 vec1 = btVector3();
+ btVector3 vec2 = btVector3();
+ btVector3 vec3 = btVector3();
+ btVector3 vec4 = btVector3();
+ jmeBulletUtil::convert(env, pivotA, &vec1);
+ jmeBulletUtil::convert(env, pivotB, &vec2);
+ jmeBulletUtil::convert(env, axisA, &vec3);
+ jmeBulletUtil::convert(env, axisB, &vec4);
+ btHingeConstraint* joint = new btHingeConstraint(*bodyA, *bodyB, vec1, vec2, vec3, vec4);
+ return reinterpret_cast<jlong>(joint);
+ }
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_joints_HingeJoint */
+
+#ifndef _Included_com_jme3_bullet_joints_HingeJoint
+#define _Included_com_jme3_bullet_joints_HingeJoint
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: enableMotor
+ * Signature: (JZFF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_HingeJoint_enableMotor
+ (JNIEnv *, jobject, jlong, jboolean, jfloat, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: getEnableAngularMotor
+ * Signature: (J)Z
+ */
+JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_joints_HingeJoint_getEnableAngularMotor
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: getMotorTargetVelocity
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_HingeJoint_getMotorTargetVelocity
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: getMaxMotorImpulse
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_HingeJoint_getMaxMotorImpulse
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: setLimit
+ * Signature: (JFF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_HingeJoint_setLimit__JFF
+ (JNIEnv *, jobject, jlong, jfloat, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: setLimit
+ * Signature: (JFFFFF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_HingeJoint_setLimit__JFFFFF
+ (JNIEnv *, jobject, jlong, jfloat, jfloat, jfloat, jfloat, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: getUpperLimit
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_HingeJoint_getUpperLimit
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: getLowerLimit
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_HingeJoint_getLowerLimit
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: setAngularOnly
+ * Signature: (JZ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_HingeJoint_setAngularOnly
+ (JNIEnv *, jobject, jlong, jboolean);
+
+/*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: getHingeAngle
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_HingeJoint_getHingeAngle
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_HingeJoint
+ * Method: createJoint
+ * Signature: (JJLcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_HingeJoint_createJoint
+ (JNIEnv *, jobject, jlong, jlong, jobject, jobject, jobject, jobject);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_joints_PhysicsJoint.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_joints_PhysicsJoint
+ * Method: getAppliedImpulse
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_PhysicsJoint_getAppliedImpulse
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btTypedConstraint* joint = reinterpret_cast<btTypedConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getAppliedImpulse();
+ }
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_PhysicsJoint_finalizeNative
+ (JNIEnv *env, jobject object, jlong jointId) {
+ btTypedConstraint* joint = reinterpret_cast<btTypedConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ }
+ delete joint;
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_joints_PhysicsJoint */
+
+#ifndef _Included_com_jme3_bullet_joints_PhysicsJoint
+#define _Included_com_jme3_bullet_joints_PhysicsJoint
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_joints_PhysicsJoint
+ * Method: getAppliedImpulse
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_PhysicsJoint_getAppliedImpulse
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_PhysicsJoint
+ * Method: finalizeNative
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_PhysicsJoint_finalizeNative
+ (JNIEnv *, jobject, jlong);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_joints_Point2PointJoint.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_joints_Point2PointJoint
+ * Method: setDamping
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_Point2PointJoint_setDamping
+ (JNIEnv * env, jobject object, jlong jointId, jfloat damping) {
+ btPoint2PointConstraint* joint = reinterpret_cast<btPoint2PointConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->m_setting.m_damping = damping;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_Point2PointJoint
+ * Method: setImpulseClamp
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_Point2PointJoint_setImpulseClamp
+ (JNIEnv * env, jobject object, jlong jointId, jfloat clamp) {
+ btPoint2PointConstraint* joint = reinterpret_cast<btPoint2PointConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->m_setting.m_impulseClamp = clamp;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_Point2PointJoint
+ * Method: setTau
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_Point2PointJoint_setTau
+ (JNIEnv * env, jobject object, jlong jointId, jfloat tau) {
+ btPoint2PointConstraint* joint = reinterpret_cast<btPoint2PointConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->m_setting.m_tau = tau;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_Point2PointJoint
+ * Method: getDamping
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_Point2PointJoint_getDamping
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btPoint2PointConstraint* joint = reinterpret_cast<btPoint2PointConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->m_setting.m_damping;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_Point2PointJoint
+ * Method: getImpulseClamp
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_Point2PointJoint_getImpulseClamp
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btPoint2PointConstraint* joint = reinterpret_cast<btPoint2PointConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->m_setting.m_damping;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_Point2PointJoint
+ * Method: getTau
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_Point2PointJoint_getTau
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btPoint2PointConstraint* joint = reinterpret_cast<btPoint2PointConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->m_setting.m_damping;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_Point2PointJoint
+ * Method: createJoint
+ * Signature: (JJLcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_Point2PointJoint_createJoint
+ (JNIEnv * env, jobject object, jlong bodyIdA, jlong bodyIdB, jobject pivotA, jobject pivotB) {
+ jmeClasses::initJavaClasses(env);
+ btRigidBody* bodyA = reinterpret_cast<btRigidBody*>(bodyIdA);
+ btRigidBody* bodyB = reinterpret_cast<btRigidBody*>(bodyIdB);
+ //TODO: matrix not needed?
+ btMatrix3x3 mtx1 = btMatrix3x3();
+ btMatrix3x3 mtx2 = btMatrix3x3();
+ btTransform transA = btTransform(mtx1);
+ jmeBulletUtil::convert(env, pivotA, &transA.getOrigin());
+ btTransform transB = btTransform(mtx2);
+ jmeBulletUtil::convert(env, pivotB, &transB.getOrigin());
+ btHingeConstraint* joint = new btHingeConstraint(*bodyA, *bodyB, transA, transB);
+ return reinterpret_cast<jlong>(joint);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_joints_Point2PointJoint */
+
+#ifndef _Included_com_jme3_bullet_joints_Point2PointJoint
+#define _Included_com_jme3_bullet_joints_Point2PointJoint
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_joints_Point2PointJoint
+ * Method: setDamping
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_Point2PointJoint_setDamping
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_Point2PointJoint
+ * Method: setImpulseClamp
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_Point2PointJoint_setImpulseClamp
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_Point2PointJoint
+ * Method: setTau
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_Point2PointJoint_setTau
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_Point2PointJoint
+ * Method: getDamping
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_Point2PointJoint_getDamping
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_Point2PointJoint
+ * Method: getImpulseClamp
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_Point2PointJoint_getImpulseClamp
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_Point2PointJoint
+ * Method: getTau
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_Point2PointJoint_getTau
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_Point2PointJoint
+ * Method: createJoint
+ * Signature: (JJLcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_Point2PointJoint_createJoint
+ (JNIEnv *, jobject, jlong, jlong, jobject, jobject);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_joints_SixDofJoint.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_joints_SixDofJoint
+ * Method: getRotationalLimitMotor
+ * Signature: (JI)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_SixDofJoint_getRotationalLimitMotor
+ (JNIEnv * env, jobject object, jlong jointId, jint index) {
+ btGeneric6DofConstraint* joint = reinterpret_cast<btGeneric6DofConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return reinterpret_cast<jlong>(joint->getRotationalLimitMotor(index));
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SixDofJoint
+ * Method: getTranslationalLimitMotor
+ * Signature: (J)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_SixDofJoint_getTranslationalLimitMotor
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btGeneric6DofConstraint* joint = reinterpret_cast<btGeneric6DofConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return reinterpret_cast<jlong>(joint->getTranslationalLimitMotor());
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SixDofJoint
+ * Method: setLinearUpperLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofJoint_setLinearUpperLimit
+ (JNIEnv * env, jobject object, jlong jointId, jobject vector) {
+ btGeneric6DofConstraint* joint = reinterpret_cast<btGeneric6DofConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 vec = btVector3();
+ jmeBulletUtil::convert(env, vector, &vec);
+ joint->setLinearUpperLimit(vec);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SixDofJoint
+ * Method: setLinearLowerLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofJoint_setLinearLowerLimit
+ (JNIEnv * env, jobject object, jlong jointId, jobject vector) {
+ btGeneric6DofConstraint* joint = reinterpret_cast<btGeneric6DofConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 vec = btVector3();
+ jmeBulletUtil::convert(env, vector, &vec);
+ joint->setLinearLowerLimit(vec);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SixDofJoint
+ * Method: setAngularUpperLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofJoint_setAngularUpperLimit
+ (JNIEnv * env, jobject object, jlong jointId, jobject vector) {
+ btGeneric6DofConstraint* joint = reinterpret_cast<btGeneric6DofConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 vec = btVector3();
+ jmeBulletUtil::convert(env, vector, &vec);
+ joint->setAngularUpperLimit(vec);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SixDofJoint
+ * Method: setAngularLowerLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofJoint_setAngularLowerLimit
+ (JNIEnv * env, jobject object, jlong jointId, jobject vector) {
+ btGeneric6DofConstraint* joint = reinterpret_cast<btGeneric6DofConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 vec = btVector3();
+ jmeBulletUtil::convert(env, vector, &vec);
+ joint->setAngularLowerLimit(vec);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SixDofJoint
+ * Method: createJoint
+ * Signature: (JJLcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;Z)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_SixDofJoint_createJoint
+ (JNIEnv * env, jobject object, jlong bodyIdA, jlong bodyIdB, jobject pivotA, jobject rotA, jobject pivotB, jobject rotB, jboolean useLinearReferenceFrameA) {
+ jmeClasses::initJavaClasses(env);
+ btRigidBody* bodyA = reinterpret_cast<btRigidBody*>(bodyIdA);
+ btRigidBody* bodyB = reinterpret_cast<btRigidBody*>(bodyIdB);
+ btMatrix3x3 mtx1 = btMatrix3x3();
+ btMatrix3x3 mtx2 = btMatrix3x3();
+ btTransform transA = btTransform(mtx1);
+ jmeBulletUtil::convert(env, pivotA, &transA.getOrigin());
+ jmeBulletUtil::convert(env, rotA, &transA.getBasis());
+ btTransform transB = btTransform(mtx2);
+ jmeBulletUtil::convert(env, pivotB, &transB.getOrigin());
+ jmeBulletUtil::convert(env, rotB, &transB.getBasis());
+ btGeneric6DofConstraint* joint = new btGeneric6DofConstraint(*bodyA, *bodyB, transA, transB, useLinearReferenceFrameA);
+ return reinterpret_cast<jlong>(joint);
+ }
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_joints_SixDofJoint */
+
+#ifndef _Included_com_jme3_bullet_joints_SixDofJoint
+#define _Included_com_jme3_bullet_joints_SixDofJoint
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_joints_SixDofJoint
+ * Method: getRotationalLimitMotor
+ * Signature: (JI)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_SixDofJoint_getRotationalLimitMotor
+ (JNIEnv *, jobject, jlong, jint);
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofJoint
+ * Method: getTranslationalLimitMotor
+ * Signature: (J)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_SixDofJoint_getTranslationalLimitMotor
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofJoint
+ * Method: setLinearUpperLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofJoint_setLinearUpperLimit
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofJoint
+ * Method: setLinearLowerLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofJoint_setLinearLowerLimit
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofJoint
+ * Method: setAngularUpperLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofJoint_setAngularUpperLimit
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofJoint
+ * Method: setAngularLowerLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofJoint_setAngularLowerLimit
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofJoint
+ * Method: createJoint
+ * Signature: (JJLcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;Z)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_SixDofJoint_createJoint
+ (JNIEnv *, jobject, jlong, jlong, jobject, jobject, jobject, jobject, jboolean);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_joints_SixDofSpringJoint.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofSpringJoint
+ * Method: enableString
+ * Signature: (JIZ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofSpringJoint_enableSpring
+ (JNIEnv *env, jobject object, jlong jointId, jint index, jboolean onOff) {
+ btGeneric6DofSpringConstraint* joint = reinterpret_cast<btGeneric6DofSpringConstraint*>(jointId);
+ joint -> enableSpring(index, onOff);
+}
+
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofSpringJoint
+ * Method: setStiffness
+ * Signature: (JIF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofSpringJoint_setStiffness
+ (JNIEnv *env, jobject object, jlong jointId, jint index, jfloat stiffness) {
+ btGeneric6DofSpringConstraint* joint = reinterpret_cast<btGeneric6DofSpringConstraint*>(jointId);
+ joint -> setStiffness(index, stiffness);
+}
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofSpringJoint
+ * Method: setDamping
+ * Signature: (JIF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofSpringJoint_setDamping
+ (JNIEnv *env, jobject object, jlong jointId, jint index, jfloat damping) {
+ btGeneric6DofSpringConstraint* joint = reinterpret_cast<btGeneric6DofSpringConstraint*>(jointId);
+ joint -> setDamping(index, damping);
+}
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofSpringJoint
+ * Method: setEquilibriumPoint
+ * Signature: (JIF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofSpringJoint_setEquilibriumPoint__J
+ (JNIEnv *env, jobject object, jlong jointId) {
+ btGeneric6DofSpringConstraint* joint = reinterpret_cast<btGeneric6DofSpringConstraint*>(jointId);
+ joint -> setEquilibriumPoint();
+}
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofSpringJoint
+ * Method: setEquilibriumPoint
+ * Signature: (JI)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofSpringJoint_setEquilibriumPoint__JI
+ (JNIEnv *env, jobject object, jlong jointId, jint index) {
+ btGeneric6DofSpringConstraint* joint = reinterpret_cast<btGeneric6DofSpringConstraint*>(jointId);
+ joint -> setEquilibriumPoint(index);
+}
+
+
+
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofSpringJoint
+ * Method: createJoint
+ * Signature: (JJLcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;Z)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_SixDofSpringJoint_createJoint
+ (JNIEnv * env, jobject object, jlong bodyIdA, jlong bodyIdB, jobject pivotA, jobject rotA, jobject pivotB, jobject rotB, jboolean useLinearReferenceFrameA) {
+ jmeClasses::initJavaClasses(env);
+ btRigidBody* bodyA = reinterpret_cast<btRigidBody*>(bodyIdA);
+ btRigidBody* bodyB = reinterpret_cast<btRigidBody*>(bodyIdB);
+
+ btTransform transA;
+ jmeBulletUtil::convert(env, pivotA, &transA.getOrigin());
+ jmeBulletUtil::convert(env, rotA, &transA.getBasis());
+ btTransform transB;
+ jmeBulletUtil::convert(env, pivotB, &transB.getOrigin());
+ jmeBulletUtil::convert(env, rotB, &transB.getBasis());
+
+ btGeneric6DofSpringConstraint* joint = new btGeneric6DofSpringConstraint(*bodyA, *bodyB, transA, transB, useLinearReferenceFrameA);
+ return reinterpret_cast<jlong>(joint);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_joints_SixDofSpringJoint */
+
+#ifndef _Included_com_jme3_bullet_joints_SixDofSpringJoint
+#define _Included_com_jme3_bullet_joints_SixDofSpringJoint
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_joints_SixDofSpringJoint
+ * Method: enableSpring
+ * Signature: (JIZ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofSpringJoint_enableSpring
+ (JNIEnv *, jobject, jlong, jint, jboolean);
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofSpringJoint
+ * Method: setStiffness
+ * Signature: (JIF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofSpringJoint_setStiffness
+ (JNIEnv *, jobject, jlong, jint, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofSpringJoint
+ * Method: setDamping
+ * Signature: (JIF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofSpringJoint_setDamping
+ (JNIEnv *, jobject, jlong, jint, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofSpringJoint
+ * Method: setEquilibriumPoint
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofSpringJoint_setEquilibriumPoint__J
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofSpringJoint
+ * Method: setEquilibriumPoint
+ * Signature: (JI)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SixDofSpringJoint_setEquilibriumPoint__JI
+ (JNIEnv *, jobject, jlong, jint);
+
+/*
+ * Class: com_jme3_bullet_joints_SixDofSpringJoint
+ * Method: createJoint
+ * Signature: (JJLcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;Z)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_SixDofSpringJoint_createJoint
+ (JNIEnv *, jobject, jlong, jlong, jobject, jobject, jobject, jobject, jboolean);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_joints_SliderJoint.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getLowerLinLimit
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getLowerLinLimit
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getLowerLinLimit();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setLowerLinLimit
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setLowerLinLimit
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setLowerLinLimit(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getUpperLinLimit
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getUpperLinLimit
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getUpperLinLimit();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setUpperLinLimit
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setUpperLinLimit
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setUpperLinLimit(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getLowerAngLimit
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getLowerAngLimit
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getLowerAngLimit();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setLowerAngLimit
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setLowerAngLimit
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setLowerAngLimit(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getUpperAngLimit
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getUpperAngLimit
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getUpperAngLimit();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setUpperAngLimit
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setUpperAngLimit
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setUpperAngLimit(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getSoftnessDirLin
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getSoftnessDirLin
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getSoftnessDirLin();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setSoftnessDirLin
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setSoftnessDirLin
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setSoftnessDirLin(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getRestitutionDirLin
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getRestitutionDirLin
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getRestitutionDirLin();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setRestitutionDirLin
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setRestitutionDirLin
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setRestitutionDirLin(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getDampingDirLin
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getDampingDirLin
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getDampingDirLin();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setDampingDirLin
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setDampingDirLin
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setDampingDirLin(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getSoftnessDirAng
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getSoftnessDirAng
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getSoftnessDirAng();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setSoftnessDirAng
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setSoftnessDirAng
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setSoftnessDirAng(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getRestitutionDirAng
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getRestitutionDirAng
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getRestitutionDirAng();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setRestitutionDirAng
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setRestitutionDirAng
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setRestitutionDirAng(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getDampingDirAng
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getDampingDirAng
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getDampingDirAng();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setDampingDirAng
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setDampingDirAng
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setDampingDirAng(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getSoftnessLimLin
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getSoftnessLimLin
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getSoftnessLimLin();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setSoftnessLimLin
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setSoftnessLimLin
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setSoftnessLimLin(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getRestitutionLimLin
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getRestitutionLimLin
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getRestitutionLimLin();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setRestitutionLimLin
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setRestitutionLimLin
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setRestitutionLimLin(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getDampingLimLin
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getDampingLimLin
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getDampingLimLin();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setDampingLimLin
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setDampingLimLin
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setDampingLimLin(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getSoftnessLimAng
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getSoftnessLimAng
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getSoftnessLimAng();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setSoftnessLimAng
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setSoftnessLimAng
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setSoftnessLimAng(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getRestitutionLimAng
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getRestitutionLimAng
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getRestitutionLimAng();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setRestitutionLimAng
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setRestitutionLimAng
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setRestitutionLimAng(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getDampingLimAng
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getDampingLimAng
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getDampingLimAng();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setDampingLimAng
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setDampingLimAng
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setDampingLimAng(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getSoftnessOrthoLin
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getSoftnessOrthoLin
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getSoftnessOrthoLin();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setSoftnessOrthoLin
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setSoftnessOrthoLin
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setSoftnessOrthoLin(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getRestitutionOrthoLin
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getRestitutionOrthoLin
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getRestitutionOrthoLin();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setRestitutionOrthoLin
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setRestitutionOrthoLin
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setRestitutionOrthoLin(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getDampingOrthoLin
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getDampingOrthoLin
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getDampingOrthoLin();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setDampingOrthoLin
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setDampingOrthoLin
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setDampingOrthoLin(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getSoftnessOrthoAng
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getSoftnessOrthoAng
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getSoftnessOrthoAng();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setSoftnessOrthoAng
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setSoftnessOrthoAng
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setSoftnessOrthoAng(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getRestitutionOrthoAng
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getRestitutionOrthoAng
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getRestitutionOrthoAng();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setRestitutionOrthoAng
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setRestitutionOrthoAng
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setRestitutionOrthoAng(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getDampingOrthoAng
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getDampingOrthoAng
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getDampingOrthoAng();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setDampingOrthoAng
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setDampingOrthoAng
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setDampingOrthoAng(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: isPoweredLinMotor
+ * Signature: (J)Z
+ */
+ JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_joints_SliderJoint_isPoweredLinMotor
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return false;
+ }
+ return joint->getPoweredLinMotor();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setPoweredLinMotor
+ * Signature: (JZ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setPoweredLinMotor
+ (JNIEnv * env, jobject object, jlong jointId, jboolean value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setPoweredLinMotor(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getTargetLinMotorVelocity
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getTargetLinMotorVelocity
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getTargetLinMotorVelocity();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setTargetLinMotorVelocity
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setTargetLinMotorVelocity
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setTargetLinMotorVelocity(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getMaxLinMotorForce
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getMaxLinMotorForce
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getMaxLinMotorForce();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setMaxLinMotorForce
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setMaxLinMotorForce
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setMaxLinMotorForce(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: isPoweredAngMotor
+ * Signature: (J)Z
+ */
+ JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_joints_SliderJoint_isPoweredAngMotor
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return false;
+ }
+ return joint->getPoweredAngMotor();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setPoweredAngMotor
+ * Signature: (JZ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setPoweredAngMotor
+ (JNIEnv * env, jobject object, jlong jointId, jboolean value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setPoweredAngMotor(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getTargetAngMotorVelocity
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getTargetAngMotorVelocity
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getTargetAngMotorVelocity();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setTargetAngMotorVelocity
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setTargetAngMotorVelocity
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setTargetAngMotorVelocity(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getMaxAngMotorForce
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getMaxAngMotorForce
+ (JNIEnv * env, jobject object, jlong jointId) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return joint->getMaxAngMotorForce();
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setMaxAngMotorForce
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setMaxAngMotorForce
+ (JNIEnv * env, jobject object, jlong jointId, jfloat value) {
+ btSliderConstraint* joint = reinterpret_cast<btSliderConstraint*>(jointId);
+ if (joint == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ joint->setMaxAngMotorForce(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: createJoint
+ * Signature: (JJLcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;Z)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_SliderJoint_createJoint
+ (JNIEnv * env, jobject object, jlong bodyIdA, jlong bodyIdB, jobject pivotA, jobject rotA, jobject pivotB, jobject rotB, jboolean useLinearReferenceFrameA) {
+ jmeClasses::initJavaClasses(env);
+ btRigidBody* bodyA = reinterpret_cast<btRigidBody*>(bodyIdA);
+ btRigidBody* bodyB = reinterpret_cast<btRigidBody*>(bodyIdB);
+ btMatrix3x3 mtx1 = btMatrix3x3();
+ btMatrix3x3 mtx2 = btMatrix3x3();
+ btTransform transA = btTransform(mtx1);
+ jmeBulletUtil::convert(env, pivotA, &transA.getOrigin());
+ jmeBulletUtil::convert(env, rotA, &transA.getBasis());
+ btTransform transB = btTransform(mtx2);
+ jmeBulletUtil::convert(env, pivotB, &transB.getOrigin());
+ jmeBulletUtil::convert(env, rotB, &transB.getBasis());
+ btSliderConstraint* joint = new btSliderConstraint(*bodyA, *bodyB, transA, transB, useLinearReferenceFrameA);
+ return reinterpret_cast<jlong>(joint);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_joints_SliderJoint */
+
+#ifndef _Included_com_jme3_bullet_joints_SliderJoint
+#define _Included_com_jme3_bullet_joints_SliderJoint
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getLowerLinLimit
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getLowerLinLimit
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setLowerLinLimit
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setLowerLinLimit
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getUpperLinLimit
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getUpperLinLimit
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setUpperLinLimit
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setUpperLinLimit
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getLowerAngLimit
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getLowerAngLimit
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setLowerAngLimit
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setLowerAngLimit
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getUpperAngLimit
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getUpperAngLimit
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setUpperAngLimit
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setUpperAngLimit
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getSoftnessDirLin
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getSoftnessDirLin
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setSoftnessDirLin
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setSoftnessDirLin
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getRestitutionDirLin
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getRestitutionDirLin
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setRestitutionDirLin
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setRestitutionDirLin
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getDampingDirLin
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getDampingDirLin
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setDampingDirLin
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setDampingDirLin
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getSoftnessDirAng
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getSoftnessDirAng
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setSoftnessDirAng
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setSoftnessDirAng
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getRestitutionDirAng
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getRestitutionDirAng
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setRestitutionDirAng
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setRestitutionDirAng
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getDampingDirAng
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getDampingDirAng
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setDampingDirAng
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setDampingDirAng
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getSoftnessLimLin
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getSoftnessLimLin
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setSoftnessLimLin
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setSoftnessLimLin
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getRestitutionLimLin
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getRestitutionLimLin
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setRestitutionLimLin
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setRestitutionLimLin
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getDampingLimLin
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getDampingLimLin
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setDampingLimLin
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setDampingLimLin
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getSoftnessLimAng
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getSoftnessLimAng
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setSoftnessLimAng
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setSoftnessLimAng
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getRestitutionLimAng
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getRestitutionLimAng
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setRestitutionLimAng
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setRestitutionLimAng
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getDampingLimAng
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getDampingLimAng
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setDampingLimAng
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setDampingLimAng
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getSoftnessOrthoLin
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getSoftnessOrthoLin
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setSoftnessOrthoLin
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setSoftnessOrthoLin
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getRestitutionOrthoLin
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getRestitutionOrthoLin
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setRestitutionOrthoLin
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setRestitutionOrthoLin
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getDampingOrthoLin
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getDampingOrthoLin
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setDampingOrthoLin
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setDampingOrthoLin
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getSoftnessOrthoAng
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getSoftnessOrthoAng
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setSoftnessOrthoAng
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setSoftnessOrthoAng
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getRestitutionOrthoAng
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getRestitutionOrthoAng
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setRestitutionOrthoAng
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setRestitutionOrthoAng
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getDampingOrthoAng
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getDampingOrthoAng
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setDampingOrthoAng
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setDampingOrthoAng
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: isPoweredLinMotor
+ * Signature: (J)Z
+ */
+JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_joints_SliderJoint_isPoweredLinMotor
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setPoweredLinMotor
+ * Signature: (JZ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setPoweredLinMotor
+ (JNIEnv *, jobject, jlong, jboolean);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getTargetLinMotorVelocity
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getTargetLinMotorVelocity
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setTargetLinMotorVelocity
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setTargetLinMotorVelocity
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getMaxLinMotorForce
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getMaxLinMotorForce
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setMaxLinMotorForce
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setMaxLinMotorForce
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: isPoweredAngMotor
+ * Signature: (J)Z
+ */
+JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_joints_SliderJoint_isPoweredAngMotor
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setPoweredAngMotor
+ * Signature: (JZ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setPoweredAngMotor
+ (JNIEnv *, jobject, jlong, jboolean);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getTargetAngMotorVelocity
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getTargetAngMotorVelocity
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setTargetAngMotorVelocity
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setTargetAngMotorVelocity
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: getMaxAngMotorForce
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_SliderJoint_getMaxAngMotorForce
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: setMaxAngMotorForce
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_SliderJoint_setMaxAngMotorForce
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_SliderJoint
+ * Method: createJoint
+ * Signature: (JJLcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Matrix3f;Z)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_joints_SliderJoint_createJoint
+ (JNIEnv *, jobject, jlong, jlong, jobject, jobject, jobject, jobject, jboolean);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_joints_motors_RotationalLimitMotor.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getLoLimit
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getLoLimit
+ (JNIEnv *env, jobject object, jlong motorId) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return motor->m_loLimit;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setLoLimit
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setLoLimit
+ (JNIEnv *env, jobject object, jlong motorId, jfloat value) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ motor->m_loLimit = value;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getHiLimit
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getHiLimit
+ (JNIEnv *env, jobject object, jlong motorId) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return motor->m_hiLimit;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setHiLimit
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setHiLimit
+ (JNIEnv *env, jobject object, jlong motorId, jfloat value) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ motor->m_hiLimit = value;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getTargetVelocity
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getTargetVelocity
+ (JNIEnv *env, jobject object, jlong motorId) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return motor->m_targetVelocity;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setTargetVelocity
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setTargetVelocity
+ (JNIEnv *env, jobject object, jlong motorId, jfloat value) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ motor->m_targetVelocity = value;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getMaxMotorForce
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getMaxMotorForce
+ (JNIEnv *env, jobject object, jlong motorId) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return motor->m_maxMotorForce;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setMaxMotorForce
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setMaxMotorForce
+ (JNIEnv *env, jobject object, jlong motorId, jfloat value) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ motor->m_maxMotorForce = value;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getMaxLimitForce
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getMaxLimitForce
+ (JNIEnv *env, jobject object, jlong motorId) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return motor->m_maxLimitForce;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setMaxLimitForce
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setMaxLimitForce
+ (JNIEnv *env, jobject object, jlong motorId, jfloat value) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ motor->m_maxLimitForce = value;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getDamping
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getDamping
+ (JNIEnv *env, jobject object, jlong motorId) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return motor->m_damping;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setDamping
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setDamping
+ (JNIEnv *env, jobject object, jlong motorId, jfloat value) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ motor->m_damping = value;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getLimitSoftness
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getLimitSoftness
+ (JNIEnv *env, jobject object, jlong motorId) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return motor->m_limitSoftness;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setLimitSoftness
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setLimitSoftness
+ (JNIEnv *env, jobject object, jlong motorId, jfloat value) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ motor->m_limitSoftness = value;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getERP
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getERP
+ (JNIEnv *env, jobject object, jlong motorId) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return motor->m_stopERP;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setERP
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setERP
+ (JNIEnv *env, jobject object, jlong motorId, jfloat value) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ motor->m_stopERP = value;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getBounce
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getBounce
+ (JNIEnv *env, jobject object, jlong motorId) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return motor->m_bounce;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setBounce
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setBounce
+ (JNIEnv *env, jobject object, jlong motorId, jfloat value) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ motor->m_bounce = value;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: isEnableMotor
+ * Signature: (J)Z
+ */
+ JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_isEnableMotor
+ (JNIEnv *env, jobject object, jlong motorId) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return false;
+ }
+ return motor->m_enableMotor;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setEnableMotor
+ * Signature: (JZ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setEnableMotor
+ (JNIEnv *env, jobject object, jlong motorId, jboolean value) {
+ btRotationalLimitMotor* motor = reinterpret_cast<btRotationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ motor->m_enableMotor = value;
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_joints_motors_RotationalLimitMotor */
+
+#ifndef _Included_com_jme3_bullet_joints_motors_RotationalLimitMotor
+#define _Included_com_jme3_bullet_joints_motors_RotationalLimitMotor
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getLoLimit
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getLoLimit
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setLoLimit
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setLoLimit
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getHiLimit
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getHiLimit
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setHiLimit
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setHiLimit
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getTargetVelocity
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getTargetVelocity
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setTargetVelocity
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setTargetVelocity
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getMaxMotorForce
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getMaxMotorForce
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setMaxMotorForce
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setMaxMotorForce
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getMaxLimitForce
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getMaxLimitForce
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setMaxLimitForce
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setMaxLimitForce
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getDamping
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getDamping
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setDamping
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setDamping
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getLimitSoftness
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getLimitSoftness
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setLimitSoftness
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setLimitSoftness
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getERP
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getERP
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setERP
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setERP
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: getBounce
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_getBounce
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setBounce
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setBounce
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: isEnableMotor
+ * Signature: (J)Z
+ */
+JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_isEnableMotor
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_RotationalLimitMotor
+ * Method: setEnableMotor
+ * Signature: (JZ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_RotationalLimitMotor_setEnableMotor
+ (JNIEnv *, jobject, jlong, jboolean);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_joints_motors_TranslationalLimitMotor.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: getLowerLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_getLowerLimit
+ (JNIEnv *env, jobject object, jlong motorId, jobject vector) {
+ btTranslationalLimitMotor* motor = reinterpret_cast<btTranslationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &motor->m_lowerLimit, vector);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: setLowerLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_setLowerLimit
+ (JNIEnv *env, jobject object, jlong motorId, jobject vector) {
+ btTranslationalLimitMotor* motor = reinterpret_cast<btTranslationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, vector, &motor->m_lowerLimit);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: getUpperLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_getUpperLimit
+ (JNIEnv *env, jobject object, jlong motorId, jobject vector) {
+ btTranslationalLimitMotor* motor = reinterpret_cast<btTranslationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &motor->m_upperLimit, vector);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: setUpperLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_setUpperLimit
+ (JNIEnv *env, jobject object, jlong motorId, jobject vector) {
+ btTranslationalLimitMotor* motor = reinterpret_cast<btTranslationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, vector, &motor->m_upperLimit);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: getAccumulatedImpulse
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_getAccumulatedImpulse
+ (JNIEnv *env, jobject object, jlong motorId, jobject vector) {
+ btTranslationalLimitMotor* motor = reinterpret_cast<btTranslationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &motor->m_accumulatedImpulse, vector);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: setAccumulatedImpulse
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_setAccumulatedImpulse
+ (JNIEnv *env, jobject object, jlong motorId, jobject vector) {
+ btTranslationalLimitMotor* motor = reinterpret_cast<btTranslationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, vector, &motor->m_accumulatedImpulse);
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: getLimitSoftness
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_getLetLimitSoftness
+ (JNIEnv *env, jobject object, jlong motorId) {
+ btTranslationalLimitMotor* motor = reinterpret_cast<btTranslationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return motor->m_limitSoftness;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: setLimitSoftness
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_setLimitSoftness
+ (JNIEnv *env, jobject object, jlong motorId, jfloat value) {
+ btTranslationalLimitMotor* motor = reinterpret_cast<btTranslationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ motor->m_limitSoftness = value;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: getDamping
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_getDamping
+ (JNIEnv *env, jobject object, jlong motorId) {
+ btTranslationalLimitMotor* motor = reinterpret_cast<btTranslationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return motor->m_damping;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: setDamping
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_setDamping
+ (JNIEnv *env, jobject object, jlong motorId, jfloat value) {
+ btTranslationalLimitMotor* motor = reinterpret_cast<btTranslationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ motor->m_damping = value;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: getRestitution
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_getRestitution
+ (JNIEnv *env, jobject object, jlong motorId) {
+ btTranslationalLimitMotor* motor = reinterpret_cast<btTranslationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return motor->m_restitution;
+ }
+
+ /*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: setRestitution
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_setRestitution
+ (JNIEnv *env, jobject object, jlong motorId, jfloat value) {
+ btTranslationalLimitMotor* motor = reinterpret_cast<btTranslationalLimitMotor*>(motorId);
+ if (motor == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ motor->m_restitution = value;
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_joints_motors_TranslationalLimitMotor */
+
+#ifndef _Included_com_jme3_bullet_joints_motors_TranslationalLimitMotor
+#define _Included_com_jme3_bullet_joints_motors_TranslationalLimitMotor
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: getLowerLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_getLowerLimit
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: setLowerLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_setLowerLimit
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: getUpperLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_getUpperLimit
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: setUpperLimit
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_setUpperLimit
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: getAccumulatedImpulse
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_getAccumulatedImpulse
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: setAccumulatedImpulse
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_setAccumulatedImpulse
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: getLimitSoftness
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_getLimitSoftness
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: setLimitSoftness
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_setLimitSoftness
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: getDamping
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_getDamping
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: setDamping
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_setDamping
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: getRestitution
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_getRestitution
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_joints_motors_TranslationalLimitMotor
+ * Method: setRestitution
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_joints_motors_TranslationalLimitMotor_setRestitution
+ (JNIEnv *, jobject, jlong, jfloat);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+
+#include "com_jme3_bullet_objects_PhysicsCharacter.h"
+#include "jmeBulletUtil.h"
+#include "BulletCollision/CollisionDispatch/btGhostObject.h"
+#include "BulletDynamics/Character/btKinematicCharacterController.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: createGhostObject
+ * Signature: ()J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_createGhostObject
+ (JNIEnv * env, jobject object) {
+ jmeClasses::initJavaClasses(env);
+ btPairCachingGhostObject* ghost = new btPairCachingGhostObject();
+ return reinterpret_cast<jlong>(ghost);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setCharacterFlags
+ * Signature: (J)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setCharacterFlags
+ (JNIEnv *env, jobject object, jlong ghostId) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(ghostId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ ghost->setCollisionFlags(/*ghost->getCollisionFlags() |*/ btCollisionObject::CF_CHARACTER_OBJECT);
+ ghost->setCollisionFlags(ghost->getCollisionFlags() & ~btCollisionObject::CF_NO_CONTACT_RESPONSE);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: createCharacterObject
+ * Signature: (JJF)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_createCharacterObject
+ (JNIEnv *env, jobject object, jlong objectId, jlong shapeId, jfloat stepHeight) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ //TODO: check convexshape!
+ btConvexShape* shape = reinterpret_cast<btConvexShape*>(shapeId);
+ btKinematicCharacterController* character = new btKinematicCharacterController(ghost, shape, stepHeight);
+ return reinterpret_cast<jlong>(character);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: warp
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_warp
+ (JNIEnv *env, jobject object, jlong objectId, jobject vector) {
+ btKinematicCharacterController* character = reinterpret_cast<btKinematicCharacterController*>(objectId);
+ if (character == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 vec = btVector3();
+ jmeBulletUtil::convert(env, vector, &vec);
+ character->warp(vec);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setWalkDirection
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setWalkDirection
+ (JNIEnv *env, jobject object, jlong objectId, jobject vector) {
+ btKinematicCharacterController* character = reinterpret_cast<btKinematicCharacterController*>(objectId);
+ if (character == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 vec = btVector3();
+ jmeBulletUtil::convert(env, vector, &vec);
+ character->setWalkDirection(vec);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setUpAxis
+ * Signature: (JI)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setUpAxis
+ (JNIEnv *env, jobject object, jlong objectId, jint value) {
+ btKinematicCharacterController* character = reinterpret_cast<btKinematicCharacterController*>(objectId);
+ if (character == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ character->setUpAxis(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setFallSpeed
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setFallSpeed
+ (JNIEnv *env, jobject object, jlong objectId, jfloat value) {
+ btKinematicCharacterController* character = reinterpret_cast<btKinematicCharacterController*>(objectId);
+ if (character == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ character->setFallSpeed(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setJumpSpeed
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setJumpSpeed
+ (JNIEnv *env, jobject object, jlong objectId, jfloat value) {
+ btKinematicCharacterController* character = reinterpret_cast<btKinematicCharacterController*>(objectId);
+ if (character == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ character->setJumpSpeed(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setGravity
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setGravity
+ (JNIEnv *env, jobject object, jlong objectId, jfloat value) {
+ btKinematicCharacterController* character = reinterpret_cast<btKinematicCharacterController*>(objectId);
+ if (character == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ character->setGravity(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: getGravity
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_getGravity
+ (JNIEnv *env, jobject object, jlong objectId) {
+ btKinematicCharacterController* character = reinterpret_cast<btKinematicCharacterController*>(objectId);
+ if (character == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return character->getGravity();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setMaxSlope
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setMaxSlope
+ (JNIEnv *env, jobject object, jlong objectId, jfloat value) {
+ btKinematicCharacterController* character = reinterpret_cast<btKinematicCharacterController*>(objectId);
+ if (character == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ character->setMaxSlope(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: getMaxSlope
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_getMaxSlope
+ (JNIEnv *env, jobject object, jlong objectId) {
+ btKinematicCharacterController* character = reinterpret_cast<btKinematicCharacterController*>(objectId);
+ if (character == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return character->getMaxSlope();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: onGround
+ * Signature: (J)Z
+ */
+ JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_onGround
+ (JNIEnv *env, jobject object, jlong objectId) {
+ btKinematicCharacterController* character = reinterpret_cast<btKinematicCharacterController*>(objectId);
+ if (character == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return false;
+ }
+ return character->onGround();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: jump
+ * Signature: (J)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_jump
+ (JNIEnv *env, jobject object, jlong objectId) {
+ btKinematicCharacterController* character = reinterpret_cast<btKinematicCharacterController*>(objectId);
+ if (character == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ character->jump();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: getPhysicsLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_getPhysicsLocation
+ (JNIEnv *env, jobject object, jlong objectId, jobject value) {
+ btGhostObject* ghost = reinterpret_cast<btGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &ghost->getWorldTransform().getOrigin(), value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setCcdSweptSphereRadius
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setCcdSweptSphereRadius
+ (JNIEnv *env, jobject object, jlong objectId, jfloat value) {
+ btGhostObject* ghost = reinterpret_cast<btGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ ghost->setCcdSweptSphereRadius(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setCcdMotionThreshold
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setCcdMotionThreshold
+ (JNIEnv *env, jobject object, jlong objectId, jfloat value) {
+ btGhostObject* ghost = reinterpret_cast<btGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ ghost->setCcdMotionThreshold(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: getCcdSweptSphereRadius
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_getCcdSweptSphereRadius
+ (JNIEnv *env, jobject object, jlong objectId) {
+ btGhostObject* ghost = reinterpret_cast<btGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return ghost->getCcdSweptSphereRadius();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: getCcdMotionThreshold
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_getCcdMotionThreshold
+ (JNIEnv *env, jobject object, jlong objectId) {
+ btGhostObject* ghost = reinterpret_cast<btGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return ghost->getCcdMotionThreshold();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: getCcdSquareMotionThreshold
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_getCcdSquareMotionThreshold
+ (JNIEnv *env, jobject object, jlong objectId) {
+ btGhostObject* ghost = reinterpret_cast<btGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return ghost->getCcdSquareMotionThreshold();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: finalizeNativeCharacter
+ * Signature: (J)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_finalizeNativeCharacter
+ (JNIEnv *env, jobject object, jlong objectId) {
+ btKinematicCharacterController* character = reinterpret_cast<btKinematicCharacterController*>(objectId);
+ if (character == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ delete(character);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_objects_PhysicsCharacter */
+
+#ifndef _Included_com_jme3_bullet_objects_PhysicsCharacter
+#define _Included_com_jme3_bullet_objects_PhysicsCharacter
+#ifdef __cplusplus
+extern "C" {
+#endif
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_NONE
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_NONE 0L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_01
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_01 1L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_02
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_02 2L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_03
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_03 4L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_04
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_04 8L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_05
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_05 16L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_06
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_06 32L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_07
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_07 64L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_08
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_08 128L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_09
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_09 256L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_10
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_10 512L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_11
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_11 1024L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_12
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_12 2048L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_13
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_13 4096L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_14
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_14 8192L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_15
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_15 16384L
+#undef com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_16
+#define com_jme3_bullet_objects_PhysicsCharacter_COLLISION_GROUP_16 32768L
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: createGhostObject
+ * Signature: ()J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_createGhostObject
+ (JNIEnv *, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setCharacterFlags
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setCharacterFlags
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: createCharacterObject
+ * Signature: (JJF)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_createCharacterObject
+ (JNIEnv *, jobject, jlong, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: warp
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_warp
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setWalkDirection
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setWalkDirection
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setUpAxis
+ * Signature: (JI)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setUpAxis
+ (JNIEnv *, jobject, jlong, jint);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setFallSpeed
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setFallSpeed
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setJumpSpeed
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setJumpSpeed
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setGravity
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setGravity
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: getGravity
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_getGravity
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setMaxSlope
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setMaxSlope
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: getMaxSlope
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_getMaxSlope
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: onGround
+ * Signature: (J)Z
+ */
+JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_onGround
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: jump
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_jump
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: getPhysicsLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_getPhysicsLocation
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setCcdSweptSphereRadius
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setCcdSweptSphereRadius
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: setCcdMotionThreshold
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_setCcdMotionThreshold
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: getCcdSweptSphereRadius
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_getCcdSweptSphereRadius
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: getCcdMotionThreshold
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_getCcdMotionThreshold
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: getCcdSquareMotionThreshold
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_getCcdSquareMotionThreshold
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsCharacter
+ * Method: finalizeNativeCharacter
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsCharacter_finalizeNativeCharacter
+ (JNIEnv *, jobject, jlong);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+
+#include <BulletCollision/CollisionDispatch/btGhostObject.h>
+
+#include "com_jme3_bullet_objects_PhysicsGhostObject.h"
+#include "BulletCollision/BroadphaseCollision/btOverlappingPairCache.h"
+#include "jmeBulletUtil.h"
+#include "jmePhysicsSpace.h"
+#include "jmeUserPointer.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: createGhostObject
+ * Signature: ()J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_createGhostObject
+ (JNIEnv * env, jobject object) {
+ jmeClasses::initJavaClasses(env);
+ btPairCachingGhostObject* ghost = new btPairCachingGhostObject();
+ return reinterpret_cast<jlong>(ghost);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: setGhostFlags
+ * Signature: (J)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_setGhostFlags
+ (JNIEnv *env, jobject object, jlong objectId) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ ghost->setCollisionFlags(ghost->getCollisionFlags() | btCollisionObject::CF_NO_CONTACT_RESPONSE);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: setPhysicsLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_setPhysicsLocation
+ (JNIEnv *env, jobject object, jlong objectId, jobject value) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, value, &ghost->getWorldTransform().getOrigin());
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: setPhysicsRotation
+ * Signature: (JLcom/jme3/math/Matrix3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_setPhysicsRotation__JLcom_jme3_math_Matrix3f_2
+ (JNIEnv *env, jobject object, jlong objectId, jobject value) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, value, &ghost->getWorldTransform().getBasis());
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: setPhysicsRotation
+ * Signature: (JLcom/jme3/math/Quaternion;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_setPhysicsRotation__JLcom_jme3_math_Quaternion_2
+ (JNIEnv *env, jobject object, jlong objectId, jobject value) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convertQuat(env, value, &ghost->getWorldTransform().getBasis());
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getPhysicsLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getPhysicsLocation
+ (JNIEnv *env, jobject object, jlong objectId, jobject value) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &ghost->getWorldTransform().getOrigin(), value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getPhysicsRotation
+ * Signature: (JLcom/jme3/math/Quaternion;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getPhysicsRotation
+ (JNIEnv *env, jobject object, jlong objectId, jobject value) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convertQuat(env, &ghost->getWorldTransform().getBasis(), value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getPhysicsRotationMatrix
+ * Signature: (JLcom/jme3/math/Matrix3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getPhysicsRotationMatrix
+ (JNIEnv *env, jobject object, jlong objectId, jobject value) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &ghost->getWorldTransform().getBasis(), value);
+ }
+
+ class jmeGhostOverlapCallback : public btOverlapCallback {
+ JNIEnv* m_env;
+ jobject m_object;
+ public:
+ jmeGhostOverlapCallback(JNIEnv *env, jobject object)
+ :m_env(env),
+ m_object(object)
+ {
+ }
+ virtual ~jmeGhostOverlapCallback() {}
+ virtual bool processOverlap(btBroadphasePair& pair)
+ {
+ btCollisionObject *co1 = (btCollisionObject *)pair.m_pProxy0->m_clientObject;
+ jmeUserPointer *up1 = (jmeUserPointer*)co1 -> getUserPointer();
+ jobject javaCollisionObject1 = m_env->NewLocalRef(up1->javaCollisionObject);
+ m_env->CallVoidMethod(m_object, jmeClasses::PhysicsGhostObject_addOverlappingObject, javaCollisionObject1);
+ m_env->DeleteLocalRef(javaCollisionObject1);
+ if (m_env->ExceptionCheck()) {
+ m_env->Throw(m_env->ExceptionOccurred());
+ return false;
+ }
+
+ return false;
+ }
+ };
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getOverlappingObjects
+ * Signature: (J)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getOverlappingObjects
+ (JNIEnv *env, jobject object, jlong objectId) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btHashedOverlappingPairCache * pc = ghost->getOverlappingPairCache();
+ jmeGhostOverlapCallback cb(env, object);
+ pc -> processAllOverlappingPairs(&cb, NULL);
+ }
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getOverlappingCount
+ * Signature: (J)I
+ */
+ JNIEXPORT jint JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getOverlappingCount
+ (JNIEnv *env, jobject object, jlong objectId) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return ghost->getNumOverlappingObjects();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: setCcdSweptSphereRadius
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_setCcdSweptSphereRadius
+ (JNIEnv *env, jobject object, jlong objectId, jfloat value) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ ghost->setCcdSweptSphereRadius(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: setCcdMotionThreshold
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_setCcdMotionThreshold
+ (JNIEnv *env, jobject object, jlong objectId, jfloat value) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ ghost->setCcdMotionThreshold(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getCcdSweptSphereRadius
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getCcdSweptSphereRadius
+ (JNIEnv *env, jobject object, jlong objectId) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return ghost->getCcdSweptSphereRadius();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getCcdMotionThreshold
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getCcdMotionThreshold
+ (JNIEnv *env, jobject object, jlong objectId) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return ghost->getCcdMotionThreshold();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getCcdSquareMotionThreshold
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getCcdSquareMotionThreshold
+ (JNIEnv *env, jobject object, jlong objectId) {
+ btPairCachingGhostObject* ghost = reinterpret_cast<btPairCachingGhostObject*>(objectId);
+ if (ghost == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return ghost->getCcdSquareMotionThreshold();
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_objects_PhysicsGhostObject */
+
+#ifndef _Included_com_jme3_bullet_objects_PhysicsGhostObject
+#define _Included_com_jme3_bullet_objects_PhysicsGhostObject
+#ifdef __cplusplus
+extern "C" {
+#endif
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_NONE
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_NONE 0L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_01
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_01 1L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_02
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_02 2L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_03
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_03 4L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_04
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_04 8L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_05
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_05 16L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_06
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_06 32L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_07
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_07 64L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_08
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_08 128L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_09
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_09 256L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_10
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_10 512L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_11
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_11 1024L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_12
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_12 2048L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_13
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_13 4096L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_14
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_14 8192L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_15
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_15 16384L
+#undef com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_16
+#define com_jme3_bullet_objects_PhysicsGhostObject_COLLISION_GROUP_16 32768L
+/*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: createGhostObject
+ * Signature: ()J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_createGhostObject
+ (JNIEnv *, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: setGhostFlags
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_setGhostFlags
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: setPhysicsLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_setPhysicsLocation
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: setPhysicsRotation
+ * Signature: (JLcom/jme3/math/Matrix3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_setPhysicsRotation__JLcom_jme3_math_Matrix3f_2
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: setPhysicsRotation
+ * Signature: (JLcom/jme3/math/Quaternion;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_setPhysicsRotation__JLcom_jme3_math_Quaternion_2
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getPhysicsLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getPhysicsLocation
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getPhysicsRotation
+ * Signature: (JLcom/jme3/math/Quaternion;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getPhysicsRotation
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getPhysicsRotationMatrix
+ * Signature: (JLcom/jme3/math/Matrix3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getPhysicsRotationMatrix
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getOverlappingObjects
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getOverlappingObjects
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getOverlappingCount
+ * Signature: (J)I
+ */
+JNIEXPORT jint JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getOverlappingCount
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: setCcdSweptSphereRadius
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_setCcdSweptSphereRadius
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: setCcdMotionThreshold
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_setCcdMotionThreshold
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getCcdSweptSphereRadius
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getCcdSweptSphereRadius
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getCcdMotionThreshold
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getCcdMotionThreshold
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsGhostObject
+ * Method: getCcdSquareMotionThreshold
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsGhostObject_getCcdSquareMotionThreshold
+ (JNIEnv *, jobject, jlong);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_objects_PhysicsRigidBody.h"
+#include "jmeBulletUtil.h"
+#include "jmeMotionState.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: createRigidBody
+ * Signature: (FJJ)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_createRigidBody
+ (JNIEnv *env, jobject object, jfloat mass, jlong motionstatId, jlong shapeId) {
+ jmeClasses::initJavaClasses(env);
+ btMotionState* motionState = reinterpret_cast<btMotionState*>(motionstatId);
+ btCollisionShape* shape = reinterpret_cast<btCollisionShape*>(shapeId);
+ btVector3 localInertia = btVector3();
+ shape->calculateLocalInertia(mass, localInertia);
+ btRigidBody* body = new btRigidBody(mass, motionState, shape, localInertia);
+ body->setUserPointer(NULL);
+ return reinterpret_cast<jlong>(body);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: isInWorld
+ * Signature: (J)Z
+ */
+ JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_isInWorld
+ (JNIEnv *env, jobject object, jlong bodyId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return false;
+ }
+ return body->isInWorld();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setPhysicsLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setPhysicsLocation
+ (JNIEnv *env, jobject object, jlong bodyId, jobject value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ // if (body->isStaticOrKinematicObject() || !body->isInWorld())
+ ((jmeMotionState*) body->getMotionState())->setKinematicLocation(env, value);
+ body->setCenterOfMassTransform(((jmeMotionState*) body->getMotionState())->worldTransform);
+ // else{
+ // btMatrix3x3* mtx = &btMatrix3x3();
+ // btTransform* trans = &btTransform(*mtx);
+ // trans->setBasis(body->getCenterOfMassTransform().getBasis());
+ // jmeBulletUtil::convert(env, value, &trans->getOrigin());
+ // body->setCenterOfMassTransform(*trans);
+ // }
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setPhysicsRotation
+ * Signature: (JLcom/jme3/math/Matrix3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setPhysicsRotation__JLcom_jme3_math_Matrix3f_2
+ (JNIEnv *env, jobject object, jlong bodyId, jobject value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ // if (body->isStaticOrKinematicObject() || !body->isInWorld())
+ ((jmeMotionState*) body->getMotionState())->setKinematicRotation(env, value);
+ body->setCenterOfMassTransform(((jmeMotionState*) body->getMotionState())->worldTransform);
+ // else{
+ // btMatrix3x3* mtx = &btMatrix3x3();
+ // btTransform* trans = &btTransform(*mtx);
+ // trans->setOrigin(body->getCenterOfMassTransform().getOrigin());
+ // jmeBulletUtil::convert(env, value, &trans->getBasis());
+ // body->setCenterOfMassTransform(*trans);
+ // }
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setPhysicsRotation
+ * Signature: (JLcom/jme3/math/Quaternion;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setPhysicsRotation__JLcom_jme3_math_Quaternion_2
+ (JNIEnv *env, jobject object, jlong bodyId, jobject value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ // if (body->isStaticOrKinematicObject() || !body->isInWorld())
+ ((jmeMotionState*) body->getMotionState())->setKinematicRotationQuat(env, value);
+ body->setCenterOfMassTransform(((jmeMotionState*) body->getMotionState())->worldTransform);
+ // else{
+ // btMatrix3x3* mtx = &btMatrix3x3();
+ // btTransform* trans = &btTransform(*mtx);
+ // trans->setOrigin(body->getCenterOfMassTransform().getOrigin());
+ // jmeBulletUtil::convertQuat(env, value, &trans->getBasis());
+ // body->setCenterOfMassTransform(*trans);
+ // }
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getPhysicsLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getPhysicsLocation
+ (JNIEnv *env, jobject object, jlong bodyId, jobject value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &body->getWorldTransform().getOrigin(), value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getPhysicsRotation
+ * Signature: (JLcom/jme3/math/Quaternion;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getPhysicsRotation
+ (JNIEnv *env, jobject object, jlong bodyId, jobject value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convertQuat(env, &body->getWorldTransform().getBasis(), value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getPhysicsRotationMatrix
+ * Signature: (JLcom/jme3/math/Matrix3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getPhysicsRotationMatrix
+ (JNIEnv *env, jobject object, jlong bodyId, jobject value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &body->getWorldTransform().getBasis(), value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setKinematic
+ * Signature: (JZ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setKinematic
+ (JNIEnv *env, jobject object, jlong bodyId, jboolean value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ if (value) {
+ body->setCollisionFlags(body->getCollisionFlags() | btCollisionObject::CF_KINEMATIC_OBJECT);
+ body->setActivationState(DISABLE_DEACTIVATION);
+ } else {
+ body->setCollisionFlags(body->getCollisionFlags() & ~btCollisionObject::CF_KINEMATIC_OBJECT);
+ body->setActivationState(ACTIVE_TAG);
+ }
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setCcdSweptSphereRadius
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setCcdSweptSphereRadius
+ (JNIEnv *env, jobject object, jlong bodyId, jfloat value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ body->setCcdSweptSphereRadius(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setCcdMotionThreshold
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setCcdMotionThreshold
+ (JNIEnv *env, jobject object, jlong bodyId, jfloat value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ body->setCcdMotionThreshold(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getCcdSweptSphereRadius
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getCcdSweptSphereRadius
+ (JNIEnv *env, jobject object, jlong bodyId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return body->getCcdSweptSphereRadius();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getCcdMotionThreshold
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getCcdMotionThreshold
+ (JNIEnv *env, jobject object, jlong bodyId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return body->getCcdMotionThreshold();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getCcdSquareMotionThreshold
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getCcdSquareMotionThreshold
+ (JNIEnv *env, jobject object, jlong bodyId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return body->getCcdSquareMotionThreshold();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setStatic
+ * Signature: (JZ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setStatic
+ (JNIEnv *env, jobject object, jlong bodyId, jboolean value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ if (value) {
+ body->setCollisionFlags(body->getCollisionFlags() | btCollisionObject::CF_STATIC_OBJECT);
+ } else {
+ body->setCollisionFlags(body->getCollisionFlags() & ~btCollisionObject::CF_STATIC_OBJECT);
+ }
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: updateMassProps
+ * Signature: (JJF)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_updateMassProps
+ (JNIEnv *env, jobject object, jlong bodyId, jlong shapeId, jfloat mass) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ btCollisionShape* shape = reinterpret_cast<btCollisionShape*>(shapeId);
+ btVector3 localInertia = btVector3();
+ shape->calculateLocalInertia(mass, localInertia);
+ body->setMassProps(mass, localInertia);
+ return reinterpret_cast<jlong>(body);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getGravity
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getGravity
+ (JNIEnv *env, jobject object, jlong bodyId, jobject value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &body->getGravity(), value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setGravity
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setGravity
+ (JNIEnv *env, jobject object, jlong bodyId, jobject value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 vec = btVector3();
+ jmeBulletUtil::convert(env, value, &vec);
+ body->setGravity(vec);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getFriction
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getFriction
+ (JNIEnv *env, jobject object, jlong bodyId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return body->getFriction();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setFriction
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setFriction
+ (JNIEnv *env, jobject object, jlong bodyId, jfloat value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ body->setFriction(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setDamping
+ * Signature: (JFF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setDamping
+ (JNIEnv *env, jobject object, jlong bodyId, jfloat value1, jfloat value2) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ body->setDamping(value1, value2);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setAngularDamping
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setAngularDamping
+ (JNIEnv *env, jobject object, jlong bodyId, jfloat value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ body->setDamping(body->getAngularDamping(), value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getLinearDamping
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getLinearDamping
+ (JNIEnv *env, jobject object, jlong bodyId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return body->getLinearDamping();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getAngularDamping
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getAngularDamping
+ (JNIEnv *env, jobject object, jlong bodyId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return body->getAngularDamping();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getRestitution
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getRestitution
+ (JNIEnv *env, jobject object, jlong bodyId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return body->getRestitution();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setRestitution
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setRestitution
+ (JNIEnv *env, jobject object, jlong bodyId, jfloat value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ body->setRestitution(value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getAngularVelocity
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getAngularVelocity
+ (JNIEnv *env, jobject object, jlong bodyId, jobject value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &body->getAngularVelocity(), value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setAngularVelocity
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setAngularVelocity
+ (JNIEnv *env, jobject object, jlong bodyId, jobject value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 vec = btVector3();
+ jmeBulletUtil::convert(env, value, &vec);
+ body->setAngularVelocity(vec);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getLinearVelocity
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getLinearVelocity
+ (JNIEnv *env, jobject object, jlong bodyId, jobject value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &body->getLinearVelocity(), value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setLinearVelocity
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setLinearVelocity
+ (JNIEnv *env, jobject object, jlong bodyId, jobject value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 vec = btVector3();
+ jmeBulletUtil::convert(env, value, &vec);
+ body->setLinearVelocity(vec);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: applyForce
+ * Signature: (JLcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_applyForce
+ (JNIEnv *env, jobject object, jlong bodyId, jobject force, jobject location) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 vec1 = btVector3();
+ btVector3 vec2 = btVector3();
+ jmeBulletUtil::convert(env, force, &vec1);
+ jmeBulletUtil::convert(env, location, &vec2);
+ body->applyForce(vec1, vec2);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: applyCentralForce
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_applyCentralForce
+ (JNIEnv *env, jobject object, jlong bodyId, jobject force) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 vec1 = btVector3();
+ jmeBulletUtil::convert(env, force, &vec1);
+ body->applyCentralForce(vec1);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: applyTorque
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_applyTorque
+ (JNIEnv *env, jobject object, jlong bodyId, jobject force) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 vec1 = btVector3();
+ jmeBulletUtil::convert(env, force, &vec1);
+ body->applyTorque(vec1);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: applyImpulse
+ * Signature: (JLcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_applyImpulse
+ (JNIEnv *env, jobject object, jlong bodyId, jobject force, jobject location) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 vec1 = btVector3();
+ btVector3 vec2 = btVector3();
+ jmeBulletUtil::convert(env, force, &vec1);
+ jmeBulletUtil::convert(env, location, &vec2);
+ body->applyImpulse(vec1, vec2);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: applyTorqueImpulse
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_applyTorqueImpulse
+ (JNIEnv *env, jobject object, jlong bodyId, jobject force) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 vec1 = btVector3();
+ jmeBulletUtil::convert(env, force, &vec1);
+ body->applyTorqueImpulse(vec1);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: clearForces
+ * Signature: (J)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_clearForces
+ (JNIEnv *env, jobject object, jlong bodyId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ body->clearForces();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setCollisionShape
+ * Signature: (JJ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setCollisionShape
+ (JNIEnv *env, jobject object, jlong bodyId, jlong shapeId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btCollisionShape* shape = reinterpret_cast<btCollisionShape*>(shapeId);
+ body->setCollisionShape(shape);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: activate
+ * Signature: (J)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_activate
+ (JNIEnv *env, jobject object, jlong bodyId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ body->activate(false);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: isActive
+ * Signature: (J)Z
+ */
+ JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_isActive
+ (JNIEnv *env, jobject object, jlong bodyId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return false;
+ }
+ return body->isActive();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setSleepingThresholds
+ * Signature: (JFF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setSleepingThresholds
+ (JNIEnv *env, jobject object, jlong bodyId, jfloat linear, jfloat angular) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ body->setSleepingThresholds(linear, angular);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setLinearSleepingThreshold
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setLinearSleepingThreshold
+ (JNIEnv *env, jobject object, jlong bodyId, jfloat value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ body->setSleepingThresholds(value, body->getLinearSleepingThreshold());
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setAngularSleepingThreshold
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setAngularSleepingThreshold
+ (JNIEnv *env, jobject object, jlong bodyId, jfloat value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ body->setSleepingThresholds(body->getAngularSleepingThreshold(), value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getLinearSleepingThreshold
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getLinearSleepingThreshold
+ (JNIEnv *env, jobject object, jlong bodyId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return body->getLinearSleepingThreshold();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getAngularSleepingThreshold
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getAngularSleepingThreshold
+ (JNIEnv *env, jobject object, jlong bodyId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return body->getAngularSleepingThreshold();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getAngularFactor
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getAngularFactor
+ (JNIEnv *env, jobject object, jlong bodyId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return body->getAngularFactor().getX();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setAngularFactor
+ * Signature: (JF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setAngularFactor
+ (JNIEnv *env, jobject object, jlong bodyId, jfloat value) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(bodyId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 vec1 = btVector3();
+ vec1.setX(value);
+ vec1.setY(value);
+ vec1.setZ(value);
+ body->setAngularFactor(vec1);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_objects_PhysicsRigidBody */
+
+#ifndef _Included_com_jme3_bullet_objects_PhysicsRigidBody
+#define _Included_com_jme3_bullet_objects_PhysicsRigidBody
+#ifdef __cplusplus
+extern "C" {
+#endif
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_NONE
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_NONE 0L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_01
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_01 1L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_02
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_02 2L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_03
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_03 4L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_04
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_04 8L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_05
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_05 16L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_06
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_06 32L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_07
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_07 64L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_08
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_08 128L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_09
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_09 256L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_10
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_10 512L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_11
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_11 1024L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_12
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_12 2048L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_13
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_13 4096L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_14
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_14 8192L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_15
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_15 16384L
+#undef com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_16
+#define com_jme3_bullet_objects_PhysicsRigidBody_COLLISION_GROUP_16 32768L
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: createRigidBody
+ * Signature: (FJJ)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_createRigidBody
+ (JNIEnv *, jobject, jfloat, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: isInWorld
+ * Signature: (J)Z
+ */
+JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_isInWorld
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setPhysicsLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setPhysicsLocation
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setPhysicsRotation
+ * Signature: (JLcom/jme3/math/Matrix3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setPhysicsRotation__JLcom_jme3_math_Matrix3f_2
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setPhysicsRotation
+ * Signature: (JLcom/jme3/math/Quaternion;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setPhysicsRotation__JLcom_jme3_math_Quaternion_2
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getPhysicsLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getPhysicsLocation
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getPhysicsRotation
+ * Signature: (JLcom/jme3/math/Quaternion;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getPhysicsRotation
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getPhysicsRotationMatrix
+ * Signature: (JLcom/jme3/math/Matrix3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getPhysicsRotationMatrix
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setKinematic
+ * Signature: (JZ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setKinematic
+ (JNIEnv *, jobject, jlong, jboolean);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setCcdSweptSphereRadius
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setCcdSweptSphereRadius
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setCcdMotionThreshold
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setCcdMotionThreshold
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getCcdSweptSphereRadius
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getCcdSweptSphereRadius
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getCcdMotionThreshold
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getCcdMotionThreshold
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getCcdSquareMotionThreshold
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getCcdSquareMotionThreshold
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setStatic
+ * Signature: (JZ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setStatic
+ (JNIEnv *, jobject, jlong, jboolean);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: updateMassProps
+ * Signature: (JJF)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_updateMassProps
+ (JNIEnv *, jobject, jlong, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getGravity
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getGravity
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setGravity
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setGravity
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getFriction
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getFriction
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setFriction
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setFriction
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setDamping
+ * Signature: (JFF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setDamping
+ (JNIEnv *, jobject, jlong, jfloat, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setAngularDamping
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setAngularDamping
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getLinearDamping
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getLinearDamping
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getAngularDamping
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getAngularDamping
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getRestitution
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getRestitution
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setRestitution
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setRestitution
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getAngularVelocity
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getAngularVelocity
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setAngularVelocity
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setAngularVelocity
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getLinearVelocity
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getLinearVelocity
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setLinearVelocity
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setLinearVelocity
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: applyForce
+ * Signature: (JLcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_applyForce
+ (JNIEnv *, jobject, jlong, jobject, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: applyCentralForce
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_applyCentralForce
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: applyTorque
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_applyTorque
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: applyImpulse
+ * Signature: (JLcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_applyImpulse
+ (JNIEnv *, jobject, jlong, jobject, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: applyTorqueImpulse
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_applyTorqueImpulse
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: clearForces
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_clearForces
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setCollisionShape
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setCollisionShape
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: activate
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_activate
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: isActive
+ * Signature: (J)Z
+ */
+JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_isActive
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setSleepingThresholds
+ * Signature: (JFF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setSleepingThresholds
+ (JNIEnv *, jobject, jlong, jfloat, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setLinearSleepingThreshold
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setLinearSleepingThreshold
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setAngularSleepingThreshold
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setAngularSleepingThreshold
+ (JNIEnv *, jobject, jlong, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getLinearSleepingThreshold
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getLinearSleepingThreshold
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getAngularSleepingThreshold
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getAngularSleepingThreshold
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: getAngularFactor
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_getAngularFactor
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsRigidBody
+ * Method: setAngularFactor
+ * Signature: (JF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsRigidBody_setAngularFactor
+ (JNIEnv *, jobject, jlong, jfloat);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+
+#include "com_jme3_bullet_objects_PhysicsVehicle.h"
+#include "jmeBulletUtil.h"
+#include "jmePhysicsSpace.h"
+#include "BulletDynamics/Vehicle/btRaycastVehicle.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: updateWheelTransform
+ * Signature: (JIZ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_updateWheelTransform
+ (JNIEnv *env, jobject object, jlong vehicleId, jint wheel, jboolean interpolated) {
+ btRaycastVehicle* vehicle = reinterpret_cast<btRaycastVehicle*>(vehicleId);
+ if (vehicle == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ vehicle->updateWheelTransform(wheel, interpolated);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: createVehicleRaycaster
+ * Signature: (JJ)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_createVehicleRaycaster
+ (JNIEnv *env, jobject object, jlong bodyId, jlong spaceId) {
+ //btRigidBody* body = (btRigidBody*) bodyId;
+ jmePhysicsSpace *space = reinterpret_cast<jmePhysicsSpace *>(spaceId);
+ if (space == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ btDefaultVehicleRaycaster* caster = new btDefaultVehicleRaycaster(space->getDynamicsWorld());
+ return reinterpret_cast<jlong>(caster);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: createRaycastVehicle
+ * Signature: (JJ)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_createRaycastVehicle
+ (JNIEnv *env, jobject object, jlong objectId, jlong casterId) {
+ btRigidBody* body = reinterpret_cast<btRigidBody*>(objectId);
+ if (body == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ body->setActivationState(DISABLE_DEACTIVATION);
+ btVehicleRaycaster* caster = reinterpret_cast<btDefaultVehicleRaycaster*>(casterId);
+ btRaycastVehicle::btVehicleTuning tuning;
+ btRaycastVehicle* vehicle = new btRaycastVehicle(tuning, body, caster);
+ return reinterpret_cast<jlong>(vehicle);
+
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: setCoordinateSystem
+ * Signature: (JIII)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_setCoordinateSystem
+ (JNIEnv *env, jobject object, jlong vehicleId, jint right, jint up, jint forward) {
+ btRaycastVehicle* vehicle = reinterpret_cast<btRaycastVehicle*>(vehicleId);
+ if (vehicle == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ vehicle->setCoordinateSystem(right, up, forward);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: addWheel
+ * Signature: (JLcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;FFLcom/jme3/bullet/objects/infos/VehicleTuning;Z)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_addWheel
+ (JNIEnv *env, jobject object, jlong vehicleId, jobject location, jobject direction, jobject axle, jfloat restLength, jfloat radius, jobject tuning, jboolean frontWheel) {
+ btRaycastVehicle* vehicle = reinterpret_cast<btRaycastVehicle*>(vehicleId);
+ if (vehicle == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ btVector3 vec1 = btVector3();
+ btVector3 vec2 = btVector3();
+ btVector3 vec3 = btVector3();
+ jmeBulletUtil::convert(env, location, &vec1);
+ jmeBulletUtil::convert(env, direction, &vec2);
+ jmeBulletUtil::convert(env, axle, &vec3);
+ btRaycastVehicle::btVehicleTuning tune;
+ btWheelInfo* info = &vehicle->addWheel(vec1, vec2, vec3, restLength, radius, tune, frontWheel);
+ return reinterpret_cast<jlong>(info);
+ }
+/*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: getWheel
+ * Signature: (JI)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_getWheel
+ (JNIEnv *env, jobject object, jlong vehicleId, jint index) {
+ btRaycastVehicle* vehicle = reinterpret_cast<btRaycastVehicle*>(vehicleId);
+ if (vehicle == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return reinterpret_cast<jlong>(&vehicle->getWheelInfo(index));
+}
+
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: resetSuspension
+ * Signature: (J)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_resetSuspension
+ (JNIEnv *env, jobject object, jlong vehicleId) {
+ btRaycastVehicle* vehicle = reinterpret_cast<btRaycastVehicle*>(vehicleId);
+ if (vehicle == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ vehicle->resetSuspension();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: applyEngineForce
+ * Signature: (JIF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_applyEngineForce
+ (JNIEnv *env, jobject object, jlong vehicleId, jint wheel, jfloat force) {
+ btRaycastVehicle* vehicle = reinterpret_cast<btRaycastVehicle*>(vehicleId);
+ if (vehicle == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ vehicle->applyEngineForce(force, wheel);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: steer
+ * Signature: (JIF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_steer
+ (JNIEnv *env, jobject object, jlong vehicleId, jint wheel, jfloat value) {
+ btRaycastVehicle* vehicle = reinterpret_cast<btRaycastVehicle*>(vehicleId);
+ if (vehicle == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ vehicle->setSteeringValue(value, wheel);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: brake
+ * Signature: (JIF)F
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_brake
+ (JNIEnv *env, jobject object, jlong vehicleId, jint wheel, jfloat value) {
+ btRaycastVehicle* vehicle = reinterpret_cast<btRaycastVehicle*>(vehicleId);
+ if (vehicle == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ vehicle->setBrake(value, wheel);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: getCurrentVehicleSpeedKmHour
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_getCurrentVehicleSpeedKmHour
+ (JNIEnv *env, jobject object, jlong vehicleId) {
+ btRaycastVehicle* vehicle = reinterpret_cast<btRaycastVehicle*>(vehicleId);
+ if (vehicle == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return vehicle->getCurrentSpeedKmHour();
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: getForwardVector
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_getForwardVector
+ (JNIEnv *env, jobject object, jlong vehicleId, jobject out) {
+ btRaycastVehicle* vehicle = reinterpret_cast<btRaycastVehicle*>(vehicleId);
+ if (vehicle == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ btVector3 forwardVector = vehicle->getForwardVector();
+ jmeBulletUtil::convert(env, &forwardVector, out);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: finalizeNative
+ * Signature: (JJ)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_finalizeNative
+ (JNIEnv *env, jobject object, jlong casterId, jlong vehicleId) {
+ btVehicleRaycaster* rayCaster = reinterpret_cast<btVehicleRaycaster*>(casterId);
+ btRaycastVehicle* vehicle = reinterpret_cast<btRaycastVehicle*>(vehicleId);
+ if (vehicle == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ delete(vehicle);
+ delete(rayCaster);
+ }
+
+#ifdef __cplusplus
+}
+#endif
+
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_objects_PhysicsVehicle */
+
+#ifndef _Included_com_jme3_bullet_objects_PhysicsVehicle
+#define _Included_com_jme3_bullet_objects_PhysicsVehicle
+#ifdef __cplusplus
+extern "C" {
+#endif
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_NONE
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_NONE 0L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_01
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_01 1L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_02
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_02 2L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_03
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_03 4L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_04
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_04 8L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_05
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_05 16L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_06
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_06 32L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_07
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_07 64L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_08
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_08 128L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_09
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_09 256L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_10
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_10 512L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_11
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_11 1024L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_12
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_12 2048L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_13
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_13 4096L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_14
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_14 8192L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_15
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_15 16384L
+#undef com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_16
+#define com_jme3_bullet_objects_PhysicsVehicle_COLLISION_GROUP_16 32768L
+/*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: updateWheelTransform
+ * Signature: (JIZ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_updateWheelTransform
+ (JNIEnv *, jobject, jlong, jint, jboolean);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: createVehicleRaycaster
+ * Signature: (JJ)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_createVehicleRaycaster
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: createRaycastVehicle
+ * Signature: (JJ)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_createRaycastVehicle
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: setCoordinateSystem
+ * Signature: (JIII)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_setCoordinateSystem
+ (JNIEnv *, jobject, jlong, jint, jint, jint);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: addWheel
+ * Signature: (JLcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;Lcom/jme3/math/Vector3f;FFLcom/jme3/bullet/objects/infos/VehicleTuning;Z)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_addWheel
+ (JNIEnv *, jobject, jlong, jobject, jobject, jobject, jfloat, jfloat, jobject, jboolean);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: getWheel
+ * Signature: (JI)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_getWheel
+ (JNIEnv *, jobject, jlong, jint);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: resetSuspension
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_resetSuspension
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: applyEngineForce
+ * Signature: (JIF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_applyEngineForce
+ (JNIEnv *, jobject, jlong, jint, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: steer
+ * Signature: (JIF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_steer
+ (JNIEnv *, jobject, jlong, jint, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: brake
+ * Signature: (JIF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_brake
+ (JNIEnv *, jobject, jlong, jint, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: getCurrentVehicleSpeedKmHour
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_getCurrentVehicleSpeedKmHour
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: getForwardVector
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_getForwardVector
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_PhysicsVehicle
+ * Method: finalizeNative
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_PhysicsVehicle_finalizeNative
+ (JNIEnv *, jobject, jlong, jlong);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+
+#include "com_jme3_bullet_objects_VehicleWheel.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_objects_VehicleWheel
+ * Method: getWheelLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_VehicleWheel_getWheelLocation
+ (JNIEnv *env, jobject object, jlong wheelId, jobject out) {
+ btWheelInfo* wheel = reinterpret_cast<btWheelInfo*>(wheelId);
+ if (wheel == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &wheel->m_worldTransform.getOrigin(), out);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_VehicleWheel
+ * Method: getWheelRotation
+ * Signature: (JLcom/jme3/math/Matrix3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_VehicleWheel_getWheelRotation
+ (JNIEnv *env, jobject object, jlong wheelId, jobject out) {
+ btWheelInfo* wheel = reinterpret_cast<btWheelInfo*>(wheelId);
+ if (wheel == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &wheel->m_worldTransform.getBasis(), out);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_VehicleWheel
+ * Method: applyInfo
+ * Signature: (JFFFFFFFFZF)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_VehicleWheel_applyInfo
+ (JNIEnv *env, jobject object, jlong wheelId, jfloat suspensionStiffness, jfloat wheelsDampingRelaxation, jfloat wheelsDampingCompression, jfloat frictionSlip, jfloat rollInfluence, jfloat maxSuspensionTravelCm, jfloat maxSuspensionForce, jfloat radius, jboolean frontWheel, jfloat restLength) {
+ btWheelInfo* wheelInfo = reinterpret_cast<btWheelInfo*>(wheelId);
+ wheelInfo->m_suspensionStiffness = suspensionStiffness;
+ wheelInfo->m_wheelsDampingRelaxation = wheelsDampingRelaxation;
+ wheelInfo->m_wheelsDampingCompression = wheelsDampingCompression;
+ wheelInfo->m_frictionSlip = frictionSlip;
+ wheelInfo->m_rollInfluence = rollInfluence;
+ wheelInfo->m_maxSuspensionTravelCm = maxSuspensionTravelCm;
+ wheelInfo->m_maxSuspensionForce = maxSuspensionForce;
+ wheelInfo->m_wheelsRadius = radius;
+ wheelInfo->m_bIsFrontWheel = frontWheel;
+ wheelInfo->m_suspensionRestLength1 = restLength;
+
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_VehicleWheel
+ * Method: getCollisionLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_VehicleWheel_getCollisionLocation
+ (JNIEnv *env, jobject object, jlong wheelId, jobject out) {
+ btWheelInfo* wheel = reinterpret_cast<btWheelInfo*>(wheelId);
+ if (wheel == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &wheel->m_raycastInfo.m_contactPointWS, out);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_VehicleWheel
+ * Method: getCollisionNormal
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_VehicleWheel_getCollisionNormal
+ (JNIEnv *env, jobject object, jlong wheelId, jobject out) {
+ btWheelInfo* wheel = reinterpret_cast<btWheelInfo*>(wheelId);
+ if (wheel == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &wheel->m_raycastInfo.m_contactNormalWS, out);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_VehicleWheel
+ * Method: getSkidInfo
+ * Signature: (J)F
+ */
+ JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_VehicleWheel_getSkidInfo
+ (JNIEnv *env, jobject object, jlong wheelId) {
+ btWheelInfo* wheel = reinterpret_cast<btWheelInfo*>(wheelId);
+ if (wheel == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return 0;
+ }
+ return wheel->m_skidInfo;
+ }
+
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_VehicleWheel_finalizeNative
+ (JNIEnv *env, jobject object, jlong wheelId) {
+ btWheelInfo* wheel = reinterpret_cast<btWheelInfo*>(wheelId);
+ if (wheel == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+// delete(wheel);
+ }
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_objects_VehicleWheel */
+
+#ifndef _Included_com_jme3_bullet_objects_VehicleWheel
+#define _Included_com_jme3_bullet_objects_VehicleWheel
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_objects_VehicleWheel
+ * Method: getWheelLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_VehicleWheel_getWheelLocation
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_VehicleWheel
+ * Method: getWheelRotation
+ * Signature: (JLcom/jme3/math/Matrix3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_VehicleWheel_getWheelRotation
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_VehicleWheel
+ * Method: applyInfo
+ * Signature: (JFFFFFFFFZF)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_VehicleWheel_applyInfo
+ (JNIEnv *, jobject, jlong, jfloat, jfloat, jfloat, jfloat, jfloat, jfloat, jfloat, jfloat, jboolean, jfloat);
+
+/*
+ * Class: com_jme3_bullet_objects_VehicleWheel
+ * Method: getCollisionLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_VehicleWheel_getCollisionLocation
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_VehicleWheel
+ * Method: getCollisionNormal
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_VehicleWheel_getCollisionNormal
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_VehicleWheel
+ * Method: getSkidInfo
+ * Signature: (J)F
+ */
+JNIEXPORT jfloat JNICALL Java_com_jme3_bullet_objects_VehicleWheel_getSkidInfo
+ (JNIEnv *, jobject, jlong);
+
+/*
+ * Class: com_jme3_bullet_objects_VehicleWheel
+ * Method: finalizeNative
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_VehicleWheel_finalizeNative
+ (JNIEnv *, jobject, jlong);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_objects_infos_RigidBodyMotionState.h"
+#include "jmeBulletUtil.h"
+#include "jmeMotionState.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_objects_infos_RigidBodyMotionState
+ * Method: createMotionState
+ * Signature: ()J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_infos_RigidBodyMotionState_createMotionState
+ (JNIEnv *env, jobject object) {
+ jmeClasses::initJavaClasses(env);
+ jmeMotionState* motionState = new jmeMotionState();
+ return reinterpret_cast<jlong>(motionState);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_infos_RigidBodyMotionState
+ * Method: applyTransform
+ * Signature: (JLcom/jme3/math/Vector3f;Lcom/jme3/math/Quaternion;)Z
+ */
+ JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_objects_infos_RigidBodyMotionState_applyTransform
+ (JNIEnv *env, jobject object, jlong stateId, jobject location, jobject rotation) {
+ jmeMotionState* motionState = reinterpret_cast<jmeMotionState*>(stateId);
+ if (motionState == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return false;
+ }
+ return motionState->applyTransform(env, location, rotation);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_infos_RigidBodyMotionState
+ * Method: getWorldLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_infos_RigidBodyMotionState_getWorldLocation
+ (JNIEnv *env, jobject object, jlong stateId, jobject value) {
+ jmeMotionState* motionState = reinterpret_cast<jmeMotionState*>(stateId);
+ if (motionState == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &motionState->worldTransform.getOrigin(), value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_infos_RigidBodyMotionState
+ * Method: getWorldRotation
+ * Signature: (JLcom/jme3/math/Matrix3f;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_infos_RigidBodyMotionState_getWorldRotation
+ (JNIEnv *env, jobject object, jlong stateId, jobject value) {
+ jmeMotionState* motionState = reinterpret_cast<jmeMotionState*>(stateId);
+ if (motionState == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convert(env, &motionState->worldTransform.getBasis(), value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_infos_RigidBodyMotionState
+ * Method: getWorldRotationQuat
+ * Signature: (JLcom/jme3/math/Quaternion;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_infos_RigidBodyMotionState_getWorldRotationQuat
+ (JNIEnv *env, jobject object, jlong stateId, jobject value) {
+ jmeMotionState* motionState = reinterpret_cast<jmeMotionState*>(stateId);
+ if (motionState == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ jmeBulletUtil::convertQuat(env, &motionState->worldTransform.getBasis(), value);
+ }
+
+ /*
+ * Class: com_jme3_bullet_objects_infos_RigidBodyMotionState
+ * Method: finalizeNative
+ * Signature: (J)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_infos_RigidBodyMotionState_finalizeNative
+ (JNIEnv *env, jobject object, jlong stateId) {
+ jmeMotionState* motionState = reinterpret_cast<jmeMotionState*>(stateId);
+ if (motionState == NULL) {
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "The native object does not exist.");
+ return;
+ }
+ delete(motionState);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_objects_infos_RigidBodyMotionState */
+
+#ifndef _Included_com_jme3_bullet_objects_infos_RigidBodyMotionState
+#define _Included_com_jme3_bullet_objects_infos_RigidBodyMotionState
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_objects_infos_RigidBodyMotionState
+ * Method: createMotionState
+ * Signature: ()J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_objects_infos_RigidBodyMotionState_createMotionState
+ (JNIEnv *, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_infos_RigidBodyMotionState
+ * Method: applyTransform
+ * Signature: (JLcom/jme3/math/Vector3f;Lcom/jme3/math/Quaternion;)Z
+ */
+JNIEXPORT jboolean JNICALL Java_com_jme3_bullet_objects_infos_RigidBodyMotionState_applyTransform
+ (JNIEnv *, jobject, jlong, jobject, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_infos_RigidBodyMotionState
+ * Method: getWorldLocation
+ * Signature: (JLcom/jme3/math/Vector3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_infos_RigidBodyMotionState_getWorldLocation
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_infos_RigidBodyMotionState
+ * Method: getWorldRotation
+ * Signature: (JLcom/jme3/math/Matrix3f;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_infos_RigidBodyMotionState_getWorldRotation
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_infos_RigidBodyMotionState
+ * Method: getWorldRotationQuat
+ * Signature: (JLcom/jme3/math/Quaternion;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_infos_RigidBodyMotionState_getWorldRotationQuat
+ (JNIEnv *, jobject, jlong, jobject);
+
+/*
+ * Class: com_jme3_bullet_objects_infos_RigidBodyMotionState
+ * Method: finalizeNative
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_objects_infos_RigidBodyMotionState_finalizeNative
+ (JNIEnv *, jobject, jlong);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen, CJ Hare
+ */
+#include "com_jme3_bullet_util_DebugShapeFactory.h"
+#include "jmeBulletUtil.h"
+#include "BulletCollision/CollisionShapes/btShapeHull.h"
+
+class DebugCallback : public btTriangleCallback, public btInternalTriangleIndexCallback {
+public:
+ JNIEnv* env;
+ jobject callback;
+
+ DebugCallback(JNIEnv* env, jobject object) {
+ this->env = env;
+ this->callback = object;
+ }
+
+ virtual void internalProcessTriangleIndex(btVector3* triangle, int partId, int triangleIndex) {
+ processTriangle(triangle, partId, triangleIndex);
+ }
+
+ virtual void processTriangle(btVector3* triangle, int partId, int triangleIndex) {
+ btVector3 vertexA, vertexB, vertexC;
+ vertexA = triangle[0];
+ vertexB = triangle[1];
+ vertexC = triangle[2];
+ env->CallVoidMethod(callback, jmeClasses::DebugMeshCallback_addVector, vertexA.getX(), vertexA.getY(), vertexA.getZ(), partId, triangleIndex);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+// triangle =
+ env->CallVoidMethod(callback, jmeClasses::DebugMeshCallback_addVector, vertexB.getX(), vertexB.getY(), vertexB.getZ(), partId, triangleIndex);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->CallVoidMethod(callback, jmeClasses::DebugMeshCallback_addVector, vertexC.getX(), vertexC.getY(), vertexC.getZ(), partId, triangleIndex);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ }
+};
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /* Inaccessible static: _00024assertionsDisabled */
+
+ /*
+ * Class: com_jme3_bullet_util_DebugShapeFactory
+ * Method: getVertices
+ * Signature: (JLcom/jme3/bullet/util/DebugMeshCallback;)V
+ */
+ JNIEXPORT void JNICALL Java_com_jme3_bullet_util_DebugShapeFactory_getVertices
+ (JNIEnv *env, jclass clazz, jlong shapeId, jobject callback) {
+ btCollisionShape* shape = reinterpret_cast<btCollisionShape*>(shapeId);
+ if (shape->isConcave()) {
+// fprintf(stdout,"Concave shape");
+// fflush(stdout);
+ btConcaveShape* concave = (btConcaveShape*) shape;
+ DebugCallback* clb = new DebugCallback(env, callback);
+ btVector3 min = btVector3(-1e30, -1e30, -1e30);
+ btVector3 max = btVector3(1e30, 1e30, 1e30);
+ concave->processAllTriangles(clb, min, max);
+ delete(clb);
+ } else if (shape->isConvex()) {
+// fprintf(stdout,"Convex shape");
+// fflush(stdout);
+ btConvexShape* convexShape = (btConvexShape*) shape;
+ // Check there is a hull shape to render
+ if (convexShape->getUserPointer() == NULL) {
+ // create a hull approximation
+ btShapeHull* hull = new btShapeHull(convexShape);
+ float margin = convexShape->getMargin();
+ hull->buildHull(margin);
+ convexShape->setUserPointer(hull);
+ }
+
+ btShapeHull* hull = (btShapeHull*) convexShape->getUserPointer();
+
+ int numberOfTriangles = hull->numTriangles();
+ int numberOfFloats = 3 * 3 * numberOfTriangles;
+ int byteBufferSize = numberOfFloats * 4;
+
+ // Loop variables
+ const unsigned int* hullIndices = hull->getIndexPointer();
+ const btVector3* hullVertices = hull->getVertexPointer();
+ btVector3 vertexA, vertexB, vertexC;
+ int index = 0;
+
+ for (int i = 0; i < numberOfTriangles; i++) {
+ // Grab the data for this triangle from the hull
+ vertexA = hullVertices[hullIndices[index++]];
+ vertexB = hullVertices[hullIndices[index++]];
+ vertexC = hullVertices[hullIndices[index++]];
+
+ // Put the verticies into the vertex buffer
+ env->CallVoidMethod(callback, jmeClasses::DebugMeshCallback_addVector, vertexA.getX(), vertexA.getY(), vertexA.getZ());
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->CallVoidMethod(callback, jmeClasses::DebugMeshCallback_addVector, vertexB.getX(), vertexB.getY(), vertexB.getZ());
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->CallVoidMethod(callback, jmeClasses::DebugMeshCallback_addVector, vertexC.getX(), vertexC.getY(), vertexC.getZ());
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ }
+ delete hull;
+ convexShape->setUserPointer(NULL);
+ }
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_util_DebugShapeFactory */
+
+#ifndef _Included_com_jme3_bullet_util_DebugShapeFactory
+#define _Included_com_jme3_bullet_util_DebugShapeFactory
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_util_DebugShapeFactory
+ * Method: getVertices
+ * Signature: (JLcom/jme3/bullet/util/DebugMeshCallback;)V
+ */
+JNIEXPORT void JNICALL Java_com_jme3_bullet_util_DebugShapeFactory_getVertices
+ (JNIEnv *, jclass, jlong, jobject);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * Author: Normen Hansen
+ */
+#include "com_jme3_bullet_util_NativeMeshUtil.h"
+#include "jmeBulletUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ /*
+ * Class: com_jme3_bullet_util_NativeMeshUtil
+ * Method: createTriangleIndexVertexArray
+ * Signature: (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;IIII)J
+ */
+ JNIEXPORT jlong JNICALL Java_com_jme3_bullet_util_NativeMeshUtil_createTriangleIndexVertexArray
+ (JNIEnv * env, jclass cls, jobject triangleIndexBase, jobject vertexIndexBase, jint numTriangles, jint numVertices, jint vertexStride, jint triangleIndexStride) {
+ jmeClasses::initJavaClasses(env);
+ int* triangles = (int*) env->GetDirectBufferAddress(triangleIndexBase);
+ float* vertices = (float*) env->GetDirectBufferAddress(vertexIndexBase);
+ btTriangleIndexVertexArray* array = new btTriangleIndexVertexArray(numTriangles, triangles, triangleIndexStride, numVertices, vertices, vertexStride);
+ return reinterpret_cast<jlong>(array);
+ }
+
+#ifdef __cplusplus
+}
+#endif
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class com_jme3_bullet_util_NativeMeshUtil */
+
+#ifndef _Included_com_jme3_bullet_util_NativeMeshUtil
+#define _Included_com_jme3_bullet_util_NativeMeshUtil
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: com_jme3_bullet_util_NativeMeshUtil
+ * Method: createTriangleIndexVertexArray
+ * Signature: (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;IIII)J
+ */
+JNIEXPORT jlong JNICALL Java_com_jme3_bullet_util_NativeMeshUtil_createTriangleIndexVertexArray
+ (JNIEnv *, jclass, jobject, jobject, jint, jint, jint, jint);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include <math.h>
+#include "jmeBulletUtil.h"
+
+/**
+ * Author: Normen Hansen
+ */
+void jmeBulletUtil::convert(JNIEnv* env, jobject in, btVector3* out) {
+ if (in == NULL || out == NULL) {
+ jmeClasses::throwNPE(env);
+ }
+ float x = env->GetFloatField(in, jmeClasses::Vector3f_x);//env->CallFloatMethod(in, jmeClasses::Vector3f_getX);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ float y = env->GetFloatField(in, jmeClasses::Vector3f_y);//env->CallFloatMethod(in, jmeClasses::Vector3f_getY);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ float z = env->GetFloatField(in, jmeClasses::Vector3f_z);//env->CallFloatMethod(in, jmeClasses::Vector3f_getZ);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ out->setX(x);
+ out->setY(y);
+ out->setZ(z);
+}
+
+void jmeBulletUtil::convert(JNIEnv* env, const btVector3* in, jobject out) {
+ if (in == NULL || out == NULL) {
+ jmeClasses::throwNPE(env);
+ }
+ float x = in->getX();
+ float y = in->getY();
+ float z = in->getZ();
+ env->SetFloatField(out, jmeClasses::Vector3f_x, x);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->SetFloatField(out, jmeClasses::Vector3f_y, y);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->SetFloatField(out, jmeClasses::Vector3f_z, z);
+// env->CallObjectMethod(out, jmeClasses::Vector3f_set, x, y, z);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+}
+
+void jmeBulletUtil::convert(JNIEnv* env, jobject in, btMatrix3x3* out) {
+ if (in == NULL || out == NULL) {
+ jmeClasses::throwNPE(env);
+ }
+ float m00 = env->GetFloatField(in, jmeClasses::Matrix3f_m00);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ float m01 = env->GetFloatField(in, jmeClasses::Matrix3f_m01);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ float m02 = env->GetFloatField(in, jmeClasses::Matrix3f_m02);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ float m10 = env->GetFloatField(in, jmeClasses::Matrix3f_m10);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ float m11 = env->GetFloatField(in, jmeClasses::Matrix3f_m11);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ float m12 = env->GetFloatField(in, jmeClasses::Matrix3f_m12);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ float m20 = env->GetFloatField(in, jmeClasses::Matrix3f_m20);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ float m21 = env->GetFloatField(in, jmeClasses::Matrix3f_m21);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ float m22 = env->GetFloatField(in, jmeClasses::Matrix3f_m22);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ out->setValue(m00, m01, m02, m10, m11, m12, m20, m21, m22);
+}
+
+void jmeBulletUtil::convert(JNIEnv* env, const btMatrix3x3* in, jobject out) {
+ if (in == NULL || out == NULL) {
+ jmeClasses::throwNPE(env);
+ }
+ float m00 = in->getRow(0).m_floats[0];
+ float m01 = in->getRow(0).m_floats[1];
+ float m02 = in->getRow(0).m_floats[2];
+ float m10 = in->getRow(1).m_floats[0];
+ float m11 = in->getRow(1).m_floats[1];
+ float m12 = in->getRow(1).m_floats[2];
+ float m20 = in->getRow(2).m_floats[0];
+ float m21 = in->getRow(2).m_floats[1];
+ float m22 = in->getRow(2).m_floats[2];
+ env->SetFloatField(out, jmeClasses::Matrix3f_m00, m00);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->SetFloatField(out, jmeClasses::Matrix3f_m01, m01);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->SetFloatField(out, jmeClasses::Matrix3f_m02, m02);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->SetFloatField(out, jmeClasses::Matrix3f_m10, m10);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->SetFloatField(out, jmeClasses::Matrix3f_m11, m11);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->SetFloatField(out, jmeClasses::Matrix3f_m12, m12);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->SetFloatField(out, jmeClasses::Matrix3f_m20, m20);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->SetFloatField(out, jmeClasses::Matrix3f_m21, m21);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->SetFloatField(out, jmeClasses::Matrix3f_m22, m22);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+}
+
+void jmeBulletUtil::convertQuat(JNIEnv* env, jobject in, btMatrix3x3* out) {
+ if (in == NULL || out == NULL) {
+ jmeClasses::throwNPE(env);
+ }
+ float x = env->GetFloatField(in, jmeClasses::Quaternion_x);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ float y = env->GetFloatField(in, jmeClasses::Quaternion_y);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ float z = env->GetFloatField(in, jmeClasses::Quaternion_z);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ float w = env->GetFloatField(in, jmeClasses::Quaternion_w);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+
+ float norm = w * w + x * x + y * y + z * z;
+ float s = (norm == 1.0) ? 2.0 : (norm > 0.1) ? 2.0 / norm : 0.0;
+
+ // compute xs/ys/zs first to save 6 multiplications, since xs/ys/zs
+ // will be used 2-4 times each.
+ float xs = x * s;
+ float ys = y * s;
+ float zs = z * s;
+ float xx = x * xs;
+ float xy = x * ys;
+ float xz = x * zs;
+ float xw = w * xs;
+ float yy = y * ys;
+ float yz = y * zs;
+ float yw = w * ys;
+ float zz = z * zs;
+ float zw = w * zs;
+
+ // using s=2/norm (instead of 1/norm) saves 9 multiplications by 2 here
+ out->setValue(1.0 - (yy + zz), (xy - zw), (xz + yw),
+ (xy + zw), 1 - (xx + zz), (yz - xw),
+ (xz - yw), (yz + xw), 1.0 - (xx + yy));
+}
+
+void jmeBulletUtil::convertQuat(JNIEnv* env, const btMatrix3x3* in, jobject out) {
+ if (in == NULL || out == NULL) {
+ jmeClasses::throwNPE(env);
+ }
+ // the trace is the sum of the diagonal elements; see
+ // http://mathworld.wolfram.com/MatrixTrace.html
+ float t = in->getRow(0).m_floats[0] + in->getRow(1).m_floats[1] + in->getRow(2).m_floats[2];
+ float w, x, y, z;
+ // we protect the division by s by ensuring that s>=1
+ if (t >= 0) { // |w| >= .5
+ float s = sqrt(t + 1); // |s|>=1 ...
+ w = 0.5f * s;
+ s = 0.5f / s; // so this division isn't bad
+ x = (in->getRow(2).m_floats[1] - in->getRow(1).m_floats[2]) * s;
+ y = (in->getRow(0).m_floats[2] - in->getRow(2).m_floats[0]) * s;
+ z = (in->getRow(1).m_floats[0] - in->getRow(0).m_floats[1]) * s;
+ } else if ((in->getRow(0).m_floats[0] > in->getRow(1).m_floats[1]) && (in->getRow(0).m_floats[0] > in->getRow(2).m_floats[2])) {
+ float s = sqrt(1.0f + in->getRow(0).m_floats[0] - in->getRow(1).m_floats[1] - in->getRow(2).m_floats[2]); // |s|>=1
+ x = s * 0.5f; // |x| >= .5
+ s = 0.5f / s;
+ y = (in->getRow(1).m_floats[0] + in->getRow(0).m_floats[1]) * s;
+ z = (in->getRow(0).m_floats[2] + in->getRow(2).m_floats[0]) * s;
+ w = (in->getRow(2).m_floats[1] - in->getRow(1).m_floats[2]) * s;
+ } else if (in->getRow(1).m_floats[1] > in->getRow(2).m_floats[2]) {
+ float s = sqrt(1.0f + in->getRow(1).m_floats[1] - in->getRow(0).m_floats[0] - in->getRow(2).m_floats[2]); // |s|>=1
+ y = s * 0.5f; // |y| >= .5
+ s = 0.5f / s;
+ x = (in->getRow(1).m_floats[0] + in->getRow(0).m_floats[1]) * s;
+ z = (in->getRow(2).m_floats[1] + in->getRow(1).m_floats[2]) * s;
+ w = (in->getRow(0).m_floats[2] - in->getRow(2).m_floats[0]) * s;
+ } else {
+ float s = sqrt(1.0f + in->getRow(2).m_floats[2] - in->getRow(0).m_floats[0] - in->getRow(1).m_floats[1]); // |s|>=1
+ z = s * 0.5f; // |z| >= .5
+ s = 0.5f / s;
+ x = (in->getRow(0).m_floats[2] + in->getRow(2).m_floats[0]) * s;
+ y = (in->getRow(2).m_floats[1] + in->getRow(1).m_floats[2]) * s;
+ w = (in->getRow(1).m_floats[0] - in->getRow(0).m_floats[1]) * s;
+ }
+
+ env->SetFloatField(out, jmeClasses::Quaternion_x, x);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->SetFloatField(out, jmeClasses::Quaternion_y, y);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->SetFloatField(out, jmeClasses::Quaternion_z, z);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ env->SetFloatField(out, jmeClasses::Quaternion_w, w);
+// env->CallObjectMethod(out, jmeClasses::Quaternion_set, x, y, z, w);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+}
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include "jmeClasses.h"
+#include "btBulletDynamicsCommon.h"
+#include "btBulletCollisionCommon.h"
+#include "LinearMath/btVector3.h"
+
+/**
+ * Author: Normen Hansen
+ */
+class jmeBulletUtil{
+public:
+ static void convert(JNIEnv* env, jobject in, btVector3* out);
+ static void convert(JNIEnv* env, const btVector3* in, jobject out);
+ static void convert(JNIEnv* env, jobject in, btMatrix3x3* out);
+ static void convert(JNIEnv* env, const btMatrix3x3* in, jobject out);
+ static void convertQuat(JNIEnv* env, jobject in, btMatrix3x3* out);
+ static void convertQuat(JNIEnv* env, const btMatrix3x3* in, jobject out);
+private:
+ jmeBulletUtil(){};
+ ~jmeBulletUtil(){};
+
+};
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include "jmeClasses.h"
+#include <stdio.h>
+
+/**
+ * Author: Normen Hansen
+ */
+//public fields
+jclass jmeClasses::PhysicsSpace;
+jmethodID jmeClasses::PhysicsSpace_preTick;
+jmethodID jmeClasses::PhysicsSpace_postTick;
+jmethodID jmeClasses::PhysicsSpace_addCollisionEvent;
+
+jclass jmeClasses::PhysicsGhostObject;
+jmethodID jmeClasses::PhysicsGhostObject_addOverlappingObject;
+
+jclass jmeClasses::Vector3f;
+jmethodID jmeClasses::Vector3f_set;
+jmethodID jmeClasses::Vector3f_toArray;
+jmethodID jmeClasses::Vector3f_getX;
+jmethodID jmeClasses::Vector3f_getY;
+jmethodID jmeClasses::Vector3f_getZ;
+jfieldID jmeClasses::Vector3f_x;
+jfieldID jmeClasses::Vector3f_y;
+jfieldID jmeClasses::Vector3f_z;
+
+jclass jmeClasses::Quaternion;
+jmethodID jmeClasses::Quaternion_set;
+jmethodID jmeClasses::Quaternion_getX;
+jmethodID jmeClasses::Quaternion_getY;
+jmethodID jmeClasses::Quaternion_getZ;
+jmethodID jmeClasses::Quaternion_getW;
+jfieldID jmeClasses::Quaternion_x;
+jfieldID jmeClasses::Quaternion_y;
+jfieldID jmeClasses::Quaternion_z;
+jfieldID jmeClasses::Quaternion_w;
+
+jclass jmeClasses::Matrix3f;
+jmethodID jmeClasses::Matrix3f_set;
+jmethodID jmeClasses::Matrix3f_get;
+jfieldID jmeClasses::Matrix3f_m00;
+jfieldID jmeClasses::Matrix3f_m01;
+jfieldID jmeClasses::Matrix3f_m02;
+jfieldID jmeClasses::Matrix3f_m10;
+jfieldID jmeClasses::Matrix3f_m11;
+jfieldID jmeClasses::Matrix3f_m12;
+jfieldID jmeClasses::Matrix3f_m20;
+jfieldID jmeClasses::Matrix3f_m21;
+jfieldID jmeClasses::Matrix3f_m22;
+
+jclass jmeClasses::DebugMeshCallback;
+jmethodID jmeClasses::DebugMeshCallback_addVector;
+
+//private fields
+//JNIEnv* jmeClasses::env;
+JavaVM* jmeClasses::vm;
+
+void jmeClasses::initJavaClasses(JNIEnv* env) {
+// if (env != NULL) {
+// fprintf(stdout, "Check Java VM state\n");
+// fflush(stdout);
+// int res = vm->AttachCurrentThread((void**) &jmeClasses::env, NULL);
+// if (res < 0) {
+// fprintf(stdout, "** ERROR: getting Java env!\n");
+// if (res == JNI_EVERSION) fprintf(stdout, "GetEnv Error because of different JNI Version!\n");
+// fflush(stdout);
+// }
+// return;
+// }
+ if(PhysicsSpace!=NULL) return;
+ fprintf(stdout, "Bullet-Native: Initializing java classes\n");
+ fflush(stdout);
+// jmeClasses::env = env;
+ env->GetJavaVM(&vm);
+
+ PhysicsSpace = env->FindClass("com/jme3/bullet/PhysicsSpace");
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+
+ PhysicsSpace_preTick = env->GetMethodID(PhysicsSpace, "preTick_native", "(F)V");
+ PhysicsSpace_postTick = env->GetMethodID(PhysicsSpace, "postTick_native", "(F)V");
+ PhysicsSpace_addCollisionEvent = env->GetMethodID(PhysicsSpace, "addCollisionEvent","(Lcom/jme3/bullet/collision/PhysicsCollisionObject;Lcom/jme3/bullet/collision/PhysicsCollisionObject;J)V");
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+
+ PhysicsGhostObject = env->FindClass("com/jme3/bullet/objects/PhysicsGhostObject");
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ PhysicsGhostObject_addOverlappingObject = env->GetMethodID(PhysicsGhostObject, "addOverlappingObject","(Lcom/jme3/bullet/collision/PhysicsCollisionObject;)V");
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+
+ Vector3f = env->FindClass("com/jme3/math/Vector3f");
+ Vector3f_set = env->GetMethodID(Vector3f, "set", "(FFF)Lcom/jme3/math/Vector3f;");
+ Vector3f_toArray = env->GetMethodID(Vector3f, "toArray", "([F)[F");
+ Vector3f_getX = env->GetMethodID(Vector3f, "getX", "()F");
+ Vector3f_getY = env->GetMethodID(Vector3f, "getY", "()F");
+ Vector3f_getZ = env->GetMethodID(Vector3f, "getZ", "()F");
+ Vector3f_x = env->GetFieldID(Vector3f, "x", "F");
+ Vector3f_y = env->GetFieldID(Vector3f, "y", "F");
+ Vector3f_z = env->GetFieldID(Vector3f, "z", "F");
+
+ Quaternion = env->FindClass("com/jme3/math/Quaternion");
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ Quaternion_set = env->GetMethodID(Quaternion, "set", "(FFFF)Lcom/jme3/math/Quaternion;");
+ Quaternion_getW = env->GetMethodID(Quaternion, "getW", "()F");
+ Quaternion_getX = env->GetMethodID(Quaternion, "getX", "()F");
+ Quaternion_getY = env->GetMethodID(Quaternion, "getY", "()F");
+ Quaternion_getZ = env->GetMethodID(Quaternion, "getZ", "()F");
+ Quaternion_x = env->GetFieldID(Quaternion, "x", "F");
+ Quaternion_y = env->GetFieldID(Quaternion, "y", "F");
+ Quaternion_z = env->GetFieldID(Quaternion, "z", "F");
+ Quaternion_w = env->GetFieldID(Quaternion, "w", "F");
+
+ Matrix3f = env->FindClass("com/jme3/math/Matrix3f");
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ Matrix3f_set = env->GetMethodID(Matrix3f, "set", "(IIF)Lcom/jme3/math/Matrix3f;");
+ Matrix3f_get = env->GetMethodID(Matrix3f, "get", "(II)F");
+ Matrix3f_m00 = env->GetFieldID(Matrix3f, "m00", "F");
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ Matrix3f_m01 = env->GetFieldID(Matrix3f, "m01", "F");
+ Matrix3f_m02 = env->GetFieldID(Matrix3f, "m02", "F");
+ Matrix3f_m10 = env->GetFieldID(Matrix3f, "m10", "F");
+ Matrix3f_m11 = env->GetFieldID(Matrix3f, "m11", "F");
+ Matrix3f_m12 = env->GetFieldID(Matrix3f, "m12", "F");
+ Matrix3f_m20 = env->GetFieldID(Matrix3f, "m20", "F");
+ Matrix3f_m21 = env->GetFieldID(Matrix3f, "m21", "F");
+ Matrix3f_m22 = env->GetFieldID(Matrix3f, "m22", "F");
+
+ DebugMeshCallback = env->FindClass("com/jme3/bullet/util/DebugMeshCallback");
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+
+ DebugMeshCallback_addVector = env->GetMethodID(DebugMeshCallback, "addVector", "(FFFII)V");
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+}
+
+void jmeClasses::throwNPE(JNIEnv* env) {
+ if (env == NULL) return;
+ jclass newExc = env->FindClass("java/lang/NullPointerException");
+ env->ThrowNew(newExc, "");
+ return;
+}
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include <jni.h>
+
+/**
+ * Author: Normen Hansen
+ */
+
+class jmeClasses {
+public:
+ static void initJavaClasses(JNIEnv* env);
+// static JNIEnv* env;
+ static JavaVM* vm;
+ static jclass PhysicsSpace;
+ static jmethodID PhysicsSpace_preTick;
+ static jmethodID PhysicsSpace_postTick;
+ static jmethodID PhysicsSpace_addCollisionEvent;
+ static jclass PhysicsGhostObject;
+ static jmethodID PhysicsGhostObject_addOverlappingObject;
+
+ static jclass Vector3f;
+ static jmethodID Vector3f_set;
+ static jmethodID Vector3f_getX;
+ static jmethodID Vector3f_getY;
+ static jmethodID Vector3f_getZ;
+ static jmethodID Vector3f_toArray;
+ static jfieldID Vector3f_x;
+ static jfieldID Vector3f_y;
+ static jfieldID Vector3f_z;
+
+ static jclass Quaternion;
+ static jmethodID Quaternion_set;
+ static jmethodID Quaternion_getX;
+ static jmethodID Quaternion_getY;
+ static jmethodID Quaternion_getZ;
+ static jmethodID Quaternion_getW;
+ static jfieldID Quaternion_x;
+ static jfieldID Quaternion_y;
+ static jfieldID Quaternion_z;
+ static jfieldID Quaternion_w;
+
+ static jclass Matrix3f;
+ static jmethodID Matrix3f_get;
+ static jmethodID Matrix3f_set;
+ static jfieldID Matrix3f_m00;
+ static jfieldID Matrix3f_m01;
+ static jfieldID Matrix3f_m02;
+ static jfieldID Matrix3f_m10;
+ static jfieldID Matrix3f_m11;
+ static jfieldID Matrix3f_m12;
+ static jfieldID Matrix3f_m20;
+ static jfieldID Matrix3f_m21;
+ static jfieldID Matrix3f_m22;
+
+ static jclass DebugMeshCallback;
+ static jmethodID DebugMeshCallback_addVector;
+
+ static void throwNPE(JNIEnv* env);
+private:
+ jmeClasses(){};
+ ~jmeClasses(){};
+};
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include "jmeMotionState.h"
+#include "jmeBulletUtil.h"
+
+/**
+ * Author: Normen Hansen
+ */
+
+jmeMotionState::jmeMotionState() {
+ trans = new btTransform();
+ trans -> setIdentity();
+ worldTransform = *trans;
+ dirty = true;
+}
+
+void jmeMotionState::getWorldTransform(btTransform& worldTrans) const {
+ worldTrans = worldTransform;
+}
+
+void jmeMotionState::setWorldTransform(const btTransform& worldTrans) {
+ worldTransform = worldTrans;
+ dirty = true;
+}
+
+void jmeMotionState::setKinematicTransform(const btTransform& worldTrans) {
+ worldTransform = worldTrans;
+ dirty = true;
+}
+
+void jmeMotionState::setKinematicLocation(JNIEnv* env, jobject location) {
+ jmeBulletUtil::convert(env, location, &worldTransform.getOrigin());
+ dirty = true;
+}
+
+void jmeMotionState::setKinematicRotation(JNIEnv* env, jobject rotation) {
+ jmeBulletUtil::convert(env, rotation, &worldTransform.getBasis());
+ dirty = true;
+}
+
+void jmeMotionState::setKinematicRotationQuat(JNIEnv* env, jobject rotation) {
+ jmeBulletUtil::convertQuat(env, rotation, &worldTransform.getBasis());
+ dirty = true;
+}
+
+bool jmeMotionState::applyTransform(JNIEnv* env, jobject location, jobject rotation) {
+ if (dirty) {
+ // fprintf(stdout, "Apply world translation\n");
+ // fflush(stdout);
+ jmeBulletUtil::convert(env, &worldTransform.getOrigin(), location);
+ jmeBulletUtil::convertQuat(env, &worldTransform.getBasis(), rotation);
+ dirty = false;
+ return true;
+ }
+ return false;
+}
+
+jmeMotionState::~jmeMotionState() {
+ free(trans);
+}
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include <jni.h>
+
+/**
+ * Author: Normen Hansen
+ */
+
+#include "btBulletDynamicsCommon.h"
+//#include "btBulletCollisionCommon.h"
+
+class jmeMotionState : public btMotionState {
+private:
+ bool dirty;
+ btTransform* trans;
+public:
+ jmeMotionState();
+ virtual ~jmeMotionState();
+
+ btTransform worldTransform;
+ virtual void getWorldTransform(btTransform& worldTrans) const;
+ virtual void setWorldTransform(const btTransform& worldTrans);
+ void setKinematicTransform(const btTransform& worldTrans);
+ void setKinematicLocation(JNIEnv*, jobject);
+ void setKinematicRotation(JNIEnv*, jobject);
+ void setKinematicRotationQuat(JNIEnv*, jobject);
+ bool applyTransform(JNIEnv* env, jobject location, jobject rotation);
+};
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include "jmePhysicsSpace.h"
+#include "jmeBulletUtil.h"
+#include "jmeUserPointer.h"
+#include <stdio.h>
+/**
+ * Author: Normen Hansen
+ */
+jmePhysicsSpace::jmePhysicsSpace(JNIEnv* env, jobject javaSpace) {
+fprintf(stderr, "jmePhysicsSpace(JNIEnv* env, jobject javaSpace)\n");
+fflush(stderr);
+ //TODO: global ref? maybe not -> cleaning, rather callback class?
+ this->javaPhysicsSpace = env->NewGlobalRef(javaSpace);
+fprintf(stderr, "env->NewWeakGlobalRef(javaSpace)\n");
+fflush(stderr);
+ if (env->ExceptionCheck()) {
+fprintf(stderr, "env->ExceptionCheck() error\n");
+fflush(stderr);
+ //env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ this->env = env;
+fprintf(stderr, "env->GetJavaVM(&vm)\n");
+fflush(stderr);
+ env->GetJavaVM(&vm);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+}
+
+void jmePhysicsSpace::attachThread() {
+#ifdef ANDROID
+ vm->AttachCurrentThread(&env, NULL);
+#else
+ vm->AttachCurrentThread((void **)&env, NULL);
+#endif
+}
+
+JNIEnv* jmePhysicsSpace::getEnv() {
+ attachThread();
+ return this->env;
+}
+
+void jmePhysicsSpace::stepSimulation(jfloat tpf, jint maxSteps, jfloat accuracy) {
+ dynamicsWorld->stepSimulation(tpf, maxSteps, accuracy);
+}
+
+btThreadSupportInterface* jmePhysicsSpace::createSolverThreadSupport(int maxNumThreads) {
+#ifdef _WIN32
+ Win32ThreadSupport::Win32ThreadConstructionInfo threadConstructionInfo("solverThreads", SolverThreadFunc, SolverlsMemoryFunc, maxNumThreads);
+ Win32ThreadSupport* threadSupport = new Win32ThreadSupport(threadConstructionInfo);
+ threadSupport->startSPU();
+#elif defined (USE_PTHREADS)
+ PosixThreadSupport::ThreadConstructionInfo constructionInfo("collision", SolverThreadFunc,
+ SolverlsMemoryFunc, maxNumThreads);
+ PosixThreadSupport* threadSupport = new PosixThreadSupport(constructionInfo);
+ threadSupport->startSPU();
+#else
+ SequentialThreadSupport::SequentialThreadConstructionInfo tci("solverThreads", SolverThreadFunc, SolverlsMemoryFunc);
+ SequentialThreadSupport* threadSupport = new SequentialThreadSupport(tci);
+ threadSupport->startSPU();
+#endif
+ return threadSupport;
+}
+
+btThreadSupportInterface* jmePhysicsSpace::createDispatchThreadSupport(int maxNumThreads) {
+#ifdef _WIN32
+ Win32ThreadSupport::Win32ThreadConstructionInfo threadConstructionInfo("solverThreads", processCollisionTask, createCollisionLocalStoreMemory, maxNumThreads);
+ Win32ThreadSupport* threadSupport = new Win32ThreadSupport(threadConstructionInfo);
+ threadSupport->startSPU();
+#elif defined (USE_PTHREADS)
+ PosixThreadSupport::ThreadConstructionInfo solverConstructionInfo("solver", processCollisionTask,
+ createCollisionLocalStoreMemory, maxNumThreads);
+ PosixThreadSupport* threadSupport = new PosixThreadSupport(solverConstructionInfo);
+ threadSupport->startSPU();
+#else
+ SequentialThreadSupport::SequentialThreadConstructionInfo tci("solverThreads", processCollisionTask, createCollisionLocalStoreMemory);
+ SequentialThreadSupport* threadSupport = new SequentialThreadSupport(tci);
+ threadSupport->startSPU();
+#endif
+ return threadSupport;
+}
+
+void jmePhysicsSpace::createPhysicsSpace(jfloat minX, jfloat minY, jfloat minZ, jfloat maxX, jfloat maxY, jfloat maxZ, jint broadphaseId, jboolean threading) {
+ // collision configuration contains default setup for memory, collision setup
+ btDefaultCollisionConstructionInfo cci;
+ // if(threading){
+ // cci.m_defaultMaxPersistentManifoldPoolSize = 32768;
+ // }
+ collisionConfiguration = new btDefaultCollisionConfiguration(cci);
+
+ btVector3 min = btVector3(minX, minY, minZ);
+ btVector3 max = btVector3(maxX, maxY, maxZ);
+
+ // btBroadphaseInterface* broadphase;
+
+ switch (broadphaseId) {
+ case 0:
+ broadphase = new btSimpleBroadphase();
+ break;
+ case 1:
+ broadphase = new btAxisSweep3(min, max);
+ break;
+ case 2:
+ //TODO: 32bit!
+ broadphase = new btAxisSweep3(min, max);
+ break;
+ case 3:
+ broadphase = new btDbvtBroadphase();
+ break;
+ case 4:
+ // broadphase = new btGpu3DGridBroadphase(
+ // min, max,
+ // 20, 20, 20,
+ // 10000, 1000, 25);
+ break;
+ }
+
+ // btCollisionDispatcher* dispatcher;
+ // btConstraintSolver* solver;
+ // use the default collision dispatcher. For parallel processing you can use a diffent dispatcher (see Extras/BulletMultiThreaded)
+ if (threading) {
+ btThreadSupportInterface* dispatchThreads = createDispatchThreadSupport(4);
+ dispatcher = new SpuGatheringCollisionDispatcher(dispatchThreads, 4, collisionConfiguration);
+ dispatcher->setDispatcherFlags(btCollisionDispatcher::CD_DISABLE_CONTACTPOOL_DYNAMIC_ALLOCATION);
+ } else {
+ dispatcher = new btCollisionDispatcher(collisionConfiguration);
+ }
+
+ // the default constraint solver. For parallel processing you can use a different solver (see Extras/BulletMultiThreaded)
+ if (threading) {
+ btThreadSupportInterface* solverThreads = createSolverThreadSupport(4);
+ solver = new btParallelConstraintSolver(solverThreads);
+ } else {
+ solver = new btSequentialImpulseConstraintSolver;
+ }
+
+ //create dynamics world
+ btDiscreteDynamicsWorld* world = new btDiscreteDynamicsWorld(dispatcher, broadphase, solver, collisionConfiguration);
+ dynamicsWorld = world;
+ dynamicsWorld->setWorldUserInfo(this);
+
+ //parallel solver requires the contacts to be in a contiguous pool, so avoid dynamic allocation
+ if (threading) {
+ world->getSimulationIslandManager()->setSplitIslands(false);
+ world->getSolverInfo().m_numIterations = 4;
+ world->getSolverInfo().m_solverMode = SOLVER_SIMD + SOLVER_USE_WARMSTARTING; //+SOLVER_RANDMIZE_ORDER;
+ world->getDispatchInfo().m_enableSPU = true;
+ }
+ ghostPairCallback = new btGhostPairCallback();
+ broadphase->getOverlappingPairCache()->setInternalGhostPairCallback(ghostPairCallback);
+
+ dynamicsWorld->setGravity(btVector3(0, -9.81f, 0));
+
+ struct jmeFilterCallback : public btOverlapFilterCallback {
+ // return true when pairs need collision
+
+ virtual bool needBroadphaseCollision(btBroadphaseProxy* proxy0, btBroadphaseProxy * proxy1) const {
+// bool collides = (proxy0->m_collisionFilterGroup & proxy1->m_collisionFilterMask) != 0;
+// collides = collides && (proxy1->m_collisionFilterGroup & proxy0->m_collisionFilterMask);
+ bool collides = (proxy0->m_collisionFilterGroup & proxy1->m_collisionFilterMask) != 0;
+ collides = collides && (proxy1->m_collisionFilterGroup & proxy0->m_collisionFilterMask);
+ if (collides) {
+ btCollisionObject* co0 = (btCollisionObject*)proxy0->m_clientObject;
+ btCollisionObject* co1 = (btCollisionObject*)proxy1->m_clientObject;
+ jmeUserPointer *up0 = (jmeUserPointer*)co0 -> getUserPointer();
+ jmeUserPointer *up1 = (jmeUserPointer*)co1 -> getUserPointer();
+ if (up0 != NULL && up1 != NULL) {
+ collides = (up0->group & up1->groups) != 0;
+ collides = collides && (up1->group & up0->groups);
+
+ //add some additional logic here that modified 'collides'
+ return collides;
+ }
+ return false;
+ }
+ return collides;
+ }
+ };
+ dynamicsWorld->getPairCache()->setOverlapFilterCallback(new jmeFilterCallback());
+ dynamicsWorld->setInternalTickCallback(&jmePhysicsSpace::preTickCallback, static_cast<void *> (this), true);
+ dynamicsWorld->setInternalTickCallback(&jmePhysicsSpace::postTickCallback, static_cast<void *> (this));
+ if (gContactProcessedCallback == NULL) {
+ gContactProcessedCallback = &jmePhysicsSpace::contactProcessedCallback;
+ }
+}
+
+void jmePhysicsSpace::preTickCallback(btDynamicsWorld *world, btScalar timeStep) {
+ jmePhysicsSpace* dynamicsWorld = (jmePhysicsSpace*) world->getWorldUserInfo();
+ JNIEnv* env = dynamicsWorld->getEnv();
+ jobject javaPhysicsSpace = env->NewLocalRef(dynamicsWorld->getJavaPhysicsSpace());
+ if (javaPhysicsSpace != NULL) {
+ env->CallVoidMethod(javaPhysicsSpace, jmeClasses::PhysicsSpace_preTick, timeStep);
+ env->DeleteLocalRef(javaPhysicsSpace);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ }
+}
+
+void jmePhysicsSpace::postTickCallback(btDynamicsWorld *world, btScalar timeStep) {
+ jmePhysicsSpace* dynamicsWorld = (jmePhysicsSpace*) world->getWorldUserInfo();
+ JNIEnv* env = dynamicsWorld->getEnv();
+ jobject javaPhysicsSpace = env->NewLocalRef(dynamicsWorld->getJavaPhysicsSpace());
+ if (javaPhysicsSpace != NULL) {
+ env->CallVoidMethod(javaPhysicsSpace, jmeClasses::PhysicsSpace_postTick, timeStep);
+ env->DeleteLocalRef(javaPhysicsSpace);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return;
+ }
+ }
+}
+bool jmePhysicsSpace::contactProcessedCallback(btManifoldPoint &cp, void *body0, void *body1) {
+// printf("contactProcessedCallback %d %d\n", body0, body1);
+ btCollisionObject* co0 = (btCollisionObject*)body0;
+ jmeUserPointer *up0 = (jmeUserPointer*)co0 -> getUserPointer();
+ btCollisionObject* co1 = (btCollisionObject*)body1;
+ jmeUserPointer *up1 = (jmeUserPointer*)co1 -> getUserPointer();
+ if (up0 != NULL) {
+ jmePhysicsSpace *dynamicsWorld = up0->space;
+ if (dynamicsWorld != NULL) {
+ JNIEnv* env = dynamicsWorld->getEnv();
+ jobject javaPhysicsSpace = env->NewLocalRef(dynamicsWorld->getJavaPhysicsSpace());
+ if (javaPhysicsSpace != NULL) {
+ jobject javaCollisionObject0 = env->NewLocalRef(up0->javaCollisionObject);
+ jobject javaCollisionObject1 = env->NewLocalRef(up1->javaCollisionObject);
+ env->CallVoidMethod(javaPhysicsSpace, jmeClasses::PhysicsSpace_addCollisionEvent, javaCollisionObject0, javaCollisionObject1, reinterpret_cast<jlong>(&cp));
+ env->DeleteLocalRef(javaPhysicsSpace);
+ env->DeleteLocalRef(javaCollisionObject0);
+ env->DeleteLocalRef(javaCollisionObject1);
+ if (env->ExceptionCheck()) {
+ env->Throw(env->ExceptionOccurred());
+ return true;
+ }
+ }
+ }
+ }
+ return true;
+}
+btDynamicsWorld* jmePhysicsSpace::getDynamicsWorld() {
+ return dynamicsWorld;
+}
+
+jobject jmePhysicsSpace::getJavaPhysicsSpace() {
+ return javaPhysicsSpace;
+}
+
+jmePhysicsSpace::~jmePhysicsSpace() {
+ delete dispatcher;
+ delete solver;
+ delete broadphase;
+ delete collisionConfiguration;
+ delete ghostPairCallback;
+ delete(dynamicsWorld);
+ getEnv()->DeleteGlobalRef(this->javaPhysicsSpace);
+}
--- /dev/null
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include <jni.h>
+#include "btBulletDynamicsCommon.h"
+#include "btBulletCollisionCommon.h"
+#include "BulletCollision/CollisionDispatch/btCollisionDispatcher.h"
+#include "BulletCollision/CollisionDispatch/btCollisionObject.h"
+#include "BulletCollision/CollisionDispatch/btGhostObject.h"
+#include "BulletDynamics/Character/btKinematicCharacterController.h"
+#ifdef _WIN32
+#include "BulletMultiThreaded/Win32ThreadSupport.h"
+#else
+#include "BulletMultiThreaded/PosixThreadSupport.h"
+#endif
+#include "BulletMultiThreaded/btParallelConstraintSolver.h"
+#include "BulletMultiThreaded/SpuGatheringCollisionDispatcher.h"
+#include "BulletMultiThreaded/SpuCollisionTaskProcess.h"
+#include "BulletMultiThreaded/SequentialThreadSupport.h"
+#include "BulletCollision/CollisionDispatch/btSimulationIslandManager.h"
+#include "BulletCollision/NarrowPhaseCollision/btManifoldPoint.h"
+#include "BulletCollision/NarrowPhaseCollision/btPersistentManifold.h"
+
+/**
+ * Author: Normen Hansen
+ */
+class jmePhysicsSpace {
+private:
+ JNIEnv* env;
+ JavaVM* vm;
+ btDynamicsWorld* dynamicsWorld;
+
+ btCollisionDispatcher* dispatcher;
+ btConstraintSolver* solver;
+ btBroadphaseInterface* broadphase;
+ btCollisionConfiguration* collisionConfiguration;
+ btOverlappingPairCallback *ghostPairCallback;
+
+ jobject javaPhysicsSpace;
+ btThreadSupportInterface* createSolverThreadSupport(int);
+ btThreadSupportInterface* createDispatchThreadSupport(int);
+ void attachThread();
+public:
+ jmePhysicsSpace(){};
+ ~jmePhysicsSpace();
+ jmePhysicsSpace(JNIEnv*, jobject);
+ void stepSimulation(jfloat, jint, jfloat);
+ void createPhysicsSpace(jfloat, jfloat, jfloat, jfloat, jfloat, jfloat, jint, jboolean);
+ btDynamicsWorld* getDynamicsWorld();
+ jobject getJavaPhysicsSpace();
+ JNIEnv* getEnv();
+ static void preTickCallback(btDynamicsWorld*, btScalar);
+ static void postTickCallback(btDynamicsWorld*, btScalar);
+ static bool contactProcessedCallback(btManifoldPoint &, void *, void *);
+};
--- /dev/null
+#ifndef _Included_jmeUserPointer
+#define _Included_jmeUserPointer
+#include <jni.h>
+class jmeUserPointer {
+public:
+ jobject javaCollisionObject;
+ jint group;
+ jint groups;
+ jmePhysicsSpace *space;
+};
+#endif
--- /dev/null
+Classes that differ from the jbullet implementation:
+- com.jme3.bullet.PhysicsSpace
+- com.jme3.bullet.collision.PhysicsCollisionObject
+- All classes in com.jme3.bullet.objects
+- All classes in com.jme3.bullet.joints
+- All classes in com.jme3.bullet.collision.shapes
--- /dev/null
+#include "projectkyoto_jme3_mmd_nativelib_SkinUtil.h"
+#include <memory.h>
+#include <string.h>
+#include <math.h>
+/*
+ * Class: projectkyoto_jme3_mmd_SkinUtil
+ * Method: copy
+ * Signature: (Ljava/nio/Buffer;Ljava/nio/Buffer;I)V
+ */
+JNIEXPORT void JNICALL Java_projectkyoto_jme3_mmd_nativelib_SkinUtil_copy
+ (JNIEnv *env, jclass clazz, jobject src, jobject dist, jint size) {
+ memcpy(env->GetDirectBufferAddress(dist), env->GetDirectBufferAddress(src), size);
+}
+
+/*
+ * Class: projectkyoto_jme3_mmd_nativelib_SkinUtil
+ * Method: setSkin
+ * Signature: (Ljava/nio/FloatBuffer;Ljava/nio/ShortBuffer;Ljava/nio/FloatBuffer;F)V
+ */
+JNIEXPORT void JNICALL Java_projectkyoto_jme3_mmd_nativelib_SkinUtil_setSkin
+ (JNIEnv *env, jclass clazz, jobject buf, jobject indexBuf, jobject skinBuf, jfloat weight) {
+ jfloat *dist = (jfloat *)env->GetDirectBufferAddress(buf);
+ jshort *ip = (jshort *)env->GetDirectBufferAddress(indexBuf);
+ jfloat *skin = (jfloat *)env->GetDirectBufferAddress(skinBuf);
+ jlong size = env->GetDirectBufferCapacity(indexBuf);
+ for(int i=0;i<size;i++) {
+ int index = ip[i];
+ jfloat *p1 = &dist[index * 3];
+ jfloat *p2 = &skin[i * 3];
+ *p1 = *p1 + *p2 * weight;
+ p1++;
+ p2++;
+ *p1 = *p1 + *p2 * weight;
+ p1++;
+ p2++;
+ *p1 = *p1 + *p2 * weight;
+ }
+}
+JNIEXPORT void JNICALL Java_projectkyoto_jme3_mmd_nativelib_SkinUtil_copyBoneMatrix
+ (JNIEnv *env, jclass clazz, jobject srcBuf, jobject distBuf, jobject indexBuf) {
+ jfloat *src = (jfloat *)env->GetDirectBufferAddress(srcBuf);
+ jfloat *dist = (jfloat *)env->GetDirectBufferAddress(distBuf);
+ jshort *index = (jshort *)env->GetDirectBufferAddress(indexBuf);
+ jlong size = env->GetDirectBufferCapacity(indexBuf);
+ jfloat *p = dist;
+ for(int i=0;i<size;i++) {
+ memcpy(p, src + index[i] * 16, sizeof(jfloat) * 16);
+ p += 16;
+ }
+}
+/*
+ * Class: projectkyoto_jme3_mmd_nativelib_SkinUtil
+ * Method: clear
+ * Signature: (Ljava/nio/Buffer;)V
+ */
+JNIEXPORT void JNICALL Java_projectkyoto_jme3_mmd_nativelib_SkinUtil_clear
+ (JNIEnv *env, jclass clazz, jobject buf) {
+ jfloat *src = (jfloat *)env->GetDirectBufferAddress(buf);
+ jlong size = env->GetDirectBufferCapacity(buf);
+ memset(src, 0, size);
+}
+
--- /dev/null
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class projectkyoto_jme3_mmd_nativelib_SkinUtil */
+
+#ifndef _Included_projectkyoto_jme3_mmd_nativelib_SkinUtil
+#define _Included_projectkyoto_jme3_mmd_nativelib_SkinUtil
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: projectkyoto_jme3_mmd_nativelib_SkinUtil
+ * Method: copy
+ * Signature: (Ljava/nio/Buffer;Ljava/nio/Buffer;I)V
+ */
+JNIEXPORT void JNICALL Java_projectkyoto_jme3_mmd_nativelib_SkinUtil_copy
+ (JNIEnv *, jclass, jobject, jobject, jint);
+
+/*
+ * Class: projectkyoto_jme3_mmd_nativelib_SkinUtil
+ * Method: setSkin
+ * Signature: (Ljava/nio/FloatBuffer;Ljava/nio/ShortBuffer;Ljava/nio/FloatBuffer;F)V
+ */
+JNIEXPORT void JNICALL Java_projectkyoto_jme3_mmd_nativelib_SkinUtil_setSkin
+ (JNIEnv *, jclass, jobject, jobject, jobject, jfloat);
+
+/*
+ * Class: projectkyoto_jme3_mmd_nativelib_SkinUtil
+ * Method: copyBoneMatrix
+ * Signature: (Ljava/nio/FloatBuffer;Ljava/nio/FloatBuffer;Ljava/nio/ShortBuffer;)V
+ */
+JNIEXPORT void JNICALL Java_projectkyoto_jme3_mmd_nativelib_SkinUtil_copyBoneMatrix
+ (JNIEnv *, jclass, jobject, jobject, jobject);
+
+/*
+ * Class: projectkyoto_jme3_mmd_nativelib_SkinUtil
+ * Method: clear
+ * Signature: (Ljava/nio/Buffer;)V
+ */
+JNIEXPORT void JNICALL Java_projectkyoto_jme3_mmd_nativelib_SkinUtil_clear
+ (JNIEnv *, jclass, jobject);
+
+#ifdef __cplusplus
+}
+#endif
+#endif