Commit Graph

1762 Commits

Author SHA1 Message Date
erwincoumans
df3ddaca5e Merge pull request #585 from erwincoumans/master
btMultiBody joint friction/damping infrastructure
2016-03-17 16:29:40 -07:00
erwincoumans
fe92de3e50 add infrastructure float btMultiBodyLink m_jointDamping, m_jointFriction (actual damping/friction is in a separate commit)
add door.urdf for testing damping/friction
2016-03-17 14:54:46 -07:00
erwincoumans
857a4e98e8 Merge pull request #584 from erwincoumans/master
turn test/SharedMemory/test.c into a gtest for CI unit testing in github
2016-03-15 23:15:18 -07:00
Erwin Coumans
aa3daaa8c6 turn test/SharedMemory/test.c into a gtest for CI unit testing in github
remove overly verbose printfs in importers
fix axis in r2d2.urdf
2016-03-15 22:47:53 -07:00
erwincoumans
2ef8669e75 Merge pull request #581 from erwincoumans/master
Use higher precision GJK/EPA collision tolerances in double precision mode. Fix Lua example
2016-03-12 08:58:16 -08:00
Erwin Coumans
87e5128ba8 fix some typos (need to merge into a single implementation later!) 2016-03-11 17:47:00 -08:00
Erwin Coumans
625ea96a3e accidently moved line in wrong place 2016-03-10 23:28:02 -08:00
Erwin Coumans
ea6ecd3579 Use higher precision GJK/EPA collision tolerances in BT_USE_DOUBLE_PRECISION
See https://raw.githubusercontent.com/billhoffman/bullet-pod/ac6aae3e3ee8137de484471094a65bfe166898b4/bullet_gjk_accuracy_patch.diff
2016-03-10 23:12:22 -08:00
hujiajie
3ed7ecbb58 Fix ternary selection operator on float scalars in OpenCL kernels.
According to Section 6.3(i) of the OpenCL 1.1 specification, the first
expression of the operator cannot be a float.
2016-03-11 09:40:40 +08:00
hujiajie
ad6fb3afc1 The 'static' storage-class specifier is not supported in OpenCL.
This is documented in Section 6.8 (g) in OpenCL 1.1 specification.
2016-03-08 08:49:28 +08:00
Michael Korn
e80bafdf66 fix for issue in getAngleShortestPath()
Testing squared norm for <0 does not make any sense. In Addition giving the range of the return values is a great help to understand the descriptions.
2016-03-04 22:01:29 +01:00
Erwin Coumans
4a70df2dfb fix some warnings 2016-02-29 15:37:03 -08:00
Erwin Coumans
25409f93c7 re-quantize for before using the data in quantize method
this fixes issue 558
2016-02-23 08:46:09 -08:00
erwin coumans
6c9bfce975 Support btMultiBody soft contact using ERP and CFM. Also support custom relaxation parameter to allow successive over relaxation.
Added demos for rigid and multi body soft (compliant) contact.
Will also add simplified Hertz compliant contact, by dynamically modifying the ERP/CFM to mimic a non-linear spring.
Note that btManifoldPoint is growing too big, we need to implement proper contact constraints derived from btTypedConstraint.
2016-02-22 18:40:00 -08:00
erwin coumans
645a88176d Enable softness for btRigidBody contacts. This is implemented by some value (CFM, constraint force mixing) to the main diagonal of A.
CFM for contacts use world CFM value by default, and can override with custom CFM value using the
BT_CONTACT_FLAG_HAS_CONTACT_CFM stored in m_contactPointFlags.
Boolean m_lateralFrictionInitialized is replaced 'BT_CONTACT_FLAG_LATERAL_FRICTION_INITIALIZED' flag stored in int m_contactPointFlags in btManifoldPoint.
Enable successive over-relaxation parameter (SOR) for contacts. btMLCPSolver uses global CFM.
In one of the next commits, contact softness will be enabled btMultiBody contacts.
Also need to review use of CFM in btMLCPSolvers (only world CFM is used at the moment)
2016-01-22 17:43:36 -08:00
Erwin Coumans
46ddfa39d7 remove unused function in btRigidBody (btSetCrossMatrixMinus)
thanks to Stefan for reporting.
2015-12-08 07:54:19 -08:00
erwincoumans
83c560262b Merge pull request #548 from AndrewMeadows/fix-cmake-whitespace
fix whitespace formatting in cmake files
2015-12-07 15:06:59 -08:00
Andrew Meadows
c0c1691c25 fix whitespace formatting in cmake files 2015-12-07 14:08:04 -08:00
Andrew Meadows
a860fff3ad fix cmake to succeed with -DBUILD_BULLET3=0 2015-12-07 13:43:17 -08:00
Erwin Coumans
5da9e37a05 add BT_DECLARE_ALIGNED_ALLOCATOR() for btTypedConstraint 2015-11-26 12:43:10 -08:00
erwincoumans
0e247264ff use BT_ID_MAX as std::max is not portable (older Visual Studio versions break) 2015-11-24 17:34:43 -08:00
Erwin Coumans
1f4148d322 fix shared lib build 2015-11-24 12:05:50 -08:00
Erwin Coumans
03cc4f0554 add InverseDynamics example for example browser
add CMake support for BulletInverseDynamics and BulletInverseDynamicsUtils
2015-11-24 11:12:02 -08:00
erwincoumans
75d657ec85 change 4 spaces to tab for src/BulletInverseDynamics
fix unit test in single precision compilation (use delta t of 0.01 if BT_ID_USE_DOUBLE_PRECISION is not defined)
2015-11-19 12:08:04 -08:00
Erwin Coumans
069936218a [InverseDynamics] Add custom namespaces per configuration
BulletInverseDynamics can be configured to compile using Eigen
instead of Bullet's LinearMath.

