不應該三重緩衝,Canvas是被動渲染的最佳解決方案嗎?我剛剛寫了這個顯示一個圓的java代碼。如果我將buffersraterate設置爲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類,我把畫布
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();
}
}
一點點,我會小心混合重和輕重量的部件 – MadProgrammer