调整整个游戏窗口的重绘机制。
FPS:frame per second
要每秒规固定的刷新我们的窗口。FPS=33帧
每隔30ms刷新一次(对整个窗口进行重绘)。repaint()
单独启动一个线程用于窗口的重绘。
采用Runnable接口的方法开启线程。
重写run方法,每隔30ms调用repaint方法。
@Override
public void run() {
while(true)
{
repaint();
try {
Thread.sleep(REPAINT_INIERVAL);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
在构造方法中开启线程。
public GameFrame() {
initFrame();
initEventListener();
initGame();
new Thread(this).start();
}
那么之前写所有repaint方法都可以注释了。