Course pages 2013–14

# Advanced Graphics

# Neil Dodgson's material

*Corrected* PDF of notes with embedded hyperlinks

Single page showing the errors on page 19 of the printed handout

Photon mapping lecture slides

# Alex Benton's material

# Useful web sites

## Graphics cards

- nVIDIA's 2004 Eurographics presentation on graphics card development 1995-2004 (12MB PDF, from nVIDIA's website) - inclusion of this link does not comprise endorsement of nVIDIA.

## Early Computer Graphics in Movies

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

## Ray tracing

- 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 Matlab implementation of De Boor's algorithm which generates a set of points along a B-spline curve, given the knot vector, control points, t-values for the locations of the desired points, and order of the B-spline.
- A bi-cubic Bezier patch is bivariate extension of the univariate cubic Bezier curve. It can be thought of as four univariate Bezier curves (blue curves) along which four control points (red points) move in unison. Those four control points define a Bezier curve (red curve), which sweeps out a surface in space (grey surface). The overall bi-cubic Bezier patch has sixteen control points (yellow points are the corners, cyan points are the inner control points along each of the four edges, magenta points are the four inner points of the whole patch). From
*An Interactive Introduction to Splines*, page on "Tensor product spline surfaces". - A 3D Bezier patch explorer in Flash.
- 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.
- NURBS and CAD - a history of 30 years of the use of the technology in industry

## 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

- HyperFun - a modelling package which uses implicit surfaces as its principal modelling primitive.