
Best Game Programming Book I Ever Bought! - If you want to make the jump from novice game programmer to intermediate I can recommend no book more than this, regardless of your interest in 3D terrain programming. The author has included an excellent object-oriented quad-tree based engine that neatly fills the gap between the simplistic engines found in DirectX for Beginners -type books and full-blown open source engines available for download on the internet. If you already know your matrix maths and how to initialise a DirectX surface but don t know where to go next this book is for you.As for the book itself, it is written in simple and clean English, wisely relegating most of the actual code to the CD where it belongs. The book covers all the topics you would expect: Heightmap Generation, Level of Detail Algorithms, Sky Boxes etc. All are explained well.Finally, special mention has to go to the Author s After-Sales Support . Code-revisions are continually posted to the website www.mightystudios.com, the most recent just this week almost a year after initial publication. These include tweaks and fixes to the core engine and the demos (inc. the Ocean Water demo!).For this price, Highly Recommended.Oh, and if it helps, the Author works at Bungie Studios (makers of Halo).
Good but not great - This book is not for beginners: it assumes you re comfortable with textures, meshes, matrices etc. and provides only a sketchy overview of them. The quality of the demos is uninspiring to say the least, especially the Ocean Water demo which is frankly terrible. There are many irritating typos. The author makes a sort of apology for his coding style and suggests that if you don t like it, you can always change it. This is easier said than done...!So why does it still get 4 stars?It covers, in one fairly short volume, how to represent and render terrain, with 3 LOD algorithms, skydomes/boxes, clouds (with Perlin Noise), realistic outdoor lighting, trees/grass and ocean water. It has a robust resource management system (perhaps too complex for the intermediate programmer like myself) and gives enough details of effects files (.fx) and HLSL to get you started in what looks like a fascinating and extremely powerful avenue. (The DirectX SDK is more-or-less useless with these.) It also has a wealth of tricks and tips ranging from floating point optimisations to smart ASSERTs.Most of the code is relegated to the CD, which is where it should be, in my opinion. (Take note, Andre LaMothe!) Enough is retained in the body of the book to allow you to see what is going on, without needing to grind through pages of cut-and-pasted irrelevance.It s very much an object-oriented approach rather than a procedural approach using classes as a notational convenience. This is the first book I ve read that has let me see *why* classes are so much more powerful than procedures (rather than just extolling the academic virtues of them). For that alone the author is to be congratulated.In the end, the fifth star is missing because the quality of the graphics supplied is so poor - this is, after all, a graphics programming book! (I formed the impression that the author didn t want to waste any of his good textures, and the skydome background is an embarassment.) With better quality textures, and larger terrains, some real showpieces could have been produced. Occlusion culling would have been nice too.I also have some reservations about the scalability of the code - I was getting unacceptably low frame rates with the (tiny) demo terrains on a RADEON 9000 Pro / P4 2.4GHz which, while not cutting edge, is not that far off the pace.To summarise: well worth the purchase price, but don t expect marvellous demos.
Everything in One - This book is pretty much the only book I could find that properly covered terrain engines, i.e. it did something nobody else has done so it gets 5/5! There is a lot of information on the different aspects of writing a terrain based game, including data storage/organisation, an in depth discussion of programmable shaders and some groovy effect files on the CD. Personally, after reading the first few chapters I decided it worked better as a reference book than a read-all-at-once book (but there s nothing wrong with that).The writing style is fairly good, with a few jumps here and there, where the author perhaps explains 1 thing too well and another not well enough, but this is true of most computer books. Quadtrees are extremely well explained which are vital to any outdoor engine, and the blending of textures based on height to give a proper outdoor feel was extremely useful. Also included are sky spheres and lens flare which looks great, and water which perhaps wasn t quite as amazing. A must for next-gen terrain programmers. It contains all the information needed that has not yet been properly documented in any single book, and very few mistakes! However be warned that although it does give an intro to games programming, it is not for begginers and you might one to get a book like The Zen Of 3D Game Programmer by Peter Walsh before reading 3D Terrain Engines if you want to get the most out of it. Basically, this book is one of a kind so buy it, but if u are unexperienced buy a more general book aswell!