Beginning OpenGL Game Programming, by Dave Astle and Kevin Hawkins, offers a simpler introduction to programming with the OpenGL application programming interface (API) than many other introductory OpenGL books out there, including their earlier work, OpenGL Game Programming. The book is an introductory text that will find a home with programmers who have worked exclusively either in the DirectX world of Microsoft Xbox and Windows or have only had opportunity to use another proprietary API such as RenderWare.
Beginning OpenGL covers most, but not all, of the current OpenGL specification and the OpenGL Utility Toolkit (GLUT) -- a platform independent API making it easier to use OpenGL across a variety of platforms. The authors have mostly concentrated on the beginning aspect, making the book a short, focused, and easy read -- useful to accomplished programmers with no experience using a 3D API and those programmers coming to OpenGL for the first time -- presenting an OpenGL overview and avoiding the tougher and deeper aspects beyond the fixed function pipeline.
While Beginning OpenGL attempts to remain platform agnostic, the primary platform focus is on the popular and dominant Microsoft Windows. All of the examples are engineered for this single operating system, with an entire chapter dedicated to the specific issues you'll face when implementing a solution on a Win32 platform utilizing OpenGL. However, the authors have made every attempt, where possible, to make the information relevant to programmers developing for other platforms such as Mac OSX and Linux.
Astle and Hawkins wisely avoid non-OpenGL development topics, preferring to concentrate on their chosen subject; kudos to the technical editor for not succumbing to the temptation, which was so prevalent in early Premier Press books, of including the proverbial kitchen sink. Having said that, you can't write a book about game programming without briefly touching on other subjects like the game loop, user input, and audio.
OpenGL Game Programming
Dave Astle and Kevin Hawkins
While the book is pitched as a introductory text, it is aimed squarely at programmers capable of putting together non-3D applications. Both authors are seasoned professionals: Hawkins from the hard-core simulation sector and Astle from the game development field with a lot of cross-platform experience. They make no bones about assuming you know your way around a compiler, C++, and the basics of the math used in 3D graphics. The authors haven't assumed you know what a projection matrix is, or how to handle a camera frustum, but they are expecting you to know how to add two vectors, or multiply two matrices.
The CD contains all of the expected source code from the book with accompanying Microsoft Developer Studio projects, an extension library that simplifies working with OpenGL, and eight bonus chapters that did not make it in to the printed book. These bonus chapters were a complete surprise that are outside of the core of the book. Congratulations are in order to the book's editor for realizing that they didn't quite fit with the central theme, but including them anyway as "optional" material. These chapters cover some not so "beginning" subjects such as quadrics, curves, and surfaces, plus "off-topic" chapters discussing how to utilize DirectAudio and DirectInput; I've already stated that the book is very Microsoft Windows centric to begin with. There's also the obligatory, relatively coherent math primer, which also covers some basic 3D graphics theory, e.g. texture mapping and lighting. I'm sure I've see this primer chapter in another Premier Press book so it might be one of their boiler-plate chapters. The CD also includes a bonus first-person shooter game for you to play -- with full source code and a chapter on how it was created -- that demonstrates most of what was covered in the various chapters such as fog, animated meshes, view transformations, camera movement, and 2D text.
Course Technology has been steering the publication
of Premier Press's books, they have continued to move
from strength to strength. With the publication of
Beginning OpenGL Game Programming, the publisher
is truly showing a strong future commitment to the
game developer market, along with a high level of
service to individual game developers by issuing quality
publications. Beginning OpenGL Game Programming
is a perfect introduction to developers not yet up
to speed on OpenGL development issues.