Commit Graph
100 Commits
Author SHA1 Message Date
erwin.coumans db25e21fde added isZero and fuzzyZero to btVector3
Thanks jazztickets for the report, see Issue 145
2009-12-21 23:13:11 +00:00
erwin.coumans b0e6e2f412 Expose vehicle maxSuspension force (instead of hard-coded 6000 value).
Thanks blakflow for the patch, see Issue 290
2009-12-21 22:59:12 +00:00
erwin.coumans 9fa2460933 Provide verbosity control in BulletColladaConverter, see Issue 228
Thanks SkewMatrix for the patch

Fix a crash in BulletColladaConverter, when bodies were created outside of the Collada converter,
Thanks Jan Ciger for the patch, see Issue 306
2009-12-21 22:55:32 +00:00
erwin.coumans d68521803f updated vectormath (minor fixes, including a bugfix in storeXYZ) 2009-12-19 02:08:44 +00:00
erwin.coumans fa778a649c Avoid introducing virtual method to non-virtual classes, just for serialization 2009-12-18 22:05:11 +00:00
erwin.coumans 7eff49286c Avoid introducing virtual method to non-virtual classes, just for serialization
Applied a LHS fix (although no real impact on performance on PS3), thanks to holorose see Issue 321
2009-12-18 22:04:58 +00:00
erwin.coumans 4f2ad3a3ad applied patch for compound shape in SpuGatheringCollisionTask, see Issue 313
http://code.google.com/p/bullet/issues/detail?id=313

Thanks Bbilz for the report and fix!
2009-12-18 01:20:57 +00:00
erwin.coumans db63dcd9b4 Applied patch for autotools library names, thanks to Chrisian van Brussel, see Issue 319
http://code.google.com/p/bullet/issues/detail?id=319

This change doesn't affect cmake, the main supported build system in Bullet.
2009-12-18 01:16:17 +00:00
erwin.coumans 6bf3988837 SetLocalScaling propagates to btCompoundShape children now. Note that this issue might affect shared child shapes.
See also Issue 96
http://code.google.com/p/bullet/issues/detail?id=96

Thanks chucksspencer for the patch
2009-12-18 01:13:33 +00:00
erwin.coumans fcd2b93a22 fix in box-box contact generation: choose better contact point location (along contact normal) when objects are swapped.
move debugDrawWorld to btCollisionWorld.
improved CollisionInterfaceDemo, show how to perform a closest point query for objects that are not in the collision world.
removed a bit of garbage from the debug drawer
2009-12-18 00:54:52 +00:00
erwin.coumans 6425af9a6c make RenderTexture.h compile on double precision mode 2009-12-13 22:26:11 +00:00
erwin.coumans 443d38366f remove Gpu2dDemo Gpu3dDemo MiniCL_VectorAdd demos from CMake build system (it is not properly supported on most platforms anyway) 2009-12-13 21:39:47 +00:00
erwin.coumans 0c85c74bae removed stack allocator (was unnecessary/unused)
Thanks to Brecht for the report: http://code.google.com/p/bullet/issues/detail?id=303
2009-12-13 20:48:52 +00:00
erwin.coumans d7a07e9745 Make 'randomizeConstraints' optional, switched on by default (to keep existing behaviour)
Thanks Benoit for the report: http://code.google.com/p/bullet/issues/detail?id=315
2009-12-13 20:37:09 +00:00
erwin.coumans 6536d8cc31 Added option to install 'Extra' libs, turned off by default (BulletMultiThreaded, OpenGL, COLLADA_DOM, libxml,BulletColladaConverter)
Thanks xenonofarcticus, for the patch: http://code.google.com/p/bullet/issues/detail?id=294
2009-12-13 20:30:29 +00:00
erwin.coumans 0a6f7b271d make relative contact breaking threshold optional (use dispatcher->setDispatcherFlags(0) to turn off feature) 2009-12-13 20:22:21 +00:00
erwin.coumans 8444d0e5c4 Fix shapekey swapping issue with triangle meshes, see http://code.google.com/p/bullet/issues/detail?id=316
Revert btHashKeyPtr and introduce btHashPtr (to avoid breaking API/COLLADA Converter), see http://code.google.com/p/bullet/issues/detail?id=318
Disable separating distance util (it just costs CPU cycles and is disabled by default in the API anyway)
2009-12-13 15:40:21 +00:00
erwin.coumans 91f1e8117b Add serialization for btRigidBody (all work-in-progress) 2009-12-09 14:11:13 +00:00
erwin.coumans 3edd806b88 Binary serialization in the .bullet file format (work-in-progress) 2009-12-08 18:02:37 +00:00
erwin.coumans eea73bc76a more fixes to get cmake 2.8 to create Xcode projects 2009-11-17 03:09:14 +00:00
erwin.coumans f4c4e91904 more cmake fixes 2009-11-17 03:03:27 +00:00
erwin.coumans d96818d994 minor fixes in cmake build system, they caused troubles with CMake 2.8 and Xcode 2009-11-17 02:45:37 +00:00
erwin.coumans f59ad619a2 Disable BulletMultiThreaded, Gpu2dDemo, Gpu3dDemo, MiniCL_VectorAdd, they are currently not supported for 64bit platforms. 2009-11-06 00:36:30 +00:00
erwin.coumans 992c5eafa4 improvements in slerp
thanks to Tully Foote:

