I want to learn C++ for game development. Does anyone know a good way to learn this? It can be with books, tutorials, anything. I would also like to know what is a good engine to start with?
thanks you :)
closed as not a real question by Tetrad♦ Jan 8 '12 at 19:14
It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.If this question can be reworded to fit the rules in the help center, please edit the question.
If you understand programming and just want to learn C++ then i'd recommend Thinking in C++ by Bruce Eckel, it'll teach you everything that you want to know about modern C++ in an easy to understand fashion with the emphasis on Object Oriented programming from the beginning, which is essential for creating even small games like Tetris. This book is availible for free on the author's site. However if you don't know anything about programming, then this book won't help you.
After you understand C++ there are still alot of books that'll expand your knowledge.
C++ For Game Programmers by Noel Llopis comes to mind. This books covers alot of core knowledge that any programmer will need like using inheritance, but does it in the context of games. It has alot of problem solving, information about what's under the hood, performance issues associated with using language's features and how to deal with them. Noel has his own blog, you can follow it here.
Effective C++ and More Effective C++ by Scott Meyers, two advanced books. They're more of a guidance to becomming a better programmer than an organized repository. Read them after you're comfortable with C++.
As for engines, SFML comes to mind, it's very easy to use IF you know the language.
So you're interested in learning the language? Then one of these two books might be a good place to start depending on your current level.
Beginner Level (Never used C++ / Never programmed a game)
Simple introduction to both C++ and making games. Starts from zero and introduces language features in the context of simple games. A warning though, all examples are text based and focused on the game logic, so there are no graphics covered in the book.
Intermediate Level (Knows C++ / Doesn't know how to use it efficiently for games)
This one is excellent if you already know the basics of the language, but don't know the tricks and best practices of how to apply it to game programming. Once again, it's all about increasing your proficiency with the language, not a tutorial of how to make a game.
The books above are both centered around game development. But it's also possible to learn the language first, and only then start thinking about how to apply it to games. In that case my recommendations change into the following two books, respectively for the beginner and intermediate programmer:
game development is not really bound to any programming language. There are certain techniques that you need to learn, wether that is in c++ or any other language is irrelevant.
Back to the point, I'm learning c++ myself right now and these tutorials are incredibly helpful for understanding the basics.