gui.framework.loop
------------------------------「GameLoop.java」-----------------------------------
package gui.framework.loop;
import gui.framework.scene.SceneController;
import gui.framework.window.GameFrame;
import gui.framework.window.WindowParamServer;
/**
* ゲームのメインループ
* ループ内でゲームの状態を更新して、画面に描画する
*
* @author M.A.E.D.A.
* @version 1.0.3
*/
public class GameLoop implements Runnable {
private final GameFrame gameFrame;
private final SceneController sceneController;
public GameLoop (GameFrame gameFrame, SceneController sceneController) {
this.gameFrame = gameFrame;
this.sceneController = sceneController;
}
/**
* ゲームのメインループ
* ループ内でスリープ処理が入る
*/
@Override
public void run() {
GameFrame.log("ゲームのメインループ");
while(true) {
sceneController.update();
gameFrame.repaintCanvas();
try {
Thread.sleep(WindowParamServer.getSleepMilliSec());
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}