|
Hi everyone
I've developed a new Python plugin for GIMP 3.0/3.2 called Puppet warp, after Gimp added powerful Non-Destructive Editing (NDE) features and N-Point Deformation Tool but it is buried in Edit > Preferences > Playground as an experimental feature , and many users report that it has not worked properly since around GIMP 2.10.14. Some people also mention it crashes when you try to commit the deformation. In practice, most GIMP users simply do not have a usable mesh deformation workflow.
So I built a Puppet Warp plugin that actually works as a proper tool.
How it works:
1. Warping
Click to add pins, drag to deform; Shift snaps a drag to an axis Rotate and scale around any pin (orange ring: drag the dot to rotate, drag the body to scale; or Alt+wheel / Ctrl+wheel) Per-pin taper — how far a pin's influence reaches before it fades to the rest of the mesh (Shift+wheel, or the T field) Per-pin depth — when two warped regions overlap, higher depth draws in front ([ / ], or the D field). See Pin depth Pin Edge keeps the outer mesh border at its rest position Stiffness mesh derived from the layer's alpha: transparent areas stay soft, so a pin on empty background barely tugs the artwork
2. Canvas & preview
Extend image grows the layer when pins pull pixels outside its bounds; the layer mask (if any) grows with it Live preview with three background modes: Below (first visible layer under), Composite (stack of all visible layers under), Off Mesh overlay in four styles (Cells / Triangles / Both / Off) with a custom line color, so you can see the quad grid while you work Pan, zoom, fit-to-view; the view widens automatically to show extended pixels
3. Workflow
Undo / redo inside the dialog (Ctrl+Z, Ctrl+Shift+Z / Ctrl+Y) Multi-select pins (Shift+click, Ctrl+A), nudge with arrow keys (Shift = 10 px) Save / load the whole setup (pins, depth, taper, grid, options) as a JSON preset Non-destructive: every parameter is stored as JSON on the layer filter and travels with the .xcf. Reopen the tool to continue editing — including after an extend, where the padding is re-detected so pins never drift
I would be grateful if you could let me know if you encounter any issues.
I hope this speeds up your workflow in GIMP.
| Attachments: |

2026-10-17-142721_1920x1080_scrot.png [ 889.9 KiB | Viewed 6 times ]
|
puppet-warp-linux-x86_64.zip [82.17 KiB]
Downloaded 1 time
|
|