-
描画制限でVRR用の設定が欲しい
このあたりの話の続きになります
結論だけ先に書きますと、
描画制限のリフレッシュレートを任意の数値で指定させてほしい
という感じです
これが出来るとマルチモニタでリフレッシュレートが正しく設定されなくなる問題にも対処できるような気がします
どういうことか簡単に説明しますと…
VRR(G-SYNCやFreeSync、Adaptive Sync)って
対応する範囲内のフレームレートなら滑らかに表示する機能なんですが、
FF14の描画制限って例えばモニタのリフレッシュレートが60Hzである場合、可能な限り60fpsになるように制御しようとしているように思います
その結果どうなるかというと、60fpsに一瞬とどかなかった場合に画面がカクつくんです
VRRなのになんでやねんとなるんですが、VRRって例えば60Hzのモニタの場合に40~59fpsは滑らかに表示します、なんですよね(大半のモニタが)
なので60から59に落ちた瞬間はVRRが働かない(ことが多い)んです
この現象が(FF14のPC版において)発生しやすいのはWindows10に実装された「ウィンドウゲームの最適化」がオンになっている仮想フルスクリーンの環境だと思います
私は自動HDRを使うためにこの機能をオンにせざるを得ないのですが、
これがオンの場合、ボーダレスウインドウのゲームの実装によっては最大フレームレートが安定しなくなります
PC版のFF14はこの問題に該当し、カクつくようになります
それで以前にウインドウモードにして外部ツールでウインドウの座標を操作して1ドットデスクトップが見えるようにする 小細工 をしていましたが、
https://lds-img.finalfantasyxiv.com/...8d53aa79cc.png
最近はRTSSを使ってフレームレートを意図的にリフレッシュレート未満に設定してFreeSyncにまかせるようにしています
(75Hzのモニタで仮に73fpsに設定しています、RTSSにはVRR上限の95%のフレームレートを指定する機能がありますがその場合は71fpsになります)
この方法であそんでいる場合フレームレートの上限がVRRが作動する範囲内におさまっているために一瞬73fpsに届かない事があってもVRRが正しく作動します
この界隈ではマイクロスタッターとよばれて長年対策が議論されているようですが、
ゲームのレンダリングエンジンのFPS制限機能の良し悪しできまるためゲームによっては諦めてRTSSを使うのが主流のようです
モニタのリフレッシュレートをこえる高いフレームレートを滑らかに表示させるのはFast SyncやEnhanced Syncといったグラボのドライバの代替V-Syncと呼ばれる機能が担当するんですが、
こいつらに任せるとフレームレートが無制限になってしまう為GPUが常に100%に貼り付いてしまいます
グラボのドライバのフレームレートリミッターを使えば最大値を抑え込めますが、代わりに若干の入力遅延が発生するようです
ちなみにRTSSのフレームレートリミッターも同じように入力遅延が発生します
どちらも1フレーム程度のようですが…
-
ちなみにFF14のFPS制限がなんで安定しないことが多いのかというと、
モニターのリフレッシュレートと「リアルリフレッシュレート」が異なるという何を言っているんだ…ということが原因らしいです
https://lds-img.finalfantasyxiv.com/...b45e8b6890.jpg
これはこちらの https://www.testufo.com/refreshrate モニターの残像チェックUFOでお馴染みのサイトのリアルリフレッシュレート測定機能で測った数字です
私は75Hzのモニタで73fpsと指定しましたが、RTSSでフレームレートリミッターを使う場合は74.971程度を指定するのがGuru3Dでの一般的な使い方のようです
最近のRTSSにはフレームレートリミッターよりさらに良い制御方法とされるScanline syncと呼ばれる制御が実装されていますが、GPU負荷が軽すぎるとうまく動作しないという問題に該当してイマイチ安定しません…w