Anda di halaman 1dari 19

INSTITUTO SUPERIOR DOCTUM IPATINGA

GABRIEL VITOR MEIROS OLIVEIRA


LUIZ HENRIQUE FIGUEIREDO
WALLACE SANTANA MIRANDO

DESENVOLVIMENTO DE JOGOS UTILIZANDO UNITY 2D

Ipatinga
2018
GABRIEL VITOR MEIROS OLIVEIRA
LUIZ HENRIQUE FIGUEIREDO
WALLACE SANTANA MIRANDO

DESENVOLVIMENTO DE JOGOS UTILIZANDO UNITY 2D

Projeto de Conclusão de Curso apresentado à


disciplina de Trabalho de Conclusão de Curso I,
Curso de Sistemas de Informação do Instituído
Doctum de Ipatinga, como requisito parcial para
aprovação na disciplina Trabalho de Conclusão de
Curso I.

Área de Concentração: Programação de


Computadores jogos digitais.

Prof.(a) Orientador(a): Msc. Giovani Scarabelli


Silva.

Ipatinga
2018
RESUMO

Essa pesquisa tem como objetivo desenvolver uma versão demostrativa de um jogo 2D, o jogo
será do gênero partida, que resulta em dois jogadores, controlados pela CPU(Central
Processing Unit) através de uma Inteligência Artificial. Será demostrado o processo da criação
do jogo tanto foco nos Sprites e na Programação junto com Inteligência Artificial. O
desenvolvimento será divido em duas etapas, na primeira etapa envolve quais Sprites serão
utilizados na criação do cenário, personagens e visuais para o jogo. Na etapa da programação
será utilizada a linguaguem Csharp e uma documentação apresentando no final um jogo
completamente jogavel, é nessa etapa também que é implementada a Inteligência Arficial para
que se possa ter o objetivo que foi proposto. A pesquisa também abordará como a tecnologia
era vista ao passar dos anos nos jogos para se ter o resultado que se tem atualmente e quais
as mudanças que isso trouxe no desenvolvimentos de jogos.

Palavras-chave: Programação. Inteligência Artificial. Jogo.


LISTA DE ABREVIATURAS E SIGLAS

CPU Unidade Central de Processamento


EGM ElectronicGamingMonthly
IA Inteligência Artificial
2D Duas dimensões
3D Três dimensões
SUMARIO

1 TEMA .................................................................................................................................... 6

2 PROBLEMA .......................................................................................................................... 7

3 HIPÓTESES .......................................................................................................................... 8

4 OJETIVOS............................................................................................................................. 9

4.1 Objetivo Geral ............................................................................................................... 9

4.2 Objetivos Específicos .................................................................................................... 9

5 JUSTIFICATIVA .................................................................................................................. 10

6 METODOLOGIA .................................................................................................................. 11

6.1 METODOLOGIA DE DESENVOLVIMENTO DO JOGO.................................................. 11

7 LEVANTOMENTO BIBLIOGRÁFICO .................................................................................. 13

7.1 Inteligência Artificial em Jogos ................................................................................. 16

7.2 Aplicação da Inteligência Artificial em Jogos Eletrônicos ...................................... 16

8 CRONOGRAMA .................................................................................................................. 18

9 REFERÊNCIAS ................................................................................................................... 19
6

1 TEMA

Nos últimos anos os jogos tiveram uma evolução em grande escala. Jogos de simuladores
virtuais, os vídeos games, fliperamas e até mesmo os computares. Eles conseguiram chegar
numa mecânica mais avançada, interativa e dinâmica graças a IA (Inteligência Artificial) a
tecnologia mostra atualmente que é indispensável se você quiser enriquecer o jogo e cativar
mais usuários. Esse projeto consiste em desenvolver um jogo 2D usando uma IA e mostrando
todas as etapas de desenvolvimento de um jogo 2D.
7

2 PROBLEMA

A IA de fato é um ramo da ciência da computação muito utilizada em criação de jogos seja ele
2D ou 3D. O que leva as grandes empresas em desenvolvimento de jogos como por exemplo a
Nintendo e Sony fazer uso da Inteligência Artificial em seus jogos e a possibilidade de atrair
muitos usuários. Então isso nos leva a pensar em um problema que pode ser formulado com a
seguinte pergunta. Quais os principais fatores que levam o uso da Inteligência Artificial em
jogos 2D?
8

3 HIPÓTESES

Utilizando a IA em jogos a interação com o jogador é muito mais interessante, ela aumenta a
interação com o jogador, Enriquecendo o jogo, deixando-o jogo mais desafiador para o jogador,
passa uma sensação para o usuário como se a máquina estivesse pensando e se
comportando como um ser humano e muitas vezes pode aumentar os conhecimentos em
programação do programador porque quando se faz o uso da ferramenta a lógica é mais
complexa para se chegar em uma solução, um jogo simples de jogar porém complexo faz uso
da IA o xadrez, sendo um marco histórico na área.
9

