Webinsider

Desenvolvimento - Games - Educação e ensino

Como desenvolvi um jogo caseiro para Xbox

11 de março de 2008, 16:14

Para quem quer desenvolver um jogo para computador mas nunca chegou perto de começar por achar difícil demais - é importante perceber que mesmo um game amador pede mais planejamento do que programação.

Por Renato Ucha

Desde a época do Atari eu sempre sonhei em fazer jogos eletrônicos, mas sempre tive a impressão de que este seria um dos maiores desafios do mundo do desenvolvimento.

De fato é. Imagine o quanto é necessário dominar a física para fazer um simulador de futebol? Em um exemplo simples, basta imaginar que quando você chuta a bola, para calcular a trajetória é necessário medir força de impacto, direção da bola, direção e velocidade do vento e força gravitacional.

Longe de ser um bom aluno em física, com o XNA Framework da Microsoft (framework específico para desenvolvimento de jogos para computador e Xbox 360) e uma série de bibliotecas de física freeware existentes na internet até eu arrisquei a colocar a mão na massa e criar um joguinho, em 2D mesmo. Para quem se lembra da época do Atari, ficou muito parecido.

Em seguida, sem conhecer absolutamente nada sobre a tecnologia, optei por comprar um livro para usar como apoio (Professional XNA Programming) – e com surpresa descobri que para fazer um jogo é preciso muito mais do que programação. É planejamento acima de tudo.

Percebi, obviamente, que não bastaria dominar as classes do XNA Framework e saber programar em C#; teria de criar uma boa história para dar sentido ao jogo, o que talvez seja o maior desafio para o desenvolvedor de games.

O roteiro precisa implementar desafios que tornem o jogo estimulante mas sem apelar para o lugar comum, senão o usuário não joga novamente. O desafio deve ser crescente (aumentar à medida em que o jogo avança) mas também o objetivo não pode ser impossível de ser atingido.

Bolar um roteiro dentro destes conceitos foi o maior desafio. Por muito tempo procurei uma história para fundamentar o meu jogo até perceber que ela estava na minha frente. Ou melhor, no passado, em uma empresa para a qual trabalhei há alguns anos.

A história é a seguinte: o analista de suporte técnico que atendia as ligações dos clientes fazia faculdade de Ciências da Computação e sonhava em chegar à área de desenvolvimento. O jogo então consistia no jogador controlar o analista de suporte e atender as ligações de suporte, preencher os requisitos CMMI e preencher as solicitações de chamados técnicos.

Sempre que o jogador falhasse, assim como na vida real, o gerente do produto apareceria para dar os chamados “feedbacks”. Sempre que o gerente aparece, o protagonista fica mais difícil de ser controlado, tornando assim mais difícil a jogabilidade (afinal, como na vida real, sempre que recebemos uma bronca ficamos irritados, não é mesmo?).

E a cada mês mais e mais trabalho aparece (lembrou o seu dia-a-dia?). Se você conseguir controlar o jogador por mais de 12 meses você o promove e vence o jogo.

Definido o roteiro do jogo, iniciei a criação do cenário. Como não possuo nenhum conhecimento de design, iniciei desenhando em um pedaço de papel. A partir daí, procurei algumas imagens na internet e fiz o meu plano de fundo. Desenhei o personagem, bolei alguns detalhes, como nuvens que passariam pela tela durante o decorrer do jogo e comecei a escrever as classes que utilizaria.

No meu caso a programação é C#. Ou seja, se você já está habituado com a linguagem e com os conceitos de orientação a objeto, não sentirá nenhuma dificuldade. Para fazer as classes de negócio não tive nenhum problema. Em relação a renderização do jogo, o framework apresenta classes prontas para trabalhar com imagens, sons, animações, objetos 3D e utilização da tela, além de temporizadores e controle de dispositivos de entrada como controles do Xbox 360 e teclado do computador.

Em muito pouco tempo, apenas sete dias de estudo e trabalhando apenas nas horas vagas, consegui finalmente chegar ao meu tão esperado jogo, ainda que bem simplório. Mas o importante é perceber que é fácil desenvolver um jogo simples para computador.

Claro, não podemos confundir a criação de um jogo caseiro com uma super-produção como o FIFA 2008 ou Halo 3, que envolvem meses de produção artística, modelagem 3D, planejamento e programação. Mas se você pretende chegar até lá, um bom começo é instalar o XNA Framework (gratuitamente a partir do site da Microsoft), adquirir um bom apoio, como o livro Professional XNA Programming (visite o site do autor, que oferece vários exemplos por lá) e começar a bolar o roteiro do seu jogo.

Confira abaixo uma tela do jogo que eu fiz. Não repare, o objetivo aqui era construir e não competir com profissionais.

Não me aprofundei muito com a tecnologia. Como disse, fiz apenas em minhas horas vagas, mas achei que foi bastante produtivo. Infelizmente não tive mais tempo para voltar a trabalhar com XNA, mas se você está realmente interessado em fazer jogos para computador utilizando esta tecnologia, deixe o seu comentário.

Você pode conferir o jogo pessoalmente, fazendo o download aqui. Será necessário instalar o XNA Framework Redistributable 1.0 refresh e atualizar o DirectX do seu Windows para rodar este jogo. [Webinsider]

.

Sobre o autor

Renato Ucha (falecom@renatoucha.com.br) é gerente de projetos de TI certificado pelo PMI e Microsoft e atua em empresa de grande porte com arquitetura cliente servidor, web e interfaces SAP, além de dar palestras sobre gerenciamento de projetos.

Apoio:

  • LayerDev Serviços de Webhosting Profissional

Palavras-chave relacionadas a este texto: [ microsoft ] [ games ] [ briefing ] [ publicidade ]

Comentários

7 pessoas comentaram o artigo "Como desenvolvi um jogo caseiro para Xbox"

Fabiano Assis Data: 11/03/2008 às 5:22 pm

Atividade: Universitário

Cidade: Cornélio Procópio - PR

Olá! Muito bom o artigo, sobre a ferramenta XNA da Microsoft. Estive lendo algumas coisas a respeito e realmente vi nela uma grande oportunidade para também realizar um sonho: desenvolver meu próprio jogo. Muitos “viciados” em jogos, como eu, também possuem este mesmo sonho e o XNA está tornando isso uma realidade (em parte). Um bom jeito de incentivar pequenos produtores amadores a criarem jogos interessantes e, quem sabe, conseguir chegar a trabalhar em uma empresa de produção de jogos eletrônicos!

Abraços.

Eric Ietsugu Data: 11/03/2008 às 7:17 pm

Atividade: Designer

Cidade: São Paulo

Olá, realmente o artigo é bem legal e introduz o leitor à ferramenta XNA. É uma bela iniciativa da Microsoft, tanto já existem alguns jogos feitos por brasileiros na Live. Gostaria de saber se é essencial que o usuário seja programador “hardcore”, ou se dá pra se virar apenas com uma boa idéia na cabeça e um pouquinho de familiaridade com linguagem de programação.

Abraços!

Edinelson Data: 12/03/2008 às 11:52 am

Atividade: tecnico em informática

Cidade: Santa Bárbara D’Oeste

Mto bom seu artigo…porém acho que pra desenvolver jogos simples basta apenas um pouco de conhecimento em Flash e action script.
como nesse jogo que eu fiz e usa menos de dez linhas de programação. http://www.tunninghouse.we.bs/jogo_de_tiro.swf

Henrique Data: 23/03/2008 às 7:58 pm

Atividade: Economista

Cidade: Goiania

Olá amigos…
Conheci este blog a pouco tempo.
Vcs estao de parabens!
Atenciosamente

Henrique Andrade
www.grupovox.com.br

ailande Data: 05/05/2008 às 7:07 am

Atividade: nataçao

Cidade: salvador

eu proucuro jogos mais virtuais que tenha bonecos virtuais

Murilo Bispo Data: 23/10/2008 às 1:51 pm

Atividade: Marketing e Eventos

Cidade: São Paulo

Parabéns!
Eu também já tentei criar um jogo em flash e acho muito mais fácil e divertido. Sem contar que para minha área de propaganda e marketing, posso me aprofundar mais em questões mais técnicas como essa, e aprimorar meus conhecimentos.O mesmo vale para todos, o simples fato de nós querermos produzir algo sozinhos demonstra que somos interessados em saber algo além do limite do simples “JOGAR”.

abraço
e ótimo artigo

Murilo Bispo ( publicse@hotmail.com)

Apoena Data: 30/06/2009 às 12:39 pm

Atividade: Desenvolvedor

Cidade: Brasília

É um absurdo dizer “XNA está tornando isso uma realidade”, quando ela nada mais é do que uma game Engine para Xbox 360.

Game Engines já existiam antes do XNA.
Para quem quer criar games caseiros, e profissionais podem escolher entre várias engines open source…

SIO2 - Iphone
http://www.sio2interactive.com

Pygame
www.pygame.org

