Free, open-source VFX simulation
Real fire. Real water. Your shot.
Blackbody simulates fire, smoke, liquids, the sea, lava, cloth, things that fall and break, bullets, explosions, lightning, sand, snow, grass and weather on your GPU. Build an effect from nothing or start from 114 presets, line it up with your footage, track the camera, and render a finished composite or the passes your compositor wants.
The 90-second film. Blackbody simulated and rendered every fire, splash, brick and grain in it, and the screen recordings are the app itself. The backplates are procedural, and the music is synthesised.
New since 1.0
Now it builds anything
Objects that fall, break and swing. Bullets and wood. Explosions and lightning. Sand, snow and mud. Grass that burns. Path-traced light. Your words on fire. An empty stage to build on, and a camera that follows your footage.
Things that fall and break
Rigid bodies in real materials, fracture into bricks, shards and splinters, ropes, cables, springs and hinges.
Explosions and lightning
A charge in kilograms of TNT throws and breaks what is near it. A bolt flashes, lights the set and sets fire to what it hits.
Sand, snow and mud
Seven materials that pile, pour, pack, slump and wobble, as hundreds of thousands of particles on the GPU.
Text and logos
Any words in any font, or an SVG or PNG, as solid letters: burning, solid, or water that falls and splashes.
An empty stage and a gizmo
121 building blocks, a 3D gizmo, and a right-click menu that sets fire, drops, breaks and ties things.
Line up, track, surfaces
The camera from a slab on the ground, its move tracked in metres, and real walls and steps that effects meet.
Bullets and wood
Real cartridges through glass, wood and steel, and fifteen woods that bend, snap, split and burn as wood does.
Path-traced light
The set, smoke, cloth, grass, water and clouds path traced: bounce light, soft shadows, caustics, dispersion, light passes for the comp.
Objects with heat
Objects warm, glow and cool by the air round them, what they touch and the heat of fire, lava and hot metal: steel in a fire glows, a red-hot ball boils the water it drops into.
Into your footage
Made for the plate you already shot
Stock elements never match your camera, your light or your lens. Blackbody simulates the effect inside your shot, so it does.

