CITS3003 Graphics and Animation

6 points
(see Timetable)
Semester 1UWA (Perth)Face to face
Details for undergraduate courses
  • Level 3 core unit in the Computer Science major sequence
  • The area of knowledge for this unit is Mathematical and Physical Sciences
  • Category B broadening unit for students
  • Level 3 elective
This unit teaches the fundamentals of computer-generated three-dimensional graphics and animation for applications, including creating interactive virtual environments. The unit introduces the virtual image formation process using a synthetic camera model. The OpenGL API is introduced for writing interactive graphics programs. Fundamental techniques are emphasised, such as using the homogeneous coordinate system for affine transformations. The unit then covers lighting and shading models, as well as the use of GLSL programmable shaders. Finally, three-dimensional animation techniques are covered, with an emphasis on realistic modelling of articulated bodies. The practical component of the unit involves developing a realistic three-dimensional image application involving animation using the core concepts covered in the unit.
Students are able to (1) demonstrate technical competence in three-dimensional graphics; (2) apply basic knowledge of graphics systems, graphical techniques and rendering; (3) develop graphics applications using the OpenGL API and the C programming language; (4) identify, formulate and create three-dimensional virtual worlds and interactively manipulate these virtual worlds; and (5) advance into areas involving graphics and spatial computation, such as games programming, computer vision and scientific visualisation.
Indicative assessments in this unit are as follows: (1) mid-semester test; (2) programming project; and (3) final examination. Further information is available in the unit outline.

Supplementary assessment is not available in this unit except in the case of a bachelor's pass degree student who has obtained a mark of 45 to 49 overall and is currently enrolled in this unit, and it is the only remaining unit that the student must pass in order to complete their course.
Unit Coordinator(s)
Dr Naveed Akhtar
Unit rules
CITS1002 Programming and Systems
CITS2002 Programming and Systems
CITS1210 C Programming
CITS1200 Java Programming
CITS1220 Software Engineering
CITS1001 Software Engineering with Java (formerly Object-oriented Programming and Software Engineering)
CITS2231 Graphics, CITS4242 Game Design and Multimedia
Contact hours
lectures: 2 hours per week; labs: 2 hours per week

Angel, E. and Shreiner, D. Interactive Computer Graphics: a Top-Down Approach with Shader-Based Open GL, 6th edn: Addison-Wesley 2012

  • The availability of units in Semester 1, 2, etc. was correct at the time of publication but may be subject to change.
  • All students are responsible for identifying when they need assistance to improve their academic learning, research, English language and numeracy skills; seeking out the services and resources available to help them; and applying what they learn. Students are encouraged to register for free online support through GETSmart; to help themselves to the extensive range of resources on UWA's STUDYSmarter website; and to participate in WRITESmart and (ma+hs)Smart drop-ins and workshops.
  • Books and other material wherever listed may be subject to change. Book lists relating to 'Preliminary reading', 'Recommended reading' and 'Textbooks' are, in most cases, available via the Booktopia Textbook Finder, which has the functionality to search by course code, course, ISBN and title, and may also be posted or available at the appropriate school's administrative offices. Where texts are listed in the unit description above, an asterisk (*) indicates that the book is available in paperback.