Commit Graph
100 Commits
Author SHA1 Message Date
erwin.coumans 5383ed4930 + need to reset rigid body using 'setCenterOfMassTransform' to reset world inertia tensor
+ fixes in compound algorithm -> recompute contact points
+ add debug drawing to some demos.
+ revert btJacobianEntry change
+ replace dCROSSMAT by btVector3::getSkewSymmetricMatrix
2008-12-02 04:01:56 +00:00
erwin.coumans f0c302f65c update changelog 2008-12-01 16:25:43 +00:00
erwin.coumans bfa8ebfbd8 fixes to keep compiler and unix/libspe developers happy 2008-12-01 16:22:43 +00:00
erwin.coumans dd21959709 Minor fixes to keep trunk compiling, while doing the refactoring. 2008-12-01 07:24:39 +00:00
erwin.coumans bbfdcd44b6 Minor fixes to keep trunk compiling, while doing the refactoring. 2008-12-01 06:57:41 +00:00
erwin.coumans 7341c6ee7e Minor fixes to keep trunk compiling, while doing the refactoring. 2008-12-01 06:55:27 +00:00
erwin.coumans e80feca36b Big work-in-progress refactoring of the constraint solver:
1) Add fast branchless SIMD support for constraint solver (Windows only until we get other contributions).
See resolveSingleConstraintRowGenericSIMD in Bullet/src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp
resolveSingleConstraintRowGenericSIMD can be used for all constraints, including contact, point 2 point, hinge, generic etc.

2) During this refactoring, all constraints support the obsolete 'solveConstraintObsolete' while we add 'getInfo1' and 'getInfo2' support.
This interface is almost identical interface to Open Dynamics Engine, to make it easier to port Dantzig LCP solver.