http://code.google.com/p/bullet/issues/detail?id=140

minor warning fix in btHashMap.h
2009-11-03 06:22:51 +00:00
erwin.coumans 836234696d applied patch removing some virtual calls in 'findUnions'
thanks to holorose for the patch
http://code.google.com/p/bullet/issues/detail?id=295
2009-11-03 06:06:56 +00:00
erwin.coumans 4c3af9c95f use LIB_SUFFIX to install under lib${LIB_SUFFIX}, for example /usr/lib64
Thanks to brumahe for the patch
http://code.google.com/p/bullet/issues/detail?id=174

compile BulletMultiThreaded also on  64 bit
2009-11-03 06:01:00 +00:00
erwin.coumans 73250b4be2 make the menus compile on both (Snow) Leopard and iPhone 2009-11-03 05:25:48 +00:00
erwin.coumans 5acda2d06c move an __SPU__ conditional around the virtual methods, we need some of the other inline methods. 2009-10-21 19:47:52 +00:00
erwin.coumans d07b7ef3fa added a few methods for better vector_math compatibility with PS3 SDK version 2009-10-20 20:36:58 +00:00
erwin.coumans f3525c3a86 make the btAcosf/btAsinf fix multi-line to make it easier to put breakpoints.
fix a memory leak issue with ColladaConverter (keep track of the btTriangleMesh containers)
2009-10-09 23:53:18 +00:00
erwin.coumans 703582f4fa apply fix for btAcosf/btAsinf (numerical issue causes values of X become slightly larger than 1 or smaller than -1, causing NaNs)
manually add some missing files to msvc projectfiles for now
fix in box-box collision detector, preventing it to fail in some rare cases
remove redundant line in btHingeConstraint, thanks to teravus
fix mouse drag camera rotation issue (modulo 360 instead of 180)
2009-10-09 23:35:00 +00:00
erwin.coumans 7b4bfcbcab some compile fixes in debug font rendering 2009-09-29 02:12:40 +00:00
erwin.coumans ebd44c1cd2 updated new DialogDynamicsWorld GUI to compile and run on Mac OS X. 2009-09-26 19:58:37 +00:00
erwin.coumans 2f4f468f4d Created basic physics-based OpenGL menu dialog system, with toggle/text and slider control. 2009-09-26 01:44:09 +00:00
erwin.coumans a482ebb7ab added missing global callback reference 2009-09-24 16:39:10 +00:00
erwin.coumans da4a1b14b5 Add support for target motion and slip/cfm for both friction directions.
It can be handy for effects such as powered conveyor belt effect or sideways slipping tyre friction.
2009-09-18 07:48:15 +00:00
erwin.coumans 49474da938 update of ChangeLog 2009-09-17 22:48:07 +00:00
erwin.coumans 36de6fefbb updated autotools with missing files 2009-09-17 22:10:13 +00:00
erwin.coumans 0d0da7ae4e minor fixes in GLDebugFont.cpp
update automake Makefile.am, add some missing files such as btActionInterface.h
http://code.google.com/p/bullet/issues/detail?id=258
unix line endings for install-sh
2009-09-17 22:02:11 +00:00
erwin.coumans 172b87188b install BulletCollision/btBulletCollisionCommon.h and BulletDynamics/btBulletDynamicsCommon.h (but also keep the file in the root destination)
Thanks to ejtttje
http://code.google.com/p/bullet/issues/detail?id=265
2009-09-17 21:33:29 +00:00
erwin.coumans 6bf2d3388a Add docs in INSTALL file
http://code.google.com/p/bullet/issues/detail?id=278
Fix warning in btHashMap.h
http://code.google.com/p/bullet/issues/detail?id=276
Thanks both to ejtttje
2009-09-17 21:21:17 +00:00
erwin.coumans e8177a4fb3 applied fix for 64bit detection, thanks to ejtttje
http://code.google.com/p/bullet/issues/detail?id=277
2009-09-17 21:17:25 +00:00
erwin.coumans 9430a2202c updated ChangeLog 2009-09-17 20:36:18 +00:00
erwin.coumans c710623bc8 update autogenerated projectfiles 2009-09-17 20:27:53 +00:00
erwin.coumans dcfb23dc13 update build for btConvex2dShape functionality
use btDbvtBroadphase in HelloWorld demo, it is the recommended broadphase
2009-09-17 20:17:14 +00:00
erwin.coumans f65e829ca0 Add support for generic 2d convex shapes, through wrapper class btConvex2dShape. See Bullet/Demos/Box2dDemo for example wrapping a btCylinderShape and 2d btConvexHullShape.
Add some extra degeneracy debugging check in btGjkPairDetector
2009-09-17 19:45:22 +00:00
erwin.coumans 3da9c832ae Initialize the world transform to identity for btCollisionObject/btRigidBody.
Some developers only initialize the world position, and not the orientation -> uninitialized data. 

