Installation

  1. Download the Shadow Grain plugin
  2. Unzip the downloaded zip file
  3. Drag the Shadow Grain.zip file onto the Cavalry interface
  4. Find Shadow Grain in the Add Layers window

Tips & Techniques

Viewport Zoom

Important! Set your viewport zoom to 100% for an accurate preview of the filter's result. Viewport scale significantly affects how the filter appears in the viewport, but not how it renders to the final output — the effect operates on the available canvas pixel space, which changes with zoom level. Zooming beyond 100% also forces the effect to process more pixels, so performance will drop at higher zoom levels.

Performance Optimization

  • Start with Low or Medium quality during design
  • Use smaller Shadow Distance values when possible
  • Increase quality to High or Ultra for final renders
  • Keep Angle Bias at 1.0 for fastest directional shadows

Avoiding Artifacts

  • Increase Soften value to smooth out banding in gradients
  • Increase Quality for smoother falloffs
  • Adjust Scale to avoid moiré patterns

Controls Reference

General Settings

Grow Bounds

Type: Int2 (X, Y)
Default: 64, 64
Min: 0, 0

Expands the layer bounding box to prevent outer shadows from clipping at the edges. When using Outer Shadow mode, the bounds are automatically expanded to match the Shadow Distance via the setup script. Increase this manually if shadows still appear clipped at extreme distances or with high roughness.

Outer Shadow

Type: Toggle (On/Off)
Default: Off (Inner Shadow)

Switches between inner and outer shadow modes. When off, shadows appear inside the shape. When on, shadows appear outside the shape boundary.

Shadow Type

Type: Enum
Options: Hard Shadow | Grain | Halftone | Hatch Line | Dot Goop
Default: Grain

Selects the visual style of the shadow:

  • Hard Shadow (0): Solid, uniform shadow with no texture
  • Grain (1): Organic noise-based texture for natural, film-like shadows
  • Halftone (2): Classic halftone dot pattern for retro or comic book styles
  • Hatch Line (3): Parallel line pattern for hand-drawn or engraved looks
  • Dot Goop (4): Metaball-like overlapping dots for organic, blob-like shadows
Quality

Type: Enum
Options: Low | Medium | High | Ultra
Default: Medium

Controls the quality of shadow calculation. Higher quality produces smoother shadows with better accuracy but requires more processing power. Lower quality is faster but may show stepping artifacts in gradients.

⚠️ Performance Impact: This setting has a noticeable effect on performance when applied to complex scenes. Ultra quality uses up to 8x more samples than Low quality. Use Low or Medium during design work, and switch to High or Ultra only for final renders.

Hard Shadow Blend

Type: Float
Default: 0
Range: 0 to 100

Blends a solid hard shadow underneath the textured grain/pattern shadow. At 0%, only the grain texture is visible. At 100%, a fully solid shadow appears, with grain texture layered on top. Dimmed when Shadow Type is Hard Shadow.

Shadow Properties

Scale

Type: Float
Default: 100
Min: 1

Controls the scale of the shadow texture pattern. Smaller values create finer detail but may cause moiré patterns. Larger values create chunkier, more visible texture. Dimmed when Shadow Type is Hard Shadow.

Warning: Very low values (below 10) can create undesired moiré patterning effects.

Shadow Distance

Type: Float
Default: 100
Min: 0

Controls how far the shadow extends from the shape edge. Larger values create longer shadows.

💡 Note: When using Outer Shadow mode, the layer bounds automatically expand to match the Shadow Distance. Inner shadows don't require additional bounds.

Shadow Color

Type: Color (RGBA)
Default: Black (0, 0, 0, 255)

The color and opacity of the shadow. Supports full alpha channel for blending transparent shadows.

Shadow Falloff

Type: Float
Default: 0
Range: -100 to 100

Controls how quickly the shadow fades out over distance:

  • Negative values: Shadow starts fading immediately from the edge
  • 0: Linear falloff across the full distance
  • Positive values: Shadow maintains full strength, then fades rapidly near the maximum distance

Dimmed when Shadow Type is Hard Shadow.

Contrast

Type: Float
Default: 30
Range: 0 to 100

