Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique...

43
Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique [email protected] Nacha Costa [email protected] 13 / 07 / 2005 – CIn – UFPE

Transcript of Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique...

Page 1: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

Desenvolvimentode Jogos

Um Processo Criativo de

Engenharia de Software

Gustavo [email protected]

Nacha [email protected]

13 / 07 / 2005 – CIn – UFPE

Page 2: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 2

Jogo: Pacman [1]

Plataforma: Atari 2600 (~ $249 – 1977) [9]

Page 3: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 3

Jogo: Super Mario World [3]

Plataforma: Super Nintendo (~ $199 – 1991) [2] [9]

Page 4: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 4

Jogo: Need for Speed [4]

Plataforma: Playstation I (~ $299 - 1995) [2] [9]

Page 5: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 5

Jogo: Dead to rights II – Hell to pay [6]

Plataforma: Playstation II (~ $299 - 1995) [5] [9]

Page 6: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 6

Jogo: Forza Motorsport [8]

Plataforma: Xbox (~ $299 - 2001) [7] [9]

Page 7: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 7

Jogo: Gears of War [8]

Plataforma: Xbox 360 (~ $400 - 2005) [3] [9]

Page 8: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 8

Jogo: Killzone 2 [6]

Plataforma: Playstation 3 (?? – 2006) [3] [9]

Page 9: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 9

Jogo: Battlefield 2 [6]

Plataforma: PC

Page 10: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 10

Algumas Empresas [10]

Page 11: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 11

Desenvolvimento de Jogos [11]

Annual Salary US

Average Salary ($) 36.210 [12]

Computer Programmers 64.510 [12]

Multimedia artists and animators

52.880 [12]

Lead Game Programmer (2-5 years exp.)

79.904 [13]

Lead Game Artists (5 years exp.)

53.636 [13]Faturamento: US$ 17 bilhões em 2003 [14]

Obs.: Maior do que a indústria de cinema.

Page 12: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 12

Cadeia de Valor [15]

DesenvolvedorDesenvolvedor

Artista

Animador

Designer

Eng. de som

Programador

Testador

= Processo criativo

Detentor deLicenças

Detentor deLicenças

SubcontratadosSubcontratados

Publisher

= Financiador

Dinheiro

Arquivos de música / arte / etc.

Jogo

DinheiroDados para o jogo

Dados para marketing

MarketingRelaçõesPúblicas

Produção Distribuição

Page 13: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 13

Processo de Desenvolvimento [16]

METODOLOGIA DE DESENVOLVIMENTOMETODOLOGIA DE DESENVOLVIMENTO

QUALIDADE

PLANEJAMENTO & GERÊNCIA

Game Design

Game Design

TestesTestesDesenvolvimento

Desenvolvimento

Page 14: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 14

Processo de Desenvolvimento [16]

METODOLOGIA DE DESENVOLVIMENTOMETODOLOGIA DE DESENVOLVIMENTO

QUALIDADE

PLANEJAMENTO & GERÊNCIA

Game Design

Game Design

TestesTestesDesenvolvimento

Desenvolvimento

Page 15: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 15

XGD [17]

• XGD = Extreme Game Development [21]

– Uma adaptação do XP para jogos

• Foco: criar um produto (jogo) funcional

• Várias empresas já utilizam esta metodologia [18]

• Motivação: elevado índice de atrasos no desenvolvimento de jogos vs. penalidades severas impostas pelos Publishers [19]

• Atrasos [20]

– Tecnologia muda muito rapidamente– Freqüentemente os desenvolvedores querem fazer “O” jogo– Publishers freqüentemente mudam seus anseios

• XGD: uma maneira de minimizar os atrasos

Page 16: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 16

XGD [17]

• Os valores do XP precisam ser preservados no XGD– Simplicidade, comunicação, feedback, coragem

• Estórias: ajudam a estimar e identificar requisitos do jogo– Pequenas descrições de funcionalidades do jogo

• Exemplo (PACMAN):– Ao iniciar o jogo, o jogador verá um labirinto, fantasmas dentro deste labirinto,

um score na parte inferior do vídeo e a quantidade de vidas (abaixo do score).

• Algumas estórias específicas podem ser traduzidas em casos de uso– É possível utilizar UML para modelar unidades críticas do jogo (caso de uso,

diagramas de seqüência, diagramas de classes, etc.)

