V-SYNC(垂直同期)について ver2.2
表記はされてませんが、一部言葉が間違っていますと
コメントいただきましたので間違っていたところを書き直しをいたしました
名無しさん。コメントありがとうございました(´・ω・)
今回の記事の内容ですが
VSYNC 【Vertical Synchronizing signal】
(垂直同期信号)についてのお話。
知り合いに垂直同期って何? って言われましたので
今回はソレの説明を行おうかと思います
まず初めにV-SYNC〈垂直同期〉をオンにすると
FPSの上限がモニタのリフレッシュレートに固定されます。
そもそも、どうしてこのようなように働くかと言うと、
液晶ディスプレイのリフレッシュレートに信号を合わせようとするためである。
ですがモニタのリフレッシュレートが60hzまでなら、
実際にモニタに表示できる1秒間に60フレーム分しか表示できないため、
余ったフレームが画面に全て表示できず、100枚がバラバラになって表示されてしまい
画面が乱れたり 切れたりする現象が起こるため。
その描画を安定させるために
モニターのリフレッシュレートと同期させる機能として搭載されています
そう思うと垂直同期を標準で設定させているゲームがあるというのもうなずけますね。
ではどうして垂直同期をONにしているゲームが多いかというと、
V-SYNCがオフかつGPUが描画しているFPS値がリフレッシュレートを上回っているとき、
一瞬だけ複数のフレームが混じりあった画面が表示されることがあるためである。
これはいわゆるティアリングと呼ばれる現象でGPUから送られてきたあるフレームを
ディスプレイが表示しきる前に次のフレームが
GPUから送られてきてしまうため発生するためである。
(厳密にはFPSがリフレッシュレート以下でもティアリングは発生する)
例えばリフレッシュレート60Hzの液晶に180FPSの映像を出力した場合、
ディスプレイの画面1更新(1/60秒)あたり
最大3フレームが交じった映像が表示されることがある。
(特に映像の変化が激しい場合に顕著)
簡単にいうと、ちらつきが起きるようになります
オンにした場合、GPUはディスプレイがフレームを表示しきるのを待機してから
次のフレームを表示するのでティアリングが発生せず、
また1Hzあたり1フレーム送信するためシステムに
余計な負荷がかからないので描画が安定する
そのため、基本的にはV-SYNCをONにしておいたほうが
ティアリング対策になるためにちらつきが気になる場合は必須項目ともいえます。
ただし前述の理由より、
VSyncを有効にするとティアリングは発生しにくくなりますが
キーボードやマウスの入力系に遅延が発生し、
しかもフレームレートも頭打ちとなるためオフ時にくらべると、大幅に落ちるので
100パーセント必須ともいえなかったりします
これがリフレッシュレートと垂直同期のお話であります。
ここからまとめになります。
k.tさんの情報により少し内容を変更しました
*リフレッシュレートが60hzだった場合モニタに表示されるのは60FPSまでであること
*60FPS越えのフレームレートで描写数による表示の恩恵を感じるには
アクティブ120hz以上のモニタ+対応ゲームを持っているということが必須である
→ただし、操作遅延など別の部分で恩恵を感じることは出来るため、
無理に垂直同期をさせて60FPSなどにしなくて問題ないです
*FPSゲームで垂直同期を使用するとマウスポインタの動きがもっさりしているよう感じるのも
FPSの内部換算によってポインタの動きが更新されているからではないかとされる。
*垂直同期ONには負荷軽減とティアリング対策の恩恵があるが
高負荷プレイ時に58~59FPSなど60FPSから下がることもあり
場合によっては垂直同期をOFFにしたほうがレスポンスが上がることがある
*ビデオカード側でOpenGLトリプルバッファリングを有効にすると、
垂直同期が有効であり、フレームレートが垂直同期リフレッシュレートよりも
低い場合に限って、ゲームのフレームレートが向上するようになります。
これにより垂直同期起動時に60以下になることを防いでくれるようになるため(完全ではない)
垂直同期が有効な時はトリプルバッファリング有効にしておいたほうがいいのかもしれません
(ただし遅延も大きくなりますので注意です)
*垂直同期を入れることで余分な描写枚数が減る。
そのためまったりとしたオンラインゲーム等で使用すると節電につながることも
ここは私的の評価なのですが、
バイオ5やデビルメイクライ4などのゲーム等では垂直同期をONしたほう場合に
ちらつきが抑えられたと思うことがありました
しかしながらFPSゲーム等、一部のゲームでは垂直同期をOFFしたほうが
良いとされる場合が多いため、絶対ONにしたほうが良いとは言えません
しかもオンラインゲーム等のフレーム数はサーバーとの同期数に繋がるとの話もあり
フレーム数によってはゲームの勝敗や反動の大きさが変わってくるということもありえます
http://http://neonia1st.blog8.fc2.com/blog-entry-111.html#more
ですので
デバイスの更新やオンラインゲームを同期スピードを早くしたい際は垂直同期をオフ
ちらつきやオフラインゲーム、デバイススピードが必要ないゲームは垂直同期をオン
にすると効率よいゲームプレイが出来ると私は考えております
そのため垂直同期という設定は覚えていて損はないことですので
垂直同期設定が可能なお持ちのゲームを使って
一回試してしてみるといいかもしれませんね。
*最後に一言
垂直同期をONにしても絶対的なティアリング対策が出来るとは限りません・・
逆に垂直同期を入れることで起こるティアリングもあるので注意です。
それに最近のゲーム、AVAなどは内部で引裂き処理を行っている場合があり
フレームがリフレッシュレートを超えていてもティアリングが発生しないこともあります。
そのため垂直同期を一切使わないというのも一つの選択肢なので
色々と確かめてみるといいかもしれません
え?それじゃ同期をONにする意味ないって?
ノンノン
リフレッシュレート以上余分なフレーム数を描写しないという事は
全体的なグラボの負荷が小さくなりやすく節電になったりする場合もあるので
利点が0というわけでもなかったりするのです。
しかし操作遅延が発生したり、別でティアリングが起こることもあるので
結構難しい話だったりします・・ (´ε`;)ウーン…節電用が鉄板なのかしら?
では今回もこんなところで~
| GPU関係 | 12:41 | comments:7 | trackbacks(-) | TOP↑
垂直同期入れるとどうしてもポインタが遅いんですよ…
普段90~300FPS出てるんですが60Hzに固定すると内部で200FPS換算でポインタを更新しているのか差分分ポインタが遅く感じます^q^;
高負荷ゲームの場合は60HzでもFPSが58~59になってしまうこともありコンシューマーやストラテジー以外では切った方がレスポンスがいい気がします
| k.t | 2011/04/12 16:50 | URL |