Commit Graph

46 Commits

Author SHA1 Message Date
erwin.coumans
3b83428a7f Applied polar decomposition patch. Fixes Issue 621. Thanks to Christian for the report, Joshua for the fix, Dongsoo for checking the fix.
Applied picking cloth patch. Fixes Issue 646. Thanks to Dongsoo.
Applied patch Softbody updateConstraints. Fixes Issue 503. Thanks to Dave Bruce Phillips and Dongsoo.
Fix various warnigns under Mac OSX.
2012-09-09 17:22:30 +00:00
erwin.coumans
b69c6ac3f5 fix padding in btSolverConstraint, see Issue 650
fix some warnings
2012-09-08 19:21:14 +00:00
erwin.coumans
73b217fb07 Apple contribution for OSX SSE and iOS NEON optimizations unit tests, thanks to Jordan Hubbard, Ian Ollmann and Hristo Hristov.
For OSX:
cd build
./premake_osx xcode4
for iOS:
cd build
./ios_build.sh
./ios_run.sh

Also integrated the branches/StackAllocation to make it easier to multi-thread collision detection in the near future. It avoids changing the btCollisionObject while performing collision detection.

As this is a large patch, some stuff might be temporarily broken, I'll keep an eye out on issues.
2012-06-07 00:56:30 +00:00
erwin.coumans
9bc3b5eb10 Update btOpenCLUtils to allow caching of precompiled program binaries (save/load). See Bullet/Demos/SerializeDemo/AMD for an example use
Fix in btBulletWorldImporter: load friction/restitution and patch radius of btCapsuleShape (it needs to embed the margin)
Partly apply a modified patch to make the SerializeDemo_AMD work, but avoid breaking the MiniCL version. See Issue 594
2012-03-04 22:12:12 +00:00
erwin.coumans
58d1d14880 fix capitalization in OpenCL include path (non-Windows platforms) 2012-01-23 21:51:51 +00:00
erwin.coumans
f754952232 Pass in a const reference to a CompareFunc for quickSort, to make Visual Studio 2011 happy.
Thanks to Cameron Hart
Fixes Issue 588
2012-01-23 21:39:44 +00:00
erwin.coumans
1f7a67b7da Apply a patch that updates vertex position on GPU for the OpenCL version, by Dongsoo Han (saggita), work-in-progress
Removed the unused OpenCL kernels
Add example how to cache binary kernels, see SoftDemo compiled with OpenCL AMD using msvc/vs2008_opencl.bat
2011-12-20 18:03:24 +00:00
erwin.coumans
a06ee28aa6 fix OpenCL kernel 2011-11-30 18:44:00 +00:00
erwin.coumans
21ecc26fde fix compile issue under linux 2011-11-14 23:29:07 +00:00
erwin.coumans
0ccc82a2ab disable the OpenCL asserts by default (BT_SUPPRESS_OPENCL_ASSERTS), and re-enable the shader initialzation in bool btOpenCLSoftBodySolver::checkInitialized() 2011-11-14 23:12:33 +00:00
erwin.coumans
66c349caa6 Remove btSoftBodySolver_CPU.*
Move btSoftBodySolverData.h to src/BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h
Attempt to re-enable MiniCL version of OpenCLClothDemo (cloth-capsule collision still broken)
Add optional OpenCL acceleration to SerializeDemo (just for cloth)
2011-11-11 19:00:26 +00:00
erwin.coumans
4f25d731f9 fix autotools build
fix picking for tetrahedral soft body (demo 29/30)
add text for failing OpenCL kernel build, thanks to Greg
2011-09-16 23:58:38 +00:00
erwin.coumans
d3dc7afefd fix in non-SIMD OpenCL cloth demo, kernel names changed.
Thanks Greg, see http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=7442&p=25422#p25422
2011-09-16 21:58:01 +00:00
erwin.coumans
bb29d15058 create premake4 solutions for the various OpenCL configurations (AMD, NVIDIA, Intel OpenCL SDKs for Windows)
primarily to distribute project files that work.
CMake is still better supported in general (not all demos/libs have been ported)