• Dificuldades em traduzir práticas do XP para XGD:– Pair-programming (artistas)

Page 17: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 17

XGD [17]

Exibir quantidade de vidas

Exibir score

Exibir fantasmas

Jogador

Exibir labirinto

Exibir imagens na tela

<<include>>

<<include>>

<<include>>

<<include>>

Page 18: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 18

Processo de Desenvolvimento [16]

METODOLOGIA DE DESENVOLVIMENTOMETODOLOGIA DE DESENVOLVIMENTO

QUALIDADE

PLANEJAMENTO & GERÊNCIA

Game Design

Game Design

TestesTestesDesenvolvimento

Desenvolvimento

Page 19: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 19

Qualidade [22]

• Documentar o que se espera por qualidade (do processo, do produto, das pessoas)

– Utilizar parâmetros mensuráveis

• Qualidade do Processo– Documentar o processo de desenvolvimento de jogos– Estabelecer padrões de documentação

• Qualidade do Produto– Inspecionar o código durante o desenvolvimento– Realizar testes (unitários, funcionais, de jogabilidade, de usabilidade, etc.)

• Qualidade das Pessoas– Prover um ambiente de desenvolvimento confortável– Não deixar o desenvolvedor confundir criar jogos com jogar

Page 20: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 20

Processo de Desenvolvimento [16]

METODOLOGIA DE DESENVOLVIMENTOMETODOLOGIA DE DESENVOLVIMENTO

QUALIDADE

PLANEJAMENTO & GERÊNCIA

Game Design

Game Design

TestesTestesDesenvolvimento

Desenvolvimento

Page 21: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 21

Planejamento & Gerência [23] [24] [25]

• Gerenciar / Planejar é uma atividade extremamente crítica no desenvolvimento de jogos

• Alto grau de interdependência entre recursos e pessoas– É fácil gerar atrasos

• Prazos rígidos (planejamento de marketing do Publisher)– Multas severas para atrasos

• Programador: implementar movimentação do player– Precisa: do modelo animado do personagem (animador)

• Animador: animar o personagem– Precisa: do modelo estático do personagem (modelador)

• Modelador: modelar o personagem– Precisa: da arte conceitual do personagem (artista)

Page 22: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 22

Planejamento & Gerência [26]

• Essencial: planejar os riscos

• Desenvolver jogos depende de– Conhecimento técnico (OpenGL, Processamento Gráfico, etc.)– Alto grau de especialização (Engenheiro de som, etc.)– Subjetividade / intuição (O que irá prover diversão, etc.)

vários fatores que potencializam riscos

RISCO RECURSOS IMPACTO CONTINGÊNCIA MITIGAÇÃO

Atraso da versão experimental do

jogo

Programação / Design

10 dias (2 semanas) para o primeiro demo

Redigir um bom documento de game design e

começar a implementação

em paralelo

Negociar 1 hora extra por dia no

expediente

Page 23: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 23

[A] Graphics Engine[B] Sound Engine[C] Music Engine[D] Input Engine[E] Gameplay/general programming[F] Physics [G] 2D Artwork[H] 3D Artwork[I] Sound effects[J] Music recording[K] Level Design

Planejamento & Gerência [27]

• Essencial: organizar asinterdependências

Page 24: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 24

Processo de Desenvolvimento [16]

METODOLOGIA DE DESENVOLVIMENTOMETODOLOGIA DE DESENVOLVIMENTO

QUALIDADE

PLANEJAMENTO & GERÊNCIA

Game Design

Game Design

TestesTestesDesenvolvimento

Desenvolvimento

Page 25: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 25

Game Design [15] [28] [29]

• Espinha dorsal de projetos de desenvolvimento de jogos

• Descrição das características do produto final (jogo)

• Objetivos– Apresentar o jogo para o publisher– Motivar e dar objetivos à equipe de desenvolvimento– Unificar a visão da equipe– …

• Game design: expressa a visão do jogo, descreve suas características e apresenta um plano de implementação

• Essencial produzir um documento explicativo e bem estruturado

• Documento continuamente atualizado

Page 26: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 26

• Introdução– Motivação do documento– Objetivos do documento– Público-alvo do documento

