Computer Graphics

Monday 10:00 - 11:00
   Wednesday 10:00 - 11:00 
Room N329
Lecturer:
Brian Corrie 
bcorrie@cs.anu.edu.au
Office: Room N328
Phone: 6249-5694 


Whats New & Important!!!


Available Information


Course Outline

Introduction 
  • Course description
  • Show time!!!
Geometrical Transformations 
  • 2D Transformations 
  • Homogenous Coordinates 
  • 2D Matrix Transformations 
  • Composition of Transformations 
  • 3D Matrix Transformations 
Viewing in Three Dimensions 
  • Perspective Projection 
  • Parallel Projection 
  • Arbitrary 3D Views 
  • Mathematics of Planar Projections 
Visible Surface Determination 
  • Techniques 
  • Algorithms 
Illumination and Shading 
  • Illumination 
    • Ambient Lighting 
    • Diffuse Lighting 
    • Specular Lighting 
    • Multiple Light Sources
  • Shading 
    • Constant 
    • Gouraud 
    • Phong 
  • Advanced Topics
    • Texture Mapping 
    • Shadows
    • Transparency 
    • Reflection 
    • Extended Light Sources 
    • Depth of Field
    • Motion Blur 
Advanced Topics 
  • Ray Tracing 
  • Scientific Visualisation 
  • Virtual Reality 


Text Book

Computer Graphics - Principles and Practice, Second Edition (C), 1996, Foley, vanDam, Feiner, and Hughes.


Course Assessment

Lab Projects (80%) Final Exam - (20%)


Tutorials

5 hours - to be scheduled during the term  (watch this space for more information)
 


Computer Accounts

Students will have accounts on the DCS Computational Science and Engineering Lab SGI machines for their lab projects. 

Assignments


Lecture Notes


General Information

Mesa

For those of you that have machines at home, there is a package called Mesa that implements the OpenGL API fairly completely. It is available under the GNU Library General Public License. It is available (at different levels of support and robustness) for Unix machines, Macs, and Windows. I have used it under Solaris and MkLinux and it is quite complete. I have noticed a few minor problems with it so if you are having problems, it is a good idea to take your program and compile it on the SGI machines to see if the behaviour is the same. It is available for ftp from ftp://iris.ssec.wisc.edu/pub/Mesa.

GLUT

Although OpenGL is a very powerful graphics programming API, it does not provide a very clean interface to working in typical windowing environments such as X windows. GLUT, or the OpenGL Utility Toolkit, is a windowing system independent toolkit that allows OpenGL programs to be written in a relatively painless manner. The GLUT API is the recommended way of using using OpenGL in a windowing environment. It is available from http://reality.sgi.com/employees/mjk_asd/glut3/glut3.html


Maintainer: Brian Corrie (bcorrie@cs.anu.edu.au)

 

 
 
 
 
 
 
 
 
 
 
 
 
 

Last modified:  February 17,1999