Game Engines 2021W Course Outline

From Soma-notes

This course outline is not yet finalized.

Course Information

Official Course Descriptions

A practical course on advanced facilities of game engines. Such facilities include notions such as physics engines, shadow mapping, lighting with thousands of lights, relief mapping, ambient occlusion, water flow, deferred rendering, occlusion culling, water effects, mirrors, and screen space reflection.

Learning Objectives

In this course you will learn about game engine design and implementation, with a focus on Godot, an open source game engine. By the end of this course you will have experience implementing and debugging applications in Godot. You will also learn how Godot is architected and organized and you will gain experience in modifying Godot. These experiences, more broadly, will give you experience in understanding and modifying large software systems, particularly those designed for real-time interactive multimedia applications (such as games).

Communication

The main wiki page is the canonical source of information on this course. Please refer to it for updates. cuLearn will be used for submitting written work and for major announcements. Asynchronous class discussion and interaction will happen through Microsoft Teams; please see cuLearn for the invitation link. Online meetings will take place via Zoom; again, see cuLearn for the link. There will be no in-person meetings; this class is purely online.

Required Textbooks/Software

There are no required textbooks for this course; instead, online resources will be made available through the class wiki and Teams.

We will be focusing on the Godot Game Engine in this course. You need a system capable of running and building it. Such a system may be running Windows, MacOS, or Linux, as Godot is a cross-platform engine. While we suggest using Visual Studio Code as an IDE when modifying Godot, this is not a requirement.

Grading

Note that other grading schemes may be used to calculate final grades; the grading schemes below represent the minimum grade students will receive.

  • 10% Participation
  • 30% Experiment/Research reports
  • 60% Term Project
    • 10% Project Proposal
    • 10% Progress Report
    • 10% Presentation
    • 30% Final Project Report (Due April 27, 2021)

Participation

This participation part of your grade will be based upon the degree to which you are an active participant in class. To receive full marks you will need to be a regular participant in class discussions.

Experiment/Research reports

Throughout this course you will be exploring and experimenting with the Godot game engine. To report on your findings, you will need to submit periodic reports on what you've done and learned. These reports will be graded based on effort and results.

Term Project

Your grade in this course will be primarily based on developing an application (game or other) in Godot and/or modifying the Godot engine. You'll need to propose what you plan to do, report on your progress, give an oral presentation on what you did, and document your work in a final report.

While you may collaborate with others on what you build, your submissions should be independent and should document what you did. You may discuss work done jointly or by others, but that work should be clearly delineated. You will be graded on the basis of what you accomplished, not what your collaborators did.

Collaboration

Collaboration on all work is allowed. Collaboration, however, should be clearly acknowledged. Specifically, co-authored works should be marked as such. When co-authored, all authors of reading responses and projects will get the same grade, unless there is reason to believe that some co-authors did not in fact contribute significantly to the submitted work. Co-authored contributions may get different grades depending upon the relative contribution of the different authors; however, the default here will also be to give all authors the same grade.

It is essential that outside references be cited appropriately. Proper citation format should be followed except where more relaxed forms are specifically allowed.

Plagiarism or intellectual dishonesty of any kind is strictly forbidden. In other words, it should always be clear what is your work and what is the work of others. If anything you submit is, in part or whole, very similar in content or structure to that of work produced by someone else, you are plagiarizing. This includes figures.

Think of plagiarism as a kind of unauthorized collaboration. Don't do it. Plagiarism and other instructional offenses will be reported to the Dean of Science for disciplinary action, as per university guidelines.


University Policies & Resources

Undergraduate/Graduate Academic Advisors

The undergraduate advisor for the School of Computer Science is available in Room 5302 HP, by telephone at 520-2600, ext. 4364, or by email at undergraduate_advisor@scs.carleton.ca. The graduate advisor for the School of Computer Science is available in Room 5302B HP, by telephone at 520-2600, ext. 8751, or by email at grad@scs.carleton.ca. These advisors can assist with information about prerequisites and preclusions, course substitutions/equivalencies, understanding your academic audit and the remaining requirements for graduation. They will also refer students to appropriate resources such as the Science Student Success Centre, Learning Support Services and the Writing Tutorial Services.

Student Academic Integrity Policy

Every student should be familiar with the Carleton University student academic integrity policy. A student found in violation of academic integrity standards may be awarded penalties which range from a reprimand to receiving a grade of F in the course or even being expelled from the program or University. Some examples of offences are: plagiarism and unauthorized co-operation or collaboration. Information on this policy may be found in the Undergraduate Calendar.

Plagiarism

As defined by Senate, "plagiarism is presenting, whether intentional or not, the ideas, expression of ideas or work of others as one's own". Such reported offences will be reviewed by the office of the Dean of Science.

Unauthorized Co-operation or Collaboration

Senate policy states that "to ensure fairness and equity in assessment of term work, students shall not co-operate or collaborate in the completion of an academic assignment, in whole or in part, when the instructor has indicated that the assignment is to be completed on an individual basis".

Please see above for the specific collaboration policy for this course.

Requests for Academic Accommodation

You may need special arrangements to meet your academic obligations during the term. For an accommodation request, the processes are as follows:

Pregnancy obligation

Please contact your instructor with any requests for academic accommodation during the first two weeks of class, or as soon as possible after the need for accommodation is known to exist. For more details, visit the Equity Services website: https://carleton.ca/equity/wp-content/uploads/Student-Guide-to-Academic-Accommodation.pdf

Religious obligation

Please contact your instructor with any requests for academic accommodation during the first two weeks of class, or as soon as possible after the need for accommodation is known to exist. For more details, visit the Equity Services website: https://carleton.ca/equity/wp-content/uploads/Student-Guide-to-Academic-Accommodation.pdf

Academic Accommodations for Students with Disabilities

If you have a documented disability requiring academic accommodations in this course, please contact the Paul Menton Centre for Students with Disabilities (PMC) at 613-520-6608 or pmc@carleton.ca for a formal evaluation or contact your PMC coordinator to send your instructor your Letter of Accommodation at the beginning of the term. You must also contact the PMC no later than two weeks before the first in-class scheduled test or exam requiring accommodation (if applicable). After requesting accommodation from PMC, meet with your instructor as soon as possible to ensure accommodation arrangements are made. carleton.ca/pmc

Survivors of Sexual Violence

As a community, Carleton University is committed to maintaining a positive learning, working and living environment where sexual violence will not be tolerated, and is survivors are supported through academic accommodations as per Carleton's Sexual Violence Policy. For more information about the services available at the university and to obtain information about sexual violence and/or support, visit: https://carleton.ca/sexual-violence-support

Accommodation for Student Activities

Carleton University recognizes the substantial benefits, both to the individual student and for the university, that result from a student participating in activities beyond the classroom experience. Reasonable accommodation must be provided to students who compete or perform at the national or international level. Please contact your instructor with any requests for academic accommodation during the first two weeks of class, or as soon as possible after the need for accommodation is known to exist. https://carleton.ca/senate/wp-content/uploads/Accommodation-for-Student-Activities-1.pdf

For more information on academic accommodation, please contact the departmental administrator or visit: https://students.carleton.ca/course-outline

Medical Certificate

The following is a link to the official medical certificate accepted by Carleton University for the deferral of final examinations or assignments in undergraduate courses. To access the form, please go to https://www.carleton.ca/registrar/forms