イベント
[SIGGRAPH 2015]Vulkan&OpenGL ES 3.2対応をアピールするIntelブースに注目。SIGGRAPH 一般展示セクションレポート前編
概況にまず触れておくが,例年と比較して,今年の一般展示セクションは,出展企業が少なかったように思える。上述したPC/ワークステーション向けのプロセッサ企業は例年どおりのブースを構えていたが,常連出展社だっARMやImaginationが今年は出展を取りやめたのだ。「OpenGL」「OpenCL」などのAPIを策定する規格化団体のKhronos Groupも,今年は出展していなかった。
2016年のSIGGRAPH 2016は,ロサンゼルス近郊のアナハイムで行われることが決定しているのだが,果たして,2014年までの規模を取り戻せるのか,気になるところである。
Vulkan&OpenGL ES 3.2対応デモを披露したIntelブース
性能面でパッとするところがないために,ゲーマーの注目を集めることがないIntelの統合型グラフィックス機能(以下,iGPU)だが,近年は性能面での向上も進んでおり,デスクトップPC向けの「Broadwell-H」(ブロードウェルH)にもなると,競合であるAMDのAPUをしのぐグラフィックス性能を発揮したりしているようだ。
そんなIntelによるSIGGRAPHの展示は,例年,来場者から高い評価を受けていたりする。2015年の展示も,学術研究分野での事例から最新API活用,先端的なグラフィックス技術の紹介など,バラエティに豊んだものとなっていた。
Intelブースで最も注目を集めていたのが,次世代OpenGLとも呼ばれる新グラフィックスAPI「Vulkan」によるデモだ。Intelブースの一角では,Vulkan対応のマルチプラットフォームグラフィックスベンチマークソフトである「GFXBench 5.0」(関連リンク)や,Valveの人気MOBA「Dota 2」をVulkanに対応させた試作版の実動デモが公開。とくにDota 2は,Valveが開発中の新ゲームエンジン「Source 2」ベースということもあってか,来場者の関心も高かった。
Vulkan関係ではほかにも,N-BODYシミュレーションの結果表示をVulkanと既存のOpenGLで行い,それぞれのAPIによる処理性能を比較できるIntel製ベンチマークソフトが展示されていた。
N-BODYシミュレーションとは,パーティクルのそれぞれが重力を持ち,互いに影響しあったときの非線形な挙動を計算するシミュレーションだ。今回披露されていたIntel製ベンチマークソフトでは,200万パーティクルによるN-BODYシミュレーションの描画をVulkanとOpenGLで動作させたときの,フレームレートや消費電力,各CPUコアへの負荷の違いが確認できるようになっていた。
Vulkanモードでは,2000描画コールのコマンドバッファを,1つのメインスレッドと4つのサブスレッドという計5スレッドで並列に形成し,これを適宜GPUに発行する仕様になっているとのこと。一方,OpenGLモードでは,演算を含めてシングルスレッドで処理しているため負荷が1つのCPUコアに集中しており,CPUとGPUの双方が互いの処理を待ち合うことになってフレームレートが低下してしまう様子が見て取れる。
Vulkanは処理性能が高いというより,Vulkanのほうが,システムの最大性能をコンスタントに引き出しやすいことが,このデモでも明確になっているわけだ。
ちなみに,デモ用のシステムはプロセッサナンバー不明の第5世代Coreプロセッサで,iGPUはHD Graphics 5000番台だとのことだった。
公開されていたOpenGL ES 3.2デモは全部で3種類。デモ自体はもともと,デスクトップPC用のCoreプロセッサ向けにDirectX 11ベースで開発されたものだが,今回の出展に合わせて,OpenGL ES 3.2向けに移植したという話だった。
1つめのデモは,テッセレーションステージの活用を見せるものだ。OpenGL ES 3.2では,長らく実装が先送りにされてきたジオメトリシェーダとテッセレーションステージがついに導入されたのだが,その後者を活用したものになっている。
Tessellationの有効/無効を切り替える様子をビデオ撮影してきたので,下の動画でその様子を見てほしい。
2つめは「Conservative Morphological Anti-Aliasing」(以下,CMAA)というもので,FXAAと同じようなポストプロセス系(画像処理系)のアンチエイリアス技術のデモだ。CMAAのアルゴリズムについては,Intelによる解説Webページ(関連リンク)を参照してほしいが,一般的なMSAA法では無視されてしまう,金網のような透明要素を持つテクスチャを貼ったポリゴン内部――つまり金網模様――にも,CMAAならアンチエイリアス効果が適用されるというのが特徴で,デモもそれを示すものだった。
3つめは「Adaptive Volumetric Shadow Maps」(以下,AVSM)という手法を用いて,パーティクルに対し,セルフシャドウ付きの影生成を行うというデモだ。AVSMとは何かを簡単に説明すると,光源から放たれた光がどこで各パーティクル群と衝突したのかや,光の減衰率はどのくらいかをAVSMと呼ばれるシャドウマップにリスト構造(グラフ構造)で記録しておき,後段の影生成フェーズで,AVSMを参照して影の色を決定していくという手法である。
見かけよりも,ずっと複雑なテクスチャ生成とシェーディング処理が行われているAVSMデモが,Androidタブレット上で動いていることには驚かされた。
なお,AVSMもIntelが解説Webページを用意しているので,詳細はそちらを参照してほしい(関連リンク)。
OpenGL ES 3.2は,機能レベル的にはDirectX 11と同等のものを実現しており,スマートフォンやタブレットで実現可能な表現が,PlayStation 4(以下,PS4)やXbox One世代に追いついてしまったことを意味する。もちろん,性能面ではPS4/Xbox Oneには及ばないし,それらではVulkanやDirectX 12といった新世代APIを使う方向へ進んでいくだろうが,それもほんの数年で追い付き,追い越してしまう可能性は高いだろう。
工業デザイン用アプリの開発支援ブランド「DesignWorks」をアピールしたNVIDIAブース
NVIDIAブースでは,SIGGRAPH会期中に発表された開発支援ブランド「DesignWorks」を中心とした展示が行われていた。
NVIDIAは2013年から,ゲーム開発者向けのライブラリやサンプル,ソフトウェア開発キットといったものを総称して,「GameWorks」というブランディングを行っているが,新しい「DesignWorks」は,そのプロフェッショナルアプリケーション向けの開発キットという位置付けになる。
DesignWorksにおける「Design」は,アートデザインにおけるデザインというよりも,設計という意味を示しているようだ。そのため,DesignWorksで提供されるソフトウェアも,医療や自動車産業,あるいは航空産業といった,特定産業分野における製品開発に使われる業務用アプリケーション開発を支援することを目的としているという。
DesignWorksに含まれるのは,NVIDIAのクラウドレンダリングソリューション「Iray」(関連記事)と,レイトレーシングエンジン「OptiX」,物理ベースレンダリング用の材質記述言語「MDL」(Material Definition Language)といったものだ。これに加えて,産業用仮想現実向けのソフトウェア開発キット「DesignWorks VR」というものもある。。
ブースでは,3Dモデリングツールの「Rhinoceros」を使ってモデリングされたハーレーダビッドソンのバイクを,開発中のDesignWorks/Irayベースのビューポートで表示して,実車のバイクと見栄えを比較するというデモを披露していた。
Radeon R9 Furyによる8012×1440ドット表示のゲームを披露したAMDブース
なお,2560ドットのディスプレイを3台分だと,横解像度は本来7680ドットになるはずだが,ベゼル幅による画面のずれを補正する「ベゼルコレクション」を適用しているため,実解像度よりも横長の表示領域になっている。計算間違いではないので,ご注意を。
ハードウェア関連の展示は,そのほかにワークステーション向けのGPUであるFireProシリーズの全ラインナップを展示していた程度で,注目すべき製品や展示はなかった。
一方,ソフトウェア関連では,OpenCLベースのGPGPUによるレイトレーシングエンジン「FireRender」の新リビジョンが披露されていた。GPUの物理メモリーサイズを大幅に超えるような,巨大シーンのレンダリングを実装したことが新しい特徴であるとのこと。この機能は,GPU仮想メモリによるものではなく,独自の実装によるストリーミングエンジンによるものだそうだ。