Ogre3D
http://www.ogre3d.org

Cocos2D
http://cocos2d.org/

Panda3D
http://www.panda3d.org

JMonkey
http://www.jmonkeyengine.com/

Irrlicht
http://irrlicht.sourceforge.net/

Blender Game Engine - a game engine do Blender
http://www.blender.org

Ou podem usar algumas engines comerciais.

Torque
http://www.garagegames.com/products

Vicious
http://www.viciousengine.com/

Unity
http://unity3d.com/unity/

Game Maker
http://www.yoyogames.com/gamemaker/

3D Game Builder - Uma Nacional
http://www.eternix.com.br/pt/3dgamebuilder/index.php

Avisos
Os ítens com asterisco ( * ) são campos de preenchimento obrigatório.
Todos os links inseridos nos comentários possuem o atributo rel="nofollow" para impedir com que user agents (como os mecanismos de busca) sigam os links inseridos para desestimular spammers.
Todos devem se identificar através de e-mail válido.
Os e-mails dos usuários não serão divulgados no site.
Comentários:

Preencha os dados abaixo e clique em enviar

Outrolado.com.br

Leia

Design ou código, o que vem antes?Desenvolvimento de produtos de internet tem solução, ao contrário da anedota do ovo e da galinha. Experimente os dois ao mesmo tempo e fazer do designer e do programador uma equipe. Mas tem um truque. Por Marcelo Gluz

Desenvolvimento de projetos para Second LifeGoste ou não do Second Life, um bom projeto começa na sua concepção. Sabe aquele tempo que o chefe acha que jogamos fora no início? Ele é fundamental! Por Guilherme Tsubota

Eu pedi um site e você me propõe um aplicativo?Entrando em um endereço na internet, você saberia dizer se é um site ou um aplicativo? Qual a diferença entre um e outro? E por que desenvolvedores de aplicativos não trabalham mais sem o auxílio de um designer? Por Vinicius Assef

Dicas que ajudam a obter a certificação MCPEm busca de certificação MCP? Nosso amigo tentou a primeira vez para ver como era e não conseguiu. Depois fez vários simulados, foi esquentando e passou tranquilamente na segunda chance. Veja como foi. Por Renato Ucha

Quando o desenvolvedor começa a adotar padrões de trabalhoVocê programa e trabalha sozinho ou em dupla. Chega o cliente e pede um site aparentemente simples e você orça baixo demais. Veja como se organizar para evitar esta e outras dores de cabeça. Por Renato Guimarães

Anuncie dentro de games e ganhe em brandingPesquisa reforça a tese de que os anúncios em jogos trazem ótimos resultados, especialmente no reconhecimento da marca, com aumento de intenção de comprar. Por André Ursulino

Desenvolve games? Faça uma análise da concorrênciaHá diferentes formas de obter receita com games, apreciados em todo o mundo. Uma análise das possibilidades auxiliará o desenvolvedor a projetar o retorno esperado quando levar seu projeto ao mercado. Por André Ursulino

Afinal, games podem ter responsabilidade social?Polêmica: preconceito contra jogos é inaceitável, pois eles exercem um papel fundamental no desenvolvimento dos jovens e na integração social. Mas games não podem realmente se transformar em instrumentos educativos. Por Julia Stateri

Seu filho gosta de games. Você reprova ou aproveita?Os pais criados com videogames começam a perceber que os jogos podem ajudar no desenvolvimento de diversas habilidades para seus filhos e em favor da educação. Por Diego Cox

Por dentro do Microsoft XNA Challenge BrasilNova competição da Microsoft apresenta tecnologias e idéias inovadoras para o mundo dos games. Nosso amigo participou… e ganhou. Por André Furtado

Projeto leva jogos educacionais à escola públicaPortal Clickidéia, utilizado por escolas de todo o país, desenvolve uma nova área com jogos educacionais interdisciplinares como recurso de motivação e aprendizagem no ensino médio e fundamental. Por Alessandra de Falco

Chineses descobrem formas de lucrar com os gamesNa China a cultura de pirataria é muito forte e os usuários de games não gostam de pagar muito caro pelos jogos. Desenvolvedores descobriram novas formas de faturar: vender equipamentos virtuais paras os jogadores.
Por Itamar Medeiros

Desenvolvimento de games para as massasMicrosoft vai oferecer gratuitamente uma versão reduzida do XNA Game Studio, ferramenta que permite que o usuário interessado desenvolva seu próprio game. Objetivo é fortalecer o Xbox. Por Paulo Rebêlo (reportagem)

Webinsider