## Krust 0.4.3 #### Setting up Firstly include the krust_core crate: ```rust extern crate krust_core; pub use krust_core; ``` Next, initialise the engine: ```rust let mut krust = Krust::new(); ``` Now call start on the engine passing a boxed scene: ```rust krust.start(Box::new(GameScene::new())); ``` #### Creating a Scene In order to create a scene you need a struct that implements the 'scene' trait like so: ```rust struct KirovScene { krust: *mut Krust, il_index: i32, } impl scene::Scene for KirovScene { type Renderer = graphics::Renderer; type Krust = Krust; fn init(&mut self, krust: *mut Krust){ } fn update(&mut self) { } fn render(&mut self, r: &mut graphics::Renderer) { } unsafe fn delete(&mut self) { } } ``` The functions: 'init', 'update', 'render' and 'delete' are required.