Commit Graph

2331 Commits

Author SHA1 Message Date
erwin.coumans
74c028ebae remove some quicksort test that breaks the build under MSVC 2005 SP1
Fixes Issue 680 together with this commit:
https://code.google.com/p/bullet/source/detail?r=2632
2012-12-20 22:47:54 +00:00
erwin.coumans
02a22f6329 Avoid using SSE in API when BT_USE_SSE_IN_API is not defined
Fixes Issue 683.
2012-12-20 22:09:59 +00:00
erwin.coumans
0c555a5afe just use 16-byte aligned data for solverbody, not 64byte
fixes Issue 659
2012-12-17 21:29:20 +00:00
erwin.coumans
7e14e79da0 Fix Issue 680, compilation error using Visual Studio 2005, service pack 1, quicksort compare function needs to be in a class.
Toggle between GJK and SAT (initializePolyhedralFeatures) in convexDecomposition at easch restart of the demo (spacebar)
2012-12-17 20:38:31 +00:00
erwin.coumans
c4548ec746 Add a helper method that creates a btCompoundShape from a btGimpactMeshShape, for more robust collision detection.
The idea is to create tetrahedra from each surface triangle, by moving its centroid inwards along the collision normal using depth.
If the centroid hits an internal triangle, it will stop there.

The commit also includes part of the gimpact raycast performance improvement, except for the actual btCollisionWorld part
(that file was out-of-date and needs manual patching)
2012-12-14 23:14:09 +00:00
erwin.coumans
27fd8ea0d7 make it more obvious that btBvhTriangleMeshShape cannot be used for moving objects. 2012-12-14 20:31:03 +00:00
erwin.coumans
1d4a5d950d Usually m_contactNormal2 == -m_contactNormal1, but not always, so
use a separate contactNormal1/contactNormal2 for each body in btSolverConstraint.

Thanks to Richard McDaniel for the patch.
2012-12-12 23:21:51 +00:00
erwin.coumans
fe92502332 fix build issue with GImpact, Issue 681
Thanks to Oskar Nordquist for the patch/report.
2012-12-12 20:33:51 +00:00
erwin.coumans
7c610ec045 use unsigned int indices in btGImpactMeshShape
See Issue 663
2012-12-07 19:20:06 +00:00
erwin.coumans
17ca9eb7e7 Fix compile error when defining DEBUG, include memset header
See Issue 678, thanks to Max for the report!
2012-12-07 18:21:14 +00:00
erwin.coumans
d54423f9c0 Fix compile error in Visual Studio 2005 build: only enable SSE/SIMD intrinsics for btVector3 for Visual Studio 2008 and higher 2012-12-07 18:16:04 +00:00
erwin.coumans
b4022e0f23 enable SSE by default in premake (SSE was already enabled for the cmake build system)
Thanks to Pierre for the report, see http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=8650
2012-12-05 23:24:03 +00:00
erwin.coumans
f5704d5981 Fix issue with btQuaternion::slerp, thanks to Martin Heistermann.
Fixes Issue 665
2012-11-25 17:19:17 +00:00
erwin.coumans
6964612e8c Remove #end in btScalar.h
Fixes Issue 674
2012-11-24 22:14:13 +00:00
erwin.coumans
9eddd42347 fix win32 (non-glut) cmake build.
add partId/index to btCollisionObjectWrapper to be able to recognize recursive shape indices (a btCompoundShape with a btGimpactShape child shape etc)
2012-11-10 01:42:35 +00:00
erwin.coumans
c4db79791c Improve the loading of serialized Bullet files, so that
after 'loadFileFromMemory' you can save the existing memory back to disk converted to native architecture endianness.
Fixed a bug that prevented big endian machines to load cloth data (due to wrong endian swap of pointer array)
Also improved the 'preswap' so that you can swap endianness on big endian machines (to little endian)
2012-11-10 00:51:51 +00:00
rponom@gmail.com
f35621eb01 Bug in ConeTwist constraint with tight limits fixed
ConeTwist constructor for one-body constraint modified
2012-11-09 19:22:05 +00:00
erwin.coumans
595dab2337 allow the Bullet world importer to save a copy with swapped endianness
See http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=8191
2012-10-31 07:25:54 +00:00
erwin.coumans
ff38230704 use the right m_bvhAabbMax/m_bvhAabbMin to adjust quantization 2012-10-11 16:36:16 +00:00
erwin.coumans
fe3cfe56b6 fix unaligned data issue, see Issue 657 2012-10-10 06:35:32 +00:00
erwin.coumans
79989a8d3d Force spuNodeCallback to be 16-byte aligned, so that we can use SIMD. Related to Issue 657
Recompute the quantization values in case the maximum/minimum extends roundtrip using quantize/unQuantize are out-of-range
(alternatively, pass in a larger quantizationMargin)
2012-10-10 04:21:36 +00:00
erwin.coumans
a32efa48c1 add BulletQuickstart.pdf and a reference to it from the old Bullet_User_Manual.pdf
add HelloWorld demo to premake
2012-10-08 19:01:47 +00:00
erwin.coumans
30b88f2f8e more work on the new Bullet manual/quickstart guide, and cross reference to HelloWorld.cpp source code 2012-10-06 20:56:44 +00:00
erwin.coumans
48e932c8d6 fix build 2012-10-05 22:12:41 +00:00
erwin.coumans
eaabf1a2c8 Expose btManifoldResult::calculateCombinedRestitution and btManifoldResult::calculateCombinedFriction as static member functions, so it can be reused for speculative contacts
Add speculative contact restitution, but disabled by default, not well tested (btDiscreteDynamicsWorld::setApplySpeculativeContactRestitution)
Add --with-double-precision option to premake build system
2012-10-05 21:15:11 +00:00
erwin.coumans
6be2689f01 add joint feedback (applied force and applied torque for a constraint) 2012-10-05 05:37:12 +00:00
erwin.coumans
394bb103f0 Fix src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
See Issue 643, thanks to Laurent at liquiddragon for the patch.
Fix warning, See Issue 655
2012-10-04 20:32:04 +00:00
erwin.coumans
416b8477b3 start to rewrite the Bullet manual and check-in the Latex source 2012-10-03 19:34:43 +00:00
erwin.coumans
74db95d827 disable sphere-box again, it seems broken
http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=8456

