RenderingUnityでライトマップをベイクをする際の、目的に応じた設定方法を検証しました。検証用のシーンを作る全部リアルタイムにしたい環境は完全ベイク、キャラクターはリアルタイムにしたい環境はベイクだけどSpecularは入れたい環境ベイクだけどSpecular入れたいし遠くの影も表現したい関連Unity2018.2.0ベイク周りの基礎知識この記事では実践的な設定方法のみ説明します。ベイク周りの基礎知識については下の記事に書いているのでこちらを参照してください。light11.hatenadiary.com検証用のシーンを作るまず検証用にこんなシーンを作りました。実際のゲームでは、キャラクターを動的にして環境のオブジェクトはStaticにすることが多いかと思います。そのため今回は猿のモデルをキャラクターであると想定してDynamicに、それ以外はStaticにしました。シャドウマップのdistanceは途中で消える範囲に設定してあります。全部リアルタイムにしたいまずはベイクなしで、全部リアルタイム処理してみます。設定は下記のようにします。IlluminationはOFF)という感じです(前節の画像と同じ設定です)。すると、次の結果が得られます。間接光が表現されないため、Diffuseは単調な仕上がりになります。影もすべてリアルタイム計算なのでシャドウマップ範囲外の影は消えてしまいます。環境は完全ベイク、キャラクターはリアルタイムにしたい次に環境はすべてベイクにして、キャラクターだけリアルタイムで処理してみます。設定は下記のようにします。IlluminationはOFF)にしました。結果はこんな感じになります。前節のものより間接光が正確に表現され、遠くの影も表示されるようになりました。StaticなオブジェクトのSpecularは消えました。Specularは視点に依存するため、ベイクはされません(できません)。環境はベイクだけどSpecularは入れたい前節ではStaticなオブジェクトからSpecularが消えてしまいました。そのため次に、ベイクをしつつもスペキュラが表現される設定にしてみます。IlluminationはOFF)というように設定しました。これは「間接光のみベイクして直接光はリアルタイム計算する」という設定になります。結果はこんな感じです。間接光はベイクを行っているので前節のようにDiffuseはいい感じに表現されています。光はライティング計算を行っているのでSpecularも出ています。光をリアルタイム計算した影響でシャドウマップ範囲外の影がまた消えてしまいました。最後に間接光のベイクを行いつつ影をちゃんと表示する設定をしてみます。ModeをShadowmaskにしました。これは「シャドウマップ範囲内の影はリアルタイム計算し、範囲外の影はベイクしたものを使う」という設定です。結果はこんな感じになります。SpecularもDiffuseもいい感じに表現され、遠くの影もしっかり落ちました。»プロフィールUnityエンジニア。グラフィックスへの興味が強めです。Blur(渦巻ブラー)のポストエフェクトを実装する月別アーカイブはてなブログをはじめよう!halya_11さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。