Computer graphics II (NPGR004)

Code/hours: NPGR004, 2/1 Z + Zk (summer)
Schedule: Mon 14:00 S4 (Malá Strana)
Lecturer: Josef Pelikán
Prerequisites: basic programming course (C#), basic calculus and linear algebra, Computer graphics I (NPGR003)

This course extends the Computer graphics I course and focuses on realistic rendering fundamentals. It covers basic shading and shadows, ray tracing, textures, anti-aliasing and sampling, fast ray-object intersections and speedup techniques, radiosity methods.

Additional labs focus on practical aspects of the subject. Exercises are using .NET programming in C# language. See the GrCis repository.


  • shading and shadows - basic and physically plausible shading models, smooth shading, shadow casting
  • ray-tracing - principles of ray casting, recursive ray tracing, ray vs. object intersections, CSG scene representation
  • anti-aliasing and sampling - principles of anti-aliasing, various sampling methods, adaptive sampling
  • textures - 2D and 3D textures, procedural textures, noise functions
  • distributed ray-tracing (Monte-Carlo) - principle, applications in soft shadows, glossy reflections, motion blur, etc.
  • ray-tracing speedup - bounding volumes, bounding hierarchies, spatial directories, tree-based speedup techniques
  • radiosity - basic principle, form factors, effective solution of sparse linear systems, hierarchical radiosity


Copyright (C) 1995-2017 J.Pelikán, last change: 2017-02-20 11:49:59 +0100 (Mon, 20 Feb 2017)