Version: 2020.1
Placing Light Probes using scripting
ライトプローブとメッシュレンダラー

移動するオブジェクトのためのライトプローブ

Lightmapping adds greatly to the realism of a scene by capturing realistic bounced light as textures which are “baked” onto the surface of static objects. However, due to the nature of lightmapping, it can only be applied to non-moving objects marked as Contribute GI.

リアルタイムおよび混合モードのライトは、移動するオブジェクトに 直接 光を投げることができます。ただし、移動するオブジェクトは、ライトプローブ を使用しない限り静的環境からの反射光を受けません。ライトプローブは、光がシーンでどのように反射するかに関する情報を格納します。 したがって、オブジェクトがゲーム環境の空間を移動するとき、ライトプローブに格納されている情報を使用して、現在の位置での反射光の近似値を表示します。

静的な警官からの反射光を表示した単純なシーン
静的な警官からの反射光を表示した単純なシーン

上のシーンで、ディレクショナルライトが、静的景観である赤と緑の建物に当たっていて、 反射光 がシーンに映されています。反射光は、各建物のすぐ前の地面に赤や緑の色あいで表示されます。これらのモデルはすべて 静的 なので、ライティングはすべて ライトマップ に格納されます。

移動するオブジェクトをシーンに導入するとき、それらは自動的に反射光を受けるわけではありません。下の画像で、救急車 (動的で移動するオブジェクト) は建物からくる赤い反射光の影響を受けていません。代わりに、その側面は単調なグレー色です。理由は、救急車はゲームで動き回る動的なオブジェクトであるため、ライトマップを利用できないからです。ライトマップは性質上、静的なものにしか使用できません。このシーンにライトプローブを使えば、移動する救急車は反射光を受けることができます。

建物の正面からからくる赤い反射光を受けるべきですが、救急車の側面は単調なグレー色です。
建物の正面からからくる赤い反射光を受けるべきですが、救急車の側面は単調なグレー色です。

ライトプローブ機能を使って移動する動的オブジェクトに反射光をあてるには、シーン全体にライトプローブを配置し、ゲームの移動するオブジェクトがとおる空間の領域をカバーするようにします。

シーンに置いたプローブは 3D 範囲を決定します。この範囲内のどの位置のライティングも、最も近いプローブにベイクされた情報を補間することによって、移動するオブジェクトに大体一致する位置を求めます。

単純なシーンの静的景観の周囲に配置されたライトプローブ。ライトプローブは黄色の点で示されています。それらをマジェンタ色の線でつなぎ、定義された範囲を表示しています。
単純なシーンの静的景観の周囲に配置されたライトプローブ。ライトプローブは黄色の点で示されています。それらをマジェンタ色の線でつなぎ、定義された範囲を表示しています。

プローブを加え、シーンのライトをベイクしたら、移動する動的オブジェクトはシーンの最も近いプローブに基づいた反射光を受けるようになります。上と同じ例を使うと、動的オブジェクト (救急車) は反射光を投げている赤い建物の前にあるため、ここでは、静的景観から反射光を受け、救急車の側面に赤い色合いが加わっています。

シーンのライトプローブをとおして建物の正面から反射光を受けているため、救急車の側面に赤い色合いが加わっています。
シーンのライトプローブをとおして建物の正面から反射光を受けているため、救急車の側面に赤い色合いが加わっています。

動的オブジェクトを選択すると、シーンビューは、反射光の補間に使用しているライトプローブを視覚的に表示します。動的オブジェクトに最も近いプローブが 4面体の範囲を形成するのに使われます。動的オブジェクトのライトはこの 4面体の 4 つの点から補間されます。

動的オブジェクトのライティングに使用されるライトプローブは、オブジェクトが選択されると、黄色の線で囲まれた 4面体の範囲を示してビューで表示します。
動的オブジェクトのライティングに使用されるライトプローブは、オブジェクトが選択されると、黄色の線で囲まれた 4面体の範囲を示してビューで表示します。

オブジェクトがシーンを通り抜けるとき、オブジェクトはある 4面体の範囲からもう 1 つの 4面体へと移動し、現在含まれる 4面体内のオブジェクトの位置に基づいてライティングが計算されます。

動的オブジェクトがライトプローブを伴い、ある 4面体のライトプローブの範囲からもう 1 つの 4面体へと移動する様子を表示しながらシーンを移動してゆきます。
動的オブジェクトがライトプローブを伴い、ある 4面体のライトプローブの範囲からもう 1 つの 4面体へと移動する様子を表示しながらシーンを移動してゆきます。

  • 2017–06–08 Page published

  • Light Probes、 5.6 で更新

Placing Light Probes using scripting
ライトプローブとメッシュレンダラー