erwin.coumans
6db1b932fd
Make the btDbvtBroadphase deterministic/reproducable, by sorting the btBroadphasePair using unique ID, instead of proxy address.
...
The btAxisSweep3 didn't suffer from this issue, because proxies were always allocated in-order, as part of an array.
2008-12-08 20:16:29 +00:00
erwin.coumans
65cdd7146f
Use placement new for copy constructor of arrays. Thanks to M. Reuvers for the patch.
...
http://bulletphysics.com/Bullet/phpBB3/viewforum.php?f=9
Generally, however, it is best to avoid copying entire arrays, but use a
reference.
typedef btAlignedObjectArray<btSomeClass> Array;
Array a;
Array b = a;//avoid this whenever possible
This is much better:
Array& b = a;//use a reference
const Array& b = a; //or const reference
2008-12-08 17:57:18 +00:00
erwin.coumans
f3a70b65eb
Fix issues with btCompoundShape when adding/removing child shapes after construction of a btRigidBody.
...
Thanks tp for the report:
http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2925&p=11700#p11700
2008-12-07 20:57:38 +00:00
erwin.coumans
06167a0b31
For visual studio 2005 and later project files, in release mode use /fp:fast, /arch:SSE2 and using intrinsics.
...
Thanks to Roy Eltham for the tip:
http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2930
2008-12-06 01:54:29 +00:00
erwin.coumans
635e1a6aa0
set broadphase handle to zero when destructing a btCollisionWorld, just in case a collision object/ rigid body is re-used.
...
Thanks to Ole for reporting
Fix a bug , causing some deep penetrations to be missed. Not likely to have impacted many users, as such deep penetrations should have prevented in the first place.
Thanks a lot to Andy O'Neil for reporting and reproduction case.
2008-12-05 22:40:13 +00:00
erwin.coumans
b89b71b38d
improving the SSE constraint solver performance: avoid a FPU/minus operation, by replacing a _mm_add_ps(-normal,X) by _mm_sub_ps(X,normal)
2008-12-03 17:40:01 +00:00
erwin.coumans
6966b627a9
update ChangeLog
2008-12-03 06:20:23 +00:00
erwin.coumans
452fd24501
use 0.2 for erp, 0.4 makes stacks very spungy
2008-12-03 06:09:25 +00:00
erwin.coumans
a064fd2052
Use the opposite constraint axis inside the constraint solver for the second object (-normal).
...
This makes it easier to port existing constraints and makes it 100% compatible with ODE quickstep constraint layout (getInfo2)
2008-12-03 04:52:23 +00:00
erwin.coumans
12a9a6e412
reverted patch, it breaks all the demos.
2008-12-02 22:32:45 +00:00
erwin.coumans
23bb0d94e6
documentation/parameter name fix for btMatrix3x3::setEulerZYX. There is no change in behaviour, no compatibility issues.
...
Thanks Tully Foote for the patch.
http://code.google.com/p/bullet/issues/detail?id=157
2008-12-02 22:27:26 +00:00
erwin.coumans
76b3e44117
Enable contact constraint in the obsolete/experimental SpuParallellSolverTask. It will be replaced by a better parallel constraint solver.
2008-12-02 07:39:13 +00:00
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
rponom
09aa2dbbe7
CPU implementation of btCudaBroadphase added.
...
It is called bt3DGridBroadphase and btCudaBroadphase is now derived from it rater than from btSimpleBroadphase
Test of bt3DGridBroadphase was added to CDTestFramework
2008-11-25 03:16:11 +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
rponom
b8b2d8f69b
Test for btCudaBroadphase added
2008-11-15 00:22:17 +00:00
rponom
afec653726
New version of btCudaBroadphase compatible with Bullet and better performance
2008-11-15 00:21:09 +00:00
rponom
8abddb2400
Fixed deleting objects procedure for btSimpleBroadphase
2008-11-15 00:17:59 +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
john.mccutchan
a6fb51a871
Switch multithreaded flag to disable by default (pass
...
--enable-multithreaded) to enable BulletMultiThreaded
2008-11-14 23:55:54 +00:00