Massive Swarm System¶
Unity asset for large enemy swarms: bullet heaven, survivor-style, zombie hordes. Drop it in, configure a few settings, and get 1000+ agents running.
New here?
Start with Getting Started for your first working swarm in under 5 minutes.
What's in this manual¶
- Getting Started: your first swarm in under 5 minutes.
- Sample Scenes: what each demo scene shows and which one to open first.
- Samples & Cleanup: removing the demo content once you no longer need it.
- Concepts: the mental model: Manager, Archetype, Behavior Profile, Movement Profile, Settings.
- Core Setup: Swarm Manager, Targets, Settings, Archetype, the tuning profiles, and wiring combat and input into your own game.
- Spawners: Shape Spawners, the Spawner Director, and the Pressure Recycler for waves and encounters.
- Behaviors: every steering behavior, what it does, when to use it.
- Navigation: Surface Flow Field for levels with walls and uneven floors.
- Animation: VAT and Animator-based animation.
- Performance: measure, tune, and ship 1000+ agents at frame rate.
- Troubleshooting: common first-run issues and fixes.
- FAQ: the questions that come up before you buy and just after.
- Reference: the public API, component by component, plus the glossary.
- Help & Support: Discord, email, and how to report a bug.
- Changelog: what changed in each release.
What it is¶
- A centralized swarm simulation for classic GameObject projects.
- A manager / spawner / settings workflow for large enemy groups.
- A performance-first horde movement system.
- A small set of opinionated default behaviors.
What it is not¶
- Not a broad gameplay framework.
- Not a DOTS/ECS package.
- Not a NavMeshAgent-based system.
- Not a full physics crowd solver.
- Not a general AI behavior framework.
Requirements¶
- Unity 2022.3 LTS or later (Unity 6 LTS supported).
- Universal Render Pipeline (URP): required for the included swarm visuals. The VAT shader is URP-only; Built-In RP and HDRP are not supported (agents will render magenta without it). The simulation itself is render-pipeline-agnostic, so if you supply your own materials you can run the core in any pipeline.
- No extra packages for the core runtime. It references nothing beyond the engine, so it compiles in a bare project.
- The samples ask for more. StarterKit needs TextMeshPro for its floating combat numbers. FullDemo needs TextMeshPro, Cinemachine 3.x and the Input System: its scenes store Cinemachine 3 components, so on Cinemachine 2.x the demo cameras load as missing scripts, and its player controller, hotkeys and drag-target script all compile only when the Input System package is present. None of this reaches the core runtime, so deleting a sample folder removes its requirement with it.
- If you use either sample, import the TextMeshPro resources once from Window > TextMeshPro > Import TMP Essential Resources. The FullDemo HUD uses the default TMP font; the StarterKit's floating numbers ship their own font but still draw through a TMP shader. Either way the text stays blank until those resources exist in the project.
- Unity Input System is optional for the core. Nothing in the simulation needs it, but the package ships a small input assembly that only compiles when the package is installed: the Input System move-input adapter, the on-screen stick, and the mobile touch joystick. Without it you wire movement in yourself through
IMoveInputSource. See Input Integration.