introdução ao projeto de jogos - wordpress.com · modelagem Ágil a modelagem Ágil (ma) é uma...

35
Projeto de Jogos I 2010/1 Introdução ao projeto de jogos Prof. Fábio Petrillo Curso de Jogos Digitais 13 de março de 2010

Upload: others

Post on 02-Oct-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Projeto de Jogos I2010/1

Introdução ao projeto de jogos

Prof. Fábio Petrillo

Curso de Jogos Digitais

13 de março de 2010

Page 2: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Jogabilidade

Jogabilidade é o componente do jogo de

computador que produz a interatividade.A jogabilidade de um jogo é o grau ou natureza dainteratividade propiciada pelo jogo.Exemplos: como o jogador interage com o mundo do jogoou como o mundo reage as escolhas do jogador.

Page 3: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Definição de Projeto de Jogo

Projeto do Jogo (Game Design) é o que determina a formada jogabilidade.O projeto do jogo determina que escolhas o jogador serácapaz de realizar no jogo.Determina como o usuário será capaz de controlar o jogo.Com quais informações o jogo irá se comunicar com ojogador.Determina os critérios de vitória, derrota ou de dificuldadede um jogo.Isto é: o game design determina cada detalhe de comoa jogabilidade irá funcionar.

Page 4: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Quem é o Projetista de Jogos (Game Designer)?

O Game Designer é a pessoa que projeta o jogoÉ aquele que estabelece a forma e a natureza dajogabilidadeÉ diferente do Game Developer

Page 5: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

O que os jogadores querem?

O que faz alguém jogar?O que é único em jogos de computador que faz alguémtrocar tudo para ficar jogando?

Page 6: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Os jogadores querem desafios

Muitos jogadores se divertem com jogos que provêemdesafiosJogos de desafios podem ser experiências de aprendizadoDesenvolver habilidades

Page 7: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Os jogadores querem se socializar

Criar clãs, conhecer pessoasLAN partyMassive Multi Player Games

Page 8: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Os jogadores querem uma experiência emocional

Adrenalina e tensãoFelicidadeMedo

Page 9: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Os jogadores querem uma fantasia

Uma nova realidadeViagensAmbientes exóticosSó a imaginação limita um jogo

Page 10: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Os jogadores esperam de um jogo?

Um mundo consistenteCompreender os limites do mundoSoluções razoáveis para os desafiosSerem orientados, ter uma direçãoAcompanhar o incremento de uma tarefaImersão

Page 11: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Os jogadores esperam de um jogo?

FalharChance honestaNão ser repetitivosNão ser frustadoFazer e não assistirNão sabem o que querem, mas sabem quando veemAcima de tudo: se divertir! :-)

Page 12: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Os papéis da indústria de jogos

Líder de equipeProjetoProduçãoProgramaçãoArteÁudio

Page 13: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Projeto

A equipe de projeto é formada por pessoas que modelam osconceitos do jogo, independentemente da tecnologia.

Projetista (Designer)Roteirista (Storyteller ou writer)

Page 14: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Produção

Tratam dos detalhes logísticos da produção do projeto.

ProdutorAssitente de produção

Page 15: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Programação

Implementam o projeto em termos técnicos:

Líder de programaçãoProgramadorProgramador de motorProgramador de IAProgramdor de ferramentas

Page 16: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Arte

Implementam os artefatos artísticos propostos para o projeto:

Diretor de arteArtista

Page 17: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Áudio

Produz os artefatos de áudio do projeto:

Projetista de efeitos sonorosCompositorMúsico

Page 18: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Desenvolvimento Enxuto de Software

O Desenvolvimento Enxuto de Software é uma adaptação dosprincípios e práticas do Sistema de Produção da Toyota para odomínio de desenvolvimento de software, apresentando umconjunto de ferramentas baseadas no pensamento enxuto eque são úteis na compreensão do desenvolvimento ágil desoftware.

