I'm interested in making my own game engine, even though I know there are many existing ones out there. I think it would be a fun project, and I want to create a simple game with it afterward. However, I have very little idea about how to get started. Any advice on what skills or knowledge I should focus on?
5 Answers
A good starting point is to create a game first. Don't worry about making an engine just yet; focus on making several simple games, like Tic-tac-toe or Pong. Once you've done that, look at the common elements in those games. An engine is just the shared pieces that help streamline creating more games!
The most important advice? If you just want to make games, stick with an existing engine! Building a game engine is complex and usually takes years. If you're determined to build one, prepare to learn some heavy stuff like linear algebra and graphics programming. Start small, maybe with Pong or Tetris. Once you're comfortable, you could move on to deeper concepts and libraries like OpenGL for rendering.
If you're looking for languages, you might want to try C++ with SFML or Rust with SDL. It can be challenging, but it really helps you understand low-level programming, memory management, and graphics. Start your journey with simple games to avoid getting overwhelmed; a proper game engine has tons of planning involved.
So you're saying I should focus on making reusable components in my game's code first?
Exactly! Think about what parts of your code could be useful in multiple games.
Brush up on your math skills. A good understanding of math is essential in game development and engine creation. It’ll go a long way in helping you understand the mechanics behind game engines and rendering!
I highly recommend checking out the book "Game Engine Architecture". It's a solid resource that covers a lot of the fundamental concepts you'll need to understand if you're serious about diving into engine development.

That's really good advice. I guess I should focus on understanding how games work first.