UE5 / Recipe / Stylized VFX

Erosion / Dissolve for UE5

A production-friendly dissolve material for reveal, despawn, damage, and magic burn-away effects. The important part is not the noise itself. The important part is how cleanly the edge reads while the surface disappears.

Recipe baseline

Read the edge first

A dissolve fails when the edge becomes random static. Build the alpha mask first, then add the edge band, then color the edge. Glow is the final pass, not the foundation.

01

Visual Target

What we are building: a material that can erase a mesh from one side, from a center point, or through an authored mask, with a bright readable edge that makes the transition feel intentional.
Erosion dissolve material visual anchor.

The useful read is the transition edge: solid form on one side, clean glowing threshold, then controlled breakup fragments.

02

Use Cases

GameplaySpawn and despawnUse when enemies, props, shields, or pickups need to appear without a hard pop.
DamageBurn-away surfaceWorks well for corruption, fire, magic deletion, and sci-fi disintegration.
LookdevState transitionDrive the dissolve amount from Blueprint, Sequencer, Niagara, or animation notifies.
UI / VFXCard revealThe same mask logic can reveal flat cards, decals, projected warnings, or magic symbols.

03

Mental Model

Dissolve is a comparison

You compare a mask value against a dissolve amount. Pixels above the amount stay visible. Pixels below it disappear. The edge band is the narrow range between those two states.

The mask decides the personality

Vertical gradient feels like a wipe. Sphere mask feels like a magical pulse. Voronoi feels brittle. Soft noise feels organic. The math is simple; the art direction is in the mask choice.

Beginner check: preview only the dissolve mask. If the black-white image does not already explain how the object disappears, color will not fix it.

04

Graph Steps

Choose mask Remap contrast Compare amount Extract edge Color edge Clip or fade

1. Start with a stable base mask

Use a noise texture, vertex color, gradient, world-position mask, or sphere mask. Keep it stable in object space when the effect is attached to a moving mesh.

Senior note: for characters, avoid screen-space masks unless the camera-driven look is intentional. Screen-space dissolve can swim badly during animation.

2. Give the mask art-directable contrast

Add controls for contrast and bias before thresholding. This lets an artist make the dissolve chunky, cloudy, or razor thin without replacing the texture.

3. Use one value for the reveal amount

Expose a scalar from 0 to 1 called something plain like DissolveAmount. It should be the value gameplay, animation, or Sequencer drives.

4. Build the edge band from the same mask

The edge should sit exactly at the transition. Use two thresholds: one for visibility, one slightly offset for the edge width.

5. Separate alpha, color, and emission

Alpha decides if the pixel exists. Color decides the surface look. Emission decides how hot the edge feels. Keeping them separate prevents one tweak from breaking everything.

05

Artist Controls

06

HLSL Sketch

float maskValue = (baseMask - maskBias) * maskContrast;
float shapedMask = saturate(maskValue + 0.5);
float visible = step(dissolveAmount, shapedMask);

float edgeOuter = step(dissolveAmount, shapedMask);
float edgeInner = step(dissolveAmount + edgeWidth, shapedMask);
float edgeBand = saturate(edgeOuter - edgeInner);

float3 surface = baseColor * visible;
float3 edgeGlow = edgeBand * edgeColor * edgeEmission;
float softAlpha = smoothstep(dissolveAmount, dissolveAmount + edgeWidth, shapedMask);
float alpha = useSoftFade ? softAlpha : visible;

return float4(surface + edgeGlow, alpha);

07

Senior Notes

Masked versus translucent

Masked materials sort better and are cheaper in many gameplay cases, but the edge can alias. Translucent fades are prettier, but sorting, overdraw, and lighting behavior need more care. Pick the blend mode based on where the effect ships.

Character dissolve needs deformation checks

If the mask is based on local position, test the animation extremes. Knees, elbows, cloth, and facial meshes can reveal seams if different material slots use different coordinate assumptions.

Instance variation matters

Give repeated objects a phase or seed. Ten enemies dissolving with the same noise phase looks cheaper than a simpler material with better variation.

08

Common Mistakes

  • Using a noise texture with too much high-frequency detail, which creates crawling static instead of a designed edge.
  • Letting edge emission control visibility. The edge should decorate the transition, not define the alpha logic.
  • Forgetting to test the effect at the actual gameplay distance.
  • Driving multiple unrelated parameters from Blueprint instead of driving one clean DissolveAmount.