a brief guide to game engines

15
Associate Professor David Parsons Massey University, Auckland, New Zealand

Upload: david-parsons

Post on 15-Jul-2015

478 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: A Brief Guide to Game Engines

Associate Professor David Parsons

Massey University, Auckland, New Zealand

Page 2: A Brief Guide to Game Engines

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

Page 3: A Brief Guide to Game Engines

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

Page 4: A Brief Guide to Game Engines

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

Page 5: A Brief Guide to Game Engines

Game Engines Provide

• Graphics rendering (2D or 3D)

• Physics/collision engine

• Scene graphs

• Animation

• Scripting

• AI

– And a whole lot more…

Page 6: A Brief Guide to Game Engines

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

Page 7: A Brief Guide to Game Engines

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

Page 8: A Brief Guide to Game Engines

By The Way…

• Violence isn’t a requirement

– Find appropriate enemies

• e.g. stinging insects

• Neither is being a misogynistic troll

– @see #gamergate

Page 9: A Brief Guide to Game Engines

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

Page 10: A Brief Guide to Game Engines

Hopscotch

• Scratch-style programming on the iPad

• School kids can create 2D games

Page 11: A Brief Guide to Game Engines

iPad 4 Schools

• Richard Wells at Orewa College uses

HopScotch for games programming

with his classes

Page 12: A Brief Guide to Game Engines

Unity3D

• Point and Click

– Free version available with tutorials

Page 13: A Brief Guide to Game Engines

Unreal Development Kit (UDK)

• Mostly-ready

– Free edition of Unreal Engine 3

Page 14: A Brief Guide to Game Engines

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

Page 15: A Brief Guide to Game Engines

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/