#game #engine #graphics #audio #rusty


A fun way to learn Rust using a simple 2D game engine

9 releases (breaking)

0.11.0 Jun 4, 2020
0.10.0 May 22, 2020
0.5.0 Apr 29, 2020
0.4.0 Mar 27, 2020
0.0.2 Mar 15, 2020

#171 in Game dev

47 downloads per month


959 lines

Rusty Engine

Rusty Engine is a fun, cross-platform game engine written in Rust. The primary goal is to be as simple to use as possible so game engine concepts don't get in the way of learning Rust.

Questions, bug reports, and contributions are most welcome!

If you would like to support this project, please star this repository and sponsor me. 💖


  • 4-channel audio system supporting MP3, WAV, Vorbis and Flac.
  • Keyboard, mouse, and window input events.
  • OpenGL backend via glium.

Aspirational Plans

  • Companion course (Ultimate Rust Crash Course) with project walkthrough videos (the course exists, it just doesn't have project walkthrough videos yet)
  • Switch to Vulkan/Metal via rendy before OpenGL stops working on macOS.
  • A user guide

Audio Dependencies on Linux

Audio should work out-of-the-box on macOS, Windows, iOS, and emscripten. For Linux, the downstream package for actually playing sound (CPAL) requires the Alsa development libraries to be installed.


sudo yum install -y alsa-lib-devel


sudo apt install libasound2-dev


All contributions are assumed to be dual-licensed under MIT/Apache-2.


Distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See license/APACHE and license/MIT.


~226K SLoC