パソコンでゲームをしてると画面がカクついたり、波々と揺らいで見えたりしてゲームがしずらいなって感じたら、なんとかしてみようとググったりします。
すると垂直同期がなんちゃら、V-SYNCがオンにするとなんちゃら、同期のタイミングがずれるとどうたらで、カクカク、ウネウネなんてよく分からない言葉のオンパレードです。
そこで、これからPCゲームを始める?始めた人向けにカクカク・ウネウネ症状の理由と解決方法を簡単に説明します。
5分で分かるテアリングとスタッタリングと解決方法
なるべく分かりやすい言葉で簡単に説明してみました。
2回くらい読めばテアリングとスタッタリングについて理解できると思います。理解できなければ僕の言葉が拙いんだと思うので随時加筆・訂正する予定です。
モニターは固定リフレッシュレート
大事な事です、とりあえず憶えて下さい。
基本的にモニターのリフレッシュレートは固定レートなので、60Hzだったら1秒間に60回画面を描き換えて、30Hzだったら1秒間に30回描き換えられます。
超高速パラパラ漫画(アニメ)をイメージしてもらえばOKです。
なにしろ60回と30回で固定で、45回とか22回とかはありません。
※モニターによっては240Hz・144HZ・120Hz・50Hzなどを選べる機種もあります。
グラフィックボード(GPU)は好き勝手に画像を送り出す
先ほどモニターのリフレッシュレートは固定と言いましたが、グラフィックボードから送り出される画像データ(パラパラ漫画の原稿)は固定レートではありません。
グラフィックボードの処理能力や処理するデータ量によって好き勝手な分量で送りだし、受け手(モニター)の事をまったく考えてくれません。
例えばグラボの処理能力(アニメーター)に余裕があればジャンジャンセル画を描いてしまい、1秒間に60枚どころが80枚も100枚も書いてしまいます。
しかし、グラボの処理能力を超える仕事が来ればもちろん遅くなり、60枚必要なところに40枚しか描けなくなったりします。
モニターの描画方法
モニターは送られてきたデーターを画面左上から右に向かって映像化していきます。右端に到達したら一段下がりまた左から右に向かって映像化していきます。
これを画面右下まで行うと、また左上に戻り同じことを繰り返します。
これを走査とかスキャンと呼びます。
解像度がフルHDの場合、横1920×縦1080ピッチになっているので、映像化する時には1080本のラインを1本1本上から下に描きながら映像化していきます。
PCモニターの場合はプログレッシブ方式なので隣り合うライン1本ずつ表示していき、テレビなどはインターレース方式と呼ばれ、隣り合う線を飛び越えて次ぎの線を表示していき、それを互い違いに行うことで映像化していきます。
映像がチラチラ・ナミナミする原因と解決技術
モニターについての基本的な約束事が分かったので、あの忌々しいチラチラ現象について説明していきます。
テアリング現象
PCゲームをしているとよく聞く言葉です。
このテアリング現象は、グラフィックボードが送り出すフレームレート(FPS)がモニターのリフレッシュレートとずれる事で起きる現象です。
モニターの描画方法で説明したように、モニターは常に左上から右下に向かって描画しながら進んで行きます。
そこに60Hzをずれたタイミングでデータが送り込まれてくると描画している最中に送られてきたデータを描画し始めます。このタイミングが画面の中ほどで起き、今まで描画している画像と違う画像が描画し始めると連続性のないズレた画像が表示され、それが高速で連続して行われるとチラチラ・波々した映像として認識されます。
これがテアリングの正体です。
なので、リフレッシュレートを上回っても、下回っても起きる現象なんです。
V-SYNC(Vertical Synchronizing signal)
ティアリングの発生原因はグラボがリフレッシュレートを無視して勝手に描画枚数を増減させる事なので、じゃあルールを作っちゃおうってなったのがこれです。
V-SYNC(ブイシンク・垂直同期)
このV-SYNCのルールは簡単で、グラボの処理能力を制限してモニターのリフレッシュレートに合わせ超えないようにするだけです。
モニターのリフレッシュレートが60Hzだとすると、グラフィックボードからは常に60Hzでデータが送り出されます。
この状態を同期した状態と呼び、中途半端な位置から描画を開始しないので、絶対にティアリングは出ません。
しかし問題があって、何らかの原因でグラボの処理能力が遅れて60Hzで出力できなくなった時に問題が発生します。
これがスタッタリング。
設定は『コントロールパネル』→『ハードウェアとサウンド』→『NVIDIAコントロールパネル』→『3D設定の管理』からできます。
ちょっと不親切な表示になってますが、項目『垂直同期』をクリックする選択画面が現れます。
3Dアプリケーション設定を使用するは、ゲームや3Dテクスチャソフトの設定を使います。
オフは垂直同期を使いません。オンにするとV-SYNCが適用されます。
スタッタリング現象
スタッタリングのイメージは処理能力が低いグラボ(アニメーター)だと思って下さい。
『ダメだ、仕事が多すぎてこなせね。無理、無理、毎秒60枚必要らしいけどちょっと遅れちゃった。俺は頑張った、後はなんとかなるべ』
って感じで、もう既になんとなく何ともならいような予感がしますが、もちろん毎秒60枚必要なところにオンタイムでデータを送りだせません。
『しゃあないじゃん、次のタイミングで描いた絵を送るからさぁ、今んとこ前の絵をもう1コマ使ってよ』
ってなります。
そうするとモニターを見てる人は『なんだ?一瞬止まった?もっとヌルヌル動けよコラッ!!!!』ってなったりします。
これがスタッタリング呼ばれるカクツキの原因です。
これが続くようですとカクカクして不愉快な感じになるので、V-SYNCの固定レートを30Hzに下げる等の設定を軽くする必要があります。
- V-SYNCはテアリング対策の技術であってスタッタリングはどうにもなりません。
Adaptive V-SYNC
高性能グラフィックボードを開発しているNVIDIAが開発したのが『Adaptive V-SYNC』です。
V-SYNCはモニターのリフレッシュレートに合わせた枚数しか画像を送り出さないので、グラボの処理が重く同期のタイミングを逃すとスタッタリングが生じてそれがカクツキの原因になるのが分かりました。
しかし『Adaptive V-SYNC』はグラボの描画枚数がモニターのリフレッシュレートを超えてる時はV-SYNCがONの状態になり、リフレッシュレートを下回る時にはV-SYNCがオフになります。
こうすることでティアリングは抑えられ、スタッタリングが出るような処理が重い時はV-SYNCがオフの状態になるので、流れを遮ることなく連続した描画になります
設定はV-SYNCと同じ画面から適応を選択します。適応(ハーフリフレッシュレート)はモニターの通常のリフレッシュレートの半分で行います(モニターのリフレッシュレートが60Hzなら30Hz)。
FAST SYNC
これまたNVIDIAが開発した技術で、グラボ内ではモニターのリフレッシュレートを上回る回数で描画するんですが、実際にはリフレッシュレート上限値で映像を出力する技術です。
これは超高性能グラボで処理の軽いゲームをして、フレームレートが毎秒200とか300とか出たりする場合に有効です。
V-SYNCやAdaptive Vsyncはモニターのリフレッシュレートを上限値としてグラボでの描画枚数を制限していますが、『FAST SYNC』では実際の上限値がないので、ゲーム時のコントローラーなどの入力系の遅れレイテンシー)が少ないのが特徴です。
高速(Fast)を選ぶと適用されます。
ゲームによってはゲームの仕様が強制的に適用されるケースもあるようなので、必ずこの設定が有効ではないようです。
G-SYNC
G-SYNCもNVIDIAが開発した技術で、上記の映像同期技術とは異なります。
V-SYNCなどの技術はPC側(GPU)をモニターのリフレッシュレートに合わせて映像出力をコントロールしますが、G-SYNCはモニターをPCの映像出力に合わせてコントロールします。
完全に主従が逆転しています。
その結果として、テアリングやスタッタリングのないシームレスな映像コントロールを実現しています。
僕もゲーム専用にリフレッシュレート240HzのG-SYNCモニターを使っていますが、高フレームレートでも負荷がかかった状態でも画像の乱れの発生は少なく快適にゲームできます。
※それでも完全にヌルヌルとはいかず、たまに引っ掛かりを感じる時はあります。
コメント