Criando jogos em xna c#

Disponível somente no TrabalhosFeitos
  • Páginas : 6 (1271 palavras )
  • Download(s) : 0
  • Publicado : 8 de junho de 2011
Ler documento completo
Amostra do texto
Criando Jogos com o XNA Game Studio

A Microsoft está desenvolvendo, ainda em fase beta, o XNA Framework e o XNA Game Studio Express. O XNA Framework é um framework de classes para manipulação de recursos do DirectX para a criação de jogos e outros tipos de aplicações gráficas.
O XNA Framework roda em windows e é utilizado no XBOX 360, sendo que futuramente rodará também em plataformasmóveis.
O XNA Framework substitui o Managed DirectX e suas classes utilizam diretamente o DirectX Runtime.
Veja os namespaces do XNA pelo object browser :


O XNA Game Studio Express, por sua vez, é a ferramenta utilizada para a criação de jogos com o XNA Framework. É baseado no C# Express, depende da instalação do C# Express - precisa ser o express, não aceita outras versões do visual studio.De fato, o XNA Game Studio Express apenas adiciona templates para a criação de jogos.
A versão Express do Game Studio será gratuita mesmo depois de lançada a versão final, porém desenvolverá jogos apenas para Windows.
Já a versão professional do Game Studio será comercial e permitirá o desenvolvimento de jogos para o XBOX 360
Vamos ver, passo-a-passo, a criação de um jogo bem simples paravermos o funcionamento do XNA Game Studio Express. Veja a imagem do jogo que iremos gerar :

1) Criar o novo projeto de nosso jogo

2) Alterar as propriedades do objeto Graphics para definir o tamanho da tela
3) Definir as variáveis que serão necessárias para montar a tela do jogo
(o jogador, uma bola e um objeto spriteBatch, responsável pela montagem da tela)
Texture2D Jogador, Bola;SpriteBatch sprite;
4) Inserir as 2 imagens no projeto
5) Criar um método para inicializar as imagens
Precisamos carregar as imagens para a memória. Isso é feito pelo método FromFile do objeto Texture2D. Também precisaremos inicializar o SpriteBatch.
Em todos esses casos precisaremos fornecer um GraphicsDevice. O objeto Graphics que já existe na classe Game1.cs nos fornece oGraphicsDevice, facilitando as coisas.
void Inicializar()
{
Jogador = Texture2D.FromFile(graphics.GraphicsDevice, "../../paddle.png");
Bola = Texture2D.FromFile(graphics.GraphicsDevice, "../../ball.png");
sprite = new SpriteBatch(graphics.GraphicsDevice);
}
6) Disparar o método inicializar.
Precisamos disparar nosso método inicializarem 2 locais diferentes : Primeiramente no método OnStart de nossa classe, que ocorre no momento do inicio do jogo. Além disso precisaremos fazer a inicialização novamente sempre que ocorrer o evento DeviceReset do objeto GraphicsDevice.
Observe que a carga das imagens e criação do SpriteBatch estão ligados ao GraphicsDevice. Desta forma, quando ocorre o DeviceReset é necessário refazer ainicialização.
protected override void OnStarting()
{
base.OnStarting();
graphics.GraphicsDevice.DeviceReset += GraphicsDevice_DeviceReset;
Inicializar();
}

void GraphicsDevice_DeviceReset(object sender, EventArgs e)
{
Inicializar();
}
7) Criar a classe representando o jogador

Essa classeirá controlar a posição do jogador e a velocidade do jogador no jogo (velocidade sendo contada em pixels.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Xna.Framework;

namespace Bolinha
{
class Jogador
{
Point posicao;
int velocidade;

public Jogador(int x, int y)
{
posicao = new Point(x, y);velocidade = 3;
}
}
}
8) Criar a classe representando a bola
Assim como a classe do jogador, a classe representando a bola guarda a posição e velocidade da bola. Nesse caso, porém, temos duas velocidades : A velocidade de movimentação horizontal e a velocidade de movimentação vertical.
using System;
using System.Collections.Generic;
using System.Text;
using...
tracking img