広告企画
【PR】すべて分かるNVIDIAの新世代ディスプレイ同期技術「G-SYNC」。西川善司がその可能性を明らかにする
NVIDIAが提唱する「G-SYNC」(Gシンク)は,GPU主導の映像表示メカニズムだ。
これまで主流だったディスプレイデバイス主導型の,言ってしまえば「PC用ディスプレイやテレビの都合」に合わせた表示システムでは実現しえない,「いかなる状況下でもスムーズな映像表示を可能に」すると謳う新技術である。
今回4Gamerでは,下記のとおり,G-SYNC対応のディスプレイを用意できた。解像度と最大リフレッシュレート,そして2014年12月6日現在の実勢価格が異なる3モデルだ。
本稿では,G-SYNCの持つ特徴を解説しつつ,これら3台の対応ディスプレイで,実際にゲーム映像の見え方が従来からどう変わるかを検証してみたいと思う。
- Acer XB270HAbprz
27インチワイド,解像度1920×1080ドット,最大リフレッシュレート144Hz,実勢価格5万9000〜6万5000円程度(税込) - ASUSTeK Computer ROG Swift PG278Q
27インチワイド,解像度2560×1440ドット,最大リフレッシュレート144Hz,実勢価格8万9000〜9万9000円程度(税込) - Acer XB280HKbprz
28インチワイド,解像度3840×2160ドット,最大リフレッシュレート70Hz,実勢価格7万5000〜8万3000円程度(税込)
XB270HAbprz |
ROG Swift PG278Q |
XB280HKbprz |
G-SYNCの映像表示メカニズムを
あらためて確認する
G-SYNCとはそもそも「GPU側に同期する」という意味を持つ名称なのだが,「同期」と聞いてもピンとこないかもしれない。ただ,PCゲーマーであれば,「垂直同期」(以下,Vsync)という言葉を一度は聞いたことがあるのではなかろうか。
1枚の映像――専門用語で「1フレーム」という――は,画面の右下まで描ききると描画完了となり,次の映像を描くために電子ビームをリセットし,もう一度左上から映像を描写していくことになる。そして,このタイミングに相当するのが,「垂直の」という意味の英単語「Vertical」の頭文字を冠した前出のVsyncだ。
「伝送されてきた一次元的なデジタル映像データ」を,液晶パネル側で表示するときにも,「いつ折り返して」(=Hsync),「どこまでで1フレームが描き終わるのか」(=Vsync)という情報は,依然として必要なのである。
そして,ここで重要になるのが,Vsyncが「あるフレームの表示終わり」を意味するため,「Vsyncを1秒間に何回行うか」というのは,GPUが毎秒何フレーム(=何コマ)を表示できるかを示す「フレームレート」や,ディスプレイデバイスが毎秒何回映像を更新できるかを示す「リフレッシュレート」に相当するということだ。
ちなみに1秒あたりに行われるVsyncの数は,最も長く実用化されてきたディスプレイデバイスであるブラウン管の規格が誕生したときに定められた「Vsync 1回あたり60分の1秒(≒16.67ms)」が現在でも1つの基準となっている。毎秒60回なのでフレームレートだと60fps,リフレッシュレート周波数でいうと60Hzという計算になる※。
※正確を期すと,ブラウン管は1フレームを奇数走査線と偶数走査線の2回に分けて送る「毎秒60フィールド方式」のインタレース表示システムを採用していた。なので30fpsとする解釈もある。また,欧州では「毎秒50フィールド方式」を採用する地域も多かった。本稿では,話を簡単にする目的もあって,従来の映像表示方式において,Vsyncは1秒間に60回あったという前提で話を進めている。
この継承自体は,ブラウン管時代が終わった後も,映像業界だと大した不都合にならなかった。毎秒60フレームの映像は,動画として相応に滑らかで,過去の映像資産との互換性を維持するにも都合がよかったからである。
映画コンテンツに代表される毎秒24フレームもしくは30フレームの映像に対しては,HDMIが規格化されるとき,伝送方式が「24p」「30p」として規格化され※,ディスプレイデバイス側で個別対応できることになったりもしている。
※「p」は「Progressive」(プログレッシブ)の頭文字。インタレース表示方式とは異なり,奇数と偶数の走査線を分けることなく,左上から右下へ向かって走査していく方式のことをプログレッシブ表示という。
ではなぜ60なり50フレームというVsync周期が前提のシステムで30や24フレームが許容されるかというと,コマ数さえ一定であれば,コマ数の違いそのものは問題にならないからだ。「はい,ではこういった規格を定めましたから,以後はディスプレイデバイス側で対応よろしく」とすれば,ディスプレイデバイス側では,「毎秒,決められた回数だけVsyncが来る」前提で,伝送されてきた映像を決められたペースで表示するだけでいい。
そんな不安定な映像が実在するのかと思うかもしれないが,一般的なPCゲームはその代表格だった。
可変フレームレートの映像だろうがなんだろうが,現状の規格では毎秒60コマの表示システムに則って表示するしかない。
一般的なビデオコンテンツは,毎秒60フレームならば,1秒間のデータストリームの中に60枚のフレームがキレイに整列した構成になっている。それに対してゲームの場合は,リアルタイムに映像を生成しているため,当該シーンの複雑性や演算量によって,1秒間に60フレームの描画が間に合わないケースが出てくるのだ。
それこそ,ある瞬間は毎秒34コマになって,次の瞬間には51コマになるといった具合に,毎秒30〜60コマの間で激しく可変するなどといったことも十分にあり得る。
PCゲームにおける可変フレームレート表示では
カク付きかテアリングが付きものだった
もう少し正確に書くと,送出されるのは「フロントバッファ」(Front Buffer)と呼ばれる場所にある映像だ。フロントバッファにある映像は,リフレッシュレートに合わせて,60分の1秒ごとに送出されるのだが,その間,GPUは,「バックバッファ」(Back Buffer)と呼ばれる場所で,次の映像の描画を進めておく。そして,Vsyncのタイミングでフロントバッファの内容が送出されたとき,同時にバックバッファとフロントバッファを切り替える。その結果として,描画は途切れることなく行われていくのである。
GPUが映像を16.67ms以内に描画してバックバッファに置き,最も近いVsyncのタイミングでそれをフロントバッファに置けるなら,ディスプレイデバイスには過不足なく映像を表示でき,一般的なビデオコンテンツと同等の,スムーズな毎秒60コマ表示が可能になる。
ディスプレイデバイスが想定している表示タイミング,すなわちVsyncに同調して表示するこの流れは,とくに「Vsync有効」モードと呼ばれる。
では,Vsyncを有効にしたまま,毎秒60フレームに満たない可変フレームレートで映像表示を行うと,どうなるだろうか。
毎秒60フレーム未満の可変フレームレートということは,GPUが16.67ms以内に映像を描画できない状況が発生したということなので,描画処理の開始後,直近のVsyncタイミングを逃したということになる。そのため,次のVsyncがやってくるまでの間,画面には以前の映像が表示されたままとなり,次のVsyncタイミングがやってきて,やっと映像の送出ができるようになるわけだ。
この「以前の映像が表示されたまま」の状態は,定期的な映像構成フレームを表示している流れの中で,一瞬,停滞する感じで視覚される。これが「Stutter」(スタッター)と呼ばれる現象だ。日本語的には「カク付き」と表現することもある※。
※Stutterの同義語に「Judder」(ジャダー」もあるが,これは映像を構成するコマ数が少ないときに知覚されるもの。Vsync有効と可変フレームレートの映像によって引き起こされるカク付きとは,ニュアンスが微妙に異なる。
このカク付きは,「本来表示されるべきタイミングから遅れて表示される現象」でもあるため,「Lag」(遅延)と表現することもできる。表示が遅延する結果として,カク付きが生じるというイメージである。
それに対して,「PCゲームでは毎秒60コマ未満の可変フレームになるのが当たり前だ。にもかかわらず,16.67msごとのVsyncに合わせるというのは,それ自体が間違ってないか?」と,Vsyncを無視して映像を送出する(=バックバッファとフロントバッファを切り替える)動作モードが選ばれることがある。それが「Vsync無効」と呼ばれる動作モードだ。
Vsync無効であれば,あるフレームの描画が完了した時点で最新の映像を送出できるため,カク付きや遅延からは解放される。
しかし,あるフレームの映像送出が始まる時点で,1つ前のフレームの映像が送出中だった場合,1フレーム前の映像を送出している途中から,新しいフレームの映像送出へと切り替わることになる。Vsyncを待たないため,ディスプレイ装置側からすると,せっかく画面の左上から順番にフレームの表示を行っているのに,途中から,新たに送られてきた最新フレームの表示へと強制的に切り替えさせられることになる。
結果,画面の途中から異なる映像の表示に切り換わった,いわば「分断映像」になってしまう。この現象が「Tearing」(テアリング,ただし日本では字義からすると誤読である「ティアリング」読みが主流。以下カタカナ表記)だ。
G-SYNCはPCゲーマーをカク付きからも
テアリングからも解放する
まとめると,可変フレームレートの映像をVsync有効で表示すればテアリングはないがカク付きに見舞われ,Vsync無効で表示すればカク付きはなくなるがテアリングに見舞われる。文字どおりの「あちらを立てればこちらが立たず」状態である。
ここでやっと本題に入るわけだが,結論から先にいうと,NVIDIAが提唱する新しい同期技術であるG-SYNCなら,可変フレームの映像を表示したとき,カク付きもテアリングも生じなくなる。まさにPCゲーマー待望のソリューションなのだ。
ではどのようにしてNVIDIAはこの問題を解決したのか。
実は,NVIDIAがやったことは,映像表示システムが長年抱えてきた根本的な問題を1つ潰しただけだったりする。
簡単に言えば,G-SYNCというのは,ディスプレイデバイスにその頑固でマイペースな処理をやめさせ,映像送出元の都合に気遣うようにさせた表示メカニズムなのである。
これまで,映像送出元(≒GPU)からすると,ディスプレイデバイス側の都合に従うか(=Vsync有効),無視するか(Vsync無効)の二択しかなかったわけだが,G-SYNCであれば,ディスプレイデバイス側の映像の表示開始タイミングを,GPU側で制御することができるようになる。16.67msごとのVsyncを待つことなく,映像をすぐに表示開始できるためカク付きは起きず,そうやって逐次表示される映像は,必ずディスプレイデバイスの左上からの表示開始となるため,テアリングも起きない。
言い換えれば,G-SYNCとは,可変フレームレートの映像表示を,本来,あるべき形で表示させる仕組みなのだ。
上の図では,3番めに描画された内容が表示されるまでに待たされているように見えるため,「これは遅延では?」と思うかもしれない。走査は事実上,ディスプレイデバイスが映像全体を表示するのに要する時間(≒応答速度),つまりはリフレッシュレートなので,これを超える速度での表示は物理的に不可能だ。
ただし,リフレッシュレートそのものを引き上げれば話は別。60HzであればVsyncは16.67ms周期だが,これが120Hzになれば約8.3ms周期,144Hzなら約6.9ms周期にまで短縮できる。そのため,詳細は後述するが,G-SYNC対応ディスプレイには,一般的な60Hzよりも高いリフレッシュレートが採用される傾向にあるので,この点は押さえておいてほしい。
順に説明していくと,まず,NVIDIAが発明した技術ということで,GeForceが必須だ。もちろん,GeForceならなんでもいいというわけではなく,「GeForce GTX 650 Ti BOOST」以降のGeForce GTXが必須となる。現行のGeForce GTX 700シリーズやGeForce GTX 900シリーズは全製品が対応だが,たとえば700系のモデルナンバーであってもGeForce GT系は非対応となるので,注意が必要だろう。
また,G-SYNCを利用するにはDisplayPort 1.2に対応したDisplayPort出力が必要だ。GeForce GTX 650 Ti BOOST以上のGPUはいずれもDisplayPort 1.2をサポートするが,もし「そもそもDisplayPort出力を持っていない」グラフィックスカードだったりすると,G-SYNCを利用できないことになる。
ちなみに,G-SYNC対応ディスプレイのほとんど,というか筆者の知る限りでは2014年12月時点における全製品は,入力インタフェースとしてDisplayPortしか備えていない。DVIやHDMI入力はなく,G-SYNC専用ディスプレイ的な性格を持っているので,この点は注意しておきたい。
G-SYNCの効果を2社3製品の
対応ディスプレイでチェック
理論は分かった。では,実際のユーザー体験として,G-SYNCのメリットを感じることはできるのだろうか。冒頭で紹介したXB270HAbprzとPG278Q,XB280HKbprzの3製品を使って,実際に検証してみよう。
なお,前段でも紹介したとおり,ビデオ入力インタフェースはDisplayPortが1系統のみ。リフレッシュレートは2製品が144Hz,1製品が70Hzで,いずれも標準仕様より高速になっている。
本体サイズは619.7(W)×237.9(D)×362.9(H)mmで,チルト(上下回転)とスイーベル(左右回転),縦回転に対応する。パネルはTN方式のノングレアで,応答速度1ms,コントラスト比1000:1,輝度350cd/m2という基本スペックとなる。
TNパネルでノングレア,応答速度が1ms,コントラスト比1000:1,輝度300cd/m2というスペックも,XB270HAbprzと同じ。
以上の3製品を用い,G-SYNCの効果を確認していこうと思う。なお,テストに用いたPCのシステムは表のとおりだ。
APU | A10-6800K(定格クロック4.1GHz,最大クロック4.4GHz,4C4T,L2キャッシュ容量2MB×2) |
マザーボード | GIGA-BYTE TECHNOLOGY G1.Sniper A88X(AMD A88X,BIOS F7) |
メインメモリ | PC3-10600 DDR3 SDRAM 8GB×2 |
グラフィックスカード | GeForce GTX 980リファレンスカード(グラフィックスメモリ容量4GB) |
HDD | Western Digital WD Green(容量3TB,Serial ATA 6Gbps,WD30EZRX-00DC0B0) |
OS | 64bit版Windows 7 Ultimate+SP1 |
チップセットドライバ | Catalyst 14.4 |
グラフィックスドライバ | GeForce 344.75 Driver |
ハイスピードカメラで確認する
G-SYNCの効果
手始めに,NVIDIAが提供しているG-SYNCの効果確認用技術デモ「Pendulum Demo」を動かしてみよう。Pendulum Demoは,その名のとおり,振り子がゆっくりと動くデモだ。
ここでは,デモの設定から,フレームレートが40〜60fpsの間で動くように指定。そのうえで,Vsync有効,Vsync無効,G-SYNC有効の順で設定を切り替え,その様子を,ハイスピード撮影に対応したカシオ製デジタルカメラ「HIGH SPEED EXILIM EX-FC150」から120Hz撮影することにした。テストに用いたディスプレイはPG278Qで,その結果は下のムービーに示したとおりだ。
Vsync有効時は,振り子の動きがときどき一瞬止まる様子が見て取れる。これがカク付きだ。Vsync無効時だと,カク付きはなくなるものの,振り子の輪郭線がズレる瞬間があるのを確認できるだろう。これがテアリングである。
それに対してG-SYNC有効時は,40fpsから60fpsの間でフレームレートが変わる可変フレームレートとは思えないような,スムーズな表示を実現できているのが分かる。カク付きもテアリングもない。
せっかくパネル解像度の異なる3台のディスプレイがあるので,XB270HAbprzは1920×1080ドット,PG278Qは2560×1440ドット,XB280HKbprzは3840×2160ドットでテストを行いたい。
同じくゲーム側から設定できるグラフィックス品質は,XB270HAbprzとPG278Qで「最高」としたところ,前者ではフレームレートが40〜60fps程度の範囲,後者では30〜40fpsの範囲で推移したので,この設定を採用。XB280HKbprzでも「最高」にしてみたところ,フレームレートは10fps前後で固まってしまい,G-SYNCの効果を確かめるどころの話ではなくなったため,4K解像度でも20〜30fps程度を期待できる「標準」とした。
グラフィックス品質プリセットにあたる「グラフィックスクオリティ」は,XB270HAbprzとPG278Qで「最高」,XB280HKbprzで「標準」を選んでいる |
「VSYNC」の項目は,Vsync有効時のテストにあたっては「オン」,Vsync無効およびG-SYNC有効時は「オフ」とした |
というわけで,テスト結果は下に3つ並べたとおりだ。ムービーはディスプレイごとに,Vsync有効→Vsync無効→G-SYNC有効となっている。
見てもらうと分かるとおり,3台のディスプレイでは,フレームレートの違いこそあれ,ディスプレイ同期方法がもたらす見え方の違いは共通だったので,インプレッションはまとめて述べることにしたい。
Vsync有効時は,やはりカク付きが目立つ。とくに分かりやすいのは,寺院の頂上に登って「鷹の目」を発動したときだ。「鷹の目」発動時はカメラが上空に上がり,俯瞰視点で街を360度見回す演出が入るわけだが,このとき街の景色がぐるりと回る描写において,ツツツツートン,ツツツツートンという具合に,表示がスムーズなときと,カクンと立ち止まる瞬間が交互に現れているのに気が付くはずだ。
Vsync無効時における見え方はもっと分かりやすい。ムービー冒頭の,歩き出したところで,階段に向かって方向転換した瞬間に,室内の様子が分断表示される。これがテアリングだ。寺院を上に登るシーンでは,寺院の壁が上から下にスクロールしていくのだが,ここでも,テアリング現象の影響により,尺取り虫が這うような,上下にうねった表示になっている。
G-SYNC時の50fpsにもなると,視覚上は,60fps出ているときと比べて,ほとんど大差はないレベルの見映えとなる。
そして,40fpsや50fpsでスムーズに見えるようになるということは,裏を返せば,手持ちのGPU環境のまま,一段上の解像度を選択したり,あるいは一段上のグラフィックス品質設定を選択したりできるようになるということにほかならない。一段上の解像度やグラフィックス設定を行って60fpsがキープできなくなっても,G-SYNCなら,スムーズな映像が楽しめるので,ある意味,体感的にGPU性能が上がったような体験が得られるのだ。
高解像度&高負荷環境でこそ活きるG-GYNCは
まさにこれから花開く技術だ
G-SYNCの効果に納得するとともに,今までなんとなしに使用してきたVsync有効もしくは無効という「ディスプレイ側の都合に合わせた同期方法」の“あんまりさ”に驚いた人も多いのではないかと思う。PCゲーマーほぼ全員が普段から目の当たりにしてきた可変フレームレートの映像というのは,ここまでひどいものだったのだ。
このことに気付かせてくれたG-SYNCは偉大であり,同時に罪深い(笑)といえる。
これからの液晶ディスプレイは,今回取り上げたPG278QやXB280HKbprzのように,1920×1080ドットのフルHDを大きく超えた解像度のものが増えていく見込みで,いきおい,ゲーム側のグラフィックス品質設定を上げたときに60fpsをキープするのはどんどん難しくなっていくはず。60fps未満の可変フレームレートを表示する能力の重要性はますます増大するわけで,そういう状況でも映像をスムーズに表示できるG-SYNCは,活躍の場を広げていくだろう。
なお,ここまではアサシン クリード ユニティという“重い”タイトルを用い,描画がリフレッシュレートに追いつかない状況におけるG-SYNCの効果を主に確認してきたが,描画が約16.67ms以内に完了する理想的な状態が連続するような“軽い”タイトルの場合,むしろディスプレイデバイス側の都合で画面表示の待ち時間が発生することになるわけで,それを高いリフレッシュレートによって短縮できることもG-SYNCのメリットといえる。GPU側とディスプレイデバイス側の双方で発生していた遅延要因を,G-SYNCなら,最適な同期によって解決できるのである。
もしかすると,可変フレームレートに対する意識変革を業界にもたらしていくことすらあるかもしれない。
AcerのXB270HAbprz&XB280HKbprz製品情報ページ
ASUSのPG278Q製品情報ページ
アサシン クリード ユニティ
(C)2014 Ubisoft Entertainment. All Rights Reserved. Assassin's Creed, Ubisoft, and the Ubisoft logo are trademarks of Ubisoft Entertainment in the US and/or other countries.
- 関連タイトル:
G-SYNC
- この記事のURL: