Unityのゲーム画面を綺麗にするライティング
Unity5向けはこちら
Unity5 で画面を綺麗にするライティングに挑戦してみるメモ - テラシュールブログ
モバイル向け最適化はこちら
本編
今回は画面を綺麗にする…というか、3D画面を古臭い3Dっぽくなくす方法を紹介します。と言っても、以前紹介してるのでその焼き直しです。
Ambient Lightとか使って絵作り - テラシュールブログ
今回用意した画像はこちら。とりあえずポリゴンを幾つか配置してライティングをかけただけです。割とこんな感じの絵作りをしているゲームは多いです。
これを、下のような感じの絵にします。勿論好みの問題で上の方が良いと思う人も多いかもしれません。
ライティングの調整
まずは、やはり影が濃すぎるのでこれを何とかします。影や全体的な明るさの調整は、Ambient Lightを使用します。
メニュー>Edit>RenderSettingsからAmbient Lightを選択して、もっと明るくします。この項目が全体的な明るさとなります。空がある場合、空の色を参考に決定すると、かなり良い感じになります。
これと、Directional Lightの明るさも少し調整します。どちらかと言えば、Directional Lightは添えるだけレベルで明るさを調整した方が良いです。上の画像ですと、大体Intensity(輝度)が0.21とか、そのくらいのレベルで調整されています(もっと弱くても良いです)。
とりあえずココまで調整すると、絵はこんな感じになります。
ライトマップを焼く
もう一弾綺麗にするには、ライトマップを焼きます。ライトマップを焼く事で、通常では難しいAmbient Oculusionを使用することが出来ます。Pro版を持つ場合、Light Probeで擬似GIを付与する事も可能ですが、今回は割愛します。
本来、影はとても負荷が高い処理なので、テクスチャを置くだけで表示してくれるライトマップはとりあえずオススメです。
最終的にはこんな感じになります。
ライトマップを焼くには、以下の手順を行います。
- 焼く対象及びライトのStaticにチェックを入れる*1
- メニュー>Window>Lightmappingを選択し、Lightmappingウィンドウを開く
- Ambient Occlusionを0.3くらいに設定
- Bake Sceneを選択
Ambient Occlusionを設定することで、オブジェクトの暗くなるべき所がより暗くなり、接地面が上手い感じに表現出来ます。
ちなみに、ライトマップは焼くのに非常に時間がかかります。これを短縮するのは、ライトマップのテクスチャ解像度を下げるのが割と手っ取り早いです。
テクスチャの解像度は、LightmapingウィンドウのResolutionで設定します(それ以外にもオブジェクト毎に設定できます)この値が小さければ小さいほど、高速でベイク出来ます。最終的には40程度でベイクする形になりますが、焼き状態を見るには10~20くらいでも十分と言えば十分です。
ちなみに、解像度についてはLightMappingウィンドウを開いた状態で Show Resolutionにチェックボックスを入れると、シーンビューから確認する事ができます。
この模様が大きければ大きい程雑にライトマップが焼かれ、小さければ小さいほど細かく焼かれるという寸法です。
Lightmap焼きの進行状況は、右下に表示されます。焼き中でも作業は出来るので、時々焼くくらいの感じで作業しても良いかもしれません。
真ん中の光ってる物体は、Self Illminateなシェーダーを設定したマテリアルを設定しています。これ後で気づいたのですがSelf Illminateの発光はPro専用機能らしく、Free版ではPoint Light等で代用する事になりそうです。
色合いを調整したり
最後に絵作りの一環として色合いを調整したりbloomをかけたりDepth of fieldをかけたりします。この辺りはImage Effectを使用します。今回は色合いの調整のみを行いました。
- CameraにColor Correction Curvesコンポーネントを追加
- 何か綺麗になるように、カーブを調整する
これで全体的に色調を落としてレトロな感じにしたり、適当にアセット突っ込むとバラバラになりがちな色彩を調整したりします。ここのバランスは凄く難しいですね…
その他
Unityで作られたゲームを見ると、割と「ライティングが初期状態のまま」作られているゲームを多く見ます。Free版でもライトマップ焼くまで出来るので、是非ともお試しあれ。
ちなみに動くもの(人等)に関しては、足元(足裏)にProjection Shadow*2置くと、何か良くなる気がします。
追記’ 凄い良い資料