dreifach puffer starkes flackern
Sollte Triple Buffering und Canvas nicht eine optimale Lösung für passives Rendern sein? Ich habe gerade diesen Java-Code geschrieben, der einen Kreis anzeigt. Wenn ich bufferstrategie auf 3 belasse, flackert es so sehr. Wenn ich es auf 2 oder 1 zurückstelle, ist es in Ordnung. Vielleicht mache ich etwas falsch?
public void run(){
while (running){
update();
draw();
}
}
public void update(){
}
public void draw(){
BufferStrategy bs = getBufferStrategy();
if (bs==null){
createBufferStrategy(3);
return;
}
Graphics g = bs.getDrawGraphics();
g.setColor(Color.BLACK);
g.fillOval(30, 30, 20, 20);
g.dispose();
bs.show();
}
und dies ist die JFrame-Klasse, in die ich die Zeichenfläche eingefügt habe
public class Game {
public static void main (String [] args){
Pan game = new Pan();
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(true);
frame.add(game);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
game.start();
}
}