Commit Graph

29 Commits

Author SHA1 Message Date
erwin.coumans
f6242087a1 make btHingeConstraint constructor arguments const, thanks to Nick Waanders
http://code.google.com/p/bullet/issues/detail?id=391

return value in btBulletWorldImporter
2010-06-18 00:31:06 +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
1cd52f3d11 Removed empty constructors for constraints, I don't recall why we added them (possibly SPU) but if we really need them we have to revert this.
Moved static fixed body into a static function 'getFixedBody' to avoid issues when embedding Bullet in C#/CLI managed code.
2010-02-03 23:02:33 +00:00
erwin.coumans
d58081ce37 Provide easier access to CFM and ERP (and Stop ERP/Stop CFM) for constraints in a similar way to Open Dynamics Engine
virtual	void	btTypedConstraint::setParam(int num, btScalar value, int axis = -1) = 0;
virtual	btScalar btTypedConstraint::getParam(int num, int axis = -1) const = 0;
	
Parameter can be BT_CONSTRAINT_ERP,BT_CONSTRAINT_STOP_ERP,BT_CONSTRAINT_CFM,BT_CONSTRAINT_STOP_CFM
Axis is 0 .. 5, first 3 for linear degrees of freedom, last 3 for angular. If no axis is specified it will take the 'default' degree of freedom. For a btHingeConstraint this would be the hinge axis (5)
2010-02-03 22:16:09 +00:00
erwin.coumans
725411a1f3 added a warning to all serialization structures:
///do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64
2010-01-27 02:41:38 +00:00
erwin.coumans
00f58e5a91 added basic serialization for several constraints including btPoint2PointConstraint, btHingeConstraint, btSliderConstraint, btConeTwistConstraint, btGeneric6DofConstraint
(no motor support or advanced settings yet)
added btStaticPlaneShape serialization
Added toggle in cmake for BenchmarksDemo to enable/disable graphics rendering
2010-01-27 02:13:56 +00:00
rponom
f919baf03d Improved Slider, Hinge and Generic6DOF constraint setup.
Turned on by default, use m_useOffsetForConstraintFrame = false to use old setup
Use "O" (capital 'o') button to toggle it in SliderConstraintDemo and ConstraintDemo

Total applied impulse copied back from btSolverConstraint to btTypedConstraint
2009-11-25 23:52:12 +00:00
erwin.coumans
5d2cf447e4 Some more minor improvements for PS3 SPU version 2009-08-06 20:03:09 +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
rponom
99f6ff7cf3 Some fixes to work with constraint angle limits close to -PI or PI 2009-06-12 01:23:47 +00:00
rponom
c680791ce9 3 new constraints added : btGeneric6DofSpringConstraint, btUniversalConstraint, btHinge2Constraint
Motors for btConeTwistConstraint added (for obsolete solver only)
appConstraintDemo changed to test new constraints
Several coding-style fixes
2009-05-21 22:10:13 +00:00
erwin.coumans
34685cb631 Fixes for Linux compilation,
Thanks to Ole: http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=3590
Add option to select EPA or Minkowski sampling method in btDefaultCollisionConfiguration
2009-05-11 20:35:26 +00:00
erwin.coumans
d9c4529a26 + bugfix in btAlignedObjectArray, not calling destructors on resize to smaller array.
Thanks Benoit for pointing this out, and bugfix: http://code.google.com/p/bullet/issues/detail?id=218

+ Added point to point, hinge, slider and generic 6dof constraints to Maya Dynamica plugin
Thanks to Herbert Law for the constribution: http://code.google.com/p/bullet/issues/detail?id=221
2009-05-06 19:55:05 +00:00
rponom
c94cad8cba Added a possibility for btHingeConstraint to use frame of rigid body A as a reference frame at construction time.
It is off by default, so the existing code should work as before
2009-02-10 02:42:54 +00:00
erwin.coumans
2162f6663d disable help text by default in AllBulletDemos (text slows down many graphics cards)
improve CollisionDemo.cpp, show multi-contact generation using perturbation
improve ColladaConverter: add hinge/point 2 point constraint conversion support, add btScaledTriangleMeshShape support
Fix Dynamica MayaPlygin: remove 'active' flag, it has to be replaced by mass=0 for active, mass<>0 for passive
Added missing projectfiles
Fixed single-shot contact generation. it is disabled by default to improve performance
Bugfixes for character controller, thanks to John McCutchan for reporting
Constraint solver: better default settings
btDefaultAllocator: aligned allocator uses non-aligned allocator (instead of directly malloc/free)
disable memalign by default, use Bullet's aligned allocator
2009-02-06 03:20:43 +00:00
rponom
1991bf3013 Added getInfo1()/ getInfo2() code for joints to support the new SIMD constraint solver 2008-12-25 02:13:46 +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
fe5033119b Add some accessor methods to btHingeConstraint and btSliderConstraint, to allow conversion.
Thanks to Roman Ponomarev.
2008-07-22 02:15:17 +00:00
ejcoumans
d53f2875e5 minor fixes, only btBvhTriangleMeshShape should provide getShapeType(), add get methods for motor limits in btHingeConstraint. 2007-12-06 01:41:07 +00:00
ejcoumans
ec22825e65 added parallel solver (work in progress) and made modifications to demo/constraints to allow for getting the type without using virtual functions (needed on CELL SPU processors) 2007-08-12 17:27:33 +00:00
ejcoumans
685138d033 include paths should not be relative starting with "../
It leads to problems with certain compilers, when Bullet/src is located in a long pathname.
Keep include path starting with "LinearMath/, "BulletCollision/, or "BulletDynamics/
2007-07-14 05:08:57 +00:00
ejcoumans
2508cef2cf removed prefix "btHingeConstraint::" in headerfile. Doesn't compile under all platforms. Thanks to Blender community for spotting this. 2007-07-06 20:30:55 +00:00
ejcoumans
e4363b6e2b added ConstraintSolver/btConeTwistConstraint.cpp to allow for ragdolls
improved hinge constraint: adds limits
added btAtan2Fast
quaternion helper functions
All thanks to Starbreeze Studios / Marcus Hennix, Marten Svanfeldt
2007-07-05 23:17:13 +00:00
ejcoumans
bc3f9535ad cleaned up, removed warning under MSVC2005 (Level 4)
Mostly related to alignment and unused variables
2007-04-13 01:37:21 +00:00
sjbaker
e9b21e21a6 Pathnames between #include files that are intended to be used within application code should not depend on the paths to the subdirectories being known to the compiler because this will not always be the case when an end-user includes your headers.
Includes of files in the local hierarchy must not use <...> please stick with "..."
2006-12-26 15:33:28 +00:00
ejcoumans
6dff5a218e process contact and non-contact constraints inside the same iteration loop
added first draft for hingeConstraint motor
2006-12-12 03:15:11 +00:00
ejcoumans
2b1657b1dd Refactoring: another huge number of changes, renamed methods to start with lower-case. 2006-09-28 01:11:16 +00:00
ejcoumans
eb23bb5c0c merged most of the changes from the branch into trunk, except for COLLADA, libxml and glut glitches.
Still need to verify to make sure no unwanted renaming is introduced.
2006-09-27 20:43:51 +00:00
ejcoumans
0e04cfc806 First stage in refactoring Bullet: moved Bullet Collision and Dynamics and LinearMath into src folder, and all files in Collision Detection and Dynamics have bt prefix.
Made all buildsystems to work again (jam, msvc, cmake)
2006-09-25 08:58:57 +00:00