Course Organization CISC 877 Video Game Development Week 1: Introduction
Total Page:16
File Type:pdf, Size:1020Kb
Course Organization CISC 877 Video Game Development Week 1: Introduction T.C. Nicholas Graham [email protected] http://equis.cs.queensu.ca/wiki/index.php/CISC_877 Winter term, 2010 equis: engineering interactive systems Topics include… Timeline and Marking Scheme Video game design Gaminggp platforms and fundamental technolo gies Activity Due Date Grade January 26, Game development processes and pipeline Project Proposal (2-3 pages, hand-in) 10% 2010 Software architecture of video games Progress Presentation (involves Mar 2, 2010 20% Video games as distributed systems presentation and online report) Game physics Informal progress reports Weekly 5% GAIGame AI April 6, 2010 Scripting languages Final Project Presentation / Show 10% (tentative) Game development tools Final Project Report April 9, 2010 45% Social and ethical aspects of video games Class Participation 10% User in terf aces of gam es equis: engineering interactive systems equis: engineering interactive systems Homework Project proposal (for next week) Wiki contains detailed description of project ideas, game you will be extending The Project Proposal to be posted on Wiki – create yourself an account Form your own project groups – pick project appropriate to group size OGRE tutorials (over next two weeks) …see Wiki for details Download URL: http://equis.cs.queensu.ca/~graham/cisc877/soft/ equis: engineering interactive systems equis: engineering interactive systems The Game: Life is a Village The Game: Life is a Village Goal is to build an interesting village Travel world to find resource nodes Drop off villager who starts gathering nodes Spend resources to construct buildings Scales to player’s fitness Initial nodes easy to get to For more advanced resources , must go further, into harder terrain Intended to be played over long time Cooperation Exploration equis: engineering interactive systems equis: engineering interactive systems Project Ideas Project Ideas Multi-player play: Life is a Village is currently a single-person Mounts: Players can chase after mounts (e.g., horse, unicorn, game. Change it to allow multiple players to interact. Each player giant spider). If the player catches the mount, they can jump on top should have their own villaggge and villagers. of it,,g gaining benefits such as increased s peed. Zones: The game currently takes place in one relatively small Level of detail AI: Modify the AI manager to allocate time to AI terrain. Change it to allow any number of such terrains to be linked, entities consistently with their importance in the game – part of with some mechanism of transitioning from one zone to another. scaling to very large scenes or networked play. ZihthdilldiffttlZones might have radically different styles - e.g., dtdesert, Physics: Currently, the world has rather strange physical moonscape, etc. You can use the EQUIS Terrain Generation tools properties. Collision detection: Physical objects such as buildings to generate zones for experimentation. and trees are currently blocked off so that players cannot enter Persistence: The game currently terminates when the player exits . them. These rules should be relaxed, e. g., so that a player can When the player returns, the game starts afresh. Change the game jump off a mountain and land on the roof of a building. It should be to be a persistent world, where the game keeps running even if the possible to charge towards a ramp, and fly into the air in a player is not there, allowing the player to rejoin the world in physically realistic fashion. This work is best done with the Open progress. Persistence should be compatible with multi-player play. Dynamics Engine. equis: engineering interactive systems equis: engineering interactive systems Why Study Game Development? Games have become an important medium, ranking with television, movies, books Why Study Video Games? Game development is a fascinating problem Brings together many disciplines: artists, computer scientists, writers, actors , musicians Video games are an emerging artistic medium In computer science, combines the hard problems of graphics, artificial intelligence, database, distributed systems, human-computer interaction, computer-supported cooperative work, software architecture, quality assurance, project management equis: engineering interactive systems equis: engineering interactive systems Games as an Important Medium Canada in Game Development Money Largest Game Development Studio World-Wide World wide video game sales were $24.5 billion in 2004 Larger than Hollywood’s box office take Electronic Arts, Vancouver Demographics Second Largest Game Development Studio World- Average age of gamers: 30 43% female Wide Average hours played: ~75hrs/week7.5 hrs/week Ubisoft, Montreal, > 1, 500 employees 22 hrs/week for MMORPG players Effect on Real Life Most popular modeling tools About 50% of MMORPG players consider themselves to be Maya (Alias, Toronto), XSI (SoftImage, Montreal), 3ds Max addic te d (Discreet, Montreal) Virtual property is the cause of real-life crime, even murder 40% of MMORPG players feel that their online friends are Most popular animation tool comparable to or even better than their real life friends Motion Builder (Alias, Montreal) Lawsuits allege video games lead to antisocial behaviour Sources: Entertainment Software Association, Daedalus Project, Business Week Online, BBC News equis: engineering interactive systems equis: engineering interactive systems Platforms for Gaming Consoles PC’ s Platforms for Gaming Portable Game Devices Mobile Devices equis: engineering interactive systems equis: engineering interactive systems Consoles Consoles: Xbox 360 Released November 22, Typical life cycle: 5 years 2005; CDN $199+ 3 x 3.2 GHz dual core Cutting-edge on introduction; behind the curve PowerPC processor on retirement 1 VMX-128 vector unit per core Typically difficult to program – games improve 1 MB L2 Cache in quality over console’s life as developers Custom ATI R500-based Graphics Processor improve tools HD Resolution up to 1920x 1080 (16: 9, vs Current generation of consoles normal 4:3 TV) 512 MB 700 MHz GDDR3 Xbox 360 RAM PlayStation 3 Up to 4 wireless game controllers Wii 802.11A/B/G Ethernet Photo c////o http://www.xbox.com Optional 20+ GB HD Source: http://en.wikipedia.org/wiki/Xbox_360 equis: engineering interactive systems equis: engineering interactive systems Consoles: PlayStation 3 Consoles: Nintendo Wii Released December 2006 Released November Sales price: $299+ 2006 3. 2 GHz Cell Processor 7 SPE’s – 128 bit SIMD C$CCost: $269 CDN RISC processor 802.11B/G wireless via connected by 10 GBps bus Nintendo hotspots 1 PPE as controller Controller – simplified 2.3 MB SRAM (512 KB L2 design (TV remote), Cache, 1.79 MB per SPE) C“Custom “Reality Synthesizer ” positional sensing Graphics Processor 6 DoF Accelerometer (NVIDIA/Sony) IR-based pointing Resolution: up to 1920x1080 (1020p) 512 MB RAM 3 Gbps Ethernet ports, ATI “Hollywood” GPU 802.11G, Bluetooth 2.0 No HD support Up to 7 Bluetooth controllers Source: http://en.wikipedia.org/wiki/Playstation_3 Source: http://en.wikipedia.org/wiki/Nintendo_Revolution equis: engineering interactive systems equis: engineering interactive systems Consoles: Programming Consoles: Development Two consoles introduced significantly different programming architectures Proprietary software development kit available 6 cores in Xbox 360 for Windows PCs 7 cores in PlayStation 3 Develop, debug on PC Extensive vector processing capabilities Difficultyyg of finding this much p arallelism in g ames Cross-compile to console Obvious candidate: AI E.g., XNA for Xbox 360 Difficulty of concurrent processing In Xbox 360,,y GPU and CPU share memory Developers do not necessarily make it easy to Will certainly take developers 5 year span of consoles’ life cycle to port to other consoles learn how to develop for new consoles Battle for which console is “native” implementation, as it will be better than ported ones Will be particularly interesting with new architectures equis: engineering interactive systems equis: engineering interactive systems Consoles: Software Delivery PC’s Typically CD/DVD/Blu-ray delivery Enormous variety of hardware platforms OS Traditionally consoles have no/small HD, Win dows, Mac OS, Linux games played directly from DVD Windows PC’s have open hardware/software environments Imppppypglies no opportunity for patching Video card, CPU, memory differ in capability by orders of Compare to PC games where patches routinely magnitude Different versions of DirectX, video card drivers cause delivered after release, reqqyuire download by enormous difficulties with QA Compare to consoles which offer completely uniform players environment E.g., Battlefield 1942: patch to version 1.6.19 is Tendency of new games to support higher-end PC’s 267 MB E. g., recommended system for Civilization 4: 3.2 GHz Pentium, 256 MB Video Card Requires rock-solid software engineering, QA Drive hardware sales processes Limit games to serious hobbyists equis: engineering interactive systems equis: engineering interactive systems Portable Game Devices PlayStation Portable Handheld devices for gaming 170x74x23 mm Extension into other entertainment areas – 480x272 pppyixel display movies, MP3’s 222 MHz dual core MIPS32R2 CPU EgE.g. 32 MB RAM PlayStation Portable Graphics chip: 166 MHz, Nintendo DS 2MBRAM2 MB RAM 802.11B Wireless networking Source: