How I Chose a Programming Language for My GameDev Journey
If you're interested in programming games from scratch, you've probably agonized over how to get started.
You could use an existing tool, you could write everything from scratch, or you could do a little bit of both.
I really like the idea of programming everything by hand. Learning how to use an existing engine like Unity or Godot isn't easy. If you're going to invest hours upon hours into learning something, you may as well apply yourself to building something from scratch.
Choosing a Programming Language
When deciding on a language I knew I wanted the following:
- no garbage collection
- a simple language
- a simple toolchain
- online resources to help me learn game dev using that language
I considered the following languages:
- C
- Rust
- Odin
Each language has aspects that appeal to me.
What about C?
When you're learning it's really helpful to have an abundance of resources, and because C has been around forever, there are many examples of how to make games using C. My favorite resource, Handmade Hero, is a prime example.
I like writing C, and I believe I would really enjoy programming with it, but I would like to have a few more modern conveniences if possible.
Rust? not so much...
I really appreciate Rust's toolchain and learnings resources. I wrote Rust professionally for about 6 months when I was working on a Substrate-based blockchain, and all of these resources really helped me be productive.
But I'm sorry to say that I don't like Rust very much as a language. I found it very tedious to follow along with all the traits, type aliases, impls, etc. I like simplicity, and Rust is complex.
Couldn't I just write my own Rust code to be less complex? Of course, but Rust has one more thing I don't like -- ownership semantics.
Rust has a particular approach to memory management. It is A way to write code, not THE way. And while ownership semantics may work well in a lot of applications, I don't find the approach particularly compelling in a gamedev context.
Hello, Odin
I chose Odin for many reasons.
Odin is simple like C. The language is very practical and offers many useful features like array programming, slices, bit sets, and more.
Odin is fast and modern like Go, but it doesn't have a garbage collector. I want to get more experience with manual memory management, and using something like Go doesn't allow me to do that.
Odin offers officially-maintained bindings for helpful libraries like SDL2. Unlike the Rust bindings which are more "idiomatic", Odin's SDL2 bindings are identical to C, so any gamedev tutorials using C is easily translated to an Odin program.
Visit the official site for a full list of Odin vendor libraries.
And finally, as icing on the cake, I have been regularly impressed by the care and thoughfulness that has gone into the design of the language. This is true for C and Rust, too, of course, but I want to highlight that Ginger Bill has put a lot of thought and care into how Odin works. He has made a deliberate effort to create a language that is incredibly powerful but easy to learn, and fun to program with.
At the end of the day, I want to enjoy the language I'm using, and Odin certainly delivers.
Latest comments (31)
Patrick O'Dacre’s discussion on programming games by hand using Odin highlights the creativity and technical depth behind building games from scratch. Choosing the right programming language is often the foundation of any successful GameDev journey. Similarly, modern creators also rely on the right digital tools to share and showcase their work effectively. Platforms like vlogappnow.com empower users to create and edit engaging video content, making it easier for developers and gamers alike to document and share their creative processes with the world.
When learning game development, the choice of language plays a huge role in how smoothly you can build projects. While tools like Unity or Godot are powerful, many developers prefer starting from scratch with languages like C or Odin to get better control over memory and performance. If you’re also exploring lightweight tools for creativity and productivity, you might find useful resources at vlogappnow.com/ that can complement your gamedev journey.
I agree that having both simplicity and control makes a huge difference when you want to fully grasp what’s going on under the hood.
eally liked your breakdown on language choices for gamedev. I agree that having both simplicity and control makes a huge difference when you want to fully grasp what’s going on under the hood. Odin seems like a solid mix of low-level power and practical usability, especially with the SDL2 bindings you pointed out. On the gaming side, while you’re focusing on building from scratch, I’ve been spending some time on asphalt 8 mod apk more about fast-paced racing and thrilling gameplay than coding,
🚀 Game development is such an exciting field because it blends creativity, storytelling, and technology into one experience. A great example is how Bus Simulator Indonesia (BUSSID) evolved from a simple concept into a massive community-driven game. What makes it special is not just the gameplay, but the endless possibilities through mods, skins, and custom content — keeping players engaged for years. For anyone passionate about how mods can expand a game’s lifespan and make development more dynamic, I recommend checking out bussimindomodapk.site/
— it’s a hub that shows how a community can take a game to the next level. 🎮✨
Hey,
Programming games using Odin feels just as exciting as playing Shadow Fight 2 MOD APK at max level. Both involve creativity, strategy, and complete control over the experience. With Odin, you can build games from scratch, and with Shadow Fight 2 MOD APK, you enjoy the thrill of fully unlocked gameplay without limits. theshadowfight2.pro/
The HappyMod APK is an ideal choice for anyone seeking to download modded apps and games with ease. It provides a user-friendly platform that allows you to access premium features for free. With HappyMod APK, fun and customization are just a click away!
Summertime Saga Mod APK offers an enhanced version of the popular visual novel game, giving players access to unlocked content and premium features. With unlimited money and fully opened storylines, it allows for a smoother and more immersive experience. The latest version is optimized for Android devices, providing improved performance and rich, engaging gameplay.
If you want to try something new, I highly recommend the NA6 WhatsApp Apk. It’s full of exciting features that make it better than the original app!
Brilliant information here! Hopefully you wont stop the flow of such magical material! ΜΑΓΟΣ ΓΙΑ ΠΑΡΤΥ
Programming games manually with Odin is a true art of creating your own world, where every detail is under control. It is especially interesting to notice how even simple game mechanics can evoke emotions similar to those that arise when playing at sixty six casino on sixty6. In Sweepstakes, everything is built around the enjoyment of the process, without the pressure of betting or risk — exactly what inspires game development.
Some comments may only be visible to logged-in visitors. Sign in to view all comments.