Author: Peter Shirley
Publisher: A K Peters, 2009
Aimed at: Undergraduates, although suitable for wider audience
Pros: Clear and well-organised presentation of fundamentals and beyond
Cons: Academic and abstract
Reviewed by: David Conrad
This is the third edition of a textbook on computer graphics and it has four new chapters. Each chapter is written by an expert in the field and this has the advantage of producing something authoritative but potentially confusing with ever-changing writing styles. In this case it seems to work well with each of the authors adopting a similar academic style and level.
The most important thing to realise about the book is that it is completely API neutral - in fact it mostly doesn't mention any sort of real graphics hardware or software. So if you are looking for a book on OpenGL or DirectX this isn't one you should consider. It doesn't even deal with the really low-level methods that were needed in the days when graphics hardware was primitive.
The book takes a very broad view of what computer graphics is all about and includes chapters that you might not expect to see in a book strictly on computer graphics. It starts off looking at the basics - ray tracing - but quickly moves into linear algebra, some image processing, the theory of light and colour, random images, textures, blob models and so on.
All of these topics and more are covered in an academic style with a presentation of the fundamentals, an FAQ at the end and some exercises for the reader (no solutions). The book never avoids a mathematical expression where one is needed but the assumed mathematical level is mostly low. For example, it covers splines and other types of interpolation and curve generation, but it doesn't cover the more trendy use of quaternions to represent rotations. It also only touches briefly on the topic of games by way of one of the new chapters which considers the game production process. It does deal with the hardware but only briefly by way of a consideration of graphics pipelines and shaders. But this is not a practical introduction to computer graphics.
If you are looking for a textbook for a course on computer graphics, or if you have missed out on the basics of modern computer graphics, then you will find this book more than useful - it is clear and well organised.