import models.JumpGameModel;
import org.lwjgl.glfw.GLFWKeyCallback;
import static org.lwjgl.glfw.GLFW.*;
import static org.lwjgl.opengl.GL11.*;
//---------------------------------------------------------------
// ゲームループ提供
public abstract class GameEngine {
private GLWindow glWindow = new GLWindow();
//---------------------------------------------------------------
//---------------------------------------------------------------
// 初期化
protected void init() {
}
//---------------------------------------------------------------
// ゲームループ
protected void update(long window) {
}
//---------------------------------------------------------------
// 破棄処理
protected void destroy() {
}
//---------------------------------------------------------------
//---------------------------------------------------------------
// 実行系の本体
protected void run() {
// 初期化
glWindow.init();
init();
// メインループ
while (!glWindow.windowShouldClose()) {
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // バッファのクリア
update(glWindow.getWindow());
glWindow.swapWindow();
}
// 終了処理
destroy(); // デストラクタ
glWindow.destroyWindow(); // ウィンドウの破棄
}
//---------------------------------------------------------------
}