3) Some minor refactoring to reduce huge constructor overhead in math classes.
2008-12-01 06:41:25 +00:00
erwin.coumans 7e93be739b add copy constructor for btAlignedObjectArray, to avoid crashes as reported by JamesH
http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?p=11600#p11600
2008-11-30 16:47:36 +00:00
erwin.coumans e26b11ea5a fixed IBM Cell sdk build + demo (need to review related patch), thanks Jochen for reporting the issues. 2008-11-26 19:34:20 +00:00
erwin.coumans 82047e601e updated Bullet sequential impulse constraint solver, so it matches 100% ODE PGS quickstep solver innerloop, mainly by renaming variables... 2008-11-26 00:27:35 +00:00
erwin.coumans 7dda192bfc duplicate class name causes crashes, thanks to Nado and mickey for the report
http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?t=2884
2008-11-20 19:18:48 +00:00
erwin.coumans bdea80f2ca added missing Jamfile 2008-11-20 08:10:05 +00:00
erwin.coumans bab2854e16 minor update in Bullet user manual (needs a lot of work) 2008-11-20 07:52:24 +00:00
erwin.coumans decf91a34d Made btCollisionWorld::convexSweepTest and btGhostObject::convexSweepTest consistent. Both have an optional last argument for allowedCcdPenetration.
Bugfix due to recent change in friction in constraint solver.
2008-11-19 19:55:14 +00:00
erwin.coumans 50344c4a23 Add support for broadphase acceleration of convex cast (re-use rayTest implementation with an added aabb min/max, zero for rays)
Add Concave Convexcast demo back in AllBulletDemos, and tweaked it a bit.
Fix view frustum of ForkLiftDemo (caused picking to fail)
Removed innerloop profiling for ray and convex casts, it hurts performance.
Set default #aabb's in CDTestFramework to 8192
2008-11-19 00:38:29 +00:00
erwin.coumans cb03329d06 added missing license in headers 2008-11-18 01:42:55 +00:00
erwin.coumans 615b7fbe94 removed unused files, accidently copied wrong license header in them. 2008-11-18 01:39:00 +00:00
erwin.coumans dc8692ba94 Added IBM Cell SDK 2.x software_cache to Bullet/Extras. There is an option to enable it for the BulletMultiThreaded Cell version.
See USE_SOFTWARE_CACHE in Bullet\src\BulletMultiThreaded\SpuNarrowPhaseCollisionTask\SpuGatheringCollisionTask.cpp
It improves the Bullet midphase collision detection (triangle/vertex fetch)
The license is CommonPublicLicense-1.0, see included license docs.
2008-11-18 01:33:30 +00:00
erwin.coumans 50f475feb5 moved a few Extras projects into Extras/obsolete. 2008-11-17 21:05:22 +00:00
erwin.coumans fe461296c6 Fix issue with un-initialized broadphase proxy during broadphase insert. It was an chicken-egg problem:
1) creating a broadphase proxy -> adding pairs during insertion. But during this pair insertion, the btGhostObject broadphase handle isn't set yet (it is done in step 2)
2) assign the broadphase proxy to btGhostObject
Thanks to ihar3d for the report http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2864
2008-11-17 18:40:21 +00:00
erwin.coumans bc131321a8 fix in (unused) operator == 2008-11-16 08:06:28 +00:00
erwin.coumans 0deffb7495 mutable wasn't needed for this anonymous union (btBroadphasePair) 2008-11-16 08:06:07 +00:00
erwin.coumans a006cea5ab cosmetic text fix for ForkLiftDemo 2008-11-16 07:48:08 +00:00
erwin.coumans f474e58fb1 some minor fixes for BulletMultiThreaded 2008-11-16 06:39:45 +00:00
erwin.coumans 686accab16 + repaired SpuParallellSolverTask: support for warmstarting and added btAssert for constraint sizes that exceed CONSTRAINT_MAX_SIZE
+ Share some more code between SpuParallelSolver and btSequentialImpulseConstraintSolver (both use btSolverBody now)
Lack of warmstarting reported here: http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2858
+ allow btBoxBoxDetector to execute on SPU.
2008-11-16 05:48:42 +00:00
erwin.coumans dcf3f96869 Raise number of objects to 16384, move all objects at 0.01 speed, to show worst case behaviour (and CUDA benefits) 2008-11-15 23:44:40 +00:00
erwin.coumans 21f03f2aed add 'NextScene' button and minor help in GUI 2008-11-15 23:42:39 +00:00
erwin.coumans 972d3be247 Disable Bullet SAP by default (initialization takes too long, will speed that up later), just compare btDbvt, CUDA and OPCODE broadphases 2008-11-15 23:06:12 +00:00
erwin.coumans 4d0c11cd95 add PE_REF macro to allow Win32 SIMD for Physics Effects box-boxBoxDistance (although performance hardly differs) 2008-11-15 22:40:09 +00:00
erwin.coumans 29bfd06af7 Disable friction warmstarting by default, removing second friction direction. This gives a large performance increase.
friction warmstarting can be turned on using:
dynamicsWorld ->getSolverInfo().m_solverMode |= SOLVER_USE_FRICTION_WARMSTARTING;
2008-11-15 22:20:55 +00:00
erwin.coumans a5c18db854 fix CMake install for CMAke 2.6 -> version GREATER then 2.5 2008-11-15 03:48:24 +00:00
erwin.coumans 183dcb0ce4 fixed uninitialized variable, thanks to Roman 2008-11-15 00:45:04 +00:00
erwin.coumans 78a7b07b41 removed BulletSpuOptimized.pdf and Bullet_Faq.pdf, it will be moved into the Bullet_User_Manual.pdf 2008-11-15 00:05:26 +00:00
erwin.coumans cc43193b25 Fixes to allow compilation of BulletMultiThreaded under 64bit linux 2008-11-14 23:51:49 +00:00
erwin.coumans 1f66cd15a7 minor tweaks to the demos 2008-11-13 08:32:47 +00:00
erwin.coumans 352aed528e Added specialKeyboardUp handler to GLUI (why was it missing?)
Some cleanup for ForkLiftDemo
Enable textures for ConcavePhysicsDemo, 
Added scaling to BasicDemo to show small objects (20 centimeter)
Removed demos from 'AllBulletDemos': less (clutter) = more
2008-11-13 07:33:25 +00:00
erwin.coumans 055c82ce08 disable raycast accelerator in Bullet, for better sweep and prune performance comparison (Bullet SAP) 2008-11-12 22:59:26 +00:00
erwin.coumans 5493ba8411 Updated ChangeLog
Rename CProfileManager::DumpAll to CProfileManager::dumpAll
2008-11-12 22:52:13 +00:00
erwin.coumans 9516e505a7 fix broken build
Add btCompoundShape export support for BulletColladaConverter. 
Thanks to JamesH for the report/request:
http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=12&t=2840
2008-11-12 22:25:23 +00:00
erwin.coumans 5feea39803 Fix compilation for MSVC 6.0 for Bullet and COLLADA DOM.
Fix issues with btDbvt: use ATTRIBUTE_ALIGNED16
Removed several places where variable was declared within for statement: for (int i=0; should be int i; for (i=0
2008-11-12 18:37:05 +00:00
erwin.coumans 444fbfeb40 add obsolete 'getPoints' to be backwards compatible (breaks MayaPlugin) 2008-11-12 16:53:06 +00:00
erwin.coumans c4bd276dfc make it easier to disable btQuickProf,
added a CProfileManager::DumpAll, to dump/printf all timings for one simulation frame.
2008-11-12 02:45:59 +00:00
erwin.coumans 1381394dd8 reverted 'getActiveObjects', island management will be improved for Bullet 2.74 release.
The implementation was error-prone and could lead to crashes.

See http://code.google.com/p/bullet/issues/detail?id=128
2008-11-11 16:19:20 +00:00
erwin.coumans 0384562db0 removed bloated reference docs, will add them in a separate package 2008-11-10 22:26:16 +00:00
erwin.coumans 85341fee2a fix more places in btSoftBody that assume btRigidBody (it wasn't designed to support btCollisionObject/btGhostObject).
Add another 'findActiveObject'
2008-11-10 21:33:11 +00:00
erwin.coumans 3c0ca0d931 Fix btSoftBody issue, so it can interact with btCollisionObject and btGhostObject (and not just btRigidBody and btSoftBody)
Thank for the report mi076 http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2823

remove legacy.c from libxml
removed #include <math.h> from btQuadWord.h , it should be centralized in btScalar.h (to allow easier replacement with fastmath.h etc)
2008-11-10 20:33:14 +00:00
erwin.coumans 8865e38e5b bugfix: for btCompoundShape::getChildTransform: return (const) reference to btTransform, not a copy.
added btCompoundShape::updateChildTransform
Thanks to ejtttje, see http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2831
2008-11-10 09:04:04 +00:00
erwin.coumans 463a1b74c1 The SPURS version requires 16-byte alignment at the moment, and Cell SDK doesn't, so keep it like this for 2.73. @todo: Need to figure out better way to deal with those differences. 2008-11-09 23:35:23 +00:00
erwin.coumans bf3b6a2140 autogenerated projectfiles, add BulletDynamics/Character, moved from CharacterDemo 2008-11-08 22:50:57 +00:00
erwin.coumans 049270bb29 add Character to Jamfile 2008-11-08 22:49:16 +00:00
erwin.coumans 9bba23bf51 use eRadial as default for TerrainDemo 2008-11-08 22:42:19 +00:00
erwin.coumans 556241c92f updated build system for BulletDynamics/Character files 2008-11-08 21:46:21 +00:00
erwin.coumans 5dac27e694 fix in GIMPACT, reported here: http://code.google.com/p/bullet/issues/detail?id=118
tweak character margin for smoother sliding (needs to be fixed properly)
2008-11-08 21:33:37 +00:00
erwin.coumans f9aa7f3b53 Add Character control to btDiscreteDynamicsWorld (moved btCharacterControllerInterface/btKinematicCharacterController functionality from demo)
Remove ibmsdk from CcdPhysicsDemo and CollisionDemo
2008-11-08 21:01:20 +00:00
erwin.coumans ce0bdd891d added synchronizeSingleMotionState, thanks Chunky. 2008-11-08 19:34:05 +00:00
erwin.coumans 075ba0b9d9 Enabling USE_SEPDISTANCE_UTIL2 requires 100% reliable distance computation, but there are issues with large size rations. todo: fix this
Make synchronizeMotionStates() pure virtual in btDynamicsWorld and public in btDiscreteDynamicsWorld. Thanks Chunky.
2008-11-08 19:27:53 +00:00
erwin.coumans 3e9af21cec disable btActivatingCollisionAlgorithm 2008-11-08 17:14:13 +00:00
erwin.coumans 98e66fc1c7 fix issue with PosixThreadSupport on non-Apple platforms 2008-11-08 16:33:58 +00:00
erwin.coumans f6dcf94f25 Reduce default memory pool sizes (will use heap on overflow anyway), fits better with iPhone and consoles
Debug drawer needs to iterate over all objects, not just active
2008-11-08 06:37:48 +00:00
erwin.coumans 1996004b01 removed a few unused variables 2008-11-08 05:29:19 +00:00
erwin.coumans 96aa18f12f don't align btVector3 for now (need to reconsider it) 2008-11-08 05:28:24 +00:00
erwin.coumans cef40e5cce no 'const int' but inline for a few methods
remove redundant/unreachable 'breaks'
2008-11-08 05:27:26 +00:00
erwin.coumans c3dfcd21bf add missing appTerrainDemo project/rc files 2008-11-07 21:41:51 +00:00
erwin.coumans f285cb5e97 removed comment (from Ozzy Osbourne) 2008-11-07 05:17:13 +00:00
erwin.coumans 810bc73142 don't align IBM Cell SDK version (USE_LIBSPE2) 2008-11-07 05:15:05 +00:00
erwin.coumans e36b06f585 update autogenerated projectfiles 2008-11-07 04:29:46 +00:00
erwin.coumans 88ac9e8bfe added btActivatingCollisionAlgorithm.* to build systems 2008-11-07 04:27:59 +00:00
erwin.coumans 345da029b9 minor issues, don't inline a out-of-line method, reorder members 2008-11-07 04:02:32 +00:00
erwin.coumans 86353f0ad8 add btActivationCollisionAlgoritm to fix deactivation problems, reported here:
http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2616

provide access to active objects, requested here:
http://code.google.com/p/bullet/issues/detail?id=128
2008-11-07 03:37:14 +00:00
erwin.coumans f46d65d337 updated projectfiles 2008-11-07 00:47:06 +00:00
erwin.coumans 1165df7d67 replace VehicleDemo by ForkLiftDemo in AllBulletDemos 2008-11-07 00:42:32 +00:00
erwin.coumans 9aadc53322 Add VERSION to CMake build.
http://code.google.com/p/bullet/issues/detail?id=137
Removed TerrainDemo from AllBulletDemos, it isn't properly tested (has grinds to a halt after running it for a while, shooting some objects on it).
2008-11-07 00:10:29 +00:00
erwin.coumans a69e03f497 use 'getUnscaledPoints' to make it more obvious that m_localScaling hasn't been applied to them. 2008-11-06 23:40:13 +00:00
erwin.coumans 33ada42e18 add operator != and operator == to btQuadWord,
minor fix in 	btTransformUtil::calculateVelocityQuaternion, report zero angular velocity on identical transforms (using above operator to check identical transforms)
2008-11-06 23:39:33 +00:00
erwin.coumans a4c205afc0 enable convex separation util, potentially improves performance. set threshold to zero (docs follow)
fix scaling issue with btConvexHullShape
use virtual getSupportingVertex on non-SPU platform
2008-11-06 23:38:18 +00:00
erwin.coumans c1fc609d74 minor update to benchmark: use scaling for btConvexHullShape, to make sure that feature is tested.
http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2811
2008-11-06 23:35:39 +00:00
erwin.coumans 521314b9e7 disable alignment for btQuadWord for non-PS3 platforms (it causes troubles for LibSPE2) 2008-11-06 07:31:17 +00:00
erwin.coumans e9df33a6c5 fix issue, related to hard-coded rollaxis index, should use m_indexForwardAxis
Thanks Joerg, luding.org
2008-11-06 07:07:56 +00:00
erwin.coumans 3ca7d91fc6 fix PosixThreadSupport for Mac OSX, thanks to David Guthrie,
http://code.google.com/p/bullet/issues/detail?id=111
2008-11-06 07:04:36 +00:00
erwin.coumans 2daf428386 updated CMake support: remove Lib prefix, to facilitate Apple Framework support, add App prefix for demos
See discussion here: http://code.google.com/p/bullet/issues/detail?id=129
2008-11-06 06:54:35 +00:00
erwin.coumans 108c88af41 Applied Cmakelist patch, adding Apple Framework support
Disable libxml LIBXML_MODULE_EXTENSION
Fixed include path in btConeTwistConstraint (it should be relative to src folder, not using ../../ )
Thanks to ejtttje, http://code.google.com/p/bullet/issues/detail?id=129
2008-11-06 06:02:38 +00:00
erwin.coumans 8318005e75 use Release config by default for CMAke, not Debug 2008-11-05 06:09:00 +00:00
erwin.coumans d25d264e77 Improved CharacterDemo/KinematicCharacterController, dynamic objects will bounce off.
Don't create a todo list for doxygen by default (the chaotic todo's would confuse most developers)
Improve support for small objects, by having dynamic contact breaking thresholds. Still needs small internal timestep and some GJK improvements.
2008-11-05 03:28:10 +00:00
erwin.coumans f964c2f644 fix Cmake build files (CMakeList.txt) so it works with Cmake 2.4 again (only INSTALL feature requires Cmake 2.6) 2008-11-05 02:34:01 +00:00
erwin.coumans 8e0ee0ad74 Removed assert from rigidbody::setLinearVelocity/rigidbody::setAngularVelocity -> it can be useful for special effects. 2008-11-04 21:18:43 +00:00
erwin.coumans ff29cb5008 reduce the number of dynamic memory allocations again (using a persistentStack version in btDbvt) 2008-11-04 18:02:41 +00:00
erwin.coumans 807e979597 missed a local stack in btDbvt 2008-11-04 17:54:41 +00:00
erwin.coumans ef7d5e462d added TARGET_LINK_LIBRARIES, although commented-out (it might help others who want to enable shared libraries)
http://code.google.com/p/bullet/issues/detail?id=97&can=1
2008-11-04 10:49:02 +00:00
erwin.coumans 325fc0bab0 Improve CMake support:
Add CMake install support for libbulletmath,libbulletcollision,libbulletdynamics,libbulletsoftbody,and toplevel include files
Options to enable/disable BUILD_DEMOS and BUILD_ETRAS

Fixed compile issue in BulletMultiThreaded
Fixed double-precision issues with btMatrix3x3::getEulerZYX
2008-11-04 10:36:27 +00:00
erwin.coumans ccc63bbce7 added getEulerZYX, thanks to Tully.Foote
http://code.google.com/p/bullet/issues/detail?id=124
fixed a few warnings (in double-precision mode)
2008-11-04 09:48:42 +00:00
erwin.coumans ee380bcd09 Added CUSTOM_POLYHEDRAL_SHAPE_TYPE,CUSTOM_CONVEX_SHAPE_TYPE and CUSTOM_CONCAVE_SHAPE_TYPE to be used to extend Bullet by custom shapes without modifying source code.
Thanks to Ole K. for the suggestion:
http://code.google.com/p/bullet/issues/detail?id=125
2008-11-04 09:43:34 +00:00
erwin.coumans 8e51049359 Added btAxisSweep3::resetPool, to avoid non-determinism due to unsorted linked-list, thanks to Ole K., See http://code.google.com/p/bullet/issues/detail?id=126
Fixed recently introduced issue: can't re-use stack as member variable (to reduce memory allocs) in btDbvt, due to recursion.
remove btGjkEpa.* from Makefile.am, Makefile and CMakeLists.txt
avoid division-by-zero in ODE boxbox contact reduction
2008-11-04 09:37:31 +00:00
erwin.coumans 4df7c841a3 removed obsolete btPoint3 and btGjkEpa from projectfiles
bumped up version to Bullet 2.73
2008-11-04 04:13:26 +00:00
erwin.coumans bcd0f48c28 some doxygen updates, added some comments to classes, fix broken links, rename some prefix some internal GIMPACT collision structures using (for example use GIM_AABB instead of BT_AAABB),
removed obsolete btGjkEpa (it was replaced by btGjkEpa2 ages ago)
2008-11-04 04:01:31 +00:00
erwin.coumans 2b21eb5605 EmptyGL is an empty implementation to allow to compile and run the Bullet demos on platforms that lack OpenGL and Glut. 2008-11-04 03:31:21 +00:00
erwin.coumans 8f181b5604 more work on IBM Cell SDK 3.1 build 2008-11-02 10:34:24 +00:00
erwin.coumans c34a4a0f71 some fixes for IBM Cell SDK 3.1 build
to build, go to Bullet/src/ibm_sdk and run make
then, go to Bullet/src/BulletMultiThreaded/ibm_sdk
make -f Makefile.original spu
make -f Makefile.original ppu
2008-11-02 09:46:35 +00:00
erwin.coumans 461602a5f2 minor issue with btAssert under Cell 2008-11-01 02:22:02 +00:00
erwin.coumans a637a8c231 test10
http://groups.google.com/group/tortoisesvn/browse_thread/thread/8f6c2c999cce861f
2008-10-31 21:17:39 +00:00
erwin.coumans 6449438ef2 test9 2008-10-31 21:02:48 +00:00