Разве тройная буферизация и Canvas не должны быть оптимальным решением для пассивного рендеринга? Я только что написал этот код Java, который отображает круг. Если я оставлю bufferstrategy на 3, он так сильно мерцает. Если я уменьшу его до 2 или 1, все в порядке. Может я что-то не так делаю?
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();
}
и это класс JFrame, в который я помещаю Canvas
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();
}
}