Our great sponsors
-
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.
-
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.
-
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.
-
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.