- 04.09: Introduction - Organization
- 11.09: Introduction - Geometry and Transformations
- 18.09: Introduction - Shading and Lighting
- 25.09: Introduction - Shaders Workshop (Handout, Tasks)
02.10: Go to the ICS Day on 01.10 instead
- 09.10: Industry Guest: Marten Palu [seminar will be in Zoom]
- 16.10: 3D Printing Workshop with Jaanus Jaggo [physically in room 2007]
- 23.10: Rendering Non-Euclidean Worlds – Meelis Perli (PDF)
- 30.10: Augmented Reality and Point Set Matching – Karl-Walter Sillaots (PDF)
- 06.11: Unity ECS – Daniel Nael
- 13.11: Ray Tracing – Joonas Praks
- 20.11: 3D Model Animation – Hei Chun Shum (PDF)
- 27.11: CGVR Lab Field Trip [physically in room 2007]
- 04.12: Lighting and Shadows – Anett-Kristin Palmar
- 11.12: Industry Guest: Santiago Montesdeoca from Artineering [seminar will be in Zoom]
- 18.12: Project Expo (14:15 - 18:00)
Together with CGP students
 introductory topics - these include introduction to OpenGL and WebGL, standard graphics pipeline, vertex transformations, colors, lighting and shading models.
|1||Meelis Perli||Rendering Non-Euclidean Worlds||23.10|
|2||Karl-Walter Sillaots||Augmented Reality||30.10|
|3||Daniel Nael||Unity ECS||06.11|
|4||Joonas Praks||Ray Tracing||13.11|
|5||Hei Chun Shum||3D Model Animation||20.11|
|6||Anett-Kristin Palmar||Lighting and Shadows||04.12|
Some arbitrary possible topics
- Color blending – What happens when there are transparent objects in your scene?
- Lighting models – What are the common models? Where and when are they used?
- Texturing – How can one sample from a texture? What kinds of artefacts may appear?
- Curves – Why are they important in CG? What about curved surfaces?
- Global illumination – Pick one or compare different methods: Radiosity, path tracing, photon mapping.
- Realtime realistic rendering – Provide an overview of the common methods or pick some effect (light, wetness, fog, fur / hair, skin) and find out how it's rendered realistically in real time.
- Non-realistic rendering – Where is it used and how is it achieved? Realtime vs prerendered?
- Tessellation – How can this be done in OpenGL 4?
- Post-processing effects – What effects are there? When and how are they used?
- Procedural generation (PCG wiki) – Where and how is it used? How to apply procedural textures to procedurally generated meshes?
- Physically-Based Shading – What is it? Why is it important to understand physical properties of materials for shading? What games / game engines use it?
- Rendering in VR – What extra considerations are in VR? How do different technologies overcome them?
- Vulkan – What can be done with it? Why is it useful? How to Vulkan?
- Subsurface scattering – What is it? How it is implemented? What does it solve?
- Reflections and caustics – What are the modern techniques, which do those?
- GLSL vs HLSL – What are the differences? How are both used?
- Use case study – Find out in detail how graphics are done in one game or movie.
- Motion capture – What are the difficulties today? Best budget setup for it?
- Modern GPU architecture – How are GPU-s built today? What are they optimized for? E.g. Vega, Kepler, Pascal.
- Graphics on consoles / smartphones – What limitations are there in consoles or embedded systems vs the PC? How to overcome them compared to the PC approach?
- Tileable Textures – What methods are there for creating those? Manual vs procedural?
- Ray Tracing with RTX – What can be done with Nvidia's RTX cards?
- Occlusion Culling – How is this achieved? What data structures are used?
- Volumetric Rendering – How to simulate volumetric light transport? Fog, fire rendering?
- Facial Animations – How is it achieved? What are the modern, cheapest, professional solutions?
Find more materials and ideas from the CGVR Lab's recommended literature list.