We should probably add some warning in btTransform, in debug mode. Note we don't initialize btTransform/btQuaternion/btVector3/btMatrix3x3 default constructor, for performance reasons.
2009-09-16 17:56:12 +00:00
erwin.coumans dd65ef3a8a fix some compile errors in Extras/CDTestFramework (cross/dot are no longer global functions) 2009-09-11 22:15:55 +00:00
erwin.coumans 151082597d Missed a version tag in CMakeLists.txt 2009-09-11 19:21:29 +00:00
erwin.coumans 49a0b479c6 Switch off an optimization by default, to avoid support burden: update all objects AABBs and not just the active objects.
Call world->setForceUpdateAllAabbs( false) to re-enable the optimization: it will only update active objects (skipping static geometry)
See also http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=4073
2009-09-11 19:18:37 +00:00
erwin.coumans ed09140fb7 remove some warnings, thanks to Zenja http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=4063 2009-09-09 23:51:30 +00:00
erwin.coumans cc5ba4608f use pre-tick callback to update motor targets in DynamicControlDemo: dynamicsWorld->setInternalTickCallback(callbackFunc,void* userPtr=MotorDemo,bool pretick=true 2009-09-09 23:23:22 +00:00
erwin.coumans 659b215a69 Override btCollisionWorld::addCollisionObject with flags more appropriate for btDynamicsWorld (StaticFilter)
Minor fixes (#ifndef SPU_COLLISION_OBJECT_WRAPPER_H block etc)
Only update 'setNumTasks' when necessary
Revert vectormath.h include (can't resolve conflicts with PS3 SDK, need additional #include path)
2009-09-09 22:49:43 +00:00
erwin.coumans df550730da include relative full path for vectormath_aos.h, and fix minor typo in glut.h 2009-09-07 17:42:12 +00:00
erwin.coumans 52971076f5 updated Mac OSX projectfile for Bullet/Extras/AllBulletDemosOSX 2009-09-07 00:53:20 +00:00
erwin.coumans 819622fbe8 delete obsolete SpuRaycast files, attempt to get demos to compile/run under 64bit glut. 2009-09-06 23:01:49 +00:00
erwin.coumans 86518d9aed removed SpuRayCaster and SpuConstraintSolver from autogenerated msvc project files 2009-09-06 21:15:09 +00:00
erwin.coumans 3fc4482f3b update ChangeLog for Bullet 2.75 improvements 2009-09-06 21:11:01 +00:00
erwin.coumans 4e2cef2c69 removed SpuRaycaster and SpuParallelSolver, both were obsolete: slow, broken and unsupported 2009-09-06 20:58:40 +00:00
erwin.coumans 2d1777c899 Avoid collision detection/response between anchored (static) soft body cluster and a static/kinematic rigid body 2009-08-31 04:35:06 +00:00
erwin.coumans 2ef7c1a457 Fixes / improvements in soft body:
avoid blow-up due to improper mass calculation for fixed nodes (happened when using clusters)
allow to create collision clusters for each tetrahedron or triangle, when using btSoftBody::generateClusters(0)
tweak soft body demos a bit, only draw debug wireframe if necessary
2009-08-28 21:23:54 +00:00
erwin.coumans f492899499 Added example of tetrahedral (volumetric) softbodies
Keep camera distance positive when using mouse zoom
Updated autogenerated msvc projectfiles
Added glut 64 bit support
2009-08-27 18:39:17 +00:00
erwin.coumans f82cfc8259 dd pthread to MiniCL_VectorAdd project, for Unix 2009-08-26 19:50:35 +00:00
erwin.coumans c6493bb049 Added specialized capsule-capsule collider. Should improve ragdoll collision performance
See also http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=3930
To disable it, define BT_DISABLE_CAPSULE_CAPSULE_COLLIDER in the build system
2009-08-20 21:08:38 +00:00
erwin.coumans bbeac75d93 Added minor utility method for btHashMap, btHashString 2009-08-18 23:40:51 +00:00
erwin.coumans 500930652e move class outside of method 2009-08-14 22:14:04 +00:00
erwin.coumans 34699f6de6 + add option to set pre-tick callback, called at the beginning of each internal simulation step
+ use real-time for soft body demo (using this pre-tick callback)
+ optimize the generation of bending constraints for the special case where the distance is 2
2009-08-14 21:36:51 +00:00
erwin.coumans e89fe1cbfa Make BenchmarkDemo a console application, without OpenGL/Glut dependency.
Fix potential division by zero when enabling convex distance utility.
Thanks to linzner http://code.google.com/p/bullet/issues/detail?id=264
2009-08-12 08:18:57 +00:00
erwin.coumans ae3255f5e9 initialize maximum distance to zero when not using separating distance utility. 2009-08-12 01:17:12 +00:00
erwin.coumans d7c7c0c9ef avoid one redundant motionstate synchronization
minor warning fix
2009-08-11 23:50:59 +00:00
erwin.coumans d67aa861f2 Add support for childshape index for btCompoundShape during ContactAddedCallback,
see example in Bullet/Demos/ConvexDecompositionDemo
Removed some warnings
2009-08-11 00:30:41 +00:00
erwin.coumans f352cca5cf updated autogenerated msvc projectfiles 2009-08-08 05:35:44 +00:00
erwin.coumans 8c07b2a8a1 fixes in build system 2009-08-08 00:41:57 +00:00
erwin.coumans aef97d6015 Share btGjkPairDetector, btGjkEpa2, btVoronoiSimplexSolver with SPU/Multithreaded implementation (remove duplicate code)
Make btTypedConstraint and btPersistentManifold both derive from btTypedObject to make SPU-side generic constraint solver easier.

Note: all build systems need to be updated: remove SpuVoronoiSimplexSolver.cpp, SpuGjkPairDetector.cpp, SpuEpaPenetrationDepthSolver.cpp, SpuGjkEpa2.cpp
2009-08-07 08:57:56 +00:00
erwin.coumans 5d2cf447e4 Some more minor improvements for PS3 SPU version 2009-08-06 20:03:09 +00:00
erwin.coumans 709f981390 remove redundant methods
thanks ejtttje for the patch:
http://code.google.com/p/bullet/issues/detail?id=262
2009-08-06 03:48:01 +00:00
erwin.coumans 1808ec6a0e Some more minor improvements for PS3 SPU version 2009-08-05 23:25:44 +00:00
erwin.coumans 3e2529fcb5 Minor constraint refactoring, to allow SPU-side processing for PLAYSTATION 3 (added non-virtual methods)
Also comment-out some code for __SPU__ to reduce code size
Added btContactConstraint (only used on PS3 SPU right now, better to use btPersistentManifold directly for contact constraints)
Improved readblend utility library (see also usage in http://gamekit.googlecode.com with Irrlicht)

Fix for btConvexConvexAlgorithm, potential division by zero
Thanks linzner http://code.google.com/p/bullet/issues/detail?id=260
2009-08-05 22:14:46 +00:00
erwin.coumans b16f251530 Initialize m_maxNumTasks, it is required by the spubullet-2.75 for PLAYSTATION 3. 2009-08-05 01:10:46 +00:00
erwin.coumans 1b457b45e2 Minor fixes in multi-threaded narrowphase Bullet version: allow to dynamically switch number of threads/SPUs
Disable USE_SEPDISTANCE_UTIL for now
2009-08-04 00:03:14 +00:00
erwin.coumans 3160a0555c Revert GIMPACT change (#define BULLET_TRIANGLE_COLLISION 1)after several reports that it doesn't work well
Disable SIMD/SSE when using double precision on __APPLE__, thanks Ola for the report!
http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?t=3878
2009-07-27 06:28:47 +00:00
erwin.coumans 82fff60324 updated MayaPlugin Makefile.mac for Mac OSX. Usage: make -f Makefile.mac install 2009-07-22 19:08:43 +00:00
erwin.coumans bbc072958b compile fix for OSX 10.4, see
http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=3825
2009-07-16 07:03:16 +00:00
erwin.coumans 82828745ea enable SIMD for Apple OSX Intel
compile fixes for _btGpu_computeGridSize undefined in libBulletMultiThreaded
http://code.google.com/p/bullet/issues/detail?id=246
2009-07-16 06:23:04 +00:00
erwin.coumans 40c73f327c + CMake build system fix under Windows: don't define _WINDOWS to allow Glut console demo to build properly
+ Allow user to enable useConvexConservativeDistanceUtil . Use dynamicsWorld->getDispatchInfo().m_useConvexConservativeDistanceUtil = true;
(see Demos/Benchmarks/Benchmark4 (convex objects falling down)
+ Fix for plane drawing (just wire-frame)
+ Gimpact: use collision margin of 0.07 for demo (because BULLET_TRIANGLE_COLLISION is used)
+ replace dot,cross,distance,angle,triple in btVector3 by btDot, btCross,btDistance,btAngle,btDistance to avoid naming conflicts
+ Some fixes in GJK penetration depth normal direction (broken in a previous commit)
+ fix in calculateDiffAxisAngleQuaternion to make ConvexConservativeDistanceUtil work properly
+ allow debug drawing to debug btContinuousConvexCollision
+ add comment/warning that btTriangleMesh::findOrAddVertex is an internal method, users should use addTriangle instead
2009-07-15 16:47:48 +00:00
erwin.coumans a27b349dd0 compile fixes for Linux 2009-07-14 19:43:22 +00:00
erwin.coumans 60c107b7a7 Updated INSTALL description. This info should go also in Bullet User Manual and Online.
Thanks to ejtttje http://code.google.com/p/bullet/issues/detail?id=248

Use GJK for GImpact triangle test
See http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=3687

More improvements in GJK degeneracy handling (using second EPA/GJK run)
Issue/discussion here http://code.google.com/p/bullet/issues/detail?id=250

CMake improvements
Thanks to ejtttje http://code.google.com/p/bullet/issues/detail?id=247

Added basic camera/wall detection for character demo
2009-07-14 02:10:03 +00:00
erwin.coumans c4ad354ac0 More GJK degeneracy fixes, thanks Jacob Langford for the feedback:
http://code.google.com/p/bullet/issues/detail?id=250

Added missing files for Maya Dynamica plugin
Thanks Herbert Law for the patch, and damrit and others for the report
http://code.google.com/p/bullet/issues/detail?id=231

Fix btQuaternion shortestArcQuat, thanks Stan Melax for original fix and shogun for reminder
http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=1989

Implemented btDiscreteDynamicsWorld::removeCollisionObject (and btSoftBodyDynamicsWorld) to avoid
crashes. Thanks Jacob Langford for bringing that up.

Minor sphere-debug drawing issue (spheres were drawn inside-out (wrong face winding)
2009-07-13 21:48:19 +00:00
erwin.coumans d4b099236c attempts to improve degeneracies in GJK implementation 2009-07-10 21:27:04 +00:00
erwin.coumans 3538ac1162 add radius to debug sphere drawing 2009-07-10 00:26:46 +00:00
erwin.coumans d9ad88aa7a Fix in some degenerate GJK configuration: once a degenerate GJK case is detected, without valid EPA penetration, use a second GJK run without margin.
Thanks to Jacob Langford for the report:http://code.google.com/p/bullet/issues/detail?id=250
2009-07-09 22:10:27 +00:00
erwin.coumans dc4180f1ce + fix bug in SoftDemo: use removeRigidBody for rigid bodies, instead of removeCollisionObject
+ use default convex drawing instead of special cylinder drawing (caps are wrongly drawn)
+ allow camera translation using middle-mouse button in SoftDemo
+ add/removeCollisionObject virtual 
Thanks Ola for this suggestion
2009-07-06 04:15:02 +00:00
erwin.coumans 699ba8f5b2 forgot to update Demos/Gpu2dDemo for btMultiSphereShape change (removed 1st argument) 2009-06-11 14:32:41 +00:00
erwin.coumans f552a1dbbf Remove first argument from btMultiSphereShape, calculate local inertia approximation from aabb.
If user wants more accurate inertia tensor for multi-sphere shape, use btCompoundShape instead 
(amd btCompoundShape::calculatePrincipalAxisTransform)

Thanks rcharlton for bringing this up.
Erwin
2009-06-11 13:51:48 +00:00
erwin.coumans 6c80353556 Minor fix in friction: calculate second friction direction based on un-scaling first friction direction (issue if it was scaled to zero)
Force activation state of static objects to be ISLAND_SLEEPING, once they are added to the world
Add backwards compatibility option btDiscreteDynamicsWorld::setSynchronizeAllMotionStates, just in case only updating active objects broke someones code
Don't disable 3D box-box in box2ddemo
2009-06-11 12:22:41 +00:00
erwin.coumans 3e5fc86a6c Iterate only over non-static rigid bodies, instead of all collision objects
http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=18&t=3625
http://code.google.com/p/bullet/issues/detail?id=128

Attempt to fix issue in mesh striding, multiple-mesh-parts were broken.
2009-06-11 01:25:10 +00:00
erwin.coumans 659272685b Applied patch to fix scaling on btCapsuleShape:
http://code.google.com/p/bullet/issues/detail?id=230
Thanks Chuck Spencer for report/fix!

Applied patch to fix triangle mesh embedded in a btCompoundShape:
http://code.google.com/p/bullet/issues/detail?id=229
Thanks Ola for reporting/fixing!
2009-06-11 00:23:49 +00:00
erwin.coumans 47a4435a9a Make is easier to compile Bullet/Extras/sph:
1) use $(CUDA_INC_PATH) for CUDA include path
2) avoid using cuda util, but use BT_GPU_SAFE_CALL and BT_GPU_CHECK_ERROR (defined in Bullet/Extras/CUDA/btCudaUtil.h)
3) remove pre-linked glee*.lib, but include glee.c directly
2009-06-10 22:44:27 +00:00
erwin.coumans 656d6b8336 Make is easier to compile Bullet/Extras/sph:
4) removed fluids_2008.sln, just use automatic converted upgrade using fluids_2005.sln solution
Use Bullet/Glut/GL folder, instead of Bullet/Extras/spu/common/GL folder)
2009-06-10 22:43:23 +00:00
erwin.coumans acf8ed3de5 Re-enabled split impulse: avoids adding linear/angular momentum due to penetration recovery.
Both SIMD and scalar version is supported.
2009-06-10 22:04:06 +00:00