game development

68
Game Development Dr. Mathias Lux ITEC - Universität Klagenfurt [email protected] This work is licensed under a Commons Attribution-Share Alike 3.0 Austria License. See http://creativecommons.org/licenses/by-sa/3.0/at/

Upload: alexandra-roberson

Post on 30-Dec-2015

36 views

Category:

Documents


1 download

DESCRIPTION

Game Development. Dr . Mathias Lux ITEC - Universität Klagenfurt [email protected]. This work is licensed under a Commons Attribution-Share Alike 3.0 Austria License. See http:// creativecommons.org/licenses/by-sa/3.0/at /. Agenda. Why teaching “computer games”? - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Game Development

Game Development

Dr. Mathias Lux

ITEC - Universität [email protected]

This work is licensed under a Commons Attribution-Share Alike 3.0 Austria License. See http://creativecommons.org/licenses/by-sa/3.0/at/

Page 2: Game Development

http://www.uni-klu.ac.at

2

Agenda

● Why teaching “computer games”?● What is a “good” game?● Game projects in teaching● Game development

Page 3: Game Development

http://www.uni-klu.ac.at

3

Why teaching computer games?

● Commercial relevanceo Games are a big business

● Research and technologyo Games lead to innovation

● Application of knowledge in game dev.o Maths, physics, algorithms, data structureso Project management & planningo Self reflection and team work

Image (cc) by http://www.flickr.com/photos/juliebee

Page 4: Game Development

http://www.uni-klu.ac.at

4

Why teaching computer games?

● Many people …o play games themselves!o assume they are experts!o think they can do better!

Image (cc) by http://www.flickr.com/photos/neilschelly

Page 5: Game Development

http://www.uni-klu.ac.at

5

Industry Facts: ESA (US)

● Gaming industry economics & sales:o 2003-2006 the annual rate (gain) exceeded

17% (cp. <4% for the US economy)o Game console software sales: $6.6 billion /

153.9 million units in 2007o Computer games sales: $910.7 million / 36.4

million units in 2007o Portable software sales: $2.0 billion / 77.5

million units in 2007

Source: esa, entertainment software association - http://www.theesa.com/

Page 6: Game Development

http://www.uni-klu.ac.at

6

Industry Facts: ESA, 2006

● Gamers facts:o The average American gamer is 35 years old

and has been playing for 13 years. o 38% of American households have a video

game console, 65% play video / PC gameso 56% percent of online game players are male

and 44% are femaleo Adult women represent a greater portion of

gamers (33 %) than boys age <=17 (18 %)

Source: esa, entertainment software association - http://www.theesa.com/

Page 7: Game Development

http://www.uni-klu.ac.at

7

German Game Industry

200720062005200420032002

Page 8: Game Development

http://www.uni-klu.ac.at

8

German Game Industry

Page 9: Game Development

http://www.uni-klu.ac.at

9

German Game Industry:Details on the consumers

Page 10: Game Development

http://www.uni-klu.ac.at

10

German Game Industry:Market share

Page 11: Game Development

http://www.uni-klu.ac.at

11

German Game Industry: How old are gamers?

Page 12: Game Development

http://www.uni-klu.ac.at

12

German Game Industry: Restrictions - USK

Page 13: Game Development

http://www.uni-klu.ac.at

14

Germany: Releases of the last 12 months

Source: games.markt

Page 14: Game Development

http://www.uni-klu.ac.at

15

Germany: Releases % in Genre

Page 15: Game Development

http://www.uni-klu.ac.at

16

MMOG Economics

● WoW has >11 Mio. subscribers (Oct. 2008)o Monthly feeso Add-ons & DLCo World of WarCraft: Wrath of the Lich King

was Xmas best seller at amazon.de

Source: http://www.mmogchart.com/Chart1.html

Page 16: Game Development

http://www.uni-klu.ac.at

17

Example: Super Mario

● Jump & Run, Nintendo● Video game for NES

o World -> SNES & GameBoyo Mario64 -> Nintendo64o Super Paper Mario -> Wiio …

