P>

capa_NET40_G.gif

Clique aqui para ler todos os artigos desta edição

Games

Crie seu próprio Game usando .NET

 

Este artigo discute

Este artigo usa as seguintes tecnologias

·       XNA Game Studio;

·       Definição de personsagens, estrutura do jogo e regras;

·       Criação do Game.

XNA Game Studio, C#.

 

 

Um gerente de projetos ao lado do seu cliente apresenta o sistema. O cliente analisa e pondera: Acho que está faltando algo mais interativo. Quem sabe um desses joguinhos eletrônicos?

É diante de uma pergunta dessas que muitos desenvolvedores experientes se perdem ao perceberem que simplesmente nunca sentaram e desenvolveram um dos tipos mais difundidos de software criados pela humanidade: o jogo eletrônico.

Desde os tempos dos velhos consoles esse tipo de aplicativo evoluiu absurdamente e hoje se pode ver nitidamente o quanto essa indústria movimenta pessoas, meios de comunicação, idéias e principalmente dinheiro.

Com o advento e explosão do nicho mercadológico conhecido como mobilidade, os jogos eletrônicos então tiveram um ganho consistente de importância. Empresas de TI que focam essa área surgem em todos os locais e a todo o tempo. O mercado se movimenta, as vagas de emprego surgem, e você volta a se perguntar: O que eu usaria pra desenvolver rapidamente e a minha maneira, um jogo? Como entrar nesse mercado?

Com base nesse contexto quase acadêmico, é que a Microsoft lança a versão Express do XNA Game Studio, uma plataforma e framework voltados para o desenvolvimento de jogos eletrônicos, integrada ao popular Visual C# 2005 Express Edition, focando o público estudantil e hobbysta, para uma filosofia de produtividade, facilidade na escrita de código, simplicidade de desenvolvimento, dentre outros valores que fizeram da plataforma .NET um grande sucesso.

Neste artigo abordaremos alguns conceitos que envolvem desenvolvimento de games. Estudaremos os principais métodos que permeiam esse tipo de construção dentro do XNA Game Studio, como trabalhar com ele e obviamente construir um aplicativo que simula um jogo de ping-pong.

Será fácil perceber que o nível de encapsulamento das funções é alto, e as rotinas acessadas mais constantemente são diretas e de fácil implementação, graças a Class Library do XNA Framework.

Conhecendo esse novo projeto

  O XNA Game Studio permite criação de gráficos tanto em duas dimensões quanto em três. Trabalha diretamente com o DirectX, tem bibliotecas para uso de áudio, controle de entradas, joysticks, acessórios, gráficos e muito mais. Essas bibliotecas são baseadas no framework .NET 2.0, o que constitui parte do XNA Framework a base para o desenvolvimento dos aplicativos.

Funcionando como o framework .NET 2.0, ele provê rotinas otimizadas para construção de games e encapsulamento de funções cotidianas nesse tipo de empreitada. Todos os jogos desenvolvidos dentro do XNA Game Studio são obrigatoriamente compilados, assim, focados estritamente em dois tipos de projeto:

·         Windows Game, onde se pode desenvolver jogos que rodarão em computadores com Windows XP;

·         X-BOX 360 Game, projeto que é destinado a rodar no X-BOX 360 da Microsoft.

Atualmente somente as implementações feitas focando a plataforma Windows estão liberadas para compra e venda, o uso comercial das produções destinadas ao X-BOX 360 provavelmente serão liberadas no fim desse ano, com o lançamento da versão Profissional do XNA Game Studio.

É interessante colocar, que esses jogos direcionados ao console podem ser compartilhados na X-BOX Live, uma comunidade que fornece serviços aos usuários do X-BOX 360. Pagando uma taxa, você tem acesso aos jogos desenvolvidos pelos outros usuários, que podem ser baixados para o HD interno do console.

