[GDC 2016]Epic Games,「Unreal Engine 4」をVulkan APIで実装したスマホ向けデモ「ProtoStar」のソースコードを公開 | ニコニコニュース

[GDC 2016]Epic Games,「Unreal Engine 4」をVulkan APIで実装したスマホ向けデモ「ProtoStar」のソースコードを公開
4Gamer

 2016年2月に開催されたMobile World Congress 2016(以下,MWC 2016)に合わせて,Epic Gamesが「Unreal Engine 4」(以下,UE4)ベースの技術デモ「ProtoStar」をSamsung Electonics(以下,Samsung)製スマートフォン「Galaxy S7」上で動作させ,話題を集めた。

 下に示したのはそのデモをムービーにしたものだが,Game Developers Conference 2016(以下,GDC 2016)には,そんなProtoStarデモをEpic Gamesがいかにして開発したのかを語る技術セッション「Vulkan on Mobile with Unreal Engine 4 Case Study」(モバイルデバイス上におけるVulkan,UE4におけるケーススタディ)があったので,いくつかの発表ともども,簡単にレポートしてみたい。

ムービー(※4Gamerへジャンプします)

■「UE4 Vulkan」のソースコードをGithubで近日公開

 GDC 2016では,Vulkan APIをテーマにした技術セッションが多数ある。Vulkan on Mobile with Unreal Engine 4 Case Studyもその1つで,これ自体はARMが主催するものだ。Epic Gamesでテクニカルディレクターを務めるNiklas Smedberg氏が登壇し,ProtoStarの解説を行ったのは,「Mali」GPU IPコアにおけるVulkanと利点といった,割と一般的なテーマが語られた後,セッション後半のことだった。

 さて,そんなProtoStarだが,これは,UE4上で,Vulkan APIを用いて動作するリアルタイムデモだ。セッションでは「UE4 Vulkan」と呼んでいたので,本稿でもそう呼ぶが,Smedberg氏によると,UE4 Vulkanの開発は,ないないづくしの状況から始まったという。


 そもそもスマートフォンにはUE4をインプリメントするだけのグラフィックス機能がないというところから始まって,Vulan APIが正式に決まらない,Vulan APIのドライバがない,割ける人員も時間もないといった具合だ。

 それもあり,なんとか動いた最初期のプロトタイプは,下のとおり,トンデモない画面になったとのことである。

 そんなProtoStarを完成させた経験からSmedberg氏は,「Galaxy S7のようなモバイルデバイスにおけるバッテリー駆動時間への影響を抑えながら,PC並みのグラフィックス表現を可能にするには,とくにVulkanのマルチスレッドレンダリングが効果的」と語っていた。UE4 VulkanベースとなるProtoStarデモでは,1フレームあたりの「GPUに対するコマンド実行数」が非常に多いが,それをマルチスレッドで実装しているという。


 スレッドの同期にあたっては,GPUの同期用にセマフォ,CPUスレッドの同時用にはフェンス(※メモリバリアのこと)を用いているそうだ。

 また,Vulkanではコマンドバッファの記録(レコード)を行うことができるので,それをインスタンス化して,多数の「同じ動きのオブジェクト」を1回のコマンドで描画しているとも氏は語っていた。ProtoStarデモには多数の隕石が出てくるのだが,おそらくはそういったオブジェクトにコマンドバッファのレコーディング機能を用いているのだろう。


 ちなみにSmedberg氏は,コマンドバッファのレコーディング機能について,VR(Virtual Reality,仮想現実)にも有効ではないかとも述べていた。いわく,「片眼の描画を行って,そのコマンドバッファを記録してもう片眼を描く,といったことに使える」とのことだ。

 なお,ProtoStarデモに用いたUE4 Vulkanは「まだ極めて実験的といえる段階で,商用に使えるものではない」(Smedberg氏)とのこと。その点を氏は明確に断ったうえで,「ProtoStarで我々が何をやっているのか。より詳しく知りたい人のために,一部のソースコードを今週中,またさらに多くのソースコードを来週にはそれぞれGithubで公開する」と予告していた。


 興味がある人は,Unreal Engine公式Webサイトをチェックしてほしいとのことである。

■Samsungがゲームデベロッパ向けの開発支援プログラムを開始予定

 セッションでは,ProtoStarデモのプラットフォームとなったGalaxy S7のメーカーであるSamsungから,Jungwoo Kim氏も登壇した。Kim氏によると,SamsungとEpig Games,そしてARMが連携してデモ開発のプログラムをスタートさせたのは,今から3年前だという。

 そのうえで氏は,2016年4月27日にサンフランシスコ市内で開催予定となっているSamsung主催の開発者向けイベント「Samsung Developer Conference 2016」で,同社として新しいゲーム開発者向けの支援プログラムをスタートさせることを明らかにした。その詳細は同イベントで開示するという。


 どのような支援プログラムになるにせよ,VulkanやUE4といった要素が絡んできそうなので,来月の発表にも注目しておくといいかもしれない。

リンク:Epic GamesのProtoStar紹介ページ

―――――――――――――――――――――――――――――


記事URL:http://www.4gamer.net/games/210/G021013/20160317059/
→この記事を4Gamerで読む(※画像などがすべてある完全版です)
―――――――――――――――――――――――――――――
関連タイトル:
・HARDWARE Unreal Engine
・HARDWARE Vulkan

―――――――――――――――――――――――――――――


Copyright (C) 2000-2016 Aetas, Inc. All rights reserved.