Você está na página 1de 12

The Sims: Jogo Computacional como uma Ferramenta Pedaggica na Construo do Conhecimento

Matemtico
Rbia Juliana Gomes Fernandes - Guataara dos Santos Junior
Revista Eletrnica TECCEN, Vassouras, v. 5, n. 2 p. 59-70, mai./ago., 201259
Desenvolvimento de Jogos Utilizando XNA:
um Exemplo com o Jogo SpaceX
Joni Pereira de Pinho Rodrigues da Silva
Universidade Severino Sombra, CECETEN,
Curso de Sistemas de Informao
jonipinho@gmail.com
Janana Veiga
Universidade Severino Sombra, CECETEN,
Curso de Sistemas de Informao
janainavcarvalho@gmail.com
Carlos Vitor de Alencar Carvalho
Universidade Severino Sombra, Centro Universitrio de Volta
Redonda,Centro Universitrio Geraldo di Biase e FAETEC-IST,
cvitorc@gmail.com
Resumo: A rea de jogos eletrnicos tem crescido cada vez mais. Pode-
se, nos dias atuais, encontrar jogos em diversos dispositivos: computadores
pessoais, consoles domsticos e dispositivos mveis. O desenvolvimento de um
jogo no uma tarefa fcil, pois envolve diversas reas de conhecimento e
tambm diversas subreas da computao. A rea de desenvolvimento de jogos
desperta muita curiosidade e interesse em muitos programadores, entretanto a
maioria das instituies de ensino superior com cursos na rea de computao
no apresentam o foco ou disciplinas especfcas para o desenvolvimento de
jogos, principalmente em Curso de Sistemas de Informao. Esta foi uma das
motivaes para o desenvolvimento deste trabalho. Este artigo apresenta o
framework XNA e as suas principais funcionalidades para desenvolvimento de
jogos eletrnicos interativos. Como resultado e exemplifcao o artigo tambm
apresenta o desenvolvimento de um jogo 2D, chamado SpaceX.
Palavras-chave: Framework XNA. Jogos Eletrnicos.
Game Development Using XNA
Abstract: The gaming area is growing, being found today in various devices:
personal computers, consoles and mobile devices. The development of a game
is not an easy task because it involves several areas of knowledge and also
several subareas of computing. The game development area awakens a lot of
curiosity and interest in many programmers, but most institutions of higher
education courses in computing do not focus on specifc courses about game
development, especially in Information Systems Course. This was a motivation
for the development of this work. This paper presents the XNA framework and
its main features for the development of interactive electronic games. As result
and exemplifying, the article also presents the development of a 2D game, called
SpaceX.
Keywords: XNA Framework. Electronic Games.
Desenvolvimento de Jogos Utilizando XNA: um Exemplo com o Jogo SpaceX
Joni Pereira de Pinho Rodrigues da Silva - Janana Veiga - Carlos Vitor de Alencar Carvalho
Revista Eletrnica TECCEN, Vassouras, v. 5, n. 2 p. 59-70, mai./ago., 2012
60
Introduo
O avano tecnolgico e a expanso da informao disponvel tm cooperado com a
evoluo no desenvolvimento de jogos. A rea de jogos eletrnicos est crescendo cada
vez mais. Pode-se encontrar nos dias atuais em diversos dispositivos: computadores
pessoais, consoles domsticos e dispositivos mveis.
Os jogos eletrnicos tm diversos gneros: estratgia, simulao, aventura, esporte,
RPG, passatempo, educao, entre outros. Devido sua grande capacidade de alcanar
pblicos diversifcados, os jogos tornam-se em grande instrumento de entretenimento, o
que proporciona horas de diverso e desafo.
O desenvolvimento de jogos no uma tarefa trivial: requer ateno especial e diferenciada,
pois um software completo que abrange as mais diversas reas da computao como
programao, design, redes, computao grfca, inteligncia artifcial, sons entre outras.
Contudo, novas ferramentas e mtodos de desenvolvimento de jogos tm facilitado seu
desenvolvimento, por exemplo, as ferramentas Ogre3D, Unity e XNA.
Segundo Perucia (2005), o desenvolvimento de um projeto de jogo segue as regras e
parmetros de desenvolvimento de um jogo qualquer, entretanto, a grande diferena
est na fase inicial de criatividade. O ciclo de desenvolvimento de um jogo dividido
em algumas etapas como: Brainstorming, Game Design, Design Document (DD), Level
Design e Criao e Desenvolvimento. na fase de brainstorming que a ideia inicial do
jogo proposta. Nesta fase nenhuma ideia pode ser descartada.
A rea de desenvolvimento de jogos traz muitas curiosidades e desperta interesse em
muitos programadores. Este artigo tem por objetivo apresentar um resumo do framework
XNA, com mostras de suas principais funcionalidades para desenvolvimento de jogos
eletrnicos interativos, para despertar nos amantes de jogos a curiosidade de aprofundar
seus conhecimentos na construo de jogos, por hobby ou profssionalmente.
Na segunda seo so apresentados o framework XNA e as principais informaes de
sua estrutura para desenvolvimento de jogos. Na terceira seo feita uma introduo
para desenvolver o jogo bidimensional SpaceX com utilizao de Microsoft Visual C#
Express e XNA. Na seo quatro so apresentadas as consideraes fnais sobre o trabalho
e o framework XNA.
Conhecendo o Framework XNA
Microsoft XNA (sigla em ingls que signifca XNAs Not Acronymed) um framework
desenvolvido pela Microsoft em 2006 para auxiliar os desenvolvedores no processo de
criao de jogos para Windows (PC), Xbox 360 (Video game) e Zune (Media Player
Porttil).
Segundo Cawood (2007) o XNA se tornou um importante avano na programao de
jogos. Antes do XNA era muito complicado e caro para um estudante, ou desenvolvedor
independente de jogos, ter acesso a um kit de desenvolvimento de console. O XNA utiliza a
linguagem de programao C# bastante similar com as linguagens de programao C/C++
e Java, o que diminui a curva de aprendizado para desenvolvedores dessas linguagens.
Desenvolvimento de Jogos Utilizando XNA: um Exemplo com o Jogo SpaceX
Joni Pereira de Pinho Rodrigues da Silva - Janana Veiga - Carlos Vitor de Alencar Carvalho
Revista Eletrnica TECCEN, Vassouras, v. 5, n. 2 p. 59-70, mai./ago., 2012
61
Segundo Lobo (2010) o XNA uma extenso do Microsoft Visual C# Express que,
integrados, criam um ambiente para o desenvolvimento de jogos. Observe na Figura 1,
como basicamente o XNA se organiza:
A Figura 1 apresenta as tecnologias presentes na plataforma. Na primeira camada, de
cima para baixo, se posiciona o ambiente de desenvolvimento, o Microsoft Visual C#
Express, uma IDE gratuita de desenvolvimento, que utiliza a linguagem de programao
C# disponvel para download, gratuitamente.
Figura 1. Organizao do XNA (retirado de Lobo (2010), p. 4)
Na segunda camada est o framework XNA, responsvel por simplifcar o desenvolvimento
de jogos tanto para Windows quanto XBOX 360 e Zune. A utilizao de um framework faz
com que o desenvolvedor foque na lgica do jogo e tire a responsabilidade de escrever
linhas de cdigo que sero executadas em nvel de hardware. Por exemplo, quando
desenvolve jogos sem o apoio de um framework, com linguagens de programao como
C/C++, muitas vezes o desenvolvedor tem de se preocupar em implementar tcnicas de
otimizao de desempenho, de gerenciamento de memria, renderizao de grfcos entre
outras, que no fazem parte do projeto em si. Segundo Lobo (2010), o XNA composto
por quatro camadas: jogos, extenses, ncleo e plataforma (Figura 2).
Na Figura 2 importante o entendimento dos componentes: o Modelo de Aplicao e a
Content Pipeline.
O Modelo de Aplicao o responsvel por criar e gerenciar as janelas do jogo e por
executar a inicializao do DirectX. Alm disso, o responsvel por gerenciar o loop da
execuo do jogo (Figura 3).
Desenvolvimento de Jogos Utilizando XNA: um Exemplo com o Jogo SpaceX
Joni Pereira de Pinho Rodrigues da Silva - Janana Veiga - Carlos Vitor de Alencar Carvalho
Revista Eletrnica TECCEN, Vassouras, v. 5, n. 2 p. 59-70, mai./ago., 2012
62
O mtodo Initialize chamado apenas uma vez, quando o mtodo Run() (que inicia
o loop do jogo) executado. O mtodo LoadContent() responsvel por carregar os
componentes grfcos e audiovisuais, como modelos, texturas, msicas etc. O mtodo
Update responsvel por atualizar o estado dos objetos presentes no jogo. O mtodo
Draw tem como objetivo gerenciar todo o contedo grfco que ser desenhado.
O mtodo UnloadContent chama o garbage collector para forar que os objetos no mais
em uso sejam despejados.
Figura 2. Camadas do Framework XNA (adaptado de Lobo (2010), p. 5).
Jogos Extenses Ncleo Plataforma
Starter Kits
Cdigo
Contedo
Componentes
Modelo de
Aplicao
Content
Pipeline
Graphics
udio
Input
Math
Storage
Network
Direct3D
XACT
XINPUT
XCONTENT
Figura 3. Ciclo de execuo de um jogo
LoadContent
Initialize
Update
Draw
UnloadContent
Desenvolvimento de Jogos Utilizando XNA: um Exemplo com o Jogo SpaceX
Joni Pereira de Pinho Rodrigues da Silva - Janana Veiga - Carlos Vitor de Alencar Carvalho
Revista Eletrnica TECCEN, Vassouras, v. 5, n. 2 p. 59-70, mai./ago., 2012
63
O Content Pipeline o componente que fornece as ferramentas para processar todo o
contedo que far parte do jogo. Segundo Lobo (2010), a Content Pipeline organiza o
processamento do contedo de forma a simplifcar seu tratamento pelo jogo. Compreende
um nmero de passos que incluem importadores (importers) que leem o contedo da
forma original e geram um formato intermedirio, bem determinado: processadores
(processors) que geram contedo no formato pr-processado, pronto para uso. E,
fnalmente, o gerenciador de contedo (content manager), em tempo de execuo
atende s requisies do programa (Figura 4).
Figura 4. Content Pipeline do XNA (retirado de Lobo(2010), p. 21).
.X
.FBX
.TGA
Importer
Importer
Importer
Processor
Processor
Content
Compiler
Content
DOM
Content
Compiler
.XNB
.XNB
.XNB
Basicamente, o que ele faz importar os contedos, process-los, com o compilador de
contedo, e gerar um arquivo de contedo que ser utilizado pelo jogo. A Camada Ncleo
a principal do XNA Framework. Os seus componentes fornecem recursos para as mais
diversas aes do jogo. Em Graphics fcam as classes de auxlio para lidar com a forma
de como o Jogo carrega os sprites, tamanho de tela, se deve ser executado em tela cheia
ou numa janela etc. O componente Graphics ainda oferece o recurso BasicEffects, que
facilita a apresentao de objetos 3D na tela, e o SpriteBatch, para a manipulao de
grfcos 2D e partculas.
Em udio constam as classes que lidam com as msicas e efeitos sonoros do jogo digital.
Possui uma srie de funcionalidades para gerenciar a forma como o som atua dentro do
jogo. O componente de Input responsvel por toda a obteno de entrada de dados,
fornecida pelo usurio no jogo com os perifricos de entrada de dados, como mouse,
teclado etc. O componente Math oferece uma vasta gama de clculos e funes matemticas
pr-defnidas para se trabalhar com coliso, movimentao, fsica e defnio de vetores,
matrizes, planos, esferas e tudo o mais relacionado matemtica. J o componente Storage
utilizado para armazenar dados.
Desenvolvimento de Jogos Utilizando XNA: um Exemplo com o Jogo SpaceX
Joni Pereira de Pinho Rodrigues da Silva - Janana Veiga - Carlos Vitor de Alencar Carvalho
Revista Eletrnica TECCEN, Vassouras, v. 5, n. 2 p. 59-70, mai./ago., 2012
64
O componente Network tem como objetivo tornar mais fcil o desenvolvimento do jogo
para o ambiente on-line, e oferece maneiras simples de conectar o seu jogo entre XBOX
360 e PC, e conexes locais em uma LAN. Na camada plataforma esto os componentes
Direct3D, responsvel pela parte grfca; XACT, responsvel pelo udio; XINPUT,
responsvel pela entrada e sada de perifricos (teclado, mouse e outros) e XContent,
responsvel pela utilizao de objetos importados de outras ferramentas.
Desenvolvendo o SpaceX
Esta seo tem por objetivo demonstrar o desenvolvimento de um jogo em 2D. Entretanto,
antes de iniciar o desenvolvimento de qualquer jogo necessrio fazer seu planejamento.
Segundo Lobo (2010), muitos projetos falham por causa do pouco esforo nessa fase, o
que conduz a projetos sem um fm defnido, que nunca terminam ou que so fnalizados,
mas no alcanam seus objetivos.
Abordaremos o processo de criao do jogo SpaceX de forma simplifcada, mediante
apresentao das classes e mtodos criadas para o jogo.
Planejando o Jogo
Com o crescimento da indstria de jogos eletrnicos, apareceram vrios tipos de jogos que
podem ser dividido em gneros diferentes. Segundo Rollings & Morris (2000), podemos
destacar os seguintes gneros: aventura, ao, estratgia, quebra-cabea, simuladores,
brinquedo e educacional.
O jogo apresentado neste artigo se enquadra na modalidade simulador (Joni, 2012). A
ideia do jogo criar uma nave controlada pelo jogador que pode se mover livremente ao
redor da tela. O jogador dever enfrentar uma chuva de meteoros que aparecem no topo
da tela de forma randmica, e que ao passar alguns segundos, adiciona novos meteoros
na tela. O jogador capaz de disparar tiros para destruir os meteoros, porm apenas um
tiro por vez, ou seja, enquanto o tiro no estiver fora dos limites da tela ou acertar um
meteoro o jogador no pode atirar novamente. O jogador ganhar dez pontos por meteoro
destrudo. A coliso do meteoro com a nave fnaliza o jogo, e aparece uma tela que indica
esse fm.
Gerao das Classes e Criao de Mtodos
Para iniciar o processo de desenvolvimento, foi criado um novo projeto no Microsoft Visual
C# Espress Edition 2008 com o nome SpaceX. Na pasta Content do Solution Explorer
foram adicionados algumas imagens e sons que sero utilizadas no desenvolvimento do
jogo: Background.png (tela de fundo do jogo), Meteoro.png (textura do meteoro), Nave.
png (textura da nave), Tiros.png (textura do tiro), musica.mp3 (msica que vai tocar
durante a execuo do jogo), explosion.waw (msica que ser tocada quando um meteoro
colidir com um tiro ou a nave com o meteoro) e uma fonte.
No desenvolvimento do jogo foram criadas na classe Game1.cs algumas variveis para
armazenar: a textura do fundo do jogo, o tamanho da tela, a msica de fundo do jogo, o
Desenvolvimento de Jogos Utilizando XNA: um Exemplo com o Jogo SpaceX
Joni Pereira de Pinho Rodrigues da Silva - Janana Veiga - Carlos Vitor de Alencar Carvalho
Revista Eletrnica TECCEN, Vassouras, v. 5, n. 2 p. 59-70, mai./ago., 2012
65
som da coliso, o controle do fm do jogo, os tiros disparados pelo jogador, uma lista para
armazenar os tiros, a textura do tiro, uma varivel booleana para controlar apenas um tiro
por vez pelo jogador entre outras.
No mtodo LoadContent sero carregadas algumas variveis como: a varivel background,
com a imagem que foi utilizada para o fundo do jogo; a varivel TamanhoTela, com as
coordenadas do tamanho da tela; a varivel com a msica que est na pasta Content e
os parmetros para que msica toque at o jogo terminar. Este mtodo foi utilizado para
carregar valores referentes s classe Nave que foram: a textura que a nave vai possuir,
a posio inicial da nave na tela e o tamanho da imagem. No mtodo LoadContent foi
carregado ainda o som da exploso quando acontecer a coliso entre o jogador e o meteoro.
Para a classe Tiro, foi carregada no mtodo LoadContent a textura do tiro. No mtodo
LoadContent foi carregada tambm a varivel fonte, adicionada no projeto para o placar
do jogo. O mtodo Draw foi utilizado para desenhar todas as imagens do jogo.
A nave um dos principais personagens do jogo e ser comandada pelo jogador. Para
inserir a nave no jogo foi criada uma nova classe com o nome Nave que ter algumas
propriedades para armazenar textura, posio, tamanho e velocidade. Na classe Game1
foi necessrio fazer alguns ajustes para que a nave aparea no jogo. Portanto, foi criado
um novo objeto do tipo Nave com o nome jogador no inicio da classe Game1. Como
defnido no planejamento do jogo, a nave ser controlada pelo jogador. Para capturar a
entrada de dados pelo teclado foi necessrio escrever um cdigo que perceba que a posio
do jogador no jogo vai receber alguns valores (X,Y) dependendo da tecla apertada pelo
usurio. Existe uma restrio que controla o movimento para que a nave no saia da tela
do jogo . Por exemplo, caso seja apertada a tecla Up do teclado a posio y do objeto vai
diminuir e, consequentemente, o objeto vai subir e o mesmo acontecer com as outras
teclas, de acordo com o valor que est proposto entre parnteses, no mtodo.
Para inserir os asteroides no jogo foi criada uma nova classe com o nome Asteroides com
algumas propriedades para armazenar valores como a textura que o asteroide vai possuir,
posio inicial e a velocidade em que vai se movimentar na tela. Na classe Game1 foi
criada uma lista para armazenar os meteoros e uma varivel para armazenar a textura do
meteoro. Para que os meteoros sejam adicionados durante um determinado tempo foi
criada uma varivel com o nome tempo para armazenar o tempo do jogo, e um gerador
de nmeros randmicos para que o meteoro receba esses valores como parmetro de
velocidade na classe Game1.
No mtodo Update foi utilizada a varivel tempo que foi criada para armazenar o tempo
do jogo e foram criados os meteoros a partir deste tempo determinado. O primeiro ponto
a destacar o parmetro do tipo gameTime recebido pela varivel tempo. Este parmetro
crucial para a lgica do jogo, uma vez que o jogador deve saber quanto tempo se passou
desde o inicio da sua execuo. A varivel tempo armazena o valor do tempo do jogo com
o objetivo de criar um novo meteoro a cada 1 segundo. Aps criar um meteoro a varivel
tempo recebe o valor 0 e s cria outro meteoro aps 1 segundo. Quando um meteoro
adicionado recebe valores como textura, posio, velocidades X e Y e adicionado em
uma lista que armazena os meteoros criados. Para adicionar movimento ao meteoro basta
apenas incrementar o valor da posio do meteoro no eixo X e Y com a velocidade. No
mtodo Draw, os meteoros foram desenhados utilizando um contador para percorrer a
lista que contem os meteoros.
Desenvolvimento de Jogos Utilizando XNA: um Exemplo com o Jogo SpaceX
Joni Pereira de Pinho Rodrigues da Silva - Janana Veiga - Carlos Vitor de Alencar Carvalho
Revista Eletrnica TECCEN, Vassouras, v. 5, n. 2 p. 59-70, mai./ago., 2012
66
Para adicionar movimento ao meteoro basta apenas incrementar o valor da posio do
meteoro no eixo X e Y com a velocidade. Para que o cdigo fcasse mais legvel foi criado um
mtodo na classe Game1 depois do mtodo Draw com o nome MovimentandoAsteroides.
Este mtodo recebe a posio inicial dos eixo X e Y do meteoro e soma aos valores da
varivel velocidade no eixo X e Y que so gerados randomicamente quando o meteoro
criado. Para fnalizar, foi chamado este mtodo dentro do mtodo Update.
Ao adicionar movimento aos meteoros foi possvel perceber que seus valores so
atualizados constantemente, e com o resultado saem da tela, porm no do jogo. Uma
forma de resolver este problema foi criar um mtodo que verifque se o meteoro est
dentro dos limites da tela. Caso no esteja, recebe novos valores que o repem novamente
no jogo. Foi criado um mtodo com o nome ColocarNaPosicaoInicial depois do mtodo
Draw. Este mtodo verifca se a posio do meteoro est ultrapassando os limites da tela.
Caso esteja, passa uma nova posio para o meteoro na tela do jogo. Para fnalizar, foi
chamado este mtodo dentro do mtodo Update.
Na classe Nave, abaixo do mtodo Draw, foi criado um mtodo com o nome Colide
(Figura 5) que verifca se as posies das coordenadas X e Y do objeto esto dentro do
segundo objeto, ou seja, deve-se verifcar se os valores de X e Y do objeto que queremos
testar menor ou igual aos valores de X e Y do outro objeto .
Figura 5. Mtodo Colide
Na classe Game1, abaixo do mtodo Draw, foi criado um mtodo com o nome
VerifcaColisao (Figura 6) com a funo de verifcar se h coliso entre a nave do jogador
e algum meteoro. Caso isso acontea, vai tocar o som da exploso, a varivel fm do jogo
vai receber valor verdadeiro, a msica de fundo do jogo vai parar e os meteoros sero
removidos do jogo. Dentro do mtodo Update da classe Game1 ser chamado o mtodo
que foi criado para verifcar se h coliso entre o jogador e algum meteoro.
Desenvolvimento de Jogos Utilizando XNA: um Exemplo com o Jogo SpaceX
Joni Pereira de Pinho Rodrigues da Silva - Janana Veiga - Carlos Vitor de Alencar Carvalho
Revista Eletrnica TECCEN, Vassouras, v. 5, n. 2 p. 59-70, mai./ago., 2012
67
Para que a nave dispare tiros, foi criada uma nova classe no projeto com o nome Tiros
e com algumas propriedades para armazenar: textura, posio inicial, velocidade e um
mtodo para verifcar a coliso entre o tiro e os meteoros. No mtodo Update foi criada uma
estrutura para que quando o jogador aperte a tecla-espao do teclado o tiro seja disparado.
Aps a criao deste mtodo, o tiro j est sendo disparado pelo jogador, porm no est
se movimentando no jogo, para adicionar movimento ao tiro preciso incrementar o valor
da posio tiro no eixo X e Y com o valor da velocidade. Para isso foi criado um mtodo
na classe Game1 depois do mtodo Draw com o nome MovimentandoTiros (Figura 7).
No mtodo Update foi chamado o mtodo MovimentandoTiros.
Figura 6. Mtodo VerifcaColisao.
Figura 7. Mtodo para movimentar o tiro
Desenvolvimento de Jogos Utilizando XNA: um Exemplo com o Jogo SpaceX
Joni Pereira de Pinho Rodrigues da Silva - Janana Veiga - Carlos Vitor de Alencar Carvalho
Revista Eletrnica TECCEN, Vassouras, v. 5, n. 2 p. 59-70, mai./ago., 2012
68
Para remover os tiros foi criado um mtodo na classe Game1, abaixo do mtodo Draw,
com o nome RemoveTiros para que fque verifcando se o tiro saiu da tela do jogo. Caso
isso acontea o tiro ser removido.
Na classe Game1 foi criada uma varivel do tipo inteiro para somar os pontos quando o
tiro acertar os meteoros e abaixo do mtodo Draw foi criado um mtodo que verifque se
h a coliso entre o tiro e o meteoro (Figura 8).
O mtodo VerifcaColisaoTiros (Figura 8) est verifcando se algum tiro colidiu com
algum meteoro. Caso isso acontea, so removidos o tiro e meteoro. A funo apertouTiro
receber um valor verdadeiro permitindo que o jogador dispare um novo tiro e a varivel
pontos recebe dez pontos. No mtodo Update foi chamado este mtodo.
Para adicionar um placar foi necessrio adicionar uma fonte no projeto. Depois de adicionada
a fonte no projeto, na classe Game1 foi criada uma varivel do tipo SpriteFont.
Para fnalizar o jogo, foi utilizada a varivel booleana para controlar o jogo, tornando esta
tarefa bem fcil. A varivel que controla o fm do jogo recebe o valor verdadeiro quando
h uma coliso entre o jogador e o meteoro. Deste modo, foi criada uma estrutura no
inicio do mtodo Update de forma que todos os mtodos fquem dentro dessa estrutura e o
jogo s ira continuar se o valor dessa varivel for falso. Depois de criar essa estrutura, no
mtodo Draw da classe Game1 foi desenhada uma tela especifcando que o jogo acabou
e informando como iniciar um novo jogo.
Para que o jogador possa jogar novamente necessrio que a varivel que controla o
fm do jogo receba o valor verdadeiro, ento foi criada uma estrutura no mtodo Update
da classe Game1 de forma que quando o jogador apertar a tecla Enter do teclado essa
varivel receba o valor verdadeiro.
Figura 8. Mtodo que verifca coliso entre tiros e meteoros
Desenvolvimento de Jogos Utilizando XNA: um Exemplo com o Jogo SpaceX
Joni Pereira de Pinho Rodrigues da Silva - Janana Veiga - Carlos Vitor de Alencar Carvalho
Revista Eletrnica TECCEN, Vassouras, v. 5, n. 2 p. 59-70, mai./ago., 2012
69
Quando o jogador apertar a tecla Enter do teclado vrias funes esto recebendo novos
valores para iniciar um novo jogo. Por fm, compilando o projeto, aparece o resultado
fnal do desenvolvimento do jogo SpaceX (Figura 9).
Figura 9. Interface fnal do Jogo SpaceX
Consideraes Finais
O objetivo do trabalho foi apresentar, de forma sucinta, alguns dos principais conceitos
envolvidos na implementao de jogos por computador utilizando o framework XNA.
Como proposto no incio do artigo foi abordado o desenvolvimento de um jogo, de forma
sucinta, do incio ao fm utilizando o framework XNA que resultou em um jogo que foi
chamado de SpaceX.
Consideramos que o XNA demonstrou ser uma ferramenta robusta para o desenvolvimento
de jogos, a qual pode ser utilizada por desenvolvedores iniciantes como forma de se
inserirem no mercado de desenvolvimento nacional, porm cabe ressaltar que a rea
de desenvolvimento de jogos muito extensa e este trabalho apenas apontou alguns
conceitos bsicos. Neste contexto, consideramo-nos satisfeitos se o artigo contribuir
para a diminuio de dvidas nesta rea, bem como para o crescimento de trabalhos que
explorem, de forma direta ou indireta, o tema.
Desenvolvimento de Jogos Utilizando XNA: um Exemplo com o Jogo SpaceX
Joni Pereira de Pinho Rodrigues da Silva - Janana Veiga - Carlos Vitor de Alencar Carvalho
Revista Eletrnica TECCEN, Vassouras, v. 5, n. 2 p. 59-70, mai./ago., 2012
70
Referncias
Cawood, S.; Mcgree, P. (2007) Microsoft XNA Game Studio Creators Guide. New York:
Osborne. 456 p.
Lobo, A. S. et. al. (2010) XNA 3.0 para Desenvolvimento de Jogos no Windows, Zune e
Xbox 360, Rio de Janeiro: Brasport, 431 p.
Perucia, A. et. al. (2005) Desenvolvimento de Jogos Eletrnicos. Porto Alegre: Novatec,
320 p.
Rollings, A.; Morris, D.(2000) Game Architecture and Design, Arizona: Coriolis, 742 p.
Silva, J. P. de P. R. da. (2012) Desenvolvimento de Jogos utilizando XNA. Monografa
de Graduao do curso de Sistemas de Informao. Universidade Severino Sombra,
63 p.