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!
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 Main Lecturer. Contact at natashab@chalmers.se
Michael Heron, examiner. Contact at heronm@chalmers.se
Pia Maria Schröter, TA. Contact at gusschropi@student.gu.se
Chiranjibee Satapathy, TA. Contact at gussatach@student.gu.se
Schedule
The plan is generally:
Monday, 0915 - 1200 - Lecture
Wednesday, 1015 - 1200 - Lectures or Tutorials on other cool/important topics
Wednesday, 1315 - 1700 - Group meetings or project work time/drop-in supervision
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.
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)
Deniz Özden deniz.ozden.99@gmail.com
Dimitrios Pokkias dimitrispokk@gmail.com
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.
Course summary:
Date | Details | Due |
---|---|---|