UnityのGlobal Illumination

UnityにGI(Global Illumination)機能があることはバージョン4の時代から知ってたけど、まともに触らないままバージョン5の時代も通り過ぎてしまった(笑)
https://docs.unity3d.com/ja/current/Manual/GIIntro.html

いい加減ちゃんと触ってみようと思いつつ、公式ドキュメントを読んでもイマイチどこから手を付けたら良いのかわからなかったので、こちらのQiita記事を参考に試してみた。↓
http://qiita.com/r-ngtm/items/1632b909aab084ba3eb6

StaticなオブジェクトのGI

まずは1番簡単な、動かない(Staticな)オブジェクトに対するGI機能を試す。ライティングをテクスチャにベイク(つまりキャッシュ)するやつですね。

現在のUnity2017.1.xだと、デフォルトではライトのベイク処理が走らないので、メニューの
WindowLightingSettingsDebug SettingsにあるAuto Generateにチェックを入れておく。



デフォルトでチェックが入っていないのは、勝手に重いベイク処理が走らないよう気を利かせた仕様ですが、今回はすぐに効果を確認したいのでチェックを入れた。


スポンサーリンク


例にならってプリミティブのPlane, Sphereを並べ、全てstaticにチェックを入れたらベイクの処理が走り始めた。



ちゃんと例と似た結果になったぞ。


スポンサーリンク

ライトのベイク処理が重いとか色々噂を聞いていたけど、オフラインのGIレンダリングのことを考えたらこんなもんというか、全然速い方だと思う。

この方法はライトの影響をオブジェクトのテクスチャとして描き込むらしく、UVが定義されたオブジェクトでないと機能しないようだ。

非StaticなオブジェクトのGI

次は動くオブジェクト(非Static)用のGI機能を試してみよう。
ライトプローブ(LightProbes)という、空間上にライティング情報をキャッシュする機能を使う。
https://docs.unity3d.com/jp/current/Manual/LightProbes.html

非Staticなプリミティブ(Capsule)を1つ追加してから、
CreateLightLightProbe Groupでライトプローブ群を作成し、Capsuleの周りに来るように配置を調整。



どのライトプローブから照明が補間されているかも分かるんですね。



非StaticなCapsuleにもGI効果が現れたぞ。



やってみたら案外直感的に試せるもんなんだな。今まで食わず嫌いだった(笑)

自分の作ったモデルをUnityでカッコ良くレンダリングするためにも、ちゃんとUV展開までしておかないといけないな。



できればボーンを仕込んでアニメーションもさせたいところだけど。。。


スポンサーリンク

関連記事

Math.NET Numerics:Unityで使える数値計算ライブラリ
adskShaderSDK
iPhone 3GSがますます欲しくなる動画
Autodesk Mementoでゴジラを3次元復元する
CycleGAN:ドメイン関係を学習した画像変換
ZBrush 2018へのアップグレード
ZBrush 4R8 リリース!
実写と実写の合成時の色の馴染ませテクニック
Python.NET:Pythonと.NETを連携させるパッケージ
OpenCV3.3.0でsfmモジュールのビルドに成功!
PeopleSansPeople:機械学習用の人物データをUnityで生成する
ZBrushでアヴァン・ガメラを作ってみる 甲羅のバランス調整
ZBrushでアヴァン・ガメラを作ってみる 下アゴの付け根を修正
参考書
シン・ゴジラのファンアート
Autodesk CompositeとAutodesk MatchMoverが無料
NICOGRAPHって有名?
ZBrushでアヴァン・ガメラを作ってみる 頬の突起を作り始める
『ローグ・ワン/スター・ウォーズ・ストーリー』のVFXブレイクダウン まとめ
NeRF (Neural Radiance Fields):深層学習による未知視点合成
HD画質の無駄遣い
geometry3Sharp:Unity C#で使えるポリゴン操作ライブラリ
Blendify:コンピュータービジョン向けBlenderラッパー
ZBrushのZmodelerとDynamic Subdivisionを学ぶ
ZBrushで仮面ライダー3号を造る 仮面編 Clay Polish
ゴジラ(2014)のディティール制作の舞台裏
日立のフルパララックス立体ディスプレイ
ZBrushでアヴァン・ガメラを作ってみる パーツ分割
布地のシワの法則性
Unity MonoBehaviourクラスのオーバーライド関数が呼び出される順番
ZBrushでアヴァン・ガメラを作ってみる 歯を配置
ZBrushでゴジラ2001を作ってみる 側頭部のボリュームを探る
スターウォーズ エピソードVIIの予告編
SIGGRAPH 2020はオンライン開催
ZBrushCore
タマムシっぽい質感
Unityで360度ステレオVR動画を作る
UnityでARKit2.0
白組による『シン・ゴジラ』CGメイキング映像が公開された!
ZBrushで手首のモデリングをリファイン
単純に遊びに行くのはだめなのか?
物理ベースレンダリングのためのマテリアル設定チートシート

コメント