Commit Graph

5818 Commits

Author SHA1 Message Date
Erwin Coumans
adafcce830 compile fixes 2017-09-06 10:39:45 -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
erwincoumans
db8c0853b3 Merge pull request #1290 from lolengine/fix-const-removal
Make btHashString const-correct by changing a target pointer type.
2017-09-02 13:24:38 -07:00
erwincoumans
ee64a39c7b Merge pull request #1291 from erwincoumans/master
improve minitaur urdf and quadruped.py test
2017-09-02 13:23:59 -07:00
Erwin Coumans
a47e342ec4 bump up pybullet version 2017-09-02 11:42:58 -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
Sam Hocevar
d8b5ebd818 Make btHashString const-correct by changing a target pointer type. 2017-09-01 20:02:58 +02:00
Sam Hocevar
903cc96c1a Fix one-sided soft bodies.
A coding mistake in btSoftBody::addAeroForceToNode() was applying forces
in the wrong direction for one-sided soft bodies.
2017-09-01 18:47:46 +02: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
29271c53eb Merge pull request #1288 from erwincoumans/master
add option to log joint torques (due to user applied torques and/or m…
2017-08-30 20:45:56 -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
c4c3bc6473 Merge pull request #1287 from erwincoumans/master
implement pybullet.createUserConstraint for maximalCoordinates, bump up pybullet version to 1.3.0
2017-08-30 12:14:58 -07:00
Matthew Endsley
4c00b674b3 Optimize Dbvt trees in place
Instead of allocating new vectors for each partition, simply partion the
nodes in place and pass the corresponding ranges to the next phase.
2017-08-30 10:27:38 -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
22658da02a Merge pull request #1285 from erwincoumans/master
enable motor control for maximal coordinates robots (btRigidBody, btT…
2017-08-29 21:34:17 -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
dc38ec5c99 Merge pull request #1284 from erwincoumans/master
avoid flickering in visualizer window, when doing pybullet.getCameraI…
2017-08-29 13:28:21 -07:00
erwincoumans
4ff6befc6d avoid flickering in visualizer window, when doing pybullet.getCameraImage 2017-08-29 12:13:21 -07:00
erwincoumans
bd39c7c657 Merge pull request #1282 from erwincoumans/master
fix in minitaur.py and add render function in minitaur_gym_env.py
2017-08-28 19:32:58 -07:00
Erwin Coumans
3b472e4b12 Merge remote-tracking branch 'bp/master' 2017-08-28 19:29:06 -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
erwincoumans
449c8afc11 Merge pull request #1280 from erwincoumans/master
pybullet a bit more refactoring, moving around files.
2017-08-27 21:58:19 -07:00
Erwin Coumans
04e7ebbe80 Merge remote-tracking branch 'bp/master' 2017-08-27 20:08:17 -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
erwincoumans
079035d253 Merge pull request #1279 from erwincoumans/master
more fixes in the pybullet gym environments
2017-08-26 15:19:38 -07:00
Erwin Coumans
97cb6df00c bump up pybullet version 2017-08-26 15:00:54 -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
b1426322ed add gif to pybullet data
add python files to .gitignore
pybullet bump up version to 1.2.5
2017-08-25 18:08:53 -07:00
erwincoumans
dd9ecce79e Merge pull request #1274 from erwincoumans/master
all methods (except connect, obviously) have the physicsClientId argu…
2017-08-25 16:37:16 -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
erwincoumans
be7ddfcc5c Merge pull request #1221 from Wugand/patch-1
Fix for memory leak at btCreateCompoundFromGimpactShape
2017-08-25 08:30:07 -07:00
erwincoumans
983da08da8 Merge pull request #1271 from erwincoumans/master
pybullet: remove 'data' from MANIFEST.in
2017-08-24 22:38:24 -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
Erwin Coumans
c7c3e76e56 Merge remote-tracking branch 'bp/master' 2017-08-24 21:42:32 -07:00
erwincoumans
ee3bb1efc5 Merge pull request #1272 from jonathantompson/exit_0_fix
OpenGL window error handling updates
2017-08-24 15:44:38 -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