Next: Types
Up: Michaelmas Term 1999: Part
Previous: Information Theory and Coding
Lecturers: Dr N.A. Dodgson and Dr P. Robinson
(nad@cl.cam.ac.uk and pr@cl.cam.ac.uk)
No. of lectures: 12
Prerequisite course: Computer Graphics and Image Processing
Aims
This course will develop an understanding of computer graphics and its
applications. It will develop an understanding of three-dimensional
modelling and rendering techniques to a deeper level
than the Part IB Computer Graphics and Image Processing
course. It will facilitate the design and analysis of user interfaces.
Lectures
Part A. 3D modelling [8 lectures]
- 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.
- 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.
- Splines. Revision of Bezier curves and surfaces. B-splines,
from uniform, non-rational B-splines through to non-uniform, rational
B-splines (NURBS). [2 lectures]
- 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.
- Lighting.
Revision of the basic diffuse + specular + ambient
approximation. Radiosity: solving the inter-object diffuse reflection
equations to produce more realistic images.
- 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. [2 lectures]
Part B. Human-computer interaction [4 lectures]
- Introduction: cycle of dialogue. The human virtual machine: Hick's
Law, model human processor, Fitts' Law, power law of practice.
- System evaluation: usability analysis, GOMS, keystroke level
modelling. Conceptual design and mental models.
- User interface design: cognitive walkthrough, design and evaluation
of user trials.
- Novel user interfaces.
Objectives
On completing the course, students should be able to
- explain the strengths and weaknesses of ray tracing, polygon
scan conversion, and line drawing; and describe example applications
of each
- produce equations for each geometric primitive, derive a
ray/primitive intersection algorithm for each, describe how each can
be approximated by polygons
- define NURBS basis functions, use NURBS to the extent that they
can define a circle, explain why NURBS are used in preference to other
curve and surface specification mechanisms
- describe and explain how to use generative models, constructive
solid geometry, implicit surfaces, and voxel rendering. Describe how
each representation can be converted to polygons
- explain the radiosity algorithm
- describe the detailed work from the ``topics in graphics
research'' lectures
- describe the human virtual machine and derive quantitative models
from it
- use psychological models to analyse an interactive system
- apply a range of techniques to predict the behaviour of user
interfaces
- design and undertake an experiment to evaluate a novel user
interface
Recommended books
Foley, J.D., van Dam, A., Feiner, S.K. & Hughes, J.F. (1990). Computer Graphics: Principles and Practice. Addison-Wesley (2nd ed.). [3DM]
Rogers, D.F. & Adams, J.A. (1990). Mathematical Elements for
Computer Graphics. McGraw-Hill (2nd ed.). [3DM]
Newman, W.M. & Lamming, M.G. (1995). Interactive System
Design. Addison-Wesley. [HCI]
Borenstein, N.S. (1991). Programming as if People Mattered.
Princeton. [HCI]
Next: Types
Up: Michaelmas Term 1999: Part
Previous: Information Theory and Coding
Christine Northeast
Mon Sep 20 10:28:43 BST 1999