20220728169 の変更点

20220728169 の変更点


#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
pitan_prof.png
プログラミングや音MADやらが趣味

最新のページ

最新の5件
2024-06-26 2024-05-29 2024-05-14 2024-05-08 2024-04-25

[もっと見る]

タグ

[もっと見る]

人気のページ

人気の5件

カウンター

合計: 80
今日: 1
昨日: 0
オンライン: 6
  編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS