Game Programming Gems 3 (Game Programming Gems Series) (HAR/CDR)

Game Programming Gems 3 (Game Programming Gems Series) (HAR/CDR)

  • ただいまウェブストアではご注文を受け付けておりません。 ⇒古書を探す
  • 製本 Hardcover:ハードカバー版/ページ数 660 p.
  • 言語 ENG,ENG
  • 商品コード 9781584502333
  • DDC分類 794.815265

Full Description


The journey continues with this ALL NEW volume in the Game Programming Gems series! As with the first two volumes, a dynamic group of some of the best game programmers in the industry have generously joined together to share their insights and techniques. Their ready-to-use ideas, tips, and solutions, will help save hours of programming time, prevent redundancy, and leave you with more time to add cutting-edge features to your own games.Covering all the key areas of game development, this invaluable resource delves deep into the problems often encountered by programmers, and provides practical, valid solutions. Each section is edited by an expert in the field to ensure that the ideas are original, accurate, and useful for a variety of game development projects. In addition to covering Mathematics, Graphics, General Programming, Audio, and Artificial Intelligence, Game Programming Gems 3 also includes an all new section on Network and Multiplayer games.This is a must-have reference, and series, for every game developer. If you are just getting started, this book offers a true cross-section of the challenges youill face, and provides a variety of additional references to help you find all the resources you need to advance your skills and knowledge. If youire an expert already, youill find new ideas and techniques to help save plenty of valuable programming time.

Table of Contents

