Game Programming All in One 
Bruno Miguel Teixeira de Sousa
Muska & Lipman/Premier-Trade
"The most asked question at any game development channel on the Internet is "How do I start game programming?" This book helps beginners get started and provides them with enough information to create their own games. It is a book that requires no previous experience with programming, but does assume a good understanding of computers. It begins by teaching the basics of C++ programming and covers basic program flow, statements, and functions. For Windows programming, it goes from the basics of creating a window to developing a complete game library using the latest DirectX version. For Windows programmers, it includes coverage of all the basic functionality of windows, menus, dialogs, icons, and some graphics. This all-encompassing book also provides coverage of DirectX, game design, and architecture, 2D game engines, game mathematics, data structures and algorithms, artificial intelligence, physics, particle systems and culminates with the entire development process of a 2D platform game."