SLIDE 4 Jason Gregory: Jason Gregory: Game Engine Architecture Game Engine Architecture (2. ed., 2014) (2. ed., 2014)
Introduction
- what is a game/game engine/cases..
what is a game/game engine/cases..
- Ch. 2
- Ch. 2 Tools of the trade
Tools of the trade
- Ch. 9
- Ch. 9 Tools for debugging and developm
Tools for debugging and developm. .
- logging, tracing, debugging, cheats..
logging, tracing, debugging, cheats..
- Ch. 10
- Ch. 10 Rendering engine
Rendering engine
- Ch. 2
- Ch. 2 Tools of the trade
Tools of the trade
- prog. envs, Visual Studio., version
- prog. envs, Visual Studio., version
control, profiling, leak detection, etc. control, profiling, leak detection, etc.
- Ch. 3
- Ch. 3 Fundamentals of SE for games
Fundamentals of SE for games
- C++ techniques and practices
C++ techniques and practices
- Ch. 4
- Ch. 4 3D math for games
3D math for games
- points, vectors, matrices, quaternions..
points, vectors, matrices, quaternions..
- Ch. 5
- Ch. 5 Engine support systems
Engine support systems
memory, strings, start-
up, configs..
- Ch. 10
- Ch. 10 Rendering engine
Rendering engine
- the rendering pipeline, visual effects
the rendering pipeline, visual effects
- Ch. 11
- Ch. 11 Animation systems
Animation systems
- skeletons, poses, skinning..
skeletons, poses, skinning..
- Ch. 12
- Ch. 12 Collision and rigid body dynamics
Collision and rigid body dynamics
- physics, collision detection, etc.
physics, collision detection, etc.
Audio (new in 2nd. edition) (new in 2nd. edition)
- Ch. 14
- Ch. 14 Introduction to gameplay systems
Introduction to gameplay systems
memory, strings, start-
up, configs..
- Ch. 6
- Ch. 6 Resources and the file system
Resources and the file system
- Ch. 7
- Ch. 7 Game loop and simulation
Game loop and simulation
- main loop, and dealing with time..
main loop, and dealing with time..
- Ch. 8
- Ch. 8 Human interface devices
Human interface devices (HID) (HID)
- implementing game objects/worlds
implementing game objects/worlds
Run-
- time gameplay foundations
time gameplay foundations
- bject model architectures
- bject model architectures
- events and message passing
events and message passing
- scripting, loading worlds..
scripting, loading worlds..
- Ch. 16
- Ch. 16 There's more
There's more? ?
Juha Vihavainen / University of Helsinki Juha Vihavainen / University of Helsinki 7 25.1.2017 25.1.2017
Related teaching Related teaching in our department in our department
- Introduction to Game Programming
Introduction to Game Programming (Autumn 2016, 2017, 2nd period) (Autumn 2016, 2017, 2nd period)
Game Engine Architecture (this course, now: 2017, 3rd period) (this course, now: 2017, 3rd period)
serves as "Game programming Game programming II" II"
- requires/teaches programming skills in C/C++
requires/teaches programming skills in C/C++
Tietokonegrafiikka (Spring 2017, 4th period, Otto Nurmi) (Spring 2017, 4th period, Otto Nurmi)
- computer graphics: rasterisation, shading, texturing..
computer graphics: rasterisation, shading, texturing..
based on OpenGL OpenGL graphics library graphics library
Game Project course course (Spring 2017, 4th period) (Spring 2017, 4th period) an optional project for IGP and GEA courses an optional project for IGP and GEA courses
- an optional project for IGP and GEA courses
an optional project for IGP and GEA courses
Compiler design & & Code generation Code generation courses (Spring 2018) courses (Spring 2018)
- for understanding script languages and their implementation;
for understanding script languages and their implementation; include practical implementation projects (interpreter, compiler) include practical implementation projects (interpreter, compiler)
Juha Vihavainen / University of Helsinki Juha Vihavainen / University of Helsinki 8 25.1.2017 25.1.2017