Lecturers: Adrian Hilton (
Introduction
This is an introductory course in computer graphics. The first half of the module will cover fundamental techniques for 3D graphical modelling and image synthesis. Advanced methods for surface representation and animation will be introduced. in the second part of the course. Techniques used for production of computer generated imagery for film and broadcast will also be covered. Course time will be split between 2 hour lectures covering computer graphics theory and 1 hour practical computing laboratories.
The practical component of the course will introduce the implementation of graphics techniques using the industry standard OpenGL language. As a pre-requisite to this module students should have completed a first course in a programming language such as C. The practical component will be assessed via an assignment (to be set in week 5 and submitted in week 10) which will count 30% towards the the final mark.
OpenGL Exercises
OpenGL exercises should be
conducted on workstations the labs 32BB03 (duck*,swan*,whale*,penguin*)
during the allotted time. Exercises are
based on the GL and GLUT libraries which are installed on the laboratory
workstations. These libraries are also available for Windows/Linux machines –
see resources below.
Exercise 1 (week 1): Getting Started
Exercise 2 (week 2): Shape Primitives
Exercise 3 (week 3): Viewing
Exercise 4 (week 4): Appearance
Exercise 5 (week 5): Special Effects
OpenGL Assignment
Assignment: Course work assignment
Resources
Numerous OpenGL reference sources
and tutorials are available on the web. Mesa3D is a cross-platform software
implementation of OpenGL, you will also find that many
operating systems/graphics cards include native OpenGL implementations which
use the available hardware. GLUT is a cross-platform toolkit for used through out the exercises.
OpenGL:
OpenGL.org
- Everything you wanted to know about OpenGL
OpenGL FAQ - Frequently
asked questions on OpenGL
SGI OpenGL - The original
OpenGL development site.
Mesa3D - Cross platform OpenGL compliant
software library (used for exercises)
GLUTv3
- OpenGL Utility Toolkit (Reference Manual)
FreeGLUT
- Open source GLUT implementation with some improvments
GLUI - User Interface
Library
Red Book v1.0 - OpenGL
Programming Guide online (online version of first edition)
Red Book v2.0 - OpenGL Programming
Guide revised and up to date but not free
OpenGL Reference Pages -
Complete documentation of OpenGL comands
Background on Computer Graphics:
ACM SIGGRAPH -
the
web3D.org - 3D graphics on the web/VRML
Blender - public domain animation tool
OSG Open Scene Graph - OpenGL ‘high performance graphics toolkit’ in C++
OpenSG - Portable scenegraph system for real-time graphics using OpenGL
Assignment Tips:
fscanf() - C function to read from text files
GLUT Menus - GLUT Reference - Menu Management
Please let me know any further suggestions for useful CG related links and any broken links above.