© 2017-2019 Serina Nakajima

Normal mapをセットした時に画像が暗くなるのをそれっぽく直す

July 12, 2018

Unityでライトニングするぞ〜〜と思って実装したら、実装させたスプライトがDirectional lightを点けても元のスプライトよりちょっと暗い(しかもなんか青っぽい・・・?)のが気になったので、色々試してたらそれっぽく直りましたのでメモ!(直せたように見えてるだけなので、いい方法があればぜひ教えてください・・・!)

 

※解決方法は赤字から下です。

 

【まずはスプライトをライトニングに対応させる】

ライトニングに対応させるスプライトと、そのスプライトと同サイズの白塗りした画像を用意します。

 

 

 

 

 

 

 

 

 

 

 

 

 

白塗りの画像のTexture Typeを「Normal map」に変更し、「Create from Grayscale」にチェックを入れます。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Materialを新たしく作成し、「Albedo」には対応させるスプライト、「Normal Map」には白塗りの画像をセットします。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Sceneに対応させるスプライトを配置し、そのスプライトに先ほど作ったMaterialをセットします。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

スプライトが暗くなったと思います。(右のスプライトは比較のために配置)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

そして「Point light」などを配置すれば、いい感じ!(?)

(使用している画像だと雰囲気ないですが、夜のときに街灯のあかりを表現するときなどすごくいいと思います!)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ここからが本題!

じゃあこのMaterialをセットしたまま、夜以外の明るいときを表現しようと思ってDirectional lightを配置したのはいいけど、なんか、暗い・・・。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

取り急ぎの解決として。

「Emission」にチェックを入れ、「Color」に元のスプライトをセットします。

そして元のスプライと同じくらいの明るさになるように色を調整して・・・・

(「Specular Highlights」のチェックを外すかはお好みで)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

うん!だいたい同じ・・・かなー!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

普通にめんどくさいし、他に絶対いい解決方法(もしくはライトニング方法)がある気がするので、なかじまの調査は続くのであった・・・(´・ω・`)

Share on Facebook
Share on Twitter
Please reload