Revert a recent change about warnings: %zu doesn't work in printf, %d does
2011-09-16 01:28:34 +00:00
erwin.coumans
b68c64f2db Disable DX11 cloth bounds update, it is too slow by default.
Use g_dx11Solver->setEnableUpdateBounds(true); to re-enable it (it enables GPU collision of cloth versus capsule)
2011-09-14 20:55:00 +00:00
erwin.coumans
1e360bdb6b add Intel build support for the OpenCL cloth demo, and use the bullet_logo.png
Thanks to ggjunker for the patch, see Issue 533
2011-09-13 01:52:42 +00:00
erwin.coumans
82234e6f33 add preliminary premake4 support (next to cmake) mainly to auto-generate Visual Studio projectfiles that can be redistributed (with no dependency on cmake, premake) 2011-09-02 22:24:08 +00:00
erwin.coumans
ed02816e68 add kst argument for VSolveLinks.cl kernel (VSolveLinksKernel method)
Note that this method is not used by default.
Thanks to Peter for the report and fix, this fixes Issue 511
2011-09-02 04:30:01 +00:00
erwin.coumans
7743f5bce5 Update environment variable to CUDA_PATH (was NVSDKCOMPUTE_ROOT) and fix a few bugs that prevented the NVIDIA OpenCLClothDemo to run properly. 2011-08-17 22:08:10 +00:00
erwin.coumans
e83b5dac75 fixes in the DX11 cloth (for devices with physical wavefronts smaller than 32)
another fix for out-of-bounds check (there was no assert for this previously)
2011-08-03 20:21:23 +00:00
erwin.coumans
251bb4e727 remove the 'exit' calls from the OpenCL soft body solver. Use the solver->checkInitialized() method, after solver->optimize() to see if the kernels build OK. 2011-06-30 00:23:42 +00:00
erwin.coumans
cce582d905 Add support for AMDAPPSDKROOT environment variable
Initialize vSolveLinksKernel OpenCL cloth kernel (although kernel is unused)
Fixes Issue 508
2011-04-23 16:01:44 +00:00
erwin.coumans
d80805d40c apply the DX11 cloth fix to allow DLL usage, see Issue 494 2011-04-07 16:19:51 +00:00
erwin.coumans
88b19eb023 fixes in PosixThreadSupport to enable ThreadingDemo and MultiThreadingDemo to run properly.
fix autotools build (added missing files)
2011-03-30 19:01:29 +00:00
erwin.coumans
8995ad440c fix a few more warnings 2011-03-15 22:51:00 +00:00
erwin.coumans
334cc85a1f fix some warnings 2011-03-15 22:48:36 +00:00
erwin.coumans
1a222f642a Stop using wavefront/warp synchronization inside OpenCL/DirectCompute, it is not future proof.
Similar to this commit for DX11: http://code.google.com/p/bullet/source/detail?spec=svn2343&r=2330
See also http://forum.beyond3d.com/archive/index.php/t-55751.html
2011-03-15 22:41:55 +00:00
erwin.coumans
21162f77e3 fixes to make the OpenCL cloth demo run on Apple/GPU 2011-03-15 22:24:27 +00:00
erwin.coumans
6a2a72d987 Fix Apple Snow Leopard build
remove 'ComputeBounds', it isn't used and OpenCL compilation breaks Apple build
2011-03-15 20:30:23 +00:00
erwin.coumans
2b5e16de4d rename solveCollisionsAndUpdateVelocities.cl to SolveCollisionsAndUpdateVelocities
solveCollisionsAndUpdateVelocitiesSIMDBatched to SolveCollisionsAndUpdateVelocitiesSIMDBatched
2011-03-11 20:26:59 +00:00
erwin.coumans
f2f20da204 rename solveCollisionsAndUpdateVelocities.cl to SolveCollisionsAndUpdateVelocities
solveCollisionsAndUpdateVelocitiesSIMDBatched to SolveCollisionsAndUpdateVelocitiesSIMDBatched
2011-03-11 20:26:05 +00:00
erwin.coumans
4f562399c2 Fix in the hlsl file, to allow other wavefront sizes to work correctly, thanks Ronen for the fix.
Fix in btDX11SIMDAwareSoftBodySolver::optimize, the interface changed
2011-03-11 01:30:46 +00:00
erwin.coumans
8cb14e178e added missing GPU cloth simulation files and DX11/OpenCL kernels
Thanks to Cameron Hart for the report, see Issue 486
2011-02-28 05:29:54 +00:00
erwin.coumans
d52f58edd8 Synchronize changes from branches/GpuClothAMD to trunk
Main improvements are: GPU cloth collision detection against a capsule shape
,OpenCL-OpenGL interoperability (keeping data buffers on GPU), and bug fixes
Thanks to Lee Howes
2011-02-27 09:07:07 +00:00
erwin.coumans
b4876b22cd Add check for cmake build system so that if the OpenCL library is not found, it will not compile the OpenCL-dependent code (on APPLE)
Thanks to Max for the report and fix in Issue 480.
2011-02-09 00:51:40 +00:00
erwin.coumans
cbeb5864eb Fixes in build systems for autotools and cmake, see Issue 438
Thanks to Daniel KO Listas at the ODE mailing list
Don't build graphics demos when OpenGL or GLUT is not found
CMake will still build the non-graphical HelloWorld demo (output text to console)

