Introduction to Graphics
Lectures
Ticks
There is one tick to be completed in this course with the deadline on 19 November 2025
The work needs to be submitted via Moodle course page. The detailed instruction can be found on the Moodle course pages.
Supplementary material
These references to external websites are intended to be useful, but the links are provided without any particular endorsement and with no guarantee of accuracy.
- OpenGL API documentation at OpenGL.org
- A wide range of instructional materials covering various areas in Computer Graphics, provided by ACM SIGGRAPH, including materials on colour spaces, colour reproduction, texture and bump mapping, lines and circle drawing, anti-aliasing, ray tracing, and 3D projection.
- Advances in Real-Time Rendering in 3D Graphics and Games - a SIGGRAPH course with late-breaking work and advances in real-time computer graphics.
- Shadertoy - great way to explore and experiment with shader programming.
Rendering competition
The brief for 2025/2026 competition was:For this year's competition, you need to create a real-time ray-tracer in GLSL and design a stunning animation. You will write your ray-tracer using Shadertoy online platform, where you can write and test your code directly from your browser. You do not need a powerful discrete GPU, as even integrated GPUs can easily ray trace simple scenes.
To qualify for the competition, you need to follow the rules:- The ray tracer can include the elements covered in Tick 1 and Tick 1* descriptions and two optional extensions: texture mapping (which is a straightforward extension of bump mapping) and refraction. You must not use ray-marching or any other rendering technique not covered in the course.
- You must not borrow the code from the existing Shadertoy submissions. The submissions that are derivative of existing Shadertoy shaders will be disqualified.
- In addition to planes, spheres implemented in the basic ray tracer, you can add support for cylinders, cones, and cubes (optional).
- The scene description can be manually designed, but it can also be gen- erated procedurally.
- The scene can contain up to 100 objects.
- The animation should be no more than 30 seconds long.
- 1st place: Patrick Williams for Spinning Menger Sponge
- 2nd place: John Williams for Focused depth
- 3rd place: Vincent Xu for Fly Me to The Moon
- Honourable mention: Rohan Saketh Pilli for Lorentz Transform Visualizer
- Honourable mention: Daria Sanina for Light bulbs