Commit Graph

182 Commits

Author SHA1 Message Date
erwin.coumans
f3c3d2f156 + disable perturbation for btConvexPlaneCollisionAlgorithm, it introduces artifacts (additional points cause spheres/cylinders and other curved objects to move)
+ applied patch to mix double/single precision meshes independent from double/single precision Bullet build
Thanks to Ole for the patch, http://code.google.com/p/bullet/issues/detail?id=213
+ re-enable warming starting in constraint solver, it was disabled by accident
+ fix btConvexHullShape constructor, so accept vertices with non-16-byte striding
Thanks Shawn Baird for report and fix: http://code.google.com/p/bullet/issues/detail?id=204
2009-05-06 19:13:11 +00:00
erwin.coumans
459c22e7cb Synchronized changes of Bullet, from Blender.
Added optional flag btSoftBody::appendAnchor(	int node,btRigidBody* body, bool disableCollisionBetweenLinkedBodies=false), to disable collision between soft body and rigid body, when pinned
Added btCollisionObject::setAnisotropicFriction, to scale friction in x,y,z direction.
Added btCollisionObject::setContactProcessingThreshold(float threshold), to avoid collision resolution of contact above a certain distance.
Avoid collisions between static objects (causes the CharacterDemo to assert, when a dynamic object hits character)
2009-03-03 06:47:52 +00:00
erwin.coumans
3548c01985 add btCollisionWorld::updateSingleAabb see http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=3262
Fix memory leak, see http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=3266
Change contact breaking threshold
Add 'needsResponse' test for CcdMotionClamping, see http://code.google.com/p/bullet/issues/detail?id=179
Updated user manual (needs lots more work)
Added autoexp.dat, enabled Microsoft Visual Studio debug visualization for btAlignedObjectArray and btVector3.
2009-02-27 02:33:48 +00:00
erwin.coumans
8acadeb711 minor tweaks to demos: enable constraint debug drawing in AllBulletDemos, default constraint debugging size set to 0.3,
set svn:eol-style native for folder files
http://code.google.com/p/bullet/issues/detail?id=191
2009-02-18 22:52:03 +00:00
erwin.coumans
6d17f63c54 fix in btMinkowskiSumShape,
thanks to Kester Maddock for the report, reproduction case and fix:
http://code.google.com/p/bullet/issues/detail?id=194
2009-02-11 00:12:08 +00:00
erwin.coumans
7a2a98078a Fixes for broadphase/paircache determinism.
Revert definition for ATTRIBUTE_ALIGNED16, and try to force sizeof(btSolverConstraint) by using unions with btScalar, for non-btScalar data types.
Use btAssert and not assert.
Don't access btAlignedObjectArray elements, for zero sets
2009-02-10 23:50:21 +00:00
john.mccutchan
cd126aae8f Height field terrain shape fixes from tomva1@yahoo.com 2009-02-09 16:28:44 +00:00
erwin.coumans
24d1fea8b2 applied patches against warnings, thanks a lot Ole K.
http://code.google.com/p/bullet/issues/detail?id=165
http://code.google.com/p/bullet/issues/detail?id=164
http://code.google.com/p/bullet/issues/detail?id=166
http://code.google.com/p/bullet/issues/detail?id=167
2009-02-06 06:09:57 +00:00
erwin.coumans
ed4fab6c47 Fix in btCompoundShape that can cause removeChildShapeByIndex to crash.
Thanks to Benoit for the report and proposed fix:
http://code.google.com/p/bullet/issues/detail?id=171
2009-01-19 07:32:24 +00:00
erwin.coumans
994224c94f fix another bug caused by error-prone btCollisionShape 'getShapeType' refactoring.
Thanks a lot to Alex Silverman for the report and fix:
http://code.google.com/p/bullet/issues/detail?id=170
2009-01-19 07:19:24 +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
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
444fbfeb40 add obsolete 'getPoints' to be backwards compatible (breaks MayaPlugin) 2008-11-12 16:53:06 +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
cef40e5cce no 'const int' but inline for a few methods
remove redundant/unreachable 'breaks'
2008-11-08 05:27:26 +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
john.mccutchan
9b5df088de Committing height field terrain work from tomva1@yahoo.com 2008-11-06 19:41:31 +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
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
f49e44b13c Don't search for duplicate vertices by default in btTriangleMesh, it is just too slow.
See http://code.google.com/p/bullet/issues/detail?id=122
2008-10-30 22:09:04 +00:00
erwin.coumans
50930cec5c Some performance improvements and fixes related to btVector3 being aligned on SPU.
btQuantizedBvh has a version number, memory layout might be different now (due to aligned btVector3)
reorganized some data members of some classes, to reduce memory footprint
2008-10-29 02:45:43 +00:00
erwin.coumans
28e580c203 removed STL usage of Extras/ConvexBuilder and replaced by btAlignedObjectArray
fixed several warnings, thanks to sparkprime
added comments patch for linear math, thanks to Tully Foote
2008-10-28 18:52:46 +00:00
erwin.coumans
1ff6420ffb Use the add support for double and float triangle vertices. If it has a bad impact on performance, we can hide it behind an #ifdef for double precision vertex support.
Fix btConvexTriangleMeshShape::calculatePrincipalAxisTransform
Both thanks to Ole.

