Home

Awesome

EcsRx.Unity

EcsRx is a reactive take on the common ECS pattern with a well separated design, this library builds off that basis and adds unity specific helpers and functionality.

Discord

If you do not need support for Unity and just want to use EcsRx in .net projects then head on over to the EcsRx repo https://github.com/EcsRx/ecsrx.

Features

Architecture

Unity specific

Examples

There are a lot of example projects within the repository which you can clone and look at if you wish, or if you want more complex examples look at:

There is also a supplementary data-binding framework grofit/bindingsrx which can speed up development of UI related interactions by adding one/two way data binding on UI and other unity objects.

Requirements

HELP I DONT WANT UNITY 2018 .NET 4.5

The 1.0.0 release and above will target .net 4.5 and unity 2018, if you need to support earlier versions of unity then use the previous 0.* release stream.

Installation

You can take the unitypackage installation file from the relevent release.

The package contains a wrapper around the Core framework and some unity helpers. The core is provided as dlls which are built for release, if you want/need to access the debug versions pull down the EcsRx/EcsRx master version and build for debug and use those dlls.

Quick Start

You will ultimately need to create a SceneContext from Zenject then create an your own implementation of EcsRxApplicationBehaviour where you can setup your systems and entities.

Much like any other ECS implementation you have the notion of entities (IEntity), components (IComponent) and systems (ISystem), although there are a few types of systems which you can implement based upon your needs, check out the docs folder for more information on these subjects as its more than just a 1 liner.

Docs

If you have any problems, or feel that you are still unsure of something head on over to our Discord Channel.