erwin.coumans
126fd06ac6
remove the 'isActive' test when merging simulation islands for constraints and speculative contacts, it is wrong
...
This fixes issue 709
2013-09-16 17:25:05 +00:00
erwin.coumans
c28652de37
add serialization for btGearConstraint
...
support 'linearFactor' and 'angularFactor' for btRigidBody world importer
2013-09-14 17:51:09 +00:00
erwin.coumans
6fd4738a9e
use the old data structures for single precision serialization, to make it backwards compatible
...
So files created by the new double precision serialization of Bullet 2.82 cannot be read by old Bullet versions,
but double precision serialized file generated by older Bullet versions can be read by Bullet 2.82 or newer.
2013-09-14 16:49:31 +00:00
erwin.coumans
e22a11c021
update serialization structures
2013-09-14 06:22:22 +00:00
erwin.coumans
1aac33f6b6
refactor constraint serialization, so that double precision is maintained,
...
changes are backwards compatible (btBulletWorldImporter can load old .bullet files)
but not forwards compatible (constraints in new .bullet files are ignored/unrecognized by old Bullet SDK)
This commit is for Issue 734. Some more work needs to be done for btGImpactMeshShapeDoubleData and thus btStridingMeshInterfaceDoubleData and btMeshPartDoubleData
2013-09-14 06:08:50 +00:00
erwin.coumans
e94a2137b0
minor update manual
...
fix vehicle demo (heightfield is broken, when using very large scaling factor)
add btConeShape serialization, see Issue 725
add btGearConstraint get/set, see Issue 685 and Issue 671
2013-09-13 16:34:39 +00:00
erwin.coumans
8f4f99809e
use btScalar instead of float for btTriangleMesh
...
thanks to nsarkozi. This fixes issue 704
2013-09-12 22:22:15 +00:00
erwin.coumans
29915ba7fd
bump up VERSION to 2.82 in various places, there is still some more issue to be fixed before release.
2013-09-12 20:37:30 +00:00
erwin.coumans
fa2276f1ca
add option for slightly more accurate, and slightly slower algorithm for ray versus convex, used in btCollisionWorld::rayTest.
...
rayResult.m_flags |= btTriangleRaycastCallback::kF_UseGjkConvexRaytest;
See Demos/RaytestDemo/RaytestDemo.cpp for usage
This fixes issue 146, longest outstanding from 2008.
2013-09-12 20:25:06 +00:00
erwin.coumans
e792f0e549
Add faster processing of btCompoundShape versus btCompoundShape, using a dedicated btCompoundCompoundCollisionAlgorithm,
...
with hash pair caching and tandem tree traversal. It should be much faster, when using many child shapes for both compounds.
Fix iOS compilation, added header.
2013-09-12 19:28:39 +00:00
erwin.coumans
1685729b80
Show how to use the btBroadphaseInterface::aabbTest, it collects all objects that overlap with a given bounding box
...
This fixes old Issue 114
Removed 2 warnings
2013-09-11 05:52:19 +00:00
erwin.coumans
a197c58935
Add #ifdef BT_NO_SIMD_OPERATOR_OVERLOADS before including Bullet headers, to avoid clashes with XNAMath.h
...
Fixes Issue 710
error C2084: function 'XMVECTOR operator +(FXMVECTOR,FXMVECTOR)' already has a body
error C2084: function 'XMVECTOR operator -(FXMVECTOR,FXMVECTOR)' already has a body
error C2084: function 'XMVECTOR operator *(FXMVECTOR,FXMVECTOR)' already has a body
2013-09-11 00:01:48 +00:00
erwin.coumans
bb379bd84c
fix one of the btCompoundShape scaling issues, this fix breaks the API (need to add warning at the next release)
...
fixes https://code.google.com/p/bullet/issues/detail?id=374 and
https://code.google.com/p/bullet/issues/detail?id=444
2013-09-10 23:34:23 +00:00
erwin.coumans
7195b54d13
Fix Issue 712, related to NVIDIA CUDA check in CMakeLists.txt
...
Enable btGImpact raycast optimization, thanks to C0DEFACE, see Issue 664
Cull triangle/AABB for concave/heightfield shapes, thanks to Danny Chapman
fix btGetCpuCapabilities, thanks to Ian Ollman! See https://code.google.com/p/bullet/issues/detail?id=738
2013-09-10 23:09:24 +00:00
erwin.coumans
7633dc8b13
use __int64 for 64bit uint64_t for 64bit Visual Studio
...
See https://code.google.com/p/bullet/issues/detail?id=717
allow parallel constraint solver in double precision
See https://code.google.com/p/bullet/issues/detail?id=728
2013-09-10 21:26:19 +00:00
erwin.coumans
c160bfe74c
applied Character controller patch #20 from Issue 198
...
See https://code.google.com/p/bullet/issues/detail?id=198
2013-09-10 20:40:42 +00:00
erwin.coumans
d50be40f8e
Fix Issue 2644, compile error due to use of removed stack alloc
2013-09-10 20:15:52 +00:00
erwin.coumans
0779a274de
fix Clang issue
...
https://code.google.com/p/bullet/issues/detail?id=736
2013-09-10 20:06:24 +00:00
erwin.coumans
771ae1ce41
fix usage of internal API for Apple iOS devices
...
Thanks to nharishankar for the report, see Issue 738
2013-09-10 19:59:33 +00:00
erwin.coumans
6b3828d74b
removed the early out, it was not general
2013-09-10 19:52:58 +00:00
erwin.coumans
197e17780a
replace 'float' by 'double' in btHingeConstraintDoubleData. See Issue 734
2013-09-03 16:46:18 +00:00
erwin.coumans
92eed617cd
fix SSE issue with XCode 3
2013-05-14 12:38:06 +00:00
erwin.coumans
33688fc011
removed name from source code
2013-04-02 18:33:00 +00:00
erwin.coumans
976cd0028a
Add a missing header file btCollisionObjectWrapper.h
...
Thanks to Alexander Meissner
Fixes Issue 684
2013-01-03 18:51:20 +00:00
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
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
erwin.coumans
26c713423f
add RollingFrictionDemo
2012-09-15 07:03:23 +00:00
erwin.coumans
7eebb79ced
implemented rolling friction, using a contact constraint. Useful to get rolling spheres to rest, even on a slightly sloped plane.
...
See http://www.youtube.com/watch?v=RV7sBAsKu4M and Bullet/Demos/RollingFrictionDemo
Fixes in FractureDemo (mouse picking constraint needs to be removed, otherwise constraint solver crashes/asserts)
2012-09-15 06:52:17 +00:00
erwin.coumans
54744b6ab9
added gyroscopic force option for btRigidBody, body->setFlags(BT_ENABLE_GYROPSCOPIC_FORCE);
...
Note that it can easily introduce instability at regular (60Hertz) simulation steps so it is generally best to not use the option.
If needed, use a very small internal step, such as 1000 Hertz (world->stepSimulation(dt,100,1./1000.f); or stepSimulation(1./1000.,0);
2012-09-14 21:39:48 +00:00
erwin.coumans
3e9f35c0fd
Add btGearConstraint, with a demo in Bullet/Demos/ConstraintDemo
...
Thanks to Dimitris Papavasiliou for the idea.
2012-09-13 22:40:39 +00:00
erwin.coumans
2dfde77bac
delete some unused projects
2012-09-13 00:25:44 +00:00
erwin.coumans
47cae15fe5
add missing file in AllBulletDemosOSX
...
fix RaytestDemo CMakeLists.txt
2012-09-13 00:14:30 +00:00
erwin.coumans
737a2829bb
remove rigid body gpu pipeline, the latest version is at https://github.com/erwincoumans/experiments
2012-09-13 00:07:58 +00:00
erwin.coumans
c2f9d927c2
fix ray test kF_FilterBackfaces and kF_KeepUnflippedNormal flags
...
add Demos/RaytestDemo to show/test rayTest
fix premake batch files
2012-09-12 23:19:05 +00:00
erwin.coumans
73082e995c
enable AMD OpenCL sdk for linux too
...
Fixes Issue 641
2012-09-12 16:42:03 +00:00
erwin.coumans
9a460942a9
register the gimpact collision algoritm in the SerializeDemo by default
2012-09-11 22:28:41 +00:00
erwin.coumans
2871a3d30f
enable import/deserialization of optimizedBvh data in a .bullet file
2012-09-11 19:59:00 +00:00
erwin.coumans
4eb5240cbe
Applied patch for character controller by bjorn.wesen. Fixes Issue 644.
...
Fixed some warnings in double-precision compile
2012-09-11 04:36:57 +00:00
erwin.coumans
d99d9779a2
cast to char to avoid C++11 issue
...
Fixes Issue 716.
2012-09-11 03:58:11 +00:00
erwin.coumans
1b7642f0f5
Prepare for 2.81 release, increase version numbers
...
Fixed DNA serialization for C++11: avoid negative char values
Fixes 617. (needs to be tested)
2012-09-11 03:49:50 +00:00
erwin.coumans
8c56528a79
Avoid using restitution for ccd motion clamping. Restitution for fast moving objects should be handled by btDiscreteDynamicsWorld::createPredictiveContacts
...
(make sure to merge islands based on those predictive contacts too, added some check in the solver)
This fixes Issue 356.
Use same solver settings for AllBulletDemos
Make sure to embed the setCcdSweptSphereRadius inside the actual collision shape (for shoot box)
2012-09-11 03:12:32 +00:00
erwin.coumans
9612561113
add btDiscreteDynamicsWorld::createPredictiveContacts after discrete collision detection and add temporary contact manifolds, for the constraint solver.
...
This should improve 'ccd' handling when using world->getDispatchInfo().m_useContinuous = true;body->setCcdSquareMotionThreshold(...); body->setCcdSquareMotionThreshold(...)
shoot smaller boxes (test)
use yellow instead of orange for contact point normals
tweak default erp and erp2 values, now split impulse is on by default (need to check it)
2012-09-11 00:56:11 +00:00
erwin.coumans
9cfcabfc4c
disable all demos for premake4 iOS build (it only compiles HelloWorld, Benchmark and UnitTest for now)
...
add btAlignedFree to deleteCriticalSection
2012-09-10 16:02:30 +00:00
erwin.coumans
77b662d5fe
fix a few more warnings under Windows
...
fix linker issue due to unsigned/int variable
2012-09-10 04:46:39 +00:00
erwin.coumans
5417bae113
add zigzag heightfield for Ogre compatibility.
...
Fixes Issue 625. Thanks to KLLoyd!
2012-09-09 22:48:20 +00:00
erwin.coumans
f50cf5585a
fix MinGW compilation, use size_t instead of unsigned long
...
add missing virtual methods in SequentialThreadSupport
2012-09-09 22:19:54 +00:00
erwin.coumans
e2522c6f9b
re-enable debug drawing of box, instead of using the generic convex path.
...
Fixes Issue 622. Thanks for the report!
2012-09-09 22:08:23 +00:00
erwin.coumans
2fb970ce33
disable debug drawing in btCompoundCollisionAlgorithm
...
Fixes Issue 600.
Thanks to Stuart for the report.
2012-09-09 21:31:02 +00:00
erwin.coumans
6b8a571438
better fix for memory issue of BulletMultiThreaded
...
See Issue 271 and
http://www.bulletphysics.org/Bullet/phpBB3/viewtopic.php?p=&f=9&t=4043
2012-09-09 21:25:00 +00:00
erwin.coumans
ccfbb9fd79
revert memory deletions, should be done properly
2012-09-09 20:57:41 +00:00
erwin.coumans
491c91f486
fix memory leak in BulletMultiThreaded
...
Fixes Issue 271.
2012-09-09 20:53:55 +00:00
erwin.coumans
7bb4e0e1bd
fix ForkLiftDemo update (previous commit)
...
implement preallocate{Vertices,Indices} in btTriangleMesh. Fixes Issue 647.
2012-09-09 17:59:02 +00:00
erwin.coumans
ff72d64ffa
fix memory leak in Box2dDemo. Fixes Issue 619. Thanks to Joshua Downer for the report.
2012-09-09 17:31:10 +00:00