Version: 2020.3
言語: 日本語
Lighting ウィンドウ
ライティングモード

Lighting Settings アセット

Lighting Settings アセットは、LightingSettings クラスの保存されたインスタンスを表し、ベイクしたグローバルイルミネーションとリアルタイムグローバルイルミネーションのシステムのデータを格納しています。Unity エディターは、ベイクしたグローバルイルミネーションシステムとリアルタイムグローバルイルミネーションのシステムのデータを保存しています。

同じ Lighting Settings アセットまたは LightingSettings クラスのインスタンスを複数のシーンに割り当てることができるので、グローバルイルミネーションシステムの設定を複数のシーンで簡単に共有することができます。

Lighting Settings アセットの作成

Unity エディターで Lighting Settings アセットを作成するには 2 つの方法があります。

プロジェクトビューから Lighting Settings アセットを作成するには、以下を行います。

  1. プロジェクトビューで、追加 (+) ボタンをクリックするか、コンテキストメニューを開いて Create に移動します。
  2. Lighting Settings をクリックします。Unity は、Project ビューに New Lighting Settings アセットを作成します。

Lighting Settings アセットを作成して自動的に割り当てるには、Lighting ウィンドウで行います。

  1. Lighting ウィンドウを開きます (Window > Rendering > Lighting Settings)。
  2. Scene タブをクリックします。
  3. New Lighting Settings をクリックします。Unity は、Project ビューに New Lighting Settings アセットを作成します。

スクリプトから Lighting Settings アセットを作成することもできます。これを行うには、LightingSettings クラスのインスタンスを作成してディスクに保存するか、シーンに割り当ててそのシーンを保存します。詳細およびコード例については、LightingSettings API ドキュメント を参照してください。

Lighting Settings アセットのシーンへの割り当て

Unity エディターで Lighting Settings アセットをシーンに割り当てるには、以下の手順で行います。

  1. Lighting Settings アセットを割り当てたいシーンを開きます。
  2. 複数のシーンを開いている場合は、Lighting Settings アセット を割り当てるシーンが アクティブなシーン であることを確認してください。
  3. Lighting ウィンドウを開きます (Window > Rendering > Lighting Settings)。
  4. Scene タブをクリックします。
  5. Lighting Settings アセットを Lighting Settings フィールドにドラッグするか、Lighting Settings フィールドの右にあるアイコンをクリックして、リストから Lighting Settings アセットを選択します。

また、スクリプトからアクティブなシーンに Lighting Settings アセットを割り当てることもできます。そのためには、Lighting Settings アセットをロードして、LightingSettings クラスのインスタンスを取得し、Lightmapping.latingSettings API を使用して、その LightingSettings インスタンスをアクティブシーンに割り当てます。詳細およびコード例については、LightingSettings API ドキュメント を参照してください。

Lighting Settings アセットのプロパティの表示と編集

Lighting Settings アセットのプロパティは、Unity エディターの 2 箇所で表示編集することができます。

  • Project ビューで、Lighting Settings アセットを選択すると、そのプロパティを Inspector で表示編集することができます。
  • アクティブなシーンに Lighting Settings アセットが割り当てられている場合、Lighting ウィンドウの Scene タブでその Lighting Settings アセットのプロパティを表示編集することができます。

また、スクリプトを通して Lighting Settings アセットのプロパティを読み取る/書き込むこともできます。そのためには、Lighting Settings アセットをロードして、LightingSettings クラスのインスタンスを取得し、そのプロパティにアクセスする必要があります。詳細およびコード例については、LightingSettings API ドキュメント を参照してください。

デフォルトの LightingSettings データ

シーンに Lighting Settings アセットが割り当てられていない場合、Unity はそのシーンに対してデフォルトの LightingSettings オブジェクトを使用します。デフォルトの LightingSettings オブジェクトは、LightingSettings クラスの内部用、読み取り専用のインスタンスです。

デフォルトの LightingSettings を使用するシーン の LightingSettings データに変更を加えることはできませんが、Unity はその設定を使ってベイクを行うことができます。

シーン の LightingSettings データを変更するには、Unity エディターを使用して Lighting Settings アセットを作成して割り当てるか、スクリプトを使用して LightingSettings オブジェクトを作成、設定、割り当てする必要があります。詳細とコード例については、LightingSettings API ドキュメント を参照してください。

プロパティ

Inspector または Lighting ウインドウで Lighting Settings を表示する場合、表示または編集できるプロパティは以下のセクションに分かれています。

Realtime Lighting

