5

OpenGL を使用して開発している新しいゲームに VSync を使用するかどうかを決定しています。目標は、ユーザーに最高のゲーム体験を提供し、パフォーマンスと品質のバランスをとることです。このゲームは、古い (Intel/Netbook) コンピューターと新しい (NVidia/i7 デスクトップ) コンピューターの両方で動作するように設計されています。ただし、VSync の目的はテアリングを防ぐことであることは承知しています。VSync をオフにしても、このテアリングの問題を再現できませんでした。最高の体験を提供するため; VSync をオンまたはオフにする必要がありますか?

4

3 に答える 3

9

この問題について言えることはたくさんあります。道を数えましょう:

  1. ティアリングが見られない場合は、そうではないと思っていても、vsync されている可能性があります。理由はさまざまですが、最終的には、何らかの動きが発生している場合、フレームの途中でバッファーを交換することが非常に目立ちます (理由の 1 つは、バッファーを反転するように構成されていないため、何かがフレームバッファーのコピーを実行する必要があるためです)。
  2. vsync on にも顕著なアーティファクトがあります。通常、可変時間表示するフレームを作成し、レンダリング レートよりもディスプレイのリフレッシュ レートに結び付けます。これにより、マイクロスタッタリングが発生する可能性があり、制御が非常に困難です。フレームを生成するタイミングがわからないため、どのティックで表示されるかがわからないため、モーション アーティファクトを補正することはできません。これが、一部の人々がレンダリング速度をリフレッシュ レートに固定しようとする理由です。常に 60 fps (または 30 fps) でレンダリングします。時間の更新はtime += 16.7msJohn Carmack が「60 Hz で vsync を実行するが、締め切りに間に合わなかった場合は同期しない」モードを求めていました。
  3. vsync on で電力を節約 (ネットブックでは重要)
  4. vsync をオフにすると、入力レイテンシが短縮されます (入力が表示の 3 フレーム前になると、問題が発生する可能性があります)。その一部を補おうとすることはできますが、最終的には、最後の最後で入力の更新を挿入するのは困難です。

したがって、結論として、完璧な答えはありません。それは、ゲームにとって何が重要かによって異なります。確認する必要があるのは、達成したいフレームレート、入力レイテンシーの重要性、ゲーム内の動きの量、パワーが懸念されることです。

于 2011-05-07T21:11:49.220 に答える
4

最高のユーザー エクスペリエンスを得るには、VSync のオン/オフを切り替えるオプションをメニューに配置します。このようにして、ユーザーは決定できます。テアリングを再現できない場合もありますが、一部のシステムでは確実に実際の問題です。

デフォルト設定がどうあるべきかについては、よくわかりません。それはあなたの選択だと思います。有効にするとパフォーマンスが少し低下し、ほとんどの人はテアリングを認識しないか気にしないため、デフォルトで垂直同期をオフにすることを好みますが、デフォルトで有効にする十分な理由もあります.

于 2011-05-07T19:55:14.530 に答える
2

VSyncのデフォルトはオンにする必要があると思います(プログラミングの経験ではなく、すべてのゲームに基づいています:))。あなたがそれを見ないからといって、あなたが良い習慣に従うべきではないという意味ではありません.

  • 他のゲーマーほど画面をじっと見つめることができないかもしれません
  • 少し涙が出ても、一部のゲーマーほどイライラしないかもしれません
  • おそらくあなたの特定の画面は、他の画面よりも涙をよく隠します

また、schanaader が述べたように、通常、ゲームはビデオ設定メニューのどこかに構成オプションとして vsync を残します。vsync が何を意味するのかを知らない人のために、デフォルトは引き続き「オン」にする必要があります。ユーザーが十分な知識を持っている場合は、微調整して違いを確認するオプションがあります。

于 2011-05-07T20:04:06.443 に答える