Game Programming Gems 3 [1 ed.]
1584502339, 9781584502333
The journey continues with this ALL NEW volume in the Game Programming Gems series! As with the first two volumes, a dyn
308
89
13KB
English
Pages 663
[619]
Year 2002
Report DMCA / Copyright
DOWNLOAD PDF FILE
Table of contents :
Contents......Page 2
1.1 Scheduling Game Events......Page 8
1.2 An Object-Composition Game Framework......Page 18
1.3 Finding Redeeming Values in C-Style Macros......Page 29
1.4 Platform-Independent, Function Binding Code Generator......Page 41
1.5 Handle-Based Smart Pointers......Page 47
1.6 Custom STL Allocators......Page 52
1.7 Save Me Now!......Page 62
1.8 Autolists Design Pattern......Page 67
1.9 Floating-Point Exception Handling......Page 72
1.10 Programming a Game-Design Compliant Engine Using UML......Page 76
1.11 Using Lex and Yacc To Parse Custom Data Files......Page 86
1.12 Developing Games for a World Market......Page 95
1.13 Real-Time Input and UI in 3D Games......Page 113
1.14 Natural Selection: The Evolution of Pie Menus......Page 121
1.15 Lightweight, Policy-Based Logging......Page 133
1.16 Journaling Services......Page 140
1.17 Real-Time Hierarchical Profiling......Page 150
2.1 Fast Base-2 Functions for Logarithms and Random Number Generation......Page 157
2.2 Using Vector Fractions for Exact Geometry......Page 160
2.3 More Approximations to Trigonometric Functions......Page 170
2.4 Quaternion Compression......Page 187
2.5 Constrained Inverse Kinematics......Page 192
2.6 Cellular Automata for Physical Modelling......Page 200
2.7 Coping with Friction in Dynamic Simulations......Page 215
3.1 Optimized Machine Learning with GoCap......Page 226
3.2 Area Navigation: Expanding the Path-Finding Paradigm......Page 235
3.3 Funciton Pointer-Based Embedded Finite-State Machines......Page 251
3.4 Terraing Analysis in an RTS - The Hidden Giant......Page 263
3.5 An Extensible Trigger System for AI Agents, Objects and Quests......Page 280
3.6 Tactical Path-Finding with A*......Page 289
3.7 A Fast Approach to Navigation Meshes......Page 302
3.8 Choosing a Relationship Between Path-Finding and Collision......Page 316
4.1 T-Junction Elimination and Retriangulation......Page 328
4.2 Fast Heightfield Normal Calculation......Page 334
4.3 Fast Patch Normals......Page 339
4.4 Fast and Simple Occlusion Culling......Page 343
4.5 TriangleStrip Creation, Optimizations, and Rendering......Page 349
4.6 Computing Optimized Shadow Volumes for Complex Data Sets......Page 357
4.7 Subdivision Surfaces for Character Animation......Page 362
4.8 Improved Deformation of Bones......Page 374
4.9 A Framework for Realistic Character Locomotion......Page 384
4.10 A Programmable Vertex Shader Compiler......Page 394
4.11 Billboard Beams......Page 403
4.12 3D Tricks for Isometric Engines......Page 407
4.13 Curvature Simulation Using Normal Maps......Page 414
4.14 Methods for Dynamic, Photorealistic Terrain Lighting......Page 423
4.15 Cube Map Lighting Techniques......Page 434
4.16 Procedural Texturing......Page 442
4.17 Unique Textures......Page 449
4.18 Textures as Lookup Tables for Per-Pixel Lighting Computations......Page 457
4.19 Rendering with Handcrafted Shading Models......Page 467
5.1 Minimazing Latency in Real-Time Strategy Games......Page 474
5.2 Real-Time Strategy Network Protocol......Page 482
5.3 A Flexible Simulation Architecture for Massively Multiplayer Games......Page 492
5.4 Scaling Multiplayer Servers......Page 506
5.5 Template-Based Object Serialization......Page 520
5.6 Secure Sockets......Page 532
5.7 A Network Monitoring and Simulation Tool......Page 543
5.8 Creating Multiplayer Games with DirectPlay 8.1......Page 547
5.9 Wireless Gaming Using the Java Micro Edition......Page 559
6.1 Audio Compression with Ogg Vorbis......Page 568
6.2 Creating a Compelling 3D Audio Environment......Page 576
6.3 Obstruction Using Axis-Alligned Bounding Boxes......Page 581
6.4 Using the Biquad Resonant Filter......Page 587
6.5 Linear Predictive Coding for Voice Compression and Effects......Page 594
6.6 The Stochastic Synthesis of Complex Sounds......Page 603
6.7 Real-Time Modular Audio Processing for Games......Page 611