I would like to learn C++ so I can get a job in the game industry, but there are so many options it a little confusing. I know most of you will say I should read up on C++ before attempting to program it but I learn best by doing things rather then reading. That being said I don't understand some of the thing suggested on other questions, because I've read a few trying to find whats right for me, so putting things in the simplest terms would be helpful. I've been making a couple of games 2d using gamemaker and if theres a C++ equivalent that would be perfect, but if not possible I would like an IDE that allows me to easily continue making 2d games, and is fairly simple to learn. Having a 2d sprite editor would be a nice plus but I can understand if its not every thing I want in one program
closed as not constructive by Arcane Engineer, jhocking, Josh Petrie♦, Darth Satan, Tetrad♦ Nov 3 '12 at 17:48
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance. If this question can be reworded to fit the rules in the help center, please edit the question.
I suggest that you start with Python instead of C++.
If you go the Python route you just start programming - it's a mature language, it's interpreted and widely used in the game industry.
You basically write code and run it. And modify and run it.
With C++, however, you write code, compile, fix errors, link, fix more errors and finally - if you're lucky - you run your program. Really a lot of extra complexity, even for the simplest of programs. You will not only have to fight the language itself, but also spend a lot of time on learning to use the development tools (IDE, etc.)
First you need to learn how to program - and not only that, but also algorithms, good software design, etc.
Python is a more direct and immediate way to program. Definitely more joyful than with C++.
You can learn C++ later, but in the meantime check out:
And then perhaps Panda3D or PythonOgre for 3D programming.
And, once you got some solid programming skills, you'd be ready to move to C++.
Python or Java is what you learn in introductory computer science classes. Sometimes it's C, but almost never C++. C++ is a powerful tool, I just can't recommend it as your first real programming language.
Python is also extremely well documented - just type help(object) into the Python shell. Another reason to go with Python. It's also the fastest growing language currently. ANd as of October 2012, Python ranks at position 8 in the TIOBE Programming Community Index.
I should suggest Cocos2d-x and Unity for you.
It is based on C++ (as you would like to learn C++). It is simple, easy to learn and has multi-platform support.
Cocos2d-x is a multi-platform 2D game engine in C++, based on cocos2d-iphone and licensed under MIT. Now this engine has been expanded to iOS, Android, Bada, BlackBerry, Marmalade and desktop operating systems like Linux, WindowsXP & Windows7.
If you want a better IDE and everything in one program, then i should suggest Unity.
Unity is a cross platform game engine and IDE developed by Unity Technologies, targeting web plugins, desktop platforms and mobile devices.