Rating: Summary: Excellent reference, not a tutorial Review: This is an extremely thorough text and covers a wide variety of topics in a fairly detailed manner. The book is sort of a survey or "toolkit" of game and graphics engine techniques. it is unlikely that in writing a single game you will use everything in this book - but having the exposure to the numerous topics he dicsusses is good.As others have noted, he's "heavy on the math." For me, this is a good thing, since I intend to use the book as a reference, not as a primer. While he is "heavy on the math" he is "light on the diagrams," really the only negative about this book at all. I found the coverage of intersection and collision tests, and the section on numerical methods in the end, both to be especially good compared to other books. In general, this book is an excellent reference for experienced readers, not a how-to for beginners. Very thorough, well written. The book feels academic and authoritative - however, the author has the in-the-trenches experience which lends him creditibility. Once you know the basics, this book is a must-have reference book.
Rating: Summary: Most comprehensive 3d graphics reference Review: This book is REALLY good and supplies lots of information and code about 3d engines. I have to say the book is a little hard to read because of all the math it involves but anyone who thinks he can code graphics and games without math is seriously wrong. I think the book missed more info about object oriented infrastructure. As a book about 3d game engine design i would expect more info about building a good, stable and flexible engine that supports scripting, dynamic loading etc... For anyone who is looking for such info i suggest taking a look at the source of The NEBULA Device at www.radonlabs.de Nevertheless, this is an excellent book that any game programmer should have...
Rating: Summary: Very thorough Review: This book is actually written at two different levels. It has an extremely detailed analysis of the mathematics involved and appears that it would be a good reference for somebody who wants to write a software renderer (or at least understand how a renderer does what it does). It's organized in such a way that it is easy to skip the math parts (which I did!) and get a good understanding of the higher level engine concepts. It's easy to understand, for instance, how culling works conceptually (or via a library call) without going through the math. I found the chapters on the scene graph and collision detection to be especially valuable. I wish he would have included a bit about AI though. I find myself wondering 'where in my architecture do I put the AI?'. It seems like it should fit in this discussion somewhere...
Rating: Summary: A nice book, but it could do with some improvements Review: This is a book on 3D Game Engines that is a must have for game developers. David Eberly does not shirk from presenting the user with rigorous mathematics (even a proof or two). Some of the coverage is really useful like LOD techniques,Scene Graph Management,Skinning and Curved Surfaces. This book is definitely not for beginners, and it would be best for intermediate level game programmers. If you don't like math stay away from this one (and computer graphics and game programming as well.) The author never fails to keep track of performance issues and discusses the costs involved in using various techniques. The best thing about this book: It was the first one to discuss such a wide array of topics about game programming at a time when most other references talked only graphics and ignored special considerations that arise in real-time 3D (notable exception, "Real Time Rendering / Moller & Haines"). However, the author could have done more justice to important topics like BSP trees(disposed off summarily in a single chapter). A discussion about speeding up math calculations using SIMD extensions in today's processors would have been a relevant addition to the book. The source code provided is incomplete (ex. the software renderer). Also, there is an OOP overkill in the sample code. All in all, a most useful book to possess.
Rating: Summary: Wonderful description of the parts of a graphics engine! Review: Ever since I took a graphics programming class, I've been wanting to program my own major graphics program. As I did so, however, I ran into some problems with collision detection , and so I rushed to the library and checked out several books on the subject of game engine design. Among those books, however, this one stood out for several reasons: First, its general, non-language-specific nature made it ideal for someone working with Borland C++ 1.0 on DOS, and who plans to move to Linux eventually (and could find himself programming in a different language, like Java, in the future). The other books I found were dependent on platforms I had no interest in (like DirectX), and superficially covered the topics. Second, as a mathematician (and undergraduate mathematician at that), I was completely at home with the math! and found it more clear than a lot of the other books I've seen. Admittedly, I skipped over most of the formulas and sometimes entire sections of the book as I read it, but it's also nice to know that the math is there when I feel like understanding it. Third, while it didn't cover everything, and only provided a sketch of a few topics, everything that my little hobby engine needs (such as rendering matrices, rotation using quaternions, and collision detection) were covered in detail. This book is definitely a requirement for what I'm doing! While the book doesn't go into much detail of how to do certain things (like lighting techniques or fog), it gives a general idea of how to do them...and it's also nice to know that these topics exist (for when I need to look them up elsewhere). While this book doesn't cover everything (I don't expect any single book to do so), it does a good job of describing the "basics" in a detail needed for anyone who has a good background in programming and math, and is serious in writing a game for fun. I definitely recommend this book to those who have the background, but don't need the latest techniques.
Rating: Summary: Full of math, gives strong basis. NOT for beginners Review: Gives the mathematics that build a 3d graphics engine. Some chapters could have gone deeper (like animation), others are really good (curves and terrain generation). But if you are looking for a book that will build your application from vertices to AI, that's not the book you need. For example, 3d collision detection focuses on the mathematics to find where and when a box intersects, let's say, a lozenge but not on organizing the CD procedures. But definitely a must have if you want to get deeper in CG and game programming.
Rating: Summary: Many good tips, some non effective, some missing Review: The real stuff a game programmer needs is not seen here : Collision detection, network real time programming, multi platform programming. Indeep investigation of very basic topics, and almost nothing about advanced ones. The examples and code sample are interesting for tutorial purpose.
Rating: Summary: Excellent reference Review: Yes, this book is an invaluable reference. All the mathematical knowledge necessary to building a 3D engine is contained within its pages. Each topic is covered separately, with algorithm examples to support each mathematical discussion. A basic 3D engine is also included to help the reader put the concepts together. You must, however, adapt well to formal mathematical notation to understand this book -- there is no handholding; it assumes the reader is familiar with vector and matrix algebra, linear algebra, multivariate calculus, and data structures. Following the mathematics can become quite tedious if you are lacking in any of these areas. One thing I think Eberly might have improved is "dumbing down" the mathematical notation to appeal to a broader audience, or at least have written the book in a more personal, explanatory manner (Its funny how the smarter a person is, the harder it is for him/her to express ideas in a way understanding to the rest of us). For you college kids, I'd say you need up to Calc 3 and Linear Algebra. It'll help if you've taken a couple graphics courses, covering things like BSP/Oct/Quad trees, rendering pipeline analysis, and intersection testing. I myself AM a college kid, so trust me on this... it'll help if you have a little background. Also note that this book is non-API specific; you must know a 3D API well in order to implement the author's ideas. He uses OpenGL for his CD-ROM examples. What else... Don't buy this book if you just want to implement special effects... check out the 3D Graphics Gems series for that. Concepts such as Lens Flare, Bump/Enviroment Mapping, Shadows, and Particle Systems are discussed, but only slightly within 4 pages of the last chapter -- which is understandable, considering the focus of this book is on the core 3D engine, not the flare surrounding it. That's about it. Buy it if you've got patience, persistence, and are serious about 3D game programming -- and that's the bottom line.
Rating: Summary: Doesn't Address the REAL Questions of Game Programming Review: Straight math is given; nothing you cannot find in foley/van dam or any decent graphics textbook. It is all very surface level, without ever diving into the serious issues of what makes a good game programmer. Pros and cons are never discussed, and ALTERNATIVES to the given algorithms are never even mentioned. Potential tradeoffs are never discussed. The example code is bulky, has poor OO design, slow, and is basically worthless. The author should use pseudocode in future iterations, and not provide the worthless source (only detrimental in my opinion), or perhaps should consult an OO expert to aide in design.
Rating: Summary: Excellent reference, not a tutorial Review: This is an extremely thorough text and covers a wide variety of topics in a fairly detailed manner. The book is sort of a survey or "toolkit" of game and graphics engine techniques. it is unlikely that in writing a single game you will use everything in this book - but having the exposure to the numerous topics he dicsusses is good. As others have noted, he's "heavy on the math." For me, this is a good thing, since I intend to use the book as a reference, not as a primer. While he is "heavy on the math" he is "light on the diagrams," really the only negative about this book at all. I found the coverage of intersection and collision tests, and the section on numerical methods in the end, both to be especially good compared to other books. In general, this book is an excellent reference for experienced readers, not a how-to for beginners. Very thorough, well written. The book feels academic and authoritative - however, the author has the in-the-trenches experience which lends him creditibility. Once you know the basics, this book is a must-have reference book.
|