ANR Tools

ANR Muzzle Flash

Muzzle flashes and gun smoke from pistols to tank cannons, and bullet hits with dust and sparks, simulated and rendered on the GPU.

Overview

Muzzle Flash simulates the burst of hot gas and smoke from a gun barrel in 3D. Each round stamps a torn cone of burning gas, optional side jets for muzzle brakes and flash hiders, and a smoke puff; the fluid then carries, burns and clears it. Presets cover a Pistol, Rifle, Assault Rifle (Flash Hider), Machine Gun, Shotgun, Sniper (Muzzle Brake), Suppressed, Tank Cannon and Artillery (Muzzle Brake), plus bullet hits: Wall Hit (Dust), Wall Hit (Spark And Dust) and Ground Hit (Dirt).

You place the muzzle in the picture with a Viewer handle (move, depth, rotate, aim and size), or link Position to a tracker. Rounds fire automatically at a rate, on a list of frames, or while an animated Trigger is on, and Shot Variation makes every round different. Placing or resizing the flash does not re-simulate it.

Emit chooses flash and smoke, the flash alone or smoke alone, and Output gives everything together, or the flash, the smoke or the sparks on their own. The Sparks tab throws glowing sparks and unlit grit, for bullet hits or burning powder, without re-simulating.

The simulation runs forward from the first round. Build a cache on the Cache tab to scrub freely, to reopen the script with the result and to render on a farm. Bullet Time freezes the flash, smoke and sparks at a frame while their position, rotation, size and look keep following the timeline.

Inputs

SourceMuzzle FlashOutput
  1. Sourceoptional

    Optional. The plate. It is used only by Composite Over Source, which puts the result over it; otherwise the node outputs the element alone and needs no input.

Output. The flash and smoke element, premultiplied, at the project format (larger with Overscan (%)). Output can give the flash alone (light only, no alpha, for a Plus merge), the smoke alone or the sparks alone; Composite Over Source puts the result over the plate.

Quick start

  1. Add ANR Muzzle Flash. With the plate selected, it connects to Source.
  2. With the node's panel open, drag the centre of the Viewer handle onto the tip of the barrel and point the yellow arrow along the barrel; drag the corner square to set Size. For a moving gun, link Position to a tracker.
  3. On the Shots tab, choose a Preset for the weapon, or a wall or ground hit.
  4. Set First Shot Frame, Rounds and Frames Between Shots, or use Frame List or Trigger Knob in Fire Mode.
  5. Click Fire Engine and play forward from before the first round.
  6. Merge the result over the plate, or tick Composite Over Source. Add a glow after the node: the flash is brighter than 1 by design.
  7. When the look is right, choose a Cache Folder (or click Generate Autofill) and click Build / Rebuild Cache. Read Cache turns on and the engine stops.

The panel

The node's panel as Nuke shows it, with the values of a new node. Click any control to see what it does; tabs and sections work as in Nuke.

ANR_Muzzle_Flash1

Bullet Time, the engine, what each round emits, the preset, and when rounds fire.

Bullet Time
Freeze At1
Fire Engine
StatusEngine stopped; click Fire Engine
EmitFlash And Smoke
PresetCustom
Fire ModeAutomatic Fire
First Shot Frame1
Rounds1
Frames Between Shots3
Timing Variation0
Shot Frames1 4 7
Trigger0
Shot Variation1
Flash Chance1
Hit Scatter0
Seed1

All controls

Shots17 controls

Bullet Time, the engine, what each round emits, the preset, and when rounds fire.

Bullet TimeCheckboxbulletTime

Freezes the flash, smoke and sparks at the Freeze at frame. Position, rotation, size and the look keep following the timeline. Holding a frame costs no simulation time. Ticking it freezes at the current frame. Animate it off to let the simulation go on. Works live and on Read Cache.

Default: off

Freeze AtSliderbulletFrame

The simulation frame Bullet Time holds. Before it the simulation plays normally; from it on it stays still. Animatable.

Default: 1

Fire EngineButtonfireEngine

