Commit Graph

653 Commits

Author SHA1 Message Date
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
erwin.coumans
81f04a4d48 fix: some file didn't have the svn:eol-style native yet 2010-03-06 15:23:36 +00:00
erwin.coumans
8fbe399ea4 Make .bullet serialization mode robust:
Deal with broken DNA serialization. Bullet 2.76 release revision 2035 - 2046 was broken, and this includes the Maya Dynamica plugin.
Added some workaround to deal with the broken .bullet files, instead of crashing.
2010-03-02 09:32:34 +00:00
erwin.coumans
3629df72fd This should be the final Bullet 2.76 release 2010-02-25 20:25:59 +00:00
erwin.coumans
40dc18f604 remove Extras/obsolete/quickstep
improve serialization based on feedback: make it easier to serialize a single object, or single shape, or single bvh.
Modified Bullet/Demos/ConcaveDemo to use btSerializer to serialize the btOptimizedBvh (or optionally the trimesh+bvh)

You can also serialize trimesh without BVH, use:
serializer->setSerializationFlags(BT_SERIALIZE_NO_BVH);//	or BT_SERIALIZE_NO_TRIANGLEINFOMAP
2010-02-25 20:12:40 +00:00
erwin.coumans
e156967762 Enable graphical benchmark by default in cmake
Toggle between point to point and generic 6dof constraint for mouse picking in the demos

Use a 'equal vertex thresdhold' in the btVoronoiSimplexSolver of  0.0001f by default.
This can be disabled (or configured) using defaultCollisionConfiguration->getSimplexSolver()->setEqualVertexThreshold(0.f);
See http://code.google.com/p/bullet/issues/detail?id=305
2010-02-24 01:28:23 +00:00
erwin.coumans
1425feec26 minor warning fixes, issue with "direction[i] = direction[i];" on OSX 2010-02-23 18:08:44 +00:00
erwin.coumans
621eddb769 make btHashMap data protected (not private) for easier serialization
move btTriangleInfoMap.h into its own header, into the BulletCollision/CollisionShapes folder
add btTriangleInfoMap pointer to btBvhTriangleMeshShape, so we don't need to use the 'userpointer' anymore
preparation for serialization of btTriangleInfoMap.

See also http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=4603&start=30
2010-02-23 09:52:39 +00:00
erwin.coumans
41e9115bca Add support to serialize btOptimizedBvh/btQuantizedBvh for a btBvhTriangleMeshShape (using the new btSerializer). This is a new implementation, with full cross-platform support.
So it is different from the in-place method (btQuantizedBvh::serializeInPlace/deserializeInPlace).

It is also possible to serialize/deserialize just the bvh, using the btSerializer (needs some code snippet/helper)
See also http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=4770
2010-02-23 09:03:46 +00:00
erwin.coumans
e4c3c2a1a2 Fix Issue 342, related to OpenGL GL_ShapeDrawer (when used with multiple OpenGL contexts) 2010-02-23 03:11:18 +00:00
erwin.coumans
ceeb9392d9 removed ColladaDemo and COLLADA, LibXML from autotools files
(those files are moved to the Dynamica repository, see http://dynamica.googlecode.com)
2010-02-20 15:49:28 +00:00
erwin.coumans
1c0ec85c32 Retired the Jam build system (and msvcgen). CMake is currently the preferred build system on Windows, Mac and UNIX
(autotools files are still left for now)
2010-02-20 15:47:20 +00:00
erwin.coumans
6ef37ab722 pass on rigid body name in btBulletWorldImporter, to make it easier to bind physics and graphics objects.
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
2010-02-20 15:39:09 +00:00
erwin.coumans
85724b5500 SerializeDemo: create a testFile.bullet if it is missing
Serialization: remove obsolete autogenerated headers
Minor changes in btSequentialImpulseConstraintSolver: split methods to make it easier to derive from the class and add functionality.
2010-02-19 23:24:04 +00:00
erwin.coumans
5c5ce9b4b3 fixes_dialogmenu_capsule.patch 2010-02-18 06:16:35 +00:00
erwin.coumans
729a883b71 attempt to let Maya plugin build under Linux using cmake
Thanks redpawfx for the feedback, see http://code.google.com/p/bullet/issues/detail?id=221

improvements in cmake (disable this incremental linking)
2010-02-16 04:30:53 +00:00
erwin.coumans
6463605e54 cmake more fixes 2010-02-11 22:09:08 +00:00
erwin.coumans
065a56ee4b fix Mac OSX build 2010-02-11 21:41:05 +00:00
erwin.coumans
d4c3633405 Get rid of btSolverBody and use btRigidBody directly. btSolverBody didn't improve performance after all, due to random-access
Tweak the BenchmarkDemo a bit: 

1) disable deactivation in graphical mode
2) add some settings that increase performance in the BenchmarkDemo2 (1000 stack) from 35ms to 15ms on this quad core (at the cost of a bit of quality)
2010-02-11 20:30:56 +00:00
erwin.coumans
bb8d1b11df Add btBroadphaseInterface::aabbTest. btDbvtBroadphase and btAxisSweep3 should perform well, as long as the raycast accelerator is enabled.
This should fix the btCollisionWorld::contactTest(btCollisionObject* colObj, ContactResultCallback& resultCallback);

