Lets talk about bullet physics in Blender 2.8

We all know bullet has had opencl support for years sooooo maybe we can use it?!?

Are there any planned changes for bullet in 2.8?

1 Like

They just cut the number of targets for 2.8. It seems rather unlikely to me that they would add OpenCL support for Bullet, which has a lot of potential to be problematic.

Well thats sad… thanks obama. Cant have nothing nice xD

I have to say im really enjoying this sim with 3000 objects its taking about 2 seconds a frame and absolutely destroying my computer


JK its not doing anything its being useless lol

i think threaded bullet it totally possible
just not using the gpu atm*

I recall seeing also some impressive soft bodies and cloth in real time with bullet physics.

A dream would be to have such stuff just running low quality but real time in view port, then you can bake them at higher quality for final rendering. (With quality I guess it’s sub frame steps)

Rigid bodies in Blender are pretty much real time with bullet physics today. S. Reich is the module owner, I recall 1-2 bconfs ago he talked about now when it’s in Blender and not just game engine - it should be easier to upgrade bullet physics versions.

On a side note, they really changed their homepage.

https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=&f=&t=10232

https://github.com/lunkhound/bullet3 -this is where they were adding multithreaded support for bullet 2x

My understanding of the “Interactive Mode” as suggested by Ton is, that it would allow this kind of functionality.

That would be rather useless from an art direction standpoint, considering that any reduction in quality to speed up a preview would change the outcome of an “up-resed” final quality output.

I don’t agree with you on that. Of course it would be naive to focus on details and to believe that they would exist in the more precise version too. It would certainly help to get a rough idea of what could be expected and you could spot obvious mistakes very quickly. If the goal is try a few ideas, it is much more pleasant to do it like this.

+1 you get it. I got the impression Interactive Mode is what is today Game Engine. But yeah it would be perfect for that.

Here’s a really impressive demo, the author doesn’t really explain how he did it. But he mentions GPU so I guess it’s GPU acc.

But here’s bullet physics doing Soft bodies in real-time. Which was impossible in Blender before, now days I usually use Cloth sim instead of Soft bodies. Cloth has gotten so much work done it it’s kinda amazing. But yeah, cloth in real time for preview then bake option in higher res would be amazing.

Realtime physics not only could be usefull in simulations, it could become a key stone for future addon developments. some ideas are the aplication of physics on modelling, for example with biogrowing sculpting that have autocolision detection, like a new kind of improved sculpting brushes. In animation could add automatically generated inertias, as the bouncing addons we have today. And on direct paint of textures, droping and squirting brushes as in Substance.

Well the point is we dont need low quality because bullet is capable of doing all this stuff in real time if blender had even the most basic support of bullet

1 Like

A year ago I was also asking about performance / usability of Bullet3 in the bullet forum…

https://pybullet.org/Bullet/phpBB3/viewtopic.php?f=9&t=11379

Bottomline was:

  1. Bullet GPGPU hasnt had development progress for years.
  2. Usage is not straightforward… you need to stuff everything in an URDF file (bodies, constraints) instead of being able to create the setup programmatically, i.e. important if you want stuff like dynamic fracturing.
    (this may still change tho, but it looks like there is more work being done for robotics and vr stuff in bullet, instead of bringing gpu acceleration into shape; this is personal opinion)

I also experimented a bit with the CPU multithreaded bullet2.x, but performance gain was not very dramatic, not even 2x faster, iirc about 30 or 40% maximum. So if you have a crawling 5000 rigidbody sim of 1 fps, you have 1,4 fps then :frowning: (on a quadcore I7)
This was done on top of the Fracture Modifier, but since this made quite some changes necessary (as in exchanging the bullet version and further fixes in viewport bullet wrapper and game engine) and did not bring a massive speedup it was never committed.

one area that can benefit from an upgrade is realtime fluid sim
splish splash looks nice :smiley:

I wonder if one could make constraints between particles to make a solid sim with fracture?

Well, i tried to fake some “fluidlike” behavior with spherical rigidbodies or even with the help of automerge in FM, which allows kinda cloth like behavior…
See how it (tearable cloth, kinda) can look like and is being used here:

BUT for correct fluid meshing that method didnt work out, obviously… it just created a mess of a mesh.

it would be neat to have objects that could be solid / soft body / fracture / and even gas phase and plasma all with 1 unified solver.

Because plasma is such a key feature to quality visual effects

solid liquid gas plasma

4 states of matter

and yes plasma will be important*
think rigid body/liquid/volumetric in 1 system all effecting each other.

wood catches fire emitting hot gas and (plasma) melting ice that drips on the cave walls etc.

Blender is a tool for artists. It is not meant to be used for physical simulations! Basically no one knows how plasma behaves or has an intuition for it except for some scientists. It is clearly not necessary to have something like that in Blender.

lightning, fire, neon, laser impact light saber etc.

imagine if you will, a starwars light saber object swinging at a iron beam object and nature running it’s course.
nothing but modeling, smart materials, and turning on 4state sim for both objects.

a unified sim is the fx wetdream and also good for science and vfx to share in each others spoils