预先注意:我现在无法包含我的引擎。我有自己的开发,但我使用了一些fr教程。 draw方法每秒被调用60次。
所以我有自己的Java Jframe(我创建了一个并设置了它的名字,而且都是),我使用frame.getGraphics()来获取Graphics对象。
在我被称为60次persecond的方法中,我增加一个int然后用它来绘制图像。基本上每秒我都会增加一个快速graphics.fillRect()的x值。
绘制矩形,但它非常滞后且不平滑。
我需要做些额外的步骤才能确保我有一个平滑的jFrame,每秒可以绘制很多图像吗?
答案 0 :(得分:0)
我建议在画面上添加画布,然后使用画布的BufferStrategy。
class Game extends Canvas {
public static void main(String[] args) {
Game game = new Game()
//init frame and add canvas
while(true) {
render();
}
}
public void render() {
BufferStrategy bs = getBufferStrategy();
if(bs == null) {
createBufferStrategy(3); //triple buffering
return;
}
Graphics g = bs.getDrawGraphics();
//do what you want with Graphics g
g.dispose();
bs.show();
}
}