● Most successful video game evero 295 Mio. units sold

Page 17: Game Development

http://www.uni-klu.ac.at

18

Example: LBP

● Little Big Planeto A collaborative platformero 2.5 D Jump & Run

● Awardso Academy Of Interactive Arts & Sciences 2009

• 8 Awards including “best overall game”

o E3 Awards• Best console game, • best casual and social game

o etc.

Page 18: Game Development

http://www.uni-klu.ac.at

19

Example: LBP

● Videos:o Danger – Showing the gameplayo Sackzilla – Showing the editor

Page 19: Game Development

http://www.uni-klu.ac.at

20

Example: Guitar Hero & Rockband

● Guitar Hero (Activision) & Rockband (EA)o Revenue of 2.3 billion dollars o Within three years

● Guitar Hero III – Legends of Rocko First game exceeding 1 billion $ revenue

Page 20: Game Development

http://www.uni-klu.ac.at

21

Example: Popcap Games

Popcap Games creates „casual games“● Most popular game: Bejeweld

o 150 million downloads, o 25 million sold units

● Distributes on o XBox Marketplaceo PSNo PC (Steam, own shop, boxed)

Page 21: Game Development

http://www.uni-klu.ac.at

22

Computer & Innovation

● Consumer Hardware o 3D graphic cards, Open GL for consumerso Video decoding (HD video)

• Cp. Nvidia & ATI/AMD graphic cards

o Input and output methods• High performance mouse• Sensors (cp. Wiimote)• 3D screens, shutter

o PC Setup• PSUs, cooling, etc.

Page 22: Game Development

http://www.uni-klu.ac.at

23

Computer & Innovation

● Consumer Entertainment Hardwareo PS3: 1 (control) +1 (PPC) +7 (SPE) =9 Coreso XBox: 3 Cores w. Hyperthreading ~= 6 Coreso Compare to Wii, DVD recorder, routers, …

● Consumer Softwareo 3D interfaces

• Google Earth• Brockhaus Multimedial• Aero, Beryl, KDE4, etc.

Page 23: Game Development

http://www.uni-klu.ac.at

24

Computer Games & Computer Science

● Computationso Using shaders for parallel processingo High performance clusters, CUDA

● Serious Gameso Human Computing (v. Ahn)o Article “Games with a purpose”

● Educational Gameso Military training o E-Learning, pedagogical (e.g. common sense)

Page 24: Game Development

http://www.uni-klu.ac.at

25

Example:Hazmat Hotzone

● 3D training for fire fighters● Handling hazardeous materials

o E.g. terrorism, …

● Employs Unreal engine● Developed at CMU

Quelle: http://www.gamasutra.com/features/20051102/carless_01b.shtml

Page 25: Game Development

http://www.uni-klu.ac.at

26

US Army leadership development (CSU)

● Stories of soldiers are converted to „knowledge“

● Knowledge is applied in training scenarios for soldierso Decisions in combat and

surveillance scenarioso Interaction with locals

(customs, etc.)

(cc) by Army.mil, http://www.flickr.com/photos/soldiersmediacenter/2941583135/

Page 26: Game Development

http://www.uni-klu.ac.at

27

Games as part of our culture …

● Common sense & knowledgeo Lara Croft & Pac-mano Mario Bros. & Sonic

● Merchandisingo E.g. Game & Film

● Many people have/had contact with gameso PC, Nintendo, Playstation, etc.

Page 27: Game Development

http://www.uni-klu.ac.at

28

Games as part of our culture …

Page 28: Game Development

http://www.uni-klu.ac.at

29

Games as part of our culture …

● Human TETRIS Performanceo GAME OVER Projecto http://www.youtube.com/watch?v=G0LtUX_6IXY

● Real Life Donkey Kongo Bam Margerao http://www.youtube.com/watch?v=_KyIpMtvJvE

● Real Marioo Gordon Collegeo http://www.youtube.com/watch?v=R0fCnf8uWxw

Page 29: Game Development

