PBRとはなにか?

PBRとは、Physically Based Rendering(物理ベースレンダリング)の略。これは、現実世界のマテリアルを代表するサーフェスのリアルなシェーディング/レンダリングを表現するためのコンセプト/手法です。しかし、厳密なルールセットではなく、物理的に正確なマテリアルを実現するためのガイドラインです。

1. 光線

Desktop View

光線がある面に当たると、光線は2つの方向に分裂し、次のような現象が起こる:
反射光
表面で反射し、別の方向に進む。これは、反射角は入射角に等しいという反射の法則に従う。
屈折光
ある媒質から別の媒質へ直線的に進む。

反射の法則は、反射の角度は入射の角度に等しいと定めている。

表面で光線は反射するか屈折し、最終的にはどちらの媒質にも吸収される。しかし、吸収は物質の表面では起こらない。

2. 吸収と散乱(透明と半透明)

皮膚や一本の草の葉のような半透明の物質を透過する光線は、吸収されたり散乱されたりします。

光が吸収される場合

光が散乱した場合:

光線は、半透明の素材を透過するとき、吸収されるか散乱される。

散乱がなく、吸収が低い場合、光線は表面を直接通過することができます。この例はガラスや水です:

このような媒体では、光が遠くへ行くほど、吸収や散乱が大きくなる。したがって、厚さマップのようなものは、光がどれだけ吸収され、または散乱されるかを指示するのに役立ちます。

3. 拡散反射と鏡面反射

Desktop View

鏡面反射
表面で反射する光のこと。光は表面で反射し、異なる方向に進む。
鏡面反射
完全に平らな表面では、反射角は入射角と等しいという反射の法則に従う。

The total amount of light reflected is the same in both specular & diffused reflections.

屈折とは、光の方向が変わることである。光がある媒体から別の媒体に移動するとき、速度と方向が変化する。これは、ガラスや水のような透明な物質において最も顕著である。

Desktop View

拡散反射
拡散反射とは、屈折した光のこと。光線はある媒質から別の媒質へと通過する。その後、光は物体内で複数回散乱され、最終的には2つ目の媒体に入ったときとほぼ同じ角度で物体から屈折して出ていきます。屈折率またはIORは、この方向の変化を測定する光学的測定値です。IORは、光線が別の媒質を通過する際に、どの程度曲がるかを決定します。

拡散材料は吸収性があります。屈折した光が拡散性物質の中を長く進むと、完全に吸収されることがあります。光がこの材料から出たとしても、入射点からごくわずかな距離しか進んでいない可能性が高い。

伝統的なシェーディングでは、拡散反射の反射率を表す2つの一般的なモデルがあります:

鏡面反射では、表面材料の知覚される明るさを表現する4つの一般的なモデルがあります:

Desktop View

半透明素材
散乱が大きく吸収が小さい素材。半透明材料の例としては、以下のようなものがある:

マイクロファセット理論

拡散反射と鏡面反射はどちらも、光線が媒質と交差する表面の凹凸に依存する。

乱反射に対する凹凸の影響は、材料内部で散乱が起こるため、目に見えにくくなる。このため、光線の出射方向は表面の粗さや入射方向に依存しません。拡散反射のLambertianモデルは粗さを完全に無視します。

表面の凹凸は表面粗さとも表現されます。他の一般的な名称や類似の名称には、粗さ、滑らかさ、光沢度、微小表面などがある。名称は、どのPRBワークフローが使用されているかに大きく依存する。メタリック/粗さなのか、スペキュラー/光沢なのか。いずれにせよ、これらの用語はすべて、サブテクセルジオメトリのディテールという同じものを表現するために使用されます。

表面の凹凸は、ラフネス/グロスマップでオーサリングされる。その後、物理ベースのBRDFがマイクロファセット理論に基づいて適用されます。マイクロファセットは、さまざまな方向と形状を持つ、表面上の小さなスケールの平面ディテールとして記述することができる。これらの小さな平面はそれぞれ、表面法線に基づいて単一方向に光を反射する。

