I've been looking for a book that takes a bottom-up approach for graphics programming. So something that starts with 2d filtering, maybe moving into normal mapping, then ambient occlusion, etc.

I ask because I've been lazy for the last few years in game development and always used an engine that handles this. I want to start writing some shaders for my games instead of relying on the cryptic ones that I've borrowed in the past. I think a very strong knowledge in this will help and I'm a bottom-up kind of learner so please help me out!

I know the GPU Gems series is great, but they seem to be more like a cookbook than a bottom-up approach that I want. You tend to get more scattered theory from cookbooks instead of building on theory from previous chapters.

EDIT: Preferably something you've read! I can search amazon for this, but it's hard to get a unbiased review that way.


1 Answer 1


Most "shader effects" like filtering and normal mapping have very little in common that could be considered building blocks between effects. 2D filtering and normal mapping aren't any more difficult or advanced than each other, for example, and the same is true of many effects with only a few notable exceptions (the various flavors of shadow mapping come to mind). They're just different. That's why you'll see so many cookbook-style books when it comes to discussing actual graphical effects programming (as opposed to graphics programming at a fundamental level).

Most in-world effects (i.e., not post-processing ones) are rooted at some level in the physical properties of light and the simulation or approximation thereof. To that end, reading books that focus on ray-tracing as a rendering method may help you better understand the core theories involved (Physically Based Rendering is also an excellent read).

Once you understand that, the "scattered theory" present in books like GPU Gems will relate primarily to the specific ways in which the GPU can be manipulated to approximate the real-world physical scenarios desired, and will seem less disjointed.

Similarly, post-processing shaders tend to draw from signal and image processing theory. I think I recall having this book as a textbook in a class on the subject, but don't recall too much about it.

In general, though, you aren't going to find too much that caters to that kind of approach because the theory that binds together all the various shader effects that are in vogue right now is structured like a very, very shallow tree rather than a very deep one -- there are very few dependencies that cater to "bottom up" approaches once you get beyond the fundamentals of graphics programming theory itself (how to structure the scene, the transformation pipeline and associated linear algebra, rasterization, et cetera).

  • \$\begingroup\$ great clarification. I can see how that would be the case now \$\endgroup\$
    – brandon
    Commented Apr 28, 2011 at 17:06

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .