BSc Computer Science programme
CM3045 3D Graphics and Animation
Module description
Target Audience
Level 6 BSc CS students interested in
Module goals and objectives
Upon successful completion of this module, you will be able to:
Explain the mathematical and theoretical principles of computer graphics and apply then
to practical computer graphics problems.
Explain many computer graphics and animation techniques used in contemporary
graphical software and use them to create computer graphics and animation sequences
Develop basic but complete graphics software systems
Analyse and evaluate the use of computer graphics methods in practical applications.
Apply computer graphics and animation techniques to creating aesthetic effects
Textbook and Readings
Specific essential readings for each week from the following list are included in the Readings page
for each week:
Computer Graphics: From Pixels to Programmable Graphics Hardware By Alexey Boreskov,
Evgeniy Shikin
o Topic 1: Chapter 1
o Topic 2: Chapter 2, sections 4.1-4.8
o Topic 4: Chapters 11 and 12 (optional)
o Topic 6: Sections 4.9, 4.10
o Topic 8: Chapter 13
Computer Graphics by Somnath Sinha and Aditi Paul
o Topic 6: Chapter 5, 7
1
BSc Computer Science programme
Module outline
The module consists of ten topics that focus on key areas of the fundamentals of computer science.
Topic 1. 3D Graphics Overview
Key concepts:
3D graphics basic
Unity Game Engine
3D Models
Learning outcomes:
1. Explain the basic idea of 3D graphics
2. Evaluate and select 3D graphics engines for use in a project.
3. Create simple scenes from basic primitives or imported assets
Topic 2. 3D Models and Transforms
Key concepts:
Transforms
Mathematics of Transforms
Unity Basics
Learning outcomes:
1. Explain the basic mathematical and theoretical principles of 3D models and transforms
2. Use transforms and objects to create 3D graphics scenes
3. Create simple scenes from basic primitives or imported assets
Topic 3. Physics Simulation
Key concepts:
Physics Simulation
Physics Objects
Forces
2
BSc Computer Science programme
Learning outcomes:
1. Explain the mathematical and theoretical principles of physics simulation and
apply them to interactive graphics
2. Explain the use of physics engines in practical graphics and animation
3. Develop basic but complete physics based graphics environments
Topic 4. Keyframe Animation
Key concepts:
Keyframe animation
State Machines
Unity Event System
Learning outcomes:
1. Explain the basic mathematical and theoretical principles of keyframe animation
2. Use keyframe animation to produce particular movement effects
3. Create simple keyframe animation sequence
Topic 5. Character Animation
Key concepts:
Body Animation
Facial Animation
Gaze Animation
Learning outcomes:
1. Explain the basic mathematical and theoretical principles of character animation
2. Analyse and evaluate the use of different character animation methods for practical applications
3. Create simple interactive animated characters
4. Use character animation to give a sense of personality or expression with characters
3
BSc Computer Science programme
Topic 6. Rendering and the Graphics Pipeline
Key concepts:
Cameras
Rasterization
Hidden Surface Removal
Learning outcomes:
1. Explain the 3D graphics pipe and how it is implemented on modern graphics hardware
2. Use interactive and animated cameras in a graphics experience
3. Evaluate the benefits of GPU shader versus CPU based graphics techniques
Topic 7. GPU Programming
Key concepts:
GPU Shaders
Vertex Shaders
Fragment Shaders
Learning outcomes:
1. Explain the function and behavior of GPUs and shader programs
2. Develop basic but complete graphics shader pipelines
3. Evaluate the benefits of GPU shader versus CPU based graphics techniques
Topic 8. Lighting and Materials
Key concepts:
Lighting
Materials
GPU Lighting
Learning outcomes:
1. Explain the basic mathematical and theoretical principles of lighting and materials
2. Explain how lighting and materials are used in contemporary graphical software and used them to create
3D graphics scenes
3. Apply lighting and materials to creating aesthetic effects
4
BSc Computer Science programme
Topic 9. Textures
Key concepts:
Texturing
Normal Mapping
Advanced Texturing Techniques
Learning outcomes:
1. Explain the basic mathematical and theoretical principles of texturing
2. Explain how texturing is used in contemporary graphical software and used them to create 3D graphics
scenes
3. Apply texturing to creating aesthetic effects
Topic 10. Advanced Techniques
Key concepts:
Global Illumination
Particle Systems
Careers in 3D Graphics and Animation
Learning outcomes:
1. Explain the mathematical and theoretical principles of advanced computer graphics topics and
apply then to practical computer graphics problems.
2. Explain and use the implementations of advanced techniques in graphics engines
3. Apply several advanced graphics and animation techniques to creating aesthetic effects
5
BSc Computer Science programme
Activities of this module
The module is comprised of the following elements (please explain in detail the activities
included in the module, for example:
● Lecture videos.
● Practice Quizzes.
● Peer Reviewed programming/development Assignments.
● Graded Assignments.
● Discussion Prompt.
● Readings.
How to pass this module
The module has two major assessments each worth 50% of your grade:
● Coursework [50%]: The coursework consists of several activities. This is a detailed
breakdown of all of the marks. The mark shown on the Coursera platform is your
coursework mark.
● Final Examination [50%]
Activity Required? Deadline Estimated time % of
week per module final
grade
End of topic quizzes Yes 1-10 1-2 hours 5%
for topics 1-5
Mid-Term Quiz Yes 11 1 hour 10%
Programming Yes 11 Approximately 35%
exercises and report, 20 hours
staff graded
coursework
Written examination Yes 22 2 hours 15 50%
minutes
6
BSc Computer Science programme