
Sparks from Alpha 3D
3D sparks, embers or dust thrown from the alpha of a matte or from a point, simulated and rendered on the GPU, ready to plus over the plate.
- Simulations
- Simulations pack
- 1 input
- 62 controls
Overview
Sparks from Alpha 3D emits particles in 3D and renders them as glowing streaks or soft points. Connect a Roto, a key or any image with an alpha to Source and the sparks are born where the alpha is: more where it is solid, fewer at soft edges. With nothing connected, they come from a small 3D point or sphere at the origin.
The particles fly in real 3D: a launch speed and a cone of directions, gravity, air drag, wind, smooth turbulence and an optional floor they bounce on. Every force can be animated. Three starting looks are built in: Sparks (the default), Embers that drift up slowly, and Dust, soft grey points.
The alpha is laid out as a flat plane in the 3D scene, 10 world units wide. The built-in camera on the Camera tab starts framed on that plane, so the sparks start on your alpha as you see it; moving the camera shows the plane and the sparks in 3D. Camera and Look changes reuse the particle motion and only render again.
There is no disk cache to build: every frame is worked out from the particles alive at that time, so you can scrub in any order and the same Seed always gives the same sparks. Bullet Time freezes the sparks at a frame while the camera and the look keep following the timeline.
Inputs
- Sourceoptional
Optional. A matte, Roto or image whose alpha is the emitter: sparks are born where the alpha is, more where it is solid. With Emit from on Automatic the node uses it as soon as it is connected; with nothing connected it emits from a 3D point.
Output. Linear HDR RGBA, premultiplied: glowing particles over black. Composite it with a Plus merge; the alpha covers the particle cores, and the glow adds light outside them.
Quick start
- Add Sparks from Alpha 3D. Connect a Roto or a keyed element to Source to emit from its alpha, or leave it empty to emit from a point at the origin.
- Click Start / stop engine on the Setup tab: a new node starts stopped and renders nothing until you do.
- Set Start frame and play forward. Initial burst gives particles on the Start frame; Birth rate keeps them coming (set it to 0 for a single burst).
- For another look, choose Embers or Dust in Starting preset and click Apply preset.
- On the Emitter tab, aim the spray with Direction X/Y/Z, Cone angle and Launch speed. On Motion, shape the flight with gravity, Air drag, wind and Turbulence, and tick Floor collision to make the particles bounce.
- On the Look tab, set Particle size, Birth color, End color, Brightness and Streak length.
- Merge the result over the plate with a Plus merge, and add a glow after it for a wider bloom.
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.
Bullet Time, the engine, the starting preset, quality, start frame and burst, seed and particle budget.
Where particles are born (alpha or point), how many, how long they live, and their launch speed and direction.
Gravity, air drag, wind, turbulence and the optional floor.
Shape, colours, size, brightness, streak length and glow.
The built-in 3D camera the particles are rendered through.
No control matches.
All controls
Setup14 controls
Bullet Time, the engine, the starting preset, quality, start frame and burst, seed and particle budget.
- Bullet TimeCheckbox
bulletTime Freezes the sparks at the Freeze at frame. The camera 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 sparks go on.
- Freeze atSlider
bulletFrame The frame Bullet Time holds. Before it the sparks play normally; from it on they stay still. Animatable.
- Start / stop engineButton
particleEngine Start native CUDA particles. Stop releases GPU memory. Node creation does not initialize CUDA.
- StatusStatus
status What the engine is doing: stopped, or the number of live particles, the GPU in use, and whether the last frame reused the motion or how long it took to simulate.
- Starting presetMenu
preset Choose a starting look, then click Apply preset. Sparks is already the default. Applying resets motion/look controls, not source placement or camera.
- Apply presetButton
applyPreset Applies the look chosen in Starting preset. It resets the Motion and Look controls, the birth rate, lifetime, launch speed and cone, and turns Floor collision off. Source placement, direction, Start frame, burst, seed and camera stay as they are.
- QualityMenu
quality Preview renders up to 640 pixels without local glow. Particle count and motion remain identical.
- Start frameSlider
start First emission frame.
- Initial burstSlider
burst Additional particles born exactly on Start frame. Set Birth rate to zero for a single burst.
- SeedSlider
seed Deterministic particle seed. Scrubbing order does not change particle identities.
- Motion substepsSlider
substeps Physics steps per frame. Preview never lowers this. Increase for fast collisions or strong turbulence.
- Particle limitSlider
limit Hard live-particle budget. Exceeding it shows an error instead of silently dropping particles.
- Source samplingSlider
maskResolution Alpha sampling along the longest frame dimension. Input pixels are averaged; tiny features can lose peak opacity at low sampling.
- Clear memory cacheButton
clearCache Frees the node's memory: the stored alpha frames and the GPU engine. If the engine is still on, the next render starts it again.
Emitter15 controls
Where particles are born (alpha or point), how many, how long they live, and their launch speed and direction.
- Emit fromMenu
emitter Automatic uses alpha when connected, otherwise a 3D point. Alpha is a world XY plane 10 units wide, not a camera-attached card.
- Birth rateSlider
rate Particles per second. With source alpha, rate is multiplied by peak alpha; positions are weighted by local alpha.
- Lifetime (seconds)Slider
life Maximum lifetime. Expired particles are excluded from both simulation and rendering. Maximum 10 seconds.
- Lifetime variationSlider
lifeVariation Random shortening of lifetime, from zero to this fraction.
- Emitter XSlider
positionX World units. Alpha source spans 10 units across the frame at Z=0; these controls offset that plane.
- Emitter YSlider
positionY Position of the point emitter; alpha mode uses this as an offset from its image plane.
- Emitter ZSlider
positionZ World depth. Camera starts at Z=10 looking toward negative Z.
- Point radiusSlider
radius Radius of the spherical point emitter in world units.
- Alpha depthSlider
depth Thickness of the source alpha extrusion in world units.
- Launch speedSlider
speed World units per second.
- Speed variationSlider
speedVariation Random reduction in launch speed.
- Direction XSlider
directionX Launch cone axis. The vector is normalized.
- Direction YSlider
directionY Launch cone axis.
- Direction ZSlider
directionZ Launch cone axis.
- Cone angleSlider
spread Half angle of the launch cone in degrees. 180 emits in all directions.
Motion13 controls
Gravity, air drag, wind, turbulence and the optional floor.
- Floor collisionCheckbox
floor Makes the particles bounce on a flat, infinite floor at Floor height, with Bounce and Floor friction.
- Gravity XSlider
gravityX Acceleration in world units per second squared.
- Gravity YSlider
gravityY Acceleration in world units per second squared.
- Gravity ZSlider
gravityZ Acceleration in world units per second squared.
- Air dragSlider
drag Drag per second. Wind attracts particles toward its velocity through this drag.
- Wind XSlider
windX Air velocity in world units per second. Requires nonzero Air drag.
- Wind YSlider
windY Air velocity in world units per second.
- Wind ZSlider
windZ Air velocity in world units per second.
- TurbulenceSlider
turbulence Smooth 3D acceleration. Does not alter particle count.
- Eddy sizeSlider
noiseSize World-space wavelength of turbulence.
- Floor heightSlider
floorY Infinite horizontal collision plane. Enable Floor collision to use it.
- BounceSlider
bounce Fraction of normal velocity retained at floor collisions.
- Floor frictionSlider
friction Fraction of tangential velocity removed at a bounce.
Look10 controls
Shape, colours, size, brightness, streak length and glow.
- Particle shapeMenu
style Streaks follow projected 3D velocity. Points use circular soft sprites. Emissive rendering; no scene shadowing.
- Birth colorColour
hot Colour of a particle when it is born. It moves towards End color as the particle ages.
- End colorColour
cool Colour a particle cools to by the end of its life. Fade over life sets how fast it gets there.
- Particle sizeSlider
size Diameter in pixels at 1920 width and the default camera distance. Size scales with depth and output resolution.
- Size variationSlider
sizeVariation Random reduction in diameter.
- BrightnessSlider
brightness Linear HDR emission. Composite sparks with a Plus merge; glow has additive RGB outside core alpha.
- Streak lengthSlider
shutter Shutter interval in frames. 0 gives points; streak direction comes from 3D velocity. Rendering only.
- GlowSlider
glow Local glow around each particle. Disabled in Preview; use downstream Glow for larger bloom.
- Glow radiusSlider
glowRadius Multiplier of the particle radius. Rendering only.
- Fade over lifeSlider
fade Higher values cool and dim particles more quickly.
Camera10 controls
The built-in 3D camera the particles are rendered through.
- ProjectionMenu
projection Built-in 3D camera. Camera edits re-render the same particle motion.
- Camera XSlider
cameraX Camera position in world units.
- Camera YSlider
cameraY Camera position in world units.
- Camera ZSlider
cameraZ Camera position in world units. Looks along local negative Z.
- Rotate XSlider
cameraRX Camera Euler rotation, degrees, XYZ order.
- Rotate YSlider
cameraRY Camera Euler rotation, degrees, XYZ order.
- Rotate ZSlider
cameraRZ Camera Euler rotation, degrees, XYZ order.
- Focal lengthSlider
focal Perspective focal length in mm. No tracked Camera input in this first version.
- Horizontal apertureSlider
aperture Camera film width in mm.
- Orthographic widthSlider
orthoWidth World units across the image in orthographic projection.
Tips
- Set Quality to Preview while you tune: it renders up to 640 pixels without the local glow, with exactly the same particles and motion.
- The Status line shows the live particle count and whether the motion was reused: Camera and Look changes never re-simulate.
- Raise Motion substeps for fast floor bounces or strong turbulence.
- Fade over life cools and dims particles faster, and Lifetime variation lets some die early, which breaks up an even shower.
- A different Seed gives a different shower with the same settings.
- Emitter X/Y/Z move the alpha plane (or the point) in the scene; Alpha depth gives the alpha emitter some thickness.
- Tick Bullet Time on the frame you want to hold: Freeze at takes that frame, the sparks stop with their streaks, and you can animate the camera around them.
- Thin lines and small dots in the alpha can lose strength at a low Source sampling: raise it for fine shapes.
Good to know
- Needs an NVIDIA GPU, Turing generation (RTX 20 series) or newer.
- The camera is built in: there is no Camera input, so the node cannot follow a tracked shot camera.
- The alpha plane sits in the scene, not on the camera: when you move the camera, the emitter stays where it is.
- Particle limit is a hard budget: more live particles than that shows an error instead of dropping some. Raise it, or lower Birth rate or Lifetime (seconds).
- The particles only emit light: they cast no shadows and nothing in the plate hides them.
- When Bullet Time turns off, the sparks show the current frame again: the frozen frames are skipped, not added.
- Stopping the engine frees its GPU memory. An engine nobody is viewing also frees it by itself after about 10 minutes, or after a minute when the GPU is nearly full; it starts again when you view the node.
Something unclear or missing? Write to [email protected].