Interactive 3D Graphics and Animation (aka I3D or i3d) is an introductory subject in computer graphics. It takes a "top-down" approach to computer graphics using a widely available 3D graphics library (OpenGL) to introduce the principles and techniques required for developing interactive 3D graphics applications.
This year the course is again following the approach of three smaller assignments with some emphasis on the toolchain typically used in computer graphics. So the use of tools to create models and perform texture mapping will be introduced, integrated with the writing of custom OpenGL programs to create interactive applications and animations. Assessment has been re-weighted so the three smaller assignments (rather than just one as in the past) are 75% of the marks, with the exam (more a test) 25%. No single component is a hurdle.
COSC1186/1187 is available to second and third year undergraduates who have completed at least one semester of C programming. It may also be taken by postgraduate students with equivalent background. Formal prerequisites are stated on the course guide. Whilst C Programming is actually listed as a corequisite, it is not really recommended.
The subject first ran in second semester, 1995, replacing CS514: Introduction to Computer Graphics. In 1996 it ran in both first and second semester. In 1997 and 1998 it ran in summer, first and second semesters. In 1999 CS541 replaced CS545 - CS541 is a 12 credit point subject whereas CS545 was an eight credit point subject, and ran in summer (HX541) and second semester. In 2000 CS541 ran only in first semester, to allow students wanting to do CS549 Real-Time Animation and 3DGames Programming in second semester. In 2001 CS541 ran in first semester only, and likewise COSC1186/1187 from 2002-2007.
In 2002 due to the Academic Management System (AMS) changeover academic terminology changed. What were "courses" became "programs". What were "subjects" became "courses". Course (was subject) numbers changed. CS541/493 became COSC1186/1187. COSC1186/1187 ran in first semester 2002 only. You may see residual references to CS541/493 around the place.
In 2003 Nigel Stewart, with assistance from Joseph Antony, taught COSC1186/1187.
In 2007 the course was substantially restructured to adopt more of the toolchain approach - where use of some modelling tools is included in conjunction with writing custom OpenGL programs. Assessment was also changed to be primarily practical work, and the previous approach of one larger project was changed to use three smaller assignments.
In 2008 Alex Holkner taught I3D.
COSC1186/1187 uses
. The primary
resource for information about OpenGL is the
opengl.org website.
The main equipment for the graphics subjects are the machines in the Sutherland laboratory (14.11.38), which have Core 2 Duo CPUs and Geforce 9600 GT graphics cards, running Linux.
Many moons ago the Sutherland Laboratory was populated with Silicon Graphics workstations. There are a couple of old SGI workstations sitting in the Sutherland Laboratory as museum pieces.
In 2000 the Interactive Information Institute laboratory of O2s were used.
The newsgroup is rmit.cs.Interactive3DGraphicsAndAnimation The simplest way to access the newsgroup rmit.cs.Interactive3DGraphicsAndAnimation is to use webnews. Try it! You can also use thunderbird (with a GUI) or tin (text) which understand the news protocol NNTP.
As per the SCSIT timetable the lectures are in room 12.08.02 on Wed 10:30am-12:30pm. Tutorials are in the the Sutherland lab (room 14.11.38). Please use the Student Timetabling System to sign up for a tute time. See also the complete COSC1186/1187 timetable.
Notes and other materials are available online (via the links below) and are not being printed this year.
The exam/test will be held in the exam period at the end of semester. The exam counts towards 25% of your final grade. No books, notes or calculators are permitted.
Sample past exam here. Note that exams vary year to year depending on assignment work and emphasis.
Guides for this course:
OpenGL manuals:
(Subject to change)
| Week | Lecture | Tutorial | Assessment |
|---|---|---|---|
| 1 | Introduction, drawing with OpenGL | Draw primitives with OpenGL | |
| 2 | Graphics pipeline and Procedural modelling | Procedural modelling | |
| 3 | 3D transformations and mouse/keyboard events | Cube viewer | |
| 4 | 3D modelling | (assignment work) | Assignment 1 (25%) due 9pm Fri 25th March |
| 5 | Lighting, blending and materials | Add lighting controls to model viewer | |
| 6 | Animation | Planet Animation | |
| 7 | Texture mapping, sprites and billboarding | Texture mapping | |
| 8 | Normals | gdb and assignment work | Assignment 2 (25%) due 9pm Fri 29th April |
| 9 | Performance and optimisation | Performance | |
| 10 | More 3D transforms and projection | Combined transformations | |
| 11 | Story of Computer Graphics (video) | Plotting graphs and assignment work | |
| 12 | Revision | Assignment assistance | Assignment 3 (25%) due 9pm Fri 27th May |