책 이미지
![3D Game Engine Architecture: Engineering Real-Time Applications with Wild Magic [With CD-ROM]](/img_thumb2/9780122290640.jpg)
eBook 미리보기
책 정보
· 제목 : 3D Game Engine Architecture: Engineering Real-Time Applications with Wild Magic [With CD-ROM] (Hardcover) (Engineering Real-time Applications With Wild Magic)
· 분류 : 외국도서 > 컴퓨터 > 프로그래밍 > 게임
· ISBN : 9780122290640
· 쪽수 : 736쪽
· 출판일 : 2004-12-17
· 분류 : 외국도서 > 컴퓨터 > 프로그래밍 > 게임
· ISBN : 9780122290640
· 쪽수 : 736쪽
· 출판일 : 2004-12-17
목차
- About the Author
- Preface
- Chapter 1 Introduction
- 1.1 Drawing a Triangle
- 1.2 Drawing a Triangle Mesh
- 1.3 Drawing a Complicated Scene
- 1.4 Abstraction of Systems
- Chapter 2 Core Systems
- 2.1 The Low-Level System
- 2.1.1 Basic Data Structures
- 2.1.2 Encapsulating Platform-Specific Concepts
- 2.1.3 Endianness
- 2.1.4 System Time
- 2.1.5 File Handling
- 2.1.6 Memory Allocation and Deallocation
- 2.2 The Mathematics System
- 2.2.1 Basic Mathematics Functions
- 2.2.2 Fast Functions
- 2.2.3 Vectors
- 2.2.4 Matrices
- 2.2.5 Quaternions
- 2.2.6 Lines and Planes
- 2.2.7 Colors
- 2.3 The Object System
- 2.3.1 Run-Time Type Information
- 2.3.2 Names and Unique Identifiers
- 2.3.3 Sharing and Smart Pointers
- 2.3.4 Controllers
- 2.3.5 Streaming
- 2.3.6 Cloning
- 2.3.7 String Trees
- 2.3.8 Initialization and Termination
- 2.1 The Low-Level System
- Chapter 3 Scene Graphs and Renderers
- 3.1 The Core Classes
- 3.1.1 Motivation for the Classes
- 3.1.2 Spatial Hierarchy Design
- 3.1.3 Instancing
- 3.2 Geometric State
- 3.2.1 Transformations
- 3.2.2 Bounding Volumes
- 3.2.3 The Core Classes and Geometric Updates
- 3.3 Geometric Types
- 3.3.1 Points
- 3.3.2 Line Segments
- 3.3.3 Triangle Meshes
- 3.3.4 Particles
- 3.4 Render State
- 3.4.1 Global State
- 3.4.2 Lights
- 3.4.3 Textures
- 3.4.4 Multitexturing
- 3.4.5 Effects
- 3.4.6 The Core Classes and Render State Updates
- 3.5 Renderers and Cameras
- 3.5.1 Camera Models
- 3.5.2 Basic Architecture for Rendering
- 3.5.3 Single-Pass Drawing
- 3.5.4 The DrawPrimitive Function
- 3.5.5 Cached Textures and Vertex Attributes
- 3.5.6 Global Effects and Multipass Support
- 3.1 The Core Classes
- Chapter 4 Advanced Scene Graph Topics
- 4.1 Level of Detail
- 4.1.1 Billboards
- 4.1.2 Display of Particles
- 4.1.3 Discrete Level of Detail
- 4.1.4 Continuous Level of Detail
- 4.1.5 Infinite Level of Detail
- 4.2 Sorting
- 4.2.1 Binary Space Partitioning Trees
- 4.2.2 Portals
- 4.2.3 Sorting Children of a Node
- 4.2.4 Deferred Drawing
- 4.3 Curves and Surfaces
- 4.3.1 Parametric Curves
- 4.3.2 Parametric Surfaces
- 4.3.3 Curve Tessellation by Subdivision
- 4.3.4 Surface Tessellation by Subdivision
- 4.4 Terrain
- 4.4.1 Data Representations
- 4.4.2 Level of Detail
- 4.4.3 Terrain Pages and Memory Management
- 4.5 Controllers and Animation
- 4.5.1 Keyframe Animation
- 4.5.2 Morphing
- 4.5.3 Points and Particles
- 4.5.4 Skin and Bones
- 4.5.5 Inverse Kinematics
- 4.1 Level of Detail
- Chapter 5 Advanced Rendering Topics
- 5.1 Special Effects Using the Fixed-Function Pipeline
- 5.1.1 Vertex Coloring
- 5.1.2 Single Textures
- 5.1.3 Dark Maps
- 5.1.4 Light Maps
- 5.1.5 Gloss Maps
- 5.1.6 Bump Maps
- 5.1.7 Environment Maps
- 5.1.8 Projected Textures
- 5.1.9 Planar Shadows
- 5.1.10 Planar Reflection
- 5.2 Special Effects Using Vertex and Pixel Shaders
- 5.2.1 Scene Graph Support
- 5.2.2 Renderer Support
- 5.2.3 Automatic Source Code Generation
- 5.1 Special Effects Using the Fixed-Function Pipeline
- Chapter 6 Collision Detection
- 6.1 Distance-Based Methods
- 6.1.1 A Plan of Attack
- 6.1.2 Root Finding Using Newton's Method
- 6.1.3 Root Finding Using Bisection
- 6.1.4 Hybrid Root Finding
- 6.1.5 An Abstract Interface for Distance Calculations
- 6.2 Intersection-Based Methods
- 6.2.1 An Abstract Interface for Intersection Queries
- 6.3 Line-Object Intersection
- 6.3.1 Intersections between Linear Components and Triangles
- 6.3.2 Intersections between Linear Components and Bounding Volumes
- 6.3.3 Picking
- 6.3.4 Staying on Top of Things
- 6.3.5 Staying Out of Things
- 6.4 Object-Object Intersection
- 6.4.1 Collision Groups
- 6.4.2 Hierarchical Collision Detection
- 6.4.3 Spatial and Temporal Coherence
- 6.1 Distance-Based Methods
- Chapter 7 Physics
- 7.1 Numerical Methods for Solving Differential Equations
- 7.1.1 Euler's Method
- 7.1.2 Midpoint Method
- 7.1.3 Runge-Kutta Fourth-Order Method
- 7.1.4 Implicit Equations and Methods
- 7.2 Particle Physics
- 7.3 Mass-Spring Systems
- 7.3.1 Curve Masses
- 7.3.2 Surface Masses
- 7.3.3 Volume Masses
- 7.3.4 Arbitrary Configurations
- 7.4 Deformable Bodies
- 7.5 Rigid Bodies
- 7.5.1 The Rigid Body Class
- 7.5.2 Computing the Inertia Tensor
- 7.1 Numerical Methods for Solving Differential Equations
- Chapter 8 Applications
- 8.1 Abstraction of the Application
- 8.1.1 Processing Command Line Parameters
- 8.1.2 The Application Class
- 8.1.3 The ConsoleApplication Class
- 8.1.4 TheWindowApplication Class
- 8.1.5 TheWindowApplication3 Class
- 8.2 Sample Applications
- 8.2.1 BillboardNode Sample
- 8.2.2 BspNode Sample
- 8.2.3 CachedArray Sample
- 8.2.4 Castle Sample
- 8.2.5 ClodMesh Sample
- 8.2.6 Collision Sample
- 8.2.7 InverseKinematics Sample
- 8.2.8 Portals Sample
- 8.2.9 ScreenPolygon Sample
- 8.2.10 SkinnedBiped Sample
- 8.2.11 SortFaces Sample
- 8.2.12 Terrain Sample
- 8.3 Sample Tools
- 8.3.1 3dsToWmof Importer
- 8.3.2 Maya Exporter
- 8.3.3 BmpToWmif Converter
- 8.3.4 WmifToBmp Converter
- 8.3.5 ScenePrinter Tool
- 8.3.6 SceneTree Tool
- 8.3.7 SceneViewer Tool
- 8.1 Abstraction of the Application
- Appendix A Coding Conventions
- A.1 File Naming and Organization
- A.2 Comment Preamble and Separators
- A.3 White Space
- A.3.1 Indentation
- A.3.2 Blank Lines
- A.3.3 Function Declarators
- A.3.4 Constructor Initializers
- A.3.5 Function Calls
- A.3.6 Conditionals
- A.4 Braces
- A.5 Pointer Types
- A.6 Identifier Names
- A.6.1 Variables
- A.6.2 Classes and Functions
- A.6.3 Enumerations
- A.7 C++ Exceptions
- A.8 Header File Organization
- A.8.1 Include Guards and Nested Header Files
- A.8.2 Minimizing Compilation Time
- Bibliography
- Index
- About the CD-ROM
저자소개
추천도서
분야의 베스트셀러 >