Docs · Compositing

Haze

Atmospheric fog with a physical feel: density builds with depth, and the Cool/Warm Bias shifts how the fog color filters the scene (cool haze sinks blues into shadows; warm haze reads as dust or smog).

Version 0.3.0
Parameters 12
GPU On the GPU (Metal), with a CPU fallback. Nothing to configure.
Hosts After Effects 2020 or later (2025 or later recommended). macOS 11 or later, Apple Silicon and Intel.

Haze is depth-driven atmosphere: fog that builds with distance instead of sitting on the frame as a flat wash. It’s what you reach for when a comp is technically correct and still reads flat — a background that won’t stay behind the title, a matte painting whose far ridge has the same contrast as its near rock, a 3D render that looks like it was assembled in a vacuum, a lit interior that should have visible air in it.

Depth is a routing decision, made in Depth Source. Self Luma reads the layer’s own luminance as distance — nothing to set up, and more accurate than it sounds on exteriors, where brightness and distance already correlate. Depth Layer Luma and Depth Layer Alpha pull the signal off another layer assigned to Depth Layer: a rendered depth pass, a hand-painted gradient, a rotoshape, anything that reads as distance in grays or in alpha. Radial from Point synthesizes the signal instead of reading one — depth is the distance out from Point, which is the fast route to a fog pocket or a haze vignette. Invert Depth swaps which end of the ramp carries the fog, for when the signal reads the other way around from what the shot needs.

However the depth arrives, it becomes one normalized scale, and Near and Far place the fog ramp on it: clear at the near end, full strength at the far end, building across the span between. Density sets what full strength means. The part that makes the result read as air rather than as a white layer blended over the shot is Cool/Warm Bias, which shifts how Fog Color filters the scene rather than how much of it lands. It’s a signed dial. On the cool side blues sink into the shadows and the distance goes hazy and low-contrast the way real aerial perspective does; the factory Cool/Warm Bias = 40 already sits there. On the warm side the identical fog reads as dust or smog. At 0 it neither cools nor warms, and what’s left is a plain fog-color wash.

Haze Only renders the fog by itself, which is how you get it onto its own layer to blur, grade, mask off an actor’s edge, or hold back to taste. Above that sits one macro dial: Master Amount multiplies Density and leaves the ramp alone, because Near and Far are placements, not amounts.

Parameters

Controls

11 params

Depth Source picks where distance comes from, and it’s the first decision — everything else is placement and color. Self Luma reads the layer’s own luminance, so there is nothing to build or assign, and it works on most exteriors because the far distance is already the brightest part of frame. Depth Layer Luma and Depth Layer Alpha read the layer assigned to Depth Layer: the luma choice for rendered depth passes and painted gradients, the alpha choice for rotoshapes and mattes where the shape itself is the information. That layer is a source, not a render — turn its visibility off and it still feeds Haze; and with nothing assigned, both layer modes quietly fall back to Self Luma rather than failing. Radial from Point synthesizes the signal instead of reading one: depth is zero at Point and climbs outward, reaching full depth half the frame’s diagonal away — from a centered point, right at the corners — so the scale of the pocket survives a move to any resolution.

Near and Far place the fog ramp on that depth signal, both as percentages: clear at Near, full density at Far, building across the span. Scrub these two before you touch anything else — the majority of “the fog is on the wrong thing” problems are a misplaced ramp, not a wrong Density. Narrow the span (Near 40–60 against Far 70–80) for a defined fog bank with an edge you can see; widen it toward the defaults of Near = 0 and Far = 100 for a gradual, continuous atmosphere. Invert Depth reverses the ramp: checked, Near becomes the dense end and Far the clear one. It’s the fix when your map marks near instead of far, when the plate is a night exterior where distance is darker than foreground, or when you want a radial ramp that’s thickest at its center — one checkbox instead of rebuilding a map.

Density is the one big amount, and it ships at Density = 50. Density 20–50 is an atmospheric lift you feel more than see, and it’s where most footage work lives; 60–100 is a fog bank that plainly reads; 120–200 is weather. The slider stops at 200, the hard range runs well past it, and above the slider you’re in deliberate whiteout territory rather than atmosphere.

Fog Color defaults to a pale cool blue — RGB 172, 194, 218 — which is the honest daylight-sky answer. Sample the shot’s own sky, key light, or the practical it was lit by whenever the plate gives you one; the default is a guess and a sampled color isn’t. Cool/Warm Bias is signed: positive is the cool direction, negative the warm one, and the factory setting is Cool/Warm Bias = 40, not 0. How far from 0 you go is how hard the shift works — Cool/Warm Bias 30–60 is the working band on the cool side, Cool/Warm Bias -60 to -30 mirrors it on the warm side, and Cool/Warm Bias = 0 neither cools nor warms what’s behind it: the flattest setting available, for when you want a neutral scrim and nothing more. Scrub the dial end to end once on the shot and the two halves are unmistakable.

Haze Only drops the source image and outputs the fog alone. Duplicate the layer underneath as the clean plate and you’ve split the shot into plate and atmosphere — now the fog can carry its own blur, its own grade, a mask that keeps it off a face, or an opacity you ride against the cut. It’s also the fastest way to inspect a ramp: turn it on, see exactly where the density lives, turn it back off.

Name Type Range Default Choices
License button — — —
Depth Source popup — Self Luma Self Luma · Depth Layer Luma · Depth Layer Alpha · Radial from Point
Depth Layer layer — none —
Point point — (50, 50) —
Near slider 0–100 0% —
Far slider 0–100 100% —
Density slider 0–200 (hard 0–400) 50 —
Fog Color color — RGB 172, 194, 218 —
Cool/Warm Bias slider -100–100 40 —
Invert Depth checkbox — off —
Haze Only checkbox — off —

