Practical books on developing games in C ++?

Are there some books that teach game structure:

  • How to create a user interface, menu, game stream (for example: what happens when you go to the next stage of the game? What are the changes in the main loop?)

And also I would like to find books that really show a working, full game code / structure with an explanation, because most of the books I found contain only practical examples for each field (for example, how to use this function from the graphics engine ... How get the displayed object). I can’t find what actually has it all.

Preferred graphics engine.

+7
c ++
source share
2 answers

I think this is very important: first learn C ++, then game programming strictly after!

I have already expressed this opinion. I believe that what you can do worse is try to learn at the same time. Get a good C ++ book for beginners , then a good intermediate book, then run in a game programming book.

Here's what: many "experts" in this area, such as LaMothe, are not very good C ++ programmers. (In fact, many programmers are not very good C ++ programmers.) Although they, of course, know the general design of the game, if you try to learn C ++ while reading your books, you end up with terrible C ++ code without any or modern style. Old C ++ code for game programming is often C-c classes. This is not the way.

You are much better off learning proper C ++ and a good, modern style. Once you understand C ++, game programming is simply the application of this knowledge in a specific area. Then almost any book will do. (Because you will not stumble over understanding the code, but rather find out what it does.)

I can’t recommend any beginner books since I didn’t take any modern books (I didn’t have to.) I have old books from the type of author I mentioned, and I can say that I recommend. I have "Game Programming All In One" and I recommend that you do not. He spends the part of the book making up the CString class; this is what i'm talking about, just use std::string and continue your life.

I can recommend "Introduction to Game Development" as a good start to the game structure. This is not very rich code and is a little enthusiastic about design patterns (I hate design patterns, if the code was some kind of pattern that we just had to apply, we would not be here.), But this is a good start.

Once you have moved to the middle level, start simple. Ignore the idea of ​​getting a game loop in your first game: you have to do a text adventure. Then something is simple, like Pong, and then try to make your own 2D engine and remake Pong with this. * Then make more 2D games. And after that, use another mechanism to make a 3D Pong (Pong in terms of). Then make another simple 3D game. Then make your own engine and remake a 3D pong or some other simple game. * Then use someone else’s engine to make a more complex 3D game, then improve your engine and port this game and so on. This is how you learn game programming: trying to jump into 3D just bothers you.

But really, learn C ++ first!

* The goal of remaking the game in your own engine is to separate game programming from game engine programming. Never try to do both at the same time until you are very experienced. In the same way, you should separate your C ++ learning from game programming, separate your learning from game programming from programming a game engine.

+15
source share

There really is no such book. In general, any books that cover game development from a programming point of view cover low-level details of how to get things to appear on the screen, but not so much about the game stream or the specific task of creating a user interface.

The only books I read that come close are 3D games: real-time rendering and software technologies and C ++ Game programming: start to finish , and I can't recommend it from the heart.

+2
source share

All Articles