app.add_systems(
(
// NOTE: move_ant needs to run first to avoid situation where ant falls + moves in same frame
move_ant,
// TODO: sand/ant gravity systems can run in parallel, but not clear how to express that without allowing render to run
sand_gravity_system.after(move_ant),
ant_gravity_system.after(sand_gravity_system),
// Rendering systems need to run after all other systems, but can run in any order.
render_translation
.after(ant_gravity_system)
.ambiguous_with(render_scale)
.ambiguous_with(render_rotation)
.ambiguous_with(render_carrying),
render_scale
.after(ant_gravity_system)
.ambiguous_with(render_translation)
.ambiguous_with(render_rotation)
.ambiguous_with(render_carrying),
render_rotation
.after(ant_gravity_system)
.ambiguous_with(render_translation)
.ambiguous_with(render_scale)
.ambiguous_with(render_carrying),
render_carrying
.after(ant_gravity_system)
.ambiguous_with(render_translation)
.ambiguous_with(render_scale)
.ambiguous_with(render_rotation),
)
.in_schedule(CoreSchedule::FixedUpdate),
);
Is there a way to express this with less verbosity? I have a set of render systems which are strictly UI updates and can run in any order, but they need to run after all the model state updates.