Anim LOD
AnimLOD reduces animation CPU cost by lowering update frequency for distant or small on-screen characters using tiered Playables-based evaluation.
by Crowned Vermin
Price History +
Animated characters can become expensive fast, especially in scenes with crowds, enemies, NPCs, wildlife, or background actors. Even when a character is far from the camera, Unity may still evaluate its animation every frame, which can waste CPU time on motion the player can barely notice.
AnimLOD helps solve this by applying level-of-detail logic to animation updates. Characters close to the camera can animate every frame, while distant or visually small characters update less often based on configurable tiers. This lets you keep more animated characters active in a scene while reducing unnecessary animation workload.
The system uses Unity’s Playables API to manually evaluate each character’s animation graph. Delta time is accumulated between evaluations, so animation timing remains correct even when a character updates every 2, 4, 8, or 16 frames. AnimLOD also spreads evaluations across frames, helping avoid the performance spikes that can happen when many characters update at once.
AnimLOD is designed to be simple to integrate:
- Add an AnimLODComponent to animated characters
- Use an AnimLODManager for scene control
- Tune your tiers through a ScriptableObject config.