Line up the ground in four drags
Drag a grid's corners onto anything rectangular lying on the ground in the footage: a paving slab, a rug, a parking bay. Blackbody works out the lens from the vanishing points and the camera's tilt, roll and height from the rectangle, and draws a perspective grid, the horizon and a 1.75 m figure over the footage to check. From then on the effect stands on the real ground at its real size.
- No rectangle in view? Line up from the horizon.
- Sloping ground? Two upright lines keep the world level, and the slope becomes solid ground.
- The lens recorded in the file (photos, phone video) is used by itself.
Track any camera move, in metres
Tracking › Track (Ctrl+T) follows about 60 spots through the footage to a fraction of a pixel, drops the ones that move by themselves, and works out where the camera is and where it looks on every frame: a pan, a dolly, a walk, a car or a drone. The ground gives the move in real metres, and a bundle adjustment keeps errors from piling up along it. The effect stays put on the ground.
- Reports how closely it fits, in pixels
- Or import a solve from your matchmover (.chan), or a whole USD scene with its camera, objects and lights
It sits in the shot, not on top of it
- Meets real surfaces. Line up a wall, a table, a ramp or stairs in the footage: water runs down it, smoke flows round it, fire spreads over it, and it hides what is behind it.
- Lights your scene. The fire lights the ground, the walls and the objects in the footage, shadowed by the smoke.
- Hides behind real objects. It goes behind stand-in colliders, roto mattes or the footage's own depth pass.
- Lights like the real ones. Point, spot and area lights (Lume traces a panel as the panel it is), a real fixture's IES profile, brightness in lumens: they light the smoke and the set.
- Lit by your shot. Environment from the footage wraps the shot round the set, so with Lume CG objects take its colours from each side and reflect them.
- What you build goes in too. CG objects go over the footage in the shot's light, cast their shadows on the real ground, and go behind real things by the depth pass and matte.
- Looks like your camera shot it. Lens blur, distortion, heat haze, highlight roll-off, and noise matched to the footage's own.
Beauty
Emission
Heat
Depth
Alpha
Fire lightBuild anything
An empty stage, and everything to put on it
Blackbody opens on a stage with a camera of your own. What you put in decides what it simulates, and fire, water, cloth, rigid bodies and sand all simulate together.
Put it in, move it, make it happen
Start from the card on the empty stage or from Create's 121 building blocks. A 3D gizmo moves, stretches and turns what you select, with snapping. Then right-click it for what it can do:
- Set it on fire, make it fall, make it breakable, hang it on a rope or a spring, hinge it
- Make it float, sink, hot or freezing, hollow it out, soak a cloth or let it go
- Pour sand from it or change what it is made of, turn a source into fire, water, lava or a force
- Attach it to something, or send it along a path you click out on the ground
Fire and smoke
Fire that burns like fire
Fuel burns into heat, soot and flame. Hot gas rises, swirls and expands, and smoke drifts and is lit by the fire, the sky and your lights. Flame colour and brightness come from blackbody radiation, so thick flame saturates the way real flame does.
- Measured against real fires: flame height, gas speed, and the puffing rate of a fire its size
- Spreading fire, spot fires, flash fires, backdrafts and closed rooms that run out of air
- Sparks, coloured flames, steam, and hoses that put fire out
Fabric
Cloth that hangs, blows, holds, tears and burns
Curtains, flags, towels and any mesh, made from ten real fabrics with their measured weight, stretch and stiffness. Cloth blows in the fire's own air. It catches at its ignition temperature and burns the way real cloth does: a halo of toasting, a glowing line, then char and holes that spread until it falls apart. It holds what lands on it, and tears when it cannot: a crate dropped onto a sheet laced into a frame rests in it, and a steel ball dropped beside it rips a ragged hole that the crate falls through after it.
- Soaks and drips in water. Wet cloth holds at 100 °C and steams in the heat
- Tears where its threads are pulled past their breaking stretch, as each fabric does: the rip runs on as a ragged slit
- Holds what falls on it: crates rest in a sheet, and sand poured onto one heaps in the dip it makes
- Hangs from its top edge, a side or its corners, or is held all round its edges like a trampoline
- Casts shadows on the smoke, the ground and your footage
- Exports as meshes (OBJ or USD) with the burnt holes cut out
Things that fall
Objects that fall, tumble, burn and break
Any object can be a rigid body: it drops, slides, bounces, stacks and knocks things over, in real materials with their handbook weight, friction and bounce. The smoke, the water and the wind push it about. A burning one keeps burning as it tumbles, and anything attached to it goes along. Things break where and as hard as they are hit: walls at the mortar, a pane round the stone's hole out to its frame, pots into curved shards, in a puff of dust, while metal bends and stays bent. And they hang on ropes, springs and hinges.
- Wood, stone, brick, concrete, steel, glass, ice, rubber and more, drawn in CG
- Breaks by how fast it is hit, cracks crowding round the spot: glass and pottery shatter, wood splits, metal bends
- Hundreds of pieces when something breaks, pushing the smoke and the water
- Wood that burns as wood does, spot by spot: it catches, climbs fast, creeps slowly, chars and cracks, and falls in, time-lapsed by Burn speed-up
- Objects with heat: steel in a fire heats through and glows, a red-hot ball boils the water it drops into
- Ropes, steel cables, chains, springs, hinges and ball joints that snap or tear out; a rope goes over a post
- A stage without footage: a floor to the horizon, lit by the fire, or path traced with Lume
- Into your footage with their shadows on the real ground
Explosions
A blast wave that throws and breaks
A source's Blast is an explosive charge in kilograms of TNT. When it goes off, its blast wave throws the things that fall, blows breakable things apart piece by piece and scatters sand and snow, by the impulse a blast that size gives at that distance, while the fireball and the smoke column rise. The viewer marks each charge, its fireball's size and when it goes off.
Explosions →Lightning
A bolt that flashes, lights the set and sets fire
Lightning is a light: a bolt from where it starts to where it strikes, jagged at every scale, with branches that light only in its first flash. It flashes a few times down the same channel, each stroke fading in tens of milliseconds, lights the set and the smoke like a row of lamps, and starts a fire where it strikes.
Lightning →Ramps, wheels and motors
Things that tilt, roll and drive
Any object can be tilted and rolled as well as turned: a plank becomes a ramp, a wall leans, a wheel stands on its rim. Things slide down a slope steeper than their friction angle and stay put on a gentler one. A hinge can have a motor, held at a speed with the strength you give it: wheels drive a cart along, a turntable spins up until what is on it flies off, a windmill's sails stir the smoke.
Motors →People and cars
Crash-test figures and cars that drive
People and cars are objects built of parts on joints. A person is a crash-test figure, 1.8 m and about 80 kg, its limbs turning only as a body's can. It stands braced until something hits it faster than 1.5 m/s, then goes limp and falls as a body does, over a car's bonnet or off a ledge. A car is 4.4 m and about 1300 kg on four sprung tyres: drive it, keyframe its speed and steering, and it knocks walls down, carries a person on its bonnet and leaves its tracks flattened in the grass.
People and cars →

Lume lighting
A path-traced frame
Turn on Lume and nearly all of the frame is path traced: the set drawn in CG, the smoke and steam, the cloth and the grass, clouds, and water in a liquid scene without footage, cloth or grass, refracting what is under it and throwing its caustics on the floor (the flames are drawn as before, in its light, and the sea's waves, lava, ice and any other water by the liquid's own renderer, over the set Lume lit). Light bounces from surface to surface, so a fire inside a shed lights its walls and the light they throw back fills it, and smoke is lit by the flames, the sun and the sky scattered through it. Every fire light, glowing patch of hot metal and lamp casts its own shadow, as soft as the light is big, through the objects and the smoke. An HDRI's sun, or a physical sky's, casts sharp shadows, and glass, ice and jelly bend and tint what is seen through them and focus the light into caustics. Measured against a research path tracer on ten test scenes, its mean brightness is within 0.1% on every one, and after the same time it has less error than that tracer's best sampler for each scene on nine of them (on the simplest, a furnace test that renders in a few milliseconds, 1.2 times as much). The viewer sharpens over a few seconds once you stop.
Lume also splits the set's light into passes for the comp (key, sky, fire, lamps), bends each colour by its own index through glass and water (dispersion), focuses the fire's own flickering light through glass, lights the set by the footage itself, and traces the light a cloud scatters hundreds of times: within 3% of a path-traced reference, where the classic estimate is 40% too dark.
Lume lighting →

