
ANR Film Grain
Adds film-like grain that follows the image's brightness, to match CG, paint fixes and clean comps to grainy footage.
- Comp
- Comp & Depth pack
- 2 inputs
- 10 controls
Overview
Film Grain adds a grain texture whose strength follows the image's brightness, with separate levels for Shadows, Midtones and Highlights. Grain Size sets the size of the grain in pixels, and RGB Correlation goes from grey, monochrome grain to fully independent red, green and blue grain. Use it where you would reach for Nuke's Grain node: on CG renders, paint and cleanup patches, or a degrained comp.
The pattern is fixed by Seed and the frame number, so a frame renders the same grain every time, in any order, and a crop or region render does not change it. With Animate on, every frame gets a new pattern; off, the pattern is frozen.
Grain is weighted by the image's alpha, like the rest of a premultiplied image: soft edges get less and areas with no alpha get none. That makes it easy to grain a single CG element just before it is merged over a grainy plate.
Inputs
- Sourcerequired
The image to add grain to: a CG element, a patch or the whole comp.
- Maskoptional
Limits where grain is added, by its alpha.
Output. The Source with grain added; its alpha is unchanged.
Quick start
- Add ANR Film Grain at the very end of the comp, after lens effects and camera shake, or on a CG element just before its Merge over the plate.
- View it at 100%, next to an area of the plate with a similar brightness.
- Set Grain Size to the size of the plate's grain.
- Raise Grain Strength until the midtones match. It is in scene-linear values, so set it once the exposure of the image is final.
- Match the darks and brights with Shadows and Highlights.
- Set RGB Correlation: high for grain that looks grey, lower if the plate's grain shows colour.
- Play a few frames and compare how the grain moves with the plate's.
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.
No control matches.
All controls
ANR Film Grain10 controls
Treatment
- AmountSlider
amount Effect strength. Zero returns the original image (Light Wrap Composite still performs an Over).
Grain
- Grain StrengthSlider
grainStrength Noise amplitude in linear RGB. Tune after matching image exposure.
- Grain SizeSlider
grainSize Grain size in full-resolution pixels. Proxy renders attenuate subpixel grain.
- RGB CorrelationSlider
grainCorrelation One gives monochrome grain; zero gives independent red, green and blue grain.
- SeedSlider
seed Chooses the grain pattern. The same Seed always gives exactly the same grain; use a different Seed on each element so their grain does not line up.
- AnimateCheckbox
animate Create a new deterministic grain pattern on each whole frame. Disable to freeze the pattern.
Tonal Response
- ShadowsSlider
grainShadows Relative grain strength in dark image regions.
- MidtonesSlider
grainMidtones Relative grain strength in middle tones.
Middle tones are centred on scene-linear mid grey (
0.18). Shadows weighs most at black and Highlights in values well above mid grey.- HighlightsSlider
grainHighlights Relative grain strength in bright image regions.
Output
- MixSlider
mix Blend the entire treatment with the original, multiplied by the optional Mask alpha.
Tips
- Give each element its own Seed, so grain on different layers does not line up.
- To grain a whole comp, make sure its alpha is solid across the frame (for example, set alpha to white with a Shuffle before this node); otherwise grain only appears where there is alpha.
- Nothing that blurs, scales or distorts the image should come after the grain: a transform, a lens distortion or a zoom softens or stretches it.
- Use the Mask input to keep new grain off an area that already has the plate's grain.
Good to know
- It does not measure the plate's grain: match it by eye, at 100%.
- In proxy mode, grain finer than a proxy pixel is softened, so judge it at full resolution.
- Runs on the CPU: no GPU and no AI model needed.
Something unclear or missing? Write to [email protected].