LAFS SVGI Session 6 - Game Development

Post on 14-May-2015

847 views 5 download

Tags:

description

Lecture for Session 6 of The Los Angeles Film School's Survey of the Video Game Industry course.

Transcript of LAFS SVGI Session 6 - Game Development

GAME DEVELOPMENTSession 6

David Mullich

Survey of the Video Game Industry

The Los Angeles Film School

Developers

A video game developer is a software developer (a business or an individual) that creates video games

A developer may specialize in a certain video game console, such as Sony's PlayStation 3, or may develop for a variety of platforms

Game Developer (Business)

Owned and run by a game publisher

An independently owned company that may work for different publishers

A company that develops video games is also called a Game Studio.

Game Studios may be:

Game Developer (Individual)

One or more individuals working freelance

A game developer may also be:

When applied to an individual, the term “game developer” may also refer specifically to a game programmer. Game programmers are also called:• Coders• Engineers

Development Teams

The lone, “auteur” game developer is a myth.*

*Unless you’re Notch.

Are you Notch?

No, you are not.

Organization

Developer Departments

Design Art/Animation Programming Audio (Music/Sound) Project Management Quality Assurance Business Development

Design Department

Controls UI Setting/Story/Dialog Game balance Level layouts Scoring System tweaking Tutorials Character/enemy design Playtesting

Level Designer

Day in the Life: Video Game Designer

Art Department

3D modeling Characters Objects Levels

Environments 2D

Textures HUD

Cinematics Animations Rigging UV mapping Motion capturing

Programming Department

Graphics Art pipeline Physics Networking AI Audio Gameplay Integration Optimization Scripting Interpreters Tools Test managers

Programmers

Extra Credits, Season 4, Episode 01 - So You Want To Be a Developer (Part 1) (6:57)

Programmers

Extra Credits, Season 4, Episode 02 - So You Want To Be a Developer (Part 2) (5:45)

Do I Need To Know Math?

Yes! Mathematics is not just for programmers!

Geometry is maths too. As are statistics. And probability. And proportion. And even project management and budgeting. Maths is everywhere and it isn’t hard. Especially when it’s applied. So let’s debunk that myth right here.

Audio Department

Composing Conducting Recording Tweaking Synching

Project Management

The manager of a development team might be called:

Development Director Director Team Leader Project Manager Producer

What Does A Project Manager Do?

Gantt Chart – MS Project

What Does A Project Manager Do?

The Producer

Extra Credits, Season 3, Episode 11 - So You Want To Be A Producer (8:46)

Business Development

Responsible for finding sales and growth opportunitiesFinding new clientsKeeping existing clientsMaintaining client satisfaction

Specialist Vs. Generalist

The industry has places for both, but in different contexts.

Which one are you?

Hint: If you don’t know, you are not a specialist.

PRODUCTION PHASES

Production Phases

Concept Pre-Production Production Post Production

Concept Phase

Concept Document Project Plan & Budget Contract

Pre-Production

Game Design Document (GDD): A document describing the game vision and how the game will work.

Technical Design Document (TDD): A document describing how the game will be created

Prototype/First Playable: An early playable version of the game

Detailed Schedule and Budget

Who Is Busy During Pre-Production? Busiest: Designer Very Busy: Producer, Lead

Programmer, Lead or Conceptual Artist

Somewhat Busy: Other Programmers, Artists

Not Busy: Audio, Testers

The Pre-Production Problem

Extra Credits, Season 3, Episode 01 - The Pre Production Problem (8:03)

The Pre-Production Problem

What can you do about the problem of the rest of the team being idle while only a few members are doing preproduction?

If possible, do preproduction on the next project while the rest of the team is finishing up the current project.

Production

Team ramps up (adds more people) to create:All the game features (Alpha code)All the game assets (art and audio)All the game levels

Production Pipeline (Overview)

Production Pipeline (Details)

Managing Resources

StarCraftMineralsVespene gas

Game DevelopmentPeopleMoneyTime

The Quality Triangle

Tradeoffs:As any single element

increases, Quality increases

As any single element decreases, Quality decreases

Builds

Daily builds Individual builds (such as for a

demonstration) Major builds (milestones) Lock down

Who Is Busy During Production? Busiest: Programmers, Artists Very Busy: Producer, Designers Somewhat Busy: Audio A Little Busy: Testers

Post-Production

The game is (nearly) finished and ready for:Quality Assurance TestingLocalizationPorting

Localization Issues

Translation Art asset changes Music changes Content changes UI changes Ratings

Translation

Dialog (vocals & subtitles)TRANSLATE WELL! No more “All your base,” please

String length Labels imbedded in art assets Messages/Commands (loading, game over) Fonts GUI buttons

US

Art assets

Germany

Content Changes

History and even geography may need to be “rewritten” for a given region.

China & Taiwan

Regional Preferences

Cameras and gameplay may need to be adjusted for some regions.

The US doesn’t like “grinding,” which is highly popular in Asia

US stories are often simplified and glorify Americans, Japanese stories tend to be esoteric

Japan doesn’t like “searching” for items Asia prefers linearity, the US prefers open-ended First Person mode tends to cause negative physical

