When in the update loop are systems updated if don’t have any UpdateInGroup/UpdateBefore/UpdateAfter attributes? PreUpdate? Update?
Is there a list somewhere how the internal update loop works? Would be great to know how things in UnityEngine.Experimental.PlayerLoop are ordered.
In Unity.Entities/ScriptBehaviourUpdateOrder.cs:635 you can see it uses UnityEngine.Experimental.PlayerLoop.Update as the default placement for ecs systems, which is roughly the same time a regular MonoBehaviour.Update() would run. You can inspect UnityEngine.Experimental.PlayerLoop and its subsystem lists for the general player loop order. It’s my understanding they all run on the main thread sequentially when appropriate - e.g. UnityEngine.Experimental.PlayerLoop.FixedUpdate will only run on fixed update but UnityEngine.Experimental.PlayerLoop.Initialization runs every tick.
1 Like