Calculando Sprites;
A imagem acima tem 12 animações, quando usamos para a programação sempre comece contando do 0.
Como saber qual o tamanho dos frames?
Na imagem há 12 frames, divida o comprimento da imagem (Width) pelo número de frames X. E para Y, divida a altura da imagem (Height) pelo número de frames Y.
Logo: 384 / 12 = 32
Logo: 64 / 1 = 64
Cada frame X tem o comprimento de 32 enquanto Y de 64. Lembre-se, estamos apenas calculando o tamanho de cada frame, a imagem acima com a contagem do 0 não conta nessa etapa.
Agora que já sabemos como calcular e temos a quantidade de cada frame e suas proporções vamos voltar ao projeto.
Vamos adicionar algumas constantes com os resultados que obtemos.
Agora compare com a imagem, olhe onde o personagem está de frente para nós, número 4. Então frente = 4.
SpriteWidth, ou seja, Comprimento da Sprite.
SpriteHeigh, ou seja, Altura da Sprite.
Pelo cálculo obtemos Width 32 e Height 64.
Desenhando a sprite;
Vamos alterar agora o evento do button1. Apenas adicionei um underline para quebrar a linha.
No retângulo verde, temos. (lembre-se da aula passada Graphics, aqui são as coordenadas onde será desenhada a imagem)
A imagem será desenhada na coordenada X:0 e Y:0 com o Comprimento : SpriteWidth e Altura : SpriteHeight.
No retângulo azul, essa é a area que será retirada da Sprite.
Irá pegar uma area da Sprite, a partir da coordenada X: Frente * SpriteWidth e Y:0 com o Comprimento : SpriteWidth e Altura : SpriteHeight.
Frente = 4, SpriteWidth = 32;
4 * 32 = 128.
O retângulo vermelho da imagem acima, mostra o tamanho de 128 pixel.
A imagem será pega de X:128 até X: 160, 160 já é o começo do frame 5.
Espero que tenham entendido, tentei simplificar o máximo para que entendam e consigam fazer suas próprias animações. Para mudar o personagem apenas troque o Frente
para Direta, Esquerda ou Costas.
Baixem o projeto e não se esqueçam de treinar, estudem bastante o código aqui.
Projeto Aula
A imagem acima tem 12 animações, quando usamos para a programação sempre comece contando do 0.
Como saber qual o tamanho dos frames?
Na imagem há 12 frames, divida o comprimento da imagem (Width) pelo número de frames X. E para Y, divida a altura da imagem (Height) pelo número de frames Y.
Logo: 384 / 12 = 32
Logo: 64 / 1 = 64
Cada frame X tem o comprimento de 32 enquanto Y de 64. Lembre-se, estamos apenas calculando o tamanho de cada frame, a imagem acima com a contagem do 0 não conta nessa etapa.
Agora que já sabemos como calcular e temos a quantidade de cada frame e suas proporções vamos voltar ao projeto.
Vamos adicionar algumas constantes com os resultados que obtemos.
Agora compare com a imagem, olhe onde o personagem está de frente para nós, número 4. Então frente = 4.
SpriteWidth, ou seja, Comprimento da Sprite.
SpriteHeigh, ou seja, Altura da Sprite.
Pelo cálculo obtemos Width 32 e Height 64.
Desenhando a sprite;
Vamos alterar agora o evento do button1. Apenas adicionei um underline para quebrar a linha.
No retângulo verde, temos. (lembre-se da aula passada Graphics, aqui são as coordenadas onde será desenhada a imagem)
A imagem será desenhada na coordenada X:0 e Y:0 com o Comprimento : SpriteWidth e Altura : SpriteHeight.
No retângulo azul, essa é a area que será retirada da Sprite.
Irá pegar uma area da Sprite, a partir da coordenada X: Frente * SpriteWidth e Y:0 com o Comprimento : SpriteWidth e Altura : SpriteHeight.
Frente = 4, SpriteWidth = 32;
4 * 32 = 128.
O retângulo vermelho da imagem acima, mostra o tamanho de 128 pixel.
A imagem será pega de X:128 até X: 160, 160 já é o começo do frame 5.
Espero que tenham entendido, tentei simplificar o máximo para que entendam e consigam fazer suas próprias animações. Para mudar o personagem apenas troque o Frente
para Direta, Esquerda ou Costas.
Baixem o projeto e não se esqueçam de treinar, estudem bastante o código aqui.
Projeto Aula