Inner Shadow
Casts a colored, blurred shadow INSIDE the shape near its edges — the "inside" complement to Drop Shadow.
Category: Effects Menu path: Effects > Inner Shadow
Ports
| Port | Type | Direction | Description |
|---|---|---|---|
in | imageRgba16f | input | Input image |
out | imageRgba16f | output | Image with the inner shadow composited inside it |
Parameters
| Param | Type | Default | Description |
|---|---|---|---|
color | color | black (0,0,0,1) | Shadow color in linear space. |
offset | vec2 | (5, 5) | Directional shadow displacement in pixels (X, Y). Positive X = shadow on the right inner edge, positive Y = bottom inner edge. Keyframeable. |
blur | scalar | 10 | Gaussian blur radius for the shadow softness. 0 = hard inner edge. Keyframeable. |
opacity | scalar | 0.75 | Shadow opacity. 0 = invisible, 1 = fully opaque shadow. Keyframeable. |
spread | scalar | 0 | Controls shadow alpha hardening. 0 = soft natural falloff, 1 = hard edge before blur. Keyframeable. |
output | enum | Composite | Composite darkens the input in place. Shadow Only outputs just the colored shadow (transparent elsewhere). Matte outputs a grayscale intensity mask. |
Expose Channels
When enabled (E button on node header), adds input ports that override params via edge connections:
| Port | Type | Overrides |
|---|---|---|
opacity_in | scalar | opacity |
How It Works
The inner shadow is a three-pass operation that mirrors Drop Shadow but works on the inverse alpha:
- Extract pass: The shape's alpha is sampled at an offset position, then inverted (
1 - alpha). Near an edge, the offset sample lands outside the shape (alpha 0 → inverse 1 → strong shadow on the offset side); deep in the interior the inverse is 0 (no shadow). The result is hardened byspread, scaled byopacity, and tinted with the shadow color. - Blur pass: The inner source is gaussian-blurred for soft falloff.
- Composite pass: The blurred source is clipped to the inside of the shape (
blurred.a × input.a) so the effect only appears within the existing silhouette, then mixed toward the shadow color. The output alpha equals the input alpha, so the silhouette is never enlarged.
Because the effect is clipped to the input alpha it never extends beyond existing content bounds — unlike Drop Shadow, it does not expand the layer's bounds.
Usage Examples
Basic: Engraved / inset look
- Add an Inner Shadow node after your text or shape
- Set offset to (3, 3), blur to 6, opacity to 0.6
- The content looks recessed/cut into the surface
Creative: Vignette inside a shape
- Set offset to (0, 0) so the shadow comes evenly from all edges
- Increase blur to 40 and opacity to 0.5
- Darkens the rim of the shape for a soft inner vignette
Advanced: Drive a grain/texture mask
- Set
outputtoMatte - Pipe the grayscale mask into a Grain or Colorize node
- Concentrate the downstream effect along the inner edges of the shape
Tips
- Spread 0 gives the most natural soft falloff; spread 1 makes a crisp inner line before blur
- Offset (0, 0) produces an even inner glow-of-darkness from every edge; non-zero offset biases it directionally (like a light source)
Shadow Onlyis useful for compositing the shadow with a custom blend mode downstream via Merge- Offset is in comp pixels, so it stays consistent across Draft / Preview / Full quality
Related Nodes
- DropShadow — the "outside" complement (shadow behind the shape)
- InnerGlow — same pipeline but brightens instead of darkens
- Glow — outward bloom from bright areas
- Matte — combine with the
Matteoutput for custom inner masks