on October 10, 2002
I love this book. I've been trying to learn game programming for a couple of years now and until now have been beating my head against the wall. This book is like a cook book. It's not just a lot of theory and neat ideas thrown together, it really walks you through the process of creating a game. This book is for beginners and people like me who learn by doing. I can decipher the other books I have now that I've gone through this one. I look forward to Volume II, I can't wait.
The CD on the book also contains some good ebooks and other useful information. One of the ebooks is on the basic principles of 3D and some rendering algorithms the other is pretty good book about setting-up and using Direct 3D, however, it appears that it is DirectX 6 or 7, not version 8. The CD also contains trial software for game programming.
I recommend you know C/C++ before you try this book. I've only had a couple of semesters of programming in college and it seems to be enough to understand the book.
Thank you Andre LaMothe, someone needed to write this book.
on July 13, 2002
I've been programming using C for several years, mostly for business, and have recently wanted to get into game programming. I wasn't sure where to start (at all), and there must be a few dozen books on the subject. After flipping through some of them, I came across this one-- I couldn't believe it!! All of the others just jump right in and throw tons of Directx and whatnot at you, seemingly assuming you already know all of the basics of Windows and game programming. Andre, however, starts off assuming you know almost nothing (except a bit of C, but there's even a C/C++ tutorial in the back!) and teaches you everything, from basic Windows programming, to setting up a game engine, game logic, all of the basic math you'd need to know, DirectX, bitmap graphics, artificial intelligence, sound, input....totally unreal. I didn't think you could get it all into one book!
The best part of the book as a whole is, Andre' goes into the gritty details and behind-the-scenes operations of every little step and programming function that goes into 2D and 3D video games. It seems that other game programming books just show you tons of code with brief explanations of what the code does-- very confusing. Andre, on the other hand, is clear and specific (and has a great sense of humor!)
So if you're looking for a game programming book that starts basic then digs way, way deep and covers ALL bases, this is the one for you!! Thanks again, Andre.
on July 13, 2002
About time someone wrote a book to cover new topics like the new DirectX 8 Graphics in plain english and AI, among other things..
Lamothe's book helped me take my programming beyond the PC to do the coolest things. I have never seen anyone explain AI in a game book, his coverage is extremely deep, and very practical, eventhough his coverage of esoteric topics like NNs is small, his coverage of fuzzy logic has got me thinking of completely new ways to do things.
Great going, Andre Lamothe, keep things great books coming!! Shame on people who want to knock you for making money on a book. You deserve it, I for one would not have the attention span to write a 500+ page book.
Finally, whoever the immature boyz that wrote those useless reviews are, its obvious you haven't read the book or looked at the CD, on the CD there are 2 complete 3D ebooks on Direct3D, and general 3D, the general 3D book is Excellent, the Direct3D book is fair, but all in all no where will you find this much information, and this much value.
on October 20, 2003
I want to start this review off with a warning: this book does not teach you programming! Unless you already have an intermediate knowledge of C or C++, this book is not for you. What this book does is teach you the fundamentals of game programming. It explains just enough of the Win32 API and DirectX to get you started in making 2D (or text) games. The majority of the book is explaining exactly how 2D game programming works and the process that you must go through. As you progress through the book, you build a 2D rendering engine that you can use as a platform to build off of. As a C++ programmer, I will be starting from scratch (since 99% of his code is C, but he admits to this). The AI and physics sections are extremely well done and useful. There are a few minor issues I have with this book, but nothing that would reduce it's score. 1) The book uses DirectDraw7 (not DirectGraphics which is the newest DirectX API). But you're not doing extremely fancy things, and this book never claimed to be a DirectX guide in the first place. 2) There are many places where C++ would make things a lot cleaner. He admits this to the reader himself. Again, this is not a programming book, and C is the author's natural language, so if you have problems then deal with it. Other than that, this book is great. I'd recommend it to anyone looking to get a foundation in game programming!
on May 18, 2003
I find few technical books out there that hits the mark of their intended audience, and fewer still that hooks the reader for most of the entire book.
So, I was surprised that this book is both. It is intended for the complete novice to an intermediate developer who wants to learn more. Anybody who has no experience in game programming can pick up this book and be knowledgeable after reading it. You only need a knowledge of C to begin with. (Java, C++ or C# are fine too.)
So now you think you got a good book even if you don't know anything about game programming? Well, that's not the whole of it. The author's writing style, sprinkled with jokes, is so smooth, it will help you get through even the toughest technical lessons in the book. I finished reading 3 chapters on COM and DirectX and I couldn't believe I understood them at first reading. ^_^
In short, this is the most worthwhile and easiest read I've had in a while from a technical book.
on December 30, 2004
I highly recommend Tricks of the Windows Programming Gurus, 2nd Edition, both for its clear and comprehensive content, and for the amazing responsiveness of its author, Andre' LaMothe.
As context for the comments below, here at TechnoFrolics, we do not develop games, but rather, kinetic science-artworks and interactive educational science exhibits. What we were looking for was a book that provided information on Windows overall design, its API, and its extensions, as related to developing fluid, real-time graphics environments with near instantaneous (in the scale of human perception) response to user input. These issues are very similar to those encountered developing a computer game.
Mr. LaMothe's book is well written and easy to follow, very comprehensive, has good example code (a CD is included), and is organized in a manner that readily allows finding the pieces you need (for example, information on Direct X, the Windows event loop, etc.). The book does not assume extensive prior knowledge, starting with basic Windows programming, yet also gets into enough detail to be useful to experienced programmers. It addresses topics on various levels of complexity and abstraction, and describes both general structures and specific implementations.
Overall, the book educates without giving one a huge headache (a distressingly rare quality), and we have found it extremely helpful in our work.
Quite separate from his book, Mr. LaMothe is himself a fantastically helpful and friendly resource. Because of our unfamiliarity with the game industry, as well as subtle differences between our applications and typical games, we had several questions ranging from the simple to the complex. Mr. LaMothe responded to our email queries with a speed and attentiveness quite extraordinary.
How many books (technical or otherwise) come with personal assistance from their author?
Finally, if you are interested in the hardware as well as the software of dedicated game platforms, while we have not ourselves used the system and thus cannot comment on it in detail, you may wish to check out Mr. LaMothe's XGameStation Micro Edition development kit at [...] Assuming it is of the same quality as his book, it is virtually guaranteed to provide a high quality learning experience.
on July 7, 2002
First off, I would like to thank Andre for writing another "excellent" book. To the previous reviewer I'd like to say one simple thing. This book is not targetted towards experience game programmers, which you tried very hard appear that way. It is meant for newbie game programmers, like myself, that have a little programming experience. I don't know about you, but Andre is an excellent writer with more experience in the field that you will ever obtain in 2 lifetimes. I for one find his commentary amusing and funny, very much so breaking away from the boring page to page jargon most technical writers tend to give. It is true that he has many different books out on the subject, yet almost all of them contain new information on various subjects. This book, Tricks of the Windows Game Programming Gurus Second Edition, is a remarkable book, and I'm only through half of it! Andre keeps the pages turning with excellent examples and only he could break a program up to make it this easy to understand. The information and software on the CD was worth my [money]. Next time you go to post a review on such an acclaimed programmer and writer, stop for a second and read the introduction, which can usually be found online, which clearly states this book is for those new to game programming and for the advanced (being used as a reference). Before I end my ranting, I'd just like to say thanks to Andre for writing this book.
on September 12, 2004
I was a little weary of giving this piece a five-star rating but I think it duly deserves it. LaMothe has taken a very large topic, Game Programming, and elegantly explained the core workings of a game engine, programmed in C (some C++) based in a graphic environment (Windows).
This book is by no means "exhaustive" on the topics of game programming, (If you want to understand 3d game engine rasterization, try his second volume in this series), however, if you feel as though you want to know how a game engine is designed from the ground up with virtually nothing more than a window and some directx interfaces, then this might be your book.
The Book's Strengths:
- Well written & casual
- Deep, meaningful explanations of function calls & mathematics
- Well structured game engine architecture
- Excellent coverage of advanced physics (more mathematics) & how they are converted directly into EFFICIENT algorithms
- Code is easy to read (READ THE CODE, NOT JUST THE BOOK!)
I would like to note that this book is worth it's source code's weight in gold IN MY OPINION. I read the first eight chapters and felt lost... but when I just reviewed every example in the source I had been reading about, I started to understand and now everything makes sense! If you want to know even more, make sure you have the MSDN (at msdn.com) open in a browser somewhere for quick reference.
THE BOOK'S SHORTCOMING'S:
(this is what you all want to know right?)
*- excessive descriptions of inefficient algorithms FIRST, then moving into how the efficient algorithms were resolved.
- some code lines (maybe 12 in the whole book) don't match up correctly with the disc source (This isn't a problem if you use just the source on the disc. That code compiles correctly).
- some explanations of rudimentry C syntax is missing like explanations of complex #defines for macros and some struct notation but this is assumed.
- his humour is very ... well, it's LaMothe. :)
*Note: I am not sure if this is so much a shortcoming as it's a hinderence to someone who wants to understand the current and correct way to render or do something. First, LaMothe likes to show you how something was originally done (for example, the handling of DirectX COM objects, or the simplistic drawing of a line pixel by pixel) and then shows you the more effective way of doing it. This is great for someone who doesn't know or doesn't need to know how to get started right away and doesn't mind coming back to those pages in the book a week later ;-) but for most people it doesn't matter. Ironically, I didn't mind this but most might.
BOTTOM LINE: I am not an expert programmer or an expert reviewer.. But I think this book is fantastic. It is well organized and contains stunningly easy to read source. If you want to try another book, try the "Game Programming Gems" series. I hear they are wonderful as well.
Buy it for no more than 2/3 of it's list price ($60) though!
on June 18, 2003
Andre LaMothe's name in my humble opinion, has become synonamous with extremely-well-thought-out, action-packed, getting-down-to-business, everything-you-wanted-to-know, fun and excellently explained books that keeps you glued!. This book was no disappointment. Since the nature of the topic is pretty hectic and intense, I would imagine that some people would become frustrated. So I'm gonna express my opinion in 2 parts : for the beginner and for the more experienced programmer :
I've read many of the reviews where beginner programmers complain about the intensity of the book. Suffice to say that this book wasnt intended to teach C or C++, the very nature of DirectX programming can be pretty mindblowing. So if youre just learning C or C++ and want to learn game programming concepts, I'd highly.. lemmie rephrase that.. I'd HIGHLY recommend Andre's book "Tricks of the Game Programming Gurus"(which is the previous release, meant for DOS programming solely). I rate it even above this excellent book. Granted that the initial book "Tricks of the Game Programming Gurus" was designed and explained for DOS games and is now pretty much outdated, the concepts don't really change. Also, a word of advice.... please please I beg you.... try to read the code he gives and understand it ! Its simple to understand, but most people I've spoken to just skips over it. Why, I have no idea.Anyway, the book will give you a firm footing in the basics of video modes, pixel plotting, writing DOS applications to load PCX files, animation, scrolling techniques, sound programming, and my personal favourite - the 3D rendering engine using nothing but C !! Whats more - he writes a full program for almost EVERYTHING he explains, so you can see it in action ! Id recommend that you use a Microsoft compiler though, cos if youre a borland guy and you just begninnning, youre gonna get some headaches. I prefer Borland myself (Microsoft is a pain in the royal behind).If you then feel better about the concepts and understand C and C++, come back to this book. Take my word for it - its excellent ! Whats more, Andre has an amazing simple way of just telling you what you want to hear. Many a time in my undergrad studies, once I figured something out.. I thought to myself "Why couldnt the freaking lecturer just say so". Andre is the say-so guy ! Btw Andre .. did you really have a bra on your head when you started the chapter on AI and fuzzy logic ? ( i think it was that chapter). Anyway .. for the more experienced programmer :
If youre a seasoned C++ or C programmer (but dont know much about games)... this book is for you ! The only thing is that Andre tends to use C for everything. Even though its a bit irritating at first, its very easy to see how to port it into C++ (duh). But i can understand why andre uses C - its easier to explain the concepts with and probably cos he likes it more.Andre starts off by explaining some broad concepts on games and what really blew me away was the fact he had a simple complete directX game in teh first chapter. But that was just to get you rolling. Everythign from DirectSound, DirectMusic, DirectDraw , Direct everything is explained. And he gives you Demos for EVERYTHING ! So you can see how it works. He delves into hectic topics like Fuzzy logic, force feedback and much more. This book concentrates on 2D graphics though. His sequel to be released soon covers 3D indepth. Mine is on preorder. In true Andre style he ends off with a full game. If you know nothing about game programming, but you are a seasoned programmer, BUY THIS BOOK !
Bad side ? There are some typos in the book, nothing too serious though. Andres crazy writing style makes up for it.
Way to go Andre, another classic.
on July 13, 2002
I recently got this book and am thoroughly impressed with both the writing and the ease with which the technical content is explained and made accessible to a complete newbie to game programming such as myself. The techniques that LaMothe teaches throughout the book are extremely advanced, yet he breaks them down in a way that makes them easy to understand.
The other reviews of this book do not AT ALL do it any justice. It seems to me from reading them that they have some sort of vendetta against LaMothe, who in my estimation is beyond brilliant with the amount of work he has published. Since they chose to hide their identities I would venture to guess that they are the minions of rival authors, perhaps even the rival authors themselves! Some sort of professional jealously I guess. (One reviewer asked why 3D appears in the title if no 3D coverage is given...a thorough check of the cover reveals nothing of the sort).
At any rate, I will end this review on a positive note because that is the only thing I feel about this book. It is definitely worth the money and I highly recommend it!