fix some warnings
2012-10-02 02:26:37 +00:00
erwin.coumans
6284ded4a1 remove intptr_t, it breaks the build and it was not necessary 2012-09-29 05:00:46 +00:00
erwin.coumans
cfb609f9d1 tweak CcdPhysicsDemo
remove wrong cp.m_lateralFrictionInitialized = false;
See http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?p=28851#p28851
2012-09-29 01:52:27 +00:00
erwin.coumans
79a792913d Add the option BUILD_MULTITHREADING to CMAKE, only enabled on APPLE and MSVC platforms. This controls multi-core (BulletMultiThreaded), MiniCL, DX11 and OpenCL acceleration.
On other platforms (Linux) it might work, but it is unsupported.
Fix some warnings in btBulletWorldImprter
2012-09-28 19:32:30 +00:00
erwin.coumans
60bf599246 perform GrahamScanConvexHull2D around an arbitrary oriented 2D plane in 3D, to fix some convex hull face merging problems
add compound shape support to BulletXmlWorldImporter and fix some compile issue under Debian (hopefully)
object picking change in the demos: create a ball-socket picking constraint when holding shift while mouse dragging, otherwise a fixed (6dof) constraint
add assert in constraint solver, when both objects have their inertia tensor rows set to zero
btPolyhedralContactClipping: add edge-edge contact point in  findSeparatingAxis (similar to the default GJK case)
2012-09-28 07:14:48 +00:00
erwin.coumans
837e5cb5e0 serialize rolling friction 2012-09-27 16:20:29 +00:00
erwin.coumans
4442a826ed add commandline arguments to serialize demo for xml export and Bullet import file name
update AntTweakBar version in CDTestFramework
add btCompoundShape support in BulletXmlWorldImporter (this importer is still premature/work-in-progress)
2012-09-26 19:47:18 +00:00
erwin.coumans
60c1b1918a fix bug for convex-convex polyhedral contact clipping, where the origin of the object is not located inside the convex hull of the vertices. 2012-09-23 18:35:19 +00:00
erwin.coumans
182c3034de fixes in btBulletXmlWorldImporter, and add premake4 support for the related demo 2012-09-22 05:27:35 +00:00
erwin.coumans
0fa444e851 fix Mac OSX build 2012-09-22 04:26:14 +00:00
erwin.coumans
6f60a388c6 add missing Demos/BulletXmlImportDemo
serialize DynamicsWorldInfo
2012-09-22 02:06:09 +00:00
erwin.coumans
f2c9cdfb11 add m_rollingFriction to serialization structures
add btContactSolverInfo and gravity to serialization structures
(actual serialization code will follow soon)
2012-09-21 23:37:24 +00:00
erwin.coumans
214579ec60 Allow btBulletWorldImporter to convert/export a .bullet file to XML
Add first version of btBulletXmlWorldImporter, still incomplete but it can read some files
Fix false assert in btSequentialImpulseConstraintSolver
2012-09-21 22:47:11 +00:00
erwin.coumans
7494463be8 reset the companion Id back to -1, because of a bug related to kinematic objects
Thanks to Francois for the report. See Issue 652
2012-09-20 11:32:27 +00:00
erwin.coumans
5bba00dea4 improve control over rolling friction, use the same m_rollingFriction for both linear factor and absolute clamping value. 2012-09-20 04:18:29 +00:00
erwin.coumans
59a29b1859 fix kinematic objects, see Issue 652
add m_rollingFriction to btRigidBody::btRigidBodyConstructionInfo
2012-09-20 03:32:52 +00:00
erwin.coumans
19583868a9 fix AllBulletDemosOSX, 16-byte alignment and Xcode project 2012-09-17 17:02:33 +00:00
erwin.coumans
a76e38eff0 fix link order so that the premake build works under Linux 2012-09-17 16:55:47 +00:00
erwin.coumans
8be5172df5 fix issue in the recent SSE implementation of setInterpolate3
align class
2012-09-17 16:03:47 +00:00
erwin.coumans
90643bec75 fix problem with btCylinderShape creation in RollingFrictionDemo 2012-09-16 19:26:27 +00:00
erwin.coumans
4934ce61fa tweak rolling friction in RaytestDemo 2012-09-16 17:23:39 +00:00
erwin.coumans
22fb7d5c1e improve rolling friction using anisotropic direction, to avoid resting in an instable position
(for implicit capsule, cylinder and cone shape)
See Bullet/Demos/RollingFrictionDemo for an example
2012-09-16 17:01:25 +00:00