Thanks to Ola for the report!
2010-02-11 18:25:50 +00:00
erwin.coumans
70c70bf681 cmake: don't install anything by default, unless the option INSTALL_LIBS is enabled
cmake: fix for multi-threaded benchmarks
2010-02-11 07:12:58 +00:00
erwin.coumans
14f65a5cac fix minor issue with cmake build system 2010-02-09 21:12:36 +00:00
erwin.coumans
f567130d78 add option to compile benchmark using BulletMultiThreaded (for now the option is only tested on Windows) 2010-02-08 23:50:33 +00:00
erwin.coumans
7d4e2873e2 move some recent MiniCL work to trunk 2010-02-08 22:42:58 +00:00
erwin.coumans
6a8a8ad39f more improvements for msvc cmake build system and test for autogenerated cmake projectfiles for msvc 2008 in msvc/2008 (with relative paths) 2010-02-08 20:35:04 +00:00
erwin.coumans
558abff4db added extra file search path for cmake-generated msvc projectfiles (needs 4 levels back) 2010-02-08 08:51:08 +00:00
erwin.coumans
a6d9e977f7 A bit more work on the cmake build system, copy glut32.dll or glut64.dll into binary directory for out-of-source builds.
Include .rc resource file (to add icon) for WIN32 cmake.
2010-02-08 08:12:04 +00:00
erwin.coumans
a9556d0fd5 use _WIN32 instead of WIN32 (_WIN32 is a compiler built-in)
add virtual destructor to bFile
2010-02-06 18:50:45 +00:00
erwin.coumans
5364f22047 use #include "BulletHeaders.h" instead of #include <BulletHeader.h> 2010-02-04 20:37:06 +00:00
erwin.coumans
99d9fddc42 add name for collision shape and constraint serialization (to objects, shapes and constaints can be mapped to user data)
updated serialization structures and header files (for new 'm_name' field, replacing user pointer)
fix issue with  btGeneric6DofConstraint::setParam in headerfile
2010-02-04 05:28:17 +00:00
erwin.coumans
58c5630d7f Add new demos to cmake: SerializeDemo and InternalEdgeDemo
Fix in btShapeHull for previous commit
Add support to serialize name for objects
Updated serialization structures.
2010-02-04 01:07:07 +00:00
erwin.coumans
c1e20e98c7 allow to compile all demos when USE_GLUT is enabled in cmake
fix minor issue in ConcaveDemo (animation should be time-dependent)
remove COLLADA from the demos.
2010-02-03 23:04:39 +00:00
erwin.coumans
4140a20552 fixed some compile issue for Mac Dynamica plugin, see
http://code.google.com/p/bullet/issues/detail?id=221

added some missing file for autotools/Makefile.am

fix: btBulletWorldImporter::loadFileFromMemory always returned false, if it was succesful
2010-01-31 16:46:06 +00:00
erwin.coumans
e57f03599a make Bullet compile on Visual Studio 6 2010-01-30 23:10:12 +00:00
erwin.coumans
788f48643b remove all warnings on Mac OSX Snow Leopard 2010-01-30 22:31:56 +00:00
erwin.coumans
77b773f470 more improvements, copy testFile.bullet to target binary directory (cmake), fix some warnings 2010-01-30 21:46:50 +00:00