DXライブラリを使って、FPS制御プログラムを組んでます。無事に動きますけど、ティアリングが発生します。そのため、垂直同期を有効にし、だが新たの問題が発生しました:垂直同期を無効にする時は、秒に 60 フレームの出力で安定していますが、垂直同期を有効にするとたまにフレームドロップする。
自分のパソコンは 60Hz のリフレッシュレートに設定していますが、実際のリフレッシュレートは 59.920Hz です(この二つのサイトに測定できる:www.testufo.com/refreshrate と www.vsynctester.com)
ただ 0.08 Hz の差ですが、実際秒に更新する回数は 59・60 の二つの状況がある。そのためフレームドロップが発生し、たまに「カクつき」が発生する。だがフレームドロップしないと処理落ちの時の対処が出来ない、そして 30 分後は 144 フレーム、60 FPS なら 2.4 秒の差が生じる。
もしプログラムの目標FPSを 59.92 に設定しますと、垂直同期有効の場合もレームドロップしない、でもこれはじぶんのパソコンに測定した結果、DXライブラリでは 60 Hz しか取得出来ない。そして1秒の長さも60フレームじゃなくなる、計算は乱れます。
これはどうやって対処するのは良いか分からない…いい方法があれば教えてください。
リフレッシュレートが 60Hz 未満の場合のFPS制御
Re: リフレッシュレートが 60Hz 未満の場合のFPS制御
1. フレーム数でなく、実際の経過時間を基に計算する。
2. 処理落ちが問題と無いようなモノは、1 ステージ 30 分もやらない。
2. 処理落ちが問題と無いようなモノは、1 ステージ 30 分もやらない。
VTuber:
東上☆海美☆(とうじょう・うみみ)
http://atassyu.php.xdomain.jp/vtuber/index.html
レスがついていないものを優先して、レスするみみ。時々、見当外れなレスしみみ。
中の人:
手提鞄あたッしュ、[MrAtassyu] 手提鞄屋魚有店
http://ameblo.jp/mratassyu/
Pixiv: 666303
Windows, Mac, Linux, Haiku, Raspbery Pi, Jetson Nano, 電子ブロック 持ち。
東上☆海美☆(とうじょう・うみみ)
http://atassyu.php.xdomain.jp/vtuber/index.html
レスがついていないものを優先して、レスするみみ。時々、見当外れなレスしみみ。
中の人:
手提鞄あたッしュ、[MrAtassyu] 手提鞄屋魚有店
http://ameblo.jp/mratassyu/
Pixiv: 666303
Windows, Mac, Linux, Haiku, Raspbery Pi, Jetson Nano, 電子ブロック 持ち。