Rust Game development

Open-source Rust projects categorized as Game development | Edit details

Top 23 Rust Game development Projects

  • GitHub repo bevy

    A refreshingly simple data-driven game engine built in Rust

    Project mention: Whats your favourite open source Rust project that needs more recognition? | reddit.com/r/rust | 2021-10-11

    bevy, a game engine in rust. I love it and i fanboy those people a lot. Thats the first game engine that is not pain in the ass to use for me, after 4 years of using unity.

  • GitHub repo Amethyst

    Data-oriented and data-driven game engine written in Rust (by amethyst)

    Project mention: I'm a "low-level, terminal-only" kind of developer, completely new to the game dev world. I've been working on a 2D platformer in my spare time. Can you explain to me what I'm missing out on, by not using a "game engine"? | reddit.com/r/gamedev | 2021-09-23

    Depends on my goals. I year ago I wanted to learn rust, so I used piston for a gamejam. (There are several rust engines including bevy, piston, amethyst. They probably vary in quality, features, and constraints.) Piston was a terrible experience because compilation is slow even on that tiny project.

  • Scout APM

    Scout APM: A developer's best friend. Try free for 14-days. Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues and can get back to building a great product faster.

  • GitHub repo egui

    egui: an easy-to-use immediate mode GUI in pure Rust

    Project mention: Whats your favourite open source Rust project that needs more recognition? | reddit.com/r/rust | 2021-10-11

    egui is a very nice gui lib that could really take off with more community efforts : )

  • GitHub repo piston

    A modular game engine written in Rust

    Project mention: I'm a "low-level, terminal-only" kind of developer, completely new to the game dev world. I've been working on a 2D platformer in my spare time. Can you explain to me what I'm missing out on, by not using a "game engine"? | reddit.com/r/gamedev | 2021-09-23

    Depends on my goals. I year ago I wanted to learn rust, so I used piston for a gamejam. (There are several rust engines including bevy, piston, amethyst. They probably vary in quality, features, and constraints.) Piston was a terrible experience because compilation is slow even on that tiny project.

  • GitHub repo ggez

    Rust library to create a Good Game Easily

    Project mention: good-web-game (ggez in browsers) v0.6 | reddit.com/r/rust_gamedev | 2021-09-14

    Chances seem pretty good at this point. Can be tracked here: https://github.com/ggez/ggez/issues/962

  • GitHub repo RG3D

    3D and 2D game engine written in Rust

    Project mention: Whats your favourite open source Rust project that needs more recognition? | reddit.com/r/rust | 2021-10-11

    rg3d

  • GitHub repo specs

    Specs - Parallel ECS (by amethyst)

    Project mention: Bellclone: a simple 2D game about jumping | reddit.com/r/rust | 2021-09-17

    Hi everyone - I just picked up one of my long-unfinished side project built with Rust and would like to show it to you here. It's a clone of the famous(?) Winterbells game. It's written entirely in Rust and uses OpenGL and an entity-component-system architecture ([the `specs` crate](https://crates.io/crates/specs)) (still learning), no game engine.

  • Nanos

    Run Linux Software Faster and Safer than Linux with Unikernels.

  • GitHub repo rust-sdl2

    SDL2 bindings for Rust

    Project mention: [HELP] I'm trying to make egui_sdl2_gl and sdl2's canvas work together | reddit.com/r/rust | 2021-10-03

    Found the answer: the problem was that SDL's Canvas is caching opengl calls until you call present(), which was preventing egui calls to be in the same frame. Calling SDL_RenderFlush fixed it. Opened a PR to rust-SDL2: https://github.com/Rust-SDL2/rust-sdl2/pull/1153

  • GitHub repo Coffee

    An opinionated 2D game engine for Rust

  • GitHub repo pixels

    A tiny hardware-accelerated pixel frame buffer. :crab:

    Project mention: pixels 0.6.0 release announcement | reddit.com/r/rust | 2021-09-01

    Something like this was reported on GitHub: https://github.com/parasyte/pixels/issues/193 I honestly don't know what causes it, but it may be an outdated compiler, or something else in your environment?

  • GitHub repo Pinky

    An NES emulator written in Rust

  • GitHub repo Tetra

    🎮 A simple 2D game framework written in Rust

    Project mention: Is there any 2d only game library with high stuff. I think it would be light-er than bevy and won't crash my PC. Like pygame for python for an instance, supporting collision and stuff in Rust!!!!? | reddit.com/r/rust_gamedev | 2021-06-07

    I've also used GGEZ and heard good things about Tetra.

  • GitHub repo quilkin

    Quilkin is a non-transparent UDP proxy specifically designed for use with large scale multiplayer dedicated game server deployments, to ensure security, access control, telemetry data, metrics and more.

    Project mention: DoS Attacks against my Online Game | news.ycombinator.com | 2021-09-27

    The firewall would need to be able to handle all the DDoS traffic as well, since your current idea would still pass the game server's IP back to a client. This is doable if you're hosting on a cloud provider and let their firewalls filter the traffic before hitting the game server.

    Embark Studios recently open sourced (in alpha) a UDP proxy[1] designed for games that lets you implement a load balancing layer. This allows you to remove servers in the load balancing layer in the event that it comes under attack, allowing the game server to stay up and only having to disconnect a portion of players connected to the attacked loadbalancer. Having a proxy layer is also how Steam protects game servers using the Steam Datagram Relay[2].

    [1]: https://github.com/googleforgames/quilkin

  • GitHub repo message-io

    Fast and easy-to-use event-driven network library.

    Project mention: Crate to build network packets over UDP | reddit.com/r/rust | 2021-07-09

    Another one I know about, but have not looked into yet, is message-io.

  • GitHub repo rust-sfml

    SFML bindings for Rust

    Project mention: Minimal graphics crate for Rust | reddit.com/r/rust | 2021-04-26
  • GitHub repo bitmapflow

    A tool to generate inbetweens for animated sprites, written in godot-rust

    Project mention: Introducing Bitmapflow - a tool to generate inbetweens for animated sprites (made with godot-rust) | reddit.com/r/godot | 2021-03-27

    You can download it here and you can get the source code here. Windows only for now, sorry my Linux and Mac friends! (Although theoretically you should be able to get it to work if you compile it from source)

  • GitHub repo shipyard

    Entity Component System focused on usability and speed.

    Project mention: React Renderer for Three.js | news.ycombinator.com | 2021-08-15

    It's not that it's incompatible, it's that when the ECS is the primary tool for organization, a DOM tree (or scenegraph) is merely one way of iterating over the entities - not the way.

    This provides tons of benefits, so for example you can also decide to iterate over the entites by shader program and gain significant speedups for graphics processing, or maintain components that roughly sort them by their position in world space for physics and culling or lighting, etc.

    To add to the sibling comment, there's another wonderful Rust ECS called shipyard[0] and I helped write a scenegraph for it (which I really need to update, one of these days)[1]

    [0] https://github.com/leudz/shipyard

  • GitHub repo raylib-rs

    Rust bindings for raylib

    Project mention: Why did you choose rust? Why not use unity engine or c++ since this game can be created in either and will have reasonable performance. | reddit.com/r/Veloren | 2021-09-11

    If you're asking about languages, Unreal uses primarily C++ (from what I heard with optional plugins for other languages, e.g. C#) whereas Unity uses C# (and optionally UnityScript - basically JavaScript). I don't know of any engines that use Rust, but you can surely find graphics libraries to have an easier way to display your game (e.g. Raylib with Rust bindings.

  • GitHub repo kira

    Library for expressive game audio.

    Project mention: Looking for an open-source project to join part-time | reddit.com/r/rust | 2021-03-14

    speaking of audio! i'm working on a game audio library called kira, which some people seem interested in integrating into bevy. i'd love to have more contributors!

  • GitHub repo emerald

    A 2D rust game engine focused on portability. (by Bombfuse)

    Project mention: Been working on an arcade style game in rust for a while, check it out! | reddit.com/r/rust_gamedev | 2021-08-01

    Been working on this for a few months, the game is built on top of Emerald, a game engine I'm writing to be as portable as possible. Wishlist the game on steamto be notified on release, aiming to release sometime this September!

  • GitHub repo rust-sdl

    SDL bindings for Rust

  • GitHub repo Crayon

    A small, portable and extensible game framework written in Rust.

  • GitHub repo bevy_game_template

    Template for a Bevy game

    Project mention: How transferable would be my understanding of Bevy currently to a later, more complete version of it? | reddit.com/r/bevy | 2021-06-23

    From my own experience, I've walked through the Bevy tutorial a few times without getting a ton of traction. On this iteration I'm working harder to explore the examples, of which there are many. I'm playing with this bevy game template to learn more about how a full project might be implemented. I'm learning to approach gamedev with ECS entities as a first-class citizen, which is a concept I haven't really explored before.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2021-10-11.

Index

What are some of the best open-source Game development projects in Rust? This list will help you:

Project Stars
1 bevy 10,935
2 Amethyst 7,546
3 egui 5,172
4 piston 3,926
5 ggez 3,058
6 RG3D 2,833
7 specs 1,952
8 rust-sdl2 1,765
9 Coffee 835
10 pixels 794
11 Pinky 647
12 Tetra 628
13 quilkin 611
14 message-io 605
15 rust-sfml 496
16 bitmapflow 350
17 shipyard 324
18 raylib-rs 322
19 kira 294
20 emerald 232
21 rust-sdl 174
22 Crayon 170
23 bevy_game_template 118
Find remote jobs at our new job board 99remotejobs.com. There are 34 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com