Hero background image

ECS for Unity

ECS (Entity Component System) is a data-oriented framework compatible with GameObjects. It scales processing performance, enabling experienced creators to build more ambitious games with an unprecedented level of control and determinism.
Unity Megacity Demo built on DOTS

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.

ECS
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.

Megacity shot
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.

ECS
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.

ECS
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.

Megacity demo built on DOTS
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.

Planet gravity still
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.

Snowy racecar scene
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
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 sample
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.

ECS Gameplay
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.

Convert to DOTS
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.

Intro to DOTS Ebook
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.

ECS Callout
Get started with DOTS

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