Gwybodaeth Modiwlau
Course Delivery
Delivery Type | Delivery length / details |
---|---|
Practical | 9 x 2 Hour Practicals |
Lecture | 33 x 1 Hour Lectures |
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 supplementary exam | 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
- 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
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 lectures + 1 practical).
3. Lighting and Shading: Reflection models (ambient, diffuse, specular), light types (directional, point, cone), coloured lights, multiple lights, light attenuation. Practical - lighting in WebGL ( 2 lectures + 1 practical).
4. Texture mapping: Wrapping, sampling, interpolation and anti-aliasing. Problems including perspective distortion, orientation dependence, shared vertices. Practical - texture mapping in WebGL (2 lectures + 1 practical).
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 (1 lecture + 1 practical).
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) (3 lectures + 1 practical).
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) (3 lectures + 1 practical).
8. Ray-tracing: ray-generation, ray-surface intersection, recursive ray tracing. Practical - WebGL particle systems (1) (2 lectures + 1 practical).
9. Revision lecture (2 lectures).
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. |
Notes
This module is at CQFW Level 6