· 

【Unity】3Dモデルの背景で空気感を表現する

Last Updated  2024.11.20


 プロジェクトをURPに対応させ、ステージを自作してみたまではいいものの──テストプレイ中になんというかこう、背景にいわゆる《空気感》みたいなものを作りたいと思い、思考錯誤した際の記録です。

今回は

Lighting設定の場所について

[ Window] > [Rendering] > [Lighting] で表示される

※URPプロジェクト時。ビルドイン~形式だと表記が微妙に違うかもしれません。

Lighting (環境光)》ウィンドウの設定を見直します。

Environment Lightingの見直し

 Lighting ウィンドウの [Environment] タブ内にある

 [Environment] の設定を変更していきます。

 デフォルトの設定だと

[Environment Lighting] 内にある [Source] という項目は、[Skybox] になっていると思います。 

 これは文字通り、シーン全体に影響を及ぼす環境光がSkyboxの色を参照する設定で、フォトリアルな表現を目指すのなら、このまま突き詰めてもよいのでしょうが──自分の場合、イラスト的な表現の方が馴染み深いので

Environment_Lightingの設定

[Environment Lighting] 内 > [Source] の設定を [Gradient] に変更。

 あとは画面を見ながら、自分のイメージに基づき設定していきます。

  • [Sky Color] (空) は、屋外の青空なので彩度が高すぎない水色に
  • [Equator Color] (地平線)は、横からみた構図だとキャラクターに一番影響がある部分です
  • [Ground Color] (地面)は、デフォルトの暗色から殆ど動かしませんでした
Environment LightingのSourceが初期設定のSkybox時
▲Sourceが初期設定のSkybox時
Environment LightingのSourceがGradient時
▲SourceがGradient時

 今回重要なのは [Equator Color] の部分で、キャラクターの色味(特に肌色)が綺麗に見えるよう調整しました。比較すると、Gradientに変更後の方がキャラや床の色味がハッキリしていると思います。

 

 画面全体の色味に影響を与える、大事な設定ですね。

Fogを追加する

 「なんで霧?」と思われた方もいらっしゃるでしょうが、イラスト的に考えると遠景物に色のついたレイヤーを重ねて、奥行きや空気感を表現するといった手法と同じです。

 実装方法は簡単で

先ほど設定変更したEnvironmentタブの下のほうにある

Fogを追加する場合はチェックを入れる

[Other Settings] 内 > [Fog] を有効にし

[Color] で色

[Mode] でフォグがカメラからの距離によって、どのように蓄積するかを決定します。

 Modeに関しては実際に試してみた方が解りやすいのですが、Exponential系の2つは自然な表現で、Exponential Squaredの方がより自然な感じになる印象です。

 

 自分の場合、基本的にはフラットな絵面を目指したいのと、プレイヤーはフォグの影響を受けないようにしたかったため、今回は[Linear]に設定してみました。

 

 [Start] の値で、霧がかかるカメラからの距離を自分で設定できるのがポイントですね。

 [End]の値は……小さくするほど霧の濃度が濃くなる、という考え方でいいと思います。※厳密には違いますが、ちゃんと説明するのが自分には難しいので……

比較してみる

Environment Lightingが初期設定の時
▲開始時の段階
Lighting設定を変更した結果
▲Fogを追加したサンプル

 高負荷になりやすいポストエフェクトを使わずに、なんとかイメージに近い結果が得られました。これなら遠景はシルエットを重視して、マテリアルは最低限にといったことも出来そうです。

 

 

 キャラの視認性も向上した……ような気がします。気のせい?


 ▼参考サイト(公式)