# Gwybodaeth Modiwlau

Module Identifier
CS32310
Module Title
Advanced Computer Graphics
Academic Year
2014/2015
Co-ordinator
Semester
Semester 1
Pre-Requisite
Other Staff

#### Course Delivery

Delivery Type Delivery length / details
Lecture 11 lectures
Practical 9 practicals/demo sessions and 1 seminar (paper presentation)

#### Assessment

Assessment Type Assessment length / details Proportion
Semester Assessment Written assignment  50%
Semester Exam 2 Hours   Written Exam  50%
Supplementary Assessment Resit failed examination and/or resubmission of failed/non-submitted coursework components or ones of equivalent value  50%
Supplementary Exam 2 Hours   50%

### Learning Outcomes

On successful completion of this module students should be able to:

1. Select and deploy appropriate algorithms, programming languages and libraries behind 3D computer graphics.

2. Describe and apply the main concepts behind 3 dimensional graphics software libraries.

3. Demonstrate an awareness of the variety of hardware and software technologies that allow the creation of graphics applications.

4. Use vectors and matrices to perform 3-D transformations, including perspective and lighting transformations.

5. Describe and critique different lighting models and rendering techniques.

6. Describe and critique algorithms for modeling a variety of objects / visual phenomena.

### Brief description

This course provides students with an understanding of the theoretical foundations of computer graphics and practical 3D graphics programming skills

### Aims

This module provides the basis for computer graphics, allowing students to start work in the area of computer graphics. Students are introduced to topics that include:
• The underlying mathematics of 3-dimensional graphics modeling and display techniques
• 3-dimensional geometric coordinate transforms
• Lighting models including local and global illumination techniques
• Interactive graphics programming

### Content

Each week includes 1 lecture and 1 x 2hour practical lab session.
1. Introduction: Course outline, recommended reading / resources, overview of 3D graphics, overview of WebGL. Practical - Introduction to WebGL.
2. Core mathematics for 3D graphics: Trigonometry, matrix and vector algebra. Basic 3D transformations, matrix representation and homogeneous coordinates. Composite transforms. Clipping and z-buffer hidden surface removal. Practical - transforms in WebGL.
3. Lighting and Shading: Reflection models (ambient, diffuse, specular), light types (directional, point, cone), coloured lights, multiple lights, light attenuation. Practical - lighting in WebGL
4. Texture mapping: Wrapping, sampling, interpolation and anti-aliasing. Problems including perspective distortion, orientation dependence, shared vertices. Practical - texture mapping in WebGL.
5. Buffers in WebGL: render buffer, depth buffer, stencil buffer, frame buffer, usage and setting for each and example algorithms / applications discussed. Practical - using WebGL buffers
6. Color and depth: perception of colour, colour spaces, colour display. Alternative hidden surface removal algorithms for e.g. transparency sorting, Painter's algorithm, BSP trees etc. Practical - linked object modeling and animation in WebGL (1).
7. Advanced modeling: modeling/ rendering of difficult objects such as fur, plants, fire including the use of L-systems and particle systems. Practical - linked object modeling and animation in WebGL (2).
8. Ray-tracing: ray-generation, ray-surface intersection, recursive ray tracing. Practical - WebGL particle systems (1)
9. Radiosity: diffuse illumination modeling, form-factor calculation. Practical - WebGL particle systems (2)
10. Photon-mapping: stochastic photon generation / interaction, final gathering, caustic rendering. Practical - class test & feedback
11. Revision lecture.

### Module Skills

Skills Type Skills details
Application of Number Yes, computer graphics involves a lot of maths (vectors, matrices etc).
Communication Communication skills in presenting / preparing presentation slides. Written reports on lab exercises (lab book).
Improving own Learning and Performance Class test designed as way of highlighting the students own learning / deficiencies in knowledge.
Information Technology All work is IT related (web, graphics etc). Also use of powerpoint or similar and word processing for reports.
Personal Development and Career planning Practical exercises can be used as the basis for a portfolio of graphics programming work.
Problem solving Solving problems in development of algorithms and code structure for graphics
Research skills Reading around subject, proper citations etc. in practical reports.
Subject Specific Skills Graphics programming using WebGL.

### Reading List

Essential Reading
F.S.Hill (2001) Computer Graphics using Open GL Prentice Hall Primo search P.Cooley (2001) The Essence of Computer Graphics Pearson Education Ltd. Primo search
Consult For Futher Information
A. Watt (1989) Fundamentals of Three-Dimensional Computer Graphics Addison-Wesley Primo search J. D. Foley, A. van Dam, S. K. Feiner, J. F. Hughes, and R. L. Phillips (1993) Introduction to Computer Graphics Addison-Wesley Primo search

### Notes

This module is at CQFW Level 6