http://www.uni-klu.ac.at

30

Acceptance and controversial issues

“The disturbing material in Grand Theft Auto and other games like it is stealing the innocence of our children and it's making the difficult job of being a parent even harder ... I believe that the ability of our children to access pornographic and outrageously violent material on video games rated for adults is spiraling out of control.” - (Hillary Clinton, 2005)

Page 30: Game Development

http://www.uni-klu.ac.at

31

Acceptance(Rock’n’Roll)

"The effect of rock and roll on young people, is to turn them into devil worshippers; to stimulate self-expression through sex; to provoke lawlessness; impair nervous stability and destroy the sanctity of marriage. It is an evil influence on the youth of our country." - Minister Albert Carter, 1956

Page 31: Game Development

http://www.uni-klu.ac.at

32

Acceptance

Similar statements to● Comics (1954)● Phone(1926)● Film (1909)● Waltz (1816)● Novels (1790)

Source: http://www.wired.com/wired/archive/14.04/war.html

Page 32: Game Development

http://www.uni-klu.ac.at

33

Agenda

● Why teaching “computer games”?● What is a “good” game?● Game projects in teaching● Game development

o XNAo Tutorials

Page 33: Game Development

http://www.uni-klu.ac.at

34

A good game …

● World of Goo

Page 34: Game Development

http://www.uni-klu.ac.at

35

Aspects of a Game

Review game in several aspects:

● Challenge● Choice● Clear and Compelling Goals● Representation● Conflict● Feedback

Source: http://www.cs.wisc.edu/graphics/Courses/679-s2007/Main/GameDesign

Page 35: Game Development

http://www.uni-klu.ac.at

36

Challenging Goals

● Premise of the gameo Storyo Charactero Motivation

● Why do I play the game?● Why do I build towns, jump & run, …?

Page 36: Game Development

http://www.uni-klu.ac.at

37

Clear Goals

● Different aspectso What is the goal?o When is the goal achieved?

● Strongly connected with feedbacko I need to know when I’m making progress

● Short term vs. long term goalso “Get over fire pit” vs. “Rescue princess”

Page 37: Game Development

http://www.uni-klu.ac.at

38

Clear Rules

● Figuring out ruleso In play: learning curve?o Common sense (gravity, rebound, etc.)

● Unclear rules are frustratingo I couldn’t .. because I didn’t know …

● Do not allow workaroundso Circumventing != cheating

• Happens within allowed rule set

Page 38: Game Development

http://www.uni-klu.ac.at

39

Choices

● Player should have meaningful choices● Consider example choice qualities:

o Hollow -> No consequenceo Obvious -> Choice without alternativeo Informed -> based on provided information cp. guessingo Dramatic -> Connects to emotionso Weighted -> Both neg. and pos. outcomeso Immediate -> Need fast decisiono Orthogonal -> Choices are independent

Page 39: Game Development

http://www.uni-klu.ac.at

40

Challenge

● Tuning / Balanceo Make things hard, but not too hard

● Dynamic gameso Change with game progress &

gamers skills

● Challenge from design vs. technical issueso Can’t figure out puzzle vs.

can’t find button combo

(cc) by law keven, www.flickr.com/photos/66164549@N00/2506022298/

Page 40: Game Development

http://www.uni-klu.ac.at

41

Feedback

● Action & Reactiono Choose a new car and feel the effect …o Buy new clothes & see them on avatar …

● Gamers need rewardso Cp. concept of highscore

● Experienceo Buy weapon or skill upgradeso Reach new levels & challenges

Page 41: Game Development

http://www.uni-klu.ac.at

42

Assumed audience ?!?

● Who will play your game?● Who will pay for your game?● What are appropriate distribution

channels?o App Store, Steam, Download, Boxed, …

Page 42: Game Development

http://www.uni-klu.ac.at

43

Agenda

● Why teaching “computer games”?● What is a “good” game?● Game projects in teaching● Game development

o XNAo Tutorials

Page 43: Game Development

