Não consegui formular um título mais específico para descrever o problema que estou tendo. E talvez não consiga descrever perfeitamente a minha dúvida. Vou tentar explicar da forma mais simples e resumida possível.
Eu tenho uma classe chamada Sprite com uma propriedade do tipo Image. Essa classe tem o seguinte método para desenhar a imagem na tela:
public void draw(Graphics g) {
g.drawImage(image, x, y, null);
}
Onde x e y são também propriedades da classe, previamente definidos.
Em uma outra classe, eu faço a chamada de um outro método que, teoricamente deveria desenhar a imagem na tela. O método é o seguinte:
public void loop() {
while(running) {
Graphics2D g = (Graphics2D) strategy.getDrawGraphics();
g.setColor(Color.black);
g.fillRect(0,0,800,600);
image.draw(g);
g.dispose();
strategy.show();
}
}
Onde image é um objeto da classe Sprite e strategy é um objeto BufferStrategy, ambos previamente definidos.
Ok. O problema é que, por algum motivo, quando executo o código, a imagem que teoricamente deveria aparecer na tela (dentro de um JPanel dentro de um JFrame), não aparece. Assim que executado, o programa roda por tempo indeterminado, sem que nada aconteça. Nem mesmo o formulário JFrame aparece.
Ficou claro? Espero que saibam me dizer o que exatamente estou fazendo de errado, e como resolver.
Obrigado.
