erwincoumans
4c46f9ce39
Merge pull request #3087 from davidcavazos/patch-1
...
Add documentation to notebook
2020-10-14 11:54:30 -07:00
David Cavazos
656a1e7472
Removed notice on slow installation
2020-10-13 15:34:33 -07:00
Erwin Coumans
954ceff2ec
Add an option for a plugin to report return data after calling executePluginCommand. Also add python binding.
...
Currently the return data has to fit in shared memory, 8MB (Linux, Windows) or 1MB (Apple)
Preparation for streaming is added (to allow unlimited return data, see CMD_CUSTOM_COMMAND_STREAM_RETURN_DATA)
New C-API: b3GetStatusPluginCommandReturnData
PyBullet reports return data if available, in pybullet_executePluginCommand
For the plugin developer:
plugin can provide additional return data for executePluginCommand in the b3PluginContext, during executePluginCommand.
Lifetime of this m_returnData pointer is minimum of next call to the next executePluginCommand or plugin termination.
2020-10-06 20:19:39 -07:00
Yuxiang Yang
82182e1ba7
Add <inertia> for missing links in a1.urdf
...
Currently a few collision frames in a1.urdf ("{FL/FR/RL/RR}_upper_shoulder") do not have <inertia> defined, and pybullet loads as if they have 1kg mass. This leads to inaccurate simulation results.
2020-10-06 00:28:24 -07:00
David Cavazos
e78d31171b
Fix Colab link
2020-09-29 08:32:48 -07:00
David Cavazos
9c2313f5c8
Add documentation
...
Adds documentation to explain each step and have links to useful pages to improve the onboarding experience.
2020-09-29 08:30:36 -07:00
tfederico
be27283a8e
add pretrained policies and remove extra motion file
2020-09-25 12:16:51 +01:00
Erwin Coumans
3d220888fa
disable cone friction
2020-09-24 09:19:51 -07:00
tfederico
91cb40c5ba
add plotting utility
2020-09-23 16:18:51 +01:00
tfederico
61df6d2ff4
remove comments and unused code
2020-09-23 16:15:30 +01:00
Erwin Coumans
cfd3c99f0e
add spirit40 urdf file, compatible with
...
https://github.com/google-research/motion_imitation/pull/26
2020-09-21 17:44:07 -07:00
Erwin Coumans
2e1b84487b
Add a soccerball obj/urdf, hand-modeled in Blender, using guidance from https://www.youtube.com/watch?v=N93n6hPsqkI (but using texture mapping so the export to OBJ works in PyBullet)
2020-09-21 16:11:52 -07:00
Erwin Coumans
1bd82e7d81
allow rendering of (textured) heightfield in TinyRenderer and EGL.
...
Also update normals, if heightfield is updated.
2020-09-20 16:03:56 -07:00
tfederico
ab8d927845
Add files for multiclip reward
2020-09-17 18:04:41 +01:00
Erwin Coumans
bd1bd36bc6
allow to change texture for deformables
2020-09-12 20:12:46 -07:00
Erwin Coumans
fcdfee2f12
deformable_torus.py: position camera better
2020-09-12 19:47:54 -07:00
Erwin Coumans
c58a54174e
allow to set color of deformables for debug visualizer
...
don't render deformables for TinyRenderer/EGL if p.configureDebugVisualizer(p.COV_ENABLE_TINY_RENDERER,0)
Fix segmentation mask in tinyrenderer for deformables
2020-09-12 19:41:10 -07:00
Erwin Coumans
e00691e132
more deformable rendering fixes, egl and tinyrenderer
2020-09-12 18:15:51 -07:00
Erwin Coumans
1452cae641
* add textured models of ball.vtk (obj/mtl) and torus (obj/mtl) and cloth.
...
1) allow to render deformables in 'getCameraImage', for TinyRenderer (tested OK) and EGL (untested)
2) allow to have textures for deformables. See deformable_ball.py, deformable_anchor.py and deformable_torus.py for examples
3) deformables: allow to request simulation mesh data (even if there is a render mesh) See deformable_anchor.py for an example usage
data = p.getMeshData(clothId, -1, flags=p.MESH_DATA_SIMULATION_MESH)
4) fix deletion of deformables, thanks to Fychuyan, https://github.com/bulletphysics/bullet3/pull/3048
5) allow to enable and disable double-sided rendering, p.changeVisualShape(objectUid, linkIndex, flags=p.VISUAL_SHAPE_DOUBLE_SIDED)
6) fix GripperGraspExample, model not found
7) Fix deformable anchor not attaching to multibody with object unique id of 0
8) Fix issue with assignment of unique ids in TinyRenderer/EGL renderer (always use broadphase uid)
9) Avoid crash/issue of simulation with pinned vertices (mass 0) in btDeformableBackwardEulerObjective::applyExplicitForce
10) Store uv/normal in btSoftBody::RenderNode to allow textured meshes
11) (uncomment in btSoftBodyHelpers.cpp): dump vertices and indices in obj wavefront format, when loading a VTK file, for quicker creation of a (textured) surface mesh
12) allow interpolateRenderMesh also for old position-based soft bodies (not only the shiny new FEM deformables)
13) fix a few premake targets
14) update build_visual_studio_vr_pybullet_double_cmake.bat so it suits c:\python37 and installs locally
for local install of Bullet, see also this example https://github.com/erwincoumans/hello_bullet_cmake
2020-09-12 01:03:04 -07:00
Erwin Coumans
3ba9f6c395
Add rudimentary Gazebo world parser, loading sdf files and shifting objects based on the world file pose.
...
See an example here:
https://github.com/erwincoumans/aws-robomaker-racetrack-world
https://twitter.com/erwincoumans/status/1303084517263994880
2020-09-07 17:30:34 -07:00
Erwin Coumans
ccdec68b1d
expose shadowmap intensity to PyBullet API
2020-09-07 16:52:14 -07:00
Erwin Coumans
caf671890a
Merge branch 'master' of github.com:erwincoumans/bullet3
2020-09-04 14:22:21 -07:00
Erwin Coumans
67061cf98c
update a1 urdf to match naming for our software
...
update test a1.py script
2020-09-04 14:21:53 -07:00
Erwin Coumans
224eceb75b
add test script for spirit40
2020-09-03 21:16:39 -07:00
Erwin Coumans
c4f4692b68
add xiURDF for Ghost Robotics Spirit40 and Unitree A1 quadruped
2020-09-03 17:30:07 -07:00
erwincoumans
47b0259b97
Merge pull request #3030 from erwincoumans/master
...
bump up pybullet version, fix win32 pip build
2020-09-01 19:34:39 -07:00
Erwin Coumans
5b4cf02e70
Merge branch 'master' of github.com:erwincoumans/bullet3
2020-09-02 02:23:15 -07:00
Erwin Coumans
b63e15d15c
fix example
2020-09-02 02:23:04 -07:00
erwincoumans
ce81073ac3
Merge pull request #3020 from fuchuyuan/fixsegfault
...
Fixsegfault
2020-09-01 16:54:16 -07:00
erwincoumans
bb1da5b5f5
try to fix travis, update inertia for Laikago, reset camera at the right time ( #3021 )
...
* laikago_toes_zup.urdf: fill in inertia values, computed as PyBullet does internally (from mass and collision volumes)
* reset camera in the rendering thread to avoid artifacts
* reset camera in the rendering thread to avoid artifacts
* try to fix travis error
2020-08-31 13:35:03 -07:00
Chuyuan Fu
25f62e853c
add and remove deformable object example
2020-08-31 11:38:38 -07:00
erwincoumans
0ebc43b21e
Update deep_mimic_env.py
...
fix errors
2020-08-31 11:36:15 -07:00
Erwin Coumans
d8d81f9ca4
laikago_toes_zup.urdf: fill in inertia values, computed as PyBullet does internally (from mass and collision volumes)
2020-08-17 16:22:31 -07:00
Erwin Coumans
8b42b90393
Merge remote-tracking branch 'bp/master'
2020-08-13 19:38:36 -07:00
erwincoumans
76a9b51993
Merge pull request #2931 from AiRuiChen/fix-minitaur-logging
...
Fix minitaur_logging proto and import
2020-08-13 19:35:11 -07:00
erwincoumans
15041841a5
Merge pull request #2933 from AiRuiChen/fix-pybullet-gym-envs
...
Fix pybullet gym envs
2020-08-13 19:33:21 -07:00
Erwin Coumans
16efd7b288
fix memory leak in pybullet.calculateJacobian
2020-08-13 17:02:54 -07:00
Erwin Coumans
82493e9fbb
fix copy/paste bug in pybullet.c related to collisionShapeOrientationAObj (missing Obj)
...
this would lead to the collisionShapeOrientationA not being considered.
2020-08-12 21:26:43 -07:00
erwincoumans
17d373db55
Merge pull request #2937 from addy1997/master
...
prev keyword removed
2020-08-11 08:30:55 -07:00
Peng Xu
20667bd7d0
Pybullet fast numpy input support for rayTestBatch.
2020-08-11 02:19:23 -07:00
Erwin Coumans
a17df118f1
re-add constraints.py I wanted to delete the changes, not the file!
...
(confusing github UI!)
2020-08-07 09:32:30 -07:00
erwincoumans
d1505e187a
Merge pull request #2950 from DarioUrbina/develop_dario
...
Inverted Pendulum Actuated by Tendons
2020-08-07 09:30:32 -07:00
erwincoumans
2bc3d87d8d
Delete constraint.py
2020-08-07 09:29:39 -07:00
Xuchen Han
eef0d647cd
Tune parameters to effectively reduce the stiffness of the picking force.
2020-08-03 23:05:08 -07:00
erwincoumans
b623f5d123
Merge pull request #2967 from erwincoumans/master
...
fix raycast filter masks, they can be negative
2020-08-03 13:18:27 -07:00
erwincoumans
eb32f48000
Merge pull request #2958 from buoyancy99/patch-1
...
fix bug of using undefined name p
2020-08-03 11:37:19 -07:00
Erwin Coumans
d12d886e13
raycast filter masks can be negative, always apply the mask (-1 default). Thanks to Tingnan for reporting/reproduction case.
2020-08-03 11:00:14 -07:00
Erwin Coumans
51aed38377
fix import
2020-07-31 15:30:53 -07:00
buoyancy99
1edb8d17f9
fix bug of using undefined name p
2020-07-29 23:51:40 -07:00
Xuchen Han
fa0d452651
Initialize proper collision margin for deformable_ball.py
2020-07-28 21:00:27 -07:00
Erwin Coumans
1e8f39b492
improve premake4 build in case X11 headers are missing
...
improve video_sync_mp4.py example
allow to create a heightfield from file or programmatically in C++ robotics api. Example:
{
b3RobotSimulatorCreateCollisionShapeArgs shapeArgs;
shapeArgs.m_shapeType = GEOM_HEIGHTFIELD;
bool useFile = true;
if (useFile)
{
shapeArgs.m_fileName = "D:/dev/bullet3/data/heightmaps/gimp_overlay_out.png";
shapeArgs.m_meshScale.setValue(.05, .05, 1);
}
else
{
shapeArgs.m_numHeightfieldColumns = 256;
shapeArgs.m_numHeightfieldRows = 256;
shapeArgs.m_meshScale.setValue(.05, .05, 1);
shapeArgs.m_heightfieldData.resize(shapeArgs.m_numHeightfieldRows * shapeArgs.m_numHeightfieldColumns);
double heightPerturbationRange = 0.05;
for (int j = 0; j<int(shapeArgs.m_numHeightfieldColumns / 2); j++)
{
for (int i = 0; i < (int(shapeArgs.m_numHeightfieldRows / 2)); i++)
{
double height = ((double)rand() / (RAND_MAX)) * heightPerturbationRange;
shapeArgs.m_heightfieldData[2 * i + 2 * j * shapeArgs.m_numHeightfieldRows] = height;
shapeArgs.m_heightfieldData[2 * i + 1 + 2 * j * shapeArgs.m_numHeightfieldRows] = height;
shapeArgs.m_heightfieldData[2 * i + (2 * j + 1) * shapeArgs.m_numHeightfieldRows] = height;
shapeArgs.m_heightfieldData[2 * i + 1 + (2 * j + 1) * shapeArgs.m_numHeightfieldRows] = height;
}
}
}
int shape = sim->createCollisionShape(shapeArgs.m_shapeType, shapeArgs);
b3RobotSimulatorCreateMultiBodyArgs bodyArgs;
bodyArgs.m_baseCollisionShapeIndex = shape;
int groundId = sim->createMultiBody(bodyArgs);
int texId = sim->loadTexture(shapeArgs.m_fileName);
b3RobotSimulatorChangeVisualShapeArgs args;
args.m_objectUniqueId = groundId;
args.m_linkIndex = -1;
args.m_textureUniqueId = texId;
sim->changeVisualShape(args);
}
2020-07-24 18:09:13 -07:00
Darío Urbina
370b2f72ff
valerolab
2020-07-23 09:32:46 -07:00
Darío Urbina
5081ac5b34
Inverted Pendulum Tendon Actutation
2020-07-22 11:19:10 -07:00
CuriousCAT
9c62c3f1f1
prev keyword removed
2020-07-16 11:46:49 +05:30
Eric Yihan Chen
3a6a279b9a
Fix pybullet gym envs
2020-07-14 21:08:51 -07:00
Eric Yihan Chen
6b38a4cfdb
Fix minitaur logging proto and import
2020-07-14 17:16:29 -07:00
Erwin Coumans
c9ca9cb6c6
disable Center of Mass tracking reward by default, since resulting policies don't work well.
...
See also https://github.com/bulletphysics/bullet3/issues/2928#issuecomment-658349531
2020-07-14 12:10:15 -07:00
Darío Urbina
01d74be777
Seeing the relatonship and understanding of the creation of two contraints
2020-07-13 12:22:49 -07:00
erwincoumans
d19cd89b4a
Merge pull request #2912 from ManifoldFR/deepmimic-gym-fixes
...
DeepMimic: add COM reward
2020-07-08 10:54:20 -07:00
ManifoldFR
1f6ae38040
DeepMimic: add retrained walk motion with COM
2020-07-08 17:03:46 +02:00
Erwin Coumans
c517c434e6
pybullet allow to enable/change joint limits:
...
pybullet.changeDynamicsInfo(objectUniqueId, linkIndex, jointLowerLimit=..., jointUpperLimit=...) # jointLowerLimit <= jointUpperLimit
and joint limit max force:
pybullet.changeDynamicsInfo(objectUniqueId, linkIndex, jointLimitForce=...)
For example:
p.changeDynamics(sphereUid,linkIndex, jointLowerLimit=1, jointUpperLimit=3, jointLimitForce=10.5)
add b3ChangeDynamicsInfoSetJointLimit/b3ChangeDynamicsInfoSetJointLimitForce
add getConstraintType for btMultiBodyConstraint
2020-07-07 19:42:23 -07:00
ManifoldFR
a3810d15ef
fix setting useComReward=false
2020-07-06 16:56:24 +02:00
ManifoldFR
2fe3fe945d
DeepMimic: Make COM reward optional
2020-07-06 16:47:22 +02:00
ManifoldFR
53a3af8918
Merge branch 'master' into deepmimic-gym-fixes
2020-07-02 10:12:06 +02:00
ManifoldFR
b200bf59e0
DeepMimic: add COM reward
2020-07-01 19:15:21 +02:00
erwincoumans
63e1d7d840
Merge pull request #2888 from AiRuiChen/change-env-name
...
Ensure naming consistency in gym registry
2020-06-30 19:06:53 -07:00
Eric Yihan Chen
0f05cdba18
Add missing names in pybullet_envs.getList()
2020-06-29 11:29:43 -07:00
ManifoldFR
45b061c879
variable timestep for deepmimic env
2020-06-29 10:30:09 +02:00
ManifoldFR
d0838d3bcb
variable timestep for deepmimic env
2020-06-29 10:26:08 +02:00
Eric Yihan Chen
6cdebabd2b
rename bullet envs for consistency
2020-06-27 15:10:20 -07:00
ManifoldFR
04350bc9ab
add COM reward to DeepMimic
2020-06-25 15:59:13 +02:00
ManifoldFR
b925988821
DeepMimic Gym enhancements
...
* fix render() camera up axis
* make render() camera track character
* increase render resolution
* add option to restart mocap clip at t=0 at reset (default=random time)
* Gym env: option for "test mode" (episode starts at mocap clip start)
* Gym env: option to offset/rescale actions and obs (like original code)
2020-06-25 12:03:30 +02:00
Erwin Coumans
b4624ad237
fix pybullet_utils import
2020-06-23 16:14:18 -07:00
U-CAMELTRAIN\home
828020c91c
fix render racecar
...
fix render racecar
fix render racecar
2020-06-02 18:26:36 -04:00
Erwin Coumans
d1ded7d704
use pybullet.URDF_GOOGLEY_UNDEFINED_COLORS for standard gym envs
2020-06-01 23:38:59 -07:00
erwincoumans
a1522b3891
Merge pull request #2822 from ManifoldFR/patch-1
...
Modify DeepMimic Gym env step() to query policy at 30Hz
2020-06-01 17:23:25 -07:00
erwincoumans
50af23e487
Merge pull request #2832 from xhan0619/pybullet-api
...
Set numNonContactInnerIterations from Pybullet
2020-06-01 17:19:45 -07:00
erwincoumans
eea724bc02
Merge pull request #2837 from erwincoumans/master
...
also allow reportHitNumber for single pybullet.rayTest, better mtl/urdf color selection
2020-06-01 17:18:24 -07:00
Daniele Reda
409b0eaa39
fix double humanoid instantiation
2020-05-31 21:38:38 -07:00
Xuchen Han
a33a9412fa
add numNonContactInnerIterations to getPhysicsParameters
2020-05-29 08:28:52 -07:00
Xuchen Han
e6fdaebea9
add api for setting non contact iteration for pybullet
2020-05-28 17:58:21 -07:00
Wilson
829475c38a
Set DeepMimic Gym env to query policy at 30Hz
...
Addresses issue #2821
2020-05-24 16:30:47 +02:00
Erwin Coumans
a3c4b2995e
also allow reportHitNumber for single pybullet.rayTest (not just rayTestBatch)
2020-05-22 15:13:56 -07:00
erwincoumans
5233b72160
Merge pull request #2800 from xhan0619/splitImpulseMulti
...
Stability improvements for deformable.
2020-05-21 09:47:33 -07:00
Erwin Coumans
754dbd5fda
add pybullet.unsupportedChangeScaling feature for some small experiments, this is not general and has many limitations that are not likely are going to be resolved,
...
so unless it does what you want, ignore this api, it is unsupported!
2020-05-17 13:46:11 -07:00
Xuchen Han
fb751361a6
tune deformable_torus.py so the tori don't sink into each other
2020-05-11 18:51:32 -07:00
Xuchen Han
adf9e74dcb
match API in pybullet.c
2020-05-11 18:51:26 -07:00
Xuchen Han
b75dd02f68
make cloth in deformable anchor come to stop
2020-05-11 17:41:32 -07:00
Xuchen Han
644fd5f311
add API for two different damping modes for mass spring
2020-05-11 16:42:17 -07:00
Erwin Coumans
53b65b795f
add fractionEpsilon to filter rays with similar hit fraction
...
remove debug printf
2020-05-09 02:42:47 -07:00
erwincoumans
959b3e8258
Merge pull request #2790 from erwincoumans/master
...
add reportHitNumber to allow reporting a specific ray intersection hit
2020-05-08 12:59:06 -07:00
Erwin Coumans
f0cccf0faa
add collisionFilterMask to rayTestBatch and rayTest
...
This will allow to exclude (filter) certain bodies.
By default, static bodies have collision group 2, and dynamic (mass=1) bodies have collision group 1.
As long as mask & group != 0, a raytest will be performed.
2020-05-08 11:57:25 -07:00
Erwin Coumans
8f380b3fd2
use white as default undefined color instead of the googley colors.
...
use loadURDF(..., flags = pybullet.URDF_GOOGLEY_UNDEFINED_COLORS) to get Googley colors when colors are undefined.
2020-05-08 10:44:39 -07:00
Erwin Coumans
daa0a27403
add reportHitNumber to allow reporting a specific ray intersection hit
...
(by default, pybullet.rayTestBatch reports the closest hit, so you can report 2nd closest or 3rd closest hit etc)
Fix pybullet.createCollisionShape, in some cases (concave trimesh, convex mesh) two instances were created.
2020-05-07 23:23:24 -07:00
NiranthS
620e899e28
Update externalTorqueControlledSphere.py
2020-05-07 22:44:32 +05:30
Erwin Coumans
d479ca712c
allow to call getDebugVisualizerCamera in DIRECT mode (returns all 0)
2020-05-05 03:15:26 +00:00
Xuchen Han
84f028a5e6
move the position of physicsclientid in the list of argument to be the last
2020-04-29 16:40:06 -07:00
Xuchen Han
eefec255cf
Merge remote-tracking branch 'origin/master' into splitImpulse
2020-04-27 20:29:06 -07:00
Xuchen Han
5f1260199a
set appropriate repulsion stiffness for pybullet torus demo
2020-04-27 20:05:16 -07:00
erwincoumans
ddc47f9328
Merge pull request #2769 from NiranthS/master
...
Changed "eglrendertest.py":Windows Error
2020-04-26 11:55:31 -07:00