パルテア

どうぶつの森の美術館 〜ゲームエンジン(Unity)グラフィックス ライティング ライトマッピングとシェーダー〜

ライトマッピングとシェーダー

このページには、シェーダーを Unity のライトマッパーと互換性を持たせる方法に関する情報が含まれています。

メタパス

メタ パスは、アルベドと発光値をグローバル イルミネーションに提供するシェーダー パスです。
システム。これらの値は、リアルタイム レンダリングで使用される値とは別のものです。つまり、メタ パスを使用してゲームオブジェクトのレンダリング方法を制御できます。
実行時の外観に影響を与えることなく、ライティング ベイク システムの視点から見ることができます。

これが役立つ例としては、崖の上の緑の苔でライトマップ内で誇張された緑色の間接光を生成したいが、シェーダーのリアルタイム パスで地形の色を変更したくない場合が挙げられます。

Unity のすべての組み込みマテリアルにはメタ パスがあり、標準シェーダーにはメタ パスが含まれています。これらを使用している場合は、メタパスを有効にするために何もする必要はありません。カスタム シェーダーを使用している場合は、独自のメタ パスを追加できます。

メタパスを使用したシェーダーの例

以下のシェーダーを使用すると、実行時のマテリアルの外観に影響を与えることなく、ライティング ベイク システムによってのみ使用されるアルベド カラーとアルベド テクスチャを指定できます。この例では、発光は UV から取得されます。ただし、任意の値を使用して制御できます。

メタパスの技術情報

Enlighten リアルタイム グローバル イルミネーションとライトマッピングは、Unity のメタ パスを使用してサーフェスからアルベド値を抽出し、バウンスごとにサーフェス アルベドを使用して拡散トランスポート自体を処理します。

黒(またはほぼ黒)のアルベドを持つ金属表面は、光をほとんど拡散せずに反射します。ライトマッパーは拡散光の輸送のみを処理するため、これらのタイプの表面から反射された光はほとんど見られない可能性があります。 Unity の組み込みメタ パスは、物理的に正しいアルベドの代わりに、金属の色相の強化されたバージョンを提供することでこれに対応します。これは、金属素材であってもある程度のバウンスが得られることを意味します。別の動作が必要な場合は、カスタム メタ パスを作成できます。

組み込みのメタ パスは、分光鏡面反射率を処理しません。

注: Enlighten Realtime Global Illumination を使用している場合、プレーヤーのメタ パスは DynamicGI.SetEmissive ほど高速ではありませんが、単一の色に限定されないため、より柔軟です。

カスタムRGB透明度

デフォルトでは、Unity のシェーダーはモノクロ透明度を使用します。これは、Unity がマテリアル カラーまたはアルベド テクスチャのアルファ チャネルを使用して、マテリアルを通る光の透過を評価することを意味します。

ライトマッピング中に、代わりにカスタム RGB 透明度を使用できます。これは、Unity が特定のテクスチャの値を使用してマテリアルを通る光の透過を評価することを意味します。これは、マテリアルの色やアルベド テクスチャに依存しない、カラーベースの透明度が必要な場合に便利です。たとえば、ステンド グラスの窓から輝く光の動作をシミュレートするライティングをベイクしたい場合です。

ライトマッピング中にカスタム RGB 透明度を使用するには、ShaderLab コードに次の行を追加します。

_TransparencyLM (「透過テクスチャ」、2D) = "白" {}

これにより、マテリアル インスペクターに「Transmissive Texture」という名前で表示されるマテリアル プロパティが作成されます。目的のテクスチャをこのフィールドに割り当てます。


    Course

  • 日時:2024/04/01 ~ 2025/03/31
  • 名称:どうぶつの森の美術館 〜ゲームエンジン(Unity)グラフィックス ライティング ライトマッピングとシェーダー〜
  • 場所:オンラインスクール
  • 料金:¥0 (消費税込)