Start the GPU engine. Click again to stop it and free GPU memory. New nodes start stopped.

StatusStatusbackendInfo

What the engine is doing: stopped, loading, how many rounds have fired, the frame, and how many frames this picture had to simulate, or the cache frame it plays.

EmitMenuemit

What each round produces. Flash Only renders pure light with no smoke at all; Smoke Only is a gun that smokes without a visible flash.

Default: Flash And SmokeOptions: Flash And Smoke Flash Only Smoke Only

PresetMenuweapon

Sets the flash, smoke, smoke color and rate controls for a kind of weapon, or for a bullet hitting a wall or the ground. For a hit, put the handle on the surface and point the yellow arrow away from it. Size, position and rotation are left alone. Every control stays editable afterwards.

Picking a preset also clears the animation of the values it sets. Custom changes nothing.

Default: CustomOptions: Custom Pistol Rifle Assault Rifle (Flash Hider) Machine Gun Shotgun Sniper (Muzzle Brake) Suppressed Tank Cannon Artillery (Muzzle Brake) Wall Hit (Dust) Wall Hit (Spark And Dust) Ground Hit (Dirt)

Fire ModeMenufireMode

Automatic Fire: a first frame, a number of rounds and a rate. Frame List: type the frames. Trigger Knob: animate Trigger, and the weapon fires while it is on.

Default: Automatic FireOptions: Automatic Fire Frame List Trigger Knob

First Shot FrameSliderfirstShot

Frame of the first round. The flash is visible on this frame.

Default: 1

RoundsSlidershotCount

Number of rounds in Automatic Fire.

Default: 1

Frames Between ShotsSlidershotInterval

Rate of fire as frames between rounds; fractions are allowed. At 24 fps: 600 rounds a minute = 2.4, 900 = 1.6, a pistol double tap = 5, a tank = one round.

Default: 3

Timing VariationSlidertimingJitter

Random early / late firing of each round, as a fraction of the interval. 0 is a perfectly regular rate.

Default: 0

Shot FramesTextshotFrames

Used when Fire Mode is Frame List. Frames separated by spaces or commas; fractions are allowed. 12-40x2.4 fires every 2.4 frames from 12 to 40.

Default: 1 4 7

TriggerSlidertrigger

Used when Fire Mode is Trigger Knob. Animate it: a round fires when it rises above 0.5, and while it stays there the weapon keeps firing at Frames Between Shots.

Default: 0

Shot VariationSlidershotVariation

How different each round is from the last. It changes the brightness, length, cone angle, number of streaks, the outline, the barrel line, extra forked tongues, and which side jets light and how long they are. 0 repeats one flash; 1 is a real burst where no two frames match; 2 is wild.

Default: 1

Flash ChanceSliderflashChance

Fraction of rounds that show a flash. A camera shutter misses many real flashes; 0.7 looks like film. Rounds without a flash still smoke.

Default: 1

Hit ScatterSliderhitScatter

For bullet hits: each round lands at a different spot around Position, across the surface the handle points away from. In multiples of Size; 0 keeps every round on one spot.

Default: 0

SeedSliderseed

A different seed gives different flashes and different smoke.

Default: 1

Muzzle10 controls

Position, depth, rotation and size of the muzzle, how smoke follows a moving gun, the solid surface for hits, and the Viewer handle.

PositionPositionposition

Tip of the barrel in the picture. Drag the center of the Viewer handle, or link it to a tracker.

Default: 716.8 778

DepthSliderdepth

Distance of the muzzle toward the camera: 0 is the picture plane, positive is closer (larger), negative is farther.

Default: 0

Rotate XSliderrotateX

Rolls the barrel about its own line, in degrees. It turns the side jets (brake ports, flash hider prongs) around the barrel. Drag the red ring in the Viewer.

Default: 0

Rotate YSliderrotateY

Swings the barrel out of the picture, in degrees: negative toward the camera, positive away from it. Drag the green ring in the Viewer.

Default: 0

Rotate ZSliderrotateZ

