I have these two groups, BeginPredictedFixedStepGameplayGroup supposed to be update before PhysicsSystemGroup and EndPredictedFixedStepGameplayGroup after PhysicsSystemGroup But yet somehow, Unity decides to put EndPredictedFixedStepGameplayGroup infront of PhysicsSystemGroup in ClientWorld only. In ServerWorld it is correct. I am loosing my mind. I tried to mark m_systemSortDirty to true with reflection. Doesnt solve it. So sorting is buggy i guess?
[UpdateInGroup(typeof(PredictedFixedStepSimulationSystemGroup), OrderFirst = true)]
[WorldSystemFilter(WorldSystemFilterFlags.ClientSimulation | WorldSystemFilterFlags.ThinClientSimulation | WorldSystemFilterFlags.ServerSimulation)]
public partial class BeginPredictedFixedStepGameplayGroup : GameSystemGroup { }
[UpdateAfter(typeof(PhysicsSystemGroup))]
[UpdateAfter(typeof(BeginPredictedFixedStepGameplayGroup))]
[UpdateInGroup(typeof(PredictedFixedStepSimulationSystemGroup), OrderLast = true)]
[WorldSystemFilter(WorldSystemFilterFlags.ClientSimulation | WorldSystemFilterFlags.ThinClientSimulation | WorldSystemFilterFlags.ServerSimulation)]
public partial class EndPredictedFixedStepGameplayGroup : GameSystemGroup { }```