• Concepção do Jogo– Introdução do jogo– Background do jogo– Descrição do jogo– Principais características– Plataformas (restrições)– Arte conceitual

Game Design [28] [29] [30]

[31]

[32]

Page 27: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 27

Game Design [28] [29] [30]

• Proposta do Jogo– Análise da concepção do jogo– Análise de mercado– Análise técnica– Análise legal– Custos e projeções de venda

• Especificação Funcional– Mecânica do jogo

• Fluxo do jogo• Atuação do jogador• Física, IA• GUI• Arte, efeitos

sonoros e música

Estágio 1

Estágio 2a Estágio 2b

Estágio Final FácilEstágio Final Difícil

Estágio Especial

GameOver

Final

Page 28: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 28

Processo de Desenvolvimento [16]

METODOLOGIA DE DESENVOLVIMENTOMETODOLOGIA DE DESENVOLVIMENTO

QUALIDADE

PLANEJAMENTO & GERÊNCIA

Game Design

Game Design

TestesTestesDesenvolvimento

Desenvolvimento

Page 29: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 29

Desenvolvimento [15] [33]

• Diablo II [31]

– Desenvolvedores (full-time): 40 / Tempo de desenvolvimento: 3 anos– Lançamento: 28 de Junho de 2000 / Plataformas: PC e Macintosh

• Tom Clancy's Splinter Cell [34]

– Desenvolvedores (full-time): 76 / Tempo de desenvolvimento: 5 meses– Lançamento: 28 de Março de 2003 / Plataforma: PlayStation 2

• Final Fantasy VII [15]

– Custo: US$ 40 milhões / Tempo de desenvolvimento: 3 anos

• Asheron’s Call [15]

– Tempo de desenvolvimento: 4 anos / Linhas de código: 2 milhões

• Não há mais espaço para romantismo no desenvolvimento.– Especificação técnica: classes, padrões de codificação, etc.

Page 30: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 30

Desenvolvimento [35]

Estórias Game Design

+ Design criativo(Planejamento)

Design criativo

Design técnico(Planejamento)

Design técnicoDocumentode Projeto

ImplementaçãoTestesFIMObs.: O pessoal de arte também

está trabalhando!

Page 31: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 31

Desenvolvimento [35]

Design criativo

Design técnico

Overview

Temática

Interface Storyboards

Protótipos

Mecânica do Jogo

Descrevem tecnicamente

como o jogo irá “look, feel, play”

Análise de requisitos

Arquitetura do sistema

Especificação de módulos

Page 32: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 32

Postmortem [36]

• Realizar uma análise crítica sobre o processo de desenvolvimento do jogo

– Boas práticas vs. Práticas equivocadas

• Propagar acertos e não insistir nos erros

• Definir um formato padrão– Introdução / Processo de Desenvolvimento / Time de Desenvolvimento /

Ferramentas Utilizadas / Práticas certas / Práticas erradas / Dados Numéricos do Projeto / Conclusão

• Diablo II [31]

Boas Práticas Práticas Equivocadas- Grau de detalhes de cada jogador - Tecnologias vs. Modelos

Page 33: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 33

Critical Stage Analysis (CSA) [37]

• "What's wrong with the games that are out there today?“– Wolfgang Hamann

• Postmortem– No final do projeto – Não oferece possibilidade de resolver erros no projeto atual– Ninguém é responsável por corrigir os erros apontados pelo postmortem– Costuma lidar com problemas de alto nível

• CSA: busca melhorar o jogo atual examinando o seu progresso em estágios críticos durante o seu ciclo de desenvolvimento

– 5 pontos positivos– 5 pontos negativos– 5 pontos que podem ser melhorados

Page 34: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 34

Processo de Desenvolvimento [16]

METODOLOGIA DE DESENVOLVIMENTOMETODOLOGIA DE DESENVOLVIMENTO

QUALIDADE

PLANEJAMENTO & GERÊNCIA

Game Design

Game Design

Desenvolvimento

Desenvolvimento

TestesTestes

Page 35: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 35

Testes [38]

• “Sometimes I think of making a videogame as an endless process of fixing thousands of bugs.”

– Jamie Fristom

Early Alpha Late Alpha Beta

Page 36: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 36

Testes [39]

• Jogabilidade + Level Design– Usabilidade

• A experiência do jogador está intimamenterelacionada com a usabilidade do jogo

