# Computer Graphics: 2024-2025

| |

| Schedule A2(CS&P) — Computer Science and Philosophy Schedule B1 (CS&P) — Computer Science and Philosophy Schedule A2 — Computer Science Schedule B1 — Computer Science |

| Michaelmas Term 2024 (16 lectures) |

## Overview

This course is an introductory course in Computer Graphics, and will describe mathematical tools for reasoning about displaying 2D and 3D geometric objects that are stored in a variety of data structures (covered separately in Geometric Modelling). The focus will be on display challenges and techniques for achieving satisfactory representations. Candidates may take Computer Graphics either before or after taking Geometric Modelling as the two have been designed to complement each other. There is no expectation to take both courses.

## Learning outcomes

The lectures give an introduction to direct applications of vector calculus in viewing and illuminating 3D objects in a variety of styles (wireframe, facets, etc). Algebraic manipulation of 3D and 4D matrices leads to transformations that are applied to graphical scenes in order to make them appear to move or be viewed from different angles. Different ways of representing colours and intensities are looked at, together with conversion between these.

The classes reinforce this knowledge through pen and paper calculational questions about the schemes studied, illustrating numerical manipulation that can be expected in an examination setting.

More complex numerical manipulation is covered in practicals, where the heavy number crunching is used to achieve aesthetic effects. All practicals deal with simple spherical objects, but are open ended, allowing the students to create more realistic scenes.

## Synopsis

The course materials will be published online as the course progresses

The following topics will covered, not necessarily in this order

- Raster Images
- Basic Transformations, Transformation Matrices
- Relative Positions of Objects (vector algebra)
- Looking through a Camera
- Projections (parallel, orthographic)
- The Graphics Pipeline
- Wireframe Rendering, Facet Rendering, Ray-traced Rendering
- Colour schemes
- Texture mapping, real world materials
- Shaders
- Quaternions
- Articulated objects

## Syllabus

Examinable topics

- Raster Images
- Basic Transformations, Transformation Matrices
- Relative Positions of Objects (vector algebra)
- Looking through a Camera
- Projections (parallel, orthographic)
- The Graphics Pipeline
- Wireframe Rendering, Facet Rendering, Ray-traced Rendering
- Colour schemes
- Texture mapping, real world materials
- Shaders
- Quaternions
- Articulated objects

## Reading list

The** **main course text (referred to in each set of lecture notes) is

**Fundamentals of Computer Graphics**by Peter Shirley et al., CRC Press (2009), ISBN 978-1568814698

Other concepts, such as quaternions and kinematic chains, can be studied using

**3D Math Primer for Graphics and Game Development**by Fletcher Dunn and Ian Parberry, CRC Press (2011)**Computer Animation: Algorithms and Techniques**by Rick Parent, Newnes (2012)

Online book

- Physically based rendering by Matt Pharr and Wenzel Jakob, MIT Press (2023)

Supplemental Reading. Books you are likely to find in college libraries

**Interactive Computer Graphics: A Top-Down Approach with Shader-Based OpenGL**by Shreiner and Angel, Pearson Education ISBN 978-0273752264**Computer Graphics: Principles and Practice**by Foley, Van Dam, Feiner, & Hughes, Addison-Wesley ISBN 0201848406**Mathematics for Computer Graphics**by John Vince, ISBN 1849960224**Real-time Rendering**Akenine-Möller, T., Haines, E., & Hoffman, N. (2019). CRC Press, ISBN 978-1138627000**Global Illumination Compendium**by Philip Dutre (websource: https://people.cs.kuleuven.be/~philip.dutre/GI/)**Computer Graphics with OpenGL**by Hearn, Baker and Carithers, ISBN 978-0132484572

## Taking our courses

**This form is not to be used by students studying for a degree in the
Department of Computer Science, or for Visiting Students who are registered for
Computer Science courses**

Other matriculated University of Oxford students who are interested in taking this, or other, courses in the Department of Computer Science, must complete this online form by 17.00 on Friday of 0th week of term in which the course is taught. Late requests, and requests sent by email, will not be considered. All requests must be approved by the relevant Computer Science departmental committee and can only be submitted using this form.