Support | Discussions | Documentation
❗Crowd Animations is an extension for GPU Instancer Pro, and requires it to work.
Crowd Animations applies GPU skinning based on bone transform data, significantly boosting rendering performance when rendering many animated instances that share the same mesh and material. Each instance can play different animation clips independently, with full support for variation in behavior and logic.
Animator Workflows
The system offers multiple animation workflows, allowing you to balance performance and flexibility on a per-instance basis. Draw calls remain batched even when different workflows are used across instances.
Uses compute shaders to calculate bone transforms directly on the GPU using pre-baked animation data. This workflow offers the highest performance and significantly reduces CPU usage. However, it requires a custom setup and does not work out-of-the-box with standard Animator Controllers. It also supports No-GameObjects usage via the API.
Directly reads Transform components in the bone hierarchy. This workflow offers maximum flexibility and supports runtime modifications such as Inverse Kinematics (IK), Ragdoll physics or Procedural animation. It typically involves higher CPU overhead due to frequent transform reads.
Reads animation state from Unity’s Animator or Animation component at runtime and plays pre-baked animation clips accordingly. This allows integration with existing Animator Controllers while still benefiting from GPU skinning.
The system is fully extensible. You can create custom workflows that supply bone transform data to Crowd Animations, allowing for unique animation systems or runtime behaviors.
Hybrid Workflow Support
You can assign different workflows to different instances in the same scene. Draw calls remain batched even when instances use a mix of workflows. This makes it possible to apply the most efficient workflow (e.g., Compute Animator) to most instances, while switching to more flexible ones (e.g., Bone Tracker) only where needed—without increasing draw call counts.
Runtime Animation Baking
Animation clips are automatically baked at runtime when needed. If a used animation has no pre-baked data, the system will bake it on first use for workflows that require it (e.g., Compute Animator, Mecanim Reader). No manual setup or edit mode baking is required.
Bone Read/Write Control
Crowd Animations provides per-instance control over which bones are read from or written to:
Baked animation data is written to the selected bone transforms. This is useful for bone attachments, running bone-based physics, or syncing bone motion with other systems.
Bone transforms are read from the hierarchy at runtime. Ideal for cases where bones are modified during gameplay (e.g., IK, procedural animation), while still allowing the rest of the skeleton to use GPU animation.