Real-Time Shading by Marc Olano, Michael McCool & John C. Hart