Page 19: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Desenvolvimento Enxuto de Software

Elimine o desperdício: desperdício é qualquer coisa quenão adiciona valor perceptível pelo jogadorAmplifique a aprendizagem: o desenvolvimento de jogospode ser melhor expressado como um processo deaprendizagem, ao qual é adicionado a cada momento umnovo desafio, maior e mais complexo, à equipe.Decida o mais tarde possível: quanto mais tarde for adecisão, melhor será o cenário para decidirEntregue o mais rápido possívelFortaleça a equipe: ninguém entende melhor os detalhesdo que as pessoas que fazem o trabalhoConstrua com integridade: “Sim, era exatamente issoque eu queria. Alguém leu meus pensamentos!”Veja o todo

Page 20: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Modelagem Ágil

A Modelagem Ágil (MA) é uma metodologia baseada na práticapara modelagem e documentação eficazes de sistemas desoftware, sendo composta por uma coleção de valores,princípios e práticas, derivados do eXtreme Programming, quepodem ser aplicadas no dia-a-dia do desenvolvimento de umamaneira leve e eficaz. Ela mistura o “caos” de práticas simplesde modelagem com a ordem inerente a artefatos demodelagem de software.

Page 21: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Modelagem Ágil

A modelagem é uma tarefa importante no processo dedesenvolvimento de software, criando estruturas queorganizam a lógica do sistema, sendo parte fundamental etarefa diária do XP. Para isso, existe uma ampla gama detécnicas que devem ser conhecidas e aplicadas eficazmente.Modelos não matam projetos, pessoas matam projetos.Entretanto, é importante ressaltar que a construção demodelos não é o propósito de um projeto de software, mas simentregá-lo, sendo que qualquer outra atividade, tende a sersecundária.

Page 22: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Modelagem Ágil

O software é seu objetivo principal: o propósito dosprojetos de desenvolvimento de software é produzirsoftware que atenda as necessidades de seus clientes demaneira efetiva, e não produzir documentação, artefatosde gerenciamento, ou mesmo modelos. Quando em umprojeto as pessoas criam modelos de forma diligente,resulta que algum software não foi entregue, devendo-seter atenção para que a modelagem não interfira no seudesenvolvimento. Modelos devem ser construídossomente quando forem importantes para o sucesso doprojeto. Por isto, qualquer atividade que não contribuadiretamente para a produção do software deve serquestionada e evitada, se não puder ser adequadamentejustificada.

Page 23: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Modelagem Ágil

Possibilitar o próximo trabalho é seu objetivosecundário: um projeto bem-sucedido, após a suaentrega, deve ter a capacidade de ser expandido. Por isto,deve-se produzir uma documentação que propicie aoperação, manutenção e desenvolvimento de novasversões, além de transferir conhecimento para que outrosdesenvolvedores possam ser eficientes.

Page 24: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Modelagem Ágil

Diminua a carga de trabalho: cada artefato que é criadoe que se decide manter, deve ser atualizado ao longo dotempo. Por isto, para manter a agilidade, deve-se diminuira carga de trabalho, criando e mantendo somente osmodelos e documentos necessários para seguir adiante.Assim, os artefatos que são mantidos devem ser: 1)poucos; 2) simples; 3) valiosos. Uma equipe dedesenvolvimento que decide criar e manter um detalhadodocumento de requisitos, uma detalhada coleção demodelos de análise, uma detalhada coleção de modelosarquiteturais e uma detalhada coleção de modelos deprojeto rapidamente descobrirá que estará despendendo amaior parte do seu tempo atualizando documentos aoinvés de escrever o código-fonte.

Page 25: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Modelagem Ágil

Adote a simplicidade: trate cada problema como se elepudesse ser resolvido de uma forma ridiculamentesimples. Assuma que a solução mais simples é a melhor.Não descreva no modelo características que não foremutilizadas hoje. Tenha coragem para não modelardesnecessariamente hoje, modelando somentes osrequisitos atuais e refatorando-os no futuro, quandonecessário.

