Krust 0.4

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.

Change Log

New Additions - Single image sprites can now be created from the 'Sprite' class - Layering/Z-Ordering is now supported - Controller rescanning is now an required option in launch parameters - Controller Dead-zone can now be customized via 'setdeadzone()' function - Background colour can now be customized from the launch parameters - Improvements to krusttimer - Sprite::nullsprite() option now avalibe for creating temporary empty sprite - Camera position now setable - Some changes to how Vsync is applied

Bug Fixes - launch parameters now show error on missing parameters - Key inputs are now consistently polled