http://www.uni-klu.ac.at

44

Possible Topics

● Arcade gameso Typically 2D, lots of historical examples

● Puzzle gameso Simple graphics, focus on logic

● Mobile gameso Realistic scope & deployment scenario

● Educational games for kidso Topic based, more weight on story

Page 44: Game Development

http://www.uni-klu.ac.at

45

Possible Aspects

● Programming skillso Learning by doing

● Hands-on with toolso GFX, SFX

● Soft skillso Teamwork, discussion, coordination

● Specific topics different areaso Physics, geometry, linear algebra, AI, …

Page 45: Game Development

http://www.uni-klu.ac.at

46

Project Milestones

1. Planning & Design2. Implementation 3. Testing & Evaluation4. Deployment5. Post mortem

Page 46: Game Development

http://www.uni-klu.ac.at

47

Design Documents(not technical)

● High Level Documento Abstract of the game in 2-4 pages

● Game Treatment Documento Present game in a broader outlineo It’s also more sales than dev document

● Game Bibleo Character designo World designo Flowboard: flow of gameplay modeso Story & level progression: storylineo Game script: rules and mechanics of the game

(cc)

by d

un

ech

ase

r, w

ww

.flic

kr.c

om

/ph

oto

s/d

un

ech

ase

r/1

03

29

40

50

/

Page 47: Game Development

http://www.uni-klu.ac.at

48

Game Script

● Should enable one to play the game● Create a paper prototype

o Use it for testing

(cc) by kekremsi, www.flickr.com/photos/emraya/2929959881

Page 48: Game Development

http://www.uni-klu.ac.at

49

Sample Design Document: Abstract

Catch the Clown

Catch the Clown is a little action game. In this game a clown moves around in a playing field. The goal of the player is to catch the clown by clicking with the mouse on him. If the player progresses through the game the clown starts moving faster and it becomes more difficult to catch him. For each catch the score is raised and the goal is to get the highest possible score. Expected playing time is just a few minutes.

source: http://www.yoyogames.com/make/tutorials

Page 49: Game Development

http://www.uni-klu.ac.at

50

Sample Design Document: Game Objects

Game objects

There will be just two game objects: the clown and the wall. The wall object has a square like image. The wall surrounding the playing area is made out of these objects. The wall object does nothing. It just sits there to stop the clown from moving out of the area. The clown object has the image of a clown face. It moves with a fixed speed. Whenever it hits a wall object it bounces. When the player clicks on the clown with the mouse the score is raised with 10 points. The clown jumps to a random place and the speed is increased with a small amount.

source: http://www.yoyogames.com/make/tutorials

Page 50: Game Development

http://www.uni-klu.ac.at

51

Sample Design Document: The RestSoundsWe will use two sounds in this game. A bounce sound that is used when the clown hits a wall, and a click sound that is used when the player manages to click with the mouse on the clown.ControlsThe only control the player has is the mouse. Clicking with the left mouse button on the clown will catch it.Game flowAt the start of the game the score is set to 0. The room with the moving clown is shown. The game immediately begins. When the player presses the <Esc> key the game ends.LevelsThere is just one level. The difficulty of the game increases because the speed of the clown increases after each successful catch.

Page 51: Game Development

http://www.uni-klu.ac.at

52

Game Postmortems

● Written after finishing the projecto Done by senior developer or manager

● Summarizes dev process too Avoid pitfalls in later projectso Apply practices that worked

well in later projects

Check for instance gamasutra.com

(cc) by devicer, www.flickr.com/photos/devicer/42503985/

Page 52: Game Development

http://www.uni-klu.ac.at

53

Game postmortems: Structure

● Project Overviewo Describe the game (idea, setting, story,

features)o Describe team and circumstances

● What went righto Describe „best practices“o Describe and argue „good“ decisionso Motivation for this part: Think of benefits for

future projects

Page 53: Game Development

http://www.uni-klu.ac.at

54

Game postmortems: Structure

● What went wrongo Describe pitfalls and difficultieso Describe mistakes experienced, technical as

