• Free Shipping on all orders in the US
  • Over 7 million books in stock
  • Proud to be B-Corp
  • We aim to be carbon neutral by 2022
  • Over 120,000 Trustpilot reviews
Item 1 of 0
Core Techniques and Algorithms in Game Programming By Daniel Sanchez-Crespo Dalmau

Core Techniques and Algorithms in Game Programming by Daniel Sanchez-Crespo Dalmau

Condition - Good
Only 1 left




Core Techniques and Algorithms in Game Programming Summary

Core Techniques and Algorithms in Game Programming by Daniel Sanchez-Crespo Dalmau

To even try to keep pace with the rapid evolution of game development, you need a strong foundation in core programming techniques-not a hefty volume on one narrow topic or one that devotes itself to API-specific implementations. Finally, there's a guide that delivers! As a professor at the Spanish university that offered that country's first master's degree in video game creation, author Daniel Sanchez-Crespo recognizes that there's a core programming curriculum every game designer should be well versed in-and he's outlined it in these pages! By focusing on time-tested coding techniques-and providing code samples that use C++, and the OpenGL and DirectX APIs-Daniel has produced a guide whose shelf life will extend long beyond the latest industry trend. Code design, data structures, design patterns, AI, scripting engines, 3D pipelines, texture mapping, and more: They're all covered here-in clear, coherent fashion and with a focus on the essentials that will have you referring back to this volume for years to come.

About Daniel Sanchez-Crespo Dalmau

Daniel Sanchez-Crespo Dalmau is a professor at Pompeu Fabra University in Barcelona, Spain where he co-organized and serves as the current director of Spain's first Master's Degree in Video Game Creation. He also founded Novarama, an independent game studio in Barcelona that focuses on creating innovative games for the PC/Xbox platform. As a columnist he has been a frequent contributor to Byte Magazine Spain, Game Developer Magazine, and the Gamasutra web site, publishing more than 40 articles. Send comments about the book to him at

Table of Contents



1. A Chronology of Game Programming.

Phase I: Before Spacewar. Phase II: Spacewar to Atari. Phase III: Game Consoles and Personal Computers. Phase IV: Shakedown and Consolidation. Phase V: The Advent of the Game Engine. Phase VI: The Handheld Revolution. Phase VII: The Cellular Phenomenon. Phase VIII: Multiplayer Games. In Closing.

2. Game Architecture.

Real-Time Software. The Game Logic Section. The Presentation Section. The Programming Process. In Closing.

3. Data Structures and Algorithms.

Types, Structures, and Classes. Data Structures. The Standard Template Library. In Closing.

4. Design Patterns.

Design Patterns Defined. Some Useful Programming Patterns. Usability Patterns. In Closing.

5. User Input.

The Keyboard. Mouse. Joysticks. Hardware Abstraction. Force Feedback. In Closing.

6. Fundamental AI Technologies.

Context. Structure of an AI System. Specific Technologies. In Closing.

7. Action-Oriented AI.

On Action Games. Choreographed AIs. Object Tracking. Chasing. Evasion. Patrolling. Hiding and Taking Cover. Shooting. Putting It All Together. In Closing.

8. Tactical AI.

Tactical Thinking Explained. Military Analysis: Influence Maps. Representing Tactics. In Closing.

9. Scripting.

Building a Scripting Language. Embedded Languages. Socket-Based Scripting. In Closing.

10. Network Programming.

How the Internet Really Works. The Programmer's Perspective: Sockets. Clients. A Simple TCP Server. Multiclient Servers. UDP Servers. Preventing Socket Blocks. Designing Client-Server Games. Massively Multiplayer Games. In Closing.


11. 2D Game Programming.

On Older Hardware. Data Structures for 2D Games. Mapping Matrices. 2D Game Algorithms. Special Effects. In Closing.

12. 3D Pipeline Overview.

A First Look. Fundamental Data Types. Geometry Formats. A Generic Graphics Pipeline. In Closing.

13. Indoors Rendering.

General Analysis. Occluder-Based Algorithms. Binary Space Partition Algorithms. Portal Rendering. Hierarchical Occlusion Maps. Hybrid Approaches. Hardware-Assisted Occlusion Tests. In Closing.

14. Outdoors Algorithms.

