A Qleris add-on for Blender

Volute

Procedural volumetric VFX, built from curves and Geometry Nodes.

Three effects rendered in one Blender scene: a dusty brown tornado, a purple sci-fi portal arch, and a fiery orange column.
Three finished effects in one scene — each with its own shape, palette and look, each animating independently.

No fluid sim. No bake. No cache files. Every layer is evaluated by Blender itself, so the viewport stays interactive and a render cannot stall waiting on a simulation.

Setup

Installing

Volute needs Blender 5.2 LTS or newer and works in both EEVEE and Cycles.

  1. Open Edit ▸ Preferences ▸ Add-ons and choose Install from Disk…
  2. Pick the downloaded .zip.
  3. Enable Volute in the list.

The panel appears in the 3D viewport sidebar — press N and pick the Volute tab.

Setup

Your first effect

  1. Press N in the viewport and open the Volute tab.
  2. Choose a shape and press Add Effect. It is built at the 3D cursor.
  3. Switch the viewport to Material Preview — press Z.
If you see nothing

Every layer in Volute is a volume, and Blender's Solid shading draws no volumes at all. A perfectly built effect is simply not there until you switch to Material Preview or Rendered.

This catches everyone once. The on-screen overlay says so when it happens.

Interface

The panel, at three depths

The Volute sidebar in Blender, showing the Simple / Normal / Expert switch, a preset dropdown, Freeze Effect, and the Base Shape section with height and four profile rings.

A switch at the top of the panel decides how much is on screen at once. Nothing is hidden permanently — it only changes what you have to look past.

LevelShows
SimpleShape, look, motion, and which layers are on. Enough to turn a preset into your own effect.
NormalPlus sizes, speeds, and the defining slider of each layer.
ExpertEverything — segment counts, detail, noise, colours, simulation, performance.

Start on Simple. Most effects never need more.

Interface

The viewport overlay

The overlay in the bottom-left corner names the shape, the look and the palette, then lists the layers — lit for on, grey for off.

Close-up of the Volute viewport overlay reading 'Funnel — Fine realistic smoke, Dusty' above a row of layer names, with Grains, Strands, Debris and Ground lit in blue and Cloudlets, Sheets and Glow greyed out.
Blue means the layer is on. Grey means it is off.

It does two things the sidebar cannot. It stays visible during playback, when Blender stops drawing gizmos altogether — so while an effect is actually moving, this is the only thing still telling you what you are looking at.

And it warns you when a layer is switched on but contributing nothing. A thin volume is only as visible as its density multiplied by its thickness, and it is easy to leave a layer running at a value three orders of magnitude below anything you could see. The overlay says so, and gives you the number.

It can be switched off next to the gizmo toggle.

Shaping

Eight base shapes

The shape sets the path and the radius profile. Ring and Portal are closed loops; the rest are open columns.

FunnelWedge ColumnJet HourglassDust Devil RingPortal
Eight rendered effects in a four-by-two grid: funnel, wedge, column and jet on the top row; hourglass, dust devil, ring and portal on the bottom row.
Top: Funnel, Wedge, Column, Jet. Bottom: Hourglass, Dust Devil, Ring, Portal. Same palette, same settings — only the shape changed.

Shaping

Shaping it in the viewport

An effect is described by profile rings along its height. Each ring carries a position, a radius and a twist, and the body interpolates between them. Add a ring and you add a place where the silhouette can change.

A tornado in the Blender viewport with three dashed blue profile ring gizmos drawn around it at different heights.
The rings are drawn in the viewport whenever the gizmo toggle is on.
DragChanges
Plain dragRadius
Ctrl + dragHeight along the path
Alt + dragTwist
Shift + dragFine adjustment

Add Ring inserts a new one into the largest gap.

During playback

Blender does not draw gizmos while an animation is running. This is Blender's behaviour, not Volute's — it applies to every add-on. Stop playback and the rings come back.

Look

The layers

An effect is built from eight layers. Each can be switched off from its own panel header, and each costs what it costs — turning off what you cannot see is the cheapest optimisation available.

LayerWhat it is
Main volumeThe body itself — core, dust and outer wisps, as one volume material.
Dust GrainsFine specks caught in the flow.
StrandsThin drawn-out threads spiralling up the body.
CloudletsRounded puffs of smoke.
DebrisTumbling shards. Can be replaced with your own objects from a collection.
Ground DustThe dome kicked up where the effect touches down.
Spiral SheetsWide twisting veils wrapped around the body.
GlowAn emissive band, optionally with a real light that travels with it.

