Course syllabus
Introduction
Welcome to Game Engine Architecture (TDA572 / DIT455). During the next couple of months we are going to be looking at what a game engine does, how it can be built, and the features that it will often have. To accomplish this we will be incrementally developing our own game engine, called Shard. Note that this will not be feature complete or even bug-free - game engines are amongst the most complex software artifacts that people routinely use. However, it'll be 'good enough' that we can expand upon it and develop demonstration games that show how it works.
I hope you find it fun and interesting!
This course runs on the block schedule A+
Requirements
We are going to be doing the coding for this in C#. If you've never used C# before that's fine - the level of code required is not especially high, although the sophistication of the concepts may hide that. If you've done any programming at all, you should be fine. Usually the Wednesday afternoon class will be used for delving into any code questions you have.
Contact Details
This is your course team:
Natasha Mangan, Course Responsible and Lecturer. Contact at natashab@chalmers.se
Anders HÃ¥kansson, Teacher. Contact at andehaka@chalmers.se
Kyle Agius, TA. Contact at gusagiky@student.gu.se
Aristotelis Anthopoulos, TA. Contact at gusanthar@student.gu.se
Parsa Fadaeikhedmat, TA. Contact at gusfadaepa@student.gu.se
Schedule
The plan is generally:
Monday, 09.15 - 12.00 - Lecture (Week ONE)
Monday, 10.15 - 12.00 - Lecture
Wednesday, 10.15 - 12.00 - Lectures or Tutorials on other cool/important topics
Wednesday, 13.15 - 17.00 - Group meetings or project work time/drop-in supervision
Exceptions:
- The 2nd of March Guest Lecture will start at 09.15.
- The Presentations on the 9th of March will start at 09.15.
You can see the schedule and rooms in the calendar. If there is a disagreement between TimeEdit and this page, go with what this page tells you. TimeEdit is a room booking system, not a scheduling system.
However, for week one, the Wednesday afternoon class will first be the course rep. meeting, and then it'll be a self-study period. My zoom room will be open if anyone wants to chat or has questions.
Keep an eye on the announcements for further details of any other disruptions, and my apologies in advance.
Changes from Last Year (2025)
Changes were implemented this year, 2026, some is changed due to feedback in course representatives' meetings:
- Except for the first lecture, all subsequent lectures will start at 10.15.
- Elective assignments (optional; you do not have to do them).
- A check-in assignment at the halfway point.
- Changes to the grading of the main assignment
Student Representatives and Course Evaluation
- Information regarding the course evaluation process at Chalmers. (Links to an external site.)
- Information about being a student representative. (Links to an external site.)
CHALMERS Student Representatives (Randomly Selected)
GU Student Representatives (Volunteers ;D)
Course Literature
You are not required to buy any literature for this course - everything you need to know will be covered as part of the teaching. Recommendations may be given in individual lectures, but none of this is core.
Learning outcomes (after completion of the course the student should be able to)
- Describe the typical structure of game engines and interactive simulations, and the requirements of specific parts of such engines
- Describe what public libraries and programs can be combined with existing game engines to provide the required functionality of a game engine
- Extend existing game engines to augment functionality while maintaining stability and having predictable consequences on resource use
- Present extensions of a game engine through a demonstrator at a public presentation
- Analyze existing game engines to determine functionality and extendibility
- Plan several parallel extensions of a game engine while minimizing dependencies
Note here for 'interactive simulations' these are exactly the same thing as games except that the expected end-goals would be different.
Examination form
Group Assessment: Modified game engine. Game or Example using that engine. Presentation. Screencast. Report on the technical artefact.
The course has the following grades: U, 3, 4, & 5. These grades are also given for each assignment in the course. In order to receive a passing grade on the entire course, a student needs to receive at least a 3 on all assignments. The course grade given will be a weighted average of the grades on the modules.
Formal examiner: Michael Heron, contact heronm@chalmers.se
Course summary:
| Date | Details | Due |
|---|---|---|