Learn step by step how to convert a GameObject-based project to DOTS.

DOTS bootcamp

Access our bootcamp for advanced game developers and maximize your game’s performance.

Optimize your game with DOTS

In these step-by-step sessions we convert a GameObject-based project, Firefighters, to include key DOTS components. Learn the fundamentals of data-oriented programming and how to use the C# Job System, Burst Compiler, and Entity Component System (ECS) in your own games.

Group learning with fellow developers

Join our developer community and learn about data-oriented design, with Unity experts on hand to answer your questions.

Maximum impact in just four hours

Learn how to use the Burst Compiler, the C# Job System, and ECS to unlock massively better performance in your project.

Quality training with experts

We’ll walk you through the Firefighters sample project to show you the performance benefits of data-oriented design firsthand.

Additional learning with new tutorials

Build on the skills you acquire in the bootcamp with new DOTS tutorials on Unity Learn, and hear from creators who have had success with DOTS in production.

Know before you begin

This advanced training course is not recommended for beginner-level programmers.

Unity 2022 LTS is required

Upgrade to Unity 2022 LTS to ensure you have access to every feature covered in the bootcamp.

Get the sample project

Firefighters is available to download from our GitHub repo. Enabled by data-oriented programming, this sample lets you develop bots to fight fires on a massive scale.

Explore our learning resources

New to DOTS? Try our new Basics of DOTS course on Unity Learn and get up to speed with Jobs and Entities.

Session schedule

See what’s covered in the bootcamp. Each session builds on the previous day’s concepts.

Day 1: Starting with Entities

We begin with a feature of Entities called “baking” to spawn the elements that make up the Firefighters tutorial.

Day 2: Game code – Simulating a spreading fire

In this session, we use DOTS collections and dynamic buffer components to begin simulating a spreading fire.

Day 3: Optimizing with the C# Job System

Building on the previous session, we make the fire simulation code multithreaded using the C# Job System.

Day 4: Game code – Bot behavior

In this session, we implement the behavior of the firefighter bots using a State Machine.

Bonus: Adding animation and UI

In this bonus session, learn how to sync entities and GameObjects for animation and UI benefits.

Your bootcamp hosts

Brian Will, Senior Software Engineer

Brian Will is a senior software engineer at Unity. His current mission is helping developers understand DOTS so they can unlock better performance for their games.

Brian Will

Mike Geig, Senior Manager, Advocacy and Community

Mike Geig is the leader of Advocacy and Community at Unity Technologies, where his passion for educating and inspiring creators can shine.

Mike Geig

Ashley Alicea, Senior Technical Product Manager

Ashley Alicea is a senior technical product manager at Unity. She works on scalable gameplay workflows that make the Unity Editor more approachable for a diverse range of creators.

Ashley Alicea

See how other studios use DOTS

DOTS Roundtable

Webinar: Maximize your game’s potential with data-oriented design

Sunblink Entertainment & Stunlock Studios

Stunlock Studios’ Rasmus Höök and Sunblink Entertainment’s Justin Larrabee joined Unity’s DOTS team to share their experiences with Entities in Unity 2022 LTS.

Bare Butt Boxing

Case study: Bare Butt Boxing

Tuatara Games

Learn how Tuatara Games powers its chaotic multiplayer brawler Bare Butt Boxing by pairing data-oriented technology with Unity’s end-to-end ecosystem for multiplayer development.

DOTS

Case study: Zenith: The Last City

Ramen VR

Discover how Ramen VR used Entities to enable massive scale and avoid rate limits in their ambitious VR MMO.

Get in touch

Harness the power of DOTS with Unity Pro or Unity Enterprise.

Frequently asked questions

This bootcamp leverages tech you can only find in Unity 2022 LTS or a later version of Unity.

Submit your questions to the ECS Forum or on our official Discord channel.

Firefighters is a GameObject-based project with a large number of scene elements. Guide robot firefighters so they can extinguish a fire raging out of control.

During the bootcamp, you learn how to progressively unlock higher performance over time using different DOTS components. See how to leverage the C# Job System, the Burst Compiler, and Entities to enable even more elements at greater performance.

Visit our ECS Samples page for the latest DOTS samples, videos, and packages.

Yes, DOTS requires advanced programming knowledge, and is not recommended for beginners. If you’re completely new to DOTS/ECS, start with this course on Unity Learn.

No, this bootcamp does not require you to follow along in real-time with your own sample project; the courses demonstrate key concepts and their implementation.