Quick answer: Unity Animator's StateMachineBehaviour OnStateExit not firing when Animator is disabled? Animator disable skips all callbacks - tear down state via OnDisable instead.

Disabling the Animator for an offscreen NPC; their state machine never exits the run state; gameplay logic stuck.

Tear down in OnDisable

OnDisable on the holding script. Tear down whatever StateExit would have done.

Or keep Animator enabled

For state-critical animators, leave enabled. Use cull mode for offscreen optimization.

Set culling mode

Animator > Cull Mode = Cull Update Transforms. Keeps state machine ticking; skips transform updates.

“Animator disable is a kill switch. State machine is collateral damage.”

For gameplay-critical animators, cull mode beats disable. Tighter optimization; correct state.

Related reading