Sams Teach Yourself Game Programming in 24 Hours
||Author: Michael Morrison|
List Price: $29.99
Our Price: Click to see the latest and low price
Publisher: SAMS (24 December, 2002)
Sales Rank: 44,174
Average Customer Rating: 3.67 out of 5
Customer ReviewsRating: 4 out of 5
Code to perform the most common game operations
Many years ago, after I purchased my TRS-80, I did what so many budding programmers did, I purchased some games and then tried my hand at writing my own. In the subsequent years, the conversations that I have had with many other programmers has revolved around their first attempts to write games. In fact, a solid argument can be made that for many people of that era, the first "large" programs that they wrote were games. Any attempt to write a game requires the use of most of what we do in programming. Topics such as file handling, sophisticated graphics, advanced data handling and complex decision making are all necessary to a good game. In this book Morrison covers all of those areas, as he steps you through the construction of several games.
The coverage of what is needed for game development is complete, and all of the code is available on CD, which is fortunate, because there is a lot of it. The language is C++, specifically Microsoft Visual C++ and
Borland C++ builder version 6. Code for the games in both versions is included on the CD. Borland C++ builder version 5.5 complete and a trial copy of version 6 are also on the CD for those who lack access to a suitable compiler. While I consider the language choice to be fine, it will pose a problem for those with limited exposure to their structures.
By necessity, Morrison is forced to spend the bulk of his allotted ink in explaining the programming of the games. Therefore, anyone unfamiliar with object-oriented programming or how these two versions of C++ are structured will find it difficult to follow the code. This is not to say that it cannot be understood, just that limited exposure to these versions of C++ will probably require that you consult another resource.
If you have a background in these versions of C++, then let the games begin. Morrison gives you a solid background in what is an excellent way to learn the fundamentals of programming, how to develop and organize a complex program and how to have fun while doing it.
Rating: 3 out of 5
Interestingly Useless and yet Good
Let me first start by stating that I am only interested in games design as it relates to DirectX. I believe that as I embark on making games, DirectX will be the only tool that can help me create commercial quality games.
I had been hard pressed for a couple of weeks to find ANY information in or out of books on 2D game programming with directX. I was excited by this book, though mildly worried that it didn't say anywhere that it incorporated DirectX. I bought it anyway, and after an hour of looking through it discovered that the author avoided DirectX because of the "steep" learning curve.
I currently hate this book. Its a waste because, while two years ago before I even knew what a graphics library was, this kind of book would have interested me. I've already had experience in game design with pre-built engines and so I wanted to create my own engine and use it to finish a game. This book won't help me do that. At least not a high quality game. Its an interesting read for anyone completely new to games programming, but not for anyone aspiring to create even a high quality 2d game.
This book still gets three stars because it was really my fault for not knowing that it didn't use DirectX. Its well written, and covers its subject matter pretty well. I think that the author fails to realize that probably most programmers will understand the value of DirectX and will probably pass this book up for a similar one on DirectX.
I can say at this point that 2D game programming with DirectX is such a sought after subject for a book or online tutorial for me that I'd pay a hundred dollars for said book. Actually before writing this review I did see another Sam's book with the same name + "with DirectX" so I guess I'll be checking that out.
I do have this to say in closing. This will be the first time that Sam's has disappointed me. And only because I didn't spend enough time to discover the book's entire content. Also, I am 17 and I still feel that this book is too useless to be the kind of help I'd hoped it would be. I needs my DirectX and so I probably won't even start reading this book. However, I have nothing but praise for books like Sam's Teach Yourself C++ in 10 Minutes. If you want to learn C++ then check that delicious bit of literary goodness. That's all.
Rating: 4 out of 5
Great introductory books
I have a passion about games. That's why I studied computer science, and I finally decided to dedicate all my free time to start learning how to program games. So I bought Teach yourself game programming in 24 hours by Michael Morrison. Let me tell you, I was surprisingly pleased, and didn't want the book to end.
To start with, this book is not for complete newbies into the C++ language but it shouldn't be. I hate a game book that spends half of its pages teaching you how to program C++. If I wanted that, I'd go back to school and take another C++ course. It also doesn't throw all the theory and math on you like some gaming books out there that are better left for writing a PHD thesis. No, this one is easy enough to follow but also assumes you already have working knowledge of C++. It digs into building a game engine from the ground up, and uses all that knowledge to build gradually more fun and interesting 2D games. It really opened my eyes to many little new tricks I can use to build my own games like the sprite manager and animation. If you guys can't compile the games, I think you still need to have better knowledge of C++ before you tackle this one. I had no problems compiling all the programs using Microsoft Visual C++ 6.0, and although there was a problem or two (due to the fact that the book was written in 2002 and some windows functions used in the book have changed since MSVC++ 6.0), I still found a way to fix them and get them to work. Now why didn't I give it the 5 shining stars then?
Well, first of all it is a 2D book, and it does not use DirectX. So we can use it to build primitive games, but come on, how many companies out there don't use DirectX. Like for example, there is no maximize button in all the windows the book creates, because then the different resolutions can mess up the game. That's where directx comes to your help. Also the sound libraries used are very primitive. PlaySound is not useful in mixing 2 sounds at the same time, and there were some games in the book that sounded weird because of that.
The other thing I didn't like about the book was how the text had lots of bugs in it. Like the text does not actually map one to one to the code on the CDs. But if you are not picky and a little alert, it's not a big deal. Anyway, a couple of emails to the publisher and a 2nd edition will fix that.
My final pet peave was that in so many cases, I was begging that the author would go in detail about the subject, but he would say, "this is too complex, but what I'm providing you is very good". I want some of that complex stuff too. Like I wanna know how a scrolling background works (Many adventure games use it like "Broken Sword"). My knowledge is not complete without it.
But overall, I think the book taught me many new things I didn't know, and although I won't be able to go write a commercial game out there by just reading this book, I can really put that knowledge with the knowledge from more advanced books to use.
I hope Michael Morrison will consider writing a DirectX book version of the Game Programming book, with 3D graphics, and the more "complex" stuff which were missed in this one. Even if the book costs double this one, I'll be the first to buy it.
· C++ for Game Programmers (Game Development Series)
· Tricks of the Windows Game Programming Gurus (2nd Edition)
· Windows Game Programming for Dummies, Second Edition
· Game Coding Complete
· Sams Teach Yourself Game Programming with DirectX in 21 Days