Commit Graph

788 Commits

Author SHA1 Message Date
erwin.coumans
ba5012973d Make argument to btDefaultSerializer optional, and use zero by default. This will dynamically allocate data, so there is no need to guess the maximum size anymore.
Remove some cached data from SoftBodyLinkData, to reduce serialization file size.
2010-12-04 01:23:31 +00:00
erwin.coumans
6173a30bce Improved BulletSoftBody serialization, added cluster support. Joints and copying data from GPU back to softbody are the main todo.
Updated the Bullet/Demos/SerializeDemo to load .bullet files with the softbody data.

BulletSoftBody should use getWorldTransform and not getInterpolationWorldTransform
Fix btBulletWorldImporter so that it creates a copy of the index/vertex data, this prevents crashes when deleting the .bullet file with triangle meshes.
2010-12-03 03:11:21 +00:00
erwin.coumans
032c6bfe2c add initial support for soft body / cloth serialization, and updated SerializeDemo to load soft bodies/cloth.
Serializes soft body nodes (vertices), links, faces, tetrahedra, materials, anchors with rigid bodies.
Some todo's are serialization of pose, constraints between soft bodies
2010-12-01 05:55:08 +00:00
erwin.coumans
c49927b4ed Use cylinder inertia tensor, instead of box, by default.
See Issue 427

