Commit Graph

714 Commits

Author SHA1 Message Date
erwincoumans
eb97e06280 fix minitaur.urdf: move lower-leg inertia to center, add missing collision for one of the motors, add contact parameters for friction_anchor, spinning friction, compliance (stiffness/damping)
fix in indexing for maximal coordinates (unused by default, still experimental, requires many iterations for Minitaur due to extreme mass-ratio, hence use of reduces/generalized coordinates)
modify quadruped.py to test maximal coordinates
wrap angular servo (positional) target within [-PI,PI] in btGeneric6DofSpring2Constraint
add 'j' key to show body frames in wireframe/debug mode
2017-09-02 01:05:42 -07:00
Lunkhound
b7f35000aa NNCG solver: apply rolling friction consistently regardless of the solver flags 2017-07-02 21:12:25 -07:00
erwincoumans
b4f21e77af Merge pull request #1206 from erwincoumans/master
Allow to create concave collision meshes. Transparency (only OpenGL 3.x renderer, not tinyrenderer/gl2)
2017-06-24 20:07:17 -07:00
Erwin Coumans
65e22ba3e9 allow auxilary link to be used for gear btMultiBodyGearConstraint. 2017-06-23 20:24:04 -07:00
erwincoumans
c48f5b1546 Merge pull request #1182 from lunkhound/pr-fix-solver-simd
SequentialImpulseConstraintSolver: fix bugs with SOLVER_SIMD flag
2017-06-20 12:19:15 -07:00
Erwin Coumans
bb8cfe3c9a pybullet.getAABB and getAPIVersion
fix btMultiBody::getLinkCollider
bump up Bullet C-API version
2017-06-15 19:46:27 -07:00
Erwin Coumans
d17faddff2 fix for b3RequestActualStateCommandComputeLinkVelocity/getLinkState link velocities for static links 2017-06-13 13:51:38 -07:00
Lunkhound
e9ec5044d1 SequentialImpulseConstraintSolver: fix bugs with SOLVER_SIMD flag 2017-06-10 04:33:40 -07:00
Erwin Coumans
46f2f3db4e implement 'mimic' joint constraint or 'gear' constraint for btMultiBody, add example in pybullet/examples/mimicJointConstraint.py 2017-06-07 16:22:02 -07:00
Erwin Coumans
a7aed37632 work on pybullet/C-API createMultiBody (still preliminary, only sphere/box collision shapes, no links/hierarchies yet, soon)
pybullet/C-API, expose linear/angular damping
fix some warnings (param name needs to be same in .h and .cpp)
fix potential startup threading issue (args were deleted in main thread while still possibly use in child thread)
fix for spinning/rolling friction in case of mixing maximal and reduced coordinate btMultiBody+btRigidBody
2017-06-04 22:04:16 -07:00
erwincoumans
518c7ec00e Merge pull request #1144 from lunkhound/pr-threading-refactor
Bullet 2 threading refactor: moved parallel-for calls into core libs
2017-06-02 16:18:12 -07:00
erwincoumans
3987bdd333 remove pose frame from SDF,
allow plane collision shape in SDF
load the Roboschool stadium.sdf in humanoid_knee_position_control.py
2017-06-01 20:13:39 -07:00
Lunkhound
34e2c1b784 add profiling info 2017-05-29 23:53:35 -07:00
Erwin Coumans
b645963879 expose pybullet changeDynamics(spinningFriction=..., rollingFriction=..., restitution=...)
Bullet C-API b3ChangeDynamicsInfoSetSpinningFriction/RollingFriction/Resitution
b3PhysicsParamSetRestitutionVelocityThreshold, / pybullet.setPhysicsEngineParameter restitutionVelocityThreshold:
if the velocity is below this threshhold, the restitution is zero (this prevents energy buildup at near-resting state)
pybullet restitution.py example.
2017-05-26 18:14:38 -07:00
Lunkhound
d77c3d5b68 fix compile errors in non-threadsafe build 2017-05-23 02:34:29 -07:00
Lunkhound
dfe184e8d3 Bullet 2 threading refactor: moved parallel-for calls into core libs 2017-05-23 01:01:20 -07:00
erwincoumans
ba22f4a4dc Merge pull request #1126 from erwincoumans/master
allow to enable/disable VR picking and VR teleport. Disabling VR pick…
2017-05-16 13:55:47 -07:00
Erwin Coumans
433d11d8cf Add a btIDEbugDraw::clearLines, helps multi-threaded rendering of lines (while updating those lines in a dynamics world in a different thread)
Expose COV_ENABLE_VR_RENDER_CONTROLLERS, to enable/disable rendering of controllers (and some frames) in VR
Expose COV_ENABLE_RENDERING to enable/disable rendering.
Fix some multi-threading issues (potential crashes), related to debug drawing/rendering in one thread, while changing the dynamics world/removing/resetSimulation in a different thread.
2017-05-16 12:19:03 -07:00
Andrew Meadows
81758bf1b3 'powered' is bool not int 2017-05-12 15:47:03 -07:00
Andrew Meadows
4a1c682c3c fix typo: Velosity-->Velocity 2017-05-12 15:46:01 -07:00
Oleg Klimov
f4943c3ed5 Fix self-collision code again (in case both flags are set) 2017-05-11 14:30:07 +03:00
erwincoumans
9a80b529d8 Merge pull request #1112 from erwincoumans/master
bump up setup.py pybullet pypi pip version to 1.0.2
2017-05-10 23:19:21 +00:00
Erwin Coumans
53a82819a0 expose b3LoadMJCFCommandSetFlags / pybullet.pybullet_loadMJCF(fileName,flags=pybullet.URDF_USE_SELF_COLLISION_EXCLUDE_ALL_PARENTS) 2017-05-10 15:01:25 -07:00
Erwin Coumans
fc6fb7b14c initialize values (padding etc) help asan/msan tests 2017-05-09 18:00:28 -07:00
Erwin Coumans
18dbf6f018 Merge remote-tracking branch 'bp/master' 2017-05-08 09:08:50 -07:00
Erwin Coumans
a69442d119 Some optimizations for btMultiBodyJointMotor (skip constraint generation if maxImpulse/maxForce = 0) and
skip constraint row generation if joint limit is not violated.
2017-05-08 09:06:39 -07:00
Gregery Barton
72b0b76b64 getSolveSwingLimit() returns wrong value
Should return m_solveSwingLimit instead of m_solveTwistLimit
2017-05-06 11:45:26 +10:00
Erwin Coumans
1f64a87abe Improve ChromeTraceUtil logging, allow filename to be specified.
Expose this ChromeTraceUtil  logging to C-API: start/statelogging and submitProfileTiming
pybullet.submitProfileTiming, and STATE_LOGGING_PROFILE_TIMINGS used in startStateLogging
added example for Python profileTiming.py and C++ b3RobotSimulatorClientAPI::submitProfileTiming
2017-05-04 17:51:40 -07:00
yunfeibai
939d6ead32 Add API to reset lateral friction coefficient. 2017-05-03 21:47:53 -07:00
nicolaichuk
2c6c64ca8a Merge remote-tracking branch 'remotes/bulletphysics/master' 2017-03-29 18:22:53 +03:00
Erwin Coumans
7503418c72 Split Bullet/src/LinearMath/btSerializer.cpp into btSerializer64.cpp to make it easier to rebuild serialization structure.
Add several MSVC optimization flags to cmake.
Bump up VERSION because serialization format changed
Expose btScalar& jointMaxForce, btScalar& jointMaxVelocity to 'getJointInfo2' API, add backwards compatibility to examples\Importers\ImportURDFDemo\URDFImporterInterface::getJointInfo.

