Olá =]
O que estou querendo fazer pode ser melhor explicado com o código a seguir, de modo muito simplificado. Estou usando a classe Applet e AWT.
public void paint(Graphics g){
engine.desenhaImagens(g);
engine.desenhaTexto(g);
}
Class Engine:
public void desenhaTexto(Graphics g) {
g.drawImage(Imagens.getBufferedImage(this.texto),0,0,null);
}
public void desenhaImagens(Graphics g) {
g.drawImage(Imagens.getBufferedImage(this.imagem),0,0,null);
}
O que eu gostaria de fazer é, ao invez de desenhar as imagens no graphics e o texto no graphics, eu desenhar a imagem em um outro graphics aparte, o texto em outro graphics aparte, e o paint simplesmente desenhar estes graphics a parte no graphics principal. Isso facilitaria para eu poder movimentar as imagens sem movimentar o texto com o g.translate() por exemplo.
Outra coisa que eu gostaria de fazer é mudar a resolução das imagens, ampliar todas as imagens 2x (ou seja, 1 pixel = 4 pixels). Se eu dou um g.scale tanto no update quanto no paint os graficos acabam ficando bastante lagados, pois mesmo se eu executo o scale uma vez só, todo refresh o applet acaba re-escalando todas as imagens do graphics que eu dei scale. (castados p/ graphics2D, para terem scale).
Obrigado des de já, e a quem puder ajudar.
[]´s Gabriel