Quick answer: Output Particle Mesh details → Cast Shadows = on. Use Lit output for proper shadow casting.
Hero spell mesh particle should cast a visible shadow on ground. Stays unshadowed. Cast Shadows toggle was off.
The Fix
VFX Graph → Output Particle Lit Mesh:
Cast Shadows: true
Receive Shadows: true
Material Type: Standard Lit
Mesh: SM_HeroSpell
URP / HDRP renderer:
Shadow Distance: 50+ // must include particle
Per-output flag, not system-wide. Enable on the specific outputs that should shadow; leave off on dust/sparkles for perf.
Verifying
Spell mesh casts shadow on terrain. Frame Debugger: shadow pass includes the VFX mesh draw.
“Cast Shadows on. Lit. Shadow renders.”
Related Issues
For VFX mesh flat shading, see flat shading. For VFX strip collapse, see strip.
Cast Shadows on. Lit. Shadow lands.