Turns the barrel in the picture, in degrees: 0 points right, 90 up, 180 left. Drag the blue ring in the Viewer.

Default: 0

SizeSlidersize

Length of a standard flash as a fraction of the longest picture side. Drag the corner square of the Viewer handle. Changing it does not re-simulate.

Default: 0.14

SmokeMenusmokeSpace

Stays In Place: smoke is left behind in the picture when the muzzle moves, as real smoke hangs in the air. Follows The Muzzle: everything is carried with the muzzle, for a shot where the whole frame is tracked to the gun.

Default: Stays In PlaceOptions: Stays In Place Follows The Muzzle

Follow Muzzle MotionSliderinheritMotion

How much of a moving muzzle's speed is given to the gas. Used when Smoke Stays In Place.

Default: 0.5

Solid Surface BehindCheckboxsurface

For bullet hits: the handle sits on a wall or the ground and the yellow arrow points away from it. Dust and particles cannot pass back through that surface. Off for a muzzle in open air.

Default: off

Show Viewer HandleCheckboxshowGuide

Handle at the muzzle in the Viewer. Center square: move. Red / green arrows: move sideways / up and down. Blue arrow: depth. Red, green and blue rings: Rotate X, Y and Z. Yellow arrow: the barrel; drag its tip to aim freely. Corner square: size. The faint cone is the real flash footprint. Each part lights up under the pointer; Escape cancels a drag. Never rendered.

Default: on

Flash20 controls

Shape, side jets, heat, powder and burning of the flash.

LengthSliderflashLength

Length of the forward flash, relative to Size.

Default: 1

Cone AngleSliderflashSpread

Full opening angle of the forward flash in degrees. A rifle is narrow, a shotgun or short barrel is wide.

Default: 30

Forward JetSliderflashForward

Amount of gas leaving straight ahead. 0 leaves only the core and the side jets, as with some muzzle brakes.

Default: 1

Core SizeSlidercoreSize

Bright ball of gas at the muzzle, relative to Size.

Default: 0.1

StreaksSliderstreaks

Number of fingers the flash is torn into around the barrel.

Default: 5

IrregularitySliderirregularity

How torn and uneven the flash is. 0 is a clean cone.

Default: 0.6

Side JetsSlidersideJets

Jets leaving sideways: 0 for a plain barrel, 2 for a muzzle brake, 3 to 5 for the star of a flash hider.

Default: 0

Side Jet AngleSlidersideAngle

Angle between the side jets and the barrel, in degrees. 90 is a muzzle brake venting sideways, 50 is a flash hider star, above 90 vents backward.

Default: 90

Side Jet LengthSlidersideLength

Length of the side jets, relative to the forward flash.

Default: 0.6

Side Jet Cone AngleSlidersideSpread

Opening angle of each side jet, in degrees.

Default: 24

Side Jet RollSlidersideRoll

Rotates the ports around the barrel, in degrees, on top of Rotate X. 0 puts two ports level with the ground; 90 puts them up and down.

Default: 0

Roll VariationSliderrollRandom

Random rotation of the side jets on each round.

Default: 0

Flash DurationSliderflashDuration

Frames of gas emission per round. Small arms are one frame or less; a cannon keeps venting for two or three.

Default: 1

Blast SpeedSliderblastSpeed

Speed of the gas at the muzzle, in flash lengths per frame.

Default: 0.3

HeatSliderheat

Temperature of the gas. Hotter is whiter and brighter, and rises faster.

Default: 1.7

Unburnt PowderSliderfuel

Fuel thrown out with the gas. It keeps burning in front of the muzzle and makes the rolling fireball of big guns. Keep it low for small arms.

Default: 0.15

Flash FadeSlidercooling

How fast the flash cools. High values kill it in one frame; low values leave a lingering fireball.

Default: 1.8

Burn RateSliderburnRate

How fast unburnt powder burns.

Default: 1

Flame LifetimeSliderflameLifetime

Decay time of burning gas, in frames.

Default: 0.6

Burn ExpansionSliderexpansion