Look

Effect type, palette and preset

These are three separate things on purpose, so any one can be changed without disturbing the other two.

Effect Type

What the layers are. Smoke absorbs light; Fire and Sci-Fi emit it. It drives emission and roughness — and no longer any colour.

Colour Palette

Colours, and nothing else. Density, counts and speeds stay exactly where you left them, so a palette can be tried on any look.

The same funnel rendered seven times in a row under different colour palettes: natural, dark storm, dusty, fire, ice, toxic and sci-fi.
One funnel, seven palettes: Natural, Dark Storm, Dusty, Fire, Ice, Toxic, Sci-Fi. Nothing but colour changed between these renders.

Every layer owns its own colours. Edit them where the layer itself is set up, or all together under All Colours in the Look panel. Change any single colour by hand and the palette name switches to Custom — the name only ever describes what was last written, never a second place the colour lives.

Preset

A complete look: shape, motion, densities, counts and colours. Four ship with the add-on, and you can save your own under Custom Presets — those are stored outside the .blend and are available in every project.

Workflow

Animating

The path carries a row of controllers. Move them in Object Mode and the effect follows; keyframe them and it travels. Nothing fights the keyframes — the deformation is a Hook modifier, which Blender evaluates itself.

Looping animation of a dust-coloured tornado travelling across the ground from left to right, leaning backwards as it moves, with debris streaming along the lean and a dust cloud following at its base.
Four seconds, rendered straight out of EEVEE. The path controllers are keyframed to travel and the upper ones lag behind, so the funnel leans into the direction of movement. No simulation, no bake — the swirl and the flow come from Scene Time.
ControlDoes
Snap to 3D CursorPuts the effect's foot on the cursor. Place the cursor with Shift+right-click on a surface, or Shift+S onto a selection.
Refresh ControlsResamples the path to the number of controllers you asked for.
Reset Path to StraightUndoes path edits without touching anything else.

Workflow

Several effects in one scene

Volute edits one effect at a time. When one is finished, press Freeze Effect.

The frozen copy moves into a collection of its own with its own node graph, its own materials and its own path. It keeps animating and no longer responds to the sliders. The workbench is then free for the next one — which is how the three effects at the top of this page ended up in a single scene.

A frozen effect runs no Python at all, so a scene holds as many as your hardware will render.

Workflow

Using your own mesh

Adopt Selected Mesh makes any mesh the body of an effect. The geometry stays yours: it receives the volume material, and the path, dust, debris and every other layer are built around it at its own size and position.

Height and Width then scale the object — the mesh data itself is never modified. Scaling it yourself with S works too; the effect follows either way.

A six-sided column mesh filled with toxic green volumetric smoke, with green debris and a bright ground dust dome at its base.
A plain six-sided column, adopted as the body.
What to expect

The volume follows your mesh's size and position, not the fine detail of its silhouette — the material has its own internal structure of core, dust and wisps. Large, simple forms read best; a highly detailed model will come out as a soft mass roughly its size.

Workflow

Driving physics

The Force Field section places Blender's own force fields along the path, so cloth, hair, particle systems and rigid bodies in the scene react to the effect. Simulated Particles adds an emitter matched to the shape and driven by the same fields.

Simulations are not real-time

Anything driven by a force field is a simulation: it has to be simulated or baked before it renders correctly. The effect itself always stays real-time — the physics it drives does not.

Reference

Performance

SettingEffect on speed
QualityPreview / Realtime High / Render. Sets segment counts, detail and layer counts together — the first thing to reach for.
Surface ShellExpensive and usually barely visible. Measured at 15 s per frame against 0.4 s with it off.
Scatter shadowsCosts a great many shadow pages in EEVEE and shows almost nothing. Leave off except for close-ups.
Sheet render methodDithered is considerably faster than Blended and resolves over the samples.
Live UpdatesSwitch off to freeze the layers on the current frame while you work on something else.

Reference

Troubleshooting

SymptomCause
Nothing visibleSolid shading draws no volumes. Press Z and choose Material Preview.
A layer is on but invisibleIts density multiplied by its size is too low. The overlay gives you the number.
Gizmos vanish in playbackBlender does not draw gizmos while an animation runs. The overlay stays.
Add Effect is missingAn effect is already being edited. Freeze it first to free the slot.
Viewport feels stickyLower Quality, or switch Live Updates off while you work.