Course detail

Introduction to Game Development

FaVU-1ZHERVAcad. year: 2021/2022

The ever-increasing impact of computer games, simulators, and "serious games" applications undeniably shows their future potential. However, their development requires a comprehensive overview of a wide range of topics and creative approaches used in solving various and unconventional problems. In the course Game Design Principles (IZH), we introduce participants to the issue of game development both in terms of theoretical algorithms and procedures, as well as practical experience using the Unity platform.

WHY IS THE COURSE TAUGHT
The course offers participants an introduction to the development of computer games. However, this knowledge can be applied in a broader context. Thanks to the massive demand for visualizations and prototypes, the so-called "serious games" are frequently utilized in many applications. Their uses range from games for entertainment, architectural designs, product prototypes, visualizations, and presentations to film prototypes. The theoretical part of the course takes the form of lectures, introducing the general concepts, algorithms, and procedures of game design. Further, the practical exercises allow the students to deepen their abilities through regular demonstrations, practical exercises, and a project focused on the Unity development platform.

Language of instruction

Czech

Number of ECTS credits

4

Mode of study

Not applicable.

Learning outcomes of the course unit

ACQUIRED SKILLS, KNOWLEDGE AND COMPETENCES FROM THE SUBJECT
Students will learn the basic terminology of game design set in the contemporary game development process.
Students will gain an overview of algorithms and techniques used in the implementation of interactive and passive multimedia applications.
Students will learn to solve common problems in game development using the Unity development platform.
Students will be able to transform concepts and ideas into real-world applications using prototypes and hands-on development processes.



SKILLS, KNOWLEDGE AND COMPETENCES GENERAL
Students will learn to solve simple programming problems through regular assignments.
Students will become proficient in the practical use of programming, debugging and modelling tools.
Students will practice scripting and programming in C# and HLSL.

Translated with www.DeepL.com/Translator (free version)

Prerequisites

Necessary prerequisite knowledge includes:
Basics of Algebra and Geometry: matrices, vectors, transformations, projections.
Basics of Programming: troubleshooting, any programming or scripting language.
Basics of Computer Graphics and Multimedia: 3D rendering, forms of multimedia data.

Co-requisites

Not applicable.

Planned learning activities and teaching methods

26 hrs lectures, 12 hrs demonstration exercises, 14 hrs projects

Teaching will be in the form of lectures followed by tutor-led exercises and independent work on projects.

Assesment methods and criteria linked to learning outcomes

Each student is required to obtain at least 2 points from each practical exercise. Submission and presentation of the Game Jam project are mandatory, with no less than 24 points required to pass the course successfully.

ASSESSMENT POINTS
58 project, 42 practical exercises

Course curriculum

SYLLABUS OF LECTURES
1. What is Game: Introduction, History Overview, Terminology, Serious Games
2. Game Design: Systems Design, Game Genres, Mechanics, Designing a Game
3. Game Engine: Architecture and Systems, Game loop, The Unity Engine
4. Unity as a Platform: Data Orientation, Entities and Components, Execution Logic
5. User Input: Control Styles, Hardware Specifics, Input in Unity
6. Space and Bodies: Scene in 3D, Transformation, Physics in Unity
7. Visualization and Rendering: Camera, Effects and Shaders, Materials in Unity
8. Assets and Models: Formats and Tools, Rigging, Skinning, Assets in Unity
9. Scene Dynamics: Animation, Interpolation, Skeletal Animation, Timeline
10. Visual Interface: Elements, Events, Feedback, UX, UI Toolkit in Unity
11. Sound System: Sound design, Sources and Listeners, Scene Influence
12. Idea and Realization: Game Mechanics, Experimentation, Blockout, Assignments
13. Game Development: Development Process, Publication, Monetization Systems, Marketing


SYLLABUS OF COMPUTER EXERCISES
1. (3.) Tools and the Unity Platform: Unity C#, Game Loop, Exercises and Projects
2. (5.) Prototypes and Input: Prototypes and Debugging, User Input, Control Styles
3. (7.) Forms of Visualization: Materials, Shading, Shader Graph, Shader Effects
5. (9.) Physical Interaction: Keyframe animation, Bounding Volumes, Physical Simulation
4. (11.) Game Interface: Events, UI Builder, Mockup, Sound Feedback
6. (12.) Development Assignment: Prototyping of Game Mechanics, Game Logic

SYLLABUS - OTHERS, PROJECTS AND INDIVIDUAL WORK OF STUDENTS
Practical exercises:
1. (2.) Analysis of Mechanics: Selected (even serious) game, Design, Style, One page A4
2. (3.) Unity Project: Environment Preparation, GIT repository, C# script, Web export
3. (5.) Entity Control: Combination of Entities and Components, User Control
4. (7.) Materials and Effects: Material Editor, Material Shaders
5. (9.) Animation in 2D: Asset Creation, Keyframe Animation, Time
6. (10.) Inventory Interface: Drag & Drop, Sound Feedback
7. (12.) Mechanics Tuning: Assignment, Prototype Enhancement

Work placements

Not applicable.

Aims

The objective is to provide the students with an overview of game application development. We present the practical implementation using the Unity platform, focusing on both game and serious applications. Students will get acquainted with individual game systems, their relevance in the whole, and finally, how to implement them. Specifically, we focus on game development issues concerning communication with the user, rendering, physical simulation, sound, and modeling. Further, we introduce the participants to frequently used game development tools. Ultimately, the acquired knowledge enables the students to transform their ideas into real interactive and passive applications, providing the necessary groundwork for further development.

