Commit Graph

226 Commits

Author SHA1 Message Date
Xuchen Han
6beeac7065 refactor contact solve 2019-08-23 17:32:41 -07:00
Xuchen Han
ccd8c3a47c fix scope override in btMultiBody and scalar type inconsistency in btDeformableBodySolver 2019-08-22 10:12:14 -07:00
Xuchen Han
4e1c1a30a7 remove world dependency from btDeformableBodySolver,btDeformableBackwardEulerObjective, and btCGProjection; reduce invasion into multibody world, all chnages are cosmetic now 2019-08-21 22:17:46 -07:00
Xuchen Han
f33532273a sync interpolationTransform for multibody in integrateTransform; revert changes to voxel size in sparseSDF 2019-08-21 16:03:54 -07:00
Xuchen Han
076c8b11df revert the changes to damping of multibody external forces 2019-08-20 18:13:38 -07:00
Xuchen Han
07bf736aeb build islands once and process islands arbitrary number of times in update constraints 2019-08-16 13:45:29 -07:00
Xuchen Han
cfbd6c512a fix bug introduced in clearing m_manifold; 7e37d3fd21069571adb4c1e4ffacbd71dd02c0ba 2019-08-16 13:45:29 -07:00
Xuchen Han
26983b05e2 modify constraint setup so that contact constraints are persistent in a single CG solve but motor constraints are applied only once 2019-08-16 13:45:05 -07:00
Xuchen Han
94aeb4657b add comment and initialization 2019-08-16 13:45:05 -07:00
Xuchen Han
436b6c6963 separate multibody position prediction into standalone function 2019-08-08 17:14:13 -07:00
Xuchen Han
8cc7cb59d7 clean up examples 2019-08-02 14:06:42 -07:00
Xuchen Han
3dc8abcf36 only call buildIslands once for multibody in each timestep 2019-08-02 13:15:06 -07:00
Xuchen Han
f1e7ce9ce1 add multibody interpolation transform so that collision detection is consistent with rigidbody 2019-08-02 13:15:06 -07:00
Xuchen Han
233a381e7c add correct impulse matrix to multibody-deformable contact 2019-08-02 13:15:00 -07:00
Xuchen Han
77d670ae41 separate external force solve from constraint solve and eliminate damping in external force solve 2019-08-02 13:12:41 -07:00
Xuchen Han
c4e316f005 btDeformableRigidWorld now inherits from btMultiBodyDynamicsWorld instead of btSoftRigidDynamicsWorld 2019-08-02 13:12:41 -07:00
Erwin Coumans
3eedb2a6f2 fix rotational friction between btMultiBody and btRigidBody 2019-07-24 22:07:16 -07:00
Erwin Coumans
f838e22bd9 fix some warnings 2019-05-31 19:00:38 -07:00
Rémi Verschelde
d85b800702 Convert DOS (CRLF) source files to Unix (LF) line endings
Excluded `examples/pybullet/gym/pybullet_data/` which has many (3000+)
CRLF data files (obj, mtl, urdf), and `docs/pybullet_quickstart_guide`
which has generated .js and .htm files with CRLF line endings too.
2019-05-22 10:01:32 +02:00
Andrea Catania
4dad15946b Multibody memory invalid writing
Related #2233
2019-05-06 17:56:18 +02:00
erwincoumans
38f45d7137 Update btMultiBodyDynamicsWorld.cpp 2019-04-27 14:16:44 -07:00
erwincoumans
a929e8f2e5 Merge pull request #2203 from erwincoumans/master
implement stablePD control version of testLaikago,  fix getCameraImage in VR,  only report solver analytics if enabled using setPhysicsEngineParameter
2019-04-15 08:52:03 -07:00
erwincoumans
e97a7d77af only report solver analytics if enabled using setPhysicsEngineParameter(reportSolverAnalytics=1) 2019-04-14 18:20:20 -07:00
erwincoumans
5ff52e47d9 report constraint solver analytics data, currently for each island the number of solver iterations used and remaining residual error. 2019-04-11 22:19:02 -07:00
Steven
bdf0553077 don't need to call the computeAccelerationsArticulatedBodyAlgorithmMultiDof() the second pass if the m_internalNeedsJointFeedback is false. 2019-04-09 20:13:54 +08:00
erwincoumans
a9e350b0fb Merge pull request #2141 from erwincoumans/blocksolver
solver experiment
2019-03-06 22:02:44 -08:00
erwincoumans
04441a29cc Implement 'cone friction' for the rolling friction, to avoid curved trajectories for contact with rolling friction enabled.
(and separate spinning friction from rolling friction)
Fixes Issue 2117
2019-03-03 17:10:01 -08:00
erwincoumans
36a9dcf368 remove src/BulletDynamics/Featherstone/btMultiBodyBlockConstraintSolver.cpp and examples/ConstraintSolvers/* code
revert changes to btMultiBodyConstraintSolver/btSequentialImpulseConstraintSolver related to btMultiBodyBlockConstraintSolver
2019-02-27 17:10:17 -08:00
erwincoumans
48d84e7899 revert experiment not passing the constraint solver back down from btMultiBodyDynamicsWorld to btDiscreteDynamicsWorld. 2019-02-27 16:00:56 -08:00
erwincoumans
d7e087de16 prepare small experiment with block solver 2019-02-26 23:27:05 -08:00
erwincoumans
c44471c38c preparation for block solver btRigidBody. 2019-02-26 20:24:15 -08:00
erwincoumans
bdf9b10246 more work on pybullet_envs.deep_mimic.
allow btMultiBody to not wakeup (for some RL experiments)
move deep_mimic motion files to data/motions folder, so we can use the args files unmodified.
2019-02-18 17:57:02 -08:00
erwincoumans
014c68388e fix createVisualShape.py ray vertical/horizontal and retina scale, fixes Issue 2085
fix memory leak in removeBody, fixes issue 2086
2019-01-30 15:29:43 -08:00
erwincoumans
93087f36df avoid conflicts when using a unity build (single cpp file including many other cpp) 2019-01-23 13:35:58 -08:00
erwincoumans
ae8e83988b Add preliminary PhysX 4.0 backend for PyBullet
Add inverse dynamics / mass matrix code from DeepMimic, thanks to Xue Bin (Jason) Peng
Add example how to use stable PD control for humanoid with spherical joints (see humanoidMotionCapture.py)
Fix related to TinyRenderer object transforms not updating when using collision filtering
2019-01-22 21:08:37 -08:00
Erwin Coumans
19aafd5221 PyBullet: handle the switch from fixed base to floating base when changing mass from zero to non-zero 2019-01-03 17:35:12 -08:00
erwincoumans
8e8c3fb315 few fixes in inverse dynamics 2018-12-19 20:15:30 -08:00
erwincoumans
7dd524075c Implement btMultiBodySphericalJointMotor, able to track a quaternion position target.
Expose this btMultiBodySphericalJointMotor through PyBullet.setJointMotorControlMultiDof
Expose PyBullet.getQuaternionSlerp
Improve PyBullet.setJointMotorControlMultiDof
Improve humanoidMotionCapture.py with slerp and using setJointMotorControlMultiDof
Expose  btMultiBody::spatialTransform
Fix btMultiBody::setupPlanar from DeepMimic codebase
Add support for multidof joints in btMultiBody::compTreeLinkVelocities, thanks to DeepMimic codebase @xbpeng
2018-11-13 14:32:18 -08:00
erwincoumans
0b2142414d fix usage of btMultiBody::setJointPosMultiDof/setJointVelMultiDof 2018-11-11 19:04:07 -08:00
erwincoumans
17219f84c6 make setJointPosMultiDof and setJointVelMultiDof argument const.
add PyBullet.resetJointStateMultiDof / getJointStateMultiDof, for preliminary support for spherical and planar joints
2018-11-10 14:26:31 -08:00
Erwin Coumans
882252f8c0 move global from btMultiBody into dynamicsWorld.getSolverInfo 2018-11-05 10:50:03 -08:00
Erwin Coumans
dc2d54df2c remove 32bit build ARCH from xcode4 generated files (premake4)
optimization in btMultiBody::fillConstraintJacobianMultiDof:
only compute links between current link and root
2018-10-20 10:44:43 -07:00
erwincoumans
332cbfa609 fix typo in previous commit 2018-10-06 18:37:51 -07:00
erwincoumans
71d4a90c98 btMultiBody: fix indexing issue causing wrong friction to be reported (has no effect, since we don't use warmstarting for multibody) 2018-10-06 15:25:22 -07:00
erwincoumans
ab8f16961e Code-style consistency improvement:
Apply clang-format-all.sh using the _clang-format file through all the cpp/.h files.
make sure not to apply it to certain serialization structures, since some parser expects the * as part of the name, instead of type.
This commit contains no other changes aside from adding and applying clang-format-all.sh
2018-09-23 14:17:31 -07:00
Erwin Coumans
2668b89740 fix another island issue 2018-08-26 22:25:39 -07:00
Erwin Coumans
ff43cea263 Fix some deactivation issues with btMultiBodyDynamicsWorld, should also improve performance for PyBullet with larger worlds
(even when sleeping is disabled, islands are split)
2018-08-26 16:14:36 -07:00
Erwin Coumans
61b7591b8e expose choice of contraint solver in PyBullet, with switchConstraintSolver example 2018-08-23 23:04:17 -07:00
Jeongseok Lee
340236ee29 Fix copy & paste mistake 2018-08-07 15:16:46 -07:00
Jeongseok Lee
e8e97d39fe Merge remote-tracking branch 'upstream/master' into multibody_mlcp_solver_v2 2018-08-06 10:34:43 -07:00