Windowsの3フレーム遅延について
こんにちはこんばんわサタルタンです。
本日は3フレーム遅延について記載します。
2018年5月19日 追記
記事自体忘れていたのですが、いつの間にかコメントにてご指摘いただいておりました。
**ゆー **さん によると下記のとおりです。
1Windows 10でdwm.exe(Aero)を切る方法
2Pstoolsの導入
3https://technet.microsoft.com/ja-jp/sysinternals/pstools.aspx
4以下のコマンドを実行する。
5taskkill /IM explorer.exe /f
6pssuspend winlogon.exe
7taskkill /IM dwm.exe /f
8explorer.exe
9動画
10https://www.youtube.com/watch?v=nnMuOxBwnKQ
https://technet.microsoft.com/ja-jp/sysinternals/pstools.aspx
https://www.youtube.com/watch?v=nnMuOxBwnKQ
Aeroを切る手順があるようです。
これにより良く出てくる3フレーム問題に対応できることになります。
私は行っておりませんので申し訳ないですが自己責任で行ってみてください。
過去記事は以下
この記事をご覧の方はWindowsのPCで3フレーム分の遅延が起こっていることをご存知でしょうか?
※ここで言うWindowsとは「Windows Vista」「Windows7」「Windows8」「Windows8.1」「Windows10」を想定しています。
さて、この遅延がなぜ発生するのかですが、一般的にはAeroと呼ばれるWindowsの画面を綺麗に見せる機能により発生していると言われています。
なので、Aeroを切ることで回避できると言われています。
参考記事はこちら
方法なども上記のページに記載されています。
さて、紹介したページには2つ目としてNvidiaとAMDについて記載されています。
この理由は3フレーム遅延する理由はDirectXによる問題で、ゲーム側またはグラフィックカードにて3フレーム遅延の3フレームという部分を1フレームまで落とすことが可能なのです。
3フレーム遅延の出処はこの部分だと掲示板などに書かれていました。
補足で説明しておくと、1フレーム以下はアプリケーション依存になります。
(通称0フレーム)
実際は0フレームじゃないらしく、1フレームの遅延はXPを含めた全てのWindowsにて発生するらしいです。
まぁ完全に遅延なしができればいいですが、何をどうやっても不可能なのでそこは諦めてください。
根本的にマウスのクリックやキーボードの操作、画面への出力からネットワーク速度、グラフィック生成速度など遅延は起きますし、置きまくってます。
だからこそ私は諦めてくださいと可能なら遅延を減らしたいと考えます。
次にWindows8以降についてですが、Aeroが切れないそうです。
なぜならONやOFFの項目がないかららしいです。
やりたい場合はAero非対応のテーマを変更することで可能らしいですが、正直な話イマイチな対応に思えます。
更に調べた結果DirectX側で3フレーム遅延が対応済みでグラフィックカードでの変更のみで良いらしいのです。
参考記事はこちら
上記の記事はすごくしっかり書かれています。
おおまかに言うとAeroを切らなくともグラフィックカード側でフレーム数を最低にして、スケーリングをグラフィックカード側で行えば気にするレベルではないということらしいです。
更にAeroを切ればと一番上で言いましたが、Aeroのプレビュー機能(Windowsのタスクバーないのアプリケーションのアイコンにマウスオーバーすると出てくる画面)により遅延が発生しているから、その機能をOFFにしたりゲームをフルスクリーン化することで対応できるとどこかで見ました。
よって、まとめます。
- Aero機能をOFFにするのが一番簡単
- 性能が高いのであればグラフィックカード側で対応しよう
- どのWindowsでも遅延が発生する
- DirectX側で一応この問題の対処は終了している
- ぶっちゃけ人間の感覚上誤差の範囲
ということですね。
面白い記事があったのでこちらを一読してみてください。
以上!お疲れ様でした。