pixel-game-lib 0.9.0-alpha

AGPL licensed and opinionated game engine for pixel-art games
Documentation

pixel-game-lib

Build Status Crates.io Documentation License: GPL-3.0 Downloads

Documentation

AGPL licensed and opinionated game engine for pixel-art games.

Features

  • Pixel-perfect pixel art rendering with built-in rotsprite rotation shader.
  • Window creation with independent update and render game loop.
  • Hot-reloadable asset management.
  • Sprite loading.
  • Physics engine.
  • Dialogue scripting system.
  • Audio playback.

Feature Flags

default-font

Implements [Default] for [font::Font] with a font that's embedded into memory.

hot-reloading-assets (default)

Hot-reload assets from disk when they are saved. Has no effect on the web target.

embedded-assets (default on web)

Bake all assets in the assets/ folder in the binary. When creating a release binary this feature flag should be enabled.

physics

Enable the 2D XPBD-based physics engine.

dialogue

A thin wrapper around Yarn Spinner. Allows creating hot-reloadable dialogue systems.

audio

A thin wrapper around Kira. Play sounds and music files which can be hot-reloadable using assets.

To keep the binary and compile-times small only .ogg audio files are supported.

Requirements

On Linux you need to install asound2-dev:

sudo apt install libasound2-dev

Credits

  • gtoknu for the branchless scale2x shader.
  • @damieng for the font behind the default-font feature.
  • KenneyNL for the audio sample in the example.