Overview. Data Structures for Outdoors Rendering. Geomipmapping. ROAM. Chunked LODs. A GPU-Centric Approach. Outdoors Scene Graphs. In Closing.

15. Character Animation.

Analysis. Explicit Versus Implicit Methods. Explicit Animation Techniques. Implicit Animation Overview. Prop Handling. A Note on Vehicles. Limb Slicing. Facial Animation. Inverse Kinematics. Blending Forward and Inverse Kinematics. In Closing.

16. Cinematography.

First-Person Shooters. Handling Inertia. Flight Simulators and Quaternions. Third-Person Cameras. Cinematic Cameras: Camera Styles. Cinematic Cameras: Placement Algorithms. Agent-Based Approaches. In Closing.

17. Shading.

Real-World Illumination. Light Mapping. The BRDF. Nonphotorealistic Rendering. In Closing.

18. Texture Mapping.

Types of Textures. Tiling and Decals. Filtering. Mipmapping. Texture Optimization. Multipass Techniques. Multitexture. Texture Arithmetic and Combination. Detail Textures. Environment Mapping. Bump Mapping. Gloss Mapping. In Closing.

19. Particle Systems.

Anatomy of a Particle System. The Particle Data Structure. Some Notes on Architecture. Speed-Up Techniques. In Closing.

20. Organic Rendering.

Nature and Complexity. Trees. Grass. Clouds. Oceans. In Closing.

21. Procedural Techniques.

Procedural Manifesto. Renderman. Real-Time Shading Languages. Types of Shaders. Texture Mapping. Particle Systems. Animation. Special Effects. In Closing.

22. Geometrical Algorithms.

Point Inclusion Tests. Ray Intersection Tests. Moving Tests. Point Versus Triangle Set Collision (BSP-Based). Mesh Versus Mesh (Sweep and Prune Approach). Computing a Convex Hull. Triangle Reduction. In Closing.


Appendix A: Performance Tuning.

Analysis Techniques. Analysis Tools. General Optimization Techniques. Application. Efficient Data Transfer. Tuning the Geometry Pipeline. Tuning the Rasterizer Stage. Other Optimization Tools. In Closing.

Appendix B: OpenGL.

Philosophy. Basic Syntax. Immediate Mode Rendering. Transformations. Camera Model. Lighting. Texturing. Working in RGBA Mode. Display Lists. Vertex Arrays. OpenGL Extensions. Efficiency Considerations. Geometric Representation. In Closing.

Appendix C: Direct3D.

History. Booting Direct3D. Handling Geometry. Indexed Primitives. User Pointer Primitives. Efficient Geometry Delivery. Flexible Vertex Formats. Matrices, Cameras, and Transforms. Working with Texture Maps. Lighting. Render States. The Extension Library. Animation Helpers. In Closing.

Appendix D: Some Math Involved.

Distances. Trigonometry. Vector Math. Matrices.

Appendix E: Further Reading.

Part 1. Chronology Of Game Programming. Part 2. Game Architecture. Part 3. Data Structures and Algorithms. Part 4. Design Patterns. Part 5. User Input. Parts 6, 7I, and 8: Fundamental AI Technologies, Action-Oriented AI, and. Tactical AI. Part 9. Scripting. Part 10. Network Programming. Part 11. 2D Programming. Part 12. 3D Pipeline Overview. Part 13. Indoors Rendering. Part 14. Outdoors Algorithms. Part 15. Character Animation. Part 16. Inematography. Part 17. Shading. Part 18. Texture Mapping. Part 19. Particle Systems. Part 20. Organic Rendering. Part 21. Procedural Techniques. Part 22. Geometrical Algorithms. Appendix A: Performance Tuning. Appendix B: OpenGL. Appendix C: Direct3D. Appendix D: Some Math Involved.


Additional information

Core Techniques and Algorithms in Game Programming by Daniel Sanchez-Crespo Dalmau
Used - Good
Pearson Education (US)
Book picture is for illustrative purposes only, actual binding, cover or edition may vary.
This is a used book - there is no escaping the fact it has been read by someone else and it will show signs of wear and previous use. Overall we expect it to be in very good condition, but if you are not entirely satisfied please get in touch with us

Customer Reviews - Core Techniques and Algorithms in Game Programming