2. How a Computer Game Works
• Initial state (birds, pigs, woodpile)
• Game loop starts
• Take user input events (fire catapult)
• Update and display game state (bird
flies, things collide)
• Game loop finishes when you win or
lose (and the score is calculated)
Image source: https://play.google.com/store/apps/details?id=com.rovio.angrybirdsrio
3. Back in the Day…
• Arcade games were
pretty much built from
scratch every time
• Not any more…
Image source: http://www.allposters.com/-sp/Space-Invaders-Arcade-
Cabinet-Classic-Video-Game-Poster-Posters_i9718572_.htm
4. Abstraction
• Like every
software tool, a
games engine
provides a level of
abstraction to hide
underlying
complexity
Source: http://www.giantbomb.com/images/1300-2500834
5. Game Engines Provide
• Graphics rendering (2D or 3D)
• Physics/collision engine
• Scene graphs
• Animation
• Scripting
• AI
– And a whole lot more…
6. Types of Game Engine
• Roll-your-own (lowest level)
– Using APIs like XNA and OpenGL, and
libraries like Havok and OpenSceneGraph
• Mostly-ready game engines (mid level)
– Require some programming to make a
complete game, e.g Torque and Unreal
• Point-and-click engines (highest level)
– Require as little coding as possible, e.g.
Unity3D
7. Why All the 1st Person Shooters?
• (partly) because it’s a standard games
engine style
Image source: https://www.youtube.com/watch?v=rnJr9vfvQ2M
Not actually a game at all but a spoof video
8. By The Way…
• Violence isn’t a requirement
– Find appropriate enemies
• e.g. stinging insects
• Neither is being a misogynistic troll
– @see #gamergate
9. Platform Interoperability
• A selection of engines and platforms
• Choice of target(s) will affect choice of
engine
Games Engine Target Platforms
Unreal Engine 4 Android, HTML5, iOS, Linux, Mac, Oculus, PC, PS4, SteamOS,
Xbox One
Unity Android, BlackBerry, iOS, Linux, Mac, PS3, PS4, Xbox 360, Xbox
One, Windows 8
CryEngine Android, iOS, PC, PS3, PS4, Xbox 360, Xbox One, Wii U
GameMaker Android, Browser, iOS, Mac, PC, PS3, PS4, Vita, Windows Phone
ShiVa Android, Blackberry, iOS, Linux, Mac, PS3, SteamOS, Vita, Wii,
Windows, Windows Phone 8, Xbox 360
Marmalade Android, BlackBerry, iOS Mac, Windows, Tizen
14. Narrative Frameworks
• One aspect of game design is the
narrative framework
• Games need a beginning, a middle and
an end
– As opposed to a ‘world’, which just ‘is’
• An engine helps you build the software
• A framework helps you build the
narrative
15. Sources
• Craig Chapple. (2014). The top 16 game engines for 2014
http://www.develop-online.net/tools-and-tech/the-top-16-game-
engines-for-2014/0192302
• Michael Enger. (2013). Game Engines: How do they work?
http://www.giantbomb.com/profile/michaelenger/blog/game-
engines-how-do-they-work/101529/
• Ben Smiley. (2012). What is a game engine?
http://www.deluge.co/?q=what-is-a-game-engine
• Jonas Heide Smith. (2000). The Road not Taken - The How’s
and Why’s of Interactive Fiction http://game-
research.com/index.php/articles/the-road-not-taken-the-hows-
and-whys-of-interactive-fiction/
• Jeff Ward. (2008). What is a Game Engine?
http://www.gamecareerguide.com/features/529/what_is_a_gam
e_.php
• Richard Wells. iPad 4 Schools. http://ipad4schools.org/