ニュース
「ティアリングなしで高フレームレート&低入力遅延を実現」を謳う「Virtual Vsync」。その正体に迫る
Virtuは,CPUやチップセット側の統合型グラフィックス機能と,単体グラフィックスカード(≒GPU,以下便宜的に「単体GPU」と表記)とによるスイッチャブルグラフィックスを提供するもの。Virtuは,Intel 6シリーズチップセットとSandy Bridgeコアの第2世代Core iプロセッサとを組み合わせたデスクトップPC用の技術として登場したが,Virtu Universalでは,対象がノートPCやオールインワンPC,あるいはAMDプラットフォームにも拡大されることとなる。
速報記事:[COMPUTEX]すべてのゲーマーをVSyncの呪縛から解放する「Virtual Vsync」,LucidLogixから
Virtu Universalのパワーマネジメント機能では,統合型グラフィックスと単体GPUのどちらを利用するか,アプリケーションごとに選択できるようになっている。Remez氏によれば,「ノートPCをバッテリーで利用しているときや,コンセントにつないでいるときなど,利用状況に応じて別々のプロファイルを用意することもできる」とのこと。
というわけで,2つめがVirtual Vsyncである。
速報記事で,ゲーム側のVSync設定が有効でも,Virtual Vsyncを利用すればベンチマークテストのスコアが大きく向上するというのは紹介したとおりだが,実のところLucidLogixでは,そういった“見て分かる”効果もさることながら,FPSなどでより自然な操作感を実現することに,かなり重きを置いている。
現在,一般的な液晶ディスプレイの垂直リフレッシュレート(垂直同期周波数)は60Hz。これが「1秒間に60フレームの画面書き換えを行っていることを意味する」というのは,4Gamer読者には釈迦に説法だろうが,これを応答速度に換算すると16.6ms。1フレームを描画するのに,16.6msかかるわけである。PC用として入手できる最も高リフレッシュレートの液晶パネルは3D立体視に対応した120Hzのものだが,それでも応答速度は8.33msある。
そこでVirtual Vsyncでは,統合型グラフィックス機能と単体GPUの両方を使って,VSync無効時に発生するティアリングをなくしつつ,フレームレートを大幅に引き上げて,入力系の遅延を減少させようという試みがなされた。
「Call of Duty 4: Modern Warfare」でVSyncを無効化した状態。フレームレートが上がり,マウスの追従性も向上するが,マウスを振って視点を動かすとティアリングが発生する | |
同じシステムでVertual Vsyncを有効化したところ,マウスを振ってもティアリングなしで追従する。フレームレートがVsync無効時より上がっている点にも注目してほしい |
Virtual Vsyncの手法
速報でもお伝えしたとおり,Virtual Vsyncの手法は,「1枚の絵を1フレームとして見たとき,最初と最後の5〜6ピクセルラインを一方のGPUで描画し,それ以外の大半のピクセルを高性能なGPUで描画するもの」(Remez氏)。その詳細は,数々の特許技術が関わるとして明らかにはしてもらえなかったが,基本的には,
- 性能が劣るほうのグラフィックス機能には,VSyncを有効化した状態でディスプレイ制御に専念させ,同時に,1フレームの冒頭数ラインを描画させる
- 性能が高いほうのグラフィックス機能は,VSync無効の状態でレンダリングに専念させる
- 「性能が高いほうのグラフィックス機能が1フレームを書き終わるタイミング」を予測する
- 性能が劣るほうのグラフィックス機能に,1フレームのラスト数ラインの描画と,ピクセルパイプラインの後処理を担当させる
- 2つのグラフィックス機能による描画結果を,GPU仮想化技術であるVirtu Universalで合成する
そして,この処理系で最も重要なのが,2つの画面を合成するタイミングを予測することだ。LucidLogixによると,その性能が描画品質にも大きく影響を与えるのだそうで,実際,Virtual Vsyncのコントロールパネルには,高性能なほうのGPUのレンダリング速度を変更するというスライダーも用意されている。「パフォーマンスに振り切ると,ゲームによってはティアリングが発生することがあるため,それを調整する」(LucidLogix)のだそうだ。ただし,ウェイトが入っているのかどうかなど,具体的な説明はされなかったので,このあたりは後日検証する必要があるだろう。
ちなみにRemez氏は「原理的には,DirectX 11世代の単体GPUとDirectX 10.1世代の統合型グラフィックス機能を組み合わせ,DirectX 11世代のタイトルを高速化させることは不可能ではない」と説明するが,今回公開されたデモは,すべてDirectX 9で動作していた。DirectX 10〜11世代のタイトルにも対応し,第3四半期中にはOpenGLにも対応するとされるVirtual Vsyncだが,DirectX 10〜11に向けた最適化はまだ十分でないということなのかもしれない。
Remez氏は,Virtu Universalを「7月に正式リリースすべく開発を進めている」としている。ひとまずのターゲットはデスクトップとなり,製品版はマザーボードにBIOSキーの形でライセンス提供されることになる。ただ,30日間の体験版も用意されるとのことなので,その使い勝手を実際に評価できる日は遠くない。
→LucidLogix公式Webサイト(英語)
- 関連タイトル:
Virtu
- この記事のURL: