Introduction Prof. Aaron Lanterman School of Electrical and Computer Engineering Georgia Institute of Technology2 Games are “serious business” (1) • Facts from www.esa.org: – $7.4 billion revenues in 2006 – Average player is 33 years old and has been playing for 12 years – 36% percent of American parents play computer – 80% percent of gamer parents play with their kids • From Blizzard press release: World of Warcraft surpasses 10 million subscribers in January 2008 – $13 to $15 monthly (for 2.5 million in U.S. at least) – Do the math!!! Screenshot from www.worldofwarcraft.com/burningcrusade/imageviewer.html?,images/screenshots/,65,241,3 Games are “serious business” (2) Stephen Johnson, “Everything Bad is Good for You: How Today's Popular Culture Is Actually Making Us Smarter” Screenshot from www.worldofwarcraft.com/burningcrusade/imageviewer.html?,images/screenshots/,65,241,4 Our MPG class fills an industry need (1) “CPU/GPU programming skill is the biggest hole they have. They can't find students who can do it well.” - Prof. Blair MacIntyre5 Our MPG class fills an industry need (2) “The biggest challenge facing game companies right now is the problem of writing multithreaded code that fully supports the multiple-core architectures of the latest PCs and the next generation game consoles.” - Jeremy Reimer, “Valve goes multicore” http://arstechnica.com/articles/paedia/cpu/valve-multicore.ars Picture from Wikipedia6 Our MPG class fills an industry need (3) “If a programming genius like John Carmack can be so befuddled by mysterious issues coming from multithreaded programming, what chance do mere mortals have?” - Jeremy Reimer, “Cross-platform game development and the next generation of consoles” http://arstechnica.com/articles/paedia/hardware/crossplatform.ars From www.eurogamer.net/articles/i_johncarmack_doomrpg7 The realities of real-time • The architectures we will look at are driven by real-time constraints – 60 frames per second – 1/60 ≈ 16.7 milliseconds – Average performance is irrelevant; it’s the minimum that matters • In contrast, most scientific applications can be handled “offline” – Computers historically designed to work well in “batch mode”8 NOT a course on game design, or… • See CS4455: Video Game Design – Founded by Amy Bruckman in 1998 • See CS4731: Game AI for the real deal on AI – But we may dabble in AI just a little bit • Also won’t be talking about… – Handheld game devices • That may change in the future! – “Alternative” controllers – Networking issues (LAN parties, MMORPGs, etc.) – Prototyping, user testing – Societal impact of games – Gender and games – Business issues (organizational issues of large teams, etc.) • May incidentally touch upon some of the above issues9 Only partially a graphics course (1) • No background in computer graphics required! – Make sure class is accessible to ECE majors • We will review a minimal amount of necessary background – Geometric transformations, backface culling, clipping, rasterization, lighting, texture mapping, etc. • Emphasis will be on real-time graphics10 Only partially a graphics course (2) • We won’t be talking about things like… – Perception – Global illumination: ray tracing, radiosity, photon mapping • Although people are putting such algorithms on GPUs! – Advanced animation techniques: inverse kinematics • See – CS3451/CS6491: Computer Graphics – CS4496/CS7496: Computer Animation – CS4475: Computational Photography – CS4480 Digital Video Special FX Image from www.3dkingdoms.com/ik.htm11 This is WILL be a course on… • Emphasis will be on games that simulate and depict “realistic” animated 3-D environments – Algorithms – Architectures – Programming paradigms • Practical target platforms – Xbox 360 – Playstation 3 – Windows PCs with NVIDIA or ATI graphics cards • Future target platforms – Intel’s Larabee • What about the Wii?12 Then vs. Now • In the early days of computer games, the “designer” and the “programmer” were often one and the same • Nowadays there are usually separate positions of “producer,” “lead designer,” “lead artist,” “lead programmer,” etc.13 Theme 1 • Hardware features influence game design • If the Atari 400 gives you 4 sprites, you’ll naturally find something to do with those 4 sprites • If a Playstation 3 can push a gazillion polygons, developers feel obligated to provide a gazillion polygons • Driving budgets through the roof • 100 person teams - 30 programmers, 70 artists • Trend not sustainable! • With all the emphasis on 3-D realism, could great games like Ms. Pac-Man or Balance of Power be made today?14 Theme 2 Sufficient cleverness can sometimes overcome hardware limitations15 Commercial game industry is brutal • Nov. 2004: “EA Spouse” post (ea-spouse.livejournal.com) lead to $14.9 million award for unpaid overtime • Some companies get hundreds of resumes per week per listing (www.gamasutra.com/features/20050711/mcshaffry_01.shtml) Erin Hoffman Photo from Wikipedia16 Think “outside the box” • Computer engineering – Gaming drives technological developments – Gaming experience gives future computer engineers insight – Maybe you’ll work for NVIDIA or ATI? – Maybe you’ll work for Intel, AMD, or IBM? – Maybe you’ll help design the Playstation 4 or Xbox 720? • “Game” programming/design: think beyond the commercial industry • Scientific potential of GPGPU • Even if you never program any “games,” multicore is the future • That all said - we’d be totally thrilled if you got a job at Insomniac, Bungie, Blizzard, Activision, LucasArts, etc.17 Many opportunities for indie developers (1) • On-line distribution takes manufacturing costs out of the equation • “Brick & mortar” stores have limited shelf space • Services like Amazon, Netflix, etc. can exploit “the long tail” • Why are we still shipping boxes mostly full of air? Photos from http://cribbster.wordpress.com/2009/01/27/18 Many opportunities for indie developers (2) • Greg Costikyan’s
View Full Document