Unity5で使えるようになったGI(Global Illumination)を使ってみる(手探り編)

Unity5からGI(大域照明:Global Illumination)が使えるようになりました。すばらしい。ところがまだこのGI、あまり分かりやすい情報がありません。


Unity 5 Lighting Cookbook


Unity 5 Graphics - Lighting Overview - Unity Official Tutorials - YouTube

 Unity5では最初からSkyboxが 光源としてセットされているので、Cubeの地面に球モデルを置くだけで、それっぽく表示されます。

f:id:toshikaz55:20150309190708p:plain

デフォルトでDirectional Lightがセットされていますが、このライトをオフにすると、Skyboxの光源効果がよくわかります。

f:id:toshikaz55:20150309191044p:plain

f:id:toshikaz55:20150309190815p:plain背景のSkyboxが球の陰影に反映されているのがわかります。

とりあえず、Cubeを組合せ簡単なモデルを作り試してみます。

f:id:toshikaz55:20150309191444p:plain

 デフォルトでONになっていますが、WindowメニューからLightingペインを表示し、Skyboxによるライティングを使うと、それだけでそれっぽくなります。

f:id:toshikaz55:20150309191740p:plain

f:id:toshikaz55:20150309191601p:plain

 

f:id:toshikaz55:20150309191916p:plain

白い天井部分が背景のSkyboxによって地面の茶色で陰影付けられています。しかし、床の部分が緑なので天井も緑で陰影付されたいところです。

ここからが手探り状態になります。まだ細かい仕組みが良くわかっていません。

LightingペインのPrecomputed RealtimeGIにチェックが入った状態で、

f:id:toshikaz55:20150309193702p:plain

LightingペインでObjectを選択し、Rendersをクリックしたあと、ヒエラルキービューからGIを反映したい物体を選択し、Lightmap Staticをチェックします。このモデルでは床、天井、周りの壁を選択しました。

f:id:toshikaz55:20150309192941p:plain

すると、左下に計算中のプログレスバーが表示され、GIが計算されます。

f:id:toshikaz55:20150309193801p:plain

この程度のモデルなら一瞬で計算されて、GIが反映されます。

f:id:toshikaz55:20150309193901p:plain

 床の緑によって、天井や壁に緑の陰影がついています。

更にわかりやすくするため、赤いCubeを天井付近において同様にモデルを選択しLightmap Staticをチェックします。

f:id:toshikaz55:20150309200613p:plain

 赤いCubeに光が当たっていないので暗いですが、赤い色が天井の陰影に反映されていることがわかります。

f:id:toshikaz55:20150309201356p:plain

緑の床や赤いCubeによって天井や壁に色が映るカラーブリーディングが起こっているので、とりあえずGIが実現できていると思いますが、こんな方法でいいのかなぁ?

もっと簡単に一発でGIを実現できそうですが分かりません…さぐりさぐりやっていこうと思う今日このごろです。

そんな感じ

 

 

Unity4入門 最新開発環境による簡単3Dゲーム制作

Unity4入門 最新開発環境による簡単3Dゲーム制作