物理ベースレンダリング (PBR)
Star-Lordモデル Joachim Coppens
物理ベースレンダリング(PBR)では、一貫性のあるグラフィクスレンダリングが、アーティストによるマテリアル作成、計測された物理的プロパティとマテリアルシェーダの組み合わせによって実現されます。光源と物体表面との関係をあらわす物理原則を適応することで、どのような照明環境でも特別な処理をすることなく自然な描画を行うことができます。
基礎となる原理
ここでは、物理ベースのシェーダが実行するライティングの計算の基礎となる原則を説明します。次のセクションでは物理ベースのレンダリングをどのようにPlayCanvas上で使用するかを詳しく説明します。
拡散 (Diffuse) とスペキュラ (Specular)
拡散と反射(あるいはスペキュラ)は光源とマテリアル間の関係をあらわす二つの主要な要素を表現するための用語です。反射光は物体表面で反射した光をあらわします。なめらかな表面では反射した光はすべて同じ方向に進み、表面は鏡のように見えます。拡散光は物体に一旦吸収され、物体内で反射されて再び放出される光です。この光は反射光とは違い、すべての方向に同じように放出されます。また、吸収と再放出が行われる際に、特定の波長の光は吸収されます。物体に吸収されなかった波長の光はその物体の色となります。例えば、青と緑の波長の光が吸収された場合にはその物体は赤く見えます。レンダリング用語では、拡散色は"アルベド"や"ベースカラー"と呼ばれます。
エネルギーの保全
Smooth surfaces have small bright patches, rough surfaces have large dim patches
物理的に正しいレンダリングの重要な要素は、エネルギーの保存です。拡散光と反射光がどちらも物体表面に投射される光から発生していることから考えると、拡散光と反射光を足しあわせた総量は、物体表面に投射された光の総量を上回ることはできません。この法則が現実世界で意味することは、物体表面の反射率が高ければ拡散光は非常に小さくなり、反対に拡散光が大きければ反射はあまり起こらないということになります。
物理 ベースのレンダリングの利点は、このエネルギー保存の法則がシェーダに内包されているということです。アーティストは法則を考えなくても物理ベースのレンダリングを行うことができます。
金属と非金属
PBRの古いシェーディングモデルと比較して、マテリアルがどのように作られたかを考えることで、マテリアルの振る舞いを決定するということが新しいことの1つです。ここで考慮する主な点は、マテリアルが導体(通常は金属)か絶縁体(非金属)かどうかです。
これが重要な理由は、マテリアルが光にどのように反応するかを決定する多くの要因を決定するからです。たとえば、金属は一般的に反射的です(60%〜90%)、非金属はそうではありません(0%〜20%)。次に、非金属の反射は通常は白色であり、金属は通常、拡散色と同じ色を反射します。
これらの違いのため、PBRのワークフローにはメタルネス ( Metalness ) プロパティが含まれており、マテリアルを金属または非金属として定義することで、このような内容を簡易に設定できます。メタルネスの詳細については、以下の節で説明します。