VI I – 19/20 Edition

 

Assessment

Assessment details and theme proposals (Google Docs)


Nau3D

GitHub (LINK)
Documentation in (LINK)
Windows Binaries (ZIP)


Syntax Highlight for GLSL – Notepad++

Dark and Light Themes (ZIP)


Lecture 13 – Compute Shaders

19/12/18
Topics:
Compute Shader: inputs e outputs.
Work groups and shared memory.
Image processing: exploring three alternatives with the graphics pipeline
Materials:
Compute Shader Slides by Mike Bailey (LINK)
OpenGL.org wiki – compute shader (LINK)
Nau Projects (ZIP)
TO DO (ZIP)


Lecture 12 – Tessellation Shaders II

12/12/18
Topics:
Tessellation shaders in practice
Materials:
Nau projects TODO: (ZIP)


Lecture 11 – Tessellation Shaders

05/12/18
Topics:
Features and functionality of the Tessellation shaders. The full graphics pipeline.
The tessellation process.
Bezier patches, PN-Triangles, Phong tessellation
Materials:
Phong Tessellation (LINK)
PN-Triangles (PDF)
Slides on Tessellation shaders with OpenGL (PDF)
Nau Projects (ZIP)


Lecture 10 – Geometry Shader

28/11/17
Topics:
Análise das funcionalidades e características do geometry shader, e o seu posicionamento no pipeline.
Dados de entrada e leque de opções para saídas: texture arrays e viewports.
Análise de exemplos: detecção de contornos, visão stereo, e visualização de normais.
Materials:
Geometry Shader at Khronos (LINK)
Mike Bailey notes on Geometry Shaders (LINK)
GLSL Tutorial at Lighthouse3D (LINK)
NAU Projects: show normals (to do) (ZIP)


Lecture 9 – Procedural Materials

14/11/19
Topics:
Ivory, Gooch and Hatch shading
Perlin Noise
Marble and Wood Shaders
Deferred Rendering
Materials:
Nau project for procedural materials (ZIP)
Nau Projects: Barrel (ZIP)


Lecture 8 – Normal and Parallax Mapping

07/11/19
Topics:
Normal mapping and bump mapping
Tangent space and the TBN matrix
Computing NM in tangent space and in camera space
Normal mapping issues
Parallax Mapping and Steep Parallax Mapping with Self Shadowing
Assignment:
Nau Project for normal mapping (ZIP)
Materials:
Nau project for parallax Mapping (ZIP)


Lecture 7 – Reflection and Refraction

31/10/19
Topics:
Reflection and refraction
Snell’s law, Fresnel and Schlicks approximation
Cubemapping
Assignment:
Write shaders for reflection and refraction using cube mapping starting from ZIP
Materials:
Cube Mapping (PDF)
Nau Projects: Cube mapping (ZIP)


Lecture 6 – Texturing

24/10/19
Topics:
Applying textures
Using multiple textures to achieve complex effects
Materials:
Texturing notes (ZIP)
Nau projects (ZIP)


Lecture 5 – Texture coordinates

17/10/19
Topics:
Texture coordinates as a vertex attribute
Usage of texture coordinates as data
Implementing functions based on texture coordinates
Usage of textures as precomputed functions
Assignment:
Build a project to texture a cube
Materials:
Texture Coordinates (LINK)
Nau projects (ZIP)


Lecture 4 – Point and spot lights

10/10/19
Topics:
Equations and notes regarding point and spotlights
Assignment:
Extend the suplied shader to implement point and spotlights
Materials:
NAU project for directional light (ZIP)


Lecture 3 – Gouraud vs. Phong

03/10/19
Topics:
Toon Shading per vertex (Gouraud), mixed, and per pixel (Phong)
Normalization issues
Assignment:
Implement directional light with specular component
Materials:
Notes: Lighting – Gouraud and Phong (PDF)
NAU Projects (Projectos-Aula-3-toon-TO_DO)


Lecture 2 – Introduction to shader writing

26/09/19
Topics:
NAU Project definition
Writing Shaders: Lighting per vertex
Materials:
NAU Projects (Projectos-Aula-2 -TO_DO)
Writing shaders (PDF)


Lecture 1 – Introduction to the graphics pipeline and shader programming

19/09/19
Topics:
Course presentation and details of the assessment procedure.
The rasterization pipeline and its components.
Shader programming.
Brief introduction to NAU.
Materials:
Lighthouse GLSL Tutorial (LINK)
Core OpenGL Setup (PDF)

 Posted by at 10:59 pm