Adds a preprocessor defined specific namespace for each
configuration to produce linker errors if incompatible
libraries are linked (eg, builtin core library and
utilities for bullet types).
2015-11-18 08:01:32 -08:00
erwincoumans
de763a26e7 fix portability of BulletInverseDynamics (usual issues: std::pow, M_PI, std::vector->idArray<T>::type, snprintf, pass vec3 and mat33 by const reference, not by value) 2015-11-17 21:51:02 -08:00
Erwin Coumans
aa4d119f98 add real-time safe Inverse Dynamics library+test+utils
an example for the example browser will follow.
thanks to Thomas Buschmann
2015-11-17 08:27:38 -08:00
Erwin Coumans
f6a8079353 sync repo 2015-11-11 12:44:26 -08:00
Erwin Coumans
91204e8ed2 avoid naming conflicts Bullet3/Bullet3 2015-11-08 19:31:03 -08:00
Erwin Coumans
72b68409da clang gets confused/crashes when using the same namespace,
need to look if it is a real error or clang issue
should fix Issue 520
https://github.com/bulletphysics/bullet3/issues/520
2015-11-08 13:49:37 -08:00
erwincoumans
3b9b803683 b3CreateBoxCommandSetColorRGBA: allow to specify color when creating bodies through shared memory API
Parse and use colors from URDF file (single rgba color per link, not per visual)
Rename btMultiBody 'stepVelocities' to 'computeAccelerationsArticulatedBodyAlgorithmMultiDof'
btHashMap, add const Value* operator[]
remove a few more obsolete btMultiBody methods (on the non-multi-dof path)
fix spelling typo in fillConstraintJacobianMultiDof (fil -> fill)
Add mention to Jakub Stepien for his work on btMultiBody
2015-11-06 17:11:15 -08:00
erwincoumans
2920d7e61f Only support btMultiBody multi-dof version (remove non-multi-dof path)
Use ATTRIBUTE_ALIGNED16 for btMultiBody
Always disable parentCollision for btMultiBody::setupFixed
2015-11-05 21:17:46 -08:00
erwincoumans
d6464ce40d add 'replay' command log feature: no mouse interaction during replay, and use a fixed number of sim steps in stepSimulation.
workaround for reversed separating normal in gjk/epa when using very small shapes, detect case and revert normal.
use smaller world size (10 units versus 100) for higher resolution shadow map
use a hard-coded rolling friction of 0.2 for objects in physics server (will make this configurable)
fix loading of command log files, when platform features are different (64bit/32bit)
2015-11-01 12:48:15 -08:00
erwin coumans
dc81e31e74 upload work-in-progress Collision example using C-API. 2015-10-28 11:48:36 -07:00
erwin coumans
5a21424662 update to examples/Collision and RealTimeBullet3Collision 2015-10-18 23:43:37 -07:00
erwin coumans
7ac497d6f2 WIP example for real-time collision detection features of Bullet 2015-10-18 14:01:25 -07:00
=
4df58c35c7 use const in PhysicsClientC_Api, thanks to Roland
fix some warnings for Clang, thanks to Aaron
2015-10-15 08:15:22 -07:00
erwincoumans
14eb70a06f Merge pull request #466 from rioharu/patch-1
Update btInternalEdgeUtility.cpp, closes issue #389
2015-10-09 10:09:01 -07:00
Jukka Jylänki
62d977f5cd Add missing <stdio.h> include in src/LinearMath/btMatrixX.h for printf() access. (missing in Emscripten/musl libc builds otherwise) 2015-10-08 18:19:10 +03:00
erwincoumans
cb13054f2e Merge pull request #465 from cameronwhite/conetwist-motor
Use the max motor impulse for cone twist constraints when the motor is enabled.
2015-09-10 18:08:19 -07:00
=
3d10338ed5 fix warnings (thanks to Aaron!) 2015-09-10 17:52:41 -07:00
=
5be9119455 run the PhysicsServerExample 'stepSimulation' smoother
fix a warning in ThirdParty/stb_image
fix an single/double precision issue in btPolyhedralContactClipping.cpp
2015-09-08 13:39:09 -07:00
Cameron White
86880a2795 Only use the max motor impulse if it is positive (it defaults to -1). 2015-08-27 16:03:02 -04:00
rioharu
086902ea51 Update btInternalEdgeUtility.cpp
Fixes issue #389 by removing code which causes a segfault in MinGW's GCC by removing code which did not affect subsequent operations.
2015-08-26 15:10:30 -06:00
erwincoumans
83c4d25819 Merge pull request #460 from erwincoumans/master
initial implementation to send debug lines from physics server to client
2015-08-20 19:47:23 -07:00
Erwin Coumans
9c71a0bb7a Google Code -> github in btCollisionWorld.h documentation 2015-08-12 21:16:23 -07:00
erwincoumans
5853d071fb Merge pull request #445 from erwincoumans/master
improve usability of ExampleBrowser
2015-08-05 10:09:42 -07:00
erwincoumans
b316f30040 improve usability of ExampleBrowser
store command-line arguments in bulletDemo.txt
save/load of configuration, save demo name instead of index
add setBackgroundColor as example (background_color_red) and
mouse move/wheel speed config (mouse_wheel_multiplier and mouse_move_multiplier)
(saved after changing the demo)
default btIDebugDraw colors can be changed
b3CommandLineArgs::GetCmdLineArgument returns bool, and b3CommandLineArgs::addArgs added
fix copy/paste
2015-08-04 18:24:30 -07:00
Cameron White
29b251e81b Use the max motor impulse if the motor is enabled. 2015-08-04 10:54:34 -04:00
Andrew Meadows
ac7dc87a4d btCompoundShape data members protected not private 2015-08-03 16:26:23 -07:00