【Unity】自作3Dゲームをより綺麗に見せる「ライティング」のコツ

ゲーム制作メモ

少し前の話になりますが、「Unity臭さを消す方法」というのがTwitter等で話題になりました。なんでそんなことが話題になったのかと言えば、Unityで3Dゲームを作ると「いかにもUnityで作りました」という感じの見た目になりやすいからです。

それで見た目がUnity臭くなってしまう最大の原因は「ライティング」にあるようです。つまりライティングがデフォルト設定のままだからダサい見た目になってしまうというわけですね。

ただライティングに関して言うと、私がUnity初心者の頃は「ライティングが大事なのは何となくわかるけど…どうすれば綺麗な見た目になるのかよく分からん!」という感じでした。そこでこの記事では初心者の方向けに「簡単にできるライティングのコツ」を紹介していきますね。

スポンサーリンク

Unityのデフォルトのライティングの問題点

では、まずは問題となっている「Unity臭いライティング」(つまりデフォルト設定)のシーンをご覧ください。

Unity臭いライティングの例

まあ最近のUnityではデフォルトの設定が多少改善されたので、「大至急ゲームを作らないと間に合わない」といった状況ならこれでもアリかもしれません。しかしこれを見ると次のような問題があることが分かります。

  1. 影が濃すぎる
  2. 環境光が弱すぎる
  3. アンビエントオクルージョンがない

影が濃すぎる

まず一つ目は「影が濃すぎる」ということです。

皆さん影というと「黒い」イメージがあると思いますが、現実世界で実際に青空の下でできた影を見てみるとそこまで黒くないのが分かると思います(※注)。

つまり、今回のように青空(デフォルトの空ですが…)の下では影は濃すぎないほうが自然に見えるというわけです。


※注:もちろん状況によっては真っ黒な影ができる場合もあります。例えば、真っ暗な部屋に1つだけライトを置いたときなどですね。

環境光が弱すぎる

次に二つ目は「環境光が弱すぎる」ということです(環境光とは…読んで字のごとく環境による光のこと)。

Unityで新しいシーンを作るとディレクショナルライトが一つ配置されていますが、実はシーンの光源はそれだけではありません。試しにディレクショナルライトを消してみてください。真っ暗にはならないはずです。これはなぜかというと、デフォルトだと空(=Skybox)の色調からシーン全体を照らす環境光が出ているからです。

しかしデフォルトではこの環境光が弱いため、ディレクショナルライトにかき消されて空の色がシーンに反映されにくくなってしまっています。この点は改善する必要があるでしょう。

アンビエントオクルージョンがない

最後に三つ目は「アンビエントオクルージョンがない」ということです。

アンビエントオクルージョンとは簡単に言えば「溝や隅を暗く描画する」技法のことで、物体の立体感を増してよりリアルに見せることができます。

まあこれに関しては必ずしも「あれば良い」というわけではないのですが、もし可能であれば取り入れたい技法だといえます。

ライティングで意識すると良い3つのポイント

問題点が分かったところで、次はそれを改善するためのポイントを見ていきましょう。やり方は色々あると思いますが、今回は簡単に設定できる次の3つのポイントを紹介しますね。

  1. ディレクショナルライトの影の強さを弱くする
  2. 環境光を強くする
  3. アンビエントオクルージョンをONにする

改善後のシーンは次の画像のとおりです。

Unity臭さを消したライティングの例

だいぶ良くなったと思いませんか?それでは設定方法を見ていきましょう。

ディレクショナルライトの影の強さを弱くする

まずは下の図のように、シーンのディレクショナルライトの影の強さを少し弱くします。

ディレクショナルライトの設定

また、この次に環境光を強くするので、ついでにライトそのものの強度も少し下げて明るくなりすぎるのを防止しておきましょう。

環境光を強くする

次はライティング設定を開いて強度を高くします。ここでは「2」にしておきましたが、値はシーンに合わせて適当に調整してください。

環境光の設定

ちなみに、シーンのライティング関係の設定はメニューバーの「ウィンドウ」→「レンダリング」→「ライティング設定」から開けるウィンドウで行うことができるので覚えておきましょう。

アンビエントオクルージョンをONにする

最後に味付けとしてアンビエントオクルージョンをONにします。

アンビエントオクルージョンの設定

「最大距離」はデフォルトだと「1」ですが、それだと範囲が広すぎると思ったのでここでは「0.3」にしておきました。

ちなみにアンビエントオクルージョンをONにすると、広いシーンのライティングをベイクする場合に少し時間がかかるようになるので注意してください。

おわりに:ライティングを工夫してゲームの見た目を改善しよう

以上、簡単ではありますが「3Dゲームの見た目を綺麗にするライティングのコツ」をご紹介しました。何かしら参考になれば幸いです。

繰り返しになりますが、自作3Dゲームがショボい見た目になってしまう原因は「ライティング」によるところが大きいです。しかしライティングは少し工夫するだけで改善できるので、ひと手間かければ見た目をかなり良くすることができると思います。ぜひ今回の内容を参考にして3Dゲームを綺麗に仕上げてみてください。