Outward push of burning gas. Raise it for a blooming fireball.

Default: 0.3

Smoke12 controls

The smoke puff, barrel smoke, rise and dissipation.

Smoke AmountSlidersmokeAmount

Smoke blown out with each round.

Default: 0.45

Puff LengthSlidersmokeLength

How far the puff is driven out before the air takes over, relative to Size. It reaches this over Puff Duration, fast at first.

Default: 0.5

Puff Cone AngleSlidersmokeSpread

Opening angle of the smoke puff, in degrees.

Default: 42

Puff DurationSlidersmokeDuration

Frames the puff is driven for after each round. Short is a snap that stalls close by; longer carries it further and thicker.

Default: 3

Puff SpeedSlidersmokeSpeed

Speed of the smoke at the muzzle, in flash lengths per frame.

Default: 0.12

Side Jet SmokeSlidersideSmoke

Smoke leaving through the brake ports, relative to the forward puff.

Default: 0.7

Barrel SmokeSliderwispAmount

Thin smoke that keeps curling out of the barrel after the round. 0 turns it off.

Default: 0.35

Barrel Smoke DurationSliderwispDuration

Frames the barrel keeps smoking after each round.

Default: 18

Barrel Smoke SpeedSliderwispSpeed

Speed of the barrel smoke, in flash lengths per frame.

Default: 0.015

Smoke RiseSlidersmokeRise

Lift of the smoke itself. Positive drifts up, negative sinks.

Default: 0.12

Heat LiftSliderbuoyancy

Lift from hot gas.

Default: 1

Smoke DissipationSliderdissipation

Fraction of the smoke lost each frame. 0.03 halves it in about a second; 0.01 hangs for several seconds; 0 never clears.

Default: 0.03

Sparks13 controls

Glowing sparks and unlit grit thrown by each round, with no re-simulation.

Sparks Per RoundSliderdebrisAmount

Sparks thrown by each round: glowing sparks and lit grit (Glowing sets the mix). 0 turns them off. They are not part of the fluid: changing anything on this tab does not re-simulate.

Default: 0

Spark SpeedSliderdebrisSpeed

Speed of the fastest sparks as they leave, in flash lengths per frame. Most are slower.

Default: 1.2

Spark Cone AngleSliderdebrisSpread

Full opening angle of the spray around the direction the handle points, in degrees. 180 sprays across the whole surface.

Default: 110

Spark SizeSliderdebrisSize

Size of the largest sparks, in percent of Size. Most are smaller.

Default: 1

Spark LifetimeSliderdebrisLife

Frames the longest lived sparks last before fading.

Default: 16

Spark GravitySliderdebrisGravity

Pull downward. 1 is about right when Size is the size of a real hit; 0 floats; negative rises.

Default: 1

Spark Air DragSliderdebrisDrag

How fast the air stops the sparks. Small ones are always stopped sooner than big ones.

Default: 0.1

Spark Motion BlurSliderdebrisBlur

Shutter in frames: fast sparks become streaks. 0 draws dots.

Default: 0.5

Unlit Spark OpacitySliderdebrisOpacity

Opacity of the sparks that do not glow (lit grit).

Default: 1

Unlit Spark ColorColourdebrisColor

Color of the sparks that do not glow: the wall or ground they came from, a little darker than its dust.

Default: 0.3000000119 0.2700000107 0.2300000042

GlowingSlidersparkAmount

Fraction of the sparks that glow (a hit on metal or stone, or burning powder from a muzzle); the rest are unlit grit lit by the scene. Glowing sparks add light and have no alpha.

Default: 0

Glow BrightnessSlidersparkBrightness

Brightness of the glowing sparks. They cool and dim as they fly.

Default: 12

Glow ColorColoursparkColor

Color of a glowing spark as it cools. Fresh sparks are whiter.

Default: 1 0.5 0.1199999973

Motion13 controls

Turbulence, edge breakup, air drag, wind, time scale and substeps.

TurbulenceSliderturbulence

Eddies that roll and tear the gas.

