Miniquad

Crates.io version

Miniquad is safe and cross-platform rendering library focused on portability and low-end platforms support

API is highly inspired by sokol-gfx (sokol overview, 2019 update). Implementation influenced by crayon.

For context management and input on Windows/Linux(and potentially mobiles) "sokol-app" was used. And no external dependencies for WASM.

For higher level API take a look on:

good-web-game: implementation of some ggez subset on top of miniquad, made as compatibility layer to run ggez games on wasm

macroquad: raylib-like library on top of miniquad. 100loc arkanoid with macroquad

Supported platforms

Not supported, but desirable platforms

Examples

Imgur

examples/quad.rs: web
examples/offscreen.rs: web

Worth to mention zemeroth port and astroblasto, built with miniquad-powered good-web-game

Building examples

desktop

```bash rustup target add x86_64-pc-windows-gnu # for windows cross compilation, this is how windows builds were tested

cargo run --example quad --target x8664-unknown-linux-gnu cargo run --example quad --target x8664-pc-windows-gnu ```

wasm

bash rustup target add wasm32-unknown-unknown cargo build --example quad --target wasm32-unknown-unknown

And then use the following .html to load .wasm:

index.html

```html TITLE

```

One of the ways to server static .wasm and .html:

cargo install basic-http-server basic-http-server .

Goals

Non goals