pybullet: expose 4 more fields to getJointInfo: jointLowerLimit/jointUpperLimit/jointMaxForce/jointMaxVelocity
fix performance issue in CMD_ACTUAL_STATE_UPDATE_COMPLETED
2017-03-26 13:06:46 -07:00
erwincoumans
f27eb19633 revert m_linearDamping to previous (0.04f)
it broke many tests with empirical check values
2017-03-23 19:59:53 -07:00
Erwin Coumans
21d1827c9f revert previous cmake copy->symlink (doesn't work on Windows)
fix timing issues at small timestep, disable default linear damping for btMultiBody
2017-03-23 17:30:59 -07:00
nicolaichuk
5527e36139 Merge remote-tracking branch 'remotes/bulletphysics/master'
# Conflicts:
#	src/BulletCollision/CollisionDispatch/btCollisionWorldImporter.h
2017-03-23 14:28:49 +03:00
nicolaichuk
3bf2f107b2 add default constructor 2017-03-23 14:17:13 +03:00
nicolaichuk
db065b8af8 fix redefinition 2017-03-23 14:15:51 +03:00
nicolaichuk
74b1044a05 move constructor for abstract class in protected 2017-03-23 14:14:14 +03:00
Erwin Coumans
61b28621ea minor fix in friction anchors for btMultiBody 2017-03-21 09:24:00 -07:00
Erwin Coumans
0c874aa43a fix issue introduced in previous commit, related to
btMultiBodyConstraintSolver friction/penetration handling
2017-03-20 19:38:59 -07:00
Erwin Coumans
0b017b0f53 fix issue with btMultiBody friction in combination with soft contacts (friction should not re-use normal contact cfm/erp)
implement friction anchors, position friction correction, disabled by default. Use colObj->setCollisionFlag(flag | CF_HAS_FRICTION_ANCHOR); See test/RobotClientAPI/SlopeFrictionMain.cpp. In URDF or SDF, add <friction_anchor/> in <contact> section of <link> to enable.
PhysicsServer: properly restore old activation state after releasing picked object
btMultiBodyConstraintSolver: disable flip/flop of contact/friction constraint solving by default (it breaks some internal flaky unit tests)
2017-03-20 10:58:07 -07:00
erwincoumans
a89d3cfb95 Merge pull request #1019 from erikogenvik/kinematic_controller_initialization
Kinematic controller initialization
2017-03-16 10:54:41 -07:00
Erwin Coumans
4db6fa9e29 update minitaur.py to use minitaur.urdf (instead of quadruped.urdf), also sort the legs in the same order as real hardware
added test urdf files for minitaur with all fixed joints, or fixed knees.
added some stiffness/damping to minitaur legs (testing)
tiny_obj_loader, don't crash on invalid texture coordinates
btMultiBodyConstraintSolver: sweep back and forward to reduce asymmetry
2017-03-15 15:38:50 -07:00
Erik Ogenvik
4ee09c264c Avoid using unitialized values.
m_gravity was used before it was initialized. Simplest way to avoid
it is to call any method first after all values are initialized.
2017-03-14 22:10:15 +01:00
Szabolcs Dombi
41c5a2e972 sinf -> btSin and acosf -> btAcos 2017-03-13 18:26:36 +01:00
Szabolcs Dombi
953bc0d3e7 float to btScalar 2017-03-13 18:22:36 +01:00
erwincoumans
e1cfe94ac9 no special case for <=1 minimumSolverBatchSize 2017-02-01 11:20:36 -08:00
erwincoumans
bc997c1fd0 Update btMultiBody.h 2017-01-23 22:53:11 -08:00
Erwin Coumans
cf9f022d39 [pybullet] getNumConstraints, getConstraintInfo APIs.
[pybullet] updated pybullet_quickstartguide.pdf
Fail clearly (assert, return BT_INFINITY) if link index is out of range for btMultiBody methods localPosToWorld,worldPosToLocal,localDirToWorld,worldDirToLocal.
pybullet getConstraintInfo
Fix warnings due to Mac OSX 10.12 upgrade (with backward compatibility)
2017-01-22 19:08:31 -08:00
Erwin Coumans
93471a1c31 cmake Win32 fixes
fixed some more warnings
added alignment macros to some classes
btPersistentManifold from 128 to 16 bytes aligned
prepare command to select collision filter mode (SIM_PARAM_UPDATE_COLLISION_FILTER_MODE)
2017-01-16 13:05:26 -08:00
Erwin Coumans
c0c4c8ba3f fix many warnings
remove btMultiSapBroadphase.*
make collisionFilterGroup/collisionFilterMark int (instead of short int)
2017-01-15 22:26:11 -08:00