Back to Professional Work
Unity’s Data-Oriented Technology Stack (DOTS)

Unity’s Data-Oriented Technology Stack (DOTS)

Worked on the Entities team to integrate DOTS into packages and the core of Unit itself

Dec 2019 - Aug 2022 2 years, 8 months

Tech Stack

UnityC++C#Data Oriented Programmingmulti-threaded

DOTS includes technologies and packages that deliver a data-oriented design approach to building games in Unity. Applying data-oriented design to a game’s architecture empowers creators to scale processing in a highly performant manner.

I worked on the DOTS initiative at Unity. It was an amazing opportunity getting to work on such cutting edge, high performance, world class technology.

But to summarize this project, DOTS is Unity’s attempt to give a new paradigm to how you approach game development. Instead of GameObjects, DOTS makes use of an ECS paradigm powered by the opinionated C# Burst compiler, and ultiamtely driven with parallelism in mind (particularly with job based scheduling). This is a system esepcially designed for larger scale, AAA projects or for games that are simulation heavy.

In particular, the team I worked on maintained the ESC part in the Entities package. So we worked at the heart of DOTS to evangelize for the project, help other parts of the engine integrate into DOTS, and make sure Burst optimizations were performing as expected. A few othe the reponsibilies I had over my tenue on Entites included

Absolutely amazing experience. Really help me approciate game engines even more than before I got in.

View All Professional Work