4 OJETIVOS

4.1 Objetivo Geral

• O objetivo desse trabalho é desenvolver uma versão demonstrativa de um jogo 2D, que
utiliza a Inteligência Artificial.

4.2 Objetivos Específicos

Dentre os objetivos específicos pode se destacar:

• Demonstrar o processo de criação de um jogo eletrônico 2D.


• Abordar o papel da IA no desenvolvimento do jogo.
• Mostrar que é possível desenvolver um jogo sem muitos recursos.
10

5 JUSTIFICATIVA

Vivemos em uma Era onde os games se tornaram mais atrativos por causa da IA, até mesmo
simples jogos, como dama e xadrez já usam desse recurso, deixando-o mais desafiador para o
jogador, e o uso da IA tem uma forte presença na maioria dos jogos eletrônicos permitindo que
a interação seja mais dinâmica, passando ao jogador a sensação de que a máquina realmente
está pensando e se comportando como um ser humano. É notado que trabalhar com essa
tecnologia, o aumento de conhecimento em programação, pelo fato de um jogo que usa desse
recurso tem uma complexidade maior.
11

6 METODOLOGIA

Os instrumentos de coleta usado para pesquisa foram, Artigos, sites e livros. Essa pesquisa
não fará uso das técnicas quantitativas ou qualitativas.

Pesquisa Bibliográfica: os conceitos analisados “Quais principais fatores que levam o uso da
Inteligência Artificial em jogos”, “A Inteligência Artificial em jogos” e “Como Inteligência Artificial
foi aplicada nos jogos com passar do tempo”. Os principais autores que contribuíram com o
trabalho foram: Kent (2001), Kushne (2003), Schwab (2004), Tozour (2002), Buckland(2005) e
Bourg (2004);

De natureza Aplicada e Exploratória que tem o intuito de investigar a Inteligência Artificial em


jogos, procurando entender como funciona os conceitos e logo depois fazer uma aplicação
pratica da pesquisa.

6.1 METODOLOGIA DE DESENVOLVIMENTO DO JOGO

O Processo de desenvolvimento do jogo será divido em duas etapas:

• Sprites
• Programação

Antes de começar a programar é preciso definir quais Spritesserão usados, os Sprites são as
artes prontas, cenário, personagens, cenários, inimigos e etc. o jogo não focará no Game
Design por se tratar de um jogo 2D o desenvolvimento terá mais foco na programação do que
no Game Design.

Foi estabelecido que o jogo será no estilo partida, onde haverá um jogador que irá jogar contra
a CPU, se trata de um jogo onde usuário tenda vencer outro jogador e vice-versa, através de
uma partida, alguns exemplos, Futebol, Basquete, Vôlei, Tênis e etc.
12

É de classificação livre, sendo um pouco mais específico adolescentes e adultos pois trata de
jogo de desafio onde a CPU será controlada por uma Inteligência Artificial e são jogos que
atualmente são produzidos com intenção de entreter o jogador. Nessa etapa também é defino
quais cenários através dos Sprites serão usados e o gameplay dentre outras características e
ações que existirão dentro do jogo.

O jogo não terá um enredo pois esse estilo de jogo é um desafio não havendo necessidade,
apenas uma tela ao iniciar o jogo. Os personagens serão somente dois jogadores o usuário e a
CPU, o que será feito é a implementação do controle do jogador para que ele possa ter a
capacidade de jogar contra a CPU.

Na etapa de programação, toda mecânica presente no jogo utilizará a linguagem de


programação Csharporienta a objetos através de scripts e a IDE que vai ser utilizada para fazer
a programação é Visual Studio e a Unity 5 que é uma Game Engine essa ferramenta serve
para que programador consiga ver os resultados detalhados que estão sendo gerados na tela a
medida que se vai programando e também é onde se utilizara os Sprites.
13

7 LEVANTOMENTO BIBLIOGRÁFICO

A história do surgimento dos jogos eletrônicos é bem extensa, onde que na década de 70,
algumas pessoas e empresas deram seus primeiros passos na criação de jogos. E umas das
principais empresas da indústria era a Nintendo que começou criando cartas de baralhos Kent
2001, dando vida aos primeiros videogames 8-bit (Famicom, da Nintendo e Master System, da
SEGA), e em meados da década de 90,na área de jogos para computador surgiu o grande
lançamento e criação de empresas sendo ela a On-Line Systems (atual Sierra Online) a
pioneira em desenvolvimento de jogos para computador Demaria 2004.

