Download presentation
Presentation is loading. Please wait.
Published byRosalyn Potter Modified over 9 years ago
1
Software Engineering in the Game Industry Bill Pyne
2
Outline Background Issues Trends Processes Common Practices Experimental Practices Tools
3
Background
4
Technology Issues Hardware changes at an incredible rate Pressure to support the latest and greatest Developers may work on support for hardware long before the hardware’s completion Hardware may even be buggy
5
Publisher Issues Many game studios live and die by their publishers Publishers tend to follow market trends and don’t take many “risks” Game developers could be forced to develop for particular hardware and platforms late into development
6
Developers Issues High quality and originality can take up too much time Asking a developer to spend less time on a task hurts morale The game is not done in the eyes of a developer until it’s “perfect” The “fun” factor requirement
7
Team Layout
8
Developing for Unfinished Products Developers are trying to cut the time to market in supporting the latest and greatest DirectX 10 documentation included in the DirectX 9 December 2005 SDK Update Console launch titles Unreal Engine 3 used through out the industry before its completion
9
Team Sizes More content developers needed to meet the growing demand Engine programming is highly specialized (physics, graphics, sound, etc.) and requires more programmers Average team sizes from ~20 to ~40
10
High-Poly Character Image from http://www.unrealtechnology.com/html/technology/ue30.shtmlhttp://www.unrealtechnology.com/html/technology/ue30.shtml
11
Low-Poly Character Image from http://www.unrealtechnology.com/html/technology/ue30.shtmlhttp://www.unrealtechnology.com/html/technology/ue30.shtml
12
Normal-Mapped Character Image from http://www.unrealtechnology.com/html/technology/ue30.shtmlhttp://www.unrealtechnology.com/html/technology/ue30.shtml
13
Processes
14
“Standard” Game Development The Waterfall Model Many companies stay close to this model but may not even have a name for it Image from Microsoft Clipart.
15
Concept The idea is born Originates from an employee’s idea or a publisher’s acquired license (movie, book, etc.) Game designer writes a brief concept document
16
Pre-Production Game designer writes the design doc Programmers determine if the ideas are doable Programmers produce the tech doc Artists produce concept art Producer determines project schedule
17
Production Programming and content production begins Producers collaborate between departments Sometimes little communication between departments (“us” vs. “them”)
18
Post-Production Lead tester devises a test plan Testers begin the bug hunt Game play and content are tweaked Game may be localized after the English version has been shipped
19
“The Cabal” Process Developed by Valve Software for Half-Life First attempt at Half-Life was scrapped Valve lacked an official Game Designer Some sort of software design process was needed to organize the multiple disciplines Image from http://www.valvesoftware.com/http://www.valvesoftware.com/
20
Overview “The Cabal” was to generate a 200+ page design document detailing each level in the game Mini-Cabals were used to solve smaller design problems Professional writer employed to over watch the story-line and maintain the design document
21
“The Cabal” Group acted as the “Game Designer” Loosely structured brainstorming sessions held 4 days a week for 6 hours each day Multiple disciplines were represented One person recorded the design Another person drew concept art
22
“The Cabal” Cycling Members were rotated through every couple of months to prevent burn-out Each cabal group had a few previous members to spread experience Important to make sure each discipline was represented
23
Mini-Cabals Went into more detail on a design issue handed down from “The Cabal” Members consisted of individuals in charge of implementing the design decision Provided fresh insight for “The Cabal”
24
Benefits Every team member has a better understanding of the entire project Game play is a combination of the team’s experience and not just a single designer Encourages the team to work together instead of in their own “camps”
25
Extending “The Cabal” Process HL2 development team was about twice as large as HL1 Valve didn’t want a bottleneck with “The Cabal” in decision making Image from Half-Life 2 box art.
26
Design Cabals 3 design cabals were given their own section of the game to make Half programmers and half designers since each are one another’s consumers An engine programmer was present in each cabal for technology requests
27
Shared Resources Art, acting, and sound were not represented in the cabals Design cabals would place requests for the shared resources Shared resources put the final touches on levels
28
Consistency Team-wide play tests provided feedback between cabal groups Weapons cabal was formed from the 3 design cabals to handle player items used throughout the entire game A 2 nd pass through the game was needed to improve quality and consistency issues
29
Extreme Game Development (XGD) Proposed by Thomas Demachy at Titus Interactive Studio Based on Extreme Programming (XP) The producer is the “client” The game designer collaborates with the producer Image from http://www.extremegamedev.orghttp://www.extremegamedev.org
30
Milestones Scheduled for every 6 weeks “Planning Game” takes place at the beginning of each milestone cycle for the team and producer to decide on which “user stories” to implement Game should be playable as early as possible Broken down into development cycles
31
Development Cycles Scheduled in 2 week increments Precise tasks are determined and completed Count unit and functional tests to measure progress
32
Milestone Completion Celebrate for the sake of morale! Find glitches and plan to fix them for the next milestone Postmortem is written after receiving feedback from the team and the “client” Examples of postmortems can be found at www.gamasutra.com www.gamasutra.com
33
XGD Dashboard Producer evaluates each practice and tool the team uses to make-up the “XGD Dashboard” Evaluation scores range from 0 to 5 and should include a short comment XGD may not be right for the team if scores continue to drop each iteration
34
Tools
35
Version Control Blues Programmers need protection from content developers Content developers need protection from programmers QA becomes a necessity even on smaller teams
36
Version Control with QA Image from http://www.gamasutra.com/features/20050829/olsson_01.shtmlhttp://www.gamasutra.com/features/20050829/olsson_01.shtml
37
Asset Management Much more than versioning control Content can be difficult to keep track of Level Designers need a way to look for specific content to fit the needs of their level Tools are needed to search existing content and manage content as it goes through the development pipeline
38
Alienbrain Specially designed for artists Supports art previewing Support for source code but not as powerful in this realm as other software Current customers include Lucas Arts, id Software, Atari, and the list goes on Image from http://www.alienbrain.com/http://www.alienbrain.com/
39
XNA Content Creation, Production Processes, and Game Technologies Lower development costs while improving quality Image and summary from http://www.microsoft.com/xna/http://www.microsoft.com/xna/
40
XNA Studio Extension of Visual Studios 2005 Team System Designed to aid collaboration between team members (programmers, artists, management, etc.) Task and defect tracking, asset management (source control and management for content), etc.
41
Game Development Platform Support for current and future XBox and Windows platforms Attempts to mask the differences between platforms Uses DirectX Stresses High Definition content (HD)
42
Developer Interviews Video from http://www.microsoft.com/xna/http://www.microsoft.com/xna/
43
References Alienbrain® - http://www.alienbrain.com/http://www.alienbrain.com/ “Book Excerpt: Implementing a Digital Asset Management System: Workflow Integration” - http://www.gamasutra.com/features/20060124/jacobsen_01.shtmlhttp://www.gamasutra.com/features/20060124/jacobsen_01.shtml “The Cabal: Valve’s Design Process For Creating Half-Life” - http://www.gamasutra.com/features/19991210/birdwell_01.htm http://www.gamasutra.com/features/19991210/birdwell_01.htm “Extreme Game Development: Right on Time, Every Time” - http://www.gamasutra.com/resource_guide/20030714/demachy_01.shtml http://www.gamasutra.com/resource_guide/20030714/demachy_01.shtml “The games development process” - http://www.eurocom.co.uk/careers/games-d- p.phphttp://www.eurocom.co.uk/careers/games-d- p.php “Hierarchy of a Game Development Company” - http://games.ign.com/articles/672/672661p1.html http://games.ign.com/articles/672/672661p1.html “The Process” - http://www.gamasutra.com/features/20050829/olsson_01.shtmlhttp://www.gamasutra.com/features/20050829/olsson_01.shtml “Scaling the Cabal: Valve's Design Process for Creating Half-Life 2” - Game Developer Magazine, November 2005 Unreal Engine 3™ - http://www.unrealtechnology.com/html/technology/ue30.shtmlhttp://www.unrealtechnology.com/html/technology/ue30.shtml XNA™ - http://www.microsoft.com/xna/http://www.microsoft.com/xna/
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.