見出し画像

【Unity】ライトマップ(AO含む)のベイク方法

テンプレプロジェクトの「3D」で制作を開始後、ライトマップ(AO含む)をベイクするやり方をメモしておく。(Built in レンダーパイプライン

Unityのライトマップには、リアルタイムと静的(ベイク)の2種類があるが、今回は後者の説明をする。この2つは、いつでも切り替えることは可能。

<Unity 2020, 2021>

■概要

ライトマップのベイク(AO含め)の主な設定は、ライティングウィンドウで行う。
あと、ライト>インスペクタのベイク設定を行い、オブジェクト>インスペクタのベイク設定の「静的」は必ず、有効にしておく。でないとベイクされない。

画像8

■下準備

混合ライティング>ベイクしたグローバルイルミネーション を有効。

画像8

アンビエントオクルージョン(AO)を有効にしてパラメータを適当に設定。遮蔽された部分に生成される陰影の見栄えを調整する。

画像8

ベイク結果は、ベイクしたライトマップで表示確認できる。

画像1

ライティングウィンドウの下部にライティング生成ボタンがあり、クリックすることで手動でベイク更新ができる。自動生成を有効にしておけば、編集時自動的にベイクが更新される。

画像3

■各ゲームオブジェクトの設定

Directional Lightのインスペクターの設定。
モード>混合 またはベイク に設定しておく。

画像5

<重要>
各立方体オブジェクト等のインスペクターで、
ベイク対象となるよう「静的」を有効にしておく。(設定箇所は、ウィンドウ右上角に在中)

画像5

■比較

AO有り(上)、AO無し(下)。

画像10
画像9

■ライトマップを圧縮する方法

標準状態だとライトマップのファイル容量が大きい。このままでは、処理やメモリに負荷がかかるので小さくしたい。
プロジェクトウィンドウにある、ライトマップを選択した状態で、インスペクターを表示。(ファイル複数選択してから設定すると一度で済む)
次にインスペクター>デフォルトの設定を変更。

設定後、適用するとライトマップのファイルが圧縮される。
ファイル容量を比較して、違いを確認。Crunch圧縮で、かなりファイル容量が減少しているはず。もっと軽くしたい場合は、「Max Size」を調整する。
このあたりは、ファイル容量と品質はトレードオフなので要調整。

<標準設定>

画像11

<圧縮設定>

画像12

<ファイル容量比較:左)標準、右)圧縮済>

画像12

■関連記事

以上。

この記事が気に入ったらサポートをしてみませんか?