O grande marco para história de jogos de computador, foi o lançamento Wolfstein 3D pelo id
Software em 1991, que era um jogo tiro de primeira pessoa e um dos gêneros de jogos mais
popular entre os jogadores. Kushner2003. E no final da década de 90 a Nintendo e Sony
lançaram seus novos vídeos games 128-bit (PlayStation 2 e GameCube) a Microsoft também
entrou no mercado da Indústria de jogos.

O que é visto atualmente a atenção está voltada para jogos online multiplayer massivos
(centenas a milhares de pessoas jogando ao mesmo tempo num mundo virtual via internet), e
aos vídeos games portáteis Sony PSP e Nintendo DS (onde umas telas sensíveis ao toque
como em um PDA’s) egm 2004.

O grande fato para jogos terem conseguido atingir essa evolução foi o uso da IA (Inteligência
Artificial), Segundo Rich (1988, p.1), os primeiros problemas da IA a serem estudados foram,
problemas de jogos e provas de teoremas.

A IA e os jogos eletrônicos sempre foram relacionados, alguns dos


primeiros problemas da IA a serem estudados foram problemas de jogos
e provas de teoremas. No início dos anos 60, Arthur Samuel obteve êxito
na criação do primeiro programa operacional significativo de jogos. O
programa jogava damas, e além de simples jogar ele aprendia com seus
próprios erros e melhorava seu desempenho. (Rehm et al., 2007, p. 1)
14

A IA em jogos contribui no seu processo de desenvolvimento porque ela sempre procura a


melhor solução para vencer o jogador.

As grandes dificuldades da IA que no início do seusurgimentonos jogos a tecnologia não era


considerada um estudo ou uma pesquisa no meio acadêmico onde era considerado por
somente uma “programação de jogabilidade”, pois não havia nada de inteligente nos
comportamentos mostrados pela a máquina, Schwab 2004.A Quadro 1 contém informações de
como IA foi utilizada em jogos com passar do tempo.

Quadro 1: Linha do tempo da IA em jogos


Fonte: (SCHWAB, 2004)
Ano Descrição IA utilizada
1962 Primeiro jogo de Nenhuma
computador, Spacewar, para
2 jogadores
1974 Jogadores tinham que atirar Padrões de movimento
em alvos móveis em Pursuit
e Qwak.
1993 Doom é lançado como Máquina de estados
primeiro jogo de tiro em
primeira pessoa.
1996 BattleCruiser: 3000AD é Redes neurais
publicado como o primeiro
jogo a utilizar redes neurais
em um jogo comercial
2001 O jogo Black & White é alvo Diversos
da mídia a respeito de como
as criaturas do jogo
aprendem com as decisões
feitas pelo jogador. Utiliza
redes neurais, reinforcement
e observationallearning.
15

Mas em 1991 houve o surgimento de um jogo de estratégia chamado (Civilization) os jogos de


estratégia são considerados os primeiros percussores da IA em jogos desse tipo de gênero a
máquina exigia um bom controle da IA pois requeria do computador um controle de unidades
(grupo de personagens) através de estratégias e táticas muitos complexas.

Outra extensão desse gênero são jogos de estratégia em tempos real ao contrário de outros
jogos onde as ações acontecem emturnos, para esse gênero de jogo ele procura realizar buscas
de caminhos (pathfinding) para centenas unidades em tempo real.

E o famoso simulador o The Sims, onde o jogador “vive” uma vida em mundo virtual, tendo
interação com inúmeros personagens controlados pela máquina como mostra na Figura 1
abaixo:

Figura 1 - Tela do Jogo The Sims

Fonte: (GameSpew, 2018, p.1)

Existem duas divisões da IA, IA acadêmica e a de jogos, a acadêmica tem o objetivo de recriar
a inteligência humana desenvolvendo técnicas de software e agentes inteligentes Schwab 2004
apud Kishimoto 2004. E a para jogos de acordo com Tozour 2002, preocupa-se como o
sistema age, não como pensa, a importância dela está nos resultados, com intuito de
proporcionar diversão e jogabilidade, outro fator que a ferramenta também contribui é para
jogos educativos, fazendo que o jogo perceba as dificuldades do usuário e focando os
problemas nessas dificuldades.
16

Conforme foi visto através dos autores alguns afirmaram durante muito tempo que os jogos não
usavam uma Inteligência Artificial e nem poderiam ser considerados estudos científicos
Schwab 2004, mas o que podemos ver aos longos dos anos essa ideia foi confrontada através
de estudos e práticas da tecnologia.

7.1 Inteligência Artificial em Jogos

