Unity packages and demos—emphasizing ECS, jobs and the Burst compiler—by me, Reese.
This project is a UPM package monorepo that supports the included demos, featuring:
- Navigation - DOTS navigation with auto-jumping agents and movable surfaces; released as a package on the
navbranch. - Randomization -
Unity.Mathematics.Randomnumber generators in jobs, including Burst-capable ones; released as a package on therandombranch. - Spatial Events - Reactive entry and exit events in Burst-capable jobs; released as a package on the
spatialbranch. - Utility Code - General utility code for Unity, mainly DOTS-oriented; released as a package on the
utilitybranch.
There are various demo scenes included in Assets/Scenes. Take a look!
Linux users may need to do some extra work to get the project and/or packages up and running.
Install Mono by following these directions.
Avoid sandboxing Unity Hub and Unity with Flatpak or Snap, otherwise libdl.so may be inaccessible to the editor.
Also, on Ubuntu, you may need to manually install gcc-multilib and libncurses5 with:
sudo apt install gcc-multilib libncurses5Note that you may need to install clang on Ubuntu via:
sudo apt install clang- The
Strandeddemo extensively uses Mini Mike's Metro Minis (licensed with CC BY 4.0) by Mike Judge. That project is embedded in this one by way ofAssets/MMMM/. Its directory structure was modified, and new prefabs were generated for it rather than using the included ones. - The sounds mixed in the
Strandeddemo are from Freesound; only ones licensed with CC0 are used here. - The
NavHybridDemoleverages animations from Mixamo by Adobe. - The navigation package uses NavMeshComponents (licensed with MIT) by Unity Technologies; this means, for example, that runtime baking is supported, but just from the main thread.
- The navigation package uses PathUtils (licensed with zlib) by Mikko Mononen, and modified by Unity Technologies. Did you know that Mikko is credited in Death Stranding for Recast & Detour?
Find a problem, or have an improvement in mind? Great. Go ahead and submit a pull request. Note that the maintainer offers no assurance he will respond to you, fix bugs or add features on your behalf in a timely fashion, if ever. All that said, GitHub Issues is fine for constructive discussion.
By submitting a pull request, you agree to license your work under this project's MIT license.

