diff --git a/Demos/CMakeLists.txt b/Demos/CMakeLists.txt index f12ac4a2e..f24f9ac4f 100644 --- a/Demos/CMakeLists.txt +++ b/Demos/CMakeLists.txt @@ -1,7 +1,7 @@ if (CMAKE_SIZEOF_VOID_P MATCHES "8") SUBDIRS( OpenGL AllBulletDemos ConvexDecompositionDemo Benchmarks HelloWorld CcdPhysicsDemo ConstraintDemo SliderConstraintDemo GenericJointDemo Raytracer -RagdollDemo ForkLiftDemo BasicDemo Box2dDemo Gpu2dDemo BspDemo MovingConcaveDemo VehicleDemo +RagdollDemo ForkLiftDemo BasicDemo Box2dDemo Gpu2dDemo Gpu3dDemo MiniCL_VectorAdd BspDemo MovingConcaveDemo VehicleDemo ColladaDemo UserCollisionAlgorithm CharacterDemo SoftDemo HeightFieldFluidDemo CollisionInterfaceDemo ConcaveConvexcastDemo SimplexDemo DynamicControlDemo DoublePrecisionDemo ConcaveDemo CollisionDemo @@ -10,7 +10,7 @@ MultiMaterialDemo) else (CMAKE_SIZEOF_VOID_P MATCHES "8") SUBDIRS( OpenGL AllBulletDemos ConvexDecompositionDemo Benchmarks HelloWorld MultiThreadedDemo CcdPhysicsDemo ConstraintDemo SliderConstraintDemo Raytracer -GenericJointDemo RagdollDemo ForkLiftDemo BasicDemo Box2dDemo Gpu2dDemo BspDemo MovingConcaveDemo +GenericJointDemo RagdollDemo ForkLiftDemo BasicDemo Box2dDemo Gpu2dDemo Gpu3dDemo MiniCL_VectorAdd BspDemo MovingConcaveDemo VehicleDemo ColladaDemo UserCollisionAlgorithm CharacterDemo SoftDemo HeightFieldFluidDemo CollisionInterfaceDemo ConcaveConvexcastDemo SimplexDemo DynamicControlDemo diff --git a/Demos/Gpu3dDemo/BasicDemo3d.cpp b/Demos/Gpu3dDemo/BasicDemo3d.cpp index 52dcb37e4..d57f900fb 100644 --- a/Demos/Gpu3dDemo/BasicDemo3d.cpp +++ b/Demos/Gpu3dDemo/BasicDemo3d.cpp @@ -196,7 +196,7 @@ void BasicDemo3D::initPhysics() ///use the default collision dispatcher. For parallel processing you can use a diffent dispatcher (see Extras/BulletMultiThreaded) //m_dispatcher = new btCollisionDispatcher(m_collisionConfiguration); -#ifdef SINGLE_THREADED_NARROWPHASE +#ifndef WIN32 m_dispatcher = new btCollisionDispatcher(m_collisionConfiguration); #else unsigned int maxNumOutstandingTasks =4; diff --git a/Demos/Gpu3dDemo/Jamfile b/Demos/Gpu3dDemo/Jamfile new file mode 100644 index 000000000..f3b11c844 --- /dev/null +++ b/Demos/Gpu3dDemo/Jamfile @@ -0,0 +1,3 @@ +SubDir TOP Demos Gpu3dDemo ; + +BulletDemo Gpu3dDemo : [ Wildcard *.h *.cpp ] ; diff --git a/Demos/Jamfile b/Demos/Jamfile index 7173c38cb..e50e2ea81 100644 --- a/Demos/Jamfile +++ b/Demos/Jamfile @@ -44,6 +44,18 @@ rule BulletSoftBodyDemo "../../src" ; } + rule BulletMiniCLDemo + { + Application $(<) : $(>) : noinstall console nomanifest ; + LinkWith $(<) : bulletmultithreaded bulletmath ; + CFlags $(<) : + [ FIncludes $(TOP)/src ] + ; + MsvcIncDirs $(<) : + "../../src" ; + } + + if $(GLUT.AVAILABLE) = "yes" { # All demo apps have a lot in common, so use this rule to simply things @@ -79,10 +91,12 @@ SubInclude TOP Demos ForkLiftDemo ; SubInclude TOP Demos BulletDinoDemo ; SubInclude TOP Demos EPAPenDepthDemo ; SubInclude TOP Demos HelloWorld ; +SubInclude TOP Demos MiniCL_VectorAdd ; SubInclude TOP Demos BspDemo ; SubInclude TOP Demos BasicDemo ; SubInclude TOP Demos Box2dDemo ; SubInclude TOP Demos Gpu2dDemo ; +SubInclude TOP Demos Gpu3dDemo ; SubInclude TOP Demos ConvexDecompositionDemo ; SubInclude TOP Demos ColladaDemo ; SubInclude TOP Demos CharacterDemo ; diff --git a/Demos/MiniCL_VectorAdd/Jamfile b/Demos/MiniCL_VectorAdd/Jamfile new file mode 100644 index 000000000..53ed64874 --- /dev/null +++ b/Demos/MiniCL_VectorAdd/Jamfile @@ -0,0 +1,5 @@ +SubDir TOP Demos MiniCL_VectorAdd ; + +BulletMiniCLDemo MiniCL_VectorAdd : [ Wildcard *.h *.cpp ] ; + +MsvcIncDirs MiniCL_VectorAdd : "../../src" ; diff --git a/src/BulletMultiThreaded/CMakeLists.txt b/src/BulletMultiThreaded/CMakeLists.txt index 606e33f43..07017c81f 100644 --- a/src/BulletMultiThreaded/CMakeLists.txt +++ b/src/BulletMultiThreaded/CMakeLists.txt @@ -66,6 +66,25 @@ ADD_LIBRARY(BulletMultiThreaded SpuRaycastTask/SpuRaycastTask.h SpuRaycastTask/SpuSubSimplexConvexCast.cpp SpuRaycastTask/SpuSubSimplexConvexCast.h + +#Some GPU related stuff, mainly CUDA and perhaps OpenCL + btGpu3DGridBroadphase.cpp + btGpu3DGridBroadphase.h + btGpu3DGridBroadphaseSharedCode.h + btGpu3DGridBroadphaseSharedDefs.h + btGpu3DGridBroadphaseSharedTypes.h + btGpuDefines.h + btGpuUtilsSharedCode.h + btGpuUtilsSharedDefs.h + +#MiniCL provides a small subset of OpenCL + MiniCLTaskScheduler.cpp + MiniCLTaskScheduler.h + MiniCLTask/MiniCLTask.cpp + MiniCLTask/MiniCLTask.h + ../MiniCL/cl.h + ../MiniCL/cl_gl.h + ../MiniCL/cl_platform.h ) IF (BUILD_SHARED_LIBS) diff --git a/src/BulletMultiThreaded/Jamfile b/src/BulletMultiThreaded/Jamfile index ffe1fb1ab..907d74556 100644 --- a/src/BulletMultiThreaded/Jamfile +++ b/src/BulletMultiThreaded/Jamfile @@ -2,7 +2,7 @@ SubDir TOP src BulletMultiThreaded ; #IncludeDir src/BulletMultiThreaded ; -Library bulletmultithreaded : [ Wildcard . : *.h *.cpp ] [ Wildcard SpuNarrowPhaseCollisionTask : *.h *.cpp ] [ Wildcard SpuSolverTask : *.h *.cpp ] : noinstall ; +Library bulletmultithreaded : [ Wildcard . : *.h *.cpp ] [ Wildcard MiniCLTask : *.h *.cpp ] [ Wildcard SpuNarrowPhaseCollisionTask : *.h *.cpp ] [ Wildcard SpuSolverTask : *.h *.cpp ] : noinstall ; CFlags bulletmultithreaded : [ FIncludes $(TOP)/src/BulletMultiThreaded ] [ FIncludes $(TOP)/src/BulletMultiThreaded/vectormath/scalar/cpp ] ; LibDepends bulletmultithreaded : ;