VTR – 24/25 Edition
Nau3D
Assessment
Lecture 1 – Introduction to the graphics pipeline and shader programming
25/02/06
Topics:
- Course presentation and details of the assessment procedure;
- The rasterization pipeline and its components;
- Brief introduction to NAU.
- Shader programming.
Materials:
Lecture 2 – Directional Light – Gouraud vs. Phong
25/02/13
Topics:
- Toon Shading: from vertex shading (Gouraud) to per pixel shading (Phong)
- Normalization issues
- Specular component with Phong Equation
Materials:
Lecture 3 – Point and Spotlights
25/02/20
Topics:
- The geometry of point and spotlights
Assignment:
- starting from the directional light project implement a point light and a spotlight
Materials:
Lecture 4 – Texturing: texture coordinates
25/02/27
Topics:
- Texture coordinates as a vertex attribute
- Usage of texture coordinates as data
- Implementing functions based on texture coordinates
Assignment:
- Update the shaders to perform multitexturing on a cube
Materials:
- Starting point for class: ZIP
- Texturing notes LINK
- Shaders discussed in class (ZIP)
- Models and textures (models textures)
Lecture 5 – Texturing
25/03/06
Topics:
- Applying textures
- Using multiple textures to achieve complex effects
- Perlin Noise
Assignment:
- Create a shader to render Earh with multiple textures
Materials:
- Texturing notes (PDF)
- Starting point for class (ZIP)
- Earth Texture: (JPG)
- Other textures ZIP
- Noise projects (ZIP)
- Shaders discussed in class (ZIP)
Lecture 6 – Reflection, Refraction and Chromatic Dispersion
25/03/13
Topics:
- Reflection and refraction
- Snell’s law, Fresnel and Schlicks approximation
- Chromatic Dispersion
- Cubemapping
Assignment:
- Write shaders for chromatic dispersion
Materials:
Lecture 7 – Normal Mapping, and Deferred Rendering
25/03/20
Topics:
- Normal mapping and bump mapping
- Tangent space and the TBN matrix
- Computing NM in camera space
- Deferred Rendering and Multisampling
Assignment:
- Implement normal mapping, deferred rendering and multisampling
Materials:
- Nau starting point (ZIP)
- Models and Textures (ZIP)
- Notes on Deferred Rendering (PDF)
- Learning OpenGL – Normal Mapping (LINK)
- Shaders discussed in class (ZIP)
Lecture 8 – Multisampling and Parallax Mapping
25/03/27
Topics:
- Computing NM in tangent space
- Normal mapping issues
- Parallax mapping
- Steep parallax mapping
Assignment:
- Complete project for deferred mapping and multisampling (start from the coded project from last class)
- Nau starting project for Normal mapping in Tangent Space (ZIP)
- Nau starting project for Parallax mapping (ZIP)
Materials:
- Learning OpenGL – Parallax Mapping (LINK)
Lecture 9 – Geometry Shader
25/04/02
Topics:
- Geometry Shader: where it fits on the graphics pipeline, features and use cases.
Assignment:
- NAU Projects: show normals (to do) (ZIP)
Materials:
- Geometry Shader starting point for class (ZIP)
- Geometry Shader at Khronos (LINK)
- Mike Bailey notes on Geometry Shaders (LINK)
- GLSL Tutorial at Lighthouse3D (LINK)
- Nau Project Samples (ZIP)
Lecture 10 – Tessellation Shaders
25/04/10
Topics:
- Features and functionality of the Tessellation shaders.
- The full graphics pipeline.
- The tessellation process.
- Bezier patches, PN-Triangles, Phong tessellation
Assignment:
- Phong Tessellation (ZIP)
Materials:
- Nau projects (ZIP)
- Phong Tessellation (LINK)
- PN-Triangles (PDF)
- Slides on Tessellation shaders with OpenGL (PDF)
Lecture 11 – Shadows
25/04/24
Topics:
- Shadow Volumes
- Shadow Maps: Vanilla version, PCF, VSM and ESM
- Trapezoidal Shadow Maps and Parallel split shadow maps
Assignment:
- Nau Projects to build shadow maps (ZIP)
Materials: