Search found 4087 matches

by Erwin Coumans
Wed Apr 11, 2018 7:14 am
Forum: PyBullet Support and Feedback
Topic: pyBullet vs Gazebo
Replies: 3
Views: 185

Re: pyBullet vs Gazebo

Ultimately you can try out both and decide for yourself. It seems that Gazebo uses Bullet Gazebo uses btRigidBody from Bullet (maximal coordinate rigid bodies) which is not necessary the best way for robotics, it allows for joint gap. PyBullet uses Featherstone articulated rigid bodies (btMultiBody)...
by Erwin Coumans
Thu Mar 15, 2018 3:00 pm
Forum: General Bullet Physics Support and Feedback
Topic: [SOLVED] Updating CollisionShape leads to undetected collisions
Replies: 2
Views: 175

Re: [SOLVED] Updating CollisionShape leads to undetected collisions

Halfextents needs to be positive values (and sphere radius too etc). Negative mass is also not supported.

In addition, if you make changes to collision shape, you first need to

1) remove the rigid body/collision object from the world,
2) make the changes
3) re-insert the body to the world.
by Erwin Coumans
Thu Mar 01, 2018 10:07 pm
Forum: General Bullet Physics Support and Feedback
Topic: CPU multithreading is working!
Replies: 140
Views: 41344

Re: CPU multithreading is working!

Thanks, this is very interesting. Have you experimented with graph coloring (solving a large island in parallel)?
by Erwin Coumans
Wed Feb 07, 2018 3:57 am
Forum: PyBullet Support and Feedback
Topic: Geometry resolution importing from URDF
Replies: 1
Views: 222

Re: Geometry resolution importing from URDF

You can use the flags=pybullet.URDF_USE_IMPLICIT_CYLINDER in loadURDF, then it uses an implicit cylinder. Alternatively, just model a tesselated cylinder in Blender (or other 3d modeler) at the resolution you like, and write it to a wavefront OBJ file and use that.
by Erwin Coumans
Wed Feb 07, 2018 3:55 am
Forum: PyBullet Support and Feedback
Topic: JBullet Basic question
Replies: 9
Views: 569

Re: JBullet Basic question

Never heard about JBullet, what is it?

This is a forum for PyBullet, the Python module, which is much more than just Python bindings for Bullet: it also adds rendering, VR, inverse kinematics, inverse dynamics, rendering (CPU and OpenGL) etc. See the PyBullet quickstart guide.
by Erwin Coumans
Wed Feb 07, 2018 3:52 am
Forum: PyBullet Support and Feedback
Topic: STATE_LOGGING_VIDEO_MP4 in DIRECT mode?
Replies: 4
Views: 236

Re: STATE_LOGGING_VIDEO_MP4 in DIRECT mode?

Indeed, STATE_LOGGING_VIDEO_MP4 is only available when using OpenGL (GUI or SHARED_MEMORY). Thinking of it, we could implement this also in DIRECT mode, using the TinyRenderer to generate images. Some people log the state of objects, and create the video/playback afterwards. Another option is to use...
by Erwin Coumans
Mon Feb 05, 2018 4:17 pm
Forum: General Bullet Physics Support and Feedback
Topic: Strong bounce on collision, is this expected?
Replies: 2
Views: 250

Re: Strong bounce on collision, is this expected?

For a static plane, only a single contact is added for each simulation step (by default) causing a small amount of rotation and penetration. We don't have specialized plane versus cube and plane versus convex etc. For cube versus plane it would be trivial to add of course, but you would still have t...
by Erwin Coumans
Thu Feb 01, 2018 4:38 pm
Forum: General Bullet Physics Support and Feedback
Topic: rigid bodies violently jumping away
Replies: 8
Views: 521

Re: rigid bodies violently jumping away

Please file a very simple PyBullet repro case and use the github issue tracker.

Keep it simple, no Blender, just plain PyBullet.

Also check out the PyBullet Quickstart Guide and examples and try to understand why the PyBullet examples work fine and your setup doesn't.
by Erwin Coumans
Thu Feb 01, 2018 6:40 am
Forum: General Bullet Physics Support and Feedback
Topic: Way to get softbody render from p.getCameraImage?
Replies: 2
Views: 184

Re: Way to get softbody render from p.getCameraImage?

This is not implemented yet, soft body in PyBullet is very preliminary.
by Erwin Coumans
Thu Jan 25, 2018 6:02 am
Forum: PyBullet Support and Feedback
Topic: Collision Resolution
Replies: 2
Views: 291

Re: Collision Resolution

There are a few ways to keep simulation in 2D indeed: you can use a 'fixed' base and add joints that allow motion in 2D. Look at the Gym environments 'Hopper' and 'HalfCheetah' and 'Walker2D', they only move in the 2D plane. https://github.com/bulletphysics/bullet3/blob/master/examples/pybullet/gym/...
by Erwin Coumans
Thu Jan 25, 2018 5:58 am
Forum: PyBullet Support and Feedback
Topic: Playing video or audio in other apps can cause an increase in pybullet simulation performance
Replies: 2
Views: 232

Re: Playing video or audio in other apps can cause an increase in pybullet simulation performance

Heh, that is a very funny post. You are using PyBullet using GUI connection? If so, there is some intra-thread communication happening, that involves some 'waiting' between threads. Likely, the OS behaves differently during those 'waits'. Try it again using DIRECT mode, it should run faster and inde...
by Erwin Coumans
Fri Jan 12, 2018 4:26 pm
Forum: PyBullet Support and Feedback
Topic: Limit video framerate of STATE_LOGGING_VIDEO_MP4
Replies: 2
Views: 323

Re: Limit video framerate of STATE_LOGGING_VIDEO_MP4

At the moment, the ffmpeg video stream is generated from the graphics thread, which runs asynchronously from the physics. It cannot be synchronized. We can add an option to force to synchronize them for this purpose, you could file an issue in our tracker ? Alternatively, just grab the individual im...
by Erwin Coumans
Fri Jan 12, 2018 4:21 pm
Forum: Links, Papers, Libraries, Demos, Movies, Comparisons
Topic: Conjugate Gradient based MLCP solver source
Replies: 5
Views: 547

Re: Conjugate Gradient based MLCP solver source

Thanks for sharing this, I'll give it a spin. Hopefully it is reasonably easy to build.

I wonder how the solver compares with the NNCG solver, which is a hybrid of PGS and CG? We have some implementation but it is mainly useful when the problem requires a very high iteration count in PGS.
by Erwin Coumans
Tue Jan 09, 2018 3:58 pm
Forum: General Bullet Physics Support and Feedback
Topic: Custom broadphase filter for city-sized world, need advice
Replies: 4
Views: 460

Re: Custom broadphase filter for city-sized world, need advice

The btDbvtBroadphase should be pretty fast in general, faster than btAxisSweep3/bt32AxisSweep3 and better raycast / aabb cast acceleration.

Bullet updates all AABBs, including the static object. You can use world->setForceUpdateAllAabbs(false) to improve performance.
by Erwin Coumans
Tue Jan 09, 2018 3:53 pm
Forum: General Bullet Physics Support and Feedback
Topic: Softbody and rigidbody collision
Replies: 4
Views: 540

Re: Softbody and rigidbody collision

drleviathan is right. a smaller timestep can improve things increase the soft body collision margin use the double-precision build make the softbody stiff enough by default we only collide with the vertices of a softbody, so you need to make sure there are no big gaps between the vertices enable col...