Adjusts the contrast of the grain or pattern texture. Lower values create softer, more subtle texture. Higher values create sharper, more defined texture with stronger blacks and whites. Dimmed when Shadow Type is Hard Shadow.

Soften

Type: Float
Default: 0
Range: 0 to 2000

Adds anti-aliasing to the grain pattern edges. At 0, edges are sharp and aliased. Increasing this value smooths the texture pattern, reducing stepping and creating softer, more refined shadows. Useful for reducing banding in gradients at higher quality settings. Dimmed when Shadow Type is Hard Shadow.

Performance: Values above 100 may have a minor performance cost. However, the quality improvement usually justifies this for final renders.

Direction & Position

Shadow Angle

Type: Angle
Default: 225°

Determines the direction of the shadow, as if positioning a light source. 0° is right, 90° is up, 180° is left, 270° is down.

Angle Bias

Type: Float
Default: 1.0
Range: 0 to 1

Controls how strongly the shadow follows the specified Shadow Angle:

  • 0: Shadow emanates equally in all directions (radial shadow)
  • 1: Shadow strictly follows the Shadow Angle (directional shadow)
  • 0.5: Blend between radial and directional

⚠️ Performance Impact: Lower values (below 0.8) require sampling in multiple directions, which significantly increases render time. Keep this at 1.0 for fastest performance when you need directional shadows.

Line Angle

Type: Angle
Default: 225°

Only visible when Shadow Type is set to Hatch Line.

Controls the angle of the line pattern for Hatch Line shadows. Independent of Shadow Angle, allowing you to create cross-hatching effects or align lines with your design.

Offset Position

Type: Float2 (X, Y)
Default: 0, 0

Shifts the pattern field (grain, dots, halftone, or hatches) in X and Y. When animating submeshes, the shadow texture stays static in screenspace, so when a shape moves the pattern does not follow — which can look unnatural. Animate this control (or connect it to the submesh's position) to keep the shadow texture locked to a moving layer. Dimmed when Shadow Type is Hard Shadow.

Roughness

Enable Roughness

Type: Toggle (On/Off)
Default: On

Master toggle for all roughness distortion. When off, Roughness, Roughness Frequency, Roughen Bounds, Animate Roughness, and Time Step are all disabled and the shadow texture remains perfectly uniform. Dimmed when Shadow Type is Hard Shadow.

Roughness

Type: Float
Default: 45
Min: 0

Adds organic distortion and irregularity to the shadow texture. At 0, patterns are perfectly uniform. Higher values introduce natural variation and hand-crafted feel. Dimmed when Enable Roughness is off or Shadow Type is Hard Shadow.

Roughness Frequency

Type: Float
Default: 1
Range: 0.1 to 20

Controls the scale of the roughness noise. Low values (toward 0.1) produce very large, broad distortion; higher values produce finer, higher-frequency noise. Use this alongside Roughness to dial in both the amplitude and feature size of the distortion independently. Dimmed when Enable Roughness is off or Shadow Type is Hard Shadow.

Roughen Bounds

Type: Toggle (On/Off)
Default: Off

Only available in Outer Shadow mode with Enable Roughness on.

Applies roughness to the outer shadow boundary so the edge of the shadow (where it cuts off based on Shadow Angle) becomes wavy instead of a hard, straight line. The boundary wobble follows the same Roughness, Roughness Frequency, and animation settings as the pattern distortion.

Animate Roughness

Type: Toggle (On/Off)
Default: On

When enabled, the roughness distortion animates based on the Time value, creating living, organic shadow texture. When disabled, the roughness pattern remains static. Requires Enable Roughness to be on.

Time

Type: Float
Default: 0

Drives the animation of roughness when Animate Roughness is enabled. Connect this to your scene's frame or time to animate shadows.

Time Step

Type: Integer
Default: 1
Range: 1 to 12

Controls the quantization of the animation timestep. Higher values cause the roughness animation to update less frequently, creating a more stepped, hand-drawn look. A value of 1 updates every frame. Dimmed when either Enable Roughness or Animate Roughness is off.

D
directmessage

Shadow Grain

Apply grainy and other stylised shadows.

€20

single-user

EUR, includes taxes

Buy Now

Plugins can be used in the Starter and Pro version of Cavalry.

Scenery is not affiliated with Cavalry or Scene Group Ltd.