Ainda não é possível a construção de jogos que se aloquem em dispositivos móveis como celulares e palms através do XNA Game Studio, mas a própria Microsoft faz uma ressalva quanto a isso no seu site, dizendo que reconhece o tamanho do mercado e potencial disso para o futuro.

Colocando que seus desenvolvedores estão trabalhando nisso e é bem provável que esse tipo de implementação seja adicionada mais tarde. Aqui vamos desenvolver um aplicativo do tipo Windows Game, mas antes de irmos direto para o projeto, vamos aprender como instalar e usar essa ferramenta.

Instalação e requisitos

Em primeiro lugar, é importante ressaltar que como qualquer outro membro da família Express do .NET, o XNA Game Studio é GRÁTIS. Atualmente ele se integra somente ao Visual C# 2005 Express, que se faz como requisito para a instalação, logo o desenvolvimento é feito através da linguagem C# exclusivamente.

Para instalá-los é preciso baixar o Visual C# 2005 Express no seguinte endereço: msdn.microsoft.com/vstudio/express/visualcsharp/default.aspx. Após o download ser concluído execute o instalador e siga os passos.

Em seguida, faça o mesmo para o XNA Game Studio que está disponível em: msdn.microsoft.com/directx/xna/gse, nesse caso é necessário instalar o XNA Framework e o XNA Game Studio, dois arquivos que são carregados no ato do download. Execute-os e siga os passos até concluir a instalação de ambos.

Feito isso, agora vá a seu menu de programas e acesse o XNA Game Studio Express. De cara você percebe que ele não tem nenhuma diferença do Visual C# Express, acesso ao Help, janelas, criar arquivos, adicionar referências, são idênticos. Afinal estamos também dentro do Visual C# Express. Veremos as diferenças agora, no momento em que criaremos nosso projeto.

Construindo um jogo em C#

  Nosso game será composto por três personagens básicos, entende-se por personagens, os objetos criados pela aplicação que atribuem algum tipo de comportamento. Esses personagens serão:

·         Bola: Um círculo que fará movimentos contínuos na tela, e ao bater em alguma das extremidades superior/laterais da tela ou no personagem raquete será ricocheteada;

·         Raquete: Um retângulo com a função de proteger a parte inferior da tela, controlado pelo jogador, fazendo movimentos para esquerda e direita;

·         Tela (background): Espaço onde o jogo se desenrola, comparativamente a mesa onde num jogo real a bola é arremessada pela raquete.

Além desses comportamentos atribuídos aos personagens, podemos inserir outros que são independentes, funcionando como regras, por exemplo, um contador de pontos ou a definição de níveis de dificuldade. No exemplo, usaremos como regra o seguinte:

·         A cada duas rebatidas efetuadas com sucesso na bola, a velocidade da mesma aumenta fazendo com que o jogo se torne sempre mais e mais difícil;

·         Se a bola atingir a parte inferior da tela, o jogo retorna ao posicionamento inicial;

·         O objetivo é fazer com que a bola seja rebatida o máximo de vezes possíveis sem sair pela parte inferior da tela.

Definidos os personagens e as regras, vamos a construção propriamente dita do jogo. Todos os games, em sua esmagadora maioria, se baseiam em imagens, gráficos, esses podem ser 3D, ou seja, atuando em dimensões volumétricas de espaço, ou 2D, imagens que se interagem de forma plana, atuando apenas nos eixos X e Y de um plano cartesiano.

Gráficos com características 3D exigem um processamento muito mais consistente, pois trabalham com traços vetoriais e texturas para preenchimento de cores e definições de formas poligonais. O XNA Game Studio oferece suporte completo para esse tipo de implementação.

Nosso projeto vai trabalhar com gráficos 2D, que são compostos por imagens pré-construídas, essas são no futuro atribuídas aos personagens, fazendo com que os mesmos assumam suas formas. Gráficos 2D são mais leves, mas com certeza não impõem o mesmo impacto que os gráficos 3D ostentam. ...

Quer ler esse conteúdo completo? Tenha acesso completo