Commit Graph

314 Commits

Author SHA1 Message Date
yunfeibai
36dcabbaf5 Merge remote-tracking branch 'upstream/master' 2018-02-15 14:31:34 -08:00
Erwin Coumans
77ddc8a16f fix makesdna on Mac OSX 2018-02-14 15:41:10 -08:00
yunfeibai
2947cd54ce Add shader for projective texture. 2018-02-11 21:29:02 -08:00
yunfeibai
08548e1ef0 Add example for projective texture. 2018-02-11 13:50:45 -08:00
Erwin Coumans
508550c5e9 fix premake build for linux, thanks to @consultit
See also issue #1538
2018-02-09 18:46:26 -08:00
Erwin Coumans
af43e6465d fix wrong enum type 2018-01-15 15:13:11 -08:00
erwincoumans
ed890f23e6 add implicit plane_implicit.urdf and use it in humanoid_running.py (numpy version) 2018-01-13 13:47:28 -08:00
Erwin Coumans
1875652d8f add cup example, generated using vhacd 2018-01-12 09:01:16 -08:00
Erwin Coumans
79051b7611 allow to use colors from MJCF file as option (default to random Google colors), use p.loadMJCF(filename, flags=p.URDF_MJCF_COLORS_FROM_FILE
fix quadruped.py example.
add PyBullet.isConnected() API, more friendly than PyBullet.getConnectionInfo()["connected"]
2018-01-11 21:04:08 -08:00
erwincoumans
22b4809891 leave m_useGlobalVelocities to false, until enabled, for backward compatibility
use URDF_GLOBAL_VELOCITIES_MB flag in PyBullet loadURDF.
fix robot_bases.py due to new fields in getJointInfo.
backward compabitibility: BulletMJCFImporter, keep creating btMultiSphereShape for MJCF capsules with fromto, instead of shifted btCapsuleShapeZ, unless if CUF_USE_IMPLICIT_CYLINDER is used.
2018-01-10 11:16:50 -08:00
YunfeiBai
de3b8bf3c9
Merge branch 'master' into master 2018-01-08 18:13:03 -08:00
Erwin Coumans
e97b751781 further work on urdfEditor.py, fix some serialization issues 2018-01-08 12:25:56 -08:00
yunfeibai
e3e9546960 Load the deformable object through obj file. Modify the demo for two way coupling between multibody and softbody. 2018-01-07 19:06:09 -08:00
Jie
85bd1ce2b4 Merge remote-tracking branch 'bp/master' into pullRequest 2018-01-02 18:54:07 -08:00
Jie
de11d71246 use the right mass for the rotational part of motors. 2018-01-02 18:53:38 -08:00
Erwin Coumans
0326fa93a8 made some progress in saving and restoring the state during the simulation, with identical results.
Option to de/serialize btPersistentContactManifolds and fix lossy conversion during btMultiBody de/serialization of base world transform
(serialize the quaternion, not the converted 3x3 matrix)
There are still several caches not taken into account, and btMultiBody links/constraints are not deserialized yet etc.
See examples\pybullet\examples\saveRestoreState.py for an example.
2017-12-30 14:19:13 -08:00
Erwin Coumans
799d030874 restore multibody world transform and joint angles/velocities from a .bullet file. 2017-12-22 14:45:36 -08:00
Erwin Coumans
ecba966890 add minitaur rainbow dash (carbon fiber) simulating flexibility in
outside brackets using prismatic joints
2017-12-19 14:44:39 -08:00
Jie
b35f6300a4 add system id for rainbow dash (second generation minitaur with TX2 installed) 2017-12-13 16:19:42 -08:00
erwincoumans
e6e3da11e5 Implement true implicit friction cone, instead of friction pyramid, for btMultiBody vs btMultiBody and btMultiBody vs btRigidBody
See data/sphere_small_zeroinertia.urdf for an example.
2017-11-23 17:38:23 -08:00
erwincoumans
b2dda14948
Delete Seamless_white_marble _texture.jpg 2017-11-09 17:06:57 -08:00
Erwin Coumans
344005a8f0 catch invalid mass/inertia instead of division by zero/nan. also, avoid indexing <0 2017-11-07 19:25:14 -08:00
Erwin Coumans
f5493a6d64 add minitaur with single motor test asset 2017-11-02 18:28:46 +00:00
Jie
a9600a8c91 adjust the minitaur_derpy urdf. Seperate the motor controller and the moving part of the motor. 2017-10-27 14:56:45 -07:00
erwincoumans
e21aaca836 created a pretty Vatican museum table top, also a marble cube 2017-10-25 08:23:29 -07:00
erwincoumans
7524e37124 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2017-10-25 08:15:14 -07:00
erwincoumans
e9415f5912 kitchen upgrade with marble countertop, wooden floor 2017-10-25 06:51:22 -07:00
yunfeibai
39bdd00ce5 Add pole urdf. 2017-10-19 14:29:43 -07:00
erwincoumans
cb23e6c102 Fix pybullet.calculateInverseDynamics in the case where #dof != #joints (fixed joints). We still don't handle spherical joints in pybullet (even though the underlying inverse dynamics and forward dynamics support it)
Also, add a inverse_dynamics.py example, with URDF files. Thanks to Michiel Lutter for the report and repro case!
This fixes issue #1379 https://github.com/bulletphysics/bullet3/issues/1379
2017-10-13 14:19:25 -07:00
erwincoumans
e5d4c73c40 fix very rare threading issue, let main thread compute the UID for user debug items
add collision model to cartpole.urdf
2017-10-09 22:40:53 -07:00
Erwin Coumans
91d164d886 remove obsolete CartPoleBulletEnv 2017-10-09 09:44:54 -07:00
erwincoumans
3826dddc83 fix asset paths, createVisualShape.py and duck.obj 2017-10-07 18:52:22 -07:00
erwincoumans
cec8da3d85 Implement first draft of pybullet.createVisualShape and add createVisualShape.py example
add normals to duck.obj for nicer appearance
fix plane100.urdf (so collision shape matches visual shape size)
2017-10-07 18:50:23 -07:00
Jie
a1e260f9f1 add tingnan's new minitaur urdf for derpy. 2017-10-06 13:14:23 -07:00
Jie Tan
d0a14743c1 add the urdf from system id from tingnan 2017-10-02 15:58:26 -07:00
erwincoumans
dd2c7af2b2 Update pybullet autogenerated C# bindings, with very basic example script that runs inside Unity 3D 2017-09-29 07:47:31 -07:00
erwincoumans
8a265b8af2 expose gear erp/relative position target to C-API/pybullet
finish much better C++ vrSyncPlugin, running in-the-loop with the physics at high frequency, see also vr_kuka_setup_vrSyncPlugin.py
2017-09-26 19:54:36 -07:00
Erwin Coumans
ae8f12e8ba more fixes for retina + glfw + opengl2 fallback 2017-09-20 13:09:18 -07:00
Erwin Coumans
fb05763093 support retina / scale factor between pixel size and screen coordinate size 2017-09-20 10:07:18 -07:00
Erwin Coumans
c30e9aea92 revert minitaur.urdf to previous (backward compatibility) and add _v1 for better version. 2017-09-07 11:23:41 -07:00
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
Erwin Coumans
1569f3845c more fixes in pybullet_gym envs/data.
implement pybullet.setAdditionalSearchPath
2017-08-27 19:34:00 -07:00
Erwin Coumans
f19f28b5ed more fixes in pybullet/resources, moved enjoy/train/test in 'examples' folder. 2017-08-22 10:07:47 -07:00
erwincoumans
c0984b80e5 Merge pull request #1231 from benelot/bullet-gym
Add nearly all gym environments using pybullet together with the…
2017-08-18 13:29:43 -07:00
Benelot
aed57d130e Update mjcf files!
----------------------------------
Git did not realize I changed those.
2017-08-17 00:04:21 +02:00
Erwin Coumans
aafaa7e33e Expose optional "globalScaling" factor to pybullet.loadURDF and pybullet.loadSDF. This will scale the visual, collision shapes and transform locations.
Fix two_cubes.sdf (was lacking collision shape for second cube)
2017-08-14 14:59:41 -07:00
Erwin Coumans
d28dd2f80a add 'createObstacleCourse.py' example, helps reproducing
Parkour paper: https://arxiv.org/abs/1707.02286
2017-07-29 13:18:49 +02:00
Erwin Coumans
b63023c692 add transparent plane 2017-07-01 11:47:57 -07:00
Erwin Coumans
9cf747b35b a few compile/warning fixes 2017-07-01 10:01:55 -07:00
Erwin Coumans
88897cc744 implement pybullet.changeTexture. For now, the width/height has to match the target texture unique id, otherwise crashes may happen (a check for width/height match will be added)
See also examples\pybullet\examples\changeTexture.py
2017-06-30 19:11:43 -07:00
Erwin Coumans
bf800e30d5 Added manually converted widowx.urdf from https://github.com/RobotnikAutomation/widowx_arm
Added simple pybullet file in Bullet/examples/pybullet/examples/widows.py (preliminary, both URDF and py file needs more work to be useful)
https://github.com/RobotnikAutomation/widowx_arm/blob/master/widowx_arm_description/package.xml
See also http://www.trossenrobotics.com/widowxrobotarm
2017-06-29 17:54:04 -07:00
erwincoumans
d5fe67cf57 Add pybullet transparent.py example, transparency with global per-object sort in GLInstancingRenderer 2017-06-24 19:38:31 -07:00
Erwin Coumans
65e22ba3e9 allow auxilary link to be used for gear btMultiBodyGearConstraint. 2017-06-23 20:24:04 -07:00
Erwin Coumans
71170d6384 reduce stack usage (cause some crashes in low-stack tests)
fix crashing bug in changeVisualShape
add differential gear version of racecar (only 2 back wheels are powered)
2017-06-20 20:22:14 -07:00
erwincoumans
c903bd8a49 tune kuka grasp gym env (make it a bit too easy) 2017-06-15 11:18:08 -07:00
erwincoumans
d2888f0884 add nicer meshes to kuka_with_gripper.sdf and add kuka_with_gripper2.sdf that can rotate without messing up IK
fix tray/tray_textured4.obj and tray/tray.urdf
fix kuka_with_cube.py
allow both IK /end-effector control and joint-space control in kuka environment, use 1./240. sec. step and 150 solver iter
bump up pybullet to 1.1.7
2017-06-14 19:34:33 -07:00
Erwin Coumans
a0ded43a69 use cnn_to_mlp to allow training of racecar using (extremely simplified) ZED camera pixel data using OpenAI baselines.
add a red sphere to make training a bit easier for now.
2017-06-13 18:33:32 -07:00
erwincoumans
b2a46a7edd mimicJointConstraint.py creates actual differential drive
See https://www.youtube.com/watch?v=pK3PTPlRTGA  :-)
2017-06-09 10:15:05 -07:00
Erwin Coumans
b325844b9a add missing 'wheel.urdf" and very simple procedural terrain generation (sine wave) 2017-06-08 14:28:33 -07:00
erwincoumans
7e12034097 improve racecar visuals a little bit with a texture on the wheels 2017-06-06 09:45:06 -07:00
erwincoumans
ae00c24a5c add MIT racecar URDF, meshes and racecar.py quick test 2017-06-06 09:23:40 -07:00
yunfeibai
bfcbb339cf Merge remote-tracking branch 'upstream/master' 2017-06-02 18:26:04 -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
yunfeibai
e6d1a8cf97 Swap yaw and pitch in camera computation. Add functions to convert view matrix to camera position, and camera position to camera yaw pitch roll. 2017-06-01 15:30:37 -07:00
Erwin Coumans
87293e835c implement specular, URDF non-standard specular part (see sphere2.urdf) and SDF specular support.
pybullet.changeVisualShape(obUid,linkIndex,specularColor=[R,G,B]) and Bullet C-API b3UpdateVisualShapeSpecularColor
Bug fixes in b3ResourcePath::findResourcePath resolution.
add stadium.sdf and roboschool/models_outdoor/stadium assets https://github.com/openai/roboschool/tree/master/roboschool/models_outdoor/stadium
minor fixes to obj2sdf
2017-06-01 12:32:44 -07:00
Erwin Coumans
439e8c84cf add new .obj files for kuka_iiwa/model.urdf 2017-05-31 21:43:09 -07:00
Erwin Coumans
3157093125 Implemented specular reflective lighting for OpenGL 3.x, everything looks shiny (will add APIs to make it less shiny ;-)
Remove roof from kitchens/1.sdf, otherwise shadows and shinyness won't work (light is outside the room, bouncing against roof-top)
Make kuka_iiwa/model.urdf more smooth, use .obj for per-vertex normals (using Blender, import STL, export OBJ, enable triangles, normals and Z-UP, Y forward)
2017-05-31 20:32:45 -07:00
erwincoumans
5436b8f048 print better error warning, in case the physics client/server version mismatch.
fix in b3HashString
remove many unused dependencies from kuka_grasp_block_playback.py (time,math, datetime ,numpy,pylab ,sys, os, fnmatch,argparse were not used!)
move block_grasp_log.bin from Bullet3/data to Bullet3/examples/pybullet/examples/data folder.
PhysicsServerCommandProcessor, derive from CommandProcessorInterface to prepare for different back-end implementation
2017-05-28 17:05:18 -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
Erwin Coumans
9f7d7fecd5 more rendering fixes 2017-05-23 23:34:55 -07:00
yunfeibai
d383799d97 Merge remote-tracking branch 'upstream/master' 2017-05-22 22:23:55 -07:00
yunfeibai
3eb974f66f Add kuka grasping block playback. 2017-05-22 22:23:01 -07:00
Erwin Coumans
fd40ba424b test for knee joint limits under position control 2017-05-21 11:00:15 -07:00
Erwin Coumans
79e2c10506 add second humanoid_running_3.py example with 3 humanoids, for testing. Created a humanoid_symmetric_no_ground.xml and ground.xml:
if the ground is duplicated, simulation is unstable (too many contacts in the same area?)
2017-05-12 17:17:27 -07:00
yunfeibai
cfb8316297 Add an example to decode the packed button events from vr log. 2017-05-10 15:07:49 -07:00
Erwin Coumans
385156cbc5 add simple humanoid_benchmark.py and mjcf file 2017-05-05 17:24:35 -07:00
Erwin Coumans
61999ef789 b3ResizablePool: only remove a handle, if it is currently in-use
also remove user constraints, if removing a body
2017-05-04 13:14:24 -07:00
Erwin Coumans
eb7cf38293 Add option to --useKitchen=1 to VRGloveSimulatorMain 2017-05-02 22:33:42 -07:00
Erwin Coumans
07992fe61d Improve MJCF import, to allow reading of friction parameters, including spinning and rolling friction, with some rudimentary 'default class' support.
Tweak VRGloveSimulatorMain to work better with MPL/mpl2.xml hand.
2017-05-02 18:05:36 -07:00
Erwin Coumans
af6bf8ddc8 plumb URDF/SDF audio_source into PhysicsServerCommandProcessor, allow to play sounds on collision !
See also https://youtu.be/eppOjTfx5Jg for a first test, and this modified URDF how to add sounds:
https://github.com/bulletphysics/bullet3/blob/master/data/plane_with_collision_audio.urdf
Add the --audio flag to enable sound in pybullet/Bullet-C-API
2017-05-01 11:14:09 -07:00
Erwin Coumans
2a2c18e959 add more tinyaudio preparation, some test wav files, play sound on collision events. Will expose this in the C-API to pick wav files and collision threshold levels etc. Use the premake --audio flag to try it out. The TinyAudio example in the ExampleBrowser works on Mac, Linux and Windows, you can play notes by pressing keys. 2017-04-29 10:32:30 -07:00
Erwin Coumans
dfc1800065 remove the goto's from the source code (came from http://github.com/thestk/stk toolkit)
add test wav file
2017-04-27 08:39:57 -07:00
erwincoumans
0f2771b1d1 Merge pull request #1059 from jietan/pullRequest
make the URDF and the minitaur.py consistent with the real robot
2017-04-06 04:57:26 +00:00
Erwin Coumans
e32debdca4 improvements in MJCF importer: fix capsule shape inertia (for fromto definition)
add cylinder support
don't crash when no "quat" is provided
inertia fix in btMinkowskiSumShape (based on AABB)
2017-04-05 12:22:38 -07:00
Jie Tan
1cd513024a make the URDF and the minitaur.py consistent with the real robot 2017-04-05 11:54:54 -07:00
yunfeibai
66a8685816 Merge remote-tracking branch 'upstream/master' 2017-03-29 15:06:15 -07:00
Erwin Coumans
544f289b24 better pr2_gripper collision model 2017-03-23 15:31:17 -07:00
yunfeibai
d717b1db84 Add the API to get the body name and pybullet example call. 2017-03-23 13:54:44 -07:00
Erwin Coumans
f498670798 :%s/STL/stl/g for Bullet/data/MPL/MPL.xml 2017-03-21 18:10:50 -07:00
erwincoumans
a30b887595 Merge pull request #1025 from olegklimov/master
URDF loader improvement 2
2017-03-21 17:12:22 -07:00
erwincoumans
cb08d077f0 Merge pull request #1030 from erwincoumans/master
friction anchors, arm64 premake
2017-03-20 11:48:44 -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
yunfeibai
753f1d3d2f Add lateral and spinning friction coefficients to gripper sdf model. 2017-03-20 10:16:15 -07:00
Oleg Klimov
fa7397cc92 Rename *.STL to *.stl for case-sensitive filesystems 2017-03-17 02:11:47 +03: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
Erwin Coumans
a613911c84 Merge remote-tracking branch 'bp/master' 2017-03-15 11:05:16 -07:00
erwincoumans
f67299de8e Merge pull request #1020 from jietan/pullRequest
add cartpole urdf
2017-03-14 17:06:10 -07:00
Erwin Coumans
6e2850e08a fix names (case) for Linux for MPL/hand 2017-03-14 17:03:11 -07:00
Jie Tan
f90986d6f0 add cartpole urdf 2017-03-14 15:04:43 -07:00
Mohi
43b0a8b6fb Fixing a bug on Visualizer Camera and a few more
- resetDebugVisualizerCamera now accepts negative values for pitch and
yaw angles

- Defining kitchen model to be concave, so as to be able to put floating
objects inside

- Fixed an indention error in testrender_np.py
2017-03-13 10:41:54 -07:00