Default: 2.5

Eddy SizeSliderturbulenceSize

Size of the eddies as a percentage of the flash length.

Default: 15

Edge BreakupSliderdisturbance

Fine motion at the edges of the smoke.

Default: 6

Edge SizeSliderdisturbanceSize

Size of the edge breakup as a percentage of the flash length.

Default: 4.5

Flame BreakupSlidershredding

Fine tearing limited to the burning gas.

Default: 1

Air DragSliderdrag

How fast the gas is stopped by the air. Muzzle gas leaves very fast and stops within a short distance.

Default: 6

Wind SpeedSliderwindSpeed

Steady air speed carrying the smoke away, in percent of the simulation box per frame. 0 is still air.

Default: 0

Wind Direction XSliderwindX

Positive is right.

Default: 1

Wind Direction YSliderwindY

Positive is up.

Default: 0

Wind Direction ZSliderwindZ

Positive is toward the camera.

Default: 0

Wind GustsSliderwindGust

Variation of the wind speed. 0 is steady.

Default: 0

Time ScaleSlidertimeScale

Simulation time per frame. 1 is real time; 0.25 is four times slow motion. Shot frames stay where they are.

Default: 1

SubstepsSlidersubsteps

Simulation steps per frame. Fast gas needs more; a quickly moving muzzle raises it automatically.

Default: 6

Look15 controls

The output pass, compositing over Source, flash colour and brightness, smoke colour and density.

OutputMenuoutput

Beauty is everything together. Flash is the light alone (with the glowing sparks), no alpha, for a Plus merge. Smoke is the smoke alone, lit by the flash. Sparks is the sparks alone. Ignored while AOVs is on.

Default: BeautyOptions: Beauty Flash Smoke Sparks

Composite Over SourceCheckboxoverSource

Puts the result over the picture connected to Source. Off outputs the element alone, premultiplied.

Default: off

Flash BrightnessSliderfireIntensity

Brightness of the burning gas. Values above 1 in the picture are expected; add a Glow after the node.

Default: 8

Flash ColorMenufireColorMode

Blackbody uses the cool and hot temperatures. Custom Gradient uses the three colors below.

Default: BlackbodyOptions: Blackbody Custom Gradient

Cool Color (K)SliderkelvinMin

Blackbody color of the coolest visible gas.

Default: 1300

Hot Color (K)SliderkelvinMax

Blackbody color of the hottest gas.

Default: 6200

Temperature RangeSlidertemperatureRange

Simulation temperature shown as the hottest color. Lower makes more of the flash white-hot. The gas never gets hotter than 1.

Default: 1.15

Flash SaturationSliderfireSaturation

0 is white, 1 keeps the chosen colors.

Default: 1

Color BiasSliderfireColorBias

Above 1 favors the cool color, below 1 the hot color.

Default: 1.5

Custom CoolColourfireCool

Coolest gas in Custom Gradient.

Default: 1 0.05000000075 0.00400000019

Custom MidColourfireMid

Middle of the Custom Gradient.

Default: 1 0.349999994 0.02999999933

Custom HotColourfireHot

Hottest gas in Custom Gradient.

Default: 1 0.9499999881 0.75

Smoke ColorColoursmokeColor

Color of the smoke. Gun smoke is a light blue-grey; a tank kicks up brown dust.

Default: 0.4199999869 0.4300000072 0.4499999881

Smoke DensitySlidersmokeDensity

Thickness of the smoke in the picture. Does not re-simulate.

Default: 0.1

AbsorptionSlideropacity

Light absorbed along paths through the smoke.

Default: 5

Lighting17 controls

How the flash, the ambient light and the key light the smoke, and render detail.

Flash Lights SmokeSliderfireLight

Light from the flash carried through the smoke around it.

Default: 2.5

Light SpreadSliderfireLightRadius

How far the flash light spreads through the smoke.

Default: 0.12

Ambient LightSliderambient

Even light on the smoke from everywhere.

Default: 0.3

Key LightSliderkeyLight

Directional light on the smoke, with self shadowing.

