您好,欢迎光临本网站![请登录][注册会员]  
文件名称: 3D Game Engine Architecture
  所属分类: C++
  开发工具:
  文件大小: 6mb
  下载次数: 0
  上传时间: 2009-04-29
  提 供 者: netbu*****
 详细说明: Chapter 1 Introduction 1 1.1 Drawing a Triangle 2 1.2 Drawing a Triangle Mesh 17 1.3 Drawing a Complicated Scene 27 1.4 Abstraction of Systems 27 Chapter 2 Core Systems 31 2.1 The Low-Level System 31 2.1.1 Basic Data Structures 33 2.1.2 Encapsulating Platform-Sp ecific Concepts 45 2.1.3 Endianness 46 2.1.4 System Time 47 2.1.5 File Handling 48 2.1.6 Memory Allocation and Deallocation 49 2.2 The Mathematics System 53 2.2.1 Basic Mathematics Functions 53 2.2.2 Fast Functions 57 2.2.3 Vectors 61 2.2.4 Matrices 75 2.2.5 Quaternions 90 2.2.6 Lines and Planes 102 2.2.7 Colors 103 2.3 The Object System 105 2.3.1 Run-Time Type Information 105 2.3.2 Names and Unique Identifiers 112 2.3.3 Sharing and Smart Pointers 114 2.3.4 Controllers 121 vii TeamLRN sPeCiAL viii Contents 2.3.5 Streaming 122 2.3.6 Cloning 133 2.3.7 String Trees 138 2.3.8 Initialization and Termination 139 Chapter 3 Scene Graphs and Renderers 149 3.1 The Core Classes 152 3.1.1 Motivation for the Classes 153 3.1.2 Spatial Hierarchy Design 160 3.1.3 Instancing 163 3.2 Geometric State 166 3.2.1 Transformations 167 3.2.2 Bounding Volumes 177 3.2.3 The Core Classes and Geometric Updates 184 3.3 Geometric Types 196 3.3.1 Points 197 3.3.2 Line Segments 198 3.3.3 Triangle Meshes 200 3.3.4 Particles 202 3.4 Render State 203 3.4.1 Global State 203 3.4.2 Lights 223 3.4.3 Textures 230 3.4.4 Multitexturing 242 3.4.5 Effects 248 3.4.6 The Core Classes and Render State Updates 251 3.5 Renderers and Cameras 259 3.5.1 Camera Models 259 3.5.2 Basic Architecture for Rendering 276 3.5.3 Single-Pass Drawing 281 3.5.4 The DrawPrimitive Function 285 3.5.5 Cached Textures and Vertex Attributes 292 3.5.6 Global Effects and Multipass Support 295 Chapter 4 Advanced Scene Graph Topics 299 4.1 Level of Detail 299 TeamLRN sPeCiAL Contents ix 4.1.1 Billboards 300 4.1.2 Display of Particles 302 4.1.3 Discrete Level of Detail 306 4.1.4 Continuous Level of Detail 309 4.1.5 Infinite Level of Detail 334 4.2 Sorting 335 4.2.1 Binary Space Partitioning Trees 336 4.2.2 Portals 343 4.2.3 Sorting Children of a Node 354 4.2.4 Deferred Drawing 356 4.3 Curves and Surfaces 360 4.3.1 Parametric Curves 362 4.3.2 Parametric Surfaces 364 4.3.3 Curve Tessellation by Subdivision 366 4.3.4 Surface Tessellation by Subdivision 373 4.4 Terrain 377 4.4.1 Data Representations 377 4.4.2 Level of Detail 378 4.4.3 Terrain Pages and Memory Management 388 4.5 Controllers and Animation 399 4.5.1 Keyframe Animation 402 4.5.2 Morphing 404 4.5.3 Points and Particles 406 4.5.4 Skin and Bones 410 4.5.5 Inverse Kinematics 414 Chapter 5 Advanced Rendering Topics 431 5.1 Special Effects Using the Fixed-Function Pipeline 431 5.1.1 Vertex Coloring 433 5.1.2 Single Textures 434 5.1.3 Dark Maps 436 5.1.4 Light Maps 437 5.1.5 Gloss Maps 437 5.1.6 Bump Maps 440 5.1.7 Environment Maps 446 5.1.8 Projected Textures 451 5.1.9 Planar Shadows 454 5.1.10 Planar Reflection 457 TeamLRN sPeCiAL x Contents 5.2 Special Effects Using Vertex and Pixel Shaders 462 5.2.1 Scene Graph Support 463 5.2.2 Renderer Support 479 5.2.3 Automatic Source Code Generation 486 Chapter 6 Collision Detection 487 6.1 Distance-Based Methods 492 6.1.1 A Plan of Attack 495 6.1.2 Root Finding Using Newton’s Method 496 6.1.3 Root Finding Using Bisection 496 6.1.4 Hybrid Root Finding 497 6.1.5 An Abstract Interface for Distance Calculations 497 6.2 Intersection-Based Methods 500 6.2.1 An Abstract Interface for Intersection Queries 501 6.3 Line-Object Intersection 503 6.3.1 Intersections between Linear Components and Triangles 503 6.3.2 Intersections between Linear Components and Bounding Volumes 508 6.3.3 Picking 527 6.3.4 Staying on Top of Things 534 6.3.5 Staying out of Things 535 6.4 Object-Object Intersection 536 6.4.1 Collision Groups 536 6.4.2 Hierarchical Collision Detection 540 6.4.3 Spatial and Temporal Coherence 553 Chapter 7 Physics 565 7.1 Numerical Methods for Solving Differential Equations 565 7.1.1 Euler’s Method 567 7.1.2 Midpoint Method 569 7.1.3 Runge-Kutta Fourth-Order Method 571 7.1.4 Implicit Equations and Methods 573 7.2 Particle Physics 576 7.3 Mass-Spring Systems 580 7.3.1 Curve Masses 580 TeamLRN sPeCiAL Contents xi 7.3.2 Surface Masses 583 7.3.3 Volume Masses 586 7.3.4 Arbitrary Configurations 589 7.4 Deformable Bodies 591 7.5 Rigid Bodies 592 7.5.1 The Rigid Body Class 595 7.5.2 Computing the Inertia Tensor 600 Chapter 8 Applications 601 8.1 Abstraction of the Application 602 8.1.1 Processing Command Line Parameters 603 8.1.2 The Application Class 607 8.1.3 The ConsoleApplication Class 609 8.1.4 TheWindowApplication Class 612 8.1.5 TheWindowApplication3 Class 620 8.2 Sample Applications 637 8.2.1 BillboardNode Sample 642 8.2.2 BspNode Sample 642 8.2.3 CachedArray Sample 645 8.2.4 Castle Sample 646 8.2.5 ClodMesh Sample 648 8.2.6 Collision Sample 648 8.2.7 InverseKinematics Sample 654 8.2.8 Portals Sample 656 8.2.9 ScreenPolygon Sample 662 8.2.10 SkinnedBiped Sample 668 8.2.11 SortFaces Sample 669 8.2.12 Terrain Sample 670 8.3 Sample Tools 673 8.3.1 3dsToWmof Importer 673 8.3.2 Maya Exporter 673 8.3.3 BmpToWmif Converter 673 8.3.4 WmifToBmp Converter 674 8.3.5 ScenePrinter Tool 674 8.3.6 SceneTree Tool 674 8.3.7 SceneViewer Tool 674 TeamLRN sPeCiAL xii Contents Appendix Coding Conventions 677 A.1 File Naming and Organization 677 A.2 Comment Preamble and Separators 680 A.3 White Space 681 A.3.1 Indentation 681 A.3.2 Blank Lines 682 A.3.3 Function Declarators 682 A.3.4 Constructor Initializers 683 A.3.5 Function Calls 684 A.3.6 Conditionals 684 A.4 Braces 685 A.5 Pointer Types 686 A.6 Identifier Names 688 A.6.1 Variables 688 A.6.2 Classes and Functions 690 A.6.3 Enumerations 690 A.7 C++ Exceptions 691 A.8 Header File Organization 692 A.8.1 Include Guards and Nested Header Files 692 A.8.2 Minimizing Compilation Time 695 Bibliography 699 Index 703 About the CD-ROM 733 ...展开收缩
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 相关搜索: 游戏 C++
 输入关键字,在本站1000多万海量源码库中尽情搜索: