godot-softbody2d
godot-softbody2d copied to clipboard
Godot SoftBody2D - Plugin that adds deformable 2D soft body.
Godot SoftBody2D
A SoftBody2D is defined by a set of RigidBody2Ds and Joint2Ds used to simulate it and a Skeleton2D used to deform the texture.
Installation
- Automatic (Recommended): Download the plugin from the official Godot Asset Store using the
AssetLib
tab in Godot. - Manual: Download the source code and move only the addons folder into your project addons folder.
Features
You can create multiple types of softbodies with this plugin, such as:
- Bouncy SoftBody2D
- Breakable/Deformable SoftBody2D
- SoftBody2D with Hole
Video Tutorial
How this plugin creates a softbody
1. Create polygon from texture around edge. |
![]() |
2. Optionally do the same for hole texture. |
![]() |
3. Create multiple regions of same size around polygon. |
![]() |
4. Delete the regions the polygon or inside the hole polygon. |
![]() |
5. Creates a `Skeleton2D` child. Creates a set of `Bone2D` nodes of the `Skeleton2D`, each having a region and assign correct weights to them. |
![]() |
6. Creates a set of `RigidBody2D` nodes, one for each region with a `CollisionShape2D` child, a `RemoteTransform2D` child that targets the coresponding `Bone2D` position, and a set of `Joint2D` children that connect neighbouring rigidbodies. Also for each `Bone2D` node, make it lookat another neighbour node. |
![]() |
7. When the joint length is too big, the joints breaks. Then, the weights for both bones are updated to no longer have weights in the other region. |
Discord
A vibrant community for discussion, user support and showcases.
License
Godot SoftBody2D is distributed under the MIT license. See LICENSE
for more details.
Uses parts of code from (godot-chunked-voronoi-generator)[https://github.com/arcanewright/godot-chunked-voronoi-generator]