IGB283 Game Engine Theory and Application


To view more information for this unit, select Unit Outline from the list below. Please note the teaching period for which the Unit Outline is relevant.


Unit Outline: Semester 2 2024, Gardens Point, Internal

Unit code:IGB283
Credit points:12
Pre-requisite:CAB201
Anti-requisite:INB381
Coordinator:Jinglan Zhang | jinglan.zhang@qut.edu.au
Disclaimer - Offer of some units is subject to viability, and information in these Unit Outlines is subject to change prior to commencement of the teaching period.

Overview

This unit will introduce you to the mathematics for computer graphics and games. Instead of just teaching mathematics, this unit focuses on taking mathematical theory and learning to program small examples in a game engine. The core parts of any game engine are the mathematical representations and algorithms. This unit will give you a basic understanding of the mathematics behind 3D graphics and games and the ability to apply the theory to solve problems in game engine development and software development in related areas. This unit will provide you with foundation knowledge and skills for programming and using 3D game engines. It is a pre-requisite for following advanced units that will build on these skills to provide you with enough knowledge to develop your own game engine and to have a deeper insight into popular commercial engines and tools used in the course.

Learning Outcomes

On successful completion of this unit you will be able to:

  1. Apply mathematical methods in this unit to both basic theoretical exercises and contextualised problems.
  2. Critically analyse real world problems by selecting and designing suitable mathematical tools.
  3. Use relevant vector, calculus and matrix operations to describe and analyse geometric representations and transformations and understand how these tools can be applied in practical software development contexts.
  4. Demonstrate advanced programming skills in the implementation of mathematical techniques within an industry standard game engine.

Content

Topics covered include:

  • Co-ordinate Systems - Review of Trigonometry, Sine and Cosine rules,1D, 2D and 3D co-ordinate systems.
  • Points, Lines and Planes - definitions and properties; displaying points, lines and planes; relationships between points, lines and planes;
    translation and rotation of points, lines and planes.
  • Introduction to Vectors - Definitions, Basic Operations, Scalar and Vector Product, Vector equations of lines and planes.
  • Introduction to Matrices - Definitions. Basic Operations, Determinants, Inverses, Linear transformations
  • Elementary Transformations - Translations, Rotations and Scaling of 2D and 3D constructions
  • Projections - Orthographic and perspective projections
  • Polygons and Polyhedra - Definitions, properties and classification
  • Curves and Surfaces - Planar and space curves,  Bezier curves and surfaces, Tangents and tangent vectors, continuity and composite curves, linear and cubic interpolation
  • Introduction to Calculus - Differentiation and its relationship with curves and surfaces,  Integration and its relationship with summations, areas under curves
  • Principles in converting a mathematical formula to a functioning program script.

Learning Approaches

The unit adopts a blended learning approach that includes a combination of interactive lectures, practical workshops sessions where you will engage in collaborative activities with peers and tutors and a unit communications channel designed to facilitate communication with your peers and teaching staff outside of scheduled classes.

Your learning in this unit is facilitated using a variety of teaching strategies including programming demonstrations and modelling of problem-solving as well as materials in the unit Canvas site. As more advanced unit, you are expected to undertake your own independent research to find solutions to challenges.

Weekly interactive lectures are used to introduce you to the theoretical concepts that underpin the practical components of the unit and prepare you for the hands-on practical workshops. The practical workshops are focussed on building small implementations of mathematical concepts from lectures, within the context of assignment projects.

The practical workshops will provide practice in the application of theory and procedures, allow exploration of concepts with teaching staff and other students, and give feedback on your progress and understanding. Success in this unit requires an integrated understanding of the subject matter. If you are experiencing difficulty with the mathematics and/or programming required in this unit, you are encouraged to make contact with your tutor to get assistance. You are also reminded of the free Maths and IT programming via the STIMulate peer program.

You can expect to spend between 10 - 15 hours per week on average involved in attending all scheduled interactive lectures and workshops, completing assessment tasks, and undertaking your own independent study to consolidate your learning.

 

Feedback on Learning and Assessment

You will have a range of opportunities to receive feedback on your learning and progress in this unit including formative in-class individual or whole-of-class feedback on exercises conducted in class by tutors and peers as well as individual feedback on assessment tasks via a rubric and written feedback. Whole-of-class feedback will be provided by an announcement on the unit site in Canvas. Individual consultations with your tutor can be arranged at a mutually convenient time. 

Assessment

Overview

The assessment for this unit is comprised of two applied programming projects and a quiz.

Unit Grading Scheme

7- point scale

Assessment Tasks

Assessment: Project (applied)

Write an implementation of a simple mathematical function involving linear algebra within the context of a game engine scripting environment.

This assignment is eligible for the 48-hour late submission period and assignment extensions. 

Weight: 40
Individual/Group: Individual
Due (indicative): Mid semester
Related Unit learning outcomes: 1, 2, 3, 4

Assessment: Project (applied)

Write an implementation of a more complex mathematical function involving linear algebra and calculus within the context of a game engine scripting environment.

This assignment is eligible for the 48-hour late submission period and assignment extensions. 

Weight: 40
Individual/Group: Individual
Due (indicative): Late semester
Related Unit learning outcomes: 1, 2, 3, 4

Assessment: Online Quiz (theoretical and applied)

Each week you will be introducing to the mathematics for computer graphics and game engines in the lectures and building small implementations of these mathematical concepts in the practicals. Your understanding of the presented knowledge and techniques will be tested via an online quiz late in the semester.

Weight: 20
Individual/Group: Individual
Due (indicative): Late semester
Related Unit learning outcomes: 1, 2, 3

Academic Integrity

Students are expected to engage in learning and assessment at QUT with honesty, transparency and fairness. Maintaining academic integrity means upholding these principles and demonstrating valuable professional capabilities based on ethical foundations.

Failure to maintain academic integrity can take many forms. It includes cheating in examinations, plagiarism, self-plagiarism, collusion, and submitting an assessment item completed by another person (e.g. contract cheating). It can also include providing your assessment to another entity, such as to a person or website.

You are encouraged to make use of QUT’s learning support services, resources and tools to assure the academic integrity of your assessment. This includes the use of text matching software that may be available to assist with self-assessing your academic integrity as part of the assessment submission process.

Further details of QUT’s approach to academic integrity are outlined in the Academic integrity policy and the Student Code of Conduct. Breaching QUT’s Academic integrity policy is regarded as student misconduct and can lead to the imposition of penalties ranging from a grade reduction to exclusion from QUT.

Resources

All necessary learning resources will be provided on the unit Canvas site. Some useful reference books and/or web sites will be advised during classes and posted on the Canvas site.

Resource Materials

Reference book(s)

Essential Mathematics for Games and Interactive Applications, Third Edition  by James M. Van Verth and Lars M. Bishop, AK Peters/CRC Press, September 2015, 618 pages, ISBN 1482250926.

eBook: https://qutbookshop.vitalsource.com/products/essential-mathematics-for-games-and-interactive-james-m-van-verth-v9781482250954?term=9781482250923

Mathematics for Computer Graphics (Undergraduate Topics in Computer Science) 5th Edition 2017  by John Vince, ISBN: 9781447173342.

eBook: https://qutbookshop.vitalsource.com/products/mathematics-for-computer-graphics-john-vince-v9781447173366?term=9781447173342

Risk Assessment Statement

No particular risk is associated to this unit.

Course Learning Outcomes

This unit is designed to support your development of the following course/study area learning outcomes.

IN05 Bachelor of Games and Interactive Environments

  1. Demonstrate broad knowledge of games and interactive environments principles and theory, with an in-depth knowledge of one games-related discipline.
    Relates to: ULO1, Project (applied), Project (applied), Online Quiz (theoretical and applied)
  2. Apply creativity, critical thinking and problem-solving skills to generate solutions to design challenges.
    Relates to: ULO2, ULO3, Project (applied), Project (applied), Online Quiz (theoretical and applied)
  3. Create engaging and meaningful games experiences for specific target audiences in partnership with diverse industry and community stakeholders using industry-relevant software and technologies..
    Relates to: ULO3, ULO4, Project (applied), Project (applied), Online Quiz (theoretical and applied)
  4. Evidence the development of your learning, professional capabilities and skills through creating a curated portfolio of work.
    Relates to: ULO4, Project (applied), Project (applied)