pub struct SimulationInitOptions {
pub sim_dt: f32,
pub init_static_level_geom: Option<fn(&mut State)>,
pub simulation_loop: fn(&mut GameContext<Immediate>),
pub input_merge: fn(&Input, &Input) -> Input,
pub input_validate: fn(&Input) -> Input,
pub input_server_predict_late: fn(&Input, &State, usize32, bool) -> Input,
pub input_client_predict_late: fn(&Input, &State, usize32) -> Input,
pub on_server_start: fn(&mut State, &mut DiffSerializer<WaitForConsensus>),
pub on_client_connect: fn(&mut State, usize32, TickID, &mut DiffSerializer<WaitForConsensus>),
pub on_client_disconnect: fn(&mut State, usize32, TickID, &mut DiffSerializer<WaitForConsensus>),
}Fields§
§sim_dt: f32Simulation delta time/tick rate, in seconds/tick. Can be higher or lower than vsync refresh rate. Too low feels kinda floaty, too high hurts performance.
init_static_level_geom: Option<fn(&mut State)>§simulation_loop: fn(&mut GameContext<Immediate>)§input_merge: fn(&Input, &Input) -> Input§input_validate: fn(&Input) -> Input§input_server_predict_late: fn(&Input, &State, usize32, bool) -> Input§input_client_predict_late: fn(&Input, &State, usize32) -> Input§on_server_start: fn(&mut State, &mut DiffSerializer<WaitForConsensus>)§on_client_connect: fn(&mut State, usize32, TickID, &mut DiffSerializer<WaitForConsensus>)§on_client_disconnect: fn(&mut State, usize32, TickID, &mut DiffSerializer<WaitForConsensus>)Auto Trait Implementations§
impl Freeze for SimulationInitOptions
impl RefUnwindSafe for SimulationInitOptions
impl Send for SimulationInitOptions
impl Sync for SimulationInitOptions
impl Unpin for SimulationInitOptions
impl UnsafeUnpin for SimulationInitOptions
impl UnwindSafe for SimulationInitOptions
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more