Erwin Coumans
7f9f514b7e
enable self-collision for deep_mimic pybullet_envs and make it easier to try it out:
...
python3 -m pybullet_envs.deep_mimic.testrl
2019-11-30 13:19:28 -08:00
Xuchen Han
39df98465e
set a smaller dt for deformable_ball.py for stability and typo fix
2019-11-25 17:07:00 -08:00
Xuchen Han
f237a40621
add a pybullet example to compare the result of soft body and deformable body
2019-11-21 00:09:32 -08:00
Xuchen Han
fa7cb25c95
revert the default world to SOFT_MULTIBODY_WORLD
2019-11-20 23:47:15 -08:00
Xuchen Han
edffb0cc55
update pybullet examples
2019-11-19 23:10:13 -08:00
Erwin Coumans
66951ac102
fix Mac version of deformable_anchor.py
2019-11-19 19:35:28 -08:00
Erwin Coumans
96deb42aa5
pybullet.createSoftBodyAnchor
2019-11-19 19:20:08 -08:00
Erwin Coumans
1f6d504e44
fix memory issues in btSparseSDF.h
...
(hash function on structure with uninitialized padding, and Reset not called in destructor)
expose sparseSdfVoxelSize in PyBullet.setPhysicsEngineParameter
don't call deformable wireframe drawing in the wrong thread/place (it can cause crashes)
2019-11-18 10:22:56 -08:00
Xuchen Han
bca87426f4
enable real time simulation
2019-11-15 22:38:47 -08:00
Xuchen Han
a86710c5b6
add python binding to allow loading deformable objects
2019-11-15 21:25:11 -08:00
Erwin Coumans
72e0e7c223
fix load_soft_body.py example.
...
add optional flags in pybullet.resetSimulation.
fix compile issue due to SKIP_DEFORMABLE_WORLD
fix issue in .obj importer (todo: replace with tiny_obj_loader)
todo: replace std::ifstream fs; by fileIO usage.
2019-11-14 21:20:42 -08:00
Erwin Coumans
f1f04aef53
add simple sceneAABB example
2019-11-04 15:45:58 -08:00
Chuyuan Fu
e74ffa2f65
add body type info to dynamics info
2019-09-28 14:43:40 -07:00
Erwin Coumans
95a7488310
PyBullet: fix createMultiBodyBatch.py example
2019-09-13 07:38:00 -07:00
muupan
4c209a4834
Fix typo: s/duraction/duration/g
2019-09-03 17:29:43 +09:00
Erwin Coumans
88d1788ee5
PyBullet: allow to update an existing heightfield shape
...
Also, use flags = p.GEOM_CONCAVE_INTERNAL_EDGE to enable internal edge filtering for heightfield (disabled by default)
See https://github.com/bulletphysics/bullet3/blob/master/examples/pybullet/examples/heightfield.py
2019-08-14 21:06:10 -07:00
Erwin Coumans
f9b232b153
pybullet: allow programmatic creation of heightfield. See https://github.com/erwincoumans/bullet3/tree/master/examples/pybullet/examples/heightfield.py
...
premake4: allow to build example browser without C++11, re-enable stable PD control plugin using --enable_stable_pd=True
2019-08-11 13:59:24 -07:00
Erwin Coumans
bf90b6a1d5
update PyBullet quickstart guide pdf version
...
tweak profileTiming example
2019-08-05 08:32:45 -07:00
Erwin Coumans
6d844e5df1
pybullet: more detailed nested timings
2019-08-01 19:15:02 -07:00
Erwin Coumans
7263439c4b
improved for inserting profile timings from Python, to analyzer performance of pybullet programs.
...
See examples/pybullet/examples/profileTiming.py for an example. Note that python and c++ is properly interleaved.
Open a timings with a name, close the timing without a name. Note that timings can be recursive, added/popped as a stack.
2019-08-01 19:12:16 -07:00
Erwin Coumans
51fba6f78d
export btHeightfieldTerrainShape to PyBullet. Note that tinyrenderer doesn't support rendering it (it would be too slow on CPU)
...
fix rare getKeyboardEvents threading issue
change texture color to default plane.urdf blue
2019-07-29 20:23:38 -07:00
Erwin Coumans
36f3adc03f
copy/move heightfield files around (part of pybullet_data)
...
prepare for heightfield support in pybullet (first step, needs a bit more)
2019-07-25 13:01:26 -07:00
Erwin Coumans
3eedb2a6f2
fix rotational friction between btMultiBody and btRigidBody
2019-07-24 22:07:16 -07:00
Erwin Coumans
39a4e8dcd9
Implement faster array versions of PyBullet: getJointStatesMultiDof, getLinkStates, setJointMotorControlMultiDofArray, resetJointStatesMultiDof,
...
Implement StablePD in C++ through setJointMotorControlMultiDofArray method for pybullet_envs.deep_mimic, see testHumanoid.py and examples/pybullet/examples/humanoidMotionCapture.py
Minor fix in ChromeTraceUtil in case startTime>endTime (why would it happen?)
2019-07-21 13:08:22 -07:00
Erwin Coumans
bb8f621bf9
revert SHARED_MEMORY_GUI test
2019-07-03 12:10:24 -07:00
Erwin Coumans
9db6acd97d
support changeVisualShape(rgbaColor) through GraphicsServer/Client
...
support getCameraInfo through GraphicsServer/Client
2019-07-02 09:48:34 -07:00
Erwin Coumans
ed4515ae17
for the GraphicsServer, expose a sync transform interval: only synchronize the transform once the stepSimulation exceeds this time interval.
...
(for example, run the simulation at 1kHz but sync the graphics transforms to remove graphics server at 30Hz)
2019-06-19 09:45:29 -07:00
Erwin Coumans
c3b7f39aaf
expose shadowMapResolution (texture resolution) and shadowMapWorldSize (size in meters in world space)
...
expose pybullet.ConfigureOpenGLVisualizerRequest(lightPosition=[x,y,z], shadowMapWorldSize=10.5, shadowMapResolution=16384)
See examples/pybullet/examples/configureDebugVisualizer.py for an example.
This reimplements https://github.com/bulletphysics/bullet3/pull/2295 but without creating a new command/status and explicitly referring to the debug visualizer
(since the 'getCameraImage' also has a lightPosition)
2019-06-19 09:01:16 -07:00
Erwin Coumans
7e76ee0ad7
make pybullet.getMeshData work for softbody
2019-06-17 21:43:38 -07:00
Erwin Coumans
9d21deb712
use GUI mode in IK example
2019-06-15 12:58:02 -07:00
Erwin Coumans
e286fbd9f2
fixes for RemoteGUIHelper
2019-06-15 10:30:48 -07:00
Erwin Coumans
ee3680765e
fixes for RemoteGUIHelper
2019-06-14 14:34:56 -07:00
Erwin Coumans
6160b52fd7
graphicsServer to workaround OpenGL issues on some servers.
2019-06-13 23:24:22 -07:00
Rémi Verschelde
d85b800702
Convert DOS (CRLF) source files to Unix (LF) line endings
...
Excluded `examples/pybullet/gym/pybullet_data/` which has many (3000+)
CRLF data files (obj, mtl, urdf), and `docs/pybullet_quickstart_guide`
which has generated .js and .htm files with CRLF line endings too.
2019-05-22 10:01:32 +02:00
Erwin Coumans
ef9570c315
add yapf style and apply yapf to format all Python files
...
This recreates pull request #2192
2019-04-27 07:31:15 -07:00
erwincoumans
6951aaf26a
implement PyBullet removeState command. Fixes Issue #2163
...
https://github.com/bulletphysics/bullet3/issues/2163
2019-04-03 20:06:40 -07:00
erwincoumans
32e93d9f91
allow to PyBullet.changeDynamics for all links in maximal coordinate rigid bodies
...
change snake.py to use useMaximalCoordinate = True by default
2019-03-08 09:20:32 -08:00
erwincoumans
9408e4f2d0
Expose anisotropic friction, add snake demo. Simple snake slither locomotion from > 15 years ago, thanks to Michael Ewert @ Havok!
...
Visit http://www.snakerobots.com to see one of these in the wild
2019-03-07 21:13:00 -08:00
Erwin Coumans
bd0501d3fc
fix example meshScale
2019-03-02 12:11:59 -08:00
Erwin Coumans
3997ac2b61
fix issue with retina scale and picking in createVisualShape.py example
2019-03-02 12:08:25 -08:00
erwincoumans
4d711ed411
Merge remote-tracking branch 'origin/physx' into physx_clean
2019-02-28 17:52:59 -08:00
erwincoumans
2ae03f50b1
revert to original humanoidMotionCapture.py example. Add a showJointMotorTorques variable (false by default)
2019-02-27 10:01:54 -08:00
erwincoumans
8e1c1448ab
Expose motor drive torque reporting for motors in spherical joints in getJointStateMultiDof.
2019-02-27 09:54:12 -08:00
erwincoumans
a9996088c8
Implement PyBullet.getCameraImage for PhysX backend.
...
PhysX backend, allow arbitrary plane normal, a few other fixes.
2019-02-24 14:09:42 -08:00
erwincoumans
9ecc1cc485
Implement CustomProfilerCallback, hooking up to Bullet profiling
...
test dominoes
2019-02-22 09:17:55 -08:00
erwincoumans
71b1191947
texture caching and geometry caching (PhysX) for much faster loading of many same objects, helps benchmarking/comparison.
...
add command-line args for PhysX (numCores=..., solver=tgs, )
2019-02-21 19:24:18 -08:00
erwincoumans
3bf27cf8f2
implement rudimentary contact callback. Does PhysX have a way to report ALL contact points, every frame, so we can update contact forces etc, and report all contacts?
2019-02-20 21:38:37 -08:00
erwincoumans
bdf9b10246
more work on pybullet_envs.deep_mimic.
...
allow btMultiBody to not wakeup (for some RL experiments)
move deep_mimic motion files to data/motions folder, so we can use the args files unmodified.
2019-02-18 17:57:02 -08:00
erwincoumans
79a273f644
deep_mimic: add option for spherical joint drive motor, next to stable PD control
...
(existing policies won't work with those motors, needs tuning and re-training)
2019-02-12 20:42:05 -08:00
erwincoumans
85ee4c2934
allow batch creation of objects through PyBullet.createMultiBody, see createMultiBodyBatch.py example.
...
expose minGraphicsUpdateTimeMs through PyBullet.connect(p.GUI, options="minGraphicsUpdateTimeMs=32000"), by default OpenGL rendering runs at 4000microseconds intervals.
allow a maximum of 128k objects
fix meshScale for PyBullet.createCollisionShape for custom mesh
expose Pybullet.setPhysicsEngineParameter(minimumSolverIslandSize=...), larger minimum batches group solver constraints together in the same island, to reduce calling overhead (even if they are not related)
2019-02-12 10:36:01 -08:00