Course material 2010–11

# Advanced Graphics

**Principal lecturer:** Prof Neil Dodgson**Additional lecturer:** Dr Alex Benton**Taken by:** Part II**Syllabus**

**Past exam questions:** Advanced Graphics, Advanced Graphics and HCI**Information for supervisors** (contact lecturer for access permission)

# Handouts

**PDF of entire lecture handout** (1.2MB)

The handout is also available in large size in four parts:

PDF of Prof. Dodgson's lecture notes in large size (430kB)

PDF of Prof. Dodgson's slides (one slide per page) (1MB)

PDF of extract from Rogers and Adams (4MB)

# Alex Benton's material

# Useful web sites

## General

- A wide range of instructional materials covering various areas in Computer Graphics, provided by SIGGRAPH.

## Graphics hardware

- nVIDIA's Introduction to the Graphics Pipeline from 2004 -- inclusion of this link does not constitute endorsement of nVIDIA's products

## Movies

- Youtube video of the making of the wireframe CGI in
the original
*Star Wars* - My
work on
*Alien*by Brian Wyvill.

## Ray tracing

- A gallery of ray traced images at ART.
- An applet which demonstrates how the ray tracing algorithm works.
- For practical experience of ray
tracing, download and play with either
*POVray*(`http://www.povray.org/`) or*Rayshade*(`http://graphics.stanford.edu/~cek/rayshade/`). At right are three POVray's scenes. The wood box scene comes with the POVray release. The two images of spheres are simple scenes, for which the source is available: basic spheres, ring of spheres inside a sphere.

## Beziers, B-splines and NURBS

- Bezier and B-Spline applets with which you can play to get more intuition as to how these things work, provided by the Computer Science department at Technion.
- A B-spline tutorial with applets, which allow you to modify the knot spacing.
- A B-spline tutorial and applet at Imperial College.
- A basic B-spline demonstrator at University of Michigan.

## Subdivision

- The subdivision.org website which compliments the book "Subdivision Methods For Geometric Design: A Constructive Approach" by Joe Warren and Henrik Weimer. It has a short tutorial on subdivision and Java applets illustrating both curve and surface subdivision.

## Implicits and CSG

- I used Brian Wyvill's presentation in the lectures. There is a PDF of the relevant slides. Brian's whole presentation is also available from the University of Calgary's web server.
- HyperFun - a modelling package which uses implicit surfaces as its principal modelling primitive.
- Three applets: basic implicit surface, implicit surface toggling between addition (standard implicit) and maximum (CSG union), implicit surface where the primitives have exclusion zones, implicit surface attempting to imitate water (but not succeeding).

To see the Java source code, replace .html with .java in the hyperlinks.

## Radiosity

## Animation

**Mass-spring**A physics demonstrator showing a mass-spring system in action; an applet demonstrating Euler's method; MyPhysicsLab explanation of the Runge-Kutta algorithm which is used in most of their physics simulations; an applet that compares Euler, Improved Euler, and Runge-Kutta graphically;*Clothy*- a simple mass spring cloth simulator**Water simulations**Water simulations

To see the Java source code, replace .html with .java in the hyperlinks.

The rather poor "blobby water simulations" are under "Implicit and CSG" above.**Kass and Miller**'s 1990 SIGGRAPH paper on which the above water simulations were based (scanned version of the paper for people outside the`cam.ac.uk`domain)**Blobbies for water**Animations demonstrating how implicit surfaces ("metaballs", "blobbies") can be used to model fluids.