Faster build times possible at some point?

You mean in in editor incremental script compilation?

Unity 2020.2 ships with support for reference assemblies. Meaning if you split your project into many asmdef files and change only method bodies without changing public APIs, it will only recompile those assemblies and skip over re-compiling dependent dlls (Because the API it uses has not changed). This is often very big win for iteration speed.

Separate from that specific to DOTS a large amount of the script compilation time in a DOTS project is due to all the ILPostprocessing we are doing, eg. Entities.ForEach / authoring component code-gen etc. We are looking at using roslyn source generators to make the generated code more transparent but most importantly get significant gains in compilation time.

Skipping Domain reload when entering playmode shipped in 19.3 and DOTS fully supports it. Enter playmode on dots shooter is < 1 second. Including booting up server & client in same process.

All our internal DOTS productions / samples have this enabled. For game object based projects it often requires a lot of refactoring because MonoBehaviour based game code often has a tendency to use static variables. Since they will not get reset on enter play mode that can result in your game not working correctly. It is simply a question of refactoring your own game code to adjust.

While Entities game code generally is written without static variables mostly because systems are explicit / multi-world support etc. So for DOTS projects it is usually very little work to support it. If you start a new project, you should obviously enable it from the start.

6 Likes