Latest News
spacer View All spacer
 
July 4, 2009
 
CyberConnect2 Boss Talks 'Quality Of Life' For Japanese Developers [2]
 
Warner's $33M Midway Acquisition Approved By Judge [7]
 
July's Top 25 Facebook Games Topped By Zynga, MindJolt Titles
spacer
Latest Jobs
spacer View All     Post a Job     RSS spacer
 
July 4, 2009
 
Warner Bros Entertainment
Senior Game Designer
 
Monolith Productions
Sr. Software Engineer, Engine
 
Trion San Diego
Terrain Artist
 
Trion Austin
Technical Systems Analyst
 
Edge of Reality
Project Art Director/Art Lead
 
Monolith Productions
Senior Software Engineer, Tools
 
Warner Bros Entertainment
Senior Environment Artist
 
Sony Computer Entertainment America
Senior Manager Media Channel Partnerships
spacer
Latest Features
spacer View All spacer
 
July 4, 2009
 
arrow The Formation And Evolution of CyberConnect2
 
arrow Game Design Essentials: 20 RPGs [20]
 
arrow Real-Time Cameras - Navigation and Occlusion [1]
 
arrow Persuasive Games: Gestures as Meaning [7]
 
arrow Sponsored Feature: BattleClinic's Chris Condon On Using Iovation To Prevent Gaming Fraud, Chargebacks
 
arrow A Different Track: Frank Gibeau Talks Strategy [1]
 
arrow Leading The Design of APB [2]
 
arrow Dramatic Play [19]
spacer
Latest Blogs
spacer View All     Post     RSS spacer
 
July 4, 2009
 
How to Monetize Flash Games Efficiently [5]
 
Crowdsourcing Game Audio: Lessons Learnt [3]
 
Thinking Out of the Box [3]
spacer
About
spacer News Director:
Leigh Alexander
Features Director:
Christian Nutt
Editor At Large:
Chris Remo
Advertising:
John 'Malik' Watson
Recruitment/Education:
Gina Gross
 
Features
  Book Review: Core Techniques And Algorithms
by Justin Lloyd
del.icio.us del.icio.us digg this! digg this! reddit! reddit! stumble it! stumble it! RSS
 
 
March 2, 2004
 

 

Core Techniques and Algorithms in Game Programming is one of those rare programming books that you really can judge by the cover. The author, Daniel Sanchez-Crespo—a regular contributor to Byte (Spain), Gamasutra and Game Developer—did an excellent and thorough job in the 800 pages that he had to work with. Throughout the book, even though English is not the author’s native language, he is clear and concise with every aspect of the technology he covers. This is actually one of the books I recommend for students on my game programming courses at the Academy of G.E.T. in Hollywood—confirmation, in my mind, of the book's intent of being a textbook.

Advertisement

Sanchez-Crespo begins with a brief chronology of games, moves on to the very basics of game architecture and the process of programming, then ramps up from there, thoroughly examining every aspect of the technology that makes a modern game, including the oft-neglected “input/update/render” loop. He doesn’t hang around either: he jumps feet-first into the common data structures (lists, queues and stack) and the not so common (deques, graphs and trees) that you will encounter, and examines what the Standard Template Library (STL) provides off-the-shelf. Sanchez-Crespo recognizes the power of the STL but also concedes that not all games should trade ease of implementation for a degradation in speed.

Verdict
On Game Design cover

Title: Core Techniques and Algorithms in Game Programming
Author: Daniel Sanchez-Crespo
Publisher: New Riders
ISBN: 0131020099
Published: Sep. 11, 2003
Pages: 888

Rating (out of 5):
5.0 out of 5 stars

Pros

  1. Covers a lot of technical areas in-depth.
  2. Author explains the areas very clearly.
  3. The book contains a lot of information, not code dumps.

Cons

  1. Could use extra volumes expanding on the information already contained.
  2. Some sections, such as input & sound, are far too brief to be really useful.
  3. Lack of an accompanying CD of code and examples.
 
 
 

Graphics plays a large part in the book, with several chapters dedicated to 2D and 3D rendering, along with the effects achievable in each area. 3D is a large subject and suitable for an entire volume all to itself, and Sanchez-Crespo performs a stellar job keeping each chapter tightly focused on the particular subject, introducing each technology at the proper pace. 3D is further divided to include indoor and outdoor rendering systems using chunked terrain rendering and portals of all types. Trailing the generic 3D sections is a large detailed detour in to character animation that covers skinned meshes and kinematics (both forward and inverse), as well as proper facial and limb animation systems.

The second largest area of this book is AI. Sanchez-Crespo really knows this subject. Outside of a dedicated book on game AI such as AI Programming Wisdom, this book offers some of the most comprehensive information on the subject delving into single unit and multiple unit navigation and coordination, using core AI techniques such as finite state machines and rule-based systems. The AI section alone makes owning the book well worth the shelf space.

Some of the shorter chapters cover networking, scripting, performance tuning, DirectX and OpenGL and their differences, an overview of the math required to get to grips with modern games technology, and finally the obligatory “further reading” section.

Just so you don’t get the impression this book is all hardcore programming, Sanchez-Crespo includes a chapter covering the cinematic aspects of games—something everybody involved in 3D games should learn, though it’s too brief for my liking. There’s even a chapter on design patterns, what they are, and their usage, including usability patterns (how the user interacts with the user interface)—a rare detour for a programming book.

Because the book is mostly API agnostic, it’s not going to suddenly go out of fashion like many API or narrow-focus books based on a particular technology. Any book on general game programming is going to have to be brief in some areas simply because the domain is so broad. Sanchez-Crespo does a good job, covering so much in such a brief space you wonder how he got it all in. Any subject you can think of pertaining to game programming is in this book, which is its strength and weakness. To do the subject justice, the book needs to be longer, and to the author’s credit he did the best job in the 800 pages provided. It’s a strong foundation book for aspiring game developers and there's content in there for experienced developers too. It’s also a book you can give to a not-so-technical game designer and have them read through it to get a good foundation in many of the techniques and technologies that are being implemented by games programmers in studios all over the world. This book will definitely have a long shelf life.

 
Article Start Page of
 
Comments

Anonymous
20 Apr 2008 at 5:49 pm PST
profile image
This book seems impossible to get. Amazon do not stock it any more. It comes highly rated, but where can it actually be bought? Is there any chance of a second edition some time soon???

Manuel Bua
31 May 2008 at 6:39 am PST
profile image
It has been quite difficult but i've found it and others "New Riders" hard-to-find titles as well, right here:

http://www.peachpit.com/store/product.aspx?isbn=0131020099

Get it 'til is there ;)


none
 
Comment:
 


Submit Comment