Updates

Latest Tweet



What's New?

Check out for latest innovation, a computer based training video collection


Like this Page

The Cg Tutorial: The Definitive Guide to Programmable Real-Time Graphics Review by wiredweird

High-grade, low-math intro to vertex shaders

The current generation of GPUs puts a huge amount of rendering power at your fingertips. This book gives a great intro to a range of highly versatile techniques, including bump maps, shadows, complex illumination models, fog, non-realistic rendering, and lots more. You need a little math, but only what's given here. For example, you'll need to know what a dot product is, and the formulas are given. You won't need to know all the extras, like the geometric and trigonometric properties of dot products - those are simply stated where they become useful. Best, the entire discussion is illustrated with simple, legible samples of working code. The cut&paster gets off to a running start. This book really delivers what the title promises: Cg, by means of clear discussion and useful examples.

The book does not deliver what the title does not promise. For example, the authors discuss the effect of finer or coarser tesselation on image quality, but give no idea how to create the geometric models. Because the authors discuss only what goes on inside the GPU, they scarcely mention how to get your shader programs into it, and scarcely mention vertex shaders at all. Those aren't defects in the book, they're choices made by the authors. This book does a lot, but you'll need other references, possibly more than one of them, if you want to build a complete application.

Advanced graphics programmers have probably seen most of this before, and the barest beginners are still struggling with their box's shrink-wrap code samples. If you're ready for the second and third steps of graphics programming, then this could be very helpful. The "gallery" section could be a bit longer and the images a bit bigger, but this is really a how-to book and succeeds nicely in what it set out to do.

-- wiredweird