CE318/CE818: High Level Games Development 2016/2017


This course covers the fundamentals of games console programming with special emphasis on 3D games and the Unity Game Engine. All programming will be done in C#. It is a practical course with many code samples and exercises. A two-hour lecture is held every Monday, followed by a two-hour lab (Thursday or Friday) where students will implement and extend the concepts covered in the lectures.

This website will serve as the primary hub for information pertaining to the material covered throughout the course and will be updated continuously throughout the term. In particular, lecture notes and code samples will be made available following each lecture and sample implementations will be made available following each lab.

Course assignment: Assignment

Submission Instructions: Submission


Lectures take place every Tuesday at 1pm (2 hours) in room EBS.2.65 (How to get there).

Lecture 1 @ 11/10/16: Introduction. C# and Unity3D Basics

Lecture 2 @ 18/10/16: 3D Games and User Input

Lecture 3 @ 25/10/16: 3D Games: Models and Physics

Lecture 4 @ 31/10/16: Cameras, Audio, Lights and Shadows

Lecture 5 @ 08/11/16: Terrains

Lecture 6 @ 15/11/16: GUIs, Menus and Particle Systems

Lecture 7 @ 22/11/16: Persistance and Animations

Lecture 8 @ 29/11/16: Steering and Navigation

Lecture 9 @ 06/12/16: Game AI: Decision Making

Lecture 10 @ 13/12/16: 2D Games


Labs take place every Wednesday at 9am and Thursday at 4pm (respectively, 2 hours long) in CES Lab 1. (How to get there). Students will be assigned to one of the days.

Lab 1-2 @ 14th and 21th October 2016

Lab 3-4 @ 28th October and 4th November 2016

Lab 5-6 @ 11th and 18th November 2016

Lab 7-9 @ 25th November and 9th December 2016

Reading List

  • C#
    • C# 4.0 Pocket Reference by Albaharai and Albahari
    • Essential C# 4.0 by Mark Michaelis
  • Unity
    • Beginning 3D Game Development with Unity 4, 2nd Edition by Sue Blackman
    • (Highly recommended).
    • Unity 4.x Cookbook by Matt Smith
    • (Complementary book).
    • Unity 4.x Game AI Programming by Aung Sithu Kyaw, Thet Naing Swe
    • (for Game AI in Unity).
    • Unity 4x Game Development by Example, Beginners Guide by Ryan Henson Creighton
    • (For less confident programmers).
  • Game AI
    • Artificial Intelligence for Games by Millington and Funge
    • Game Artificial Intelligence by Ahlquist and Novak

Support Documents

Below you can find several documents describing various aspects of the course. This list will be updated throughout the term. These documents have been sourced from different web sites, including official ones by Microsoft as well as others. We cannot guarantee the correctness of the contents of these files. Please raise any questions you may have in the lectures and labs.

Web References

Software Tools

Console game development is a complex process that involves numerous tools to create the individual aspects of the game, including textures, models and animations. The following is a list of free software tools for these purposes (we will cover them in lecture 4):


The final grade for CE318/CE818 consists of 100% coursework. The coursework includes two progress tests (15% each) on weeks 6 and 11, bi-weekly lab assignments (worth 10%) and an assignment worth 60% of the overall mark (first part: worth 20%, week 8; second part: worth 40%, week 16).


In case of urgent matters, we may be found in office 3A.527.