www.DeepL.com/Translator(無料版)で翻訳しました。

Desktop View 「The Comprehensive PBR Guide by Allegorithmic - vol. 1 Light and Matter : The theory of Physically-Based Rendering and Shading」©Allegorithmic

表面法線(m)が光方向(l)と視界方向(v)のちょうど中間を向いているマイクロファセットは、可視光を反射する。しかし、半値法線(h)がマイクロ表面法線と等しい場合、光方向(l)に起因する影や、視野方向(v)に起因するマスキングによってブロックされるものがあるため、すべてのマイクロファセットが寄与するわけではありません。

微細な表面の凹凸は、光の拡散を引き起こす。このように、表面の凹凸によって光線が散乱されるため、ぼやけた反射が起こることがある。

Desktop View

4. Colour

Desktop View

色とは、表面から反射される光の波長による目に見える反応である。光が表面に当たると、これらの波長は物体に吸収され、鏡面反射と拡散反射のいずれかをする。反射された光の波長が、私たちが色として認識するものである。

例として、赤いリンゴの皮を見てみよう。私たちがリンゴを赤いと感じるのは、他のすべての波長が吸収され、赤い波長が反射されるからです。

また、リンゴは光源と同じ色からなる鏡面ハイライトを持つが、これは弁証法的材料、つまり電気を通さない材料の場合、鏡面反射が波長に依存しないからである。

弁証法的な材料では、鏡面反射は決して着色されない、つまり、その物体の反射波長と同じ色になることはない。

5. BRDF

Desktop View

双方向反射率分布関数(BRDF)は、表面の反射率特性を記述する関数である。BRDFにはさまざまなモデルがあり、現実世界では物理的に妥当でないものもある。一般的なモデルには次のようなものがあります:

BRDFが物理的に妥当であるためには、エネルギー保存の法則に従い、互恵性を示さなければならない。互恵性とは、ヘルムホルツの互恵原理を指し、BRDFの結果に影響を与えることなく、入射光線と出射光線が互いに逆であるとみなすことができるというものである。

最近では、SubstanceやMarmosetなどのリアルタイムエンジンにGGX分布が含まれたり、主に利用されたりしています。これは、ピークが短く、テールフォールオフが長いことが特徴です。

6. エネルギー保存

エネルギー保存の原則は、反射光の総量は、それが最初に表面に当たったときよりも強くなることはない、というものです。表面から再放出される光の総量は、反射と散乱の両方を含めて、入射光の総量よりも少ない。

7. フレネル効果

フレネル効果とは、フランスの物理学者オーギュスタン・ジャン・フレネルによって初めて観測された効果である。フレネル効果とは、表面から反射される光の量は、それが知覚される視角に依存するというものである。

水のプールを思い浮かべてほしい。プールを水面に垂直にまっすぐ見下ろすと、通常はプールの底まではっきりと見える。この角度で水面を見ると、水面の法線(垂直入射)に対して0度で見ていることになる。

もう一度プールを見てみましょう。今度は、水面に対してやや平行な角度から見てみましょう。ここであなたが見ているのは、先に述べた鏡面反射である。状況によっては、水面下がまったく見えないこともある。

Desktop View 「Basic Theory of Physically-Based Rendering」©marmoset

もうひとつの例は、ノートパソコンやタブレット、携帯電話の画面にアンチグレア加工が施されていない場合だ。画面を真正面から見ると、画面に表示されているものを見ることができるだろう。表面の法線を目から少し離して別の方向に傾けると、多くの場合、近くにある他の物体の反射を見ていることに気づくだろう。

フレネルは一般的に、典型的なPBRワークフローで制御できるものではありません。ただし、UE4 などの一部の例外では、エンジンによって公開されているカスタムのフレネルノードがあり、特定のユニークなマテリアルエフェクトを可能にしています。

グレーディング入射でサーフェスを見る場合、すべてのスムージングされたサーフェスは、90度の入射角度でほぼ100%のリフレクターになります。