• Grande gama de jogos dentro de ummesmo estilo

– Jogos de corridaClassificação de problemas

de usabilidade [40]

Page 37: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 37

Testes [39]

Tipo: SeveroDescrição: o player semove muito devagar

Tipo: SeveroDescrição: não háfeedback indicandoque não é possívelpegar algum item

Tipo: SeveroDescrição: o player pegou uma arma e não notou

Tipo: CatastróficoDescrição: uma cor possui vários significados no mapa

Page 38: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 38

Conclusões

• Atualmente o mercado de jogos exige um processo criativo de engenharia de software para possibilitar o desenvolvimento de jogos mais complexos e com melhor qualidade

• Um processo bem definido de desenvolvimento é um diferencial entre consolidar uma empresa de jogos no mercado e a falência

• É difícil enunciar um processo único / geral– Cada empresa precisa adaptar a sua realidade / as suas necessidades

• Mas o processo não pode deixar de ser criativo!

[6]

Page 39: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 39

A Referência [16]

Page 40: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 40

Referências

• [1] www.answers.com• [2] www.cyberiapc.com• [3] www.gamespot.com• [4] www.vidgames.com/ps/screens/screens.html• [5] www.us.playstation.com• [6] www.finalboss.com• [7] http://xbox-codes.com• [8] http://screenshots.teamxbox.com• [9] www.ps3portal.com/?page=history• [10] http://en.wikipedia.org/wiki/Category:Computer_and_video_game_companies• [11] The State of Game Development in Eastern Europe • [12] U.S. Department of Labor Bureau of Labor Statistics, May 2003 National

Occupational Employment and Wage Estimates• [13] 2003 Game Development Salary Survey, CMP Media Inc.• [14] The Economist 2003• [15] Slides da disciplina de Projeto e Implementação de Jogos 2D do CIn – UFPE• [16] Jeannie Novak, Game Development Essentials: An Introduction

Page 41: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 41

Referências

• [17] Thomas Demachy, Extreme Game Development: Right on Time, Every Time• [18] James Fristrom, Treyarch's Spider-Man, Game Developer Magazine, Aug 2002• [19] Jim Charne, Time is of the Essence, Famous Last Words IGDA column, Dec 2001 • [20] Gamasutra PostMortem Collection• [21] http://www.extremegamedev.org/cgi-bin/wiki.pl• [22] Phillip DeRosa, Top 10 Tips on How to Improve a Game Quality Assurance

Department• [23] Jamie Fristrom, Manager In A Strange Land: Dependencies, Part One – Gamasutra

Article • [24] Jamie Fristrom, Manager In A Strange Land: Dependencies, Part Two – Gamasutra

Article• [25] Tim Ryan, Controlling Chaos in the Development Process• [26] Timothy Ryan, Risk Management With Development Schedules • [27] Jack Hoxley, Critical Path Analysis and Scheduling for Game Development• [28] Tim Ryan, The Anatomy of a Design Document, Part 1• [29] Tim Ryan, The Anatomy of a Design Document, Part 2 • [30] Documento de game design do jogo Exordium implementado na disciplina de jogos• [31] Postmortem: Blizzard Entertainment's Diablo II• [32] Postmortem: SWAT3: Close Quarters Battle

Page 42: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

13 / 07 / 2005 { ghpc, ncb } @ cin.ufpe.br 42

Referências

• [33] Erik Bethke, Structuring Key Design Elements• [34] Postmortem: Tom Clancy's Splinter Cell• [35] Gordon Walton, Bringing Engineering Discipline to Game Development• [36] Gamasutra Postmortem Guidelines• [37] Wolfgang Hamann, Goodbye Postmortems, Hello Critical Stage Analysis • [38] Jamie Fristrom, Production Testing and Bug Tracking• [39] Sauli Laitinen, Better Games Through Usability Evaluation and Testing

Page 43: Desenvolvimento de Jogos Um Processo Criativo de Engenharia de Software Gustavo Henrique ghpc@cin.ufpe.br Nacha Costa ncb@cin.ufpe.br 13 / 07 / 2005 –

Desenvolvimentode Jogos

Um Processo Criativo de

Engenharia de Software

Gustavo [email protected]

Nacha [email protected]

13 / 07 / 2005 – CIn – UFPE