Page 26: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Modelagem Ágil

Encampe a mudança: requisitos evoluem ao longo dotempo, assim como o entendimento das pessoas sobreeles. Clientes podem mudar a medida que o projetoavança ou novos podem se agregar. Também seus pontosde vista podem se modificar, modificando os objetivos e oscritérios de sucesso do projeto. Mudanças são naturais ecomuns em projetos de software, sendo importanteconscientizar os clientes de suas conseqüências e decomo e quando estas mudanças serão contempladas noprojeto.

Page 27: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Modelagem Ágil

Mude incrementalmente: grandes mudanças todas deuma só vez não funcionam. Qualquer problema pode sersolucionado através de uma série de pequenas mudanças.Assim, desenvolva modelos pequenos, talvez de alto nível,evoluindo-os com o passar do tempo de maneiraincremental e de acordo com a necessidade, ousimplesmente descarte-os quando não forem maisnecessário.

Page 28: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Modelagem Ágil

Modelo com um propósito: durante a criação de ummodelo, deve-se identificar o motivo pelo qual se estámodelando e para quem ele é destinado, detalhando-o atéque cumpra seu objetivo.

Page 29: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Modelagem Ágil

Tenha mais de um modelo: cada artefato artefato éapropriado para uma determinada situação e pelo fato deo software moderno ser complexo, nenhum artefatosozinho é capaz de ser aplicado a todas as situações.Assim, para ser eficaz e descrever a complexidade, épreciso utilizar vários modelos simples, ao invés de um oudois muito complexos. Para ser eficiente como modeladorágil, é necessário conhecer uma grande variedade demodelos, aplicando-os na situação mais adequada.

Page 30: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Modelagem Ágil

Trabalho de qualidade: ninguém gosta de trabalhodesleixado, por isto, se algum modelo ou documento valea pena ser mantido, então ele deve ser criado com aqualidade suficiente para seu objetivo e público.

Page 31: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Modelagem Ágil

Retorno rápido: o tempo entre uma ação e o retornodesta ação é crucial para a sua compreensão. Ao modelarcom outras pessoas, particularmente quando se utilizatecnologias de modelagem compartilha, são obtidosretornos quase instantâneos a respeito das idéiasmodeladas. Assim, trabalhando conjuntamente com osclientes na compreensão e análise de requisitos seoportuniza o retorno rápido dos modelos.

Page 32: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Modelagem Ágil

Maximize o retorno que seus clientes obterão: oscliente investem recursos para ter um software que atendaàs suas necessidades. Por isso, merecem ter a palavrafinal de como esses recursos serão investidos. Assim, adecisão de criar e manter documentos em detrimento docódigo deve ser do cliente, estando este consciente dasvantagens e desvantagens de fazê-los.

Page 33: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Introdução a UML para Jogos

Ver o capítulo 7 (págs. 82-86) e capítulo 9 (págs. 145-149)do livro “Game Design and Production”Ferramenta CASE sugerida: ArgoUMLhttp://argouml.tigris.org/

Tipo de Diagramas: Caso de Uso, Classes, Atividades,Sequência, Estados e Distribuição

Page 34: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

O Documento do Jogo

Ver os capítulos 15, 17 e o apêndice de exemplo dedocumento (pág. 493) do livro “Game Design - Teory andPractice”Ver o capítulo 8 do livro “Game Design and Production”

Page 35: Introdução ao projeto de jogos - WordPress.com · Modelagem Ágil A Modelagem Ágil (MA) é uma metodologia baseada na prática para modelagem e documentação eficazes de sistemas

Atividade do Projeto - Documento do Jogo

Baseado nas leituras e exemplos do slide anterior, elaboreum Documento do Jogo, modelando a sua ideia para oprojeto da disciplinaNão é necessário seguir a risca, mas adapte para arealidade do seu projetoSeja suscinto e consistente