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
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
+ add empty constructors to make Bullet compile using clang.
Thanks to Stillmoon for the report and patch, See http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=5730
+ bullet-2.77/Demos/OpenCLClothDemo/cloth.h:103: error: ‘sprintf’ was not declared in this scope
Thanks to pprkut for the report in Issue 435
+ cmake build fails on Unix systems when using BUILD_SHARED_LIBS. Added pthreads to BulletMultiThreaded
Thanks to pprkut for the report in Issue 434
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})
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.
Create a separate library for MiniCL (a rudimentary OpenCL wrapper to run kernels on multi-core CPU using the default C++ compiler, using Win32 Threads or Posix)
tweak vectormath/vmInclude.h for PS3 platforms
fix warning in btKinematicCharacterController
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)
Added assert to check for positive masses in btCompoundShape::calculatePrincipalAxisTransform, see Issue 399
Fixes for LLVM/GCC compilation issue in btSequentialImpulseConstraintSolver
(Untested) fix for Linux 64bit compilation Issue 409
The kernel in the .cl file is also compiled by the native C++ cpu compiler, when using MiniCL.
When you want to debug the kernel using MiniCL, and want to put breakpoints, it is best to:
1) enabled the define #define DEBUG_MINICL_KERNELS 1 in Bullet/src/BulletMultiThreaded/MiniCL.cpp
2) temporarily remove the stringify lines in the .cl kernel, because it prevents the debugger from finding the right line.
Added Demos/ThreadingDemo showing how to use the cross-platform btThreadSupportInterface under Windows.
Added Demos/ParticlesOpenCL showing how to run the NVidia particle demo under OpenCL implementations by AMD, NVidia and MiniCL (CPU)
moved some obsolete files to Extras/obsolete, and removed freeglut
moved ColladaDemo to Dynamica Maya plugin repository (it has COLLADA_DOM and libxml), see http://dynamica.googlecode.com
Added new .bullet file
Minor update in Bullet_User_Manual.pdf, removed obsolete Bullet_Faq.pdf