Nesse tutorial, desenvolveremos uma classe de objeto que estará presente no jogo. O nome para tal classe será Tile. Os tiles são pequenos pedaços de imagens que servem para criar uma nova imagem composta conhecida como layer, utilizadas para criar o cenário de um jogo. Observe a imagem abaixo:
(Super Mario Bros 3)
Na imagem acima temos um jogo com seu personagem, cenários, inimigos, etc. Para montar esse cenário 2D de maneira mais prática e, economizando o máximo possível de uso da memória do computador. Construímos esse objeto utilizando vários tiles que são armazenados, um por um, na classe Tile. Sendo assim possuímos somente os tiles principais, mas montados o mapa conforme nossa necessidade. Abaixo um exemplo com os tiles utilizados para montar o cenário da fase acima:
(Tiles do Jogo Super Mario Bros)
Muito bem! A classe que iremos desenvolver agora não será ainda capaz de montar nosso cenário, somente de armazenar os tiles acima, para posteriormente, serem usados na construção de um cenário. Vamos agora analisar nossos atributos. Todo tile tem o seu tipo de colisão, sua textura e seu tamanho. Crie uma nova classe dentro do projeto do jogo chamada Tile. Começamos a montar nossa classe fazendo referências aos frameworks.
using Microsoft.XNA.Framework;
using Microsoft.XNA.Framework.Graphics;
Antes de começar a escrever nosso código dentro do bloco da classe, vamos criar um tipo de atributo enumerador, responsável por identificar o tipo de colisão. Esse processo facilita e padroniza os dados.
// Enumeração dos tipos de colisão existentes
public enum TipoColisao
{
// Refere-se ao Tile passável
passa,
// Refere-se ao Tile impassável
naoPassa,
// Refere-se ao Tile plataforma
plataforma,
}
Pronto :) Criamos nosso enumerador, agora podemos começar a escrever nossa classe, definindo os atributos e métodos dos tiles.
public class Tile
{
// Definição da textura do Tile
protected Texture2D tile;
// Definicão do tipo de colisão do Tile, observe
// a variável é do tipo enumerador que criamos
public TileColisao colisao;
// Definição do tamanho do Tile
public Vector2 tamanho;
// Método que constrói o nosso Tile, recebendo
// a textura e o tipo da colisão
public Tile(Textura2D textura, TileColisao _colisao)
{
this.tile = textura;
this.colisao = _colisao;
this.tamanho = new Vector2(textura.Width, textura.Height);
}
}
Agora temos nossa classe Tile completa, pronta para começar a receber nossos tiles, nos próximos tutoriais aprenderemos a implementar essa classe em nosso projeto e criar o cenário conforme nossa preferência. Aguardo vocês e até breve. ( com mais um gif HUAHUAHUAUH sou viciado D: )
Quando vai sair a parte 4?
ResponderExcluirEm breve! A parte 4 é conjunta com a parte 5, e ambas são bem extensas, estou terminando elas o mais rápido possível.
ExcluirAguardando a parte 4. Parabéns pelas anteriores!
ResponderExcluirEstou aguardando ansiosamente pela próxima parte! Tem alguma previsão? XD
ResponderExcluirA parte 4 sairá ainda essa semana junto com novos tutoriais :)
ExcluirBom dia CK, a parte 4 vai sair?
ResponderExcluirObrigado!
Desistiu de dar continuidade ao tutorial ?
ResponderExcluirPow..seria legal as outras partes...parou?
ResponderExcluirNão vai sair a parte 4? =\
ResponderExcluireu estava tão feliz, cheguei até aqui de boas, e bom sempre ter a base de um projeto, pena que desistiu, se alguem conseguir termina ae posta o link para nos valeu, um forte abraço a todos, vamos a luta procurar outro na internet. valeu.
ResponderExcluire aew vai sai ou não?
ResponderExcluir