Description
Aims:
Understanding the theoretical concepts behind computer that generate pictures from virtual worlds and teaching practical skills to implement them.
Intended learning outcomes:
On successful completion of the module, a student will be able to:
- Perform operations to 3d primitives using linear algebra.
- Write a simple ray-tracer to intersect primitives with rays through pixels.
- Understand how all steps of rasterization work and being able to code that from scratch.
- Understand the concept of Monte Carlo simulation and how it relates to image synthesis.
- Implement Monte Carlo simulations.
- Use scene graphs, including light, material and textures to describe virtual 3D worlds.
Indicative content:
The following are indicative of the topics the module will typically cover:
Introduction:
- The painter’s method.
Creating an image using ray tracing:
- Ray casting using a simple camera.
- Local illumination.
- Global illumination with recursive ray tracing.
Specifying a general camera:
- World / image coordinates.
- Creation of an arbitrary camera.
- Ray tracing with an arbitrary camera.
Constructing a scene:
- Scene hierarchy.
- Transformations of objects / rays.
- Other modelling techniques.
Acceleration Techniques:
- Bounding volumes.
- Space subdivision.
From ray tracing to projecting polygons:
- Graphics pipeline.
- Transforming the polygons to image space.
- Sutherland-Hodgman clipping.
- Scan conversion.
- Z-buffering.
- Interpolated shading.
- Texture mapping.
- Back-face culling.
Shadows:
- Shadow volumes.
- Shadow buffer.
- Shadow mapping.
- Soft shadows.
The nature of light:
- Transport theory, Radiance, luminance, radiosity.
- The radiance equation.
- Photon mapping.
- Monte Carlo integration.
Parametric curves and surfaces:
- Bezier Curves.
- B-Splines Curves.
- Parametric surfaces.
Requisites:
To be eligible to select the module delivery Undergraduate (FHEQ Level 6) as optional or elective, a student must: (1) be registered on a programme and year of study for which it is a formally available; and (2) have understanding of linear algebra and basic programming.
To be eligible to select the module delivery Postgraduate (FHEQ Level 7) as optional or elective, a student must: (1) be registered on a programme and year of study for which it is a formally available; and (2) have understanding of linear algebra and basic programming.
Module deliveries for 2024/25 academic year
Last updated
This module description was last updated on 19th August 2024.
Ìý