|
|
18 of 19 people found the following review helpful:
5.0 out of 5 stars
opinions from one professor to another, November 13, 2003
By A Customer
Being a professor myself, i approached Sanchez-Crespo's book with skepticism. The NRG series is new, the author is an academic and, on top of that, the book does not come with a CD. Still, much to my surprise I have to say this book is exactly what I was looking for. After reading it (and re-reading some passages) the difference with other books on games is appalling: this is a course on games programming, a tool for those who want a formal, well laid-out introduction, that covers all the main topics and leaves few questions unanswered.The book is structured in two parts: the first deals with gameplay programming, that is, software architecture, artificial intelligence, networks, input handling, etc. The section on AI is one of the best I've seen, and especially the chapter on Scripting Techniques is superb. Both traditional script languages, Lua and Java are covered with detail, so you can get down coding right after leaving the book. Lots of interesting techniques are detailed, such as Djikstra's, A*, etc. so this book is one of the rare instances of AI material designed specifically for games. Then, the technology section is just appalling in scope: approx. 400 pages full of algorithms, starting with simple 3D pipelines, and then indoors/outdoors rendering, character animation, cameras, texturing, lighting, shaders, etc. The book is surprisingly up-to-date, making me guess the author is a graphics programmer at the core. The shader section is based on Cg, and covers topics such as skeletal animation on shaders, BDRFs, toon rendering, etc. So in the end this doesn't feel much as an introductory book, but as a complete volume of knowledge, ranging from the very basic to the very advanced. Finally, there's a couple chapters worth mentioning: one on optimization, which is always handy, and another on APIs, which gives all the basic info about OpenGL and DirectX 9 to start coding. The approach for the whole book is not based on specific APIs, but on the algorithms instead. Then, these appendices tell you how to actually translate that into lines of running code. Overall, my only criticism is that the book could have been longer (physics and audio are not there), and I hope to get a second, expanded edition soon, with more of the same, which is not necessarily a bad thing here. I'll use it for my students.
|