Curso completo de DarkGdk
Gameprog - Escola de programação de jogos digitais
Contato: gameprog.br@gmail.com
Fase 8.1

index << >>



08.1 Introdução a sprites


1 Aspectos gerais


Sprite é uma célula de animação 2D. Geralmente uma animação consiste de
uma série de sprites mostradas numa sequência organizada. 

Você pode utilizar sprites gravadas em imagens individuais para compor sua animação, entretanto para melhor performance você deve usar uma folha de sprites, que é uma imagem contendo os múltiplos quadros da animação. Veja abaixo um exemplo de folha de sprites: Naturalmente depois com a folha de sprites você utiliza algumas funções para recortar e mostrar os quadros da animação. A DarkGdk, como de costume, oferece dois blocos básicos de funções para a manipulação dos recursos. Temos o primeiro bloco de funções para manipular as sprites (criar, esticar, espelhar, etc.) e o segundo bloco que retorna o status das diversas propriedades (altura, largura, etc) geralmente alteradas com o primeiro bloco. Sistema de tiles O tile ou azulejo é uma célula quadrada de uma área quadriculada maior chamada grid em inglês. O sistema de tiles para composição de jogos predominou nos consoles de videogame do passado (nitendo, mastersystem, supernes, megadrive etc.) O sistema de tiles era uma necessidade das épocas anteriores devido a limitação de memória dos videogames da época. Através da combinação de poucos tiles conseguia-se fazer um grande mapa sem gastar muita memória. Ainda hoje é utilizado em jogos 2d e 3d porque é uma maneira confortável de raciocinar sobre a divisão e organização do espaço para desenhar, para disposição de objetos e como ponto de apoio para aplicação de lógicas de videogame.
2.Resumo das funções Veja abaixo o resumo das funções que serão estudadas: Primeiro bloco --------------------------------------------------------------------------- dbSprite() - Define uma sprite atrelando uma imagem e posição inicial. dbSetSprite() - Configura propriedades da sprite, transparência e flag de preservação do background. dbDeleteSprite() - Deleta a sprite dbShowSprite() dbHideSprite() dbHideAllSprites() dbShowAllSprites() Estas funções escondem ou re-exibem sprites. dbMoveSprite() dbOffsetSprite() Estas funções movem ou deslocam a sprite pela tela. dbSizeSprite() dbScaleSprite() dbStretchSprite() Estas funções alteram o tamanho ou a escala da sprite dbRotateSprite() - Roda a sprite dbFlipSprite() dbMirrorSprite() Inverte horizontal ou verticalmente a sprite dbPasteSprite() - Resposiciona a sprite na tela dbCreateAnimatedSprite() dbPlaySprite() dbSetSpriteFrame() Estas funções produzem sprites animadas. dbSetSpritePriority() - Configura a prioridade de exibição da sprite dbSetSpriteImage() - Reajusta a imagem da sprite dbSetSpriteAlpha() - Ajusta a transparência da sprite dbSetSpriteDiffuse() - Ajusta a cor difusa da sprite dbSetSpriteTextureCoord() - Reajusta a textura da sprite Segundo bloco --------------------------------------------------------------------------- dbSpriteExist() - Verifica se a sprite existe dbSpriteX() dbSpriteY() Retornam a posição da sprite na tela dbSpriteOffsetX() dbSpriteOffsetY() Retornam o deslocamento da sprite nos eixos xy. dbSpriteScaleX() dbSpriteScaleY() Retornam a escala da sprite nos eixos xy. dbSpriteWidth() dbSpriteHeight() Retorna a largura e altura da sprite. dbSpriteImage() - Retorna o número da imagem da sprite dbSpriteMirrored() dbSpriteFlipped() Verificam a inversão da sprite. dbSpriteHit() dbSpriteCollision() Verificam a colisão da sprite com outras dbSpriteAngle() - Retorna o ângulo da sprite dbSpriteFrame() - Retorna o número do frame corrente da sprite dbSpriteAlpha() - Retorna o grau de transparência da sprite dbSpriteRed() dbSpriteGreen() dbSpriteBlue() Retornam o valor RGB da cor difusa da sprite. dbSpriteVisible() - Retorna visibilidade da sprite.
index << >>


Produzido por Gameprog: Jair Pereira - Setembro/2013 © gameprog.br@gmail.com http://www.gameprog.com.br http://www.nucleoararat.com.br