Escolar Documentos
Profissional Documentos
Cultura Documentos
FORTALEZA
2013
VINICIUS NOGUEIRA MOTA DA SILVA
FORTALEZA
2013
Dados Internacionais de Catalogação na Publicação
Universidade Federal do Ceará
Biblioteca de Ciências e Tecnologia
CDD 006
VINICIUS NOGUEIRA MOTA DA SILVA
BANCA EXAMINADORA
________________________________________
Prof. George Allan Menezes Gomes
Universidade Federal do Ceará (UFC)
_________________________________________
Prof. Antonio José Melo Leite Junior
Universidade Federal do Ceará (UFC)
_________________________________________
Prof. Liandro Roger Memória Machado
Universidade Federal do Ceará (UFC)
A Deus.
AGRADECIMENTO
A toda a primeira turma do curso de Sistemas e Mídias Digitais, foi um orgulho fazer
parte dessa turma.
Por fim, meu agradecimento à Caroline, que foi minha parceira durante todo o curso e
inclusive no desenvolvimento do jogo que resultou desse relatório.
“A melhor maneira de ter boas ideias é ter
muitas ideias.”
Linus Pauling
RESUMO
O mercado de jogos é um dos mais lucrativos atualmente e está presente na vida das pessoas
de diversas maneiras, alguns jogam para se divertir e passar o tempo, outros utilizam jogos
como treinamento de funcionários e também existem jogadores que trabalham jogando
videogames. Muitas pessoas querem desenvolver jogos, mas desconhecem o processo de
criação de um jogo eletrônico, além dos elementos envolvidos nesse processo. Existem
diversas ferramentas para criação de jogos e este relatório técnico tem o objetivo de levantar
diversas informações sobre motores gráficos e motores de jogos, relatar suas funcionalidades
e apontar suas vantagens e desvantagens com relação a diversos aspectos do desenvolvimento
de jogos, como prazos, tamanho da equipe, custo, complexidade do jogo, entre outros. A
partir desta análise, utilizar a ferramenta mais adequada para o desenvolvimento do jogo
Policia e Ladrão e mostrar as etapas que foram seguidas pela equipe para a conclusão deste
projeto.
The game market is one of the most profitable nowadays and is currently present at people’s
lives in many ways. Some people play to have fun, others use games for professional training,
like serious games, and there are also players who work playing games. Many people want to
develop games but are unaware of the intricacies of how to create an electronic game, along
with many elements involved in this process. There are several tools to create games and this
technical work aims to raise a lot of information about graphic engines and game engines,
report their features, and point out their advantages and disadvantages regarding to various
aspects of game development, such as time limits, size staff, cost, complexity of the game,
among others. From this analysis, using the most appropriate tool for the development of the
game "Policia e Ladrão" and show the steps that were followed by the team to complete this
project.
1 INTRODUÇÃO ................................................................................................ 13
1.1 Objetivos ........................................................................................................... 14
1.2 Trabalhos relacionados .................................................................................... 14
1.3 Estrutura do trabalho ...................................................................................... 16
2 MOTORES GRÁFICOS ................................................................................. 17
2.1 Estrutura dos motores gráficos ....................................................................... 17
2.1.1 Núcleo ................................................................................................................ 19
2.1.2 Subsistemas ....................................................................................................... 19
2.1.3 Carregamento de Elementos do Mundo Virtual ........................................... 20
2.2 Exemplos de motores gráficos ......................................................................... 21
2.2.1 3DSTATE .......................................................................................................... 21
2.2.2 Irrlicht ............................................................................................................... 22
2.2.3 CrystalSpace ..................................................................................................... 22
2.3 Vantagens e Desvantagens ............................................................................... 23
3 MOTORES DE JOGOS .................................................................................. 25
3.1 Estrutura dos motores de jogos ...................................................................... 25
3.1.1 Motor de Física ................................................................................................. 26
3.1.2 Sistema de Partículas ....................................................................................... 27
3.1.3 Inteligência Artificial ....................................................................................... 28
3.1.4 Renderização .................................................................................................... 29
3.2 Exemplos de motores de jogos ........................................................................ 29
3.2.1 Unreal Engine 4 ................................................................................................ 29
3.2.2 CryEngine3 ....................................................................................................... 30
3.2.3 Frostbite 3 ......................................................................................................... 31
3.2.4 Unity 4 ............................................................................................................... 31
3.3 Vantagens e Desvantagens ............................................................................... 32
4 PROCESSO DE DESENVOLVIMENTO DE JOGOS ................................ 34
4.1 Conceito Inicial ................................................................................................. 34
4.2 Análise ............................................................................................................... 35
4.3 Projeto ............................................................................................................... 35
4.4 Cronograma ...................................................................................................... 36
4.5 Orçamento ........................................................................................................ 36
4.6 Implementação ................................................................................................. 37
4.7 Testes ................................................................................................................. 37
5 ESTUDO DE CASO: JOGO POLÍCIA E LADRÃO ................................... 39
5.1 Descrição do Jogo ............................................................................................. 39
5.2 Ideia Principal .................................................................................................. 40
5.3 Elementos Visuais ............................................................................................ 40
5.3.1 Personagens ...................................................................................................... 41
5.3.2 Cenário .............................................................................................................. 42
5.4 Programando com o Unity 3D ........................................................................ 42
5.5 Dificuldades ...................................................................................................... 47
6 CONCLUSÃO E TRABALHOS FUTUROS ................................................ 48
REFERÊNCIAS ............................................................................................... 49
ANEXO A - DOCUMENTO DE GAME DESIGN........................................ 53
13
1 INTRODUÇÃO
A indústria de jogos está cada vez mais amostra. E além do setor industrial, os
jogos vem se destacando no meio acadêmico. Nusowitz (2008) afirma que:
Independente de qual foi o primeiro, esses dois foram o ponto de partida para que
outros se interessassem em se aventurar no ramo de desenvolvimento de jogos eletrônicos,
que era inexplorado até aquele momento e hoje é uma das áreas de entretenimento mais
importantes e lucrativas do mundo.
Segundo Brito (2011), "O mercado de jogos é conhecido hoje por ser ainda maior
que a indústria do cinema com toda a sua pompa e investimentos pesados em marketing." Isso
faz com que cada vez mais pessoas queiram criar jogos. A indústria dos jogos eletrônicos, que
14
1.1 Objetivos
O tema jogos eletrônicos fica mais em evidência a cada dia que passa, tanto no
cenário acadêmico, quanto na indústria, logo a quantidade de pesquisas nessa área é
considerável. No trabalho de Macedo (2010) é detalhado o processo da construção de um jogo
3D de acordo com os principais passos da engenharia de software, detalhando as fases e
ferramentas utilizadas no processo, desde o conceito até a finalização do jogo "FunCopter".
Outro trabalho que também segue está linha é o de Valente (2012), que retrata como funciona
o mercado brasileiro de jogos, além de mostrar como jogos são desenvolvidos, os
profissionais envolvidos no processo e os passos que foram utilizados na construção do jogo
"Xadrez sem limites". Lemes (2009), descreve de forma detalhada como ocorre o processo
criativo na criação de um game, organizando a forma como devem ser pensados a
argumentação narrativa, a organização de ideias, a mecânica de jogo, gênero e personagens.
Diversos trabalhos também discutem como as ferramentas de desenvolvimento de
jogos são importantes e auxiliam os desenvolvedores, porém é necessário dominar tais
ferramentas para tirar o máximo de proveito de suas funcionalidades. Os motores gráficos são
15
1
É o processo pelo qual pode-se obter o produto final de um processamento digital qualquer.
2
Simulação física, que envolve algoritmos de verificação de colisões, como a intersecção de dois corpos sólidos.
3
Interface de Programação de Aplicativos é um conjunto de rotinas e padrões utilizados para o desenvolvimento
de aplicações sem a necessidade de um envolvimento detalhado da implementação do software.
16
2 MOTORES GRÁFICOS
2.1.1 Núcleo
2.1.2 Subsistemas
sistemas de coordenadas através de matrizes. Para tanto, é necessário que esse subsistema se
atenha a tecnologias especificas, como técnicas para a eliminação de faces ocultas e
renderização em baixo nível através de uma API 3D. (Maia, 2005)
Cada subsistema fica responsável por um aspecto específico da aplicação e
também pela gerência desse aspecto em tempo de execução. Para cada subsistema de um
motor gráfico existe uma variedade de técnicas, algoritmos e bibliotecas adequados à sua
construção.
Segundo Lemes (2009), "O motor gráfico sozinho, não é suficiente para o
desenvolvimento de um jogo, são necessárias diversas ferramentas adicionais para o
desenvolvimento e profissionais que entendam cada uma dessas ferramentas."
Em jogos tridimensionais, diversas mídias são manipuladas em tempo de
execução, por exemplo, modelos tridimensionais, animações, sons e imagens. Alguns
softwares adicionais são necessários para a criação dessas mídias, como por exemplo o
Autodesk Maya, Blender, Adobe Photoshop, entre outros.
Antes de integrarem a aplicação, as mídias utilizadas no mundo virtual devem ser
carregadas a partir algum formato de arquivo, seja proprietário do motor gráfico ou nativo das
ferramentas de edição utilizadas durante a confecção dessas mídias. Uma vez que uma
determinada mídia esteja armazenada nas estruturas de dados adequadas, o núcleo ou um
21
subsistema do motor gráfico é capaz de manipular essa mídia de acordo com as necessidades
da aplicação. Uma imagem, por exemplo, pode ser carregada na memoria principal,
possibilitando sua manipulação através de um subsistema de processamento digital de
imagens para a criação de uma textura bidimensional. (Maia, 2005)
2.2.1 3DSTATE
2.2.2 Irrlicht
2.2.3 CrystalSpace
2.3.1 Vantagens
Um motor gráfico auxilia na abstração, para que o desenvolvedor não tenha que se
preocupar com detalhes de baixo nível. Ao desenvolver um jogo utilizando um motor gráfico,
torna-se apenas necessário saber trabalhar com o motor, que requer um conhecimento bastante
extenso, porém dá todo o controle que o desenvolvedor.
2.3.2 Desvantagens
3 MOTORES DE JOGOS
4
Tiro em primeira pessoa é um gênero de jogo de computador e videogame, no qual se enxerga apenas o ponto
de vista do protagonista.
26
A física dos jogos da atualidade está cada vez mais realista, principalmente em
jogos de ação, com explosões, objetos em alta velocidade e colisões de todos os tipos. Estes
efeitos são produzidos com a ajuda dos motores de física, que são aplicações dedicadas a
realizar a simulação física dos jogos. (Wilson, 2006)
O motor de física faz o possível para simular as leis de Newton, que utilizam
variáveis como a gravidade, massa, atrito, elasticidade, fricção, entre outros. (Silva, 2002)
5
Personagem não jogavel é um personagem de qualquer jogo eletrônico que não pode ser controlado por um
jogador mas se envolve de alguma forma no enredo do jogo.
29
3.1.4 Renderização
3.2.2 CryEngine3
3.2.3 Frostbite 3
3.2.4 Unity 4
3.3.1 Vantagens
O motor de jogos pode facilitar a criação de um jogo, pois conta com diversas
ferramentas visuais que facilitam e agilizam o desenvolvimento. Além de ser facilmente
portado para diversas plataformas, com pouca ou nenhuma modificação de código ou dos
outros componentes do jogo.
Existem muitas assets já desenvolvidos para os motores de jogos, com muitas
funcionalidades já implementadas, fazendo com que o desenvolvimento por pequenas equipes
seja otimizado. Além de bastante material de aprendizado para a utilização dos motoress de
jogos, ainda existe uma comunidade extremamente ativa que é capaz de solucionar diversas
dúvidas que desenvolvedores mais inexperientes tenham.
O desenvolvedor não precisa se preocupar tanto com os diferentes tipo de
hardwares em que os jogos irão funcionar, pois os motores já foram testados exaustivamente
para que funcione corretamente em diversas plataformas. Além de desenvolver jogos
utilizando o motor, o desenvolvedor pode criar seus próprios assets, para utilizar em seus
projetos ou até mesmo comercializa-los em diferentes lojas especializadas para os motores.
33
3.3.2 Desvantagens
Como a maioria dos motores de jogos não é open source, se houver algum bug no
motor, o desenvolvedor terá que esperar por uma atualização de correção. Para obter todas as
funcionalidades dos melhores motores de jogos do mercado, é necessário pagar as licenças
que geralmente possuem valores bem altos.Além disso, os motores não são projetados para
um jogo específico, então o jogo desenvolvido com a utilização de um motor de jogos, pode
não ser tão eficiente quanto um jogo que teve um motor escrito especificamente para o seu
funcionamento.
34
O conceito inicial está relacionado com a ideia do jogo. Ideias para um jogo,
podem vir de diversos lugares, podem ser originais ou podem ser ideias derivadas de jogos já
existentes, geralmente são feitos alguns concept arts para que o restante da equipe tenha uma
visão geral de como será o jogo. Na figura 17 é possível ver um exemplo de concept art,
utilizado em um comic book, que poderia ser perfeitamente utilizado em um jogo.
4.2 Análise
4.3 Projeto
possam utilizá-las e desenvolverem seus próprios jogos. Um exemplo disso é o motor Unreal
Engine, desenvolvido pela Epic Games durante o desenvolvimento do jogo Unreal, que hoje,
é mundialmente uma das mais utilizadas no desenvolvimento de jogos. (Epic Games, 2013)
4.4 Cronograma
4.5 Orçamento
• O custo está relacionado ao valor que será gasto para adquirir os recursos
necessários;
• O tempo está relacionado ao tempo necessário para o projeto ser realizado por
completo;
• A qualidade está relacionada ao número de funcionalidades do jogo, aos testes
realizados e aceitação do público.
4.6 Implementação
4.7 Testes
Como nos softwares tradicionais, os jogos não podem entrar em circulação com
erro ou falhas, por isso a etapa de testes é extremamente importante. Durante a fase de testes
se algum erro for encontrado, o jogo deverá voltar a etapa de implementação para que o erro
seja corrigido e então passar para a fase de testes novamente.
Nos primeiros jogos eletrônicos desenvolvidos, era inaceitável que o jogo viesse
com algum erro ou falha (também conhecidos como bugs), pois os jogos, geralmente
38
O jogo Policia e Ladrão mostra o duelo entre dois personagens. Um deles é Hank,
um policial destemido que preza pela justiça e tenta manter a cidade segura a todo custo,
porém existe um ladrão chamado Jesse que tem uma destreza fora do comum de escalar e
fugir por entre os prédios que não dá sossego a Hank.
O jogo é do tipo runner lateral com personagens e parte do cenário em 3D e uma
outra parte do cenário em 2D. O jogo deve ser jogado por duas pessoas, cada uma controlando
um personagem. Cada jogador deve desviar dos obstáculos e utilizará habilidades especiais
para se defender ou atrapalhar o percurso do adversário, fazendo com que ele atinja algum
obstáculo e perca uma de suas vidas, o personagem que perder todas as vidas primeiro
perderá.
Alguns jogos foram utilizados como referência para a criação deste jogo, como
por exemplo: Stylish Sprint, Subway Surfers e Agent Dash. Porém o fator de 2 jogadores faz
com que o jogo Policia e Ladrão tenha uma jogabilidade única e imprevisível, fazendo com
40
que o jogador elabore estratégias diferentes a cada partida e jogue com reflexos rápidos para
ser o vencedor.
Este jogo foi idealizado como produto a ser entregue juntamente com este
relatório técnico como resultado do trabalho de conclusão de curso. Para mais detalhes sobre
o jogo, consulte o Anexo A – Documento de Game Design.
Jogos casuais são caracterizados por possuírem comandos fáceis, além de não
precisar de muita dedicação para jogar. A ideia principal do jogo é que ele seja simples,
divertido, com partidas rápidas e que seja possível jogar com outro jogador.
Como o jogo Polícia e Ladrão é do estilo endless runner, alguns jogos desse estilo
foram analisados, como por exemplo os jogos da figura 19, Temple Run, Jetpack Joyride e
Stylish Sprint.
Fontes: Temple Run Game (2013); HalfBrick (2013); Stylish Sprint (2013)
Juntamente com uma mecânica interessante e divertida, para que o jogo faça
algum sucesso, é necessário um visual atraente. Portanto, os elementos visuais do jogo, como
41
por exemplo, personagens, cenário, itens coletáveis, interface, entre outros, devem estar
funcionando em harmonia.
5.3.1 Personagens
O jogo Polícia e Ladrão tem dois personagens: Jesse, o ladrão (Figura 20) e Hank,
o policial (Figura 21). Não existem NPC's (personagens não jogáveis) no jogo.
A personalidade dos personagens foi passada para a textura dos mesmos. Jesse é
um ladrão que pratica pequenos roubos na cidade, ele é jovem e habilidoso, então sempre
consegue fugir pelos telhados das casas. Hank é um policial politicamente correto, está
sempre alerta para proteger sua cidade, quando vê alguem cometendo crimes, faz o possível
para impedir, porém ele não consegue perseguir os criminosos por cima das casas, mas faz o
possível para capturá-los.
5.3.2 Cenário
5.5 Dificuldades
A grande dificuldade na criação do jogo Polícia e Ladrão foi, sem dúvidas, quanto
ao tamanho da equipe. Como foi dito nos capítulos anteriores, é necessário uma equipe de
profissionais qualificados para desenvolver um jogo, cada um responsável pela sua área. Pela
limitação do tamanho da equipe, cada integrante teve que desempenhar mais de um papel,
então o trabalho foi dividido em: arte e programação.
O artista teve que trabalhar nas animações dos personagens, na modelagem do
cenário, desenvolvimento de interfaces, texturas, imagens e sons. O programador foi o
responsável pela modificação do rig dos personagens e por toda a parte de programação do
jogo, que normalmente é dividida entre diversos programadores.
O motor de jogos Unity 3D, por ser uma ferramenta gratuita para fins estudantis e
possuir um fluxo de trabalho rápido e simples, possibilitou que o trabalho fosse realizado por
apenas duas pessoas.
48
REFERÊNCIAS
ARGENTE, Rubén Talón. Motores Gráficos - Informática Gráfica. 2004. Disponível em:
http://informatica.uv.es/iiguia/IG/motores_graf.pps>. Acesso em: outubro 2013.
BATES, Bob. Game Design. 2nd. ed. Massachussetts: Thomson Course Technology, 2004.
BRITO, Allan. Blender 3D Jogos e Animações interativas. São Paulo: Novatec 2011.
LAYNE, Arnold. Battlefield 4 Levolution como elemento tático. 2013. Disponível em:
<http://portal.bf4brasil.com.br/battlefield-4-levolution-como-elemento-tatico.html>. Acesso
em: novembro 2013.
NOSOWITZ, Dan. Retromodo: Tennis for Two, the World's First Graphical Videogame.
2008. Disponível em: <http://gizmodo.com/5080541/retromodo-tennis-for-two-the-worlds-
first-graphical-videogame>. Acesso em: outubro 2013.
SCHELL, Jesse. The Art of Game Design. A book of lenses. USA: Elsevier, 2008.
SEGAL, Mark; AKELEY, Kurt. The OpenGL Graphics System: A Specification (Version
2.0 - October 22, 2004). 2004. Disponível em:
<http://www.opengl.org/documentation/specs/version2.0/glspec20.pdf>. Acesso em:
novembro 2013.
52
4.1. Apresentação
Jesse era um ladrão muito atrapalhado. Ele vivia pelas ruas de uma cidade, sempre
roubando bolsas e sacolas das pessoas. Ele só precisava de uma oportunidade. Mas, como
dito, ele era muito atrapalhado e nem sempre conseguia usufruir de seu "trabalho". Nessa
cidade, também vive Hank, um policial que gosta muito de seu emprego e que tenta todos os
dias capturar Jesse. O problema é que Jesse tem certa habilidade com subir em paredes e pular
telhados. Por isso, não basta que Hank corra atrás de Jesse. Ele precisa de algumas
habilidades especiais pra conseguir capturá-lo.
4.2. Processo
4.2.1 Ideia
Jogos como Pepsi Man, Stylish Sprint, Subway Surfers já provocaram experiências
agradáveis em diversos tipos de público alvo. Partindo de referências como estas citadas,
procuramos criar um jogo simples de plataforma, voltado principalmente para um público
jovem devido sua casualidade e diversão. O jogo foi inspirado nas possibilidades de um jogo
de plataforma, por exemplo: completar uma fase no menor tempo possível, coletar objetos
colecionáveis e utilizá-los contra o seu adversário, possilibidades de combos, etc. Vale
lembrar que por ser um jogo multiplayer, ele estimula a competição entre os jogadores.
4.2.2 Iteração
54
Após escolhida a ideia, era necessário verificar se a mesma era viável. Para isso,
algumas considerações foram levantadas a respeito do jogo:
4.3. Jogo
4.3.1 Elementos:
Mecânica:
Narrativa:
Em uma pequena cidade, morava Hank, um policial muito eficiente. Ele ja tinha
conseguido prender todos os ladrões da cidade, exceto um: Jesse. Jesse era muito sabido, ele
sempre conseguia fugir de Hank porque conseguia subir muito rápido nos telhados das casas e
fugia por cima deles. O que Hank conseguia fazer, as vezes, era recuperar as bolsas e sacolas
que Jesse deixava para trás.
Hank precisa capturar Jesse e para isso ele utilizará algumas habilidades pra conseguir
que Jesse se atrapalhe e caia dos telhados. Jesse também pode usar as mesmas habilidades
para derrubar Hank e assim, escapar mais uma vez.
Estética:
Será um jogo com visão lateral, uma mistura entre 2D e 3D. Em geral, o cenário do
jogo será uma rua - casas, prédios, telhados, calçadas. Serão dois personagens, o Policial e o
Ladrão. A rua será criada em 2d, utilizando a técnica de paraláx e os personagens serão em
3d, mas a câmera será lateral. O jogo terá o estilo cartoon em sua natureza, os personagens
terão uma proporção reduzida de aproximadamente duas cabeças e meia. As texturas do
cenário e dos personagens serão bem coloridas.
Tecnologia:
O jogo, inicialmente foi projetado para PC, pelo fato de que os dois jogadores
dividirão a tela. Os personagens utilizarão o teclado para movimentação e habilidades dos
56
personagens, além de pausar o jogo. Porém o ideal é que os jogadores utilizem joysticks, pois
irá facilitar o controle dos personagens.
4.3.2 Tema
O jogo procura imergir o jogador numa fuga emocionante, fazendo com que o jogador
se concentre ao máximo para nao errar e ao mesmo tempo utilizar todos os recursos
necessários para vencer seu adversário.
4.3.3 – Interface
Na interface interna, a tela será dividida ao meio, o Ladrão só correrá na parte superior
e o Policial apenas na parte inferior. Será uma única tela, a divisão será apenas para que o
usuário entenda seu espaço e possa visualizar seus "poderes". Como é um jogo projetado para
ser jogado com joysticks, não haverão botões na tela, todos os comandos serão via controle. O
usuário irá visualizar a quantidade de vidas que possui e também seus poderes especiais.
O jogador terá uma experiência única com a jogabilidade desse jogo, pelo fato de ter
elementos que farão com que seus reflexos sejam testados e sua capacidade de utilizar
estratégias no tempo certo serão fatores cruciais para a vitória.
Pelo fato do jogo ser multiplayer e com os jogadores compartilhando a mesma tela,
haverá uma aproximação entre as pessoas. O jogo também contará com um placar fazendo
com que a rivalidade faça com que mais de dois jogadores joguem, competindo para ver quem
tem as melhores habilidades. A diversão será garantida a todos.