Commit Graph

1470 Commits

Author SHA1 Message Date
Erwin Coumans
cbe0d0aff2 pybullet fix: accidently enable self-collision 2017-09-07 14:27:00 -07:00
Erwin Coumans
9ecd345783 backwards compatibility... 2017-09-07 11:40:11 -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
Erwin Coumans
b0e50d0d5a pybullet Gym envs: add more sleep in the enjoy functions to see what's happening. 2017-09-07 11:17:38 -07:00
Erwin Coumans
3d702879c5 pybullet: improvements in Gym Ant environment (work-in-progress) 2017-09-07 11:06:42 -07:00
Erwin Coumans
cfc07565ac fix dumpLog.py 2017-09-06 14:34:10 -07:00
Erwin Coumans
c82131d16e cmake fixes 2017-09-06 14:18:35 -07:00
Erwin Coumans
7878f7ace9 Add Extras/BulletRobotics, will be installed as 'Extra Libs' using CMake
Reduce size of command-logfile (used in PhysicsServer (Logging) and PhysicsServer (Log Replay))
Make Bullet3Common and BulletInverseDynamics part of core Bullet libraries (not optional)
2017-09-06 13:18:39 -07:00
Erwin Coumans
ff0cd65346 fix __init__.py, add stadium without collision for testing 2017-09-05 21:47:35 -07:00
Erwin Coumans
a985d441bd Re-enable Physics Server (Logging) and Physics Server (Replay Log) 2017-09-04 19:00:50 -07:00
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
8dfa76e924 implement pybullet.createUserConstraint for maximalCoordinates (fixed, p2p, gear)
maximalCoordinates, make sure parent is bodyA, child is BodyB
2017-08-30 09:54:38 -07:00
Erwin Coumans
9d404f5316 bump up pybullet version, pre-sort visual shapes 2017-08-29 21:36:56 -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
erwincoumans
4ff6befc6d avoid flickering in visualizer window, when doing pybullet.getCameraImage 2017-08-29 12:13:21 -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
793904fc89 fix windows 64bit openvr/lib/win64/openvr_api.lib to find openvr64pi.dll (different name from 32bit version, to co-exist) 2017-08-27 18:30:12 -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
0d0caa7cbc Merge branch 'master' of https://github.com/erwincoumans/bullet3 2017-08-24 22:02:34 -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
Jonathan Tompson
29acd99d25 changed exit(0) to exit(EXIT_FAILURE) for OpenGLWindow functions, and changed printf to fprintf(stderr for error string printing. 2017-08-24 15:18:43 -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
5c5993edcb fix potential memory leaks for concave triangle meshes (<concave=true> or createCollisionShape with flags=1) 2017-08-24 09:16:11 -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