From fa4394c378a0a30b4ceba1f26a8e7747d8a0128c Mon Sep 17 00:00:00 2001 From: Erwin Coumans Date: Wed, 19 Jun 2013 23:14:02 -0700 Subject: [PATCH] remove bullet2.patch, the file is not necessary anymore. You can use Bullet 3.x standalone, or you can use Bullet3+Bullet2 by checking out the source code of both repositories at the same location, and then use premake --bullet2gpu gmake (or vs2010, xcode4) to generate the combined project, with App_BasicGpuDemo_* test app. --- bullet2.patch | 486 -------------------------------------------------- 1 file changed, 486 deletions(-) delete mode 100644 bullet2.patch diff --git a/bullet2.patch b/bullet2.patch deleted file mode 100644 index 64c1e3ec7..000000000 --- a/bullet2.patch +++ /dev/null @@ -1,486 +0,0 @@ -Index: build/findOpenCL.lua -=================================================================== ---- build/findOpenCL.lua (revision 2640) -+++ build/findOpenCL.lua (working copy) -@@ -1,5 +1,14 @@ -- -- todo: add Apple OpenCL environment vars - -+ -+ function findOpenCL_Apple() -+ if os.is("macosx") then -+ return true -+ else -+ return false -+ end -+ end -+ -+ - function findOpenCL_AMD() - local amdopenclpath = os.getenv("AMDAPPSDKROOT") - if (amdopenclpath) then -@@ -17,13 +26,33 @@ - end - - function findOpenCL_Intel() -- local intelopenclpath = os.getenv("INTELOCLSDKROOT") -- if (intelopenclpath) then -+ if os.is("Windows") then -+ local intelopenclpath = os.getenv("INTELOCLSDKROOT") -+ if (intelopenclpath) then - return true -+ end - end -+ if os.is("Linux") then -+ local intelsdk = io.open("/usr/include/CL/opencl.h","r") -+ if (intelsdk) then -+ return true; -+ end -+ end - return false - end -- -+ -+ function initOpenCL_Apple() -+ configuration{} -+ includedirs { -+ "/System/Library/Frameworks/OpenCL.framework" -+ } -+ libdirs "/System/Library/Frameworks/OpenCL.framework" -+ links -+ { -+ "OpenCL.framework" -+ } -+ end -+ - function initOpenCL_AMD() - configuration {} - local amdopenclpath = os.getenv("AMDAPPSDKROOT") -@@ -65,6 +94,7 @@ - - function initOpenCL_Intel() - configuration {} -+ if os.is("Windows") then - local intelopenclpath = os.getenv("INTELOCLSDKROOT") - if (intelopenclpath) then - defines { "ADL_ENABLE_CL" , "CL_PLATFORM_INTEL"} -@@ -79,6 +109,43 @@ - links {"OpenCL"} - return true - end -+ end -+ if os.is("Linux") then -+ defines { "ADL_ENABLE_CL" , "CL_PLATFORM_INTEL"} -+ configuration {} -+ links {"OpenCL"} -+ end - return false - end -- -\ No newline at end of file -+ -+ function findOpenCL (vendor ) -+ if vendor=="AMD" then -+ return findOpenCL_AMD() -+ end -+ if vendor=="NVIDIA" then -+ return findOpenCL_NVIDIA() -+ end -+ if vendor=="Intel" then -+ return findOpenCL_Intel() -+ end -+ if vendor=="Apple" then -+ return findOpenCL_Apple() -+ end -+ return false -+ end -+ -+ function initOpenCL ( vendor ) -+ if vendor=="AMD" then -+ initOpenCL_AMD() -+ end -+ if vendor=="NVIDIA" then -+ return initOpenCL_NVIDIA() -+ end -+ if vendor=="Intel" then -+ initOpenCL_Intel() -+ end -+ if vendor=="Apple" then -+ return initOpenCL_Apple() -+ end -+ end -+ -Index: build/premake4.lua -=================================================================== ---- build/premake4.lua (revision 2640) -+++ build/premake4.lua (working copy) -@@ -1,102 +1,47 @@ ----add the 0 so the solution comes first in the directory (when sorted on name) ----print "uncomment this hello premake4 world for debugging the script" - --solution "0BulletSolution" -+ solution "0MySolution" - -- newoption { -- trigger = "ios", -- description = "Enable iOS target (requires xcode4)" -- } -- -- newoption { -- trigger = "without-demos", -- description = "Disable demos and extras" -- } -+ -- Multithreaded compiling -+ if _ACTION == "vs2010" or _ACTION=="vs2008" then -+ buildoptions { "/MP" } -+ end -+ -+ act = "" -+ -+ if _ACTION then -+ act = _ACTION -+ end - -- newoption { -- trigger = "with-double-precision", -- description = "Enable double precision build" -- } - -- -- newoption { -- trigger = "with-nacl", -- description = "Enable Native Client build" -- } -+ newoption -+ { -+ trigger = "ios", -+ description = "Enable iOS target (requires xcode4)" -+ } -+ -+ newoption -+ { -+ trigger = "bullet2gpu", -+ description = "Enable Bullet 2.x GPU using b3GpuDynamicsWorld bridge to Bullet 3.x" -+ } - -- newoption { -- trigger = "with-dx11", -- description = "Enable DirectX11 build" -- } -- -- newoption { -- trigger = "with-opencl", -- description = "Enable OpenCL builds (various SDKs)" -- } -- -- newoption { -- trigger = "with-opencl-amd", -- description = "Enable OpenCL builds (AMD SDK)" -- } -- -- newoption { -- trigger = "with-opencl-intel", -- description = "Enable OpenCL builds (Intel SDK)" -- } -- newoption { -- trigger = "with-opencl-nvidia", -- description = "Enable OpenCL builds (NVIDIA SDK)" -- } -- -- - configurations {"Release", "Debug"} - configuration "Release" -- flags { "Optimize", "EnableSSE", "StaticRuntime", "NoMinimalRebuild", "FloatFast"} -+ flags { "Optimize", "EnableSSE","StaticRuntime", "NoMinimalRebuild", "FloatFast"} - configuration "Debug" -+ defines {"_DEBUG=1"} - flags { "Symbols", "StaticRuntime" , "NoMinimalRebuild", "NoEditAndContinue" ,"FloatFast"} - -- platforms {"x32", "x64"} -- --platforms {"x32"} -- -- configuration {"Windows"} -- defines { "_CRT_SECURE_NO_WARNINGS","_CRT_SECURE_NO_DEPRECATE"} -- -- configuration{} -- -- postfix=""; -- -- if _OPTIONS["with-double-precision"] then -- defines {"BT_USE_DOUBLE_PRECISION"} -- end -- -- if _ACTION == "xcode4" then -- if _OPTIONS["ios"] then -- postfix = "ios"; -- xcodebuildsettings -- { -- 'INFOPLIST_FILE = "../../Test/Info.plist"', -- 'CODE_SIGN_IDENTITY = "iPhone Developer"', -- "SDKROOT = iphoneos", -- 'ARCHS = "armv7"', -- 'TARGETED_DEVICE_FAMILY = "1,2"', -- 'VALID_ARCHS = "armv7"', -- } -- else -- xcodebuildsettings -- { -- 'ARCHS = "$(ARCHS_STANDARD_32_BIT) $(ARCHS_STANDARD_64_BIT)"', -- 'VALID_ARCHS = "x86_64 i386"', -- } -+ if os.is("Linux") then -+ if os.is64bit() then -+ platforms {"x64"} -+ else -+ platforms {"x32"} - end - else -- -+ platforms {"x32", "x64"} - end - -- act = "" -- -- if _ACTION then -- act = _ACTION -- end - configuration {"x32"} - targetsuffix ("_" .. act) - configuration "x64" -@@ -110,89 +55,91 @@ - - configuration{} - -+ postfix="" - -+ if _ACTION == "xcode4" then -+ if _OPTIONS["ios"] then -+ postfix = "ios"; -+ xcodebuildsettings -+ { -+ 'CODE_SIGN_IDENTITY = "iPhone Developer"', -+ "SDKROOT = iphoneos", -+ 'ARCHS = "armv7"', -+ 'TARGETED_DEVICE_FAMILY = "1,2"', -+ 'VALID_ARCHS = "armv7"', -+ } -+ else -+ xcodebuildsettings -+ { -+ 'ARCHS = "$(ARCHS_STANDARD_32_BIT) $(ARCHS_STANDARD_64_BIT)"', -+ 'VALID_ARCHS = "x86_64 i386"', -+ } -+ end -+ end - --if not _OPTIONS["with-nacl"] then -- -- flags { "NoRTTI"} -+ -+ flags { "NoRTTI", "NoExceptions"} -+ defines { "_HAS_EXCEPTIONS=0" } - targetdir "../bin" -+ location("./" .. act .. postfix) - -- -- Disable exception handling on MSVC 2008 and higher. MSVC 2005 without service pack has some linker issue (ConvexDecompositionDemo uses STL through HACD library) -- if _ACTION == "vs2010" or _ACTION=="vs2008" then -- flags { "NoExceptions"} -- defines { "_HAS_EXCEPTIONS=0" } -- end -+ -+ projectRootDir = os.getcwd() .. "/../" -+ print("Project root directroy: " .. projectRootDir); - -- -- Multithreaded compiling -- if _ACTION == "vs2010" then -- buildoptions { "/MP" } -- end -- -- --else -- targetdir "../bin_html" --end -- -- - dofile ("findOpenCL.lua") - dofile ("findDirectX11.lua") -+ dofile ("findOpenGLGlewGlut.lua") - - language "C++" - -- location("./" .. act .. postfix) - -+ -+ if not _OPTIONS["ios"] then -+-- include "../demo/gpudemo" -+-- include "../btgui/MidiTest" -+-- include "../opencl/vector_add_simplified" -+-- include "../opencl/vector_add" -+ include "../btgui/Gwen" -+ include "../btgui/GwenOpenGLTest" -+ -+ include "../test/OpenCL/BasicInitialize" -+-- include "../test/OpenCL/BroadphaseCollision" -+-- include "../test/OpenCL/NarrowphaseCollision" -+ include "../test/OpenCL/ParallelPrimitives" -+ include "../test/OpenCL/RadixSortBenchmark" -+ include "../test/OpenCL/BitonicSort" -+ -+ include "../src/Bullet3Dynamics" -+ include "../src/Bullet3Common" -+ include "../src/Bullet3Geometry" -+ include "../src/Bullet3Collision" -+ include "../src/Bullet3Serialize/Bullet2FileLoader" - -- if _OPTIONS["with-dx11"] then -- include "../Demos/DX11ClothDemo" -- include "../src/BulletMultiThreaded/GpuSoftBodySolvers/DX11" -- end -+ include "../src/Bullet3OpenCL" -+ include "../Demos3/GpuDemos" -+ -+-- include "../demo/gpu_initialize" -+-- include "../opencl/lds_bank_conflict" -+-- include "../opencl/reduce" -+-- include "../btgui/OpenGLTrueTypeFont" -+-- include "../btgui/OpenGLWindow" -+-- include "../demo/ObjLoader" - ----choose any OpenCL sdk that is installed on the system -- if _OPTIONS["with-opencl"] then -- include "../Demos/OpenCLClothDemo/AMD" -- include "../src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/AMD" -- include "../Demos/OpenCLClothDemo/NVidia" -- include "../src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/NVidia" -- include "../Demos/OpenCLClothDemo/Intel" -- include "../src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/Intel" -- end -+ -+-- include "../test/b3DynamicBvhBroadphase" -+ - ----choose a particular OpenCL sdk, this is useful for distributing project files that just work for one OpenCL SDK -- if _OPTIONS["with-opencl-amd"] then -- include "../Demos/OpenCLClothDemo/AMD" -- include "../Demos/OpenGL" -- include "../Demos/SoftDemo/AMD" -- include "../src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/AMD" -- end -- -- if _OPTIONS["with-opencl-intel"] then -- include "../Demos/OpenCLClothDemo/Intel" -- include "../src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/Intel" -- end -+ - -- if _OPTIONS["with-opencl-nvidia"] then -- include "../Demos/OpenCLClothDemo/NVidia" -- include "../src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/NVidia" -+ if _OPTIONS["bullet2gpu"] then -+ include "../src/LinearMath" -+ include "../src/BulletCollision" -+ include "../src/BulletDynamics" -+ include "../src/BulletSoftBody" -+ include "../Demos/HelloWorld" -+ -+ include "../Demos3" - end - -- if not _OPTIONS["without-demos"] then -- if not _OPTIONS["ios"] then -- include "../Demos" - end -- include "../Extras" -- end -- -- -- if _OPTIONS["with-nacl"] then -- include "../Demos/NativeClient" -- else -- include "../src/LinearMath" -- include "../src/BulletCollision" -- include "../src/BulletDynamics" -- include "../src/BulletSoftBody" -- end -- -- include "../Test" -- include "../Demos/HelloWorld" -- include "../Demos/Benchmarks" -- -Index: build/premake4_linux -=================================================================== -Cannot display: file marked as a binary type. -svn:mime-type = application/octet-stream -Index: build/premake4_osx -=================================================================== -Cannot display: file marked as a binary type. -svn:mime-type = application/octet-stream -Index: build/vs2010.bat -=================================================================== ---- build/vs2010.bat (revision 2640) -+++ build/vs2010.bat (working copy) -@@ -1,4 +1,6 @@ - -+rem premake4 --with-pe vs2010 - premake4 vs2010 - -+mkdir vs2010\cache - pause -\ No newline at end of file -Index: Demos/OpenGL/DemoApplication.cpp -=================================================================== ---- Demos/OpenGL/DemoApplication.cpp (revision 2640) -+++ Demos/OpenGL/DemoApplication.cpp (working copy) -@@ -1182,8 +1182,8 @@ - } - } - -- btVector3 aabbMin,aabbMax; -- m_dynamicsWorld->getBroadphase()->getBroadphaseAabb(aabbMin,aabbMax); -+ btVector3 aabbMin(0,0,0),aabbMax(0,0,0); -+ //m_dynamicsWorld->getBroadphase()->getBroadphaseAabb(aabbMin,aabbMax); - - aabbMin-=btVector3(BT_LARGE_FLOAT,BT_LARGE_FLOAT,BT_LARGE_FLOAT); - aabbMax+=btVector3(BT_LARGE_FLOAT,BT_LARGE_FLOAT,BT_LARGE_FLOAT); -Index: Demos/OpenGL/DemoApplication.h -=================================================================== ---- Demos/OpenGL/DemoApplication.h (revision 2640) -+++ Demos/OpenGL/DemoApplication.h (working copy) -@@ -149,6 +149,11 @@ - { - m_azi = azi; - } -+ -+ void setEle(float ele) -+ { -+ m_ele = ele; -+ } - - void setCameraUp(const btVector3& camUp) - { -Index: src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp -=================================================================== ---- src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp (revision 2640) -+++ src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp (working copy) -@@ -73,7 +73,7 @@ - m_debugDrawer(0), - m_forceUpdateAllAabbs(true) - { -- m_stackAlloc = collisionConfiguration->getStackAllocator(); -+ m_stackAlloc = 0;//collisionConfiguration->getStackAllocator(); - m_dispatchInfo.m_stackAllocator = m_stackAlloc; - } - -Index: src/BulletDynamics/Dynamics/btDynamicsWorld.h -=================================================================== ---- src/BulletDynamics/Dynamics/btDynamicsWorld.h (revision 2640) -+++ src/BulletDynamics/Dynamics/btDynamicsWorld.h (working copy) -@@ -33,7 +33,8 @@ - BT_SIMPLE_DYNAMICS_WORLD=1, - BT_DISCRETE_DYNAMICS_WORLD=2, - BT_CONTINUOUS_DYNAMICS_WORLD=3, -- BT_SOFT_RIGID_DYNAMICS_WORLD=4 -+ BT_SOFT_RIGID_DYNAMICS_WORLD=4, -+ BT_GPU_DYNAMICS_WORLD=5 - }; - - ///The btDynamicsWorld is the interface class for several dynamics implementation, basic, discrete, parallel, and continuous etc.