Fix linker error: ThreadingDemo requires pthreads on UNIX systems
Thanks to reptor, see also http://bulletphysics.org/Bullet/phpBB3/posting.php?mode=reply&f=9&t=5748
2010-10-06 23:07:00 +00:00
erwin.coumans
5b34356c43 Load the ParticlesOCL.cl from memory, using the MSTRINGIFY macro, instead of loading it from disk.
Small cleanup of cmake build for NVIDIA and AMD OpenCL

For AMD Stream SDK use:
INCLUDE_DIRECTORIES( ${AMD_OPENCL_INCLUDES} )
LINK_LIBRARIES( ${CMAKE_ATISTREAMSDK_LIBPATH}/OpenCL.lib )

For NVIDIA CUDA SDK:
INCLUDE_DIRECTORIES( ${NVIDIA_OPENCL_INCLUDES} )
LINK_LIBRARIES( ${NVIDIA_OPENCL_LIBRARIES})
2010-09-09 23:07:23 +00:00
erwin.coumans
cb2de12243 btSoftBodySolver_OpenCL::setDefaultWorkgroupSize to customize the work group size.
Thanks to Simon Green for the feedback, see also Issue 419

Added BT_PROFILE for "predictUnconstraintMotionSoftBody"

Added a few missing destructors.
Added AllMemoryBarrier
Thanks to Lee Howes for the commit in the branch.
2010-09-08 22:21:59 +00:00
erwin.coumans
33a41798cf more fixes to the 'make install' feature for both cmake and autotools
now autotools uses the same library naming as cmake: libBulletSoftBody, libBulletDynamics, libBulletCollision, libLinearMath
cmake doesn't install .svn folders anymore
cmake pkgconfig bullet.pc.cmake 'include' folder fixed (removed /bullet postfix)
added BulletCollision/CollisionShapes/btTriangleInfoMap.h to the install
2010-09-07 23:40:17 +00:00
erwin.coumans
33ddc450b4 typo kernal -> kernel 2010-08-27 00:36:12 +00:00
erwin.coumans
6a9e16501c Fixes to compile MiniCL under Linux.
OpenCL fixes for Linux not processed yet (TBD)
2010-08-24 21:35:28 +00:00
erwin.coumans
51d43c8166 2010-08-19 23:12:06 +00:00
erwin.coumans
5d89141357 apply patch for building shared libraries (and frameworks)
Thanks to ejtttje see Issue 357
2010-08-19 22:28:41 +00:00
erwin.coumans
4f9b450200 added OpenCL cloth demo, contributed by AMD.
updated GpuSoftBodySolvers
updated DirectCompute cloth demo
2010-08-14 00:56:17 +00:00
erwin.coumans
dd0f022d1d trying to sort out the vectormath include path mess:
move vectormath to src folder, and add a vmInclude.h that contains the logic in a single location.
If you still need a system-wide vectormath, make sure to define USE_SYSTEM_VECTORMATH (in build system)
2010-07-21 19:11:28 +00:00
erwin.coumans
11fa2e8b43 Added GPU SoftBody constraint solvers for DirectX 11 (Direct Compute) and OpenCL, thanks to AMD.
See also http://code.google.com/p/bullet/issues/detail?id=390
Added Demos/DX11ClothDemo
(an OpenCL cloth demo will follow soon)
2010-07-20 16:09:53 +00:00