Want to Learn C++ by Building My Own Game Engine – Where Should I Start?
I'm planning to learn C++ with the long-term goal of making games, but I'm not interested in using a full game engine like Unity or Godot. My ideal goal is either:
- Building my own game engine from scratch, or
- Using lightweight C++ libraries/frameworks that handle things like window creation, input, audio, etc., while I build the engine and game logic myself.
I'm still pretty new to programming. I have around 5–7 months of experience with Java from a while ago, where I made a small game, but I relied on AI too much and never really learned the language deeply. This time I want to actually understand what I'm doing.
A few questions:
- Is building my own engine a reasonable goal for someone learning C++, or should I start with libraries/frameworks first?
- Which C++ libraries/frameworks would you recommend for someone who wants to learn how engines work instead of hiding everything behind a full engine? (I've heard names like SDL2, SFML, raylib, GLFW, BGFX, Ogre, etc., but I'm not sure what each is for.)
- What would a good learning roadmap look like if my end goal is making a 3D indie game and understanding how everything works under the hood?
- Are there any books, courses, or YouTube channels you'd recommend that teach modern C++ with game development in mind?
I'm looking to learn the "right" way, even if it takes longer, rather than the fastest way to get a game on the screen.
Posted Jul 9, 2026, 7:55 PM UTC
1223