SlideShare a Scribd company logo
1 of 68
Download to read offline
Desenvolvimento de Jogos – Mercado de Jogos – 
Fábio Moura 
fabio.mpereira@uesb.edu.br
Roteiro 
Evolução dos Jogos 
Características e Tipos de Jogos 
Desenvolvimento de Jogos
Por que desenvolver? (3 D’s) 
Desafios acadêmicos 
Diversão 
Porque não fazer um trabalho divertido que exercita o imaginário? 
Dólares $$$$
Importância Acadêmica 
Um desafio inter-disciplinar 
Computação: Computação Gráfica, IA, Eng. Software... 
Arte: Design gráfico, Sonorização e trilhas musicais, Vídeo e Roteiro 
Modelagem: Psicologia, Sociologia, Arte Militar, ... 
Entretenimento: Game design e level design
Importância Acadêmica 
Aplicação “limite” para a computação 
Realismo => altos requisitos gráficos e sonoros 
Algoritmos complexos, alto uso de memória e rede sob fortes restrições temporais 
Do baixo ao alto nível: da placa aceleradora ao 3D studio
Importância Acadêmica 
Mini-laboratório para IA 
Simulações muito próximas do mundo real 
Novos horizontes e perspectivas da convergência digital 
Todas as formas de comunicação (rádio, tv, telefone, Internet) estão se tornando digitais 
Cinema interativo e conectado à rede, TV digital, etc.
Importância Acadêmica 
TV, Cabo, Rádio, ... 
Jogos, 
CDRom,... 
Internet 
?
Mercado de Jogos Eletrônicos 
Mercado diferente: você compra mais de um jogo! 
Movimentação 
Mercado atual US$ 75 bilhões 
Maior do que o cinema!! 
Crescimento de 7% em 2014 
O mercado de software para desenvolvimento também é grande 
Motor da Unreal: US$ 500.000,00 !! 
No Brasil R$ 629 milhões em 2012 
Um crescimento de 72% em relação a 2011
Mercado Global (2012 – 2016)
Mercado Global por Região (2013)
Mercado Global por Segmento (2013)
Mercado de Jogos Eletrônicos 
Empresas
Jogar videogame não é mais coisa de criança e adolescente 
25% são menores de 18 anos 
49% estão entre 18 e 49 anos 
26% estão acima dos 50 anos
Hollywood tem ficado para trás... 
AVATAR 
Vendeu 3.2 milhões de DVDs e Blue-rays no dia do lançamento, somando vendas no mundo todo 
CALL OF DUTY Black Ops 
Vendeu 5,6 milhões de unidades no lançamento, somando apenas as vendas nos EUA e Reino Unido!
Hollywood tem ficado para trás... 
HOLLYWOOD EM 2010 
500 FILMES 
INVESTIMENTO DE US$ 100 MILHÕES 
LUCRO DE US$ 31,8 BILHÕES 
GAMES EM 2010 
1.638 LANÇAMENTOS NOS EUA 
INVESTIMENTO DE US$ 25 MILHÕES 
LUCRO DE US$ 60,4 BILHÕES
As duas indústrias somam forças... 
O Príncipe da Pérsia, adaptação do jogo de mesmo nome, é a maior bilheteria da história de adaptação de jogos 
US$ 335 milhões
Videogame é coisa de homem, certo? 
2 de cada 5 jogadores são mulheres 
Mercado entre as mulheres: 
11% jogam XBOX-360 
9% jogam PLAYSTATION 3 
80% jogam NINTENDO WII 
Mercado entre os homens: 
38% jogam XBOX-360 
21% jogam PLAYSTATION 3 
41% jogam NINTENDO WII
Campeões da Indústria de Games 
O Videogame de maior sucesso na história é o Playstation 2 
138 milhões de unidades vendidas 
A franquia Mario é a de maior sucesso 
Mais de 225 milhões de jogos vendidos
Os 10 jogos mais vendidos de todos os tempos 
1: Wii Sports (Wii - 81.6 milhões) 
2: Super Mario Bros. (NES - 40.24 milhões) 
3: Mario Kart Wii (Wii - 34.33 milhões) 
4: Wii Sports Resort (Wii - 32.24 milhões) 
5: Pokémon Red e Blue/Green (GB - 31.37 milhões) 
6: Tetris (GB - 30.26 milhões) 
7: New Super Mario Bros. (DS - 29.38 milhões) 
8: Wii Play (Wii - 28.79 milhões) 
9: Duck Hunt (NES - 28.31 milhões) 
10: New Super Mario Bros. Wii (Wii - 27.25 milhões)
Os Mais Vendidos por Gênero 
RPG - Pokémon Red, Blue & yellow (GB - 31.38 milhões) 
Plataforma - Super Mario Bros (NES - 40.24 milhões) 
Corrida - Mario Kart Wii (Wii - 34.20 milhões) 
Shooter - Duck Hunt (NES - 28.31 milhões) 
Esportes - Wii Sports (Wii - 81.73 milhões) 
Luta - Super Smash Bros. Brawl (Wii - 11.83 milhões) 
Ação - Grand Theft Auto V (PlayStation 3, Xbox 360 - 32 milhões) 
Shooting - Duck Hunt (NES - 28.31 milhões) 
Aventura - The Legend of Zelda: Ocarina of Time (N64 - 7.09 milhões) 
Quebra-Cabeça - Tetris (GB - 30.26 milhões) 
Simulação - Nintendogs (NDS - 24.54 milhões)
Exemplo: Final Fantasy VII da Square 
Características 
Com pouco sangue e muita estratégia, o jogador participa de uma rebelião contra uma empresa que domina o mundo. 
Duração pode chegar a 40 horas 
Melhor jogo do ano de 1997 no Japão 
Desenvolvimento 
Durou 3 anos 
Custou US$ 40 milhões
Exemplo: Asheron's Call da Turbine Entertainment Software 
Massive On-line RPG 
40 + 8 meses de teste (= 4 anos) 
2 milhões de linhas de código. 
30 desenvolvedores full-time (6 artistas, 4 game designers, 15 software engineers, and 5 QA testers) 
Plataformas e software de desenvolvimento 
Intel Pentium PC 
Microsoft Visual C++ 5.0, Visual SourceSafe 5.0, Lightwave 5.5, Photoshop 4.0, RAID.
Conseqüência 
Passou a fase romântica de desenvolvimento de jogos!!! 
É preciso 
Muito investimento 
Muita gente 
Metodologia e qualidade de software
Desenvolvimento de jogos: anos 80 
Receita básica 
Encontre 5 desenvolvedores (Geral, IA, Gráficos, Som,...) 
Eleja um hacker como líder 
Coloque-os numa sala pequena com alguns artistas a disposição 
Deixe cozinhar por 18 meses regando-os a pizza e coca-cola e... 
um pouco mais de cozimento, e... Voilà!
Desenvolvimento de jogos: anos 80 
Objetivos 
Programa rápido, pequeno e, se possível, divertido 
Mentalidade Pedal-to-the-Metal 
Assembler e o hardware: que belo par! 
Sem sistema operacional ou outras “facilidades” 
Síndrome NBH (Not Built Here) 
O código dos outros é mais lento, pior e não presta 
Pouca gente e pouco sono
Desenvolvimento de jogos: anos 80 
Cool factor 
Programador de jogo é um gênio e eu sou o melhor 
Para programar um jogo, tem de ser criativo! 
Plataformas 
ZX Spectrum, Commodore 64, Amstad 464: que uniformidade! 
Hex Loader: 1FE0H: CD 45 20 28 0D CD 4E => memória (convertido e montado no lápis e papel) 
Mais tarde: Assemblers p/ montagem e conversão
Desenvolvimento de jogos: anos 80 
Código desenvolvido na máquina alvo 
O assembler tomava parte da memória assim como o debugger
Desenvolvimento de jogos: anos 90 
Doom foi um boom (1993) 
Usou C com compilador Watcom C/C++ 10.5 
Watcom + Dos4gw 
Rápido e 32 bits para DOS 
Visual C++ 1.5 ainda era lento e 16 bits 
Microsoft 
DirectX 2: API baseada na tecnologia COM (Common Object Model) 
Visual C++ 2.x, 32 bits, ... Visual C++ 4.x
Como desenvolver jogos hoje? 
Metodologia e Equipe 
Consciência da importância da engenharia de software 
Bom desempenho de linguagens e compiladores 
Disponibilidade de bibliotecas para jogos 
Disponibilidade de aceleradores de hardware 
Disponibilidade de emuladores muitíssimo potentes
Plataformas 
Consoles 
PlayStation 
Xbox 
Wii 
PC 
Online 
Celulares/Smartphones
3 Grandes Etapas 
1) Game Design (projeto do jogo) 
Tema, backstory, ambiente, personagens, tipo de jogo, ... 
1a x 3a, 3D x 2D, multi x mono-usuário, níveis, tempo real x turno,... 
2) Implementação 
Programação (c. gráfica, IA, Rede, Prototipação,...) 
Arte gráfica e sonora (identidade visual, cenário, personagens, trilhas, efeitos sonoros, vídeos, ...)
3 Grandes Etapas 
3) Testes 
de corretude 
de jogabilidade
As 3 Completudes 
Completude de Conteúdo (Pré-alfa) 
Arte, som, mapas, textos da interface e da ajuda prontos 
Completude de Jogo (Alfa) 
Jogabilidade 
Completude de Código (Candidato a lançamento) 
Código testado e pronto para distribuição
Game-Design 
Importância 
Unificar a visão da equipe 
Vender o jogo (para o publisher, time de desenvolvimento, ...) 
Realizar teste prévio e detectar erros (que custam 10x mais caro na fase de testes) 
Facilitar a introdução/remoção de novas características
Game-Design 
Atividades 
Tratamento inicial 
Crítica 
Redação da bíblia do jogo (40-200 págs.)
Implementação 
Parte Artística 
Textos e diálogos 
Arte gráfica 3D, arte gráfica 2D (texturas), Filmes 
Efeitos sonoros, trilha sonora e vozes 
Arte da “caixa” 
Parte computacional 
Computação Gráfica, Inteligência Artificial 
Computação Musical, Redes 
Algoritmos (Modelagem Física) 
Engenharia de Software, Compiladores
Implementação: Arte 
Do story board... à arte final
Ferramentas de Arte 
Virtools Dev (virtools.com) 
3DS Max (discreet.com) 
Blender 3D
Implementação 
Camadas 
Sistema Operacional 
Bibliotecas 
Motor 
Jogo 
Hardware (+ placas) 
DirectX, OpenGL,... 
Windows, Linux,... 
Unreal, Lithtech,... 
Ferramentas 
Editores de imagens 2D Modeladores 3D Processadores de sons e músicas Editores de cenários 
Visual C++,... 
Linguagem/Compilador
Bibliotecas 
DirectX 
Ambiente Windows 
A mais utilizada (90 % dos jogos) 
Inclui várias APIs (gráficas, de vídeo, sonoras, de rede, de configuração e de tratamento de entrada) 
OpenGL e OpenAL 
Maior interoperabilidade e flexibilidade 
Inclui APIs gráficas e sonoras
Motor 
Oferece as funcionalidades básicas necessárias porque 
Controla as mídias envolvidas 
Trata e abstrai as características de mais baixo nível 
Ajudam a garantir qualidade 
É complexo e caro 
Milhares de linhas de código 
Gráfico: Unreal (www.unreal.com): US$ 500.000,00 
Alguns gratuitos (Unit 3D)
Motor 
Há motores especializados 
IA: DirectIA (directia.com) 
Modelagem física: Game Dynamics SDK (havok.com) 
Animação de áudio: SMartTools (audioforgames.com)
Linguagens 
C++ e C 
Assembly 
Java 
Linguagem para sistemas embarcados (J2ME, Brew, Android, iOS) 
Web: 
Flash, HTML5, JavaFX, Silverlight 
Ferramentas de autoria
C++ 
Padrão atual para PC e alguns consoles!!! 
Vantagens 
suporta bem as técnicas de OO 
bibliotecas fazem muito do “trabalho sujo” 
Portabilidade razoável 
Desvantagens 
grande e complicada 
pode ser um pouco mais lenta do que C
C 
Utilizada em muitos jogos 
Vantagens 
boa para programas pequenos e rápidos 
fácil interface com assembly 
bem padronizada 
Biblioteca Allegro 
Desvantagens 
não suporta facilmente técnicas OO 
Portabilidade limitada a algumas partes da linguagem
Assembly 
Só utilizada em porções críticas de código 
Vantagens 
código menor e mais rápido 
Desvantagens 
difícil aprendizado 
difícil manutenção 
Sem portabilidade
Java (J2SE) 
Pouquíssimos jogos comerciais 
Vantagens 
portabilidade excelente 
alocação de memória e garbage collector 
Desvantagens 
mais lenta do que código de máquina real 
ruim para baixo nível
Dispositivos Móveis 
Soluções 
Proprietárias (C) 
WAP/i-Mode 
SMS 
Java 2 Micro Edition 
Versão reduzida de Java e de sua máquina virtual 
BREW 
Ambiente light da QUALCOMM para desenvolver em C/C++ com bibliotecas para jogos 
Android 
Plataforma proprietária - Google
Authoring Tools 
HyperCard (Myst!) 
Prototipação rápida e muito simples mas muito limitada e de portabilidade duvidosa 
Director e Shockwave Flash (tendência forte) 
Vantagens 
Roda na Web, é fácil de animar e tem grande portabilidade 
Introdução de 3D (Director 3D) 
Interação possível com outras linguagens 
http://members.brabant.chello.nl/~a.mert/fight.swf 
Desvantagem: linguagem limitada e parser lento para interação com outras linguagens (flash)
Testes 
Testes 
Alfa (testes internos) 
Beta (testes externos) 
Testes de corretude 
Iguais a qualquer software 
Testes de jogabilidade 
Escolha da equipe de testadores (público alvo) 
equipe interna, empresa especializada ou voluntários 
Elaboração de questionários 
Análise e confrontação das críticas
Engenharia de Software 
Com riscos cada vez maiores, é cada vez mais necessária 
Como terminar no prazo e dentro do orçamento? 
Como organizar times de desenvolvimento com 50 pessoas? 
Como organizar e coordenar o seu pipeline de produção?
Equipe 
Principais 
Business 
Management 
Game Design 
Programming 
Art (graphics) 
Music 
Support and Quality Assurance 
Papéis dentro de uma divisão 
Podem se superpor em algum momento
Divisões e Papéis: Management & Design 
Software planner 
Detalha os requisitos técnicos e esforço esperado 
Trabalha com Lead architect e Game designer 
Lead architect 
Identifica os módulos do sistema a partir dos requisitos técnicos (pode se fundir com o anterior 
Project manager 
Gerencia interação entre divisões e prazos
Divisões e Papéis: Management & Design 
Game designer 
Projeta o jogo: documento inicial e refinamentos contínuos
Divisões e Papéis: Programming 
Lead programmer 
Detalha os módulos, cuida de prazos e divisão de tarefas 
Mas programa 70% do tempo (é o mais experiente) 
Conversa com o pessoal da gerência e design 
Programmer 
Programa seguindo as espcificações 
Pode ser especializado: gráficos, IA, música e rede 
Pode trabalhar em mais de um projeto
Divisões e Papéis: Graphic Art 
Lead artist 
Papel semelhante ao do lead programmer: detalha, atribui, faz ponte e ... cria 
Artist 
Semelhante ao programador 
Pode ser especializado: 3D, 2D, cenário, box, ... 
Vídeo 
Pode trabalhar em mais de um projeto
Divisões e Papéis: Music and Others 
Musician 
Cria as trilhas sonoras 
Se forem interativas, requer maior conversa com a equipe 
Sound Effects technicians 
Cria efeitos sonoros conforme especificação do design 
Others 
Motion capture
Divisões e Papéis: Support and Quality Assurance 
QA lead 
Supervisiona a divisão e conversa com o project manager 
QA technician 
Testa todos os caminhos de um módulo em busca de bugs 
2 tipos de teste: black-box and clear-box testing
Divisões e Papéis: Support and Quality Assurance 
Playtester 
Testa a jogabilidade 
Possibilidades de contratação 
staff da casa, estudantes secundaristas, agência de teste, beta teste público 
Support technician
Artistas X Engenheiros de SW 
Plataforma PC e Consoles 
Aprox. 60% de artistas (roteiro, gráficos, sons) 
Game Boy 
Aprox. 50% de artistas 
Celular 
Aprox. 40% de artistas
Estudo de caso 1: Rage of Mages II (63 pessoas) 
Gerência (8) 
Produtor geral, Produtor executivo, Produtor associado, Gerente de Produção, Gerência de Qualidade, Publicidade e vendas (3). 
Game designer (2). Projetistas das missões (7), 
Programação (9) 
Chefe de programação, Programadores do cliente (3), Programadores do servidor (3), Programadores do editor de mapas (2) 
Artes (22) 
Chefe de artes, Layout e animação, Arte 2D (2), Arte 3D, animação (3), Layout do manual (2) 
Escritor, Textos/falas do jogo (2), Tradutores (2), Textos do manual (2) 
Músico, Efeitos sonoros, Editores de áudio(3), 
Testes e outros (24) 
Equipe de teste de qualidade (6), Equipe de teste (12), Suporte técnico (3), Manual (3)
Estudo de caso 2: StarCraft (228 pessoas) 
Gerência (53) 
Produtor executivo, Produtores (3), prod. associados (2), diretor de operações, administrador de escritório, diretor executivo, produtures e relações públicas (2), business (2), ass. Jurídica (4), marketing (8), vendas (9), hosts (4), outros (12) 
Senior designers (2), Editor de campanhas 
Programação (16) 
Chefe de programação, program. (8), Program. IA (3), Program. Net (3), Instalador, Especialista de hardware 
Artes (108) 
Diretor de artes, artework 3D (8), artwork (13), artistas técnicos (3), scenario Design e layout (8), diretor de filme, artistas cinema (16), engenheiro de vídeo, storyboard (8), música (5), efeitos sonoros (5), audio maker (2), engenheiro de áudio, produtor de voz, vozes (21), scritp story (2), strike (9), help design (3), 
Testes (51) 
QA manager, testador líder e assistente (2), manuais (14), box (7), diretor de suporte, líder do suporte, QA analistas (9), Testadores (16)
Desenvolvimento de Jogos 
Fique ligado! 
É praticamente impossível se fazer um mega-hit de primeira 
Os grandes estúdios de jogos começaram pequenos e aumentaram com o tempo 
Break-out, Pac-man, Super Mario 
A maior parte do aprendizado para desenvolver jogos é adquirido por experiência 
É possível usar ferramentas (principalmente “game engines”) desenvolvidas por terceiros
Breakout 
Elementos comuns a todos os jogos (loop básico) 
lê entrada 
processa entrada 
atualiza os elementos do jogo 
verifica por condições de vitória/derrota 
Outras características 
detecção de colisões 
modelo físico (reflexão da bola) 
layout de níveis 
gerenciamento de recursos (mapas, níveis) 
sons
Pac-Man 
Próximo passo: IA 
táticas inimigas 
um fantasma persegue você 
outro tenta interceptar o seu movimento enquanto você foge do primeiro 
outro vigia o túnel pra evitar a sua fuga 
o último ronda a área que você precisa visitar pra terminar a fase 
Maior Complexidade 
mapas, sons
Super Mario 
Maior complexidade: 
gráfica (scrolling) 
física (pulos, tiros) 
dos inimigos (mais IA, mais controle) 
de níveis (editor de níveis)
Bibliografia 
História dos vídeo games 
http://www.outerspace.com.br/retrospace/ 
Prof. Geber Ramalho (UFPe) 
Transparências 
Outras 
Game Architecture and Design, A. Rollings e D. Morris; Coriolis, 2000 
Gamasutra, http://www.gamasutra.com 
Game Developers Magazine, http://www.gdmag.com 
Critical Path Analysis and Scheduling for Game Development , Jack Hoxley, www.gamedev.net/reference/articles/article1440.asp
Desenvolvimento de Jogos – Mercado de Jogos – 
Fábio Moura 
fabio.mpereira@uesb.edu.br

More Related Content

What's hot

Apostila do game maker 8.0 (português)
Apostila do game maker 8.0 (português)Apostila do game maker 8.0 (português)
Apostila do game maker 8.0 (português)
Rafyusq Queiroz
 

What's hot (20)

Curso Dia 02
Curso Dia 02Curso Dia 02
Curso Dia 02
 
Gamification, Gaming Concepts & Game Design
Gamification, Gaming Concepts & Game DesignGamification, Gaming Concepts & Game Design
Gamification, Gaming Concepts & Game Design
 
Design de Jogos I - Fundamentos principais (Grupo de estudos ETEC)
Design de Jogos I - Fundamentos principais (Grupo de estudos ETEC)Design de Jogos I - Fundamentos principais (Grupo de estudos ETEC)
Design de Jogos I - Fundamentos principais (Grupo de estudos ETEC)
 
Apostila Jogos
Apostila Jogos Apostila Jogos
Apostila Jogos
 
Game Design intro kao tokio unibero 2010
Game Design intro kao tokio unibero 2010Game Design intro kao tokio unibero 2010
Game Design intro kao tokio unibero 2010
 
Apresentação TCC Games
Apresentação TCC GamesApresentação TCC Games
Apresentação TCC Games
 
Mecânica de jogos digitais: documentando com Behaviour Driven Developemnt (BD...
Mecânica de jogos digitais: documentando com Behaviour Driven Developemnt (BD...Mecânica de jogos digitais: documentando com Behaviour Driven Developemnt (BD...
Mecânica de jogos digitais: documentando com Behaviour Driven Developemnt (BD...
 
6Game Design Process 2010 Unibero Kao Tokio Upload
6Game Design Process 2010 Unibero Kao Tokio Upload6Game Design Process 2010 Unibero Kao Tokio Upload
6Game Design Process 2010 Unibero Kao Tokio Upload
 
Apostila do game maker 8.0 (português)
Apostila do game maker 8.0 (português)Apostila do game maker 8.0 (português)
Apostila do game maker 8.0 (português)
 
tecnologia em design
tecnologia em designtecnologia em design
tecnologia em design
 
Evolução dos games e introdução ao desenvolvimento com unity
Evolução dos games e introdução ao desenvolvimento com unityEvolução dos games e introdução ao desenvolvimento com unity
Evolução dos games e introdução ao desenvolvimento com unity
 
Introdução ao Desenvolvimento de Jogos
Introdução ao Desenvolvimento de JogosIntrodução ao Desenvolvimento de Jogos
Introdução ao Desenvolvimento de Jogos
 
Introdução ao Desenvolvimemto de Jogos com Unity
Introdução ao Desenvolvimemto de Jogos com UnityIntrodução ao Desenvolvimemto de Jogos com Unity
Introdução ao Desenvolvimemto de Jogos com Unity
 
Aula 01 criação de jogos
Aula 01 criação de jogosAula 01 criação de jogos
Aula 01 criação de jogos
 
Desenvolvimento de Jogos em Java
Desenvolvimento de Jogos em JavaDesenvolvimento de Jogos em Java
Desenvolvimento de Jogos em Java
 
Cp game design
Cp game designCp game design
Cp game design
 
Porque usar jogos?
Porque usar jogos?Porque usar jogos?
Porque usar jogos?
 
Metodologias de desenvolvimento de jogos e introdução a game design
Metodologias de desenvolvimento de jogos e introdução a game designMetodologias de desenvolvimento de jogos e introdução a game design
Metodologias de desenvolvimento de jogos e introdução a game design
 
Palestra Introdução ao Game Design
Palestra Introdução ao Game DesignPalestra Introdução ao Game Design
Palestra Introdução ao Game Design
 
Como criar jogos? Dicas, metodologias e etapas de desenvolvimento.
Como criar jogos? Dicas, metodologias e etapas de desenvolvimento.Como criar jogos? Dicas, metodologias e etapas de desenvolvimento.
Como criar jogos? Dicas, metodologias e etapas de desenvolvimento.
 

Viewers also liked

Introdução à Engenharia de Software (parte II)
Introdução à Engenharia de Software (parte II)Introdução à Engenharia de Software (parte II)
Introdução à Engenharia de Software (parte II)
Nécio de Lima Veras
 
Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1
Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1
Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1
Renato Leal
 

Viewers also liked (20)

Introdução à Engenharia de Software (parte II)
Introdução à Engenharia de Software (parte II)Introdução à Engenharia de Software (parte II)
Introdução à Engenharia de Software (parte II)
 
Gestão de Projetos (25/08/2014)
Gestão de Projetos (25/08/2014)Gestão de Projetos (25/08/2014)
Gestão de Projetos (25/08/2014)
 
Ciclo de vida de software
Ciclo de vida de software Ciclo de vida de software
Ciclo de vida de software
 
Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1
Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1
Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 1
 
Ciclo de vida de software
Ciclo de vida de softwareCiclo de vida de software
Ciclo de vida de software
 
Engenharia de Software para Jogos
Engenharia de  Software para JogosEngenharia de  Software para Jogos
Engenharia de Software para Jogos
 
Aula de Prolog 08 - Unificação
Aula de Prolog 08 - UnificaçãoAula de Prolog 08 - Unificação
Aula de Prolog 08 - Unificação
 
Aula Prolog 03
Aula Prolog 03Aula Prolog 03
Aula Prolog 03
 
Aula Persistência 01 (Java)
Aula Persistência 01 (Java)Aula Persistência 01 (Java)
Aula Persistência 01 (Java)
 
04 - Gerenciamento de Threads - II
04 -  Gerenciamento de Threads - II04 -  Gerenciamento de Threads - II
04 - Gerenciamento de Threads - II
 
Aula Prolog - 05
Aula Prolog - 05Aula Prolog - 05
Aula Prolog - 05
 
Haskell - Introdução
Haskell - IntroduçãoHaskell - Introdução
Haskell - Introdução
 
Desenvolvimento de Sistemas Web - HTML5 - Introdução
Desenvolvimento de Sistemas Web - HTML5 - IntroduçãoDesenvolvimento de Sistemas Web - HTML5 - Introdução
Desenvolvimento de Sistemas Web - HTML5 - Introdução
 
Aula 05 - Java Script Básico
Aula 05 -  Java Script BásicoAula 05 -  Java Script Básico
Aula 05 - Java Script Básico
 
Programação Concorrente - Gerenciamento de Threads - Parte II
Programação Concorrente - Gerenciamento de Threads - Parte IIProgramação Concorrente - Gerenciamento de Threads - Parte II
Programação Concorrente - Gerenciamento de Threads - Parte II
 
05 - Sincronização de Threads - I
05 - Sincronização de Threads - I05 - Sincronização de Threads - I
05 - Sincronização de Threads - I
 
Aula Tratamento de Exceções
Aula Tratamento de ExceçõesAula Tratamento de Exceções
Aula Tratamento de Exceções
 
Curso de Desenvolvimento de Sistemas Web - (X)HTML
Curso de Desenvolvimento de Sistemas Web - (X)HTMLCurso de Desenvolvimento de Sistemas Web - (X)HTML
Curso de Desenvolvimento de Sistemas Web - (X)HTML
 
Aula de Desenvolvimento de Sistemas Web - CSS3
Aula de Desenvolvimento de Sistemas Web - CSS3Aula de Desenvolvimento de Sistemas Web - CSS3
Aula de Desenvolvimento de Sistemas Web - CSS3
 
Aula Interface Gráfica do Usuário
Aula Interface Gráfica do UsuárioAula Interface Gráfica do Usuário
Aula Interface Gráfica do Usuário
 

Similar to Desenvolvimento de Jogos - Mercado Parte 2

Curso (2010) - Desenvolvimento de Jogos 2D com XNA
Curso (2010) - Desenvolvimento de Jogos 2D  com XNACurso (2010) - Desenvolvimento de Jogos 2D  com XNA
Curso (2010) - Desenvolvimento de Jogos 2D com XNA
Kleber de Oliveira Andrade
 
Utilização da Engine de Jogos CryENGINE para o Desenvolvimento de Aplicativos...
Utilização da Engine de Jogos CryENGINE para o Desenvolvimento de Aplicativos...Utilização da Engine de Jogos CryENGINE para o Desenvolvimento de Aplicativos...
Utilização da Engine de Jogos CryENGINE para o Desenvolvimento de Aplicativos...
Leonardo Dalmina
 
Desenvolvimento De Jogos Na Plataforma Xna
Desenvolvimento De Jogos Na Plataforma XnaDesenvolvimento De Jogos Na Plataforma Xna
Desenvolvimento De Jogos Na Plataforma Xna
Ellison Leão
 

Similar to Desenvolvimento de Jogos - Mercado Parte 2 (20)

Desenvolvimento de jogos e ogre 3D - Jaguariuna
Desenvolvimento de jogos e ogre 3D - JaguariunaDesenvolvimento de jogos e ogre 3D - Jaguariuna
Desenvolvimento de jogos e ogre 3D - Jaguariuna
 
Visão Geral XNA
Visão Geral XNAVisão Geral XNA
Visão Geral XNA
 
Palestra Indústria de Jogos - Estrutura e Organização da Cadeia Produtiva
Palestra Indústria de Jogos - Estrutura e Organização da Cadeia ProdutivaPalestra Indústria de Jogos - Estrutura e Organização da Cadeia Produtiva
Palestra Indústria de Jogos - Estrutura e Organização da Cadeia Produtiva
 
Desenvolvimento de jogos e ogre 3D - Unisantos
Desenvolvimento de jogos e ogre 3D - UnisantosDesenvolvimento de jogos e ogre 3D - Unisantos
Desenvolvimento de jogos e ogre 3D - Unisantos
 
Palestra - A Dinâmica do Mercado de Jogos Eletrônicos
Palestra - A Dinâmica do Mercado de Jogos EletrônicosPalestra - A Dinâmica do Mercado de Jogos Eletrônicos
Palestra - A Dinâmica do Mercado de Jogos Eletrônicos
 
Desenvolvimento de jogos e Ogre 3D - Dev In Santos
Desenvolvimento de jogos e Ogre 3D - Dev In SantosDesenvolvimento de jogos e Ogre 3D - Dev In Santos
Desenvolvimento de jogos e Ogre 3D - Dev In Santos
 
Introdução sobre desenvolvimento de games
Introdução sobre desenvolvimento de gamesIntrodução sobre desenvolvimento de games
Introdução sobre desenvolvimento de games
 
Desenvolvimento de jogos e ogre 3D - Unip Santos
Desenvolvimento de jogos e ogre 3D - Unip SantosDesenvolvimento de jogos e ogre 3D - Unip Santos
Desenvolvimento de jogos e ogre 3D - Unip Santos
 
Comparativo entre Engines de Jogos em 3d
Comparativo entre Engines de Jogos em 3dComparativo entre Engines de Jogos em 3d
Comparativo entre Engines de Jogos em 3d
 
Curso (2010) - Desenvolvimento de Jogos 2D com XNA
Curso (2010) - Desenvolvimento de Jogos 2D  com XNACurso (2010) - Desenvolvimento de Jogos 2D  com XNA
Curso (2010) - Desenvolvimento de Jogos 2D com XNA
 
Evolução games
Evolução gamesEvolução games
Evolução games
 
Historia do videogame
Historia do videogameHistoria do videogame
Historia do videogame
 
Histori do videogame
Histori do videogameHistori do videogame
Histori do videogame
 
Desenvolver Jogos de Sucesso em Portugal
Desenvolver Jogos de Sucesso em PortugalDesenvolver Jogos de Sucesso em Portugal
Desenvolver Jogos de Sucesso em Portugal
 
Utilização da Engine de Jogos CryENGINE para o Desenvolvimento de Aplicativos...
Utilização da Engine de Jogos CryENGINE para o Desenvolvimento de Aplicativos...Utilização da Engine de Jogos CryENGINE para o Desenvolvimento de Aplicativos...
Utilização da Engine de Jogos CryENGINE para o Desenvolvimento de Aplicativos...
 
Jme Games
Jme GamesJme Games
Jme Games
 
It’s all about the game
It’s all about the gameIt’s all about the game
It’s all about the game
 
Projeto de Jogos
Projeto de JogosProjeto de Jogos
Projeto de Jogos
 
Desenvolvimento de jogos e ogre 3D - Palestra Fatec Praia Grande
Desenvolvimento de jogos e ogre 3D - Palestra Fatec Praia GrandeDesenvolvimento de jogos e ogre 3D - Palestra Fatec Praia Grande
Desenvolvimento de jogos e ogre 3D - Palestra Fatec Praia Grande
 
Desenvolvimento De Jogos Na Plataforma Xna
Desenvolvimento De Jogos Na Plataforma XnaDesenvolvimento De Jogos Na Plataforma Xna
Desenvolvimento De Jogos Na Plataforma Xna
 

More from Fabio Moura Pereira

More from Fabio Moura Pereira (18)

Aula de Prolog 07 - Estruturas de Dados
Aula de Prolog 07 - Estruturas de DadosAula de Prolog 07 - Estruturas de Dados
Aula de Prolog 07 - Estruturas de Dados
 
Aula Prolog 09 - Listas
Aula Prolog 09 - ListasAula Prolog 09 - Listas
Aula Prolog 09 - Listas
 
Aula de Prolog 06 - Recursão
Aula de Prolog 06 - RecursãoAula de Prolog 06 - Recursão
Aula de Prolog 06 - Recursão
 
Prolog 04 - Regras
Prolog 04 - RegrasProlog 04 - Regras
Prolog 04 - Regras
 
Aula Prolog 02
Aula Prolog 02Aula Prolog 02
Aula Prolog 02
 
Aula Prolog 01
Aula Prolog 01Aula Prolog 01
Aula Prolog 01
 
Programação Concorrente - Gerenciamento de Threads - Parte I
Programação Concorrente - Gerenciamento de Threads - Parte IProgramação Concorrente - Gerenciamento de Threads - Parte I
Programação Concorrente - Gerenciamento de Threads - Parte I
 
Programação Concorrente - Objetos e Concorrência
Programação Concorrente - Objetos e ConcorrênciaProgramação Concorrente - Objetos e Concorrência
Programação Concorrente - Objetos e Concorrência
 
Programação Concorrente - Introdução
Programação Concorrente - IntroduçãoProgramação Concorrente - Introdução
Programação Concorrente - Introdução
 
Aula Java Swing
Aula Java SwingAula Java Swing
Aula Java Swing
 
Aula - Interfaces e Estilos de Interação
Aula - Interfaces e Estilos de InteraçãoAula - Interfaces e Estilos de Interação
Aula - Interfaces e Estilos de Interação
 
Aula Desenvolvimento de Jogos - Game Engine (Motor de Jogos)
Aula Desenvolvimento de Jogos - Game Engine (Motor de Jogos)Aula Desenvolvimento de Jogos - Game Engine (Motor de Jogos)
Aula Desenvolvimento de Jogos - Game Engine (Motor de Jogos)
 
Padrões de Projeto de Software
Padrões de Projeto de SoftwarePadrões de Projeto de Software
Padrões de Projeto de Software
 
Curso de PHP - Objetos
Curso de PHP - ObjetosCurso de PHP - Objetos
Curso de PHP - Objetos
 
Curso de PHP - Arrays
Curso de PHP - ArraysCurso de PHP - Arrays
Curso de PHP - Arrays
 
PHP - Funções
PHP - FunçõesPHP - Funções
PHP - Funções
 
PHP - Introdução
PHP - IntroduçãoPHP - Introdução
PHP - Introdução
 
PHP - Strings
PHP - StringsPHP - Strings
PHP - Strings
 

Recently uploaded

PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
HELENO FAVACHO
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
TailsonSantos1
 

Recently uploaded (20)

Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
 
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxMonoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
 
LENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretaçãoLENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretação
 
EDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVA
EDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVAEDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVA
EDUCAÇÃO ESPECIAL NA PERSPECTIVA INCLUSIVA
 
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
 
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
 
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdfTCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
 
migração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenosmigração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenos
 
Educação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxEducação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptx
 
About Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de HotéisAbout Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de Hotéis
 
Conflitos entre: ISRAEL E PALESTINA.pdf
Conflitos entre:  ISRAEL E PALESTINA.pdfConflitos entre:  ISRAEL E PALESTINA.pdf
Conflitos entre: ISRAEL E PALESTINA.pdf
 
P P P 2024 - *CIEJA Santana / Tucuruvi*
P P P 2024  - *CIEJA Santana / Tucuruvi*P P P 2024  - *CIEJA Santana / Tucuruvi*
P P P 2024 - *CIEJA Santana / Tucuruvi*
 
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia TecnologiaPROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
 
GÊNERO CARTAZ - o que é, para que serve.pptx
GÊNERO CARTAZ - o que é, para que serve.pptxGÊNERO CARTAZ - o que é, para que serve.pptx
GÊNERO CARTAZ - o que é, para que serve.pptx
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
 
Cartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxCartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptx
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
 

Desenvolvimento de Jogos - Mercado Parte 2

  • 1. Desenvolvimento de Jogos – Mercado de Jogos – Fábio Moura fabio.mpereira@uesb.edu.br
  • 2. Roteiro Evolução dos Jogos Características e Tipos de Jogos Desenvolvimento de Jogos
  • 3. Por que desenvolver? (3 D’s) Desafios acadêmicos Diversão Porque não fazer um trabalho divertido que exercita o imaginário? Dólares $$$$
  • 4. Importância Acadêmica Um desafio inter-disciplinar Computação: Computação Gráfica, IA, Eng. Software... Arte: Design gráfico, Sonorização e trilhas musicais, Vídeo e Roteiro Modelagem: Psicologia, Sociologia, Arte Militar, ... Entretenimento: Game design e level design
  • 5. Importância Acadêmica Aplicação “limite” para a computação Realismo => altos requisitos gráficos e sonoros Algoritmos complexos, alto uso de memória e rede sob fortes restrições temporais Do baixo ao alto nível: da placa aceleradora ao 3D studio
  • 6. Importância Acadêmica Mini-laboratório para IA Simulações muito próximas do mundo real Novos horizontes e perspectivas da convergência digital Todas as formas de comunicação (rádio, tv, telefone, Internet) estão se tornando digitais Cinema interativo e conectado à rede, TV digital, etc.
  • 7. Importância Acadêmica TV, Cabo, Rádio, ... Jogos, CDRom,... Internet ?
  • 8. Mercado de Jogos Eletrônicos Mercado diferente: você compra mais de um jogo! Movimentação Mercado atual US$ 75 bilhões Maior do que o cinema!! Crescimento de 7% em 2014 O mercado de software para desenvolvimento também é grande Motor da Unreal: US$ 500.000,00 !! No Brasil R$ 629 milhões em 2012 Um crescimento de 72% em relação a 2011
  • 10. Mercado Global por Região (2013)
  • 11. Mercado Global por Segmento (2013)
  • 12. Mercado de Jogos Eletrônicos Empresas
  • 13. Jogar videogame não é mais coisa de criança e adolescente 25% são menores de 18 anos 49% estão entre 18 e 49 anos 26% estão acima dos 50 anos
  • 14. Hollywood tem ficado para trás... AVATAR Vendeu 3.2 milhões de DVDs e Blue-rays no dia do lançamento, somando vendas no mundo todo CALL OF DUTY Black Ops Vendeu 5,6 milhões de unidades no lançamento, somando apenas as vendas nos EUA e Reino Unido!
  • 15. Hollywood tem ficado para trás... HOLLYWOOD EM 2010 500 FILMES INVESTIMENTO DE US$ 100 MILHÕES LUCRO DE US$ 31,8 BILHÕES GAMES EM 2010 1.638 LANÇAMENTOS NOS EUA INVESTIMENTO DE US$ 25 MILHÕES LUCRO DE US$ 60,4 BILHÕES
  • 16. As duas indústrias somam forças... O Príncipe da Pérsia, adaptação do jogo de mesmo nome, é a maior bilheteria da história de adaptação de jogos US$ 335 milhões
  • 17. Videogame é coisa de homem, certo? 2 de cada 5 jogadores são mulheres Mercado entre as mulheres: 11% jogam XBOX-360 9% jogam PLAYSTATION 3 80% jogam NINTENDO WII Mercado entre os homens: 38% jogam XBOX-360 21% jogam PLAYSTATION 3 41% jogam NINTENDO WII
  • 18. Campeões da Indústria de Games O Videogame de maior sucesso na história é o Playstation 2 138 milhões de unidades vendidas A franquia Mario é a de maior sucesso Mais de 225 milhões de jogos vendidos
  • 19. Os 10 jogos mais vendidos de todos os tempos 1: Wii Sports (Wii - 81.6 milhões) 2: Super Mario Bros. (NES - 40.24 milhões) 3: Mario Kart Wii (Wii - 34.33 milhões) 4: Wii Sports Resort (Wii - 32.24 milhões) 5: Pokémon Red e Blue/Green (GB - 31.37 milhões) 6: Tetris (GB - 30.26 milhões) 7: New Super Mario Bros. (DS - 29.38 milhões) 8: Wii Play (Wii - 28.79 milhões) 9: Duck Hunt (NES - 28.31 milhões) 10: New Super Mario Bros. Wii (Wii - 27.25 milhões)
  • 20. Os Mais Vendidos por Gênero RPG - Pokémon Red, Blue & yellow (GB - 31.38 milhões) Plataforma - Super Mario Bros (NES - 40.24 milhões) Corrida - Mario Kart Wii (Wii - 34.20 milhões) Shooter - Duck Hunt (NES - 28.31 milhões) Esportes - Wii Sports (Wii - 81.73 milhões) Luta - Super Smash Bros. Brawl (Wii - 11.83 milhões) Ação - Grand Theft Auto V (PlayStation 3, Xbox 360 - 32 milhões) Shooting - Duck Hunt (NES - 28.31 milhões) Aventura - The Legend of Zelda: Ocarina of Time (N64 - 7.09 milhões) Quebra-Cabeça - Tetris (GB - 30.26 milhões) Simulação - Nintendogs (NDS - 24.54 milhões)
  • 21. Exemplo: Final Fantasy VII da Square Características Com pouco sangue e muita estratégia, o jogador participa de uma rebelião contra uma empresa que domina o mundo. Duração pode chegar a 40 horas Melhor jogo do ano de 1997 no Japão Desenvolvimento Durou 3 anos Custou US$ 40 milhões
  • 22. Exemplo: Asheron's Call da Turbine Entertainment Software Massive On-line RPG 40 + 8 meses de teste (= 4 anos) 2 milhões de linhas de código. 30 desenvolvedores full-time (6 artistas, 4 game designers, 15 software engineers, and 5 QA testers) Plataformas e software de desenvolvimento Intel Pentium PC Microsoft Visual C++ 5.0, Visual SourceSafe 5.0, Lightwave 5.5, Photoshop 4.0, RAID.
  • 23. Conseqüência Passou a fase romântica de desenvolvimento de jogos!!! É preciso Muito investimento Muita gente Metodologia e qualidade de software
  • 24. Desenvolvimento de jogos: anos 80 Receita básica Encontre 5 desenvolvedores (Geral, IA, Gráficos, Som,...) Eleja um hacker como líder Coloque-os numa sala pequena com alguns artistas a disposição Deixe cozinhar por 18 meses regando-os a pizza e coca-cola e... um pouco mais de cozimento, e... Voilà!
  • 25. Desenvolvimento de jogos: anos 80 Objetivos Programa rápido, pequeno e, se possível, divertido Mentalidade Pedal-to-the-Metal Assembler e o hardware: que belo par! Sem sistema operacional ou outras “facilidades” Síndrome NBH (Not Built Here) O código dos outros é mais lento, pior e não presta Pouca gente e pouco sono
  • 26. Desenvolvimento de jogos: anos 80 Cool factor Programador de jogo é um gênio e eu sou o melhor Para programar um jogo, tem de ser criativo! Plataformas ZX Spectrum, Commodore 64, Amstad 464: que uniformidade! Hex Loader: 1FE0H: CD 45 20 28 0D CD 4E => memória (convertido e montado no lápis e papel) Mais tarde: Assemblers p/ montagem e conversão
  • 27. Desenvolvimento de jogos: anos 80 Código desenvolvido na máquina alvo O assembler tomava parte da memória assim como o debugger
  • 28. Desenvolvimento de jogos: anos 90 Doom foi um boom (1993) Usou C com compilador Watcom C/C++ 10.5 Watcom + Dos4gw Rápido e 32 bits para DOS Visual C++ 1.5 ainda era lento e 16 bits Microsoft DirectX 2: API baseada na tecnologia COM (Common Object Model) Visual C++ 2.x, 32 bits, ... Visual C++ 4.x
  • 29. Como desenvolver jogos hoje? Metodologia e Equipe Consciência da importância da engenharia de software Bom desempenho de linguagens e compiladores Disponibilidade de bibliotecas para jogos Disponibilidade de aceleradores de hardware Disponibilidade de emuladores muitíssimo potentes
  • 30. Plataformas Consoles PlayStation Xbox Wii PC Online Celulares/Smartphones
  • 31. 3 Grandes Etapas 1) Game Design (projeto do jogo) Tema, backstory, ambiente, personagens, tipo de jogo, ... 1a x 3a, 3D x 2D, multi x mono-usuário, níveis, tempo real x turno,... 2) Implementação Programação (c. gráfica, IA, Rede, Prototipação,...) Arte gráfica e sonora (identidade visual, cenário, personagens, trilhas, efeitos sonoros, vídeos, ...)
  • 32. 3 Grandes Etapas 3) Testes de corretude de jogabilidade
  • 33. As 3 Completudes Completude de Conteúdo (Pré-alfa) Arte, som, mapas, textos da interface e da ajuda prontos Completude de Jogo (Alfa) Jogabilidade Completude de Código (Candidato a lançamento) Código testado e pronto para distribuição
  • 34. Game-Design Importância Unificar a visão da equipe Vender o jogo (para o publisher, time de desenvolvimento, ...) Realizar teste prévio e detectar erros (que custam 10x mais caro na fase de testes) Facilitar a introdução/remoção de novas características
  • 35. Game-Design Atividades Tratamento inicial Crítica Redação da bíblia do jogo (40-200 págs.)
  • 36. Implementação Parte Artística Textos e diálogos Arte gráfica 3D, arte gráfica 2D (texturas), Filmes Efeitos sonoros, trilha sonora e vozes Arte da “caixa” Parte computacional Computação Gráfica, Inteligência Artificial Computação Musical, Redes Algoritmos (Modelagem Física) Engenharia de Software, Compiladores
  • 37. Implementação: Arte Do story board... à arte final
  • 38. Ferramentas de Arte Virtools Dev (virtools.com) 3DS Max (discreet.com) Blender 3D
  • 39. Implementação Camadas Sistema Operacional Bibliotecas Motor Jogo Hardware (+ placas) DirectX, OpenGL,... Windows, Linux,... Unreal, Lithtech,... Ferramentas Editores de imagens 2D Modeladores 3D Processadores de sons e músicas Editores de cenários Visual C++,... Linguagem/Compilador
  • 40. Bibliotecas DirectX Ambiente Windows A mais utilizada (90 % dos jogos) Inclui várias APIs (gráficas, de vídeo, sonoras, de rede, de configuração e de tratamento de entrada) OpenGL e OpenAL Maior interoperabilidade e flexibilidade Inclui APIs gráficas e sonoras
  • 41. Motor Oferece as funcionalidades básicas necessárias porque Controla as mídias envolvidas Trata e abstrai as características de mais baixo nível Ajudam a garantir qualidade É complexo e caro Milhares de linhas de código Gráfico: Unreal (www.unreal.com): US$ 500.000,00 Alguns gratuitos (Unit 3D)
  • 42. Motor Há motores especializados IA: DirectIA (directia.com) Modelagem física: Game Dynamics SDK (havok.com) Animação de áudio: SMartTools (audioforgames.com)
  • 43. Linguagens C++ e C Assembly Java Linguagem para sistemas embarcados (J2ME, Brew, Android, iOS) Web: Flash, HTML5, JavaFX, Silverlight Ferramentas de autoria
  • 44. C++ Padrão atual para PC e alguns consoles!!! Vantagens suporta bem as técnicas de OO bibliotecas fazem muito do “trabalho sujo” Portabilidade razoável Desvantagens grande e complicada pode ser um pouco mais lenta do que C
  • 45. C Utilizada em muitos jogos Vantagens boa para programas pequenos e rápidos fácil interface com assembly bem padronizada Biblioteca Allegro Desvantagens não suporta facilmente técnicas OO Portabilidade limitada a algumas partes da linguagem
  • 46. Assembly Só utilizada em porções críticas de código Vantagens código menor e mais rápido Desvantagens difícil aprendizado difícil manutenção Sem portabilidade
  • 47. Java (J2SE) Pouquíssimos jogos comerciais Vantagens portabilidade excelente alocação de memória e garbage collector Desvantagens mais lenta do que código de máquina real ruim para baixo nível
  • 48. Dispositivos Móveis Soluções Proprietárias (C) WAP/i-Mode SMS Java 2 Micro Edition Versão reduzida de Java e de sua máquina virtual BREW Ambiente light da QUALCOMM para desenvolver em C/C++ com bibliotecas para jogos Android Plataforma proprietária - Google
  • 49. Authoring Tools HyperCard (Myst!) Prototipação rápida e muito simples mas muito limitada e de portabilidade duvidosa Director e Shockwave Flash (tendência forte) Vantagens Roda na Web, é fácil de animar e tem grande portabilidade Introdução de 3D (Director 3D) Interação possível com outras linguagens http://members.brabant.chello.nl/~a.mert/fight.swf Desvantagem: linguagem limitada e parser lento para interação com outras linguagens (flash)
  • 50. Testes Testes Alfa (testes internos) Beta (testes externos) Testes de corretude Iguais a qualquer software Testes de jogabilidade Escolha da equipe de testadores (público alvo) equipe interna, empresa especializada ou voluntários Elaboração de questionários Análise e confrontação das críticas
  • 51. Engenharia de Software Com riscos cada vez maiores, é cada vez mais necessária Como terminar no prazo e dentro do orçamento? Como organizar times de desenvolvimento com 50 pessoas? Como organizar e coordenar o seu pipeline de produção?
  • 52. Equipe Principais Business Management Game Design Programming Art (graphics) Music Support and Quality Assurance Papéis dentro de uma divisão Podem se superpor em algum momento
  • 53. Divisões e Papéis: Management & Design Software planner Detalha os requisitos técnicos e esforço esperado Trabalha com Lead architect e Game designer Lead architect Identifica os módulos do sistema a partir dos requisitos técnicos (pode se fundir com o anterior Project manager Gerencia interação entre divisões e prazos
  • 54. Divisões e Papéis: Management & Design Game designer Projeta o jogo: documento inicial e refinamentos contínuos
  • 55. Divisões e Papéis: Programming Lead programmer Detalha os módulos, cuida de prazos e divisão de tarefas Mas programa 70% do tempo (é o mais experiente) Conversa com o pessoal da gerência e design Programmer Programa seguindo as espcificações Pode ser especializado: gráficos, IA, música e rede Pode trabalhar em mais de um projeto
  • 56. Divisões e Papéis: Graphic Art Lead artist Papel semelhante ao do lead programmer: detalha, atribui, faz ponte e ... cria Artist Semelhante ao programador Pode ser especializado: 3D, 2D, cenário, box, ... Vídeo Pode trabalhar em mais de um projeto
  • 57. Divisões e Papéis: Music and Others Musician Cria as trilhas sonoras Se forem interativas, requer maior conversa com a equipe Sound Effects technicians Cria efeitos sonoros conforme especificação do design Others Motion capture
  • 58. Divisões e Papéis: Support and Quality Assurance QA lead Supervisiona a divisão e conversa com o project manager QA technician Testa todos os caminhos de um módulo em busca de bugs 2 tipos de teste: black-box and clear-box testing
  • 59. Divisões e Papéis: Support and Quality Assurance Playtester Testa a jogabilidade Possibilidades de contratação staff da casa, estudantes secundaristas, agência de teste, beta teste público Support technician
  • 60. Artistas X Engenheiros de SW Plataforma PC e Consoles Aprox. 60% de artistas (roteiro, gráficos, sons) Game Boy Aprox. 50% de artistas Celular Aprox. 40% de artistas
  • 61. Estudo de caso 1: Rage of Mages II (63 pessoas) Gerência (8) Produtor geral, Produtor executivo, Produtor associado, Gerente de Produção, Gerência de Qualidade, Publicidade e vendas (3). Game designer (2). Projetistas das missões (7), Programação (9) Chefe de programação, Programadores do cliente (3), Programadores do servidor (3), Programadores do editor de mapas (2) Artes (22) Chefe de artes, Layout e animação, Arte 2D (2), Arte 3D, animação (3), Layout do manual (2) Escritor, Textos/falas do jogo (2), Tradutores (2), Textos do manual (2) Músico, Efeitos sonoros, Editores de áudio(3), Testes e outros (24) Equipe de teste de qualidade (6), Equipe de teste (12), Suporte técnico (3), Manual (3)
  • 62. Estudo de caso 2: StarCraft (228 pessoas) Gerência (53) Produtor executivo, Produtores (3), prod. associados (2), diretor de operações, administrador de escritório, diretor executivo, produtures e relações públicas (2), business (2), ass. Jurídica (4), marketing (8), vendas (9), hosts (4), outros (12) Senior designers (2), Editor de campanhas Programação (16) Chefe de programação, program. (8), Program. IA (3), Program. Net (3), Instalador, Especialista de hardware Artes (108) Diretor de artes, artework 3D (8), artwork (13), artistas técnicos (3), scenario Design e layout (8), diretor de filme, artistas cinema (16), engenheiro de vídeo, storyboard (8), música (5), efeitos sonoros (5), audio maker (2), engenheiro de áudio, produtor de voz, vozes (21), scritp story (2), strike (9), help design (3), Testes (51) QA manager, testador líder e assistente (2), manuais (14), box (7), diretor de suporte, líder do suporte, QA analistas (9), Testadores (16)
  • 63. Desenvolvimento de Jogos Fique ligado! É praticamente impossível se fazer um mega-hit de primeira Os grandes estúdios de jogos começaram pequenos e aumentaram com o tempo Break-out, Pac-man, Super Mario A maior parte do aprendizado para desenvolver jogos é adquirido por experiência É possível usar ferramentas (principalmente “game engines”) desenvolvidas por terceiros
  • 64. Breakout Elementos comuns a todos os jogos (loop básico) lê entrada processa entrada atualiza os elementos do jogo verifica por condições de vitória/derrota Outras características detecção de colisões modelo físico (reflexão da bola) layout de níveis gerenciamento de recursos (mapas, níveis) sons
  • 65. Pac-Man Próximo passo: IA táticas inimigas um fantasma persegue você outro tenta interceptar o seu movimento enquanto você foge do primeiro outro vigia o túnel pra evitar a sua fuga o último ronda a área que você precisa visitar pra terminar a fase Maior Complexidade mapas, sons
  • 66. Super Mario Maior complexidade: gráfica (scrolling) física (pulos, tiros) dos inimigos (mais IA, mais controle) de níveis (editor de níveis)
  • 67. Bibliografia História dos vídeo games http://www.outerspace.com.br/retrospace/ Prof. Geber Ramalho (UFPe) Transparências Outras Game Architecture and Design, A. Rollings e D. Morris; Coriolis, 2000 Gamasutra, http://www.gamasutra.com Game Developers Magazine, http://www.gdmag.com Critical Path Analysis and Scheduling for Game Development , Jack Hoxley, www.gamedev.net/reference/articles/article1440.asp
  • 68. Desenvolvimento de Jogos – Mercado de Jogos – Fábio Moura fabio.mpereira@uesb.edu.br