use bevy::{ core::{FixedTimestep, FixedTimesteps}, prelude::*, }; const LABEL: &str = "my_fixed_timestep"; #[derive(Debug, Hash, PartialEq, Eq, Clone, StageLabel)] struct FixedUpdateStage; fn main() { App::build() .add_plugins(DefaultPlugins) // this system will run once every update (it should match your screen's refresh rate) .add_system(update.system()) // add a new stage that runs every two seconds .add_stage_after( CoreStage::Update, FixedUpdateStage, SystemStage::parallel() .with_run_criteria( FixedTimestep::step(2.0) // labels are optional. they provide a way to access the current FixedTimestep state from within a system .with_label(LABEL), ) .with_system(fixed_update.system()), ) .run(); } fn update(mut last_time: Local, time: Res