Foreword                                           xi
Preface xv
Acknowledgments xix
About the Cover Image xxi
Contributor Bios xxiii
SECTION 1 GENERAL PROGRAMMING 1 (152)
Introduction 3 (2)
Kim Pallister
Scheduling Game Events 5 (10)
Michael Harvey
Carl Marshall
An Object-Composition Game Framework 15 (11)
Scott Patterson
Finding Redeeming Value in C-Style Macros 26 (12)
Steve Rabin
Platform-Independent, Function-Binding Code 38 (6)
Generator
Allen Pouratian
Handle-Based Smart Pointers 44 (5)
Brian Hawkins
Custom STL Allocators 49 (10)
Pete Isensee
Save Me Now! 59 (5)
Martin Brownlow
Autolists Design Pattern 64 (5)
Ben Board
Floating-Point Exception Handling 69 (4)
Søren Hannibal
Programming a Game Design-Complaint Engine 73 (10)
Using UML
Thomas Demachy
Using Lex and Yacc To Parse Custom Data Files 83 (9)
Paul Kelly
Developing Games for a World Market 92 (17)
Aaron Nicholls
Real-Time Input and UI in 3D Games 109 (8)
Greg Seegert
Natural Selection: The Evolution of Pie Menus 117 (12)
Don Hopkins
Lightweight, Policy-Based Logging 129 (7)
Brian Hawkins
Journaling Services 136 (10)
Eric Robert
Real-Time Hierarchical Profiling 146 (7)
Greg Hjelstrom
Byon Garrabrant
SECTION 2 MATHEMATICS 153 (74)
Introduction 155 (2)
John Byrd
Fast Base-2 Functions for Logarithms and 157 (3)
Random Number Generation
James McNeill
Using Vector Fractions for Exact Geometry 160 (10)
Thomas Young
More Approximations to Trigonometric Functions 170 (17)
Robin Green
Quaternion Compression 187 (5)
Mark Zarb-Adami
Constrained Inverse Kinematics 192 (8)
Jason Weber
Cellular Automata for Physical Modeling 200 (15)
Tom Forsyth
Coping with Friction in Dynamic Simulations 215 (12)
Miguel Gomez
SECTION 3 ARTIFICAL INTELLIGENCE 227 (106)
Introduction 229 (2)
Steven Woodcock
Optimized Machine Learning with GoCap 231 (9)
Thor Alexander
Area Navigation: Expanding the Path-Finding 240 (16)
Paradigm
Ben Board
Mike Ducker
Function Pointer-Based, Embedded Finite-State 256 (12)
Machines
Charles Farris
Terrain Analysis in an RTS---The Hidden Giant 268 (17)
Daniel Higgins
An Extensible Trigger System for AI Agents, 285 (9)
Objects, and Quests
Steve Rabin
Tactical Path-Finding with A* 294 (13)
William van der Sterren
A Fast Approach to Navigation Meshes 307 (14)
Stephen White
Christopher Christensen
Choosing a Relationship Between Path-Finding 321 (12)
and Collision
Thomas Young
SECTION 4 GRAPHICS 333 (152)
Introduction 335 (3)
Jeff Lander
T-Junction Elimination and Retriangulation 338 (6)
Eric Lengyel
Fast Heightfield Normal Calculation 344 (5)
Jason Shankel
Fast Patch Normals 349 (4)
Martin Brownlow
Fast and Simple Occlusion Culling 353 (6)
Wagner T. Correa
James T. Klosowski
Claudio T. Silva
Triangle Strip Creation, Optimizations, and 359 (8)
Rendering
Carl S. Marshall
Computing Optimized Shadow Volumes for 367 (5)
Complex Data Sets
Alex Vlachos
Drew Card
Subdivision Surfaces for Character Animation 372 (12)
William Lesson
Improved Deformation of Bones 384 (10)
Jason Weber
A Framework for Realistic Character Locomotion 394 (10)
Thomas Young
A Programmable Vertex Shader Compiler 404 (9)
Adam Lake
Billboard Beams 413 (4)
Brian Hawkins
3D Tricks for Isometric Engines 417 (7)
Greg Snook
Curvature Simulation Using Normal Maps 424 (9)
Oscar Blasco
Methods for Dynamic, Photorealistic Terrain 433 (11)
Lighting
Naty Hoffman
Kenny Mitchell
Cube Map Lighting Techniques 444 (8)
Kenneth L. Hurley
Procedural Texturing 452 (7)
Mike Milliger
Unique Textures 459 (8)
Tom Forsyth
Textures as Lookup Tables for Per-Pixel 467 (10)
Lighting Computations
Alex Vlachos
John Isidoro
Chris Oat
Rendering with Handcrafted Shading Models 477 (8)
Jan Kautz
SECTION 5 NETWORK AND MULTIPLAYER 485 (98)
Introduction 487 (1)
Andrew Kirmse
Minimizing Latency in Real-Time Strategy Games 488 (8)
Jim Greer
Zachary Booth Simpson
Real-Time Strategy Network Protocol 496 (10)
Jan Svarovsky
A Flexible Simulation Architecture for 506 (14)
Massively Multiplayer Games
Thor Alexander
Scaling Multiplayer Servers 520 (14)
Justin Randall
Template-Based Object Serialization 534 (12)
Jason Beardsley
Secure Sockets 546 (11)
Pete Isensee
A Network Monitoring and Simulation Tool 557 (4)
Andrew Kirmse
Creating Multiplayer Games with DirectPlay 8.1 561 (12)
Gabriel Rohweder
Wireless Gaming Using the Java Micro Edition 573 (10)
David Fox
SECTION 6 AUDIO 583 (56)
Introduction 585 (2)
Scott Patterson
Audio Compression with Ogg Vorbis 587 (8)
Jack Moffitt
Creating a Compelling 3D Audio Environment 595 (5)
Garin Hiebert
Obstruction Using Axis-Aligned Bounding Boxes 600 (6)
Carlo Vogelsang
Using the Biquad Resonant Filter 606 (7)
Phil Burk
Linear Predictive Coding for Voice 613 (9)
Compression and Effects
Eddie Edwards
The Stochastic Synthesis of Complex Sounds 622 (8)
Phil Burk
Real-Time Modular Audio Processing for Games 630 (9)
Frank Luchs
Appendix: About the CD-ROM 639