A Inteligência Artificial em jogos é definida como Game Al, termos que ter em mente o qual
abrangente é sua aplicação, porque todas ações tomadas pelo computador dentro de jogo
podem ser considerado uma IA de um jogo, deste de simples controles de movimento de um
NPC (non-player character), algoritmos mais complexos e decisões tomados pelo o jogador de
acordo com as ações feita pelo jogador é considerada uma Game AI Buckland 2005.

Nem sempre uma IA pode ser tão clara no seu objetivo, por exemplo o desenvolvedor pode
estar programando quais ações o inimigo tomará ao lutar com o herói em um ambiente
desconhecido isso teve ser mostrado pela IA.

E mesmo que o objetivo do programador for desenvolver ações complexas que exijam mais
raciocino do inimigo como por exemplo ele dar tiros certeiros no jogo (conhecido como Head
Shot), não precisam ser realmente inteligentes, o que se espera é que o personagem tome
uma ação que se pareça inteligente, já é o suficiente, Bourg 2004.

7.2 Aplicação da Inteligência Artificial em Jogos Eletrônicos

As técnicas de aplicação da inteligência artificial podem ser classificadas como determinísticas,


que é quando o comportamento e o resultado já são esperados, com padrão pré-definido, são
mais rápidas para desenvolver, e mais fáceis para depurar, entender e testar, alem de
necessitar de poucos recursos de processamento, e a não determinística é o oposto, tem foco
na incerteza, onde os comportamento da máquina não são previsíveis , criando diversas
possibilidades, exige mais processamento, e algoritmos mais complexos, normalmente são
mais complicados para entender, e ainda existe uma grande preocupação dos
17

desenvolvedores para que as possíveis ações que o computador tome estejam dentro do jogo
Bourg 2004.

Um exemplo da técnica determinística é o jogo de xadrez, onde o computador possui “estilos”


de jogadas limitados, as primeiras vezes que o jogador enfrentar a maquina em uma partida
pode até perder, mas com o tempo, rapidamente o jogador perceberá que o computador toma
sempre as mesmas ações, e então, acaba ficando fácil vencê-lo Bourg 2004.

E um exemplo da técnica não determinística é um jogo de Futebol, em jogo de futebol o


computador consegue se armar contra o jogador, se adaptando ao estilo de jogo dele,
procurando a melhor maneira para vencê-lo, ficando difícil de prever quais ações a máquina irá
tomar, abrindo um leque de infinitas possibilidades dentro do jogo Bourg 2004.
18

8 CRONOGRAMA

CRONOGRAMA DAS ATIVIDADES


ID Atividade Quantidade Programada
Fev Mar Abr Mai Jun Jul Ago Set Out Nov Dez
01 Inicialização do Projeto X
02 Analise e Interpretação X X
03 Objetivos X
04 Levantamento Bibliográfico X X

05 Revisão da Primeira Parte do X


Projeto
06 Design do Projeto X

07 Programação do Jogo X X X

08 Implementação da Inteligência X X
Artificial
09 Revisão da Segunda Parte do X
Projeto
10 Entrega do Projeto X

Tabela 1 – Tabela de Cronograma


Autor(es): Gabriel Vitor, Luiz Henrique, Wallace Santana
19

9 REFERÊNCIAS

BOURG, D. GLEEN, S. AI for Game Developers. Sebastopol: O’Reilly Media, Inc. 2004.
Led. 400p.

BUCKLAND, M. Programming Game AI by Example. Jones & Bartlett, 2005. Led. 500p.

CONRAD. PSP vs. DS. Electronic Gaming Monthly Brasil. Electronic Gaming Monthly, p. 52-
58, 2004.

DEMARIA RUSEL, JOHNNY L. WILSON. High Score!: The Illustrated History of Electronic
Games, Second Edition. Emeryville: McGraw-Hill Osborne Medi, 2004.

KEN, S. L. The Ultimate History of Video Games: From Pong to Pokemon and Beyond - The
Story Behind the Craze That Touched Our Lives and Changed the World. New York: Three
Rivers Press, 2001.

KUSHNER, D. Masters of Doom: How Two Guys Created an Empire and Transformed Pop
Culture. New York: Random House Trade, 2004.

RICH, E. Inteligência Artificial. São Paulo: McGraw-Hill, 1998.

SCHWAB, B. AI game engine programming.Hingham: Charles River Media, 2004.

TOZOUR, P. The Evolution of Game AI Game Programming Wisdom.Hingham: Charles


River Media, 2002.

SITE GAMESPEW.COM, 2018. The Sims 2-min. 2016. Disponível em:


https://www.gamespew.com/2016/08/games-changed-lives-sims/the-sims-2-min/ Acesso em:
18/06/2018.

Anda mungkin juga menyukai