このページの本文へ

AMDがAsync ShadersなどVR向け最新ソフト技術を解説

2015年03月31日 22時00分更新

文● 北村/ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

 AMDがソフトウェア最新技術に関する記者発表会を実施し、同社の「FreeSync」、「Liquid VR」、「Asynchronous Shaders」を解説した。

AMDのVR&ソフトウェア・マーケティング グローバルヘッドのSasa Marinkovic氏がソフトウェア技術について解説

 このうち、画面同期技術「FreeSync」は別の記事で詳細を伝えているので、ここでは「Liquid VR」と「Asynchronous Shaders」について紹介しよう。

VRヘッドマウントディスプレー向けのAPI
Liquid VR

 「Liquid VR」はVRヘッドマウントディスプレー向けのAPIだ。これは、遅延の軽減と画質の向上を目指したもので、類似の技術にNVIDIAの「VR Direct」がある。

「Liquid VR」を構成する4つの技術

 ヘッドトラッキングによる遅延低減技術として、「Oculus Rift DK2」にはTime Warpが実装されている。Time Warpとは、演算した映像を描画する直前に、再度頭部の位置を取得し、現在の頭部の位置に合うよう、映像の描画を最新の位置にずらして表示する機能だ。

効率のいいヘッドトラッキングを実現するLastest Data Latch。頭部の位置をレンダリング開始時と終了時の2回取得し、その差異でTime Warpを実行する

 描画中に頭を動かすと、描画された映像は過去の位置の映像になる。これが遅延となる。そこでTime Warpでは、動いた頭の位置を描画直前に再度計測し、例えば左に頭を振って位置がずれたのであれば、ずれた分だけ描画した映像も左方向にずらして表示する。これで遅延がないようにみせる技術だ。

 「Liquid VR」では、このTime WarpをGPU側で処理することで描画速度を向上させるLastest Data Latchが実装されている。

 「Liquid VR」には、ほかにも大きな機能がある。左目と右目の映像をそれぞれ別のGPUが担当し描画することで、極力遅延を軽減しつつ画質を高める「Affinity Multi-GPU」、OSを介さずVRアプリがヘッドマウントディスプレーに直接映像を送る「Direct-to-Display」などだ。

左目と右目の映像をそれぞれ別のGPUが描画する「Affinity Multi-GPU」

OSを介さずVRアプリがヘッドマウントディスプレーに直接映像を送る「Direct-to-Display」

描画と計算を並列処理で高速化する
Asynchronous Shaders

 「Liquid VR」の機能として、今回AMDが新しい資料を公開したのが「Asynchronous Shaders」だ。これは、描画と計算を並列処理とすることで、タスクの待ち時間を改善し、描画速度を向上させる機能のこと。

 描画が高速化するということは、それだけ遅延が減るということなので、「Asynchronous Shaders」はVR環境での効果が期待されている。

「Asynchronous Shaders」は、前述のTime Warpのほか、Global Illuminationなどにも対応する

 Radeonシリーズに採用されているGCNアーキテクチャーにはACE(Asynclonous Compute Engine)という非同期演算エンジンが搭載されている。「Asynchronous Shaders」は、このACEを使用することでタスクの切り替えにおけるオーバーヘッドを減らし、処理の高速化を図っている。

グラフィックの描画とコンピュート(計算)を非同期で並列処理できるACEが、GCNアーキテクチャーには搭載されている。「Asynchronous Shaders」はこのACEを使用する

 「Asynchronous Shaders」の仕組みは、AMDがわかりやすい動画を用意しているので、下の動画を参照してもらいたい。

「Asynchronous Shaders」は、Direct X12、Vulkan、Muntleなどのマルチスレッドに対応したAPIで性能を発揮するという

「Asynchronous Shaders」により、並列処理によるフレームレートの向上、遅延の低減、画質の向上が期待できる

【関連サイト】

カテゴリートップへ

注目ニュース

ASCII倶楽部

ピックアップ

ASCII.jpメール アキバマガジン

ASCII.jp RSS2.0 配信中