UnrealEngine4/Voxel Global Illumintaion (VXGI) をテスト①

先週のUE4StudioのPythonの続きをやろうと思ったのですが、ちょっと気分を変えてVXGI2.0=Voxel Global Illumintaionを試してみようと思います。

そもそもVXGI2.0って何?という方も多いと思います。まずは以下の説明が解りやすいかと思います。
https://www.hardwarezone.com.sg/feature-nvidias-next-gen-gaming-graphics-card-geforce-gtx-980-revealed/voxel-global-illumination-vxgi
ちょっと英語で解らないと思うので、簡単に言うと、
「ポリゴンでGIを計算すると大変なので、空間をボクセル(箱)にして、その面を使って簡素化した光の反射を求める」ということらしいです。
上の記事、よく見るとGTX980での説明で2014年ですね。

それが今年Ver2.0で新しくなり、UE4にも搭載したということなので、試してみましょう、ということなのです。
GDC218で「Advances in Real-Time Voxel-Based GI 」というセッション動画、
YouTubeにUE4のVXGIテスト動画がありますので、ご覧ください。

では、早速やってみましょう。
これはちょっと手間がかかります。まずはUE4を普段使っている方もC++のプロジェクトを起動してください。
その時に「VistualStudioをインストールして」と出るので、ダウンロードしてインストールしておきます。(これで1時間くらいかかる場合もあります)

以下のGitHubからUE4-VXGIのソースをダウンロードしましょう。
https://github.com/NvPhysX/UnrealEngine/tree/VXGI2-4.19
「404エラー」が出てしまいます。

UE4の開発初者向けのIDを作成して、右上のユーザ名とパスワードを入力する必要があります。詳しくはここを参考にしてください。

ログインできると上の画面になります。この右の緑のボタンをクリックして、
DownliadZipします。

これは250MBくらいですが、この後の作業で大きいサイズになるので、ディスクの空き容量にはご注意ください。なんと最終的には43GB以上になります!

ダウンロードが終わったら、GitHubのマニュアルの手順通りに作業します。

2つのバッチファイルを順にダブルクリックして、しばらくコマンドプロンプト(黒い文字だけウインドウ)が処理します。
それが終わったらUE4.slnをダブルクリックすると、すごく時間がかかってVisualStudioが起動しますので、右上のエクスプロラーで右クリックから「ビルド」します。ここでまた長い時間を待ちます。

全て終わるまで3~4時間かかるかもしれません。その間暇なので、同じフォルダにGDC2015の資料の「UE4_VXGI_Overview.pdf」があるので読んでみるといいでしょう。

「Engine」フォルダができます。つまり、これはVXGI専用のUnrealEngine4をソースからビルドしたものです。

この「Binaries」→「Win64」にUE4Editor.exeがあるので、右クリックから「管理者として起動」します。

私はこんなショートカットを作りました。もともとUE4.19他がインストールされていても、動作には問題ありません。

以下のように、いつもと違う起動が始まれば正解です。私はこのあとWindows8.1がクラッシュしましたが、2回目で正常に起動しました・

ダウロードしたフォルダにSamplesフォルダにサンプルプロジェクトが2つあります。
CornelBoxはYouTubeに動画があるので、「SciFiHallway」を起動します。

プロジェクト名で記憶がある方もいるかもしれませんが、UE4のマーケットプレイスにあるプロジェクトです。

では、VXGIを使ったら、どういう画像になるのかを動画でご覧ください。
プレイヤーにライトが付いていて、歩いている先に光があたります。ちゃんとリアルタイムでGIと反射がされているのが解ります。

キーボード「Z」でVXGIのDiffuse(拡散反射光)、「X」でSpecular(鏡面反射光)をOn/Offを試せます。

ちなみにマシンはWindow8でGPUはGTX980でメモリは64GBです。それほどのハイスペックではありませんが、コマ落ちせず、これだけのことが実現できます。
これは実用的で凄いのではないかと思います。

次回、もう少し設定など機能を細かく解説していきます。