Use our own union to extract a scalar value from an SSE intrinsic (instead of relying on MSVC-only m128_u32
Thanks to BlindSide
2008-10-27 21:36:36 +00:00
erwin.coumans
003b6fa669 removed some warnings, as reported here:
http://code.google.com/p/bullet/issues/detail?id=123
Thanks sparkprime
2008-10-27 20:20:28 +00:00
erwin.coumans
6ed11057e0 add empty 'processAllTriangles' for btEmptyShape, thanks to Ole K.
http://code.google.com/p/bullet/issues/detail?id=120
2008-10-27 20:08:21 +00:00
erwin.coumans
6f28170422 Removed obsolete btPoint3: use btVector3 instead 2008-10-27 19:56:48 +00:00
erwin.coumans
22a79e61b1 updated Jamfile build system for reorganized files/folders 2008-10-11 05:23:00 +00:00
john.mccutchan
37f6b006af Move some code (mainly constructors) into header files.
Add parameter to optionally compute local AABB for ConvexPointCloudShape
Add setter and getter for cached local AABB in PolyhedralConvexShape
2008-10-08 16:56:08 +00:00
john.mccutchan
4e70343a8b by default, a btTriangleIndexVertexArray has no setPremadeAabb, so initialize m_hasAabb to zero. 2008-10-02 22:15:53 +00:00
erwin.coumans
0ff15db3f3 + capsule should subtract margin, and take local scaling into account.
+ boxshape uses btFsels
+ add assert in btGjkPairDetector that the new non-virtual method produces the same result as old non-virtual
2008-09-30 18:37:01 +00:00
erwin.coumans
9f28b2bc12 Improve damping formula in btRigidBody::applyDamping
Thanks to sparkprime, see http://code.google.com/p/bullet/issues/detail?id=74
Fixed btCompoundShape/btCapsuleShape/btGImpactShape for missing m_shapeType, and added an assert in DemoApplication::localCreateRigidBody for invalid shape types.
2008-09-30 00:34:58 +00:00
john.mccutchan
2b71784c86 Make getShapeType() a non virtual function.
Add localGetSupportVertexNonVirtual, localGetSupportVertexWithoutMarginNonVirtual, getAabbNonVirtual and getMarginNonVirtual methods to convex shape classes
2008-09-29 22:47:05 +00:00
erwin.coumans
682a0a1b90 fixed btSoftBodyConcaveCollisionAlgorithm, wrong bounding box transformation
added vertex welding option for btTriangleMesh (brute-force slow)
reject appendFace for some degenerate triangles (all 3 vertices/nodes need to be different)
add setVelocity method for btSoftBody
2008-09-26 21:59:03 +00:00
erwin.coumans
752eb583d0 some minor work on soft body, to make it easier to integrate into apps. 2008-09-24 02:41:50 +00:00
erwin.coumans
8db0285d4f attempt to support negative local scaling for btConvexHullShape, btConvexInternalShape-derived classes and btScaledBvhTriangleMeshShape 2008-09-20 23:47:38 +00:00
erwin.coumans
93d1d24234 Some changes in rendering, to get shadows for trimeshes
Add dynamic aabb tree (btDbvt) optimization for btCompoundShape/btCompoundCollisionAlgorithm
Add btTransformAabb util, todo: deploy it throughout the codebase
2008-09-10 05:20:04 +00:00
erwin.coumans
6c426f9545 make those members private, in btScaledBvhTriangleMeshShape 2008-09-07 05:30:35 +00:00
erwin.coumans
6b365a7ca5 Add get methods for localAabbMin/localAabbMax, required for btScaledBvhTriangleMeshShape 2008-09-07 05:00:55 +00:00
erwin.coumans
d836e83ea2 Added btScaledBvhTriangleMeshShape. The btScaledBvhTriangleMeshShape allows to instance multiple differently scaled versions of an existing btBvhTriangleMeshShape.
All those instances re-use the same btBvhTriangleMeshShape child shape (and its btOptimizedBvh).
2008-09-07 04:59:57 +00:00
erwin.coumans
398d681b22 fixed compile error for btConvexTriangleMeshShape.
Thanks to slackydeb for the report, http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2567
2008-09-05 18:30:18 +00:00
erwin.coumans
359c84d3b3 Fix previous commit, accidently removed some aabbMin/aabbMax assignments.
move margin calculation for aabb before basis transform.
2008-09-05 00:26:02 +00:00
erwin.coumans
d8a5bf2c9c Calculation of bounding box: margins should be added before basis transform.
Disable btSphereBoxCollisionAlgorithm, it is broken.
More fixes for btSimpleBroadphase
Moved quickstep to Extras/quickstep folder, so developers don't get confused which constraint solver is default.
2008-09-04 22:53:24 +00:00
erwin.coumans
ae1702cfca Bugfix in btOptimizedBvh, update curNodeSubPart correctly.
Thanks to Ole K. for the report and patch:
http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2558&p=10251#p10251
2008-09-04 18:31:28 +00:00
erwin.coumans
7380db7653 Methods to compute more accurate inertia tensor for btCompoundShape and btConvexTriangleMeshShape.
Thanks to Ole K. for the fixes, see http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2562
2008-09-04 18:20:32 +00:00
erwin.coumans
cc3e3a851f fix for btPolyhedralShape::setLocalScaling (and derived classes such as btConvexHullShape): recalcLocalAabb.
Thanks to pico for the report: http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2550&p=10207#p10207
2008-09-02 17:32:57 +00:00
erwin.coumans
f655eff89f add support for premade aabb in btStridingMeshInterface/btBvhTriangleMeshShape,
Thanks Roy Eltham, http://code.google.com/p/bullet/issues/detail?id=70
2008-08-29 05:39:17 +00:00
erwin.coumans
80f80df7e3 set linear/angular velocity to zero when objects are asleep
Thanks to  http://code.google.com/p/bullet/issues/detail?id=73
improve performance of btConvexTriangleMeshShape::recalcLocalAabb
Thanks to fullmetalcoder, http://code.google.com/p/bullet/issues/detail?id=67#makechanges
2008-08-29 05:30:50 +00:00
erwin.coumans
b21d8caa9a Added more Doxygen comments for classes in src/BulletCollision/CollisionShapes 2008-08-27 22:01:50 +00:00
erwin.coumans
db2514e930 provide serialization for btOptimizedBvh, using btQuantizedBvh. 2008-08-27 01:15:34 +00:00
erwin.coumans
79b6f7a772 Removed (circular) dependency between broadphase and collision shapes: moved parts CollisionShapes/btOptimizedBvh into BroadphaseCollision/btQuantizedBvh 2008-08-26 23:40:51 +00:00