I am a self-taught high school programmer (have an internship at local university), and understand the fundamentals of C++ and other related languages. I am looking to expand into game development, and have found a good DirectX book from which I will study. However, what are some good resources (online tutorials/books/etc) for C++ game programming which are tailored towards someone who is already experienced with C++? Most of the resources I have found attempt to teach basic programming, then get into game development.
-
\$\begingroup\$ Game design is the non-technical side of game development - is that really what you mean to ask about? Or are you asking about game-specific programming tasks? \$\endgroup\$– KylotanJun 11, 2012 at 22:54
-
\$\begingroup\$ Sorry, I meant game programming. Thanks for correcting me. \$\endgroup\$– Shivam SarodiaJun 11, 2012 at 23:48
-
2\$\begingroup\$ Where to get started questions are off topic. See the FAQ about what kind of questions to ask here. \$\endgroup\$– HouseJun 12, 2012 at 0:24
3 Answers
There is a clear distinction between design and development. A game designer may have no programming skills, even though it would definitely be helpful.
Concerning game development, which I presume you're interested in, unfortunately there is no silver bullet. It's an issue that has been bothering me for a lot of time. It definitely depends on what you need to do, what you like and how much time you're prepared to invest in gamedev.
What I know is that the best way to learn how to code games is to actually code! There are two wonderful ways to achieve this:
- Start small, and try to build even simple types of games. Brickout and Pacman may sound trivial but they are an awful lot of work!
- Participate in a Libre/FOSS game project. Start studying the code, use paper to write down the basic architecture, and then delve in whatever part interests you most!
In addition, try not to re-invent the wheel and use popular/easy tools and algorithms, don't build everything from scratch, don't over-engineer, don't focus on performance or optimal design.
I'm sure you can find a lot of useful books here in Gamedev.SE and you can easily find interesting resources online.
You must also decide if you want to start with 2D or 3D game development. Of course, you can focus on tools or other parts of the game so graphics won't be an issue.
If you want to try something practical really fast, take a peek here: http://www.lazyfoo.net/SDL_tutorials/
Why don't you check some projects here?
- freegamer.blogspot.com
- planetrev.freegamedev.net
Fit in a big community in order to learn by studying and improving GOOD, WORKING CODE. Simply studying resources and algorithms won't get you too far, as you will soon lose interest.
For game design, i recommend one of my favourite books: The Art of Game Design: A book of lenses, a extremely enjoable reading.
For game programming i have spent some time with Game Coding Complete, Fourth Edition, and i think it is worth reading because t explores all the major subsystems of modern game engines.
I found Game Programming AI by Example to be a great reference for fundamental game development concepts. It covers game math, flocking, state machines, lua scripting, advanced data structures, and path finding.
-
\$\begingroup\$ I have this book and have not yet gotten around going through most of it. Glad to see someone else liked it! \$\endgroup\$ Jun 12, 2012 at 12:05