reactions in Japan

Western Vs. Asian Views On Gameplay

Extra Credits, Season 2, Episode 17 - The Myth Of The Gun (5:53)

Who Is Busy During Post-Production? Busiest: Programmers, Testers Very Busy: Producer Somewhat Busy: Designer A Little Busy: Artists, Audio

DEVELOPENT METHODOLOGIES

Development Methodologies

Waterfall: A sequential process in which development is seen as flowing downwards (like a waterfall) through pre-determined stages

Agile: An iterative process in which the project is re-evaluated at the end of each cycle

Scrum

A flexible holistic strategy where a development team works together to reach a common goal

The word “scrum” is a rugby term, referring to the manner of restarting after a minor infraction

Stakeholder

A person, group, organization, or system who affects or can be affected by an organization's actions. They have a vested interest in the project.

Stakeholders may have different levels of involvement in a project. Some may be merely contribute, while others are more committed.

Stakeholders in a Game Project

Committed (Pigs)• Development Team• Producer• Quality Assurance

Contributors (Chickens)• Sales• Marketing• Finance• Customer

Roles

Project Owner: Represents the stakeholders and is the voice of the customer. S/he is accountable for delivering value

Team: Responsible for delivering a shippable project in incremental steps

Scrum Master: Enforces the rules of Scrum. Responsible for removing obstacles to the team. Acts as a buffer between the team and distracting influences.

Project Backlog

An ordered list of requirements for the product: features, bug fixes, non-functional requirements (such as documentation)

The items are ordered by the Product Owner based on considerations like risk, business value, etc.

The features added to the backlog are commonly written in a story format. (“As a user, I would like to…”)

Scrum Elements

Sprint: The basic unit of development in Scrum. The sprint is a “timeboxed” effort – normally between one week and one month.

Sprint Backlog: The list of tasks to be accomplished during that sprint.

Sprint Planning Meeting: At the beginning of every sprint, a planning meeting is held to decide what work is to be done and prepare the sprint backlog.

Daily Scrum (Daily Standup)

A timeboxed meeting (usually set to 15 minutes) of the development team. It should be held at the same time and location every day. Each team member answers three questions: What have you done since yesterday? What are you doing today? Are there any obstacles?

End of Sprint

Sprint Review Meeting: Completed work is reviewed with the stakeholders (“the demo”)

Sprint Retrospective: The team members discuss improvements to the process

Scrum

Scrum Methodology an Agile Movie (6:12)

Hybrid

An approach in which Scrum Sprints occur between Waterfall Milestones

Many game studios use a Hybrid methodology rather than a pure Agile approach

Naughty Dog

G4 Icons Episode #34: Naughty Dog (22:42)

GAME TESTING

Testing vs. Playing

At home, you play games to have fun. You get to choose what to play, when to play, and how to play it.

Testing games can still be fun, but you have fewer choices about what, when and how to play. Everything you do when you play has a purpose.

Purposes of Game Testing

Find defects in the code or design Demonstrate which parts of the

game are working properly

Two Types of Testing

Gameplay Testing“It’s too hard.”“The hats should be blue.”“Why can’t we have bigger guns?”

Bug Testing“Game crashes when I do this…”“Quest giver doesn’t reward me after I turn quest

in.”“Barbie says ‘Ima kill you!’”

In Other Words

Gameplay Testing is subjective and opinion based

Bug Testing is objective and fact based

QA Tools

Test Kit (PC, console, etc.) Headphones Video/audio capture Test Plan Bug Database

Test Plan

Written by Lead Tester (or Project Manager)

Exercises every feature and asset in the game

Used as the basis of check sheets

Writing a Bug Report

Bug # Summary (Headline) Location or Component Description Expected Result / Actual Result (when bug is not

obvious) Steps to reproduce Reproduction Rate Severity Priority

Bug Severities

A = (Blocker / Critical) Fatal flaw. No-ship issue.Crashes, freezes

B = (Major / Normal) Serious flaw. Can’t finish game, features don’t work

C = (Minor / Trivial) Minor flaw.Glitches in artwork, typos, minor annoyances

The Judger

Step-by-step or checklist-based testing Conventional game-playing Repetitive testing Factual accuracy of game Concerned about game contents Requires a very structured, ordered,

predictable environment

The Perceiver

Open-ended or outline-based testing Unconventional game-playing Testing variety Realistic experience of game Concerned about game context Like a laid-back approach

The QA Process

QA Team tests build QA Team reports defects Development Team fixes defects QA Team tests new build QA Team verifies or rejects fixes QA Team tests for new defects

Bug Resolution

Bug MeetingProductionQAMarketing

Every Open Bug is ReviewedMust FixAs Is / ISVPatch

Retesting

Very important Random spot checking of old test plan

items

Finally, Remember That…

All players are aligned “Chaotic Evil”

They will gleefully and willfully break everything.

Once you embrace this, it’s surprisingly easy to reduce your gameplay bug count during Beta. Especially if you’ve let them do this to your precious baby before Alpha. Or even better at the end of each Sprint.

Careers in QA

EA QA (Games Tester) Career Paths (9:46)

Top 10 Best Bugs …evar!