- Shopping Bag ( 0 items )
-- Eric Yiskis Lead Programmer, Oddworld Inhabitants
3D Game Engine Design is ...
-- Eric Yiskis Lead Programmer, Oddworld Inhabitants
3D Game Engine Design is the first book to go beyond basic descriptions of algorithms and accurately demonstrate the complex engineering process required to design and build a real-time graphics engine to support physical realism. Faster algorithms will always win out over faster processors and assembly-language optimization techniques. Implementing those algorithms, however, can be a challenge for even experienced programmers.
This book provides rigorous explanations and derivations of all the essential concepts and techniques. Ideas are revealed step by step with numerous code examples and illustrations. Source code implementations are included on the companion CD-ROM to help you understand the full progression from idea, to algorithm, to working code. Since algorithms are not used in isolation, the source code for a complete engine is provided to bring crucial context to the implementations. This book and CD-ROM offer the most comprehensive professional reference available for the development of 3D game engines.
Author Biography: Dave Eberly is the President of Magic Software, Inc., a company known for its Web site that offers free source code and documentation for computer graphics, image analysis, and numerical methods. Previously, he was the Director of Engineering at Numerical Design Limited, the company responsible for the real-time 3D game engine, NetImmerse. His background includes a B.A. degree in mathematics from Bloomsburg University, M.S. and Ph.D. degrees in mathematics from the University of Colorado at Boulder, and M.S. and Ph.D. degrees in computer science from the University of North Carolina at Chapel Hill. He is co-author with Philip Schneider of the forthcoming Geometry Tools for Computer Graphics, to be published by Morgan Kaufmann.
Audience: Professionals or students working in game development, simulation, scientific visualization, or virtual worlds.
|List of Figures|
|List of Tables|
|Ch. 2||Geometrical Methods||7|
|2.5||Standard 3D Objects||26|
|Ch. 3||The Graphics Pipeline||79|
|3.1||Model and World Coordinates||80|
|3.4||Culling and Clipping||91|
|3.5||Surface and Vertex Attributes||99|
|3.7||An Efficient Clipping and Lighting Pipeline||132|
|3.8||Issues of Software, Hardware, and APIS||138|
|Ch. 4||Hierarchical Scene Representations||141|
|4.2||Updating a Scene Graph||147|
|4.3||Rendering a Scene Graph||157|
|5.1||Intersection of a Linear Component and a Sphere||171|
|5.2||Intersection of a Linear Component and a Box||172|
|5.3||Intersection of a Linear Component and a Capsule||179|
|5.4||Intersection of a Linear Component and a Lozenge||180|
|5.5||Intersection of a Linear Component and a Cylinder||181|
|5.6||Intersection of a Linear Component and an Ellipsoid||182|
|5.7||Intersection of a Linear Component and a Triangle||182|
|Ch. 6||Collision Detection||185|
|6.2||Intersection of Dynamic Objects and Lines||188|
|6.3||Intersection of Dynamic Objects and Planes||193|
|6.4||Static Object-Object Intersection||203|
|6.5||Dynamic Object-Object Intersection||214|
|6.6||Oriented Bounding Box Trees||244|
|6.7||Processing of Rotating and Moving Objects||245|
|7.2||Reparameterization by Arc Length||260|
|7.5||Orientation of Objects on Curved Paths||285|
|Ch. 9||Animation of Characters||341|
|9.1||Key Frame Animation||342|
|Ch. 10||Geometric Level of Detail||359|
|10.1||Sprites and Billboards||360|
|10.2||Discrete Level of Detail||361|
|10.3||Continuous Level of Detail||362|
|11.2||Vertex Based Simplification||373|
|11.6||The Full Algorithm||385|
|11.8||Height Fields from Point Sets or Triangle Meshes||398|
|Ch. 12||Spatial Sorting||411|
|12.1||Quadtrees and Octrees||412|
|12.3||Binary Space Partitioning||417|
|Ch. 13||Special Effects||427|
|App. A||Object-Oriented Infrastructure||435|
|App. B||Numerical Methods||469|
|About the Author||557|
|About the CD-ROM||559|
Posted January 14, 2007
Are you a professional or student working in game development? If you are, then this book is for you. Author David H. Eberly has done an outstanding job of writing a second edition of a book which focuses on the design of the scene graph management system and its associated rendering layer. Eberly, begins this book by discussing the details of a rendering system, including transformations, camera models, culling and clipping, rastering, and issues regarding software versus hardware rendering and about specific graphics application programmer interfaces in use these days. In addition, the author discusses rendering from the perspective of actually writing all of the subsystems for a software renderer. He also takes a look at the essentials of organizing your data as a scene graph. Then, he focuses on specifically designed nodes and subsystems of the scene graph management system. The author then looks at some general concepts you see in attempting to have physical realism in a three-dimensional application. Next, he discusses a lot of mathematical detail for much of the source code you will find in Wild Magic. Then, he takes a brief look at the basic principles of object-oriented design and programming. The author continues by discussing memory management. Finally, he takes a look at a handful of sample shaders and the applications that use them. This most excellent book is very much enhanced, describing the foundations for shader programming and how an engine can support it. Perhaps more importantly, the book is the most comprehensive reference available for the development of shader-based 3D graphics engines!Was this review helpful? Yes NoThank you for your feedback. Report this reviewThank you, this review has been flagged.
Posted May 6, 2002
This text applies a rigorous mathematical background to the design of 3D graphic engines. I suggest that you pick up some textbooks on linear algebra and introductory 3D transforms before delving into the underlying structure that this book exposes.Was this review helpful? Yes NoThank you for your feedback. Report this reviewThank you, this review has been flagged.
Posted February 8, 2001
The well-written book truly delivers on its promise to provide the information needed to get a 3D game engine together. Some of the items I enjoyed most were the detailed description of different ways of doing things with examples. The wealth of code examples is also good, though you would probably want to get the latest from the web site as soon as you get the book. If you are looking for good object oriented approach to a 3D engine this has a very good OpenGL approach.Was this review helpful? Yes NoThank you for your feedback. Report this reviewThank you, this review has been flagged.