Erwin Coumans
1640eef937
pybullet: enable getMeshData for multibody/rigid body (and filter on collisionShapeIndex for compound shapes)
2020-03-17 00:38:12 -07:00
Erwin Coumans
27fbbfee7f
pybullet removeAllParameters (sliders, buttons)
...
pybullet addUserDebugParameter adds button instead of slider, if min > max.
2020-03-16 21:29:30 -07:00
Erwin Coumans
f0528db5e9
embed V-HACD directly into Pybullet to make it easier to use:
...
pip3 install pybulle
import pybullet as p
p.connect(p.DIRECT)
p.vhacd("teddy.obj", "teddy_large_newout.obj", "newlog.txt", depth=2,resolution=1000000)
2020-03-16 00:38:52 -07:00
Erwin Coumans
0fd8598ca3
fix pybullet constants in previous commit
2020-02-21 16:16:13 -08:00
Erwin Coumans
e29ba9fe5c
add option to merge fixed links in URDF file (improves performance, can handle URDF files with many fixed links)
...
add option to ignore visual and collision shapes in URDF file
2020-02-21 15:04:26 -08:00
Erwin Coumans
0617f4f3cd
expose computeDofCount to pybullet
...
expose computeDofCount and calculateMassMatrix to BulletRobotics C++ API
(all untested)
2020-02-14 19:58:32 -08:00
Erwin Coumans
6afa0a463d
unsupported: expose collisionMargin to changeDynamics/getDynamicsInfo.
...
add cube_convex.urdf for testing this collisionMargin. Test script:
import pybullet as p
import time
p.connect(p.GUI)
plane = p.loadURDF("plane_implicit.urdf")
cube = p.loadURDF("cube_convex.urdf",[0,0,1])
p.setGravity(0,0,-10)
while (1):
p.stepSimulation()
pts = p.getContactPoints()
p.changeDynamics(plane,-1,collisionMargin=0.3)
p.changeDynamics(cube,-1,collisionMargin=0.3)
print("===================")
print("cube pos=", p.getBasePositionAndOrientation(cube)[0])
print("margin=", p.getDynamicsInfo(plane,-1)[11])
#time.sleep(1./10.)
2020-02-14 17:36:40 -08:00
Erwin Coumans
6195f40c02
fix compile issue in pybullet.c
2020-02-06 09:11:18 -08:00
Tigran Gasparian
34db76d263
Adds an option to syncUserData to specify the bodies for which to sync.
2020-01-23 14:46:33 +01:00
jackson-waschura
0b33d940e4
Actually use self collisions when specified
2019-12-08 13:54:38 +01:00
Xuchen Han
7bce5d61f4
separate in-plane and bending stiffness for mass spring model for easier parameter tuning
2019-11-27 11:40:10 -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
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
24a76614f8
PyBullet: fix memory leak in changeTexture command
...
Fixes #2481
2019-11-14 17:07:08 -08:00
Erwin Coumans
64ea8e9f27
PyBullet createMultiBody(Batch), return all body unique ids
...
PyBullet: fix crash: always check for existance m_multibodyWorld in ::render method
2019-09-09 16:41:25 -07:00
Chuyuan Fu
e4a5f9e06e
add body type info to dynamics info
2019-09-03 14:27:19 -07:00
Erwin Coumans
648844e898
minor fixes, bump up pybullet to 2.5.5
2019-08-14 21:30:10 -07: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
e0b642d730
pybullet: fix calculateInverseKinematics2
2019-08-11 17:02:16 -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
erwincoumans
fc95415c0e
Merge pull request #2359 from erwincoumans/master
...
premake add enable_stable_pd option, so Bullet can be compiled withou…
2019-08-08 09:58:32 -07:00
erwincoumans
226819b839
premake add enable_stable_pd option, so Bullet can be compiled without C++11 (Visual Studio 2010 etc)
...
PyBullet: improve sleeping: if the base is static and all joints in the chain between this link and the base are fixed, then this link is static too (doesn't merge islands)
Fix PyBullet compilation of Visual Studion 2010
2019-08-07 21:57:05 -07:00
Chuyuan Fu
2e64b27a31
bindings for setting warmstarting factor
...
fix space
2019-08-06 15:53:31 -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
bf3696e5b4
fix a leak in previous commit
2019-07-22 09:28:27 -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
ee9575167d
expose PyBullet.calculateInverseKinematics2 that allows to specify multiple IK end effector locations (not multiple orientations)
...
usage example:
jointPoses = p.calculateInverseKinematics2(bodyUniqueId, [endEffectorLinkIndices], [endEffectorTargetWorldPositions])
2019-07-10 17:21:18 -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
Chuyuan Fu
229e87c3c9
get mesh data api
...
fix compile
fix typo
2019-06-17 19:00:53 -07:00
Erwin Coumans
6160b52fd7
graphicsServer to workaround OpenGL issues on some servers.
2019-06-13 23:24:22 -07:00
Erwin Coumans
af5bfb4089
added Microtaur URDF file, with basic system identification
...
See https://www.youtube.com/watch?v=UmGnLgpEVTE
2019-05-21 22:33:16 -04:00
Chuyuan Fu
3be2ce0adf
set softbody start position and orientation in pybullet
2019-05-03 11:56:13 -07:00
Chuyuan Fu
3fb0a7c19b
add set starting position and orientation to softbody
2019-05-01 16:56:40 -07:00
erwincoumans
a929e8f2e5
Merge pull request #2203 from erwincoumans/master
...
implement stablePD control version of testLaikago, fix getCameraImage in VR, only report solver analytics if enabled using setPhysicsEngineParameter
2019-04-15 08:52:03 -07:00
erwincoumans
e97a7d77af
only report solver analytics if enabled using setPhysicsEngineParameter(reportSolverAnalytics=1)
2019-04-14 18:20:20 -07:00
erwincoumans
5ff52e47d9
report constraint solver analytics data, currently for each island the number of solver iterations used and remaining residual error.
2019-04-11 22:19:02 -07:00
Jannik Vogel
4ca8b997f9
Reduce visibility of Bullet symbols in PyBullet
...
Avoids version conflicts in programs using PyBullet, which also link against Bullet libraries
2019-04-08 02:59:24 +02:00
erwincoumans
76918ca26d
Merge remote-tracking branch 'bp/master'
2019-04-03 20:08:05 -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
Chuyuan Fu
19f3ec8b80
fix conflut
2019-03-25 14:12:00 -07:00
Erwin Coumans
f725d1201d
fix memory leak in PyBullet.calculateInverseKinematics when joint limits are provided
...
Fixes Issue #2164
2019-03-20 15:09:48 -07:00
erwincoumans
550f4c4785
expose maxJointVelocity through PyBullet.changeDynamics, this Fixes Issue #1890
...
bump up PyBullet to version 2.4.8
2019-03-11 10:12:38 -07:00
erwincoumans
a1f15ae01a
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-11 10:12:38 -07:00
erwincoumans
4ea907aacf
expose maxJointVelocity through PyBullet.changeDynamics, this Fixes Issue #1890
...
bump up PyBullet to version 2.4.8
2019-03-09 09:23:16 -08:00