ゲーム自体をリアルタイムレイトレーシングに対応するのはまだ大変そうですが、
ムービーだけなら制作環境で完結するしいけるのでは……ということで、
「くちなしアンプル」のオープニングムービー制作にレイトレ機能を使ってみました!
くちなしアンプルのオープニングムービーの進捗です!UE4のレイトレーシング機能を使っているので、床の反射や髪の毛の影の表現が繊細になりました。#Screenshotsaturday #UE4 #indiedev pic.twitter.com/MyLpgToaBr
— CAVYHOUSE (@cavyhouse) June 22, 2019
どんなことをやったかを簡単に書いていこうと思います。
はじめに
家にあったGPUがぎりぎり対応していなかったので
(VR開発のために、数年前にちょっといいやつを奮発して買っていたのに…かなしい…)
お値段と相談して中くらいのGPU、GTX 1660を購入しました。
届いたら早速、レイトレで描画してみます。
このシーンが、
機能をオンにして調整すると、
輪郭線などはそのままに、こういう感じに描画できるようになりました。
影や反射がきれいに出ています。
ちなみに、本作はローグライクでダンジョンが動的に生成されるため、
また全体の統一感を出すために、全てのシーンでシャドウの焼き込みを行っていません。
なので余計に影の描画の綺麗さが際立って感じました。
レイトレ機能をオンにする具体的な手順はこちらがわかりやすいです。
以下では、どんな調整をしたかを具体的に書いていきます。
シャドウをいい感じに
ライトのSource Radiusをいじって影の硬さを調整します。
左が0、右が28です。
値が大きいほど、床の影がふんわりしています。
画作りに合う影の硬さを選べるのが楽しい。今回は全体的に柔らかい影を使っています。
反射するマテリアルをふやす
せっかくきれいに反射を描画できるのだから…ということで、
床の反射を強くします。
つやっつやに反射してます。きれい。
ノイズの軽減
反射するオブジェクトのラフネスが高いと、かなりノイズがのってしまいます。
ポストプロセスのRayTracingReflection/MaxRoughnessを、見た目と相談しながらできるだけ小さくします。
しきい値前後でなめらかに反射が描画されなくなるようです。
特にノイズのひどかった髪や肌ですが、反射はいらないだろうと判断して
そのラフネスより小さくなるようにMaxRoughnessを設定します。
あごのつぶつぶが消えました。
レイトレに関するパラメータはこちらを参照にしました。
エディターから設定できるパラメータが一覧になっています。
InstancedMeshをstatic meshに
画像の薬置き場の腕の部分はInstancedMeshになっています。
InstancedMesh自体は描画されるのですが、影や反射が描画されていません。
ビンが空中に浮いてる……!
全部static meshに置き換えてしまいます。
まとめ
前作「マヨナカ・ガラン」でも、曲とあわせたいシーンはムービーにしていたのですが、
シーンの描画自体はゲームと同じものでした。
レイトレができると、ゲームの素材もノンフォトの表現もそのまま使いながら、
ムービーシーンの質を上げられるのがとても嬉しいです。
くちなしアンプルでは今回のオープニング以外にもムービーを取り入れる予定です。