Specification of controlled education, way of implementation and compensation for absences

PROGRESS ASSESSMENT
Practical exercises up to 7 x 6 = 42 points.
Game Jam project up to 58 points.
Minimum to pass the course according to the ECTS assessment is 50 points.

CONTROLLED INSTRUCTION
The practical exercises are assigned and evaluated during the semester.
The Game Jam project takes place during the final weeks of the semester, ending with the time limit expiration.

Recommended optional programme components

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

Jason Gregory; Game Engine Architecture; A K Peters/CRC Press; 2018 (3. vyd.). (EN)
Jesse Schnell; The Art of Game Design: A Book of Lenses; A K Peters/CRC Press; 2019 (3. vyd.). (EN)
Robert Nystrom; Game Programming Patterns; Gennever Benning; 2014 (1. vyd.) + online. (EN)
[Manuál Unity](https://docs.unity3d.com/Manual/index.html) (EN)
[The Book of Shaders](https://thebookofshaders.com/) (EN)
Podklady z přednášek a demonstračních cvičení (CS)

Recommended reading

Not applicable.

Classification of course in study plans

  • Programme VUB Bachelor's

    branch VU-D , 1. year of study, winter semester, elective
    branch VU-D , 1. year of study, winter semester, elective
    branch VU-D , 1. year of study, winter semester, elective
    branch VU-VT , 1. year of study, winter semester, elective
    branch VU-VT , 1. year of study, winter semester, elective
    branch VU-VT , 1. year of study, winter semester, elective
    branch VU-VT , 1. year of study, winter semester, elective
    branch VU-VT , 1. year of study, winter semester, elective
    branch VU-VT , 1. year of study, winter semester, elective
    branch VU-IDT , 1. year of study, winter semester, elective
    branch VU-IDT , 1. year of study, winter semester, elective
    branch VU-IDT , 1. year of study, winter semester, elective
    branch VU-IDT , 1. year of study, winter semester, elective
    branch VU-IDT , 1. year of study, winter semester, elective
    branch VU-IDT , 1. year of study, winter semester, elective
    branch VU-IDT , 1. year of study, winter semester, elective
    branch VU-D , 2. year of study, winter semester, elective
    branch VU-D , 2. year of study, winter semester, elective
    branch VU-D , 2. year of study, winter semester, elective
    branch VU-VT , 2. year of study, winter semester, elective
    branch VU-VT , 2. year of study, winter semester, elective
    branch VU-VT , 2. year of study, winter semester, elective
    branch VU-VT , 2. year of study, winter semester, elective
    branch VU-VT , 2. year of study, winter semester, elective
    branch VU-VT , 2. year of study, winter semester, elective
    branch VU-IDT , 2. year of study, winter semester, elective
    branch VU-IDT , 2. year of study, winter semester, elective
    branch VU-IDT , 2. year of study, winter semester, elective
    branch VU-IDT , 2. year of study, winter semester, elective
    branch VU-IDT , 2. year of study, winter semester, elective
    branch VU-IDT , 2. year of study, winter semester, elective
    branch VU-IDT , 2. year of study, winter semester, elective

  • Programme IT-BC-3 Bachelor's

    branch BIT , 2. year of study, winter semester, elective

  • Programme BIT Bachelor's, 2. year of study, winter semester, elective

  • Programme VUB Bachelor's

    branch VU-D , 3. year of study, winter semester, elective
    branch VU-D , 3. year of study, winter semester, elective
    branch VU-D , 3. year of study, winter semester, elective
    branch VU-VT , 3. year of study, winter semester, elective
    branch VU-VT , 3. year of study, winter semester, elective
    branch VU-VT , 3. year of study, winter semester, elective
    branch VU-VT , 3. year of study, winter semester, elective
    branch VU-VT , 3. year of study, winter semester, elective
    branch VU-VT , 3. year of study, winter semester, elective
    branch VU-IDT , 3. year of study, winter semester, elective
    branch VU-IDT , 3. year of study, winter semester, elective
    branch VU-IDT , 3. year of study, winter semester, elective
    branch VU-IDT , 3. year of study, winter semester, elective
    branch VU-IDT , 3. year of study, winter semester, elective
    branch VU-IDT , 3. year of study, winter semester, elective
    branch VU-IDT , 3. year of study, winter semester, elective
    branch VU-D , 4. year of study, winter semester, elective
    branch VU-D , 4. year of study, winter semester, elective
    branch VU-D , 4. year of study, winter semester, elective
    branch VU-VT , 4. year of study, winter semester, elective
    branch VU-VT , 4. year of study, winter semester, elective
    branch VU-VT , 4. year of study, winter semester, elective
    branch VU-VT , 4. year of study, winter semester, elective
    branch VU-VT , 4. year of study, winter semester, elective
    branch VU-VT , 4. year of study, winter semester, elective
    branch VU-IDT , 4. year of study, winter semester, elective
    branch VU-IDT , 4. year of study, winter semester, elective
    branch VU-IDT , 4. year of study, winter semester, elective
    branch VU-IDT , 4. year of study, winter semester, elective
    branch VU-IDT , 4. year of study, winter semester, elective
    branch VU-IDT , 4. year of study, winter semester, elective
    branch VU-IDT , 4. year of study, winter semester, elective

Type of course unit

 

Lecture

26 hours, compulsory

Teacher / Lecturer

Exercise

12 hours, compulsory

Teacher / Lecturer

Project

14 hours, compulsory

Teacher / Lecturer