Default: 1.2

Key Direction XSliderlightX

Direction toward the light.

Default: -0.6

Key Direction YSliderlightY

Direction toward the light.

Default: 0.8

Key Direction ZSliderlightZ

Direction toward the light.

Default: 0.7

Ambient OcclusionSliderambientOcclusion

Darkening inside thick smoke.

Default: 1

Light PenetrationSliderscattering

How deep light bleeds into the smoke.

Default: 0.7

Forward ScatterSlideranisotropy

Positive brightens smoke lit from behind.

Default: 0.15

Shadow SamplesSlidershadowSteps

Samples through the smoke toward the key light.

Default: 32

Render DetailMenudetailMode

Adds fine procedural detail while rendering, with finer ray sampling. Does not re-simulate.

Default: 2x SamplingOptions: Off 2x Sampling 4x Sampling

Detail StrengthSliderdetailAmount

Fine procedural detail added while rendering. Does not re-simulate.

Default: 2

Detail SizeSliderdetailSize

Size of the render detail in voxels.

Default: 2.5

Extra SmoothingSliderfilterWidth

Extra volume smoothing in voxels.

Default: 0

Ray StepSliderrayStep

Distance between ray samples in voxels. Lower is finer and slower.

Default: 0.75

Volume FilterMenuvolumeFilter

Smooth Cubic softens voxel facets; Linear keeps more voxel detail.

Default: Smooth CubicOptions: Linear Smooth Cubic

Engine7 controls

Simulation detail, render quality and resolution, overscan, start frame and GPU scheduling.

Simulation DetailSliderresolution

Voxels across the simulation box, 24 to 512. The standard flash covers about a third of it. Higher is sharper and slower; the engine coarsens automatically when smoke spreads far.

Default: 224

Render QualityMenurenderQuality

Preview renders a small picture with simple lighting for fast feedback. Render is full quality. Neither re-simulates.

Default: RenderOptions: Preview Render

Render ResolutionMenurenderResolution

Render at full, half or quarter size and scale up. Does not re-simulate.

Default: FullOptions: Full Half Quarter

Overscan (%)Slideroverscan

Renders this much extra picture outside the frame on every side, as a percentage of the frame, and passes it down as a larger bounding box. Use it when the element is moved after this node (Transform, CornerPin, match-move, camera shake, lens distortion): smoke that left the frame is still there when it is brought back in. 0 renders the frame only. The simulation itself is never cut at the frame edge; this only widens what is rendered, so it costs render time, not simulation time.

Default: 0

Start FrameSliderstartFrame

Nothing fires before this frame. The simulation itself starts one frame before the first round.

Default: 1

GPU SchedulingMenugpuScheduling

Responsive leaves GPU time for the desktop. Maximum Speed removes the pauses.

Default: ResponsiveOptions: Responsive Maximum Speed

Reset SimulationButtonresetSim

Clears the simulation and frees GPU memory. It starts again on the next render.

Cache7 controls

Cache folder, Generate Autofill, building the cache and playing it back.

Generate AutofillButtonanrCacheAutoFill

Create a new node-type/footage_letter_4digits folder on every click, then stop. Previous caches are kept. Enter a folder to choose a custom base.

Fills Cache Folder with a new folder named after the node type and the footage, inside the folder you typed there, or else next to the saved script (or next to the footage, if you chose that under ANR > Cache Folders > Location). Each click makes a new folder and keeps the old ones; it does not build anything.

Cache FolderFilecacheFolder

Required for Build / Rebuild Cache: nothing is written anywhere until it is set. Each build writes a new folder inside it (cache_ followed by the date and an id), one .anrvol file per frame; older builds are never deleted. Use a fast local drive.

Default: empty

Cache To FrameSlidercacheLast

Last frame the build simulates and saves. 0 (or any frame not after Start Frame) uses the end of the timeline, and that frame is written here when you build. The cache starts on the first round's frame.

Default: 0

After Last FrameMenucacheAfter

What plays after the last cached frame: that frame held still (its sparks too), or nothing.

Default: Hold Last FrameOptions: Hold Last Frame Empty

Build / Rebuild CacheButtonbuildCache

Simulates from the frame before the first round to Cache To Frame on the GPU, with a progress bar, and saves every frame into a new folder inside Cache Folder. When it finishes, Read Cache turns on and the engine stops (its GPU memory is freed). Cancel, or a failure, deletes only the new folder: the cache being read stays.

Read CacheCheckboxcacheOnly

Plays the saved cache: no simulation, no Fire Engine, and it is saved with the script, so a reopened script just plays. Live on a cache: Position, Depth, Size and Rotate (which way is down inside the simulation is baked in 22.5 degree steps at build time, so a large turn may need a rebuild), the Look, Lighting and Sparks tabs, Output, AOVs, Overscan and render settings. The Shots, Flash, Smoke and Motion tabs, Emit, Smoke (Stays In Place / Follows), Solid Surface Behind, Follow Muzzle Motion, Simulation Detail, Start Frame, and an animated Position with Stays In Place need Build / Rebuild Cache: the status line says so after such an edit. Off: back to the live engine.

Default: off

Cache StatusStatuscacheStatus

The cached range, its size and build date, what plays on the current frame, and whether settings changed since the build.

Tips

  • For a bullet hit, put the handle on the surface and point the yellow arrow away from it. The hit presets turn on Solid Surface Behind, so dust cannot pass back through the surface; Hit Scatter spreads a burst of hits across it.
  • Flash Chance below 1 drops the flash on some rounds, as a camera shutter does; 0.7 looks like film. Those rounds still smoke.
  • Frames Between Shots sets the rate of fire: at 24 fps, 600 rounds a minute is 2.4 and 900 is 1.6. Fractions are allowed.
  • Smoke on Stays In Place leaves smoke hanging in the air when the gun moves; Follows The Muzzle carries everything with it, for a plate tracked to the gun.
  • Set Render Quality to Preview, or Render Resolution to Half, for fast feedback: neither re-simulates.
  • Raise Overscan (%) when the element is moved after the node (camera shake, a match-move, lens distortion), so smoke that left the frame comes back.
  • Smoke Dissipation sets how long smoke hangs: 0.03 halves it in about a second, 0.01 keeps it for several.
  • For a big gun's rolling fireball, raise Unburnt Powder, lower Flash Fade and set Flash Duration to 2 or 3.
  • To light the gun and the actor with the flash, render Output > Flash and use it as the Light footage of ANR Interactive Light.
  • Time Scale on the Motion tab gives slow motion (0.25 is four times slower) while the shot frames stay where they are.

Good to know

  • Runs on the GPU. Two Muzzle Flash engines can run at the same time, and all nodes playing a cache share one of them: stop Fire Engine on another node, or cache it, to free an engine. One cache builds at a time.
  • Cache Folder has no default: nothing is written until you choose one, and it must be a full path. Each build makes a new folder inside it; older builds are never deleted.
  • A live simulation runs forward from the frame before the first round. Going back in time, or changing anything that already happened, simulates again from the first round. Placing and sizing never re-simulate; an animated Position with Stays In Place does when its keys change, and so can a large turn.
  • On Read Cache, Position, Depth, Size and the rotations, the Look, Lighting and Sparks tabs, Output, Overscan (%) and the render settings stay live. Edits on the Shots, Flash, Smoke and Motion tabs need Build / Rebuild Cache, and the status line says so.
  • With the engine stopped and Read Cache off, the node renders nothing, or only the plate with Composite Over Source.
  • There is no Camera input: the muzzle is placed in the picture with Position and Depth.
  • Bullet Time works live and on a cache. When it turns off, the simulation shows the current frame again: the frozen frames are skipped, not added.
  • An engine nobody is viewing frees its GPU memory by itself after about 10 minutes, or after a minute when the GPU is nearly full. Fire Engine stays on: viewed again, the node simulates again from the first round, while a cache plays at once.

Something unclear or missing? Write to [email protected].