Bullets and wood
Real cartridges, real holes
A shot is a gun firing real cartridges, from an air-rifle pellet to a .50 BMG, each bullet flying its real path and doing what a real one does: it goes through glass, wood and car doors and on, slower; flattens on steel in a splash of lead and sparks; chips a crater out of concrete in a puff of dust; and skips off water and steel when it comes in flat. And wood is fifteen woods, each with its handbook stiffness along the grain and strength along and across it.
- Eleven cartridges with their real bullets and speeds; rounds, rate of fire, scatter, tracers and muzzle flash
- Glass holed with a web of cracks or shattered; steel swings on its hinge, splashed with lead; a can flies off its post
- What it leaves stays: holes and craters carved into what it hit, splinters round the split in a board's back, frosted glass round a hole, a grey star of lead on steel
- A cavity in water that swells and collapses; sand and snow thrown up out of a crater; holes in cloth
- Woods drawn solid through, so a break or a bullet's hole shows the same wood inside: rings, knots, pores, heartwood
- Wood bends before it breaks, snaps in a jagged greenstick break, splits along its grain under an axe, and burns as wood does
Sand, snow and mud
Stuff that piles, packs, slumps and wobbles
Sand, snow, mud, jelly and clay are hundreds of thousands of particles that each remember how they have been squeezed and stretched. Sand pours and heaps at its angle of repose, snow packs into snowballs that stick where they are thrown, mud flows until it is thin enough to stop, jelly springs back and clay stays squashed. Things that fall land on it or sink into it, objects plough through it, and cloth catches it or drapes over it. Water gets into sand and carries it off: a pour digs a gully down a heap, and a sand castle the water reaches soaks through and slumps. Snow melts where flames touch it; wax, chocolate and metal melt in the fire and set again, and molten iron glows and lights the floor round it.
- Seven materials, from dry sand to jelly, with their real behaviour
- Bodies of it, or streams poured from a nozzle
- Two-way with falling objects: a crate rests on sand where a steel ball sinks in
- Two-way with water: sand gets damp, soaks through and is carried off
- Heat by touch: chocolate melts in a hot steel pan in moments and on a wooden board more slowly; snow melts on anything warmer than freezing
- Heat from the fire: wax, chocolate and metal melt and set again as they cool; hot metal glows and lights the floor
- Sticky: packing snow thrown at a wall stays on it, mud clings to a crate, dry sand runs off
- Fills a closed mesh of your own (OBJ, STL, USD): a chocolate bunny, a sand sculpture, jelly from a mould
- Fire: dry leaves, sawdust and coal catch, feed the flames and burn down to ash
- Wind: dry sand, snow and leaves blow off a heap's top and drift, and dust goes up into the smoke
- Cloth: a sheet catches sand poured onto it and sags, or drapes over a heap
- Drawn in CG: glinting grains, snow that lets the light in, clear jelly
Grass and plants
Every blade bends, and burns
Lawns, long grass, wheat and reeds are patches of blades, each one simulated. They bend in the wind in rolling waves, lean into a fire's draught, part round what moves through them and spring back. In a dry field the fire runs on by itself, faster downwind, each blade catching, burning down to stubble and feeding the flames as it goes.
- Four kinds, from a thick lawn to reeds taller than a person
- On the ground or up a hillside, but never through a crate
- Fire spreads through it on its own fuel; fresh grass is hard to light
- Slows the wind blowing through it, as a real field does
- Lit like the smoke, glowing where the sun is behind it
Text and logos
Your words, on fire
Type words in any font on your computer and they become solid 3D letters that work like any other object. Burning text has fire all over the letters. Text is solid: set it on fire, drop it, smash it, float it. Water letters hang in the air, then fall and splash. Logos and pictures work the same way, traced from an SVG, PNG or JPG.
- Change the words, the font or the size later, and the fire changes with them
- Chocolate letters in any font: they melt in a hot pan or by a fire
- Invert and threshold for pictures with no transparency
Liquids
Water that refracts your footage
FLIP particles on the GPU pour, splash, sheet and break into drops, and throw off spray, foam and bubbles. The surface is ray traced as a real dielectric, so your plate bends through it, reflects in it and goes murky with depth.
- Floating objects that bob, tip and drift as real rigid bodies
- Viscosity from olive oil to honey, dyes, two liquids that do not mix, rain and surface tension
- Caustics, wet ground, an underwater camera, drops on the lens and rainbows
The sea
An ocean to the horizon
A real ocean spectrum, millions of waves summed by FFT, runs on seamlessly to the horizon. The box in the middle simulates its part of the sea, so things float in it and it breaks against rocks and piers.
- Whitecaps and foam streaks that match the wind speed
- Beaches, reefs and surf that spills, plunges and throws a barrel
- Tsunamis, tidal bores, tides and rivers
Lava, fire and water together
When the elements meet
Molten lava glows by its own heat as a blackbody, crusts over as it cools and lights everything around it. Fire, water and lava can share one box. Water soaks fuel and boils off in a plume of steam, and lava boils the sea while its skin chills black. A log in the flow's path rides high on it and is carried off at its front, while a steel block is swallowed and shoved along. Hot objects glow and cool too: a red-hot steel ball dropped in water flashes it to steam, held off by a film of its own vapour, and fades from orange to black.
The lava guide →Ice, boiling and steam
Liquids with a temperature
Every particle carries its heat, with water's real heat capacities and latent heats. So water freezes into ice that floats a tenth out of the water. It boils in nucleate streams, skates on its own vapour past the Leidenfrost point, and evaporates into steam that clouds in cold air.
The ice and steam guide →Weather and clouds
From a snowflake to a storm
Snow, sleet, freezing rain, graupel and hail fall as the column of air above decides. Each piece melts, refreezes and settles where it lands. The sky can be simulated too, with clouds building from the sun-warmed ground into storms that rain and hail.
The weather guide →The app
Built for working on a shot
The simulation runs live while you change it, and finished frames are cached as you go. Every setting has a tooltip and can be scrubbed by dragging its name.
Start from 114 presets
Pick a chip (fire, liquids, fabric, the sea, smoke, blasts, ice, weather, falling and breaking, sand, snow and mud, bullets, wood) and click an effect: it simulates live in your shot. Each one is an ordinary scene you can change and save as your own.
Browse the presets →Search everything (Ctrl+K)
Type what you want and press Enter: an action on the selected thing (make it fall, set it on fire), a building block, a menu command, any setting of the scene, a preset, or a thing in the scene.
Working in the app →Check it like a compositor
Switch the viewer between the composite, the effect alone, its alpha, emission, heat, depth and temperature. Settings can be keyframed and edited in the animation editor, and a render writes every pass you ticked in one go.
Outputs →Two workspaces
Build is your own stage and camera for making the effect. Shot is the shot's camera, with your footage, roto and layers. Tab switches between them.
Several things at once
Box-select, group, duplicate, and repeat in a row, a ring or scattered, with what is attached coming along.
Your own blocks
Save what you built under Yours in Create, as one file with its meshes, to add to any scene or share.
Several effects in one shot
A campfire in front and a waterfall behind, each its own simulation with its own box and scale, composited back to front.
Shapes in front of the effect
Draw shapes around what is in front of the effect and key them over the shot. The effect goes behind them, in the viewer and in renders.
When things happen
Each source, pour and let-go as a bar on the timeline: drag it in time, or drag its ends.
Outputs
Whatever your pipeline needs
Multi-layer OpenEXR
Nuke · After Effects · Fusion · Resolve · Flame
Scene-linear, premultiplied RGBA with emission, glow, heat, depth, fire light, holdout, scorch, soot and wet layers, plus the liquid's mattes.
Deep OpenEXR
Nuke · Houdini · Katana
Up to 8 samples per pixel with front and back depth, so fire and smoke merge correctly with other deep renders.
ProRes 4444 and PNG elements
Premiere · Final Cut · Resolve · any editor
An element with alpha that drops onto your footage, premultiplied or straight.
Finished composite
Delivery and review
ProRes 422 HQ, H.264, H.265 or DNxHR over the footage, with the footage's audio carried along.
OpenVDB volumes
Blender · Houdini · Maya · Cinema 4D · Unreal
Density, temperature, flame, fuel and velocity grids, and the liquid as a level set.
Liquid and fabric meshes
USD · OBJ
The liquid surface with per-point velocities for motion blur, spray, foam and bubbles as points, and cloth with its burnt holes.
Under the hood
Physics, not tricks
Everything runs in GPU compute shaders through wgpu, so it runs on Vulkan, Direct3D 12 and Metal. More than 300 tests check the physics against textbook values and measurements of real fires, waves, falls, sand and weather.
Get Blackbody
Up and running in a few minutes
You need Python 3.12 or 3.13 and a GPU from the last eight years. The first run sets up a private environment, which is about a 400 MB download.
Windows
Clone or download the repository, then double-click Blackbody.bat.
git clone https://github.com/gjnail/blackbody.git
cd blackbody
Blackbody.bat
macOS and Linux
The same code runs from source. It has not been tested on these systems yet, so reports are welcome.
git clone https://github.com/gjnail/blackbody.git
cd blackbody
./blackbody.sh