├── LICENSE └── README.md /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 Night's Watch Games 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # awesome-rust-gamedev 2 | A collection about rust gamedev resources. PRs welcome. 3 | 4 | ## Table of contents 5 | - [General](#general) 6 | - [Rust Programming](#rust-programming) 7 | - [Game Engines](#game-engines) 8 | - [Graphics](#graphics) 9 | - [Physics](#physics) 10 | - [Games](#games) 11 | - [Bevy Engine](#bevy-engine) 12 | - [Books](#books) 13 | - [Tutorials](#tutorials) 14 | - [Ecosystem](#ecosystem) 15 | - [Communities](#communities) 16 | - [Games](#games-1) 17 | - [Other Awesome Lists](#other-awesome-lists) 18 | 19 | ## General 20 | - [Are we game yet?](https://arewegameyet.rs/): This site tracks the state of the ecosystem for Game Development in Rust. 21 | - [Rust GameDev WG](https://gamedev.rs/): Official Rust game development working group blog site. 22 | 23 | ## Rust Programming 24 | - [Official Book](https://doc.rust-lang.org/book/) ![stars](https://img.shields.io/github/stars/rust-lang/book) ([rust book with quizzes](https://rust-book.cs.brown.edu/)) 25 | - [google/comprehensive-rust](https://github.com/google/comprehensive-rust): This is the Rust course used by the Android team at Google. ![stars](https://img.shields.io/github/stars/google/comprehensive-rust) 26 | - [[Chinese] Rust语言圣经](https://course.rs/about-book.html) ![stars](https://img.shields.io/github/stars/sunface/rust-course) 27 | - [Cheat Sheet](https://github.com/ralfbiedert/cheats.rs/): A single-page Rust resource for people who like high information density. ![stars](https://img.shields.io/github/stars/ralfbiedert/cheats.rs) 28 | - [Aysnc Book](https://rust-lang.github.io/async-book/): Asynchronous Programming in Rust. ![stars](https://img.shields.io/github/stars/rust-lang/async-book) 29 | - [The Nomicon](https://doc.rust-lang.org/nomicon/): The Dark Arts of Advanced and Unsafe Rust Programming. ![stars](https://img.shields.io/github/stars/rust-lang/nomicon) 30 | 31 | ## Game Engines 32 | - [bevy](https://github.com/bevyengine/bevy): A refreshingly simple data-driven game engine built in Rust. ![stars](https://img.shields.io/github/stars/bevyengine/bevy) ![crates.io version](https://img.shields.io/crates/v/bevy.svg) ![crates.io downloads](https://img.shields.io/crates/d/bevy.svg) 33 | - [fyrox](https://github.com/FyroxEngine/Fyrox): A feature-rich, production-ready, general purpose 2D/3D game engine written in Rust with a scene editor. ![stars](https://img.shields.io/github/stars/FyroxEngine/Fyrox) ![crates.io version](https://img.shields.io/crates/v/fyrox.svg) ![crates.io downloads](https://img.shields.io/crates/d/fyrox.svg) 34 | - [piston](https://github.com/PistonDevelopers/piston): A modular game engine written in Rust. ![stars](https://img.shields.io/github/stars/PistonDevelopers/piston) ![crates.io version](https://img.shields.io/crates/v/piston.svg) ![crates.io downloads](https://img.shields.io/crates/d/piston.svg) 35 | - [godot-rust](https://github.com/godot-rust/gdnative): Rust bindings for Godot 3. ![stars](https://img.shields.io/github/stars/godot-rust/gdnative) ![crates.io version](https://img.shields.io/crates/v/gdnative.svg) ![crates.io downloads](https://img.shields.io/crates/d/gdnative.svg) 36 | - [ggez](https://github.com/ggez/ggez): Rust library to create a Good Game Easily. ![stars](https://img.shields.io/github/stars/ggez/ggez) ![crates.io version](https://img.shields.io/crates/v/ggez.svg) ![crates.io downloads](https://img.shields.io/crates/d/ggez.svg) 37 | - [Ambient](https://github.com/AmbientRun/Ambient): The multiplayer game engine. ![stars](https://img.shields.io/github/stars/AmbientRun/Ambient) ![crates.io version](https://img.shields.io/crates/v/ambient_api.svg) ![crates.io downloads](https://img.shields.io/crates/d/ambient_api.svg) 38 | 39 | ## Graphics 40 | - [wgpu](https://github.com/gfx-rs/wgpu): Safe and portable GPU abstraction in Rust, implementing WebGPU API. ![stars](https://img.shields.io/github/stars/gfx-rs/wgpu) ![crates.io version](https://img.shields.io/crates/v/wgpu.svg) ![crates.io downloads](https://img.shields.io/crates/d/wgpu.svg) 41 | - [vulkano](https://github.com/vulkano-rs/vulkano): Safe and rich Rust wrapper around the Vulkan API. ![stars](https://img.shields.io/github/stars/vulkano-rs/vulkano) ![crates.io version](https://img.shields.io/crates/v/vulkano.svg) ![crates.io downloads](https://img.shields.io/crates/d/vulkano.svg) 42 | - [rust-gpu](https://github.com/EmbarkStudios/rust-gpu): Making Rust a first-class language and ecosystem for GPU shaders. ![stars](https://img.shields.io/github/stars/EmbarkStudios/rust-gpu) 43 | - [lyon](https://github.com/nical/lyon): 2D graphics rendering on the GPU in rust using path tessellation. ![stars](https://img.shields.io/github/stars/nical/lyon) ![crates.io version](https://img.shields.io/crates/v/lyon.svg) ![crates.io downloads](https://img.shields.io/crates/d/lyon.svg) 44 | 45 | learning materials 46 | - [learn-wgpu](https://sotrh.github.io/learn-wgpu/): Guide for using gfx-rs's wgpu library. ![stars](https://img.shields.io/github/stars/sotrh/learn-wgpu) 47 | - [tour-of-wgsl](https://github.com/google/tour-of-wgsl): This repo contains a simple tour of WGSL static site generator. The purpose is to provide an introduction to WGSL through examples which can be modified and run by the user. ![stars](https://img.shields.io/github/stars/google/tour-of-wgsl) 48 | - [webgpufundamentals](https://github.com/webgpu/webgpufundamentals): This is a series of lessons or tutorials about webgpu. ![stars](https://img.shields.io/github/stars/webgpu/webgpufundamentals) 49 | 50 | ## Physics 51 | - [rapier](https://github.com/dimforge/rapier): Rapier is a set of 2D and 3D physics engines for games, animation, and robotics. ![stars](https://img.shields.io/github/stars/dimforge/rapier) ![crates.io version](https://img.shields.io/crates/v/rapier3d.svg) ![crates.io downloads](https://img.shields.io/crates/d/rapier3d.svg) 52 | - [bevy_xpbd](https://github.com/Jondolf/bevy_xpbd): 2D and 3D physics engine based on Extended Position Based Dynamics for Bevy. ![stars](https://img.shields.io/github/stars/Jondolf/bevy_xpbd) ![crates.io version](https://img.shields.io/crates/v/bevy_xpbd_2d.svg) ![crates.io downloads](https://img.shields.io/crates/d/bevy_xpbd_2d.svg) 53 | 54 | ## Games 55 | - [veloren](https://github.com/veloren/veloren): An open world, open source voxel RPG inspired by Dwarf Fortress and Cube World. ![stars](https://img.shields.io/github/stars/veloren/veloren) 56 | - [jumpy](https://github.com/fishfolk/jumpy): Tactical 2D shooter in fishy pixels style. Made with Rust-lang and Bevy. ![stars](https://img.shields.io/github/stars/fishfolk/jumpy) 57 | 58 | ## Bevy Engine 59 | ### Books 60 | - [official book](https://bevyengine.org/learn/book/introduction/) 61 | - [bevy-cheatbook](https://bevy-cheatbook.github.io/): This is a reference-style book for the Bevy game engine. ![stars](https://img.shields.io/github/stars/bevy-cheatbook/bevy-cheatbook) 62 | - [taintedcoders.com](https://taintedcoders.com/) 63 | - [Bevy Developer Network @ HackMD](https://hackmd.io/@bevy): An unoffical community effort to document and explain bevy's design choices. 64 | 65 | ### Tutorials 66 | - [Official examples](https://github.com/bevyengine/bevy/tree/latest/examples#examples) 67 | - [Creating a Snake Clone in Rust, with Bevy](https://mbuffett.com/posts/bevy-snake-tutorial/) 68 | - [Platformer in Bevy](https://youtube.com/playlist?list=PL6uRoaCCw7GMujF_6PtzvkrZBlB_ZKWyZ) 69 | - [Extreme Bevy: Making a p2p web game with rust and rollback netcode](https://johanhelsing.studio/posts/extreme-bevy) 70 | 71 | ### Ecosystem 72 | | Category | Popular Plugins | 73 | | ---------| --------------- | 74 | | UI | [bevy_egui](https://github.com/mvlabat/bevy_egui): This crate provides a Egui integration for the Bevy game engine. ![stars](https://img.shields.io/github/stars/mvlabat/bevy_egui) ![crates.io version](https://img.shields.io/crates/v/bevy_egui.svg) ![crates.io downloads](https://img.shields.io/crates/d/bevy_egui.svg)
| 75 | | Physical | [bevy_rapier](https://github.com/dimforge/bevy_rapier): 2D and 3D physics engines for the Bevy game engine. ![stars](https://img.shields.io/github/stars/dimforge/bevy_rapier) ![crates.io version](https://img.shields.io/crates/v/bevy_rapier2d.svg) ![crates.io downloads](https://img.shields.io/crates/d/bevy_rapier2d.svg)
[bevy_xpbd](https://github.com/Jondolf/bevy_xpbd): 2D and 3D physics engine based on Extended Position Based Dynamics for Bevy. ![stars](https://img.shields.io/github/stars/Jondolf/bevy_xpbd) ![crates.io version](https://img.shields.io/crates/v/bevy_xpbd_2d.svg) ![crates.io downloads](https://img.shields.io/crates/d/bevy_xpbd_2d.svg) | 76 | | Animation | [bevy_tweening](https://github.com/djeedai/bevy_tweening): Tweening animation plugin. ![stars](https://img.shields.io/github/stars/djeedai/bevy_tweening) ![crates.io version](https://img.shields.io/crates/v/bevy_tweening.svg) ![crates.io downloads](https://img.shields.io/crates/d/bevy_tweening.svg) | 77 | | Networking | [bevy_renet](https://github.com/lucaspoffo/renet/tree/master/bevy_renet): A network crate for Server/Client with cryptographically secure authentication and encypted packets. ![stars](https://img.shields.io/github/stars/lucaspoffo/renet) ![crates.io version](https://img.shields.io/crates/v/bevy_renet.svg) ![crates.io downloads](https://img.shields.io/crates/d/bevy_renet.svg)
[bevy_ggrs](https://github.com/gschup/bevy_ggrs): GGRS P2P rollback networking library. ![stars](https://img.shields.io/github/stars/gschup/bevy_ggrs) ![crates.io version](https://img.shields.io/crates/v/bevy_ggrs.svg) ![crates.io downloads](https://img.shields.io/crates/d/bevy_ggrs.svg) | 78 | | Input | [leafwing-input-manager](https://github.com/leafwing-studios/leafwing-input-manager): A straightforward stateful input manager. ![stars](https://img.shields.io/github/stars/leafwing-studios/leafwing-input-manager) ![crates.io version](https://img.shields.io/crates/v/leafwing-input-manager.svg) ![crates.io downloads](https://img.shields.io/crates/d/leafwing-input-manager.svg) | 79 | | Camera | [smooth-bevy-cameras](https://github.com/bonsairobo/smooth-bevy-cameras): Bevy camera controllers with buttery, exponential smoothing. ![stars](https://img.shields.io/github/stars/bonsairobo/smooth-bevy-cameras) ![crates.io version](https://img.shields.io/crates/v/leafwing-input-manager.svg) ![crates.io downloads](https://img.shields.io/crates/d/leafwing-input-manager.svg) | 80 | | Tilemap | [bevy_ecs_tilemap](https://github.com/StarArawn/bevy_ecs_tilemap): A tilemap rendering crate for bevy which is more ECS friendly. ![stars](https://img.shields.io/github/stars/StarArawn/bevy_ecs_tilemap) ![crates.io version](https://img.shields.io/crates/v/bevy_ecs_tilemap.svg) ![crates.io downloads](https://img.shields.io/crates/d/bevy_ecs_tilemap.svg)
[bevy_ecs_ldtk](https://github.com/Trouv/bevy_ecs_ldtk): ECS-friendly ldtk plugin for bevy, leveraging bevy_ecs_tilemap. ![stars](https://img.shields.io/github/stars/Trouv/bevy_ecs_ldtk) ![crates.io version](https://img.shields.io/crates/v/bevy_ecs_ldtk.svg) ![crates.io downloads](https://img.shields.io/crates/d/bevy_ecs_ldtk.svg) | 81 | | Particle | [bevy_hanabi](https://github.com/djeedai/bevy_hanabi): A GPU particle system plugin. ![stars](https://img.shields.io/github/stars/djeedai/bevy_hanabi) ![crates.io version](https://img.shields.io/crates/v/bevy_hanabi.svg) ![crates.io downloads](https://img.shields.io/crates/d/bevy_hanabi.svg)| 82 | | Editor Tool | [bevy-inspector-egui](https://github.com/jakobhellermann/bevy-inspector-egui): Inspector plugin for the bevy game engine. ![stars](https://img.shields.io/github/stars/jakobhellermann/bevy-inspector-egui) ![crates.io version](https://img.shields.io/crates/v/bevy-inspector-egui.svg) ![crates.io downloads](https://img.shields.io/crates/d/bevy-inspector-egui.svg) | 83 | 84 | ### Communities 85 | - [Discord](https://discord.gg/bevy) 86 | - [Github Discussions](https://github.com/bevyengine/bevy/discussions) 87 | - [Reddit](https://www.reddit.com/r/bevy) 88 | ### Games 89 | - [Bevy Jam #3 Submissions](https://itch.io/jam/bevy-jam-3/entries) 90 | - [Bevy Jam #2 Submissions](https://itch.io/jam/bevy-jam-2/entries) 91 | - [Games in Bevy Assets](https://bevyengine.org/assets/#games) 92 | - [Cargo Space](https://johanhelsing.studio/cargospace): A coop 2d space game where you build a ship and fly it through space looking for new parts, fighting pirates and the environment. 93 | - [Tunnet](https://store.steampowered.com/app/2286390/Tunnet/): Build, debug and optimize a computer network in an underground facility. 94 | - [Molecoole](https://store.steampowered.com/app/1792170/Molecoole/): An action shooter roguelike. 95 | - [Tiny Glade](https://store.steampowered.com/app/2198150/Tiny_Glade/): A small relaxing game about doodling castles. 96 | - [Roids](https://store.steampowered.com/app/2248000/Roids/): A PVE mining and survival game in space. 97 | - [Hytopia](https://hytopia.com/): A collaborative and independent video game. 98 | - [Time of Progress](https://store.steampowered.com/app/2628450/Times_of_Progress/): A City Builder set during the Industrial Revolution. 99 | - [Zoolitaire](https://apps.apple.com/us/app/zoolitaire/id6479218498): Based on the family favorite board game: Peg Solitaire but with cute zoo animals and many different levels and scenarios to challenge young and old. 100 | - [GLOW](https://store.steampowered.com/app/2896110/GLOW/): GLOW is an addictive physics-based arcade game that will challenge you to your limits. 101 | 102 | ## Other Awesome Lists 103 | - [awesome-gamedev](https://github.com/Calinou/awesome-gamedev): A collection of free software and free culture resources for making amazing games. 104 | - [awesome-learn-gamedev](https://github.com/notpresident35/awesome-learn-gamedev): A curated collection of game development learning resources. 105 | - [games](https://github.com/leereilly/games): A list of popular/awesome video games, add-ons, maps, etc. hosted on GitHub. Any genre. Any platform. Any engine. 106 | - [awesome-one-person-games](https://github.com/Yonaba/awesome-one-person-games): A curated list of successul games, made (quite) entirely by a lone gamedev. 107 | - [magictools](https://github.com/ellisonleao/magictools): A list of Game Development resources to make magic happen. 108 | - [GameNetworkingResources](https://github.com/ThusSpokeNomad/GameNetworkingResources): A Curated List of Game Network Programming Resources. 109 | - [awesome-rust](https://github.com/rust-unofficial/awesome-rust): A curated list of Rust code and resources. 110 | --------------------------------------------------------------------------------