Erwin Coumans
3f21e528f0
revert name 'v' -> 'u' (backward compatibility) and 'u' -> 't'
...
make vr_kuka_setup.py load faster, by disabling rendering during loading
allow to setRealTimeSimulation(0) in VR
2017-09-02 11:35:54 -07:00
erwincoumans
8319fa0380
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2017-09-02 01:06:47 -07:00
erwincoumans
1221c6d91d
quadruped.py test, use generalized coordinates (not maximal coordinates) by default
2017-09-02 01:06:33 -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
6d940d7a02
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2017-08-31 10:00:24 -07:00
Erwin Coumans
6d0e2cd527
update pybullet docs, add getList to pybullet_envs
2017-08-31 09:59:40 -07:00
erwincoumans
ee30479a28
add option to log joint torques (due to user applied torques and/or motor torques)
...
See quadruped.py for an example:
p.startStateLogging(p.STATE_LOGGING_GENERIC_ROBOT, "genericlogdata.bin", maxLogDof = 16, logFlags = p.STATE_LOG_JOINT_TORQUES)
Thanks to JulianYG, in pull request https://github.com/bulletphysics/bullet3/pull/1273
2017-08-30 19:41:15 -07:00
erwincoumans
1f7db4519e
enable motor control for maximal coordinates robots (btRigidBody, btTypedConstraint) for force, velocity, position control.
2017-08-29 19:14:27 -07:00
Erwin Coumans
029b4debad
fix in minitaur.py and add render function in minitaur_gym_env.py
2017-08-28 19:28:20 -07:00
Erwin Coumans
1900966805
small rename
2017-08-27 19:54:20 -07:00
Erwin Coumans
3f00c7bd49
small tweak in vr_kuka_setup.py example
2017-08-27 19:53:38 -07:00
Erwin Coumans
c8cb0a5f42
add missing sphere_small.urdf, add vr_kuka_setup.py example.
2017-08-27 19:41:40 -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
d9faea8c1c
add more URDF files to pybullet_data
2017-08-27 19:26:53 -07:00
Erwin Coumans
659e869b86
pybullet a bit more refactoring, moving around files.
...
pybullet: move data to pybullet_data package, with getDataPath() method
2017-08-27 18:08:46 -07:00
Erwin Coumans
e267f5c3d2
move pybullet.connect into the Gym environment.
...
If you like to enable rendering, call the env.render(mode="human") before calling the first env.reset
2017-08-26 14:58:48 -07:00
Erwin Coumans
51b7e1040f
more fixes in the pybullet gym environments: use main instead of demo_run,
...
add missing main to some eaxmples.
pip install pybullet
train:
python -m pybullet_envs.examples.train_pybullet_cartpole
enjoy:
python -m pybullet_envs.examples.enjoy_pybullet_cartpole
enjoy pretrained environments:
python -m pybullet_envs.examples.enjoy_TF_AntBulletEnv_v0_2017may
python -m pybullet_envs.examples.enjoy_TF_HalfCheetahBulletEnv_v0_2017may
python -m pybullet_envs.examples.enjoy_TF_AntBulletEnv_v0_2017may
python -m pybullet_envs.examples.enjoy_TF_HopperBulletEnv_v0_2017may
python -m pybullet_envs.examples.enjoy_TF_HumanoidBulletEnv_v0_2017may
python -m pybullet_envs.examples.enjoy_TF_InvertedDoublePendulumBulletEnv_v0_2017may
python -m pybullet_envs.examples.enjoy_TF_InvertedPendulumBulletEnv_v0_2017may
python -m pybullet_envs.examples.enjoy_TF_InvertedPendulumSwingupBulletEnv_v0_2017may
python -m pybullet_envs.examples.enjoy_TF_Walker2DBulletEnv_v0_2017may
Run some gym environment test:
python -m pybullet_envs.examples.racecarGymEnvTest
Create/Import a specific Gym environment:
python
import pybullet_envs
env = gym.make("AntBulletEnv-v0")
env = gym.make("HalfCheetahBulletEnv-v0")
env = gym.make("HopperBulletEnv-v0")
env = gym.make("HumanoidBulletEnv-v0")
env = gym.make("Walker2DBulletEnv-v0")
env = gym.make("InvertedDoublePendulumBulletEnv-v0")
env = gym.make("InvertedPendulumBulletEnv-v0")
env = gym.make("MinitaurBulletEnv-v0")
env = gym.make("RacecarBulletEnv-v0")
env = gym.make("KukaBulletEnv-v0")
env = gym.make("CartPoleBulletEnv-v0")
2017-08-26 13:13:53 -07:00
Erwin Coumans
bcc60224f0
all methods (except connect, obviously) have the physicsClientId argument, even if they don't use it. This makes it easier to create a wrapper API to store the physics client. This allows easier multi-threaded versions with multiple Bullet DIRECT instances (or SHARED_MEMORY, TCP, UDP etc).
...
See for example https://github.com/bulletphysics/bullet3/blob/master/examples/pybullet/gym/pybullet_envs/bullet/bullet_client.py and https://github.com/bulletphysics/bullet3/blob/master/examples/pybullet/gym/pybullet_envs/bullet/minitaur.py
2017-08-25 14:04:45 -07:00
Erwin Coumans
1fc148d5d0
fixes in racecarGymEnv: implement 'render' rgb image, fix in naming,
...
fix in observation bounds.
2017-08-24 22:01:45 -07:00
Erwin Coumans
a975d094c3
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2017-08-24 13:33:58 -07:00
Erwin Coumans
cb6914fa4c
use better defauls values for minitaur
2017-08-24 13:33:45 -07:00
Erwin Coumans
f0c32b84c0
allow continuous control for MIT racecar gym environment, use differential drive version
2017-08-23 23:12:26 -07:00
Erwin Coumans
8a4f51baa4
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2017-08-23 21:45:05 -07:00
Erwin Coumans
ff4270a517
fix pybullet racecarGymEnv to use thread-safe pybullet
2017-08-23 18:22:20 -07:00
Erwin Coumans
75231d63e8
use name MinitaurBulletEnv
2017-08-23 17:45:41 -07:00
Erwin Coumans
0851b45f39
update minitaur gym env
2017-08-23 17:41:34 -07:00
Erwin Coumans
8866840712
Clarify in naming that the environment uses MJCF xml files with Bullet, it doesn't use MuJoCo.
2017-08-23 15:03:57 -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
Erwin Coumans
21ca6a90f0
more fixes for pybullet
2017-08-22 09:32:16 -07:00
Erwin Coumans
dd4cc5f4ef
add minitaur quadruped
2017-08-22 09:00:46 -07:00
Erwin Coumans
e064d4b837
more fixes in pybullet_envs: fix path, add missing data resources
2017-08-22 08:59:39 -07:00
Erwin Coumans
21f9d1b816
refactor pybullet/gym to allow instantiating environments directly from a pybullet install:
...
work-in-progress (need to add missing data files, fix paths etc)
example:
pip install pybullet
pip install gym
python
import gym
import pybullet
import pybullet_envs
env = gym.make("HumanoidBulletEnv-v0")
2017-08-22 00:42:02 -07:00
Erwin Coumans
c06ea72a4c
improve the new pybullet gym environments, follow camera, disable 2D GUI, disable rendering during loading (makes it faster)
...
disable vsync on Mac
fix setup.py file
2017-08-20 18:11:53 -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
3191291748
Split pendula robot from the pendula envs due to changes in the underlying mujoco xml base env.
2017-08-17 00:25:16 +02:00
Benelot
9f20e40541
Rename old humanoid gym to simple humanoid gym.
2017-08-17 00:06:01 +02:00
Benelot
f74a9299a8
Unversion manipulators for now. They come back as they are ready.
2017-08-16 22:43:40 +02:00
Erwin Coumans
a66576f034
revert API to be backward compatible, add b3CreateInProcessPhysicsServerAndConnectSharedMemory
...
same for BulletURDFImporter constructor
2017-08-16 12:33:25 -07:00
Benelot
68106d66dd
Split locomotion environments.
2017-08-16 08:08:24 +02:00
erwincoumans
2e0a987750
pybullet only allow one GUI/GUI_SERVER instance.
...
Fix LINK_FRAME/WORLD_FRAME coordinate issue in pybullet applyExternalForce
2017-08-15 14:15:30 -07:00
Benelot
cab3de35e4
Remove duplicate assets and use other assets. Rename classes appropriately for robot-scene-env split refactoring.
2017-08-15 15:31:24 +02:00
Erwin Coumans
60b60ef9fd
add pybullet.connect(pybullet.GUI_SERVER) option. This allows shared memory connections, acting as a physics server. You can connect using SHARED_MEMORY to this GUI_SERVER.
2017-08-14 17:02:20 -07: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
Benelot
4771bae9fa
Merge branch 'master' into bullet-gym
2017-08-10 22:50:12 +02:00
erwincoumans
0eb3898c76
Merge pull request #1244 from erwincoumans/master
...
add 'createObstacleCourse.py' example, helps reproducing
2017-07-29 13:20:14 +02: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
yunfeibai
cfc7917586
Add init function and module for pybullet with EGL.
2017-07-18 13:52:29 -07:00
Erwin Coumans
c9b41737c0
add example of faster URDF/SDF loading in VR/GUI mode,
...
by temporary disabling rendering
2017-07-14 23:32:53 +01:00
Benjamin Ellenberger
a6aade2e21
Add nearly all gym environments using pybullet together with the latest tf model from the roboschool model zoo.
2017-07-14 23:38:15 +02:00
Erwin Coumans
5178ad4abc
add proper pointer casts
2017-07-01 10:28:28 -07:00