PhysifApps

趣味と開発メモ保管庫

Directional Lightを明るさ0にしても夜みたいに暗くならない【Unity】

夜にしたいのに全然暗くなってくれなくて夜っぽさが出ないときの対処法メモ。

ライト切っても明るい

  • Directional LightのIntensityを0にしたりしてみた
  • Skyboxも夜っぽいやつを入れてある

それなのに全然暗くならなくて周りがよく見えすぎる。

全然明るい

Lighting設定を変更しよう

そういう時は、Lightingのウィンドウを開き、Environment Lighting > Intensity Multiplier の値を落としてみてください。

例としては自分の場合だと、0.7くらいにすると割といい感じです。

また、下にある Environment Reflections > Intensity Multiplier の値も合わせて変えてみると結構変わります。Lightingの方と同じような値にしておけば良さそう。

また、fogを設定しているなら、0.001などの値だとfog強くて水色っぽい色にしているとしっかり自己主張しちゃうので、色を変えるかDensityを落としてください。

画像では水色っぽい色のままにしてます

おすすめなのは、LightとFogの色を青寄りの紫っぽい色にすることです。

水色っぽい色にしているより結構雰囲気が出ます。GTAVも多分紫っぽいのが被ってる気がします。本当かわからないけど。

極端に落とすとこんな感じ(0.5)。割とそれっぽいじゃん!って思いましたが、暗すぎてユーザーの視認性が落ちてしまうのも困るので、極端に落とす場合でも最終的に0.7〜0.9程度に落ち着きました。

モニターが明るいのか、モニターで見た時と明るさに差があってびっくりしてます。

街灯などstaticオブジェクトだと思うので、Emissionなど入れてbakeしておけばかなり雰囲気変わっていると思います!

追記

結果的に個人開発してるゲームでは落としても0.9程度に落ち着きました。

レースゲームでも1のままにして、基本的にはskyboxやDirectional Lightの色、Post Processの設定で基本的にやりくりするような形になりました。むしろこっちの方がいいまである。