I need a primer on courses for Rust Game Dev and Vulkan

This page summarizes the projects mentioned and recommended in the original post on /r/gamedev

Our great sponsors
  • InfluxDB - Access the most powerful time series database as a service
  • SonarQube - Static code analysis for 29 languages.
  • SaaSHub - Software Alternatives and Reviews
  • bevy

    A refreshingly simple data-driven game engine built in Rust

    After learning Rust and getting your feet wet with graphics programming, you'll find yourself at the chasm that exists between learning the absolute basics and being able to do actually useful things with the GPU. At this point, if you're liking Rust, I would recommend checking out Bevy engine. Clone the repo and build from source. Poke around, check out the rendering architecture, build a simple game, join the Discord. I know you're interested in starting "from scratch," but hear me out: Bevy is very early in development, which means 1) it's not that difficult to get acquainted with the codebase and get a very low-level overview of how a proper game engine is put together, and 2) building a game engine from scratch is so much work — wouldn't it be more productive (both for your own projects and for the larger indie dev community) to contribute to an open-source project that's very young but also has a ton of the necessary infrastructure already in place? It also means that you have the opportunity to learn from veteran engineers who actually know what they're doing. Game engines aren't just a lot of work, they're also really hard — it's not the type of thing you want to just figure out as you go, and definitely not the type of thing you're going to find step-by-step tutorials for online.

  • Fyrox

    3D and 2D game engine written in Rust

    I'm not a game dev, but three weeks ago I was trying to use Bevy, which is a game engine for Rust. Also, there is another game engine that I'm trying, Fyrox, and it has a book, like the Rust book.

  • InfluxDB

    Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.

  • LearnOpenGL

    Code repository of all OpenGL chapters from the book and its accompanying website https://learnopengl.com

    Start with OpenGL: https://learnopengl.com/ it requires all the same math and will teach you all the same graphics programming concepts that you'll need for Vulkan, but in much less time. Even though GL is "easy," your first 3 renderers will be absolutely terrible and each new project you start will be twice as well designed as the last. Even if you only spend 6 months with it, taking the time to learn GL first will result in a net less time to learn Vulkan, since the GL concepts will all carry right over. At the very least, get to the point of understanding MDI (glMultiDrawElementsIndirect()), as Vulkan's entire paradigm is basically centered around this concept.

  • wgpu

    Safe and portable GPU abstraction in Rust, implementing WebGPU API.

    If you really want to learn low-level graphics programming and Rust, I would recommend starting with WGPU instead of Vulkan. The Rust crates for Vulkan are either barebones, low-level bindings to the C libraries (which means they're not very idiomatic to Rust, thus not a great way to get started with Rust), or are different enough from the Vulkan API that you'll likely struggle to connect the dots between the two when you're reading the Vulkan docs. There's a pretty excellent tutorial series for Rust & WGPU floating around — I don't have the link off-hand, but Google should point you to it.

  • book

    The Rust Programming Language

    If you don't have prior experience with Rust, start with The Book. Trust me on this one — it is the way to get started with Rust, and it's not as tedious as you're probably thinking.

  • SonarQube

    Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts