Unity の Gfx.WaitForPresent とは何か

カテゴリ:unity

単純にディスプレイの更新を待っているだけである. そうしないと テアリング が発生する恐れがある.

対策

テアリングのデメリットを許容できるなら V Sync を切ることで,Gfx.WaitForPresent を減少させられる. これは Edit > Project Settings > Quality の V Sync Count で設定できる.

location
v sync 無効
V Sync を切る

スクリプトから設定するには以下のようにする.
QualitySettings.vSyncCount = 0; // VSyncをOFFにする
Application.targetFrameRate = 60; // ターゲットフレームレートを60に設定

そのほかの原因

On Unity’s Gfx.WaitForPresent Problem

  • 影やアンチエイリアス,ポストプロセスが重い
  • gizmo が重い
  • iGPU を使っている
  • Primary Display で Unity を実行していない
  • など