Master

1 params

One macro dial, and it folds exactly one thing: Master Amount multiplies Density, with 100 as neutral. Near and Far are deliberately left out — they’re placements, not amounts, and sliding the ramp while you fade fog in would move the atmosphere through the scene instead of thickening it in place.

That’s what makes this the dial to animate. Build the look on Density, Fog Color, and the ramp until a held frame is right, then keyframe Master Amount from 0 to 100 to roll the fog in over a shot, or push past 100 for a gust. The depth relationship you dialed in stays exactly where it was. As everywhere in the suite, ride the macro or the dial it folds — animating both multiplies twice.

Name Type Range Default Choices
Master Amount slider 0–200 (hard 0–400) 100% —

Examples

Aerial perspective on a landscape plate

Distant ridgelines go blue and lose contrast while the foreground stays clean

  1. Apply Haze to the plate and leave Depth Source on Self Luma. On an exterior the far distance is already the brightest thing in frame, so the plate is its own depth map and there is nothing to assign.
  2. Place the ramp before anything else: Near = 30 holds the foreground rock and grass clear, Far = 90 puts full density on the farthest ridge. Scrub both and watch which band of the image the fog is sitting on; get this right and the rest is color.
  3. Density = 65 — enough air that the far ridge sits behind the shot instead of in it, with its silhouette still intact. If the horizon disappears entirely, you overshot; come down before you start compensating elsewhere.
  4. Cool it. The dial is signed and positive is the cool direction, so push up from the default: Cool/Warm Bias = 55 is the strength this plate wants. The far ridge loses contrast and shifts hue at the same time, which is the actual tell of aerial perspective — a fog that only lightens the distance looks like a scrim, not like miles of air.
  5. Sample the plate’s own sky into Fog Color, from a patch near the horizon rather than straight overhead — the horizon is the color the distance is actually washing toward, and it’s often a good deal warmer and paler than the zenith blue you’d have guessed.

Variations: cross zero to the warm side at about the same strength — Cool/Warm Bias = -45 — and the identical setup reads as dust and low sun instead of clean altitude; or, on a night exterior where the distance is darker than the foreground, check Invert Depth — it reverses the ramp, so the dark distance now carries the fog and the bright foreground goes clear.

Push a background back behind a title

A flat comp gains depth: the background sits in air, the title stays crisp, and the fog is its own gradeable layer

  1. Build the map. A solid with a white-to-black ramp across it, white over whatever should sit farthest back — white is the far end. Park it above the background layer and switch its visibility off, which costs you nothing: Haze checks the layer out for itself.
  2. Apply Haze to the background layer, set Depth Source to Depth Layer Luma, and assign the map to Depth Layer. If your map is a rotoshape or a matte instead — the shape itself carrying the information, in alpha rather than in grays — use Depth Layer Alpha.
  3. If the fog lands on the wrong half of the frame, check Invert Depth rather than going back and re-drawing the map.
  4. Near = 20, Far = 100, Density = 80. Separation work wants more fog than footage work does — the whole point is that the background reads as unambiguously elsewhere, not as slightly softer.
  5. Pull Fog Color toward the comp’s key light so the atmosphere belongs to the same lighting setup as the title above it.
  6. Check Haze Only and the layer outputs the fog alone. Duplicate the untouched background underneath as the plate, and you now have an atmosphere layer you can blur, grade, feather off the title’s edges, or ride at a lower opacity — without re-rendering the fog each time you change your mind.
  7. Bring it in on the cut: keyframe Master Amount from 0 to 100 over the first half second. The ramp stays put while the density comes up, so the fog thickens in place instead of sliding through the shot.

Variations: swap the painted map for a rendered depth pass out of your 3D scene and the same setup becomes true per-pixel atmosphere; or take Density = 140 — the weather band, not the atmosphere band — and let the title punch through it.

Fog pocket around a practical light

A lamp that sits in visible air — haze thickest at the source, thinning into the room

  1. Apply Haze to the plate and set Depth Source to Radial from Point. The depth here is generated rather than read: it’s simply how far each pixel sits from Point.
  2. Drag Point onto the lamp in the comp viewer. It starts centered, and centered is almost never where the light is.
  3. Check Invert Depth. The radial signal is zero at Point and climbs outward, so left unchecked you get the inverse of a pocket — clear center, thickening toward the corners, which is its own useful look as a soft atmospheric vignette with no mask involved. Checked, the density swaps ends of the ramp: thickest at the Point, thinning outward, the way scattering actually reads around a source.
  4. Size the pocket with the ramp, which Invert Depth has now turned around: Near is the dense end and Far is where the fog has run out. Near = 0 anchors full density on the lamp itself and Far = 45 pulls the outer edge in tight: a pocket, not a room-wide wash. Set Far = 70 instead and the same falloff spreads wider, for a bigger, softer bloom of air. Judge it on the stage rather than by the numbers — scrub Far until the pocket’s edge sits where the lamp’s throw dies out.
  5. Density = 90, and run Cool/Warm Bias negative into the warm half — Cool/Warm Bias = -50 is enough. Warm, because the fog you can see around a practical is that practical’s own tungsten light hanging in the air; the positive side of the dial reads here as a separate effect sitting on top of the shot.
  6. Check Haze Only for a moment to look at the pocket by itself and confirm its falloff lands where you want it, then turn it back off.

Variations: keyframe Point onto a moving flashlight or car headlight and the pocket travels with it; or stack a second instance underneath with Depth Source on Self Luma and Density = 25 for the room’s general air beneath the pocket.