Course Organization
Transcription
Course Organization
CISC 877 Course Organization Engineering Digital Games Week 1: Introduction T.C. Nicholas Graham [email protected] http://equis.cs.queensu.ca/~graham/cisc877 Winter term, 2011 Topics include… Video game design Gaming platforms and fundamental technologies Game development processes and pipeline Software architecture of video games Video games as distributed systems Game physics Game AI Scripting languages Game development tools Social and ethical aspects of video games User interfaces of games equis: engineering interactive systems equis: engineering interactive systems Timeline and Marking Scheme Activity Due Date Grade Project Proposal (2-3 pages, hand-in) January 25, 2011 10% Progress Presentation (involves presentation and online report) Mar 1, 2011 20% Informal progress reports Weekly 5% Final Project Presentation / Show April 4, 2011 (tentative) 10% Final Project Report April 11, 2011 45% Class Participation equis: engineering interactive systems 10% Homework Project proposal (for next week) Wiki contains detailed description of project ideas, game you will be extending Proposal to be posted on Wiki – create yourself an account Form your own project groups – pick project appropriate to group size The Project XNA tutorials (over next two weeks) …see web page for details equis: engineering interactive systems equis: engineering interactive systems Lunar Lander Project Robots vs Ninjas Project equis: engineering interactive systems Bolton, Kurczak and Savery 2010 equis: engineering interactive systems Pape 2010 Life is an Obstacle Course Project Life is a Village and Frozen Treasure Hunter equis: engineering interactive systems equis: engineering interactive systems Project Ideas Clarridge and Stach 2008 Dragert, Qiu and Yim 2007 Project Ideas • Implement a playable game • Investigate an interesting technology equis: engineering interactive systems equis: engineering interactive systems Quest Generation Tool Procedural Content Generation Quest generation tool in RPG Runic Games’ “Torchlight” equis: engineering interactive systems NWN Aurora Builder Support for Novel Platforms equis: engineering interactive systems Interest Management Microsoft’s “Kinect” equis: engineering interactive systems equis: engineering interactive systems Planning-Based AI Scripting Language for RTS AI Halo 2 Starcraft 2 equis: engineering interactive systems equis: engineering interactive systems Consistency Maintenance Scheduling Game Entities Team Fortress 2 equis: engineering interactive systems equis: engineering interactive systems DragonAge Why Study Game Development? Why Study Video Games? Games have become an important medium, ranking with television, movies, books 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, computersupported 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 US video game sales were $11.7 billion in 2008 World wide video game and console sales were $19.7 billion in 2009 Larger than Hollywood’s box office take US Demographics Average age of gamers: 35 40% female Average hours played: ~13 hrs/week 22 hrs/week for MMORPG players Top 4% of gamers a average 48.5 hrs/week Effect on Real Life About 50% of MMORPG players consider themselves to be addicted Virtual property is the cause of real-life crime, even murder 40% of MMORPG players feel that their online friends are comparable to or even better than their real life friends Lawsuits allege video games lead to antisocial behaviour Sources: Entertainment Software Association, Daedalus Project, Business Week Online, BBC News equis: engineering interactive systems Electronic Arts, Vancouver Second Largest Game Development Studio World-Wide Ubisoft, Montreal, > 1,500 employees Most popular modeling tools Maya (Autodesk, Toronto), XSI (SoftImage, Montreal), 3ds Max (Discreet, Montreal) Most popular animation tool Motion Builder (Autodesk, Montreal) equis: engineering interactive systems Platforms for Gaming Platforms for Gaming Consoles PC’s Portable Game Devices Mobile Devices equis: engineering interactive systems equis: engineering interactive systems Consoles Consoles: Xbox 360 Released November 22, 2005; CDN $199+ 3 x 3.2 GHz dual core PowerPC processor 1 VMX-128 vector unit per core 1 MB L2 Cache Custom ATI R500-based Graphics Processor Traditional life cycle: 5 years Perhaps now as long as 10 years Cutting-edge on introduction; behind the curve on retirement Typically difficult to program – games improve in quality over console’s life as developers improve tools Current generation of consoles Xbox 360 PlayStation 3 Wii equis: engineering interactive systems Photo c/o http://www.xbox.com HD Resolution up to 1920x1080 (16:9, vs normal 4:3 TV) 512 MB 700 MHz GDDR3 RAM Up to 4 wireless game controllers 802.11A/B/G Ethernet Optional 20+ GB HD Source: http://en.wikipedia.org/wiki/Xbox_360 equis: engineering interactive systems Consoles: PlayStation 3 Released December 2006 Sales price: $299+ 3.2 GHz Cell Processor 7 SPE’s – 128 bit SIMD RISC processor connected by 10 GBps bus 1 PPE as controller 2.3 MB SRAM (512 KB L2 Cache, 1.79 MB per SPE) Custom “Reality Synthesizer” Graphics Processor (NVIDIA/Sony) Resolution: up to 1920x1080 (1080p) 3 Gbps Ethernet ports, 802.11G, Bluetooth 2.0 Up to 7 Bluetooth controllers equis: engineering interactive systems Source: http://en.wikipedia.org/wiki/Playstation_3 Consoles: Nintendo Wii Released November 2006 Cost: $209 CDN 802.11B/G wireless via Nintendo hotspots Controller – simplified design (TV remote), positional sensing 6 DoF Accelerometer IR-based pointing 512 MB RAM ATI “Hollywood” GPU No HD support Source: http://en.wikipedia.org/wiki/Nintendo_Revolution equis: engineering interactive systems Consoles: Programming Consoles: Development Two consoles introduced significantly different programming architectures Proprietary software development kit available for Windows PCs 6 cores in Xbox 360 7 cores in PlayStation 3 Extensive vector processing capabilities Difficulty of finding this much parallelism in games Obvious candidate: AI Develop, debug on PC Cross-compile to console E.g., XNA for Xbox 360 Difficulty of concurrent processing In Xbox 360, GPU and CPU share memory Many years required to learn how to develop for new consoles Developers do not necessarily make it easy to port to other consoles equis: engineering interactive systems equis: engineering interactive systems Battle for which console is “native” implementation, as it will be better than ported ones Consoles: Software Delivery PC’s Typically CD/DVD/Blu-ray delivery Traditionally consoles have no/small HD, games played directly from DVD Enormous variety of hardware platforms OS Implies no opportunity for patching Compare to PC games where patches routinely delivered after release, require download by players E.g., Battlefield 1942: patch to version 1.6.19 is 267 MB Requires rock-solid software engineering, QA processes Windows, MacOS, Linux Windows PC’s have open hardware/software environments Video card, CPU, memory differ in capability by orders of magnitude Different versions of DirectX, video card drivers cause enormous difficulties with QA Compare to consoles which offer completely uniform environment Tendency of new games to support higher-end PC’s E.g., recommended system for Final Fantasy XIV: 2.66 GHz Pentium i7, 768 MB Video Card Drive hardware sales Limit games to serious hobbyists equis: engineering interactive systems equis: engineering interactive systems Portable Game Devices PlayStation Portable Handheld devices for gaming Extension into other entertainment areas – movies, MP3’s E.g. PlayStation Portable Nintendo DS 170x74x23 mm 480x272 pixel display 222 MHz dual core MIPS32R2 CPU 32 MB RAM Graphics chip: 166 MHz, 2 MB RAM 802.11B Wireless networking Source: http://en.wikipedia.org/wiki/PlayStation_Portable equis: engineering interactive systems equis: engineering interactive systems Nintendo DS Nintendo DS Dual screen Upper screen is output-only Lower screen offers touch-sensitive input Microphone input Wireless hotspots Dual screen allows innovative game design Source: http://en.wikipedia.org/wiki/Nintendo_DS equis: engineering interactive systems equis: engineering interactive systems Mobile Devices Cell Phones Touch-based input Powerful 3D GPUs iPhone: Objective C Android: Java / C Windows Phone: C#/XNA Input Devices Largest install base of all gaming platforms Programming challenge in diversity of devices Image Source: http://www.airshiptwo.com/crystalalliance.php equis: engineering interactive systems equis: engineering interactive systems Input Game Controllers: Logitech PS2 Input devices significantly direct the kinds of games offered Consoles Game controller PC’s Keyboard, Mouse equis: engineering interactive systems equis: engineering interactive systems Game Controllers: Logitech PS2 Game Controllers Jog dial Buttons PS3 Controller Joysticks + Force-feedback equis: engineering interactive systems Xbox 360 Controller equis: engineering interactive systems Game Controllers Controller joysticks less accurate than mouse No possibility of text entry Choices generally limited to 4, or using awkward scrolling mechanism Great for sofa, floor use In general – games involving text entry, presentation of lots of data, requiring detailed selection tasks are PConly Wiimote Game Controller Wiimote Sensor Bar equis: engineering interactive systems Kinect Images c/o Wikipedia equis: engineering interactive systems Kinect Depth camera Delivers colour and depth of each pixel Emits IR dot pattern, examines deformation of reflected pattern to estimate depth equis: engineering interactive systems equis: engineering interactive systems Other input devices Other Input Devices Logitech Driving Force EX Logitech Freedom 2.4 Cordless Joystick with force feedback equis: engineering interactive systems Other Input Logitech G7 Laser Cordless Mouse 2000 dpi resolution equis: engineering interactive systems equis: engineering interactive systems Other Input Devices Sparco Racing Cockpit Pro equis: engineering interactive systems Game Genres Game Genres First-Person Shooter Racing Games Interactive Fiction Role-Playing Games Massively Multiplayer Online Games Real-Time Strategy Games Turn-Based Strategy Games God Games Puzzle Games Sports Games Simulations Card Games equis: engineering interactive systems equis: engineering interactive systems First-Person Shooter (FPS) Battlefield 1942 Played in first-person Lots of shooting Capture the flag gameplay Often multiplayer, team-based Among the most violent games in existence – often hyper-realistic graphics, sometimes situations based on real-life events E.g., Modern Warfare 2, Half-life, Counterstrike, Battlefield 1942 equis: engineering interactive systems equis: engineering interactive systems Racing Games Gran Turismo Racing cars Around track Rally Combine reflexes, strategy, car fantasies Ideal multiplayer game E.g., Gran Turismo, Colin McRae Rally equis: engineering interactive systems equis: engineering interactive systems Gran Turismo Interactive Fiction Typically text-based, sophisticated natural language parsers User navigates world, solves puzzles Adventure, Zork Less popular since advent of graphical user interfaces Emphasis on story-telling somewhat lost in modern games equis: engineering interactive systems equis: engineering interactive systems 4K Adventure 4K Adventure Source: http://www.wurb.com/if/game/321 equis: engineering interactive systems equis: engineering interactive systems 4K Adventure 4K Adventure equis: engineering interactive systems equis: engineering interactive systems 4K Adventure 4K Adventure equis: engineering interactive systems equis: engineering interactive systems 4K Adventure 4K Adventure equis: engineering interactive systems equis: engineering interactive systems Role-Playing Games Neverwinter Nights Lineage from Dungeons and Dragons role playing game (paper and pencil) Focus on quests, story-telling, character development Can be open-ended, or closely guided Characters gain levels/skills over time Usually involve combat, fantasy E.g., Neverwinter Nights, Dragon Age: Origin Metagame – players create own stories (modules) equis: engineering interactive systems equis: engineering interactive systems MMOGs MMOGs Massively Multiplayer Online Games Also MMORPG, MMOFPS, MMORTS, … Permit thousands of players to play together in immense online world Some worlds would take days of real-time to traverse end to end Players cooperate, or fight with each other Often open-ended gameplay – can have career as warrior, crafter, merchant, interior decorator Some devotees spend as much as 30-40 hours a week in these virtual worlds, make friends there Interesting sociological phenomenon as well as technical E.g., World of Warcraft (~8 million players), Eve Online (> 19,000 concurrent players), Star Wars Galaxies, Everquest equis: engineering interactive systems equis: engineering interactive systems TBS TBS: Europa Universalis Turn-Based Strategy Lineage in Board Games (war games) Turn-based One player performs a set of moves Next player performs a set of moves… Typically deep games with complex rule sets Mainly appeal to niche player group Difficult, involving, poor graphics Adapt poorly to network play E.g., Europa Universalis, Gary Grigsby’s World at War, Civilization 4 Source: http://www.strategyfirst.com/en/games/redir/?iGameID=17 equis: engineering interactive systems equis: engineering interactive systems RTS God Games Real-Time Strategy Strategy games played in real-time – no turns, no pauses for reflection Differ from TBS: player speed is important; ability to manage lots of information quickly Gameplay: build base, build units, gather resources, destroy other players Maps well to multiplayer play, as there are no turns – all players play simultaneously E.g., Starcraft, Warcraft, Command and Conquer series, Age of Empire Follow a civilization through time Often follow thousands of years of history, allowing player to start with a primitive village, build up to modern nation Games involve combat, diplomacy, cultural domination E.g., Civilization series, Age of Empire series, Black and White Intersects with RTS, TBS equis: engineering interactive systems equis: engineering interactive systems Civilization 4 Civilization 4 Technology Tree equis: engineering interactive systems equis: engineering interactive systems Civilization 4 Diplomacy Puzzle Games Games based around solving puzzles Geometric (e.g., Tetris) Words (e.g., Yahoo! Text Twist) One of the few non-violent game genres equis: engineering interactive systems equis: engineering interactive systems Yahoo! Text Twist Sports Games Control a team of players Strong multiplayer games Rewards speed, ability to see plays Typically tied to pro sports – annual release with up to date team rosters, detailed animation of real players, real commentators E.g., NHL 2k6, FIFA 2006, NBA Live 2006 equis: engineering interactive systems equis: engineering interactive systems NHL 2k6 Simulations Simulation of some real-world phenomenon Vary in how detailed the simulation, how realistic, how much it is a game rather than an opportunity to experience something unusual Examples: The Sims, Microsoft Flight Simulator, Orbiter Space Flight Simulator, Roller Coaster Tycoon equis: engineering interactive systems equis: engineering interactive systems Microsoft Flight Simulator Orbiter Space Simulator equis: engineering interactive systems equis: engineering interactive systems Roller Coaster Tycoon The Sims 2 equis: engineering interactive systems equis: engineering interactive systems Card Games Yahoo! Games The most popular games of all! Computer implementations of popular card games E.g., Solitaire, Hearts, Poker Enormous multiplayer play via free sites equis: engineering interactive systems equis: engineering interactive systems Yahoo! Addiction Solitaire Developing Games equis: engineering interactive systems equis: engineering interactive systems Game Development Teams Game Development Teams For “AAA” games, teams typically 10-100 people Multi-disciplinary Red Alert 2 Producer Designer(s) Programmers Level designers Modelers Animators Sound Engineers Musicians Quest developers Writers Testers Actors … 3 producers 10 designers 3 story writers 16 artists 18 programmers 3 audio 31 video production 21 quality assurance 9 marketing 41 live actors 26 voice actors equis: engineering interactive systems equis: engineering interactive systems Game Development Teams Game Development Teams Battlefield 1942 Core Team Civilization 4 Producers: 2 Designers: 3 Programmers: 11 Artists: 12 Sound: 2 Music: 1 Testers: 51 Documenters: 2 Voice actors: 18 equis: engineering interactive systems Producers: 3 Designers: 2 Programmers: 18 Writers: 5 Artists: 34 Voice actors: 1 (Leonard Nimoy!) QA: 26 equis: engineering interactive systems Development Tools Game Architecture Modeling, animation tools Creating people, animals, monsters, attaching animation Animation by hand, or using motion capture Level design tools Designing landscapes, large interiors Quest design tools; NPC interaction Visual environments, scripting languages Programming tools Visual C++ … Sound editing tools For sound effects, looping background noise Texture/image editing tools equis: engineering interactive systems equis: engineering interactive systems Open-Source Engine Example Tools Graphics OGRE Terrain Modeling EQUIS Landscape Generation Input Simple DirectMedia Layer (SDL) Entity Modeling SoftImage XSI Physics Open Dynamics Engine (ODE) Level Modeling None Sound OpenAL Image Manipulation GIMP GUI Crazy Eddie’s GUI System (CEGUI) Animation AI Custom Keyframe in XSI; Vicon motion capture + Alias MotionBuilder + XSI Compiler Visual Studio .NET Source Documentation Doxygen Design Documentation Poseidon for UML Revision Control Subversion equis: engineering interactive systems equis: engineering interactive systems Here’s that URL again… http://equis.cs.queensu.ca/~graham/cisc877
Similar documents
Course Organization
http://en.wikipedia.org/wiki/PlayStation_Portable wikipedia org/wiki/PlayStation Portable
More information