General information

Subject type: Mandatory

Coordinator: Adso Fernández Baena

Trimester: Second term

Credits: 6

Teaching staff: 

Albert Carrillo Sorolla
Ricard Perea Ros 

Teaching languages

Els materials podran proporcionar-se en català, castellà i anglès.


Specific skills
  • V6. Develop video games in high-level programming languages ​​in graphics engines based on specifications.

  • V15. Design and plan quality assurance strategies, test and data analysis of video games and interactive products.

Transversal competences
  • T1_That students know a third language, which will be preferably English, with an adequate level of oral and written form, according to the needs of the graduates in each degree


  • T2_That students have the ability to work as members of an interdisciplinary team either as one more member, or performing management tasks in order to contribute to developing projects with pragmatism and a sense of responsibility, making commitments taking into account the available resources



The subject of Game Engines aims to give the student a detailed view of all the parts that make up a game engine. For each of the engine systems, the requirements, the major technical challenges and the solutions to these challenges proposed by various professional engines will be analyzed. This knowledge is essential for the correct choice of an engine in the process of pre-production of a video game, to understand the improvements or new features that are being published, to get the most out of all the tools of the engines, or even and everything, to customize some parts. This subject must provide the student with the necessary theoretical knowledge in order to be able to adapt more easily to the development of video games with any game engine.

The subject consists of theoretical sessions, where the engine systems will be explained from a technical and generic point of view; and practical sessions, where game engines will be used in order to use the systems and learn more specifically how they work in a specific engine.

This subject has methodological and digital resources to make possible its continuity in non-contact mode in the case of being necessary for reasons related to the Covid-19. In this way, the achievement of the same knowledge and skills that are specified in this teaching plan will be ensured.

The Tecnocampus will make available to teachers and students the digital tools needed to carry out the course, as well as guides and recommendations that facilitate adaptation to the non-contact mode..

Learning outcomes

At the end of the course students must be able to:

  • E6.1 Design the software architecture of a video game according to specifications.
  • E6.6 Develop 2D and 3D video games (or parts thereof) in high-level language on platforms and engines intended for this purpose.
  • E15.5 Develop the quality and testing strategy, correct and adjust the software.

Working methodology

The subject uses the following work methodologies:
Master class and small group laboratory.


  1. Introduction
    1. Game - Game Engine
    2. Genders
    3. Runtime - Offline
    4. One
  2. Gameplay Foundations
    1. Game world
    2. Runtime object models
    3. Manipulation of game objects
    4. Events and messages
    5. Scripting
    6. High level game flow
  3. Main systems of a game engine
    1. Rendering engine
    2. Animation system
    3. Collision detection system and rigid solids dynamics
    4. Usually external systems: Sound, Artificial Intelligence, Animation-Physics, etc.
  4. Low level systems of a game engine
    1. game loop
    2. Pipeline and resource manager
    3. HID
    4. Debugging tools
    5. Support systems

Learning activities

In order to gather evidence of the achievement of the expected learning outcomes, the following evaluative activities will be carried out (related to all the common competencies): Analysis of a low-level engine system and comparison with Unity the Unreal.

A1. Group work: Comparison of a Gameplay system (Evidence of learning outcome E6.1, E6.6, E15.5)

Analysis of a gameplay system of an engine and comparison with Unity or Unreal. 

A2. Group work: Comparison of a main system (Evidence of learning outcome E6.1, E6.6, E15.5)

Analysis of a main engine system and comparison with Unity or Unreal.

A3. Laboratory practices: Prototype of a clicker (Evidence of learning outcome E6.1, E6.6, E15.5)

Development of a video game prototype with Unreal Engine.

A4. Laboratory practice: Prototype of a fishing game (Evidence of learning outcome E6.1, E6.6, E15.5)

Development of a video game prototype with Unreal Engine.

A5. Laboratory practices: Debugging a project (Evidence of learning outcome E6.1, E6.6, E15.5)

Debugging a project with Unreal Engine.

A6. Final exam (Evidence of learning outcome E6.1, E6.6, E15.5)


General criteria of the activities:

- The teacher will present a statement for each activity and the evaluation and / or rubric criteria.
- The teacher will inform of the dates and format of the delivery of the activity.

Evaluation system

The grade of each student will be calculated following the following percentages:

A1. Comparison of a Gameplay System - 10%

A2. Comparison of a Main system - 10%

A3. Laboratory practices: Clicker - 13.33%

A4. Laboratory practice: Fishing game - 13.33%

A4. Laboratory practices: Debugging - 13.33%

A5. Theoretical final exam - 40%

Final grade = A1 0.1+ A2 0.1 + A3 0.1333 + A4 0.1333 + A5 0.1333 + A6 0.4


- It is necessary to obtain a mark superior to 5 in the final exam to pass the asignatura.
- An activity not delivered or delivered late and without justification (court summons or medical matter) counts as a 0.
- It is the responsibility of the student to avoid plagiarism in all its forms. In the case of detecting a plagiarism, regardless of its scope, in some activity will correspond to have a note of 0. In addition, the teacher will communicate the situation so that applicable measures are taken in the matter of sanctioning regime.


  • You must obtain a grade higher than 5 in the resit exam to pass the course.
  • The mark of the resit exam will be applied only to Activities A1, A2 and A6. Internships cannot be recovered.
  • In case of passing the recovery, the maximum final mark of the subject will be 5.



Gregory, J. (2009). Game Engine Architecture / Jason Gregory. Gannett Company, 687-717.

Zerbst, S. (2004). 3D Game Engine Programming (Game Development Series). Premier Press.

Eberly, D. (2006). 3D game engine design: a practical approach to real-time computer graphics. CRC Press.