Como desenvolvi um jogo caseiro para Xbox

Nova Escola de Marketing
11 de Março de 2008

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.

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]

.

Avalie este artigo:
Share this...
Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn

7 respostas para “Como desenvolvi um jogo caseiro para Xbox”

  1. Apoena disse:

    É 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
    http://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

  2. Murilo Bispo disse:

    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)

  3. ailande disse:

    eu proucuro jogos mais virtuais que tenha bonecos virtuais

  4. Henrique disse:

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

    Henrique Andrade
    http://www.grupovox.com.br

  5. Edinelson disse:

    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

  6. Eric Ietsugu disse:

    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!

  7. Fabiano Assis disse:

    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.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *