There is an experimental branch of Blender 4.3 (currently in Alpha) that adds a physics engine, specifically the open source Bullet physics engine. This enables you to do physics based simulations inside of geometry node simulation nodes, opening up a huge world of simulation options.
Details of the experimental branch from the creator:
This is an experimental branch for testing rigid body simulation in geometry nodes. The general idea is to present rigid bodies, constraints, and other parts of the simulation as domain data with attributes, similar to other kinds of geometry.
Test branch can be found here: https://projects.blender.org/blender/blender/pulls/124093 65
This approach is quite different from an earlier test 14 i made, which was a lot more object-based. That branch relied on a common physics world between objects, which requires complicated depsgraph relations to make sure geometry can synchronize with the physics world.
The new code is completely separate from existing Bullet integration in Blender. All aspects of the simulation are handled inside a new
GeometryComponent
, which keeps the code nicely compartmentalized and does not require substantial changes to existing geometry code.What the system can do at this point:
- Create rigid bodies, collision shapes, and constraints as elements in the physics component.
- Advance the simulation by time steps.
- Access properties of rigid bodies and constraints as attributes of the physics component.
- Add forces, torque, and other effects dynamically.
Key Links
Blender Physics Branch Home Page
Longer Explanation Video by Cartesian Caramel
You can learn more about the new Blender 4.3 physics engine experimental branch and see a simple Hello World setup example in action in the video below.