Quick answer: Unity VFX Graph component continues to emit when Time.timeScale = 0? VFX system uses its own time source - explicitly set vfx.playRate = 0 or disable on pause.
Pause menu uses timeScale = 0; gameplay freezes; VFX particles keep emitting.
Set playRate to 0
vfx.playRate = 0;VFX advances at zero rate; effectively paused.
Or use VFX Manager
Centralized: on pause, iterate VFX components; set playRate. Cleanup on resume.
Hook OnGamePaused
Custom pause event; all subsystems including VFX listen.
“VFX timing is independent of game timeScale. Pause needs explicit propagation.”
If your game has pause UX, the VFX-pause sync is mandatory. Document in your pause architecture.