#author("2024-01-06T11:50:46+09:00","default:pitablog","pitablog") #include(include/oldblog,notitle) CENTER:&ref(https://blog.pitan76.net/wp-content/uploads/2022/07/LWJGL33.png); ---- * 【LWJGL3】60FPSでループ処理 #3 [#title] #splitbody{{ LEFT: &tag(情報技術,プログラミング,Java,LWJGL,LWJGL3); #split RIGHT:&size(13){投稿日: 2022-07-28 (木)}; }} #bcontents Windowクラスへ以下の変数を追記しておく。 // 基準のFPS public int fps = 60; // FPS public double fpsCap = fps; public double time, processedTime; 以下の関数も追記 public boolean isUpdating() { double nextTime = getTime(); double passedTime = nextTime - time; processedTime += passedTime; time = nextTime; while (processedTime > 1.0/fpsCap) { processedTime -= 1.0/fpsCap; return true; } return false; } // 現在のFPSを取得 public double getFPS() { return fpsCap; } // 時間の取得 public double getTime() { return (double) System.nanoTime() / (double) 1000000000; } Windowクラスのinit()関数の最後に以下の処理を追記 time = getTime(); &ref(https://blog.pitan76.net/wp-content/uploads/2022/07/Pasted-19.png,); * Mainクラス(動作確認) [#be9f1101] public static void main(String[] args) { Window window = new Window(); // ウィンドウの初期化 window.init(); // 閉じるまでループ while (!window.isClosed()) { if (window.isUpdating()) { // イベントの更新 window.update(); System.out.println(window.getFPS()); // バッファの更新 window.swapBuffers(); } } } &ref(https://blog.pitan76.net/wp-content/uploads/2022/07/Pasted-20.png,); 現在のFPS(60.0)が表示されたら成功です。 ** コメント [#comment] #pctrlcmt &size(10){キーワード: 描画ライブラリ, アプリ開発, アプリケーション, 描画処理, グラフィック};
Pitan |
![]() |
プログラミングや音MADやらが趣味 |
[もっと見る]
[もっと見る]