このセクションでは、リアルタイムのグローバルイルミネーションシステム に関する設定を行います。このセクションは、ビルトインレンダーパイプラインを使用している場合にのみ表示されます。リアルタイムのグローバルイルミネーションはビルトインレンダーパイプラインでのみサポートされており、ユニバーサルレンダーパイプライン (URP) や HD レンダーパイプライン (HDRP) ではサポートされていません。

Enlighten は非推奨で、間もなく Unity から排除されます。詳細については、Unity ブログ を参照してください。

プロパティ 説明
Realtime Global Illumination (deprecated) このチェックボックスを有効にすると、Unity はこの Lighting Settings アセットを使用するシーンでリアルタイムグローバルイルミネーションシステムを有効にします。
Realtime Environment Lighting このプロパティを有効にすると、リアルタイムグローバルイルミネーションシステムを使用して、アンビエントライトをリアルタイムで計算し、更新することができます。このプロパティを無効にすると、ベイクされたグローバルイルミネーションシステムを使用してエディターでアンビエントライトを事前計算し、ランタイムに適用します。

このプロパティは、Realtime Global IlluminationBaked Global Illumination の両方が シーンで有効になっている場合にのみ使用できます。

Mixed Lighting

このセクションには、この Lighting Settings アセットを使うシーンの ベイクしたライト混合ライト の動作に影響する設定が含まれています。

プロパティ 機能
Baked Global Illumination この設定を有効にすると、Unity は、この Lighting Settings アセットを使用するシーンに対してベイクしたグローバルイルミネーションシステムを有効にします。 この設定を無効にすると、Unity はこの Lighting Settings アセットを使用するシーンのベイクしたグローバルイルミネーションシステムを無効にします。

ベイクしたグローバルイルミネーションシステムが有効になっている場合、Unity はシーンのベイクしたライトをライトマッピングにのみ使用し、混合ライトは Lighting Mode 設定に従って動作します。ベイクしたグローバルイルミネーションシステムが無効になっている場合、Unity はシーンのすべてのベイクしたライトと混合ライトをリアルタイムライトであるかのように動作させます。
Lighting Mode この Lighting Settings アセットを使用するシーンのすべての混合ライトに対して Unity が使う Lighting Mode を指定します。

Lighting Mode を変更すると、この Lighting Settings アセット を使用するシーンの ライティングデータをベイクし直す必要があります。
Baked Indirect この Lighting Settings アセットを使用するシーンのすべての混合ライトに、Baked Indirect Lighting (ベイクした間接光) モードを使用します。
Subtractive この Lighting Settings アセットを使用するシーンのすべての混合ライトに、Subtractive (減法) ライティングモードを使用します。

Subtractive ライティングモードは、HD レンダーパイプライン (HDRP) ではサポートされていません。
Shadowmask この Lighting Settings アセットを使用するシーンのすべての混合ライトに、Shadowmask (シャドウマスク) ライティングモードを使用します。Shadowmask ライティングモードは、ユニバーサルレンダーパイプライン (URP) ではサポートされていません。

Lightmapping Settings

このセクションには、ライトマッピング に関する設定が含まれます。

Lightmapping Settings (ライトマッピング設定) は、各ライトマッパーバックエンドにによって異なります。ライトマッパーの設定を確認するには、以下を参照してください。

Auto Generate

Lighting Settings アセットを Inspector で表示すると、このプロパティは Inspector の上部に表示されます。Lighting Settings アセットを Lighting ウィンドウで表示すると、このプロパティは Lighting ウィンドウの下部、 Generate Lighting ボタンの近くにあります。

プロパティ 説明
Auto connect Auto Generate が有効になっている場合、ライティングデータは、シーンに変更を加えるときに自動的に事前計算されます。

このデータには、ベイクしたグローバルイルミネーションシステム用のライトマップ、リアルタイムグローバルイルミネーション システム用のライトマップ、ライトプローブ、リフレクションプローブが含まれています。

Unity は通常、シーンに変更を加えてから数秒後にベイクを開始します。Auto Generate が無効になっている場合は、Lighting ウィンドウの Generate Lighting ボタン、または Lightmapping.Bake または Lightmapping.BakeAsync API を使用して、手動でベイクを発生させる必要があります。

Auto Generate を使用してライティングデータを事前に計算する場合、事前に計算されたライティングデータはプロジェクトのアセットとして保存されないことに注意してください。代わりにメモリに保存され、シーンの一部としてシリアル化されます。
  • Lighting Settings は 2020.1 で追加NewIn20201
Lighting ウィンドウ
ライティングモード