すべての表面はある程度光沢があり、すべての表面はある程度のフレネルを示す。

粗い表面の場合、反射率は次第に鏡面反射になるが、マイクロファセットの拡散のため、100%の鏡面反射には近づかない。各マイクロファセットの法線と光のなす角はわずかに異なる。光線がより分散されるため、反射はより暗く、よりソフトに見える。

F0(0度でのフレネル反射率)

光が表面の法線に直行または垂直に当たると、その光の何割かが鏡面反射します。反射光の量は表面のIORから求めることができる。F0は、表面法線に対して0度の位置でのフレネル反射率を指し、通常パーセントか10進数の線形値で表される。

Desktop View

一般的なF0レンジ
誘電体/非導電性表面s: 0.02 - 0.05 or 2% - 5%
導体/金属: 0.5 - 1.0 or 50% - 100%

以下の式は、表面の反射率が、ある表面の屈折率によってどのように決定されるかを表している。

Desktop View

気になるのはF0反射率値である。非金属はグレースケール値を返し、金属はrgb値を返す。

非金属/ダイアレクトリック/絶縁体はグレースケールの反射率を返します。
金属/導体はRGBの反射率を返す。

誘電体間の反射率の変化はかなり小さいか、ほとんど目立ちませんが、この図のように関係なく変化は存在します。このルールを破る数少ない奇妙な素材は、反射率が高くなりがちなある種の宝石です。

Desktop View

8. 導体と絶縁体

PBRでマテリアルを作成する場合、金属と非金属の観点から考えると便利です。これは、材料をオーサリングする際に、どのガイドラインに従うべきかを決定するのに役立ちます。

このアプローチは、金属と弁証法的特性の両方で構成されるメタロイドのようなユニークなカテゴリの材料を設計する場合には機能しないかもしれません。しかし、それらはエッジケースであり、10回中9回は、標準的な金属/方言のどちらかを作成することになるでしょう。

金属の色合いは反射光に由来する。金属に拡散色をつけないこと。

金属

金属は腐食し、腐食した部分は誘電体として扱われます。

塗料を塗った金属は誘電体として扱われる。

ダイアレクトリック

ダイアレクトリックとは電気を通さない素材のこと。例えば、磁器、布、プラスチックなどがある。屈折は、散乱および/または吸収され、多くの場合、少量の光を反射し、アルベド色を持つ。

一般的な方言の反射率は、F0を基準として約2~5%です。これらの値は、0.017~0.067または40~75 sRGBの直線範囲に含まれる。

宝石とメタロイドを除いて、ほとんどの方言はF0反射率が4%を超えることはありません。

9. 線形空間レンダリング

線形空間レンダリングは非常に複雑なトピックです。リニアスペース・レンダリングに関するいくつかのサイトを紹介する:

Gamma and Linear Space - What they are & how they differ
Linear Rendering - Linear Or Gamma Workflow
Linear Lighting
Linear, gamma and sRGB color spaces

以下の拡張子は通常ガンマ符号化されます:

以下は通常リニアです:

10. PBRの主な特徴

まとめると、PBRの主な特徴は以下の通りである:

  1. すべてがピカピカ。
  2. すべてにフレネルがある。BRDFはシェーダーが扱う。
  3. F0反射率の値は、弁証法では2~5%、金属では70~100%に収まります。
  4. 天候エフェクトは、その下の生の金属を露出させます。ほこり、さび、汚れは弁証法として扱われます。
  5. 省エネ。反射光線は入射値より決して明るくない。
  6. 金属には拡散色がない。反射率値には色合いがある。
  7. スペキュラリティの強さは、BRDF、粗さまたは光沢、およびF0反射率値によって制御されます。
  8. 照明計算は線形空間で計算されます。
  9. ベースカラー、ディフューズ、スペキュラ、エミッシブマップは通常ガンマエンコードされているため、必要に応じてタグ付けする必要があります。
  10. ラフネス、光沢、メタリック、高さ、AO、変位はリニアとしてタグ付けされるべきである。