Sobre BufferedImage e getSubimage

0 respostas
G

Estou fazendo uma pequena classe que pode retornar um pedaço de uma imagem ou criar um objeto que gerencia a animação de uma sprite (daquelas que tem varios frames na mesma imagem, quando cortados e colocados em ordem faz uma animaçãozinha).

o tal objeto tem de guardar:
int current animation -> caso o sprite tenha mais de uma animação nele
int current step -> o quadro atual da animação atual
int(ou boolean) looptype -> se ele vai e volta na animação ou se vai do começo até o final e depois volta para a primeira
BufferedImage imagem -> a imagem original.

e vai ter o metodo BufferedImage getAnimationStep -> que retorna o quadro atual da animação atual e ai vem a duvida. É melhor durante a criação do objeto cortar a imagem original em todos os quadros possiveis e guardar em um array ou corta-la novamente toda vez que o metodo for chamado?

getSubimage supostamente usa a mesma data array que a imagem original, isso significa que o uso de memoria extra é constante? Quanto tempo demora pra cortar a imagem? Se não sabem o que é mais em conta então como faço pra medir a memoria usada por um objeto e o tempo de processamento de um metodo especifico?

Como estou fazendo essa classe para ser usada em varios outros projetos que eu venha a fazer (a maioria vai ser jogos) presciso que ele seja o mais otimizado possivel ;D

obrigado pela ajuda!

Criado 6 de agosto de 2009
Respostas 0
Participantes 1