Skip to content

References: 3D Cameras, Lighting Models, Materials & Shaders

  1. Phong reflection model - Wikipedia - Classical empirical model for calculating ambient, diffuse, and specular illumination of points on a surface in 3D computer graphics for realistic material rendering.

  2. OpenGL Shading Language - Wikipedia - High-level shading language based on C, executing parallel vertex and fragment shader programs directly on graphics processing units (GPUs) for high-performance visual effects.

  3. Texture mapping - Wikipedia - Technique for mapping 2D image bitmaps and UV coordinate wraps onto 3D polygon mesh surfaces for rich visual detail and realistic surface texturing.

  4. The Book of Shaders - Patricio Gonzalez Vivo and Jen Lowe - Self-Published / Online - Gonzalez Vivo and Lowe revolutionized GPU shader pedagogy with their interactive visual fragment shader platform, teaching procedural coordinate math to digital artists and creative coders.

  5. OpenGL Programming Guide: The Official Guide to Learning OpenGL (Ninth Edition) - John Kessenich, Graham Sellers, and Dave Shreiner - Addison-Wesley - The definitive Red Book established industry standards for lighting models, camera view matrices, specular highlights, and vertex attributes in modern OpenGL and WebGL pipelines.

  6. p5.js 3D Lighting and Material Reference - p5.js Foundation - Documentation for ambientLight(), directionalLight(), pointLight(), ambientMaterial(), specularMaterial(), texture(), and createShader() for advanced 3D surface illumination and custom GPU shading in p5.js.

  7. WebGL Shaders and GLSL Fundamentals - WebGL Fundamentals - Detailed guide explaining GLSL types (vec2, vec3, vec4, mat4), attributes, uniforms, varyings, and vertex-to-fragment pipeline data flow in programmable GPU shaders.

  8. The Coding Train: Custom WebGL Shaders in p5.js - The Coding Train - Video series demonstrating how to write vertex and fragment shader files (.vert, .frag) and pass mouse/time uniforms into p5.js shaders for generative graphics.

  9. Learn OpenGL: Basic Lighting - LearnOpenGL (Joey de Vries) - Acclaimed tutorial explaining diffuse light vectors, normal vectors, specular shininess exponents, and ambient light equations with clear visual diagrams and mathematical derivations.

  10. Shadertoy Beta and Fragment Shader Playground - Shadertoy (Inigo Quilez) - World-renowned online community and live GPU code repository demonstrating procedural raymarching, fractals, and lighting in GLSL fragment shaders for creative graphics developers.