
ECS for Unity

Better control for experienced creators and demanding projects
ECS is part of Unity's Data-Oriented Technology Stack (DOTS). Enabling creators to build with more complex gameplay, rich dynamic environments, larger player counts, and support for hardware-constrained devices.

An optional framework compatible with the GameObject ecosystem
ECS for Unity offers streamlined workflows and a familiar authoring experience in the Unity Editor, compatible with GameObject ecosystems. Creators can leverage their existing Unity expertise and assets to focus on creating ambitious games.

Game code based on ECS can quickly adapt to major gameplay changes
Game code based on ECS helps development teams quickly absorb important gameplay changes by eliminating most of the refactoring that would have been necessary with object-oriented architectures.

Game code based on ECS provides complete control and determinism
ECS for Unity provides memory control and determinism by design, creating optimization opportunities at scale, and new game code possibilities based on determinism. ECS for Unity is a C# package distributed with source code, allowing users to explore, debug, and extend it.

Best use of hardware with Burst, the C# Job System, and ECS game code
Game code based on an ECS architecture pattern can avoid the drawbacks of object-oriented programming with GameObjects. And by leveraging game code based on ECS, Burst Compiler, and the C# Job System, development teams can maximize the performance of target platform hardware resources at the memory and CPU level.

Spikeless streaming and memory-efficient large-scale rendering
ECS for Unity offers an efficient data pipeline that enables streaming and rendering of complex, large-scale game experiences, fitting the memory and processing constraints of low-end to high-end devices.

Enables large-scale simulation and powers Havok Physics for Unity
Simulation code based on an ECS architecture pattern can scale to an unprecedented number of entities and ensure determinism. For complex productions needing a AAA, production-proven, physics engine, ECS for Unity powers Havok Physics for Unity, providing the determinism and control to scale for complex simulations.

Designed to support the creation of ambitious multiplayer games
When using ECS, users can synchronize more data over the network, support more players, build games highly reliant on rollback and determinism, reduce development risk, and decrease iteration time. ECS for Unity comes with a server-authoritative netcode library.
ECS Samples and Tutorials

Megacity Metro
Experience this competitive, 128+ player cross-platform demo to learn multiplayer and ECS mechanics, understand how to implement gaming services, and experiment with all-new Unity 6 features.

Galaxy Game
An approachable ECS learning sample featuring a large-scale simulation of spaceship battles. Galaxy Game involves simple, useful ECS game code for AI, spatial queries, event-based logic, different unit/building types and roles, many-to-one relationships, and more.

Data-oriented learning resources
Explore a comprehensive list of self-guided tutorials, videos, samples, and best practices for ECS – including Entities, Collections, Burst, Mathematics, and C# Job System.

Converting a game to DOTS
Learn how the Data-Oriented Technology Stack (DOTS) can unlock serious performance for your existing Unity game. This tutorial provides an overview of key DOTS concepts before implementing them in a GameObject-based project. See the tech in action, and learn how and when to use different DOTS components.

E-book: DOTS for advanced developers
This 50+ page e-book, Introduction to the Data-Oriented Technology Stack for advanced Unity developers, is now available to download for free. Use it as a primer to better understand data-oriented programming and evaluate if DOTS is the right choice for your next project.

Check out some of the resources to help you get started with DOTS and learn about the fundamental concepts of data-oriented design.