Expose some internal data for constraints,
Thanks to Francois Sugny, see Issue 420
2010-11-17 23:55:39 +00:00
rponom
635bbb5324 Sample of 6DOF constraint with motor attached to the world added to AppConstraintDemo 2010-11-03 21:34:26 +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
5bb8330b7b Applied patch for several build issues:
+ 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
2010-10-04 19:05:56 +00:00
erwin.coumans
d6cbc28b94 prettify the SoftDemo a little bit, and use 1024x768 for ForkLiftDemo and SoftDemo. 2010-09-22 23:02:47 +00:00
erwin.coumans
0292521757 Updated OpenCL (AMD/NVIDIA) and DX11 DirectCompute Visual Studio project files
CMake: minor fixes for project file distribution
Make resource loading more robust for DX11ClothDemo, and remove buttons that crash the demo
2010-09-21 23:09:18 +00:00
erwin.coumans
9c7220a78d updated VectorAddKernels.cl, using float8 operator+
implement float8 operator+ and operator- for MiniCL
2010-09-20 22:08:44 +00:00
erwin.coumans
3e0b92cf3e OpenCL cloth demo improvements:
1) additional seach path for textures 
2) don't fail when textures cannot be found, but use a checked texture instead (programmatically generated)
2010-09-20 21:01:37 +00:00
erwin.coumans
318e0d74dc Fix in btQuickprof that caused crash in ConcaveConvexcastDemo.cpp
Thanks to Roman Ponomarev for the report
Make btVector3::rotate const
Thanks to lepoussin, see Issue 428
CMakeLists.txt improvement: don't copy resources when INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES is set
CMakeLists.txt improvement: INSTALL_EXTRA_LIBS for ConvexDecomposition and GIMPACTUtils
Thanks to andrebra, see Issue 425
2010-09-18 00:24:50 +00:00
erwin.coumans
f689a5e7ce tweaks in the build system for unix/GLEW, see also http://code.google.com/p/bullet/issues/detail?id=421 2010-09-10 00:14:23 +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
44b82652d0 Collision flag CF_DISABLE_SPU_COLLISION_PROCESSING can be combined with other flags (avoids SPU/parallel collision dispatch)
Fix for MinGW32 build
2010-08-30 21:46:23 +00:00
erwin.coumans
8e087a0666 Enable compilation of the NVIDIA OpenCL demos under Linux,
Thanks to Xavier Thomas, see Issue 417
2010-08-26 19:18:10 +00:00
erwin.coumans
3c2d67115c add EPA 2010-08-25 01:41:37 +00:00
erwin.coumans
958c705a02 Demos/ConvexHullDistance/ConvexHullDistanceDemo.cpp to compile again
Allow to use convexProcessingThreshold as maximum distance for convex-convex computation (useful for closest distance/point computation)
2010-08-25 01:28:46 +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
1955d08f1b Fix parallel collision dispatch for PTHREADS version of BenchmarkDemo.
Thanks to shankargiri for the patch and report in Issue 418
2010-08-24 21:18:58 +00:00
erwin.coumans
436c71d440 fix btQuickprof introducing #define WIN32_LEAN_AND_MEAN, see also Issue 113 2010-08-23 22:21:29 +00:00
erwin.coumans
0ea249ec33 disable demos in order to avoid re-creation of MSVC projectfiles 2010-08-19 23:36:20 +00:00
erwin.coumans
32433aa8b3 Allow to link the DX11ClothDemo against the 64bit DirectX SDK for x64 builds
Fix memory leaks in btBulletFile and btParallelConstraintSolver (and added some additional profile timers)
2010-08-19 20:03:23 +00:00
erwin.coumans
844a54a409 Fix broken CDTestFramework
Avoid crash in BulletWorldImporter, ignoring 'invalid' constraints between two static bodies
Use a bitfield for btCollisionObject::CollisionObjectTypes (to allow custom types that are derived from build-in types such as btRigidBody)
Revert/improve softbody debug rendering
2010-08-15 20:45:55 +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
51869dceda tweak OpenCL particle demo 2010-07-24 06:52:55 +00:00
erwin.coumans
6f823687b5 enable GPU cloth (not CPU) and disable debug setting (D3D11_CREATE_DEVICE_DEBUG) 2010-07-23 19:49:56 +00:00
erwin.coumans
7684c1b92d use relative path, to make it easier to include btBulletWorldImporter, #include "../BulletFileLoader/btBulletFile.h"
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
2010-07-21 21:33:40 +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
4eddfce03e remove some warnings 2010-07-20 23:37:11 +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
erwin.coumans
5b70a895a5 fix some issues with Linux compatibility,
see Issue 409
2010-07-17 13:44:10 +00:00
erwin.coumans
41ad5d3c06 revert accidentally committed testing code for the btParallelConstraintSolver (in BasicDemo) 2010-07-17 01:06:38 +00:00
erwin.coumans
b3f081fc85 Added preparation for GPU hardware accelerated solvers for BulletSoftBody (OpenCL and DirectCompute backends will follow)
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
2010-07-16 23:26:25 +00:00
rponom
13d9441f30 Fixed particle demo bug (grid was smaller than world box) 2010-07-16 01:11:24 +00:00
erwin.coumans
fbc17731ec Several changes to sync Bullet trunk with PlayStation 3 spubullet version
Still needs some cross-platform fixes
2010-07-08 17:02:38 +00:00
erwin.coumans
76a58e1f4e fixes in OSX ThreadingDemo / PosixThreadSupport 2010-06-29 01:19:03 +00:00
erwin.coumans
7bfa94b6a3 implement barrier/critical section for OSX (PosixThreadSupport)
enable Demos/ThreadingDemo for OSX
add cmake build support for VectorAdd_OpenCL for OSX
2010-06-28 23:03:14 +00:00
erwin.coumans
8bf91f735c Create a stringify example, instead of loading the .cl file from disk, include it as a string.
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.
2010-06-25 22:21:18 +00:00
erwin.coumans
b884554a8f Hack around latest AMD graphics cards having troubles with point sprite rendering
The problem is still unresolved on the 5870 card, and results in a black screen
See also http://forums.amd.com/devforum/messageview.cfm?catid=392&threadid=129431
2010-06-25 18:31:10 +00:00
erwin.coumans
b04f176604 fix for OpenCL demos build for NVidia 2010-06-25 17:01:14 +00:00
erwin.coumans
b83e16b7ff fix out-of-bounds in AMD version of VectorAdd 2010-06-25 00:40:20 +00:00
erwin.coumans
5db1c008bd add AMD version of VectorAdd_OpenCL, next to MiniCL (has issues with workgroup size) 2010-06-25 00:19:22 +00:00
erwin.coumans
498da0721b Move some code from Branches/OpenCL to trunk, related to threading and OpenCL:
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)
2010-06-24 22:54:00 +00:00
erwin.coumans
b39abc4513 minor addition to GLDebugFont for non-blender text rendering (better readable on top of existing graphics)
Use GLDebugDrawStringInternal(xcoord,ycoord,text,rgb_color,use_blending,character_spacing);
2010-05-12 23:03:10 +00:00
erwin.coumans
0fbd9d49c4 + Optimization: move some variable declarations outside of the innerloop in btCompoundCollisionAlgorithm.cpp
Thanks to mccdo at iastate.edu for the contribution, see Issue 373
+ Optimization: removed some unnecessary code in btConvexHullShape::localGetSupportingVertexWithoutMargin
+ Added autogenerated Visual Studio 2005 projectfiles (using a patched cmake 2.8.1 to avoid any references to cmake/absolute paths)
2010-04-12 17:46:56 +00:00
erwin.coumans
81efe51116 create a better demo for the perturbation around the separating normal 2010-03-06 23:30:32 +00:00
erwin.coumans
3c8f8f55d7 add vsync for Mac OSX to avoid tearing artifacts 2010-03-06 19:37:38 +00:00