Close Openings
A neck without its head, a mask's cut, a garment's edge: openings no longer read as contact where nothing touches.
Contact deformation for Blender
Where a body presses into itself, or something presses into it, Fleshy dents the flesh and rolls it out around the edge. Skin first, and anything soft after it. Each frame follows from its pose: scrub anywhere, render frames in any order.
Early-bird price $15 on Patreon for the first two weeks, then $20
Bones to set up
Any rig, any character. No segmenting, no per-character authoring.
Strokes to paint
Control comes from the vertex groups the character already has.
Live and Baked
A bake stores what Live shows you while you pose, with Smooth Pops evening out sudden jumps. Untick it for an exact match.
Blender
4.5 LTS, 5.0 and 5.2 LTS, tested on each.
ResultsOff and on
The same frame, rendered through the add-on as it ships: the knee at 150°, Corner Taper at 0.55, everything else at its defaults. Drag across each to compare.
01Self-contact
A mesh always collides with itself. The back of a bent knee, an arm against the ribs, a thigh folding into the stomach: Fleshy finds where the surface presses, dents it, and bulges it out around the edge.
02Corner Taper
Where a fold closes, behind a bent knee or inside an elbow, real flesh creases instead of swelling. Corner Taper finds the closed end of every fold by itself and takes back the bulge there, easing it in again further out. Nothing to paint, nothing to place.
The settings in this renderOn the whole mesh
A region can turn it on or off for its own part. Preview colours where it acts.
03Colliders
Add a hand, a chair, a strap or another character as a collider and it presses into the flesh. Here a coil is drawn tight round the thigh: the flesh gives under each turn and swells between them.
04More features
Built for human flesh, and just as happy on anything soft: props, toys, creatures. Pick a part to see it work.
04.1 · Any mesh
Any all-quad mesh with a Subdivision Surface: a creature, a soft toy, a cushion. Here a soft tube bends on a two-bone rig and folds into itself.
04.2 · Props
Skin squeezed at a joint rolls out round the fold; a cushion only gives. Set Bulge to 0 and a press leaves a clean hollow with no rim around it. Here a cushion is set up like any character, with a ball as its collider, rolled across it and back.
04.3 · Meshes as one
Set Up Collection: every mesh in a collection presses into the others as one mesh would. A body and a separate head, or two soft balls, with one set of settings and one bake.
04.4 · Regions
Give part of a mesh its own Bulge, Width, Dent or Firmness by naming a vertex group it already has, such as a rig's deform group. Here the darker half is a region at Firmness 70%: pressed as deep, it dents less.
04.5 · Art direction
Each in a unit you can reason about: how far the bulge spreads in rows of faces, how deep the dent goes as a share of the flesh's thickness. Move them here, and drag the collider.
04.6 · Live and Baked
Pose and tune in Live: each change shows as soon as you let go, with nothing to bake. Bake for playback and renders: frames add up in a cache beside your .blend and play at about the cost of the character alone. Every frame is checked before it plays, and one you edit after baking shows undeformed until you bake it again.
05The panel
In the 3D viewport's sidebar, under Fleshy. Each section opens and closes on its own, a section with nothing in it shows only its Add button, and every message says what to do next.
06The details
What a production asks of a deformer once the first render looks right: animation, linked characters, render settings, files that move between machines.
A neck without its head, a mask's cut, a garment's edge: openings no longer read as contact where nothing touches.
Bake 20-50 and 70-100 in one press. Bakes add up: bake one frame again and the rest stay as they were.
Progress at the bottom of the viewport, and Cancel keeps every frame already done. Nothing changes under a running bake.
The pose, the settings, the mesh and the colliders are checked on every frame. What changed is named; the rest keeps playing.
Render with motion blur on, straight from the baked frames. Render frames in any order.
Set up on a library override, with every setting kept across a reopen and a resync of the character's file.
The cache sits beside the .blend. Move both to another folder or computer and it is found again. A copied character gets its own.
Set Up, Bake, Remove and every setting take Ctrl+Z and redo like the rest of Blender.
About a second a frame on a full body in Live, and baked playback at about the cost of the character alone.
On by default: a bake spreads a sudden one-frame jump of the flesh over a few frames. Cuts and fast contact are left as they are.
No one-frame pop where a collider's edge passes over the flesh. On by default.
Every set-up character in the scene in one press, each with its own frames and settings.
07Compared
The shots on this page, rendered again with two other contact add-ons in Fleshy's place: the same mesh, motion, camera and light. We tuned each one on each shot for its steadiest motion at a dent like Fleshy's. Slow them down to see every frame.
07.1 · Self-contact on a body
A full character's knee bends from 100° to 150° and back, so the calf presses into the back of the thigh the whole way.
07.2 · A collider on a body
A coil wound round the thigh is drawn tight into the flesh and let go. SquishFX is at its defaults here: every setting of it that dented the thigh as deeply as Fleshy tore the mesh round the coil.
07.3 · Self-contact on a prop
A tube on a two-bone rig bends until it folds into itself.
07.4 · Two meshes
Two separate meshes, each softening the other. With SquishFX on both, the result broke apart, so for it they are one mesh with its Self Collision.
07.5 · Firmer and softer areas
Two rollers press into a slab whose right half is firmer: in Fleshy a region at Firmness 70%, in SquishFX its vertex-group mask weighted to match. Real Time Soft Body Collision has no setting for part of a mesh, so its two halves give alike.
| Fleshy | SquishFX 3.3.0 | Real Time Soft Body Collision | Softie Collision System1 | |
|---|---|---|---|---|
| A body pressing into itself | Yes, by default | Yes, a switchits other settings did not change the result in our tests | Yes, a mode | Yes, a mode |
| A bulge round a self-contact | Yes, with its own setting | Nonone on our self-contact shots | Yes | Not in its documentation |
| Firmer and softer areas | Any number of regions, from the vertex groups the character has | One vertex group as a mask | No | One hardness for the whole mesh |
| Each collider with its own firmness | Yes, and per region of the collider | One setting for all colliders | One setting for all colliders | Yes, by a vertex group on the collider |
| Softer folds at the joints | Yes, Corner Taper | No such setting | No such setting | No such setting |
| Separate meshes pressing each other | Yes, set up as one collection | Within one meshtwo objects broke apart in our test | Yes, through its collection | Not in its documentation |
| A bake for playback | Yes: frame ranges, stop and keep what is done, motion blur | Yes, to shape keys | No, it runs live | Not in its documentation |
1 Softie Collision System from its documentation, not tested. SquishFX also offers jiggle, ripple and penetration effects, and Softie adds noise; this section compares contact only. Versions: Fleshy 0.23, SquishFX 3.3.0, Real Time Soft Body Collision as of October 2026, tested in Blender 5.2 on 7 October 2026.
Each add-on runs on the same mesh, motion, camera and lights as Fleshy, at subdivision level 2. Fleshy is as on the rest of this page: Exact Collider Edges and Smooth Pops on, their defaults.
| Setting | A knee | A coil | A tube | Two meshes2 | Regions |
|---|---|---|---|---|---|
| Effect | Squish | ||||
| Self Collision | On | Off | On | Off | |
| Mask | None | The firm half at 30% | |||
| Before the Subdivision Surface | No | Yes | No | ||
| Intensity | 2 | ||||
| Shape Smoothing | 15 | 4 | |||
| Spread | 1 | 5 | |||
| Volume Preservation | 0.21 | ||||
| Lateral Flow | 0.291667 | ||||
| Contact Hardness | 0.518519 | 0 | |||
| Corrective Smooth | 4 | 0 | |||
| Collision Offset | 0 | 0.002 | |||
| Splay | 0 | ||||
2 Both balls joined as one mesh: as two objects, they broke apart.
| Setting | A knee | A coil | A tube | Two meshes3 | Regions |
|---|---|---|---|---|---|
| Collision Mode | Internal Collision | Collider Only | Internal Collision | Collider Only | |
| Before the Subdivision Surface | Yes | No | Yes | No | Yes |
| Margin | 0.003 | 0 | 0.003 | 0.001 | 0 |
| Falloff Distance | 0 | 0.005 | 0 | ||
| Smooth Position | 8 | ||||
| Ray Limit Scale | 1 | ||||
| Pressure Scale | 0 | 1 | 0.5 | ||
| Strength | 0.25 | 1 | 0.5 | 0.25 | 1 |
3 The second ball in its collection, Deform Collection on, both balls' settings alike.
08Workflow
One thing to get right first: bake at the subdivision level you render.
On the Subdivision Surface, set the viewport level to the render level.
Select the body, not its rig, and press Set Up in the sidebar.
Press Bake This Frame, adjust, press again. Or switch to Live.
Press Bake 1-250. Stop any time; the frames done are kept.
Hide it in the viewport if you like. Renders are unaffected.
09Tutorial
From installing to a finished render, on one character, start to end. The manual covers the rest.
10Requirements
| System | Windows, 64-bitmacOS and Linux are not supported yet. |
|---|---|
| Blender | 4.5 LTS, 5.0, 5.2 LTS |
| The mesh | All quads, with a Subdivision Surface modifierAny rig, or none. No bone setup, nothing painted. A collider can be any mesh. |
| Use | Personal and commercial workOne purchase covers you on any computer you use, and your organisation's own staff. |
| Licence | Interface GPL, compiled core under the EULAWhat you make with it is yours. |
11Questions
No. Each frame follows from its pose alone, so you can scrub to any frame, render frames in any order, and get the same result every time. Smooth Pops, on by default, evens out a sudden one-frame jump of the flesh over a few frames when you bake.
No. Fleshy works out the deformation in its own engine, written in C and compiled. The Geometry Nodes modifier it adds to your mesh only applies the result.
Not always: it shapes how flesh gives where something presses, and does not hold two surfaces apart. A collider pressed in further than Dent lets the flesh give shows through, and on a mesh with few faces an edge can pass between its points. Raise Dent, or give the mesh more faces where it is pressed, at some cost in speed. Where nothing may ever pass through, such as a close-up of a hand sunk into a cushion, a Mesh Deform cage or a simulation keeps the surfaces apart exactly.
No. Any rig, or none. There is no bone setup and no per-character authoring.
No. Any all-quad mesh with a Subdivision Surface: a creature, a soft toy, a cushion, a prop. Several meshes can be set up together as one.
No. Contact is found automatically. To give parts of the body different settings, a region names a vertex group the character already has, such as a rig's deform group.
Install Fleshy wherever the file renders, and keep the cache file beside the .blend. Without the add-on, the character renders without contact deformation.
About 50 MB for a 250-frame shot of a full body at subdivision level 2. Baking more frames adds to the same file.
Not yet. This version is Windows, 64-bit.