• Resources
  • [Addon] [Godot4] DeformableMesh - Let's deform some mesh!

Hi all!
I would like to share my second addon to the Godot Community.

It's called DeformableMesh and it allows to deform 3D meshes using customizable deformers at run-time and in the editor.
In this version you can deform meshes using spherical deformers nodes.



a year later

Hi all,

I've updated my DeformableMesh addon.
It allows you to deform your meshes with a stack of customizable deformers directly in the editor. Now you can bend, twist, taper or use the spherical deformers of the first version.

(DeformableMesh Animation)

So I wanted to share it with you guys.

    kuligs2 Don't worry, you can create your own deformers with the DeformableMesh add-on.

    Create a script that extends the DM_Deformer class and override just these two methods: _on_begin_update() and _on_update_vertex().

    I'll be happy to include your fancy deformers in the next version (if they work, obviously 😄)

      cloudofoz i will try to play with this, this is cool !!! Im getting many ideas on how to use this 😃 from creepy crawling bugs under the skin like in the first Mummy movie, to character crawling under the carpet 😃

        kuligs2 I'm glad you like it and very curious to see some work that uses my add-on! For example I know that the first version was used to create craters on the terrain after an explosion.

        I added an example scene, downloadable from the repository, for those who want to have an idea of how it works.

          4 days later

          cloudofoz unfortunately it dont work on my end 🙁... thorws me errors

            Meshes must contain a vertex array, an index array, or both
            servers/rendering/renderer_rd/storage_rd/mesh_storage.cpp:567 - Index (uint32_t)p_surface = 0 is out of bounds (mesh->surface_count = 0).
            res://addons/deformablemesh/dm_surface_data.gd:73 - Out of bounds get index '0' (on base: 'PackedVector2Array')
            servers/rendering_server.cpp:1262 - Mesh created without vertex array. This mesh will not be visible with the default shader. If using an empty vertex array is intentional, create the mesh with the ARRAY_FLAG_USES_EMPTY_VERTEX_ARRAY flag to silence this error.
            Meshes must contain a vertex array, an index array, or both
            servers/rendering/renderer_rd/storage_rd/mesh_storage.cpp:567 - Index (uint32_t)p_surface = 0 is out of bounds (mesh->surface_count = 0).
          Translate
            res://addons/deformablemesh/dm_surface_data.gd:73 - Out of bounds get index '0' (on base: 'PackedVector2Array')
            servers/rendering_server.cpp:1262 - Mesh created without vertex array. This mesh will not be visible with the default shader. If using an empty vertex array is intentional, create the mesh with the ARRAY_FLAG_USES_EMPTY_VERTEX_ARRAY flag to silence this error.
            Meshes must contain a vertex array, an index array, or both
            servers/rendering/renderer_rd/storage_rd/mesh_storage.cpp:567 - Index (uint32_t)p_surface = 0 is out of bounds (mesh->surface_count = 0).