pub trait State: 'static {
// Required method
fn draw(&mut self, framebuffer: &mut Framebuffer<'_>);
// Provided methods
fn update(&mut self, delta_time: f64) { ... }
fn fixed_update(&mut self, delta_time: f64) { ... }
fn handle_event(&mut self, event: Event) { ... }
fn transition(&mut self) -> Option<Transition> { ... }
fn ui<'a>(&'a mut self, cx: &'a Controller) -> Box<dyn Widget + 'a> { ... }
}
Expand description
Represents a state in the game.
Required Methods§
fn draw(&mut self, framebuffer: &mut Framebuffer<'_>)
Provided Methods§
sourcefn fixed_update(&mut self, delta_time: f64)
fn fixed_update(&mut self, delta_time: f64)
Called periodically every fixed_delta_time
defined in [ContextOptions].
To start the application with different fixed_delta_time
,
initialize geng with [Geng::new_with()
].
sourcefn handle_event(&mut self, event: Event)
fn handle_event(&mut self, event: Event)
Called whenever an event is registered. See Event for a full list of possible events.
sourcefn transition(&mut self) -> Option<Transition>
fn transition(&mut self) -> Option<Transition>
Called every frame. If returns Some
, then a transition occurs.