Part of the difficulty of new comers to the field of real-time graphics to grasp the concept of shaders stems from the fact that most of the classic computer graphics literature concentrates more on the graphics techniques you are trying to achieve (e.g. realistic lighting, post processing effects). The classic literature either provides a heavily academic explanation of shaders or barely contains explanations of what a shader actually is, most of the time just providing some sample shader boiler plate templates and leaving it at that. While there are also many books dedicated exclusively to real-time 3D graphics shader programming, they either assume working knowledge of shaders or barely touch on the basics in a way that is friendly to new comers - and all of them assume that the only people writing shaders are experienced programmers completely forgetting that, thanks to the advances in tools, more and more shaders are now being written in a large part by artists.
With “Introduction to Shader Programming”, Pope Kim has finally closed that big gap in the real-time 3D graphics literature. This book is an invaluable teaching resource, filling the need for anyone needing to understand how shaders work in a practical and straightforward way, while teaching at the same time the bases needed for understanding more advanced shader books and techniques in a very friendly manner. Thanks to this book, shaders will no longer be black magic but useful tools for anyone interested in the subject.
- Daniel Barrero, PhD