How to Create a Project in DOTS

This will take you about 20 minutes in prep time if you don't have Unity set-up, and 30 minutes in coding and debug time.

Click Here for DOTS Tutorial

Stop struggling with the limited documentation. Follow this step-by-step tutorial: "How to Create a Project in DOTS."

Full workflows and code to set up an ECS project with the latest Unity Editor and compatible package versions

Click Here for DOTS Tutorial

This gitbook takes you through step-by-step full workflows and code to set up an ECS project with the latest Unity Editor and compatible package versions. Once you've coded along and fully finished the "How To Create a Project" tutorial, you will be able to set up an ECS project with the latest Unity Editor and compatible package versions.

Click Here for DOTS Tutorial

High-Level steps to Create a Project:

Number 01

Add Hybrid Renderer to the manifest

Number 02

Load a Sub Scene into the Scene

Number 03

Use the Conversion Workflow to author data on a GameObject that's been converted to Component data on an Entity

FAQ

How do you add the Hybrid Rendering package in DOTS?

Outside of the Unity Editor, navigate to your project folder and open manifest.json (inside the Packages folder) with Visual Studio code or your choice of editor. These are all the packages that are currently included in your project. Now you need to manually add a new package, the Hybrid Rendering package. Add the following line to the manifest somewhere between the curly braces and save: "com.unity.rendering.hybrid": "0.11.0-preview.42"

What is the Conversion Workflow in DOTS?

To use Unity’s DOTS technology, you need to create entities, components and systems. The process that "converts" GameObjects (authoring data) and generates entities and components (runtime data) is called conversion. This process is the preferred way of authoring ECS data. It is a fundamental part of DOTS, and not something temporary.

What are Sub Scenes in DOTS?

In Unity, you can convert GameObjects into Entities by creating "Sub Scenes." This is how it works: the GameObjects in a Sub Scene are automatically converted into Entities. This conversion takes place either when (1) you hit Play in Editor while the Sub Scene is open at the time, or when (2) you close the Sub Scene from its Inspector. How is this helpful? The main benefit of this approach is the ability to split your scene into several Sub Scenes and have every closed Sub Scene work in an "entity-performant world" (so to speak) while you work in/edit the open Sub Scenes that are in "GameObject world" (as long as those windows are opened!)

Haven’t begun learning Unity DOTS yet, and need to start at the very beginning?

If you haven't yet dipped your toes into learning Unity's new multithreaded Data-Oriented Technology Stack (DOTS), now is the time. You can start at the very beginning with Moetsi’s tutorial, which culminates in your very own deployable sample project. You’ll be guided by full workflows, code-alongs, videos, and GIFs along the way.

Get Started