well as from management perspective

● Conclusion & Closingo Final note from the authors, personal

experienceo Project brief: Dev tools, resources, …

Page 54: Game Development

http://www.uni-klu.ac.at

55

Agenda

● Why teaching “computer games”?● What is a “good” game?● Game projects in teaching● Implementation

Page 55: Game Development

http://www.uni-klu.ac.at

56

Typical Basic Elements (I)

● Game Loopo Painting current state to screen

● Spriteso Moving objects, animated

● Levelo The playground

● Scoreo The achievement & reward system

Page 56: Game Development

http://www.uni-klu.ac.at

57

Typical Basic Elements (II)

● Collision Detectiono Check if objects interfere

● Soundo Background & SFX

● Game AIo Some “intelligence”, dynamics or adaptation

Page 57: Game Development

http://www.uni-klu.ac.at

58

Game Frameworks

Framework manages … ● Input & Output

o poll & queue input controllerso render game in time (hardware acceleration) o network & storage

● Physics o object-world and object-object interaction

● Resourceso loading, animation

Page 58: Game Development

http://www.uni-klu.ac.at

59

Microsoft XNA Game Studio

● Set of game development tools● Based on .NET Compact Framework● Available in version 3.0

o Version 3.1 already announced

● Programming in C#o Help in MSDN / Knowledgebase

Page 59: Game Development

http://www.uni-klu.ac.at

60

Out-of-the-Box Game

Page 60: Game Development

http://www.uni-klu.ac.at

61

Basic game structure

Page 61: Game Development

http://www.uni-klu.ac.at

62

Experience with XNA

● Students find their way fasto Workshop (1 day) for first tutorial based game

● Students are occupied for hours o Hours of adaptations

• Graphics and sounds• Gameplay and levels• Testing and tuning

● XNA is very powerfulo With necessary limitations

Page 62: Game Development

http://www.uni-klu.ac.at

63

Experience with XNA

● Team members have different roleso Sound & 2D Designo Implementation & Testingo Planning & Coordination

● Learning programming along the wayo How can we rotate/scale/translate a sprite?o How can we add a loop for …?

Page 63: Game Development

http://www.uni-klu.ac.at

64

Summer Camp 2008-2009

● Arcade game development in teams of 2o Students of age 16-18o Basic knowledge of programming (Java)

● Duration: 5 Days with ~ 3 hours each● Results

o Steep learning curveo 2 (out of 5) very innovative projects

• Design & Gameplay

o Students programmed in their spare time

Page 64: Game Development

http://www.uni-klu.ac.at

65

VK Games @ Uni Klu

● Goal: Arcade (Casual) Gameo In 6 weeks of development timeo With planning and self reflectiono In teams of 3 with max. 40 h of work each

● Resultso All but one projects finishedo Everyone put a lot more effort in than 40 h

Page 65: Game Development

http://www.uni-klu.ac.at

66

Proposed Format

1. One day workshop as introductiono Basics on gameso Basics on game developmento Self directed learning through tutorials

2. Multiple units of self directed (but tutored) game development.o Based on the outcome of the tutorial

3. Final presentation of the outcome

Page 66: Game Development

http://www.uni-klu.ac.at

67

Resources

● XNA Creators Clubo Lots of tutorials and game sampleso http://creators.xna.com/en-US/education/catalog/

● Visual C# Express Editiono Free 2 use version of visual studioo http://www.microsoft.com/express/vcsharp/

● Alternative: Gamemakero Strange tool, but immediate resultso http://www.yoyogames.com/make

Page 67: Game Development

http://www.uni-klu.ac.at

68

Final words

● Nearly every single student was very much involved with the gaming projects.o Some even failed other courses

● Typically people spent a lot more time on the project than they should have.o Despite prior warning

● Overall feedback was very encouragingo Although many reconsidered their career plans

Page 68: Game Development

http://www.uni-klu.ac.at

69

Questions?

Mathias [email protected]://www.itec.uni-klu.ac.at/~mlux