Skip to content

SpottedcatLightweight cross-platform 2D/3D game engine

Small, fast, and a little wild—named after the rusty-spotted cat and built in Rust.

Spottedcat

Stable 1.0 release

Spottedcat 1.0 is the first stable release. Public API breakage is reserved for future major versions; minor and patch releases focus on compatibility, fixes, and additive improvements.

Minimal shape

Spottedcat apps are ordinary Rust types that implement Spot:

rust
use spottedcat::{Context, Image, Spot, WindowConfig, run};
use std::time::Duration;

struct Game;

impl Spot for Game {
    fn initialize(_ctx: &mut Context) -> Self {
        Self
    }

    fn update(&mut self, _ctx: &mut Context, _dt: Duration) {
        // Move your world forward here.
    }

    fn draw(&mut self, _ctx: &mut Context, _screen: Image) {
        // Draw your frame here.
    }

    fn remove(&mut self, _ctx: &mut Context) {}
}

fn main() {
    run::<Game>(WindowConfig::default());
}

Pick your next step

Released under the MIT OR Apache-2.0 License.