Skip to content
Isaiah Kelly edited this page May 22, 2017 · 78 revisions

Entitas

What is Entitas?

Entitas is a super fast and lightweight Entity-Component-System (ECS) framework specifically designed for C# and the Unity engine. Internal caching and blazing fast component access makes it second to none. Several design decisions have been made to work optimal in a garbage collected environment and to go easy on the garbage collector. Entitas also comes with an optional code generator which radically reduces the amount of code you have to write and makes your code read like well written prose.

Installation

Each release of Entitas is published in the Releases section with zip files which contain all the files you need to get up and running quickly.

Unity Project Setup

Download the latest Entitas-Unity.zip release and copy the contents into the "Assets" folder of an existing or new Unity project. Once importation is complete you will find a new Entitas related section in the menu bar under "Tools".

Entitas menu

You can open the Entitas preferences window from the menu bar or with the hotkey (Shift+Ctrl+E) to configure all Entitas options and generate code.

Entitas Preferences

C# Project Setup

The quickest and easiest way to get started is to download the EntitasPure sample project that is already setup for you. However, if you'd rather setup your own project or just want to update an existing project you can download the latest Entitas-CSharp.zip release and then copy the contents into your project manually.

If you want to use the code generator you can create a simple helper console application which you can run as a post compile command. The project file must also be updated in order to recognize the generated files.

Example:

<ItemGroup>
  <Compile Include="Generated\**\*.cs" />
</ItemGroup>

Take a look at the EntitasPure.csproj file for more information on how to setup your project.

All done. You're awesome! 🎉😉

Add contexts, write some components and systems and make an awesome game. Feel free to share what you've created with Entitas in the Community Section in the Wiki and use #madeWithEntitas in your Tweets so we can all enjoy playing your game or learn from it!

Clone this wiki locally