SlideShare a Scribd company logo
1 of 14
Download to read offline
総合PBRガイド by Allegorithmic - Vol.1
光と物質:物理ベースレンダリングとシェーディングの理論C
カバー:Gaëtan Lassagne , 著者:Wes McDermott
vol. 1 - 物理ベースレンダリングとシェーディングの理論Page 1
目次
•  光線 - 2
•  吸収と散乱(透明度と透過度) - 3
•  拡散反射と鏡面反射 - 4
•  マイクロファセット理論 - 5
•  色 - 6
•  BRDF(双方向反射率分布関数) - 6
•  エネルギー保存 - 7
•  フレネル効果 - 7
•  F0(0度におけるフレネル反射率) - 8
•  導体と絶縁体(金属および非金属) - 9
•  金属 - 9
•  非金属 - 10
•  リニアスペースレンダリング - 11
•  キーとなる要素 - 11
•  参考資料 - 12
技術編集:Cyrille DamezおよびNicolas Wirrmann
vol. 1 - 物理ベースレンダリングとシェーディングの理論	
 Page 2
光と物質
物理ベースレンダリングとシェーディングの理論
光とは、それが波と粒子の両方の特性を示しえることからもわかるように、複雑な現象である。その結果、様々なモデルが光の
挙動を記述するために作成されてきた。テクスチャアーティストとして、私達はライトレイ(光線)モデルを光と物質の相互作用を
記述するモデルとして興味を持っている。私達の仕事は、モノの表面を描写するテクスチャを作成することだ。従って、光線が
どのように表面物質と相互作用を行うかを理解することが重要になる。私達が作るテクスチャやマテリアルは、仮想世界内の
光と相互作用するので、私達が光の振る舞い方を理解すればするほど、私達が作るテクスチャの見た目もさらによくなることだ
ろう。
	
本ガイドでは、物理ベースレンダリング(PBR)モデルがその基礎を置いている物理学の元になる理論を説明する。まずは光線
からはじめ、PBRのキーとなる要素を定義していく。	
光線(Light Rays)
ライトレイ(光線)モデルによれば、空気のような均質かつ透
明な媒体中において光線はまっすぐな軌跡を描く。また同様
にライトレイモデルによれば、不透明な物体などの表面に当
たる時や、空気から水のような異なる媒質を通過する時に、
光線は予測可能な振る舞いをする。その結果として、ある光
線が描く経路を視覚化することが可能になり、その出発点か
ら、それが最終的に熱などの別のエネルギー形態に変化す
る場所まで辿ることができる。
図01に示すように、あるサーフェイスに当たる光線は入射光
と呼ばれ、その当たる角度は入射角と呼ばれる。
光線が入射するのは、2つの媒体間に存在する平らな境界面
である。
光線がある表面に当たると、以下のいずれか、もしくは多く
の場合、その両方が発生する:
1.光線が表面で反射し、異なる方向へと飛んでいく。これは
反射の法則に従うが、その法則によれば、反射角は(反射し
た光の)入射角に等しい。
2.光線は、まっすぐな線(屈折光)を描きながら、一方の媒
体からもう一方の媒体へと通り抜ける。
この時点で、私達は光線が2つの方向に分割すると言ってい
ることになる。すなわち反射と屈折とにである。表面において
反射、もしくは屈折した光線は、最終的にはいずれかの媒体
によって吸収されることになる。しかし吸収が発生するのは
表面ではない。	
図01
vol. 1 - 物理ベースレンダリングとシェーディングの理論	
Page 3
不均質な媒体または半透明素材を通過する際、光は吸収さ
れたり散乱される:
1.吸収に関しては、光の強度はそれがエネルギーの他の
形態(多くの場合は熱)に変化したぶんに応じて減衰し、光
の色はその波長に応じて吸収された光量だけ変化するが、
光線の方向は変化しない。
2.散乱に関しては、光線方向はランダムに変化するが、変
移の程度は材質に応じる。散乱は光の方向をランダム化す
るが、その強度は変わらない。「耳」が良い例である。「耳」
は薄い(すなわち、吸収が低い)ので、散乱光が耳の後ろか
ら貫通する様を見ることができる。もし拡散がなく吸収も低
い場合には、光線はガラスのように、その表面をダイレクト
に通過することができる。例えば、今、プールを泳いでいると
しよう。
そのプールが上手い具合にとても綺麗だとしたら、目を開い
て、綺麗な水越しにかなりの距離をはっきりと見ることができ
るだろう。しかしながら、同じプールがしばらくの間掃除がさ
れていなかったために水が汚くなっている状態を想像してみ
よう。汚れの粒子が光を散乱し、その結果として水の透明度
は著しく下がるだろう。
このような媒体/マテリアルの中を光がさらに通過すればす
るほど、光はより吸収、および(もしくは)より散乱されること
になる。従って、オブジェクトの厚さは、光がどれほど吸収ま
たは散乱されるかその程度に対し大きな役割を果たす。図
02に示すように、厚さマップ(Thickness map)は、シェーダに
対し物体の厚さを表現するために使用される。
吸収と散乱(透明度と透過度)
図02
拡散反射と鏡面反射
鏡面反射(Specular Reflection)とは、すでに光線のセクショ
ンで述べたように、表面(サーフェイス)で反射された光をさす。
光線は、表面で反射し、異なる方向へと進んでいく。これは反
射の法則に従うが、その法則によれば完全に平坦な表面上
においては、反射角は入射角と等しい。しかし大抵の表面は
不規則なので、その結果として反射の方向も表面の粗さ
(Roughness)に応じてランダムに変化してしまうことに留意し
ておこう。これは光の方向を変化させるが、光強度は一定の
ままである。	
表面が粗くなればなるほど、ハイライトはより大きく、より不
鮮明になる。表面がなめらかになればなるほど、鏡面反射
のフォーカスは締まり、適切な角度から見ればより明るく見
えたり、より強く見える。	
しかしながら図03に示すように、この両者のケースで反射さ
れる光の総量はまったく同じである。
拡散反射は、屈折された光である。光線は、ある媒体からも
うひとつの媒体へと通り抜けると同時に、その物体の内部で
複数回に渡って散乱される。
物体の厚さは、光がいかに吸収、また
は散乱されるかに対し、大きな役割を
果たしている
vol. 1 - 物理ベースレンダリングとシェーディングの理論	
 Page 4
そして図04に示すように、光線は、最初にそれが通過した
のとおおよそ同じ場所から元の媒質に向かい引き返すかの
ように、再度その物体の外側へと屈折する。
ディフューズマテリアル(拡散材質)は極めて吸収性が高い
ので、屈折した光が十分長い時間、マテリアル中を進行す
ると、完全に吸収されてしまう可能性がある。従ってそのマ
テリアルから戻って来る光は、入射位置からさほどの距離を
進行していないものと想定してよいだろう。	
これが光の入射位置と出射位置の間の距離を無視できる
理由だ。従来のシェーディングシーンにおいて拡散反射とし
て通常に使われてきたランバートモデルでは表面の荒さは
考慮に入れないが、Oren-Nayarモデルのようにそれらを考
慮にいれる拡散反射モデルも存在する。
高い散乱性を持ちながら低い吸収性の両方を有するマテリ
アルは、しばしば「関与媒質」または「半透明マテリアル」と呼
ばれている。これらの例は、煙、牛乳、皮膚、ヒスイや大理石
である。後者3つのレンダリングをする際には、付加的モデル
としてサブサーフェススキャッタリング(SSS/表面下散乱)を
使ってもよい。SSSを使うことで、光線の入射位置と出射位置
の間の距離は無視されることはない。煙や霧のような、高い
変動性と極めて低い散乱性および吸収性をもつ媒質を正確
にレンダリングするには、モンテカルロ・シミュレーションのよ
うな、さらに高コストな方法が必要な場合もある。
図03
図04
表面が粗くなればなるほど、
ハイライトはより大きく、
より不鮮明になる
vol. 1 - 物理ベースレンダリングとシェーディングの理論	
Page 5
理論的には、拡散反射と鏡面反射
の両方は、光線が交差する表面の
凹凸に依存する。しかし実際には、
マテリアル内部で散乱が発生する
ため、拡散反射に対するラフネスの
効果はより見えにくくなる。その結
果として、光線の出射方向は、表面
のラフネスおよびその入射方向と
はほぼ独立している。最も一般的
に使われる拡散反射モデル(ラン
バート)では、それを完全に無視す
る。
本書においては、これらの「表面の
凹凸さ」を「表面のラフネス」と呼ん
でいる。実際、それは以下のように
いくつかの名称で呼ばれている。
例えば、roughness(荒さ)、
smoothness(滑らかさ)、
glossiness(光沢度)や
マイクロサーフェイスなどだ。
これらは使用されるPBRワークフローに応じて変わるが、それ
らはすべて表面の同じ状態を指している。すなわちテクセル
以下のジオメトリの詳細な状態である。	
これらの表面の凹凸さは、使用しているワークフローに応じて、
roughnessマップもしくはglossinessマップで作成される。物理
ベースのBRDF(双方向反射率分布関数)はマイクロファセット
(微小面)理論に基づいているが、その理論では、ある表面
(サーフェイス)は、マイクロファセットと呼ばれる様々な方向を
向く、それ自体は平坦な極小面で構成されていると想定する。
図05に示すように、これらの極小面は各々その法線に基づい
て、単一方向​​に光を反射する。
光の向きと視線の向きのちょうど中間の方向にその面法線を
持つマイクロファセットは目視できる光を反射する。
しかしマイクロファセットの法線とハーフベクターが等しい、
全てのマイクロファセットが貢献するわけではなく、図05に
示されるように、あるものは(光方向からの)シャドーイング
によって遮断され、またあるものは(視線方向からの)マス
キングによって遮断されてしまう。
顕微鏡レベルの表面の凹凸さが光の拡散の原因になる
のである。例えば、ぼやけた反射は光線の散乱によるも
のである。図06に示すように、光線が平行に反射されてい
ないので、鏡面反射がぼやけているように私達は知覚して
しまうのである。
マイクロファセット理論(Microfacet Theory)
図05
図06
顕微鏡レベルの表面の凹凸さが
光の拡散の原因になる
vol. 1 - 物理ベースレンダリングとシェーディングの理論	
 Page 6
色
あるサーフェスの色(すなわ
ち、私達が見ている色)は、
光源から発せられた波長の
いずれかがその物体によっ
て吸収され、それ以外の波長
が鏡面および拡散の両方で
反射されることによって生じ
る。残っている反射された波
長が私達が色として見るもの
である。
例えば、リンゴの皮は、主に
赤色光を反​​射する。図07で
示すように、後方散乱した赤
の波長だけがリンゴの皮の
外へ飛び出していき、それ以
外の波長は吸収されてしまう。
またリンゴの皮は、光源と同じ色の明るい鏡面ハイライトを持
つ。それはリンゴの皮のような電気的に導体ではない(絶縁
体)マテリアルでは、鏡面反射は波長に対してほぼ独立的だ
からである。従って、そのようなマテリアルに対しては、鏡面反
射は決して着色されることはない。金属および絶縁体のような、
違ったタイプのマテリアルについては、後の章でもっと詳しく触
れる。
図07
BRDF(双方向反射率分布関数)
双方向反射率分布関数(BRDF)とは、簡単に言ってしまえ
ばあるサーフェイスの持つ反射特性を記述する関数のこと
だ。コンピュータグラフィックスの世界では、その他にも
BRDFがいくつか存在するが、中には物理的に正しくないも
のもある。あるBRDFが物理的に正しいためには、エネル
ギー保存と相反性(reciprocity)がなければならない。相反
性に関して、ヘルムホルツの相反性定理について触れてお
くと、その定理によれば光線の入射方向と出射方向を入れ
替えても、BRDFの値に影響を与えることはなく、互いの反
転とみなすことができる。	
SubstanceのPBRシェーダーが使用しているBRDFは、ディズ
ニーによる「原理に則った」反射モデルに基づいており、その
モデルはGGXマイクロファセット分布に基づいている。GGXは、
スペキュラ分布においてより短いピークのハイライトとよりロン
グテールなフォールオフという、図08で示されるように、よりリ
アリスティックな見た目を持つベターなソリューションを提供す
る。
図08
GGXのオブジェクト
は、スペキュラ分布の
点からみて、より優れ
たソリューションを提
供する
Substance PBRシェーダは、
GGXマイクロファセット分布を
使用する
vol. 1 - 物理ベースレンダリングとシェーディングの理論	
Page 7
エネルギー保存
エネルギー保存は、物理ベースのレンダリングソリューションにおいて重要な役割を果たすものである。エネルギー保存の法
則によれば、あるサーフェイスから(反射および後方散乱によって)再放出される光の総量は、それが受けた光の総量以下に
なる。言い換えれば、サーフェイスによって反射される光が、その直前にサーフェイスが受けた光よりも強いことはあり得ないと
いうことである。アーティストとして、私達はエネルギー保存の法則をコントロールする必要はない。これはPBRの実に素晴らし
い点のひとつで、PBRではシェーダーが常にエネルギーが保存されるように制約をかけているのである。これが物理ベースモ
デルの一部として含まれているおかげで、私達は物理的な理論ではなく、よりアート的な作業へと集中することができる。
フレネル効果
フレネル反射率もBRDFの係数として物理ベースのシェーディ
ングに重要な役割を果たしている。フランスの物理学者オー
ギュスタン・ジャン・フレネルによって観測されたフレネル効果
によれば、あるサーフェイスから反射されることで見ることが
できる光の総量は、それを知覚できる視野角に依存している。
例として、水のプールを考えてみよう。水面に対し垂直に、
まっすぐに見下ろした場合、水の底まで見ることができるだろ
う。このように水面を見ることを「0度」または「垂直入射」とい
い、この時垂線は面法線と一致する。次に、見通すようにし
て水面に対しより平行になるように水のプールを眺めてみる
と、水面に発生する鏡面反射が段々と強くなっていき、仕舞
いには水面から下がまったく見えなくなってしまうことがわか
るだろう。	
フレネルは、私達が伝統的なシェーディングにおいて行ってき
たように、PBR中で調整できるようなものではない。繰り返す
が、この現象は私達がPBRシェーダーで処理する物理現象と
はまた違ったものである。あるサーフェイスを見通すように眺
める時、平滑なサーフェイスならどんなものでも、入射角90度
でほぼ100%の反射になる。
粗いサーフェスの場合、反射率はどんどん鏡面へと近づいて
いくが、100%の鏡面反射に達することはない。その場合重
要なのは、各々のマイクロファセットの法線が光となす角度で
あって、マクロとしてのサーフェイスの法線が光となす角度で
はない。光線が様々な方向に分散されるために、反射がより
柔らかくなったり、よりおぼろげになることもある。巨視的なレ
ベルであなたに見えているものは、個々のマイクロファセット
に発生する全てのフレネル効果の平均のようなものなのだ。
図09
粗いサーフェスの場合、反射率はどんどん鏡面へと近づいていくが、
100%の鏡面反射に達することはない
vol. 1 - 物理ベースレンダリングとシェーディングの理論	
 Page 8
F0(0度でのフレネル反射率)
あるサーフェスに光がまっすぐまたは垂直(0度の角度)に当
たった時に、ある一定の割合の光が鏡面のように反射して
戻ってくる。あるサーフェイスの屈折率(IOR)を使用すること
で、反射して戻される量を導出することができるが、これは図
09で示されているように、F0(フレネル0)と呼ばれている。
サーフェス内部へと屈折する光の量は、1-F0と呼ばれる。
PBRの観点および反射率の芸術的解釈か
ら、図09に示すように、一般的に滑らかな
不導体のサーフェイスについては、F0では
光の2%〜5%を反射し、見通し角では
100%反射するといえる。
不導体(非金属)の反射率の値は、現実にはさほど劇的に
は変化しない。事実、ラフネスが変わってしまえば、値の実
際の変化はさらにわかりにくくなる。しかしながら、値の違い
は存在する。図11に、金属および非金属マテリアルの両方
のF0の範囲を示す。
非金属の場合、その値の範囲がお互いに大幅に異なってしま
うようなことがないように注意すること。	
宝石は例外で、より高い値を持つ。少し後で、導体と絶縁体に
関連しさらにF0に関して説明する。
図10
図11
F0の範囲は、一般的な不導体の場合、
0.02〜0.05ぐらいで、導体の場合、0.5〜
1.0になる。従ってあるサーフェイスの反
射率は、図10に示すようにセバスチャン・
ラガルドが「物理ベースのシェーディング
モデルのフィード」としてブログポストした
方程式に従って屈折率から決定される。	
私達がテクスチャオーサリングをする観
点から関心を寄せるのは、このF0の反射
率の値である。非金属(不導体/絶縁体)
の場合にはグレースケール値を持ち、金
属(導体)の場合には、RGB値を持ってい
る。
vol. 1 - 物理ベースレンダリングとシェーディングの理論	
Page 9
そして私達は物理ベースモデル内で作業しているので、マッ
プで使用する金属反射率のために、実世界の測定値を使う
必要がある。	
テクスチャリングの観点から金属に関してもうひとつ重要な点
をあげるならば、金属は腐食ができることである。これはウェ
ザリング的要素が金属の反射状態に対し、大きな役割を果た
すことを意味する。例えば、金属の錆の場合なら、これは金属
の反射状態を変化させ、図13に示すように、腐食した領域は
やがて不導体マテリアルとして扱われることになる。
私は、あるマテリアルが金属かそうでないか、いつも自分に問
いかけてみると前に述べた。しかしより正確にいえば、その問
いかけをする際に、金属の状態、つまりそれは塗装されてい
るのか、錆びているのか、汚れやグリースで覆われているの
かについても、同じように問いかけられなくてはならない。マテ
リアルは生の金属でないならば不導体として扱われることに
なるだろうが、ウェザリングの状態によっては金属と非金属の
混ざった状態としても存在しうる。
導体と絶縁体(金属と非金属)
PBR向けのマテリアルを作成するとき、金属か非金属かという観点で考えると大変分かりやすくなる。それもごくシンプルにサー
フェスが金属かそうでないかを自問自答するだけだ。もしそうであれば、私はワンセットとなっているガイドラインに従うまでだし、
そうでない場合には、もうひとつのガイドラインに従うまでである。これはかなり割り切ったアプローチであるので、半金属のよう
に、マテリアルによってはこれらのカテゴリに分類されない可能性があるが、マテリアルの作成プロセス全体においてまず金属
と非金属を区別し、半金属を例外とするのは、とてもよいアプローチである。マテリアルのためのガイドラインを設定するには、
まず私達が作成しようとしているものについて理解しなければならない。PBRを使うことで、このガイドラインのセットから導き出
される、金属(導体)と非金属(絶縁体)のプロパティを見ることができる。
屈折した光は吸収され、金属の色合いは反射光に由来する。
したがってマップ中では、金属に拡散色を使わない
金属
金属(導体)は、熱と電気の良導体である。簡単に言えば、
導電性金属の電界はゼロであり、電界と磁界からなる入射
光の波がサーフェイスに当たると、それは部分的に反射され、
全ての屈折光が吸収される。	
研磨された金属の反射率の値は、
図12に示すように、反射約70〜
100%の範囲で高くなるであろう。
いくつかの金属は、異なる波長の
光を吸収する。例えば、金の場合、
可視スペクトルの高周波端に位置
する青色光を吸収するので、結果
として、黄色に見える。しかしながら、
屈折した光は吸収されてしまい、ま
た金属の色合いは、反射光から来
る。従って、使用するマップ内、
我々は、金属に拡散色を与えてい
ない。例えば、鏡面/光沢ワークフ
ローでは、生のままの金属の拡散
マップは黒に設定されており、反射
率値は鏡面反射マップにおいて彩
色されたカラー値となっている。金
属では反射率の値はRGBとなり、
色が付いている。
同様に塗装された金属は、金属というよりは、むしろ不導体
のように扱われる。塗料は、生の金属の上のレイヤーとして
機能する。塗料が欠けてはがれた部分から露出した生の金
属のみが、金属として扱われる。金属についた汚れの他、生
の金属を覆い隠すものならなんでも同じことが言える。
図12
ウェザリング要素は、金属の反射状態
に大きな役割を演じる
vol. 1 - 物理ベースレンダリングとシェーディングの理論	
 Page 10
非金属
非金属(不導体/絶縁体)は、電気の伝
導性に劣る。屈折した光は、散乱され/
もしくは吸収され(そしてしばしばサー
フェイスから再放出される)そして金属
よりも遙かにすくない量の光を反射し、
アルベドカラーを有することもある。先
に、屈折率(IOR)から計算される一般
的な不導体の値は、F0基準で2〜5%
であると述べた。図14に示すように、こ
れらの値は、0.017〜0.067(sRGBで
40〜75)のリニアレンジ内に含まれる。
宝石を除けば、ほとんどの不導体は、
4%を超えることはまずない。
金属の場合とまったく同じように、現実世界における測定値
を使う必要があるが、透明ではないその他のマテリアルのた
めのIORを探し出すことはかなり難しいかもしれない。しかし、
大方の一般的な不導体マテリアル間の値は急激に変化しな
いので、反射率に従うようにいくつかガイドラインを利用する
ことができる。これに関しては第2巻でカバーする予定である。
図13
図14
屈折率(IOR)から計算される一般的な
不導体の値は、F0基準で2∼5%である
vol. 1 - 物理ベースレンダリングとシェーディングの理論	
Page 11
線形空間レンダリング
線形空間レンダリングは、それだけでひとつのアーティクルとなりえる。従って、ここで詳細に説明することはしないつもりだ。そ
れでも、計算が行われるのが線形空間内であることは、最低限理解しておこう。	
	
簡単に言えば、線形空間レンダリングとはライティング計算において正しい計算法を提供するものだ。それが作り出した環境下
では、光は現実世界での光と同じように振る舞うことが可能となる。線形空間内では、ガンマは1.0である。しかし、これが私た
ちの目に正しく見えるようにするには、線形のガンマがシフトする必要がある。ガンマエンコード済み空間(sRGB)は、コンピュー
タ画面に表示される画像を補正する。画像の値は、表示向けに調整される。	
	
カラー値を計算したり、色の操作を行う場合には、全ての計算は、線形空間内で行われるべきである。それを理解するための
単純な例として、ある画像がレンダー内ではベースカラーやディフューズとして表示される表示される場合をみてみよう。その場
合、これらのマップはsRGBとして設定される必要がある。Substance内では、その画像がsRGBにタグ付けされていたとしても、
それは計算のために一度線形に変換され、さらに表示するためにsRGBに再設定されるということが行われる。しかし、ラフネス
やメタリックのようなテクスチャに、純粋にサーフェイスの特性を純粋に表す数学的な値を格納する場合には、これらのマップは
線形として設定されなければならない。	
	
Substnceは、レンダリングされたビューポートに計算結果を表示する際にガンマ補正を行うのと同じように、入力情報に対して
も自動で線形およびsRGBスペース間の変換を処理する。アーティストは、Substanceパイプラインで内部的に行われている線
形空間計算や変換を気にする必要はない。Substanceをインテグレートされたプラグイン経由でSubstanceマテリアルを使用す
る場合には、線形空間への変換も自動的に処理される。	
	
しかしながら、そのプロセスを理解しておくことは重要なことで、Substanceマップをビットマップ形式でエクスポートして、
Substanceマテリアルではなくして使うような場合では、自分が使っているレンダラーに合わせて手動で変換を実行する必要が
あるかもしれない。ベースカラーやディフューズマップはsRGBで、その他のマップは線形であることは知っておく必要がある。
キーとなる要素
さて、私達は物理の背後にある基本的な理論を見てきたが、ここでPBRのためにいくつか重要なキー要素を抜き
出しておこう。
1.エネルギー保存。反射した光線は必ず、最初にサーフェスに当たった時に持っていた明るさよりも
暗くなる。エネルギー保存は、シェーダーが処理する。	
2.フレネル。BRDFは、シェーダーが処理する。F0での反射率の値は、最も一般的な不導体の場合、
最小限の変化しかせず、2%〜5%の範囲内になる。一方、金属のF0は、70〜100%という高い値とな
る。	
3.鏡面反射の強度は、BRDF、ラフネス(roughness)やグロッシネス(glossiness)マップ、F0での反射
率の値(IOR)を介して制御される。	
4.ライティング計算は線形空間内で計算される。ベースカラーやディフューズのようなガンマエンコー
ドされた値を持つマップは全て、通常はシェーダーによって線形に変換される。それであっても自分が
使うゲームエンジンやレンダラーに画像をインポートする際には、適切なオプションをチェックして、そ
の変換が適切に行われているか確認したほうがよい。ラフネス、グロッシネス、メタリック、ハイトマップ
のような、サーフェイスの特性を記述するマップは、線形として解釈されるように設定されなければな
らない。
	
Substanceをインテグレートされたプラグイン経由で
Substanceマテリアルを使用する場合には、
線形空間への変換も自動的に処理される
vol. 1 - 物理ベースレンダリングとシェーディングの理論 Page 12
参考資料
1.  Physically-Based Shading at Disney Brent Burley, Walt Disney Animation Studios. https://
disney-animation.s3.amazonaws.com/library/s2012_pbs_disney_brdf_notes_v2.pdf
2.  Microfacet Models for Refraction through Rough Surfaces
http://www.cs.cornell.edu/~srm/publications/EGSR07-btdf.pdf
3.  Feeding a Physically-Based Shading Model by Sebastien Lagarde
http://seblagarde.wordpress.com/2011/08/17/feeding-a-physical-based-lighting-mode/
4.  An Introduction to BRDF Models by Daniël Jimenez Kwast
http://hmi.ewi.utwente.nl/verslagen/capita-selecta/CS-Jimenez-Kwast-Daniel.pdf
Allegorithmicは、3Dテクスチャリングソフトウェアの新世代を開発している:Substance Painter、Substance
DesignerとBitmap2Material。これらのツールを使用して、ほとんどのAAAゲームスタジオでは、Substanceは、次
世代のPBR(物理ベースレンダリング)のアセットを作成するためのスタンダードとなっている。
Substanceの詳細については、当社のウェブサイトをご覧ください。
www.allegorithmic.com
日本語訳:Nobuyuki Kobayashi
Twitter @nyaa_toraneko
2015/01/12
本ドキュメントは、Allegorithmic社が公開している
『THE COMPREHENSIVE PBR GUIDE
 Volume 1: The Theory of PBR』
を私家訳したものです。
全ての著作物の権利は、Allegorithmic社にあります。
オリジナル版は、
http://www.allegorithmic.com/pbr-guide
よりダウンロードできます。

More Related Content

What's hot

最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips
最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips
最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips小林 信行
 
Unity道場 14 Shader Forge 102 ~ShaderForgeをつかって学ぶシェーダー入門~ カスタムライティング/トゥーンシェーダー編
Unity道場 14 Shader Forge 102 ~ShaderForgeをつかって学ぶシェーダー入門~ カスタムライティング/トゥーンシェーダー編Unity道場 14 Shader Forge 102 ~ShaderForgeをつかって学ぶシェーダー入門~ カスタムライティング/トゥーンシェーダー編
Unity道場 14 Shader Forge 102 ~ShaderForgeをつかって学ぶシェーダー入門~ カスタムライティング/トゥーンシェーダー編小林 信行
 
UE4のレイトレで出来ること/出来ないこと
UE4のレイトレで出来ること/出来ないことUE4のレイトレで出来ること/出来ないこと
UE4のレイトレで出来ること/出来ないことSatoshi Kodaira
 
Houdiniで作るNPRエフェクト&After Effectsでのコンポジット実践解説オンラインセミナー登壇資料
Houdiniで作るNPRエフェクト&After Effectsでのコンポジット実践解説オンラインセミナー登壇資料Houdiniで作るNPRエフェクト&After Effectsでのコンポジット実践解説オンラインセミナー登壇資料
Houdiniで作るNPRエフェクト&After Effectsでのコンポジット実践解説オンラインセミナー登壇資料KLab Inc. Creative
 
UE4でTranslucencyやUnlitに影を落としたい!
UE4でTranslucencyやUnlitに影を落としたい!UE4でTranslucencyやUnlitに影を落としたい!
UE4でTranslucencyやUnlitに影を落としたい!com044
 
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る! | UNREAL FEST EXTREME 2020 WINTER
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る!  | UNREAL FEST EXTREME 2020 WINTERUE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る!  | UNREAL FEST EXTREME 2020 WINTER
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る! | UNREAL FEST EXTREME 2020 WINTERエピック・ゲームズ・ジャパン Epic Games Japan
 
ゲームエンジンの文法【UE4】No.006 3次元座標(直交座標系) ,UE4の単位,アウトライナ,レイヤー
ゲームエンジンの文法【UE4】No.006 3次元座標(直交座標系) ,UE4の単位,アウトライナ,レイヤーゲームエンジンの文法【UE4】No.006 3次元座標(直交座標系) ,UE4の単位,アウトライナ,レイヤー
ゲームエンジンの文法【UE4】No.006 3次元座標(直交座標系) ,UE4の単位,アウトライナ,レイヤーTatsuya Iwama
 
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~エピック・ゲームズ・ジャパン Epic Games Japan
 
【Unite Tokyo 2018】トゥーンシェーダートークセッション#1『リアルタイムトゥーンシェーダー徹底トーク』
【Unite Tokyo 2018】トゥーンシェーダートークセッション#1『リアルタイムトゥーンシェーダー徹底トーク』【Unite Tokyo 2018】トゥーンシェーダートークセッション#1『リアルタイムトゥーンシェーダー徹底トーク』
【Unite Tokyo 2018】トゥーンシェーダートークセッション#1『リアルタイムトゥーンシェーダー徹底トーク』Unity Technologies Japan K.K.
 
Unity道場京都スペシャル トゥーンシェーディングとノンフォトリアリスティック風絵づくり入門_
 Unity道場京都スペシャル トゥーンシェーディングとノンフォトリアリスティック風絵づくり入門_ Unity道場京都スペシャル トゥーンシェーディングとノンフォトリアリスティック風絵づくり入門_
Unity道場京都スペシャル トゥーンシェーディングとノンフォトリアリスティック風絵づくり入門_Unity Technologies Japan K.K.
 
【Unity】より良い表現のためのライティング戦略
【Unity】より良い表現のためのライティング戦略【Unity】より良い表現のためのライティング戦略
【Unity】より良い表現のためのライティング戦略Takayasu Beharu
 
NPRキャラクターレンダリング総結集!今こそ更なる高みを目指して | UNREAL FEST EXTREME 2020 WINTER
NPRキャラクターレンダリング総結集!今こそ更なる高みを目指して | UNREAL FEST EXTREME 2020 WINTERNPRキャラクターレンダリング総結集!今こそ更なる高みを目指して | UNREAL FEST EXTREME 2020 WINTER
NPRキャラクターレンダリング総結集!今こそ更なる高みを目指して | UNREAL FEST EXTREME 2020 WINTERエピック・ゲームズ・ジャパン Epic Games Japan
 
BRDF レンダリングの方程式
BRDF レンダリングの方程式BRDF レンダリングの方程式
BRDF レンダリングの方程式康弘 等々力
 

What's hot (20)

最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips
最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips
最新Mayaを使ったUnity 5向けキャラクターセットアップセミナー&使いこなしTips
 
Unity道場 14 Shader Forge 102 ~ShaderForgeをつかって学ぶシェーダー入門~ カスタムライティング/トゥーンシェーダー編
Unity道場 14 Shader Forge 102 ~ShaderForgeをつかって学ぶシェーダー入門~ カスタムライティング/トゥーンシェーダー編Unity道場 14 Shader Forge 102 ~ShaderForgeをつかって学ぶシェーダー入門~ カスタムライティング/トゥーンシェーダー編
Unity道場 14 Shader Forge 102 ~ShaderForgeをつかって学ぶシェーダー入門~ カスタムライティング/トゥーンシェーダー編
 
建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)
建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)
建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)
 
UE4のレイトレで出来ること/出来ないこと
UE4のレイトレで出来ること/出来ないことUE4のレイトレで出来ること/出来ないこと
UE4のレイトレで出来ること/出来ないこと
 
Houdiniで作るNPRエフェクト&After Effectsでのコンポジット実践解説オンラインセミナー登壇資料
Houdiniで作るNPRエフェクト&After Effectsでのコンポジット実践解説オンラインセミナー登壇資料Houdiniで作るNPRエフェクト&After Effectsでのコンポジット実践解説オンラインセミナー登壇資料
Houdiniで作るNPRエフェクト&After Effectsでのコンポジット実践解説オンラインセミナー登壇資料
 
UE4でTranslucencyやUnlitに影を落としたい!
UE4でTranslucencyやUnlitに影を落としたい!UE4でTranslucencyやUnlitに影を落としたい!
UE4でTranslucencyやUnlitに影を落としたい!
 
Lightmassの仕組み ~Lightmap編~ (Epic Games Japan: 篠山範明)
Lightmassの仕組み ~Lightmap編~ (Epic Games Japan: 篠山範明)Lightmassの仕組み ~Lightmap編~ (Epic Games Japan: 篠山範明)
Lightmassの仕組み ~Lightmap編~ (Epic Games Japan: 篠山範明)
 
CEDEC2016: Unreal Engine 4 のレンダリングフロー総おさらい
CEDEC2016: Unreal Engine 4 のレンダリングフロー総おさらいCEDEC2016: Unreal Engine 4 のレンダリングフロー総おさらい
CEDEC2016: Unreal Engine 4 のレンダリングフロー総おさらい
 
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る! | UNREAL FEST EXTREME 2020 WINTER
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る!  | UNREAL FEST EXTREME 2020 WINTERUE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る!  | UNREAL FEST EXTREME 2020 WINTER
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る! | UNREAL FEST EXTREME 2020 WINTER
 
ゲームエンジンの文法【UE4】No.006 3次元座標(直交座標系) ,UE4の単位,アウトライナ,レイヤー
ゲームエンジンの文法【UE4】No.006 3次元座標(直交座標系) ,UE4の単位,アウトライナ,レイヤーゲームエンジンの文法【UE4】No.006 3次元座標(直交座標系) ,UE4の単位,アウトライナ,レイヤー
ゲームエンジンの文法【UE4】No.006 3次元座標(直交座標系) ,UE4の単位,アウトライナ,レイヤー
 
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
 
大規模タイトルにおけるエフェクトマテリアル運用 (SQEX大阪: 林武尊様) #UE4DD
大規模タイトルにおけるエフェクトマテリアル運用 (SQEX大阪: 林武尊様) #UE4DD大規模タイトルにおけるエフェクトマテリアル運用 (SQEX大阪: 林武尊様) #UE4DD
大規模タイトルにおけるエフェクトマテリアル運用 (SQEX大阪: 林武尊様) #UE4DD
 
【Unite Tokyo 2018】トゥーンシェーダートークセッション#1『リアルタイムトゥーンシェーダー徹底トーク』
【Unite Tokyo 2018】トゥーンシェーダートークセッション#1『リアルタイムトゥーンシェーダー徹底トーク』【Unite Tokyo 2018】トゥーンシェーダートークセッション#1『リアルタイムトゥーンシェーダー徹底トーク』
【Unite Tokyo 2018】トゥーンシェーダートークセッション#1『リアルタイムトゥーンシェーダー徹底トーク』
 
Unity道場京都スペシャル トゥーンシェーディングとノンフォトリアリスティック風絵づくり入門_
 Unity道場京都スペシャル トゥーンシェーディングとノンフォトリアリスティック風絵づくり入門_ Unity道場京都スペシャル トゥーンシェーディングとノンフォトリアリスティック風絵づくり入門_
Unity道場京都スペシャル トゥーンシェーディングとノンフォトリアリスティック風絵づくり入門_
 
60fpsアクションを実現する秘訣を伝授 基礎編
60fpsアクションを実現する秘訣を伝授 基礎編60fpsアクションを実現する秘訣を伝授 基礎編
60fpsアクションを実現する秘訣を伝授 基礎編
 
Mask Material only in Early Z-passの効果と仕組み
Mask Material only in Early Z-passの効果と仕組みMask Material only in Early Z-passの効果と仕組み
Mask Material only in Early Z-passの効果と仕組み
 
【Unity】より良い表現のためのライティング戦略
【Unity】より良い表現のためのライティング戦略【Unity】より良い表現のためのライティング戦略
【Unity】より良い表現のためのライティング戦略
 
NPRキャラクターレンダリング総結集!今こそ更なる高みを目指して | UNREAL FEST EXTREME 2020 WINTER
NPRキャラクターレンダリング総結集!今こそ更なる高みを目指して | UNREAL FEST EXTREME 2020 WINTERNPRキャラクターレンダリング総結集!今こそ更なる高みを目指して | UNREAL FEST EXTREME 2020 WINTER
NPRキャラクターレンダリング総結集!今こそ更なる高みを目指して | UNREAL FEST EXTREME 2020 WINTER
 
BRDF レンダリングの方程式
BRDF レンダリングの方程式BRDF レンダリングの方程式
BRDF レンダリングの方程式
 
アンリアルエンジン4で ノンフォトリアル描画しよう!@UNREAL FEST 2015 YOKOHAMA
アンリアルエンジン4で ノンフォトリアル描画しよう!@UNREAL FEST 2015 YOKOHAMAアンリアルエンジン4で ノンフォトリアル描画しよう!@UNREAL FEST 2015 YOKOHAMA
アンリアルエンジン4で ノンフォトリアル描画しよう!@UNREAL FEST 2015 YOKOHAMA
 

More from 小林 信行

Unite2017 tokyo toonshadermaniax
Unite2017 tokyo toonshadermaniaxUnite2017 tokyo toonshadermaniax
Unite2017 tokyo toonshadermaniax小林 信行
 
Unity道場aseスペシャル補足資料
Unity道場aseスペシャル補足資料Unity道場aseスペシャル補足資料
Unity道場aseスペシャル補足資料小林 信行
 
Unity dojo amplifyshadereditor101_jpn-jp
Unity dojo amplifyshadereditor101_jpn-jpUnity dojo amplifyshadereditor101_jpn-jp
Unity dojo amplifyshadereditor101_jpn-jp小林 信行
 
ハリウッド流映画脚本講座・特別編 「ゲーム」は「キャラクター」がドライブする 〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜
ハリウッド流映画脚本講座・特別編「ゲーム」は「キャラクター」がドライブする〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜ハリウッド流映画脚本講座・特別編「ゲーム」は「キャラクター」がドライブする〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜
ハリウッド流映画脚本講座・特別編 「ゲーム」は「キャラクター」がドライブする 〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜小林 信行
 
Unity道場08 Unityとアセットツールで学ぶ 「絵づくり」の基礎 ライティング 虎の巻
Unity道場08 Unityとアセットツールで学ぶ「絵づくり」の基礎 ライティング虎の巻Unity道場08 Unityとアセットツールで学ぶ「絵づくり」の基礎 ライティング虎の巻
Unity道場08 Unityとアセットツールで学ぶ 「絵づくり」の基礎 ライティング 虎の巻小林 信行
 
Unity道場11 Shader Forge 101 ~ShaderForgeをつかって学ぶシェーダー入門~ 基本操作とよく使われるノード編
Unity道場11 Shader Forge 101 ~ShaderForgeをつかって学ぶシェーダー入門~ 基本操作とよく使われるノード編Unity道場11 Shader Forge 101 ~ShaderForgeをつかって学ぶシェーダー入門~ 基本操作とよく使われるノード編
Unity道場11 Shader Forge 101 ~ShaderForgeをつかって学ぶシェーダー入門~ 基本操作とよく使われるノード編小林 信行
 
Unity道場08「絵づくりの基礎」ライティング虎の巻
Unity道場08「絵づくりの基礎」ライティング虎の巻Unity道場08「絵づくりの基礎」ライティング虎の巻
Unity道場08「絵づくりの基礎」ライティング虎の巻小林 信行
 
Unityとアセットツールで学ぶ「絵づくり」の基礎 ライト、シェーダー、イメージエフェクト
Unityとアセットツールで学ぶ「絵づくり」の基礎 ライト、シェーダー、イメージエフェクトUnityとアセットツールで学ぶ「絵づくり」の基礎 ライト、シェーダー、イメージエフェクト
Unityとアセットツールで学ぶ「絵づくり」の基礎 ライト、シェーダー、イメージエフェクト小林 信行
 
ゲームシナリオ構成法 2015版
ゲームシナリオ構成法 2015版ゲームシナリオ構成法 2015版
ゲームシナリオ構成法 2015版小林 信行
 
Unityを使ったゲームデザイン超入門
Unityを使ったゲームデザイン超入門Unityを使ったゲームデザイン超入門
Unityを使ったゲームデザイン超入門小林 信行
 
マネタイズセミナー「経験からモデルを導く方法論」
マネタイズセミナー「経験からモデルを導く方法論」マネタイズセミナー「経験からモデルを導く方法論」
マネタイズセミナー「経験からモデルを導く方法論」小林 信行
 
ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版
ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版
ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版小林 信行
 
『天空の城ラピュタ』のエピソード構成表
『天空の城ラピュタ』のエピソード構成表『天空の城ラピュタ』のエピソード構成表
『天空の城ラピュタ』のエピソード構成表小林 信行
 
「ユニティちゃんを踊らせよう!」モーションキャプチャーデータのアニメーション演出
「ユニティちゃんを踊らせよう!」モーションキャプチャーデータのアニメーション演出「ユニティちゃんを踊らせよう!」モーションキャプチャーデータのアニメーション演出
「ユニティちゃんを踊らせよう!」モーションキャプチャーデータのアニメーション演出小林 信行
 
Making of ユニティちゃんステージデモ in ComicMarket 86
Making of ユニティちゃんステージデモ in ComicMarket 86Making of ユニティちゃんステージデモ in ComicMarket 86
Making of ユニティちゃんステージデモ in ComicMarket 86小林 信行
 
UniteJapan2013「プレイアブルプランニングのススメ」
UniteJapan2013「プレイアブルプランニングのススメ」UniteJapan2013「プレイアブルプランニングのススメ」
UniteJapan2013「プレイアブルプランニングのススメ」小林 信行
 
Maya Camera Settings to Unity
Maya Camera Settings to UnityMaya Camera Settings to Unity
Maya Camera Settings to Unity小林 信行
 
How to inspect complete scenes with Unity?
How to inspect complete scenes with Unity?How to inspect complete scenes with Unity?
How to inspect complete scenes with Unity?小林 信行
 
Mayaカメラデータunityインストール
MayaカメラデータunityインストールMayaカメラデータunityインストール
Mayaカメラデータunityインストール小林 信行
 
有限状態マシンクラスによる会話シミュレーション表情AI管理実装仕様
有限状態マシンクラスによる会話シミュレーション表情AI管理実装仕様有限状態マシンクラスによる会話シミュレーション表情AI管理実装仕様
有限状態マシンクラスによる会話シミュレーション表情AI管理実装仕様小林 信行
 

More from 小林 信行 (20)

Unite2017 tokyo toonshadermaniax
Unite2017 tokyo toonshadermaniaxUnite2017 tokyo toonshadermaniax
Unite2017 tokyo toonshadermaniax
 
Unity道場aseスペシャル補足資料
Unity道場aseスペシャル補足資料Unity道場aseスペシャル補足資料
Unity道場aseスペシャル補足資料
 
Unity dojo amplifyshadereditor101_jpn-jp
Unity dojo amplifyshadereditor101_jpn-jpUnity dojo amplifyshadereditor101_jpn-jp
Unity dojo amplifyshadereditor101_jpn-jp
 
ハリウッド流映画脚本講座・特別編 「ゲーム」は「キャラクター」がドライブする 〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜
ハリウッド流映画脚本講座・特別編「ゲーム」は「キャラクター」がドライブする〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜ハリウッド流映画脚本講座・特別編「ゲーム」は「キャラクター」がドライブする〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜
ハリウッド流映画脚本講座・特別編 「ゲーム」は「キャラクター」がドライブする 〜ヒットする、原作付きキャラクターゲームシナリオの作り方〜
 
Unity道場08 Unityとアセットツールで学ぶ 「絵づくり」の基礎 ライティング 虎の巻
Unity道場08 Unityとアセットツールで学ぶ「絵づくり」の基礎 ライティング虎の巻Unity道場08 Unityとアセットツールで学ぶ「絵づくり」の基礎 ライティング虎の巻
Unity道場08 Unityとアセットツールで学ぶ 「絵づくり」の基礎 ライティング 虎の巻
 
Unity道場11 Shader Forge 101 ~ShaderForgeをつかって学ぶシェーダー入門~ 基本操作とよく使われるノード編
Unity道場11 Shader Forge 101 ~ShaderForgeをつかって学ぶシェーダー入門~ 基本操作とよく使われるノード編Unity道場11 Shader Forge 101 ~ShaderForgeをつかって学ぶシェーダー入門~ 基本操作とよく使われるノード編
Unity道場11 Shader Forge 101 ~ShaderForgeをつかって学ぶシェーダー入門~ 基本操作とよく使われるノード編
 
Unity道場08「絵づくりの基礎」ライティング虎の巻
Unity道場08「絵づくりの基礎」ライティング虎の巻Unity道場08「絵づくりの基礎」ライティング虎の巻
Unity道場08「絵づくりの基礎」ライティング虎の巻
 
Unityとアセットツールで学ぶ「絵づくり」の基礎 ライト、シェーダー、イメージエフェクト
Unityとアセットツールで学ぶ「絵づくり」の基礎 ライト、シェーダー、イメージエフェクトUnityとアセットツールで学ぶ「絵づくり」の基礎 ライト、シェーダー、イメージエフェクト
Unityとアセットツールで学ぶ「絵づくり」の基礎 ライト、シェーダー、イメージエフェクト
 
ゲームシナリオ構成法 2015版
ゲームシナリオ構成法 2015版ゲームシナリオ構成法 2015版
ゲームシナリオ構成法 2015版
 
Unityを使ったゲームデザイン超入門
Unityを使ったゲームデザイン超入門Unityを使ったゲームデザイン超入門
Unityを使ったゲームデザイン超入門
 
マネタイズセミナー「経験からモデルを導く方法論」
マネタイズセミナー「経験からモデルを導く方法論」マネタイズセミナー「経験からモデルを導く方法論」
マネタイズセミナー「経験からモデルを導く方法論」
 
ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版
ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版
ゲームデザイナーのためのキャラクター表現&コンセプトメイキング:抜粋版
 
『天空の城ラピュタ』のエピソード構成表
『天空の城ラピュタ』のエピソード構成表『天空の城ラピュタ』のエピソード構成表
『天空の城ラピュタ』のエピソード構成表
 
「ユニティちゃんを踊らせよう!」モーションキャプチャーデータのアニメーション演出
「ユニティちゃんを踊らせよう!」モーションキャプチャーデータのアニメーション演出「ユニティちゃんを踊らせよう!」モーションキャプチャーデータのアニメーション演出
「ユニティちゃんを踊らせよう!」モーションキャプチャーデータのアニメーション演出
 
Making of ユニティちゃんステージデモ in ComicMarket 86
Making of ユニティちゃんステージデモ in ComicMarket 86Making of ユニティちゃんステージデモ in ComicMarket 86
Making of ユニティちゃんステージデモ in ComicMarket 86
 
UniteJapan2013「プレイアブルプランニングのススメ」
UniteJapan2013「プレイアブルプランニングのススメ」UniteJapan2013「プレイアブルプランニングのススメ」
UniteJapan2013「プレイアブルプランニングのススメ」
 
Maya Camera Settings to Unity
Maya Camera Settings to UnityMaya Camera Settings to Unity
Maya Camera Settings to Unity
 
How to inspect complete scenes with Unity?
How to inspect complete scenes with Unity?How to inspect complete scenes with Unity?
How to inspect complete scenes with Unity?
 
Mayaカメラデータunityインストール
MayaカメラデータunityインストールMayaカメラデータunityインストール
Mayaカメラデータunityインストール
 
有限状態マシンクラスによる会話シミュレーション表情AI管理実装仕様
有限状態マシンクラスによる会話シミュレーション表情AI管理実装仕様有限状態マシンクラスによる会話シミュレーション表情AI管理実装仕様
有限状態マシンクラスによる会話シミュレーション表情AI管理実装仕様
 

Recently uploaded

スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 

Recently uploaded (7)

スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 

『THE COMPREHENSIVE PBR GUIDE Volume 1: The Theory of PBR by Allegorithmic』私家訳版

  • 1. 総合PBRガイド by Allegorithmic - Vol.1 光と物質:物理ベースレンダリングとシェーディングの理論C カバー:Gaëtan Lassagne , 著者:Wes McDermott
  • 2. vol. 1 - 物理ベースレンダリングとシェーディングの理論Page 1 目次 •  光線 - 2 •  吸収と散乱(透明度と透過度) - 3 •  拡散反射と鏡面反射 - 4 •  マイクロファセット理論 - 5 •  色 - 6 •  BRDF(双方向反射率分布関数) - 6 •  エネルギー保存 - 7 •  フレネル効果 - 7 •  F0(0度におけるフレネル反射率) - 8 •  導体と絶縁体(金属および非金属) - 9 •  金属 - 9 •  非金属 - 10 •  リニアスペースレンダリング - 11 •  キーとなる要素 - 11 •  参考資料 - 12 技術編集:Cyrille DamezおよびNicolas Wirrmann
  • 3. vol. 1 - 物理ベースレンダリングとシェーディングの理論 Page 2 光と物質 物理ベースレンダリングとシェーディングの理論 光とは、それが波と粒子の両方の特性を示しえることからもわかるように、複雑な現象である。その結果、様々なモデルが光の 挙動を記述するために作成されてきた。テクスチャアーティストとして、私達はライトレイ(光線)モデルを光と物質の相互作用を 記述するモデルとして興味を持っている。私達の仕事は、モノの表面を描写するテクスチャを作成することだ。従って、光線が どのように表面物質と相互作用を行うかを理解することが重要になる。私達が作るテクスチャやマテリアルは、仮想世界内の 光と相互作用するので、私達が光の振る舞い方を理解すればするほど、私達が作るテクスチャの見た目もさらによくなることだ ろう。 本ガイドでは、物理ベースレンダリング(PBR)モデルがその基礎を置いている物理学の元になる理論を説明する。まずは光線 からはじめ、PBRのキーとなる要素を定義していく。 光線(Light Rays) ライトレイ(光線)モデルによれば、空気のような均質かつ透 明な媒体中において光線はまっすぐな軌跡を描く。また同様 にライトレイモデルによれば、不透明な物体などの表面に当 たる時や、空気から水のような異なる媒質を通過する時に、 光線は予測可能な振る舞いをする。その結果として、ある光 線が描く経路を視覚化することが可能になり、その出発点か ら、それが最終的に熱などの別のエネルギー形態に変化す る場所まで辿ることができる。 図01に示すように、あるサーフェイスに当たる光線は入射光 と呼ばれ、その当たる角度は入射角と呼ばれる。 光線が入射するのは、2つの媒体間に存在する平らな境界面 である。 光線がある表面に当たると、以下のいずれか、もしくは多く の場合、その両方が発生する: 1.光線が表面で反射し、異なる方向へと飛んでいく。これは 反射の法則に従うが、その法則によれば、反射角は(反射し た光の)入射角に等しい。 2.光線は、まっすぐな線(屈折光)を描きながら、一方の媒 体からもう一方の媒体へと通り抜ける。 この時点で、私達は光線が2つの方向に分割すると言ってい ることになる。すなわち反射と屈折とにである。表面において 反射、もしくは屈折した光線は、最終的にはいずれかの媒体 によって吸収されることになる。しかし吸収が発生するのは 表面ではない。 図01
  • 4. vol. 1 - 物理ベースレンダリングとシェーディングの理論 Page 3 不均質な媒体または半透明素材を通過する際、光は吸収さ れたり散乱される: 1.吸収に関しては、光の強度はそれがエネルギーの他の 形態(多くの場合は熱)に変化したぶんに応じて減衰し、光 の色はその波長に応じて吸収された光量だけ変化するが、 光線の方向は変化しない。 2.散乱に関しては、光線方向はランダムに変化するが、変 移の程度は材質に応じる。散乱は光の方向をランダム化す るが、その強度は変わらない。「耳」が良い例である。「耳」 は薄い(すなわち、吸収が低い)ので、散乱光が耳の後ろか ら貫通する様を見ることができる。もし拡散がなく吸収も低 い場合には、光線はガラスのように、その表面をダイレクト に通過することができる。例えば、今、プールを泳いでいると しよう。 そのプールが上手い具合にとても綺麗だとしたら、目を開い て、綺麗な水越しにかなりの距離をはっきりと見ることができ るだろう。しかしながら、同じプールがしばらくの間掃除がさ れていなかったために水が汚くなっている状態を想像してみ よう。汚れの粒子が光を散乱し、その結果として水の透明度 は著しく下がるだろう。 このような媒体/マテリアルの中を光がさらに通過すればす るほど、光はより吸収、および(もしくは)より散乱されること になる。従って、オブジェクトの厚さは、光がどれほど吸収ま たは散乱されるかその程度に対し大きな役割を果たす。図 02に示すように、厚さマップ(Thickness map)は、シェーダに 対し物体の厚さを表現するために使用される。 吸収と散乱(透明度と透過度) 図02 拡散反射と鏡面反射 鏡面反射(Specular Reflection)とは、すでに光線のセクショ ンで述べたように、表面(サーフェイス)で反射された光をさす。 光線は、表面で反射し、異なる方向へと進んでいく。これは反 射の法則に従うが、その法則によれば完全に平坦な表面上 においては、反射角は入射角と等しい。しかし大抵の表面は 不規則なので、その結果として反射の方向も表面の粗さ (Roughness)に応じてランダムに変化してしまうことに留意し ておこう。これは光の方向を変化させるが、光強度は一定の ままである。 表面が粗くなればなるほど、ハイライトはより大きく、より不 鮮明になる。表面がなめらかになればなるほど、鏡面反射 のフォーカスは締まり、適切な角度から見ればより明るく見 えたり、より強く見える。 しかしながら図03に示すように、この両者のケースで反射さ れる光の総量はまったく同じである。 拡散反射は、屈折された光である。光線は、ある媒体からも うひとつの媒体へと通り抜けると同時に、その物体の内部で 複数回に渡って散乱される。 物体の厚さは、光がいかに吸収、また は散乱されるかに対し、大きな役割を 果たしている
  • 5. vol. 1 - 物理ベースレンダリングとシェーディングの理論 Page 4 そして図04に示すように、光線は、最初にそれが通過した のとおおよそ同じ場所から元の媒質に向かい引き返すかの ように、再度その物体の外側へと屈折する。 ディフューズマテリアル(拡散材質)は極めて吸収性が高い ので、屈折した光が十分長い時間、マテリアル中を進行す ると、完全に吸収されてしまう可能性がある。従ってそのマ テリアルから戻って来る光は、入射位置からさほどの距離を 進行していないものと想定してよいだろう。 これが光の入射位置と出射位置の間の距離を無視できる 理由だ。従来のシェーディングシーンにおいて拡散反射とし て通常に使われてきたランバートモデルでは表面の荒さは 考慮に入れないが、Oren-Nayarモデルのようにそれらを考 慮にいれる拡散反射モデルも存在する。 高い散乱性を持ちながら低い吸収性の両方を有するマテリ アルは、しばしば「関与媒質」または「半透明マテリアル」と呼 ばれている。これらの例は、煙、牛乳、皮膚、ヒスイや大理石 である。後者3つのレンダリングをする際には、付加的モデル としてサブサーフェススキャッタリング(SSS/表面下散乱)を 使ってもよい。SSSを使うことで、光線の入射位置と出射位置 の間の距離は無視されることはない。煙や霧のような、高い 変動性と極めて低い散乱性および吸収性をもつ媒質を正確 にレンダリングするには、モンテカルロ・シミュレーションのよ うな、さらに高コストな方法が必要な場合もある。 図03 図04 表面が粗くなればなるほど、 ハイライトはより大きく、 より不鮮明になる
  • 6. vol. 1 - 物理ベースレンダリングとシェーディングの理論 Page 5 理論的には、拡散反射と鏡面反射 の両方は、光線が交差する表面の 凹凸に依存する。しかし実際には、 マテリアル内部で散乱が発生する ため、拡散反射に対するラフネスの 効果はより見えにくくなる。その結 果として、光線の出射方向は、表面 のラフネスおよびその入射方向と はほぼ独立している。最も一般的 に使われる拡散反射モデル(ラン バート)では、それを完全に無視す る。 本書においては、これらの「表面の 凹凸さ」を「表面のラフネス」と呼ん でいる。実際、それは以下のように いくつかの名称で呼ばれている。 例えば、roughness(荒さ)、 smoothness(滑らかさ)、 glossiness(光沢度)や マイクロサーフェイスなどだ。 これらは使用されるPBRワークフローに応じて変わるが、それ らはすべて表面の同じ状態を指している。すなわちテクセル 以下のジオメトリの詳細な状態である。 これらの表面の凹凸さは、使用しているワークフローに応じて、 roughnessマップもしくはglossinessマップで作成される。物理 ベースのBRDF(双方向反射率分布関数)はマイクロファセット (微小面)理論に基づいているが、その理論では、ある表面 (サーフェイス)は、マイクロファセットと呼ばれる様々な方向を 向く、それ自体は平坦な極小面で構成されていると想定する。 図05に示すように、これらの極小面は各々その法線に基づい て、単一方向​​に光を反射する。 光の向きと視線の向きのちょうど中間の方向にその面法線を 持つマイクロファセットは目視できる光を反射する。 しかしマイクロファセットの法線とハーフベクターが等しい、 全てのマイクロファセットが貢献するわけではなく、図05に 示されるように、あるものは(光方向からの)シャドーイング によって遮断され、またあるものは(視線方向からの)マス キングによって遮断されてしまう。 顕微鏡レベルの表面の凹凸さが光の拡散の原因になる のである。例えば、ぼやけた反射は光線の散乱によるも のである。図06に示すように、光線が平行に反射されてい ないので、鏡面反射がぼやけているように私達は知覚して しまうのである。 マイクロファセット理論(Microfacet Theory) 図05 図06 顕微鏡レベルの表面の凹凸さが 光の拡散の原因になる
  • 7. vol. 1 - 物理ベースレンダリングとシェーディングの理論 Page 6 色 あるサーフェスの色(すなわ ち、私達が見ている色)は、 光源から発せられた波長の いずれかがその物体によっ て吸収され、それ以外の波長 が鏡面および拡散の両方で 反射されることによって生じ る。残っている反射された波 長が私達が色として見るもの である。 例えば、リンゴの皮は、主に 赤色光を反​​射する。図07で 示すように、後方散乱した赤 の波長だけがリンゴの皮の 外へ飛び出していき、それ以 外の波長は吸収されてしまう。 またリンゴの皮は、光源と同じ色の明るい鏡面ハイライトを持 つ。それはリンゴの皮のような電気的に導体ではない(絶縁 体)マテリアルでは、鏡面反射は波長に対してほぼ独立的だ からである。従って、そのようなマテリアルに対しては、鏡面反 射は決して着色されることはない。金属および絶縁体のような、 違ったタイプのマテリアルについては、後の章でもっと詳しく触 れる。 図07 BRDF(双方向反射率分布関数) 双方向反射率分布関数(BRDF)とは、簡単に言ってしまえ ばあるサーフェイスの持つ反射特性を記述する関数のこと だ。コンピュータグラフィックスの世界では、その他にも BRDFがいくつか存在するが、中には物理的に正しくないも のもある。あるBRDFが物理的に正しいためには、エネル ギー保存と相反性(reciprocity)がなければならない。相反 性に関して、ヘルムホルツの相反性定理について触れてお くと、その定理によれば光線の入射方向と出射方向を入れ 替えても、BRDFの値に影響を与えることはなく、互いの反 転とみなすことができる。 SubstanceのPBRシェーダーが使用しているBRDFは、ディズ ニーによる「原理に則った」反射モデルに基づいており、その モデルはGGXマイクロファセット分布に基づいている。GGXは、 スペキュラ分布においてより短いピークのハイライトとよりロン グテールなフォールオフという、図08で示されるように、よりリ アリスティックな見た目を持つベターなソリューションを提供す る。 図08 GGXのオブジェクト は、スペキュラ分布の 点からみて、より優れ たソリューションを提 供する Substance PBRシェーダは、 GGXマイクロファセット分布を 使用する
  • 8. vol. 1 - 物理ベースレンダリングとシェーディングの理論 Page 7 エネルギー保存 エネルギー保存は、物理ベースのレンダリングソリューションにおいて重要な役割を果たすものである。エネルギー保存の法 則によれば、あるサーフェイスから(反射および後方散乱によって)再放出される光の総量は、それが受けた光の総量以下に なる。言い換えれば、サーフェイスによって反射される光が、その直前にサーフェイスが受けた光よりも強いことはあり得ないと いうことである。アーティストとして、私達はエネルギー保存の法則をコントロールする必要はない。これはPBRの実に素晴らし い点のひとつで、PBRではシェーダーが常にエネルギーが保存されるように制約をかけているのである。これが物理ベースモ デルの一部として含まれているおかげで、私達は物理的な理論ではなく、よりアート的な作業へと集中することができる。 フレネル効果 フレネル反射率もBRDFの係数として物理ベースのシェーディ ングに重要な役割を果たしている。フランスの物理学者オー ギュスタン・ジャン・フレネルによって観測されたフレネル効果 によれば、あるサーフェイスから反射されることで見ることが できる光の総量は、それを知覚できる視野角に依存している。 例として、水のプールを考えてみよう。水面に対し垂直に、 まっすぐに見下ろした場合、水の底まで見ることができるだろ う。このように水面を見ることを「0度」または「垂直入射」とい い、この時垂線は面法線と一致する。次に、見通すようにし て水面に対しより平行になるように水のプールを眺めてみる と、水面に発生する鏡面反射が段々と強くなっていき、仕舞 いには水面から下がまったく見えなくなってしまうことがわか るだろう。 フレネルは、私達が伝統的なシェーディングにおいて行ってき たように、PBR中で調整できるようなものではない。繰り返す が、この現象は私達がPBRシェーダーで処理する物理現象と はまた違ったものである。あるサーフェイスを見通すように眺 める時、平滑なサーフェイスならどんなものでも、入射角90度 でほぼ100%の反射になる。 粗いサーフェスの場合、反射率はどんどん鏡面へと近づいて いくが、100%の鏡面反射に達することはない。その場合重 要なのは、各々のマイクロファセットの法線が光となす角度で あって、マクロとしてのサーフェイスの法線が光となす角度で はない。光線が様々な方向に分散されるために、反射がより 柔らかくなったり、よりおぼろげになることもある。巨視的なレ ベルであなたに見えているものは、個々のマイクロファセット に発生する全てのフレネル効果の平均のようなものなのだ。 図09 粗いサーフェスの場合、反射率はどんどん鏡面へと近づいていくが、 100%の鏡面反射に達することはない
  • 9. vol. 1 - 物理ベースレンダリングとシェーディングの理論 Page 8 F0(0度でのフレネル反射率) あるサーフェスに光がまっすぐまたは垂直(0度の角度)に当 たった時に、ある一定の割合の光が鏡面のように反射して 戻ってくる。あるサーフェイスの屈折率(IOR)を使用すること で、反射して戻される量を導出することができるが、これは図 09で示されているように、F0(フレネル0)と呼ばれている。 サーフェス内部へと屈折する光の量は、1-F0と呼ばれる。 PBRの観点および反射率の芸術的解釈か ら、図09に示すように、一般的に滑らかな 不導体のサーフェイスについては、F0では 光の2%〜5%を反射し、見通し角では 100%反射するといえる。 不導体(非金属)の反射率の値は、現実にはさほど劇的に は変化しない。事実、ラフネスが変わってしまえば、値の実 際の変化はさらにわかりにくくなる。しかしながら、値の違い は存在する。図11に、金属および非金属マテリアルの両方 のF0の範囲を示す。 非金属の場合、その値の範囲がお互いに大幅に異なってしま うようなことがないように注意すること。 宝石は例外で、より高い値を持つ。少し後で、導体と絶縁体に 関連しさらにF0に関して説明する。 図10 図11 F0の範囲は、一般的な不導体の場合、 0.02〜0.05ぐらいで、導体の場合、0.5〜 1.0になる。従ってあるサーフェイスの反 射率は、図10に示すようにセバスチャン・ ラガルドが「物理ベースのシェーディング モデルのフィード」としてブログポストした 方程式に従って屈折率から決定される。 私達がテクスチャオーサリングをする観 点から関心を寄せるのは、このF0の反射 率の値である。非金属(不導体/絶縁体) の場合にはグレースケール値を持ち、金 属(導体)の場合には、RGB値を持ってい る。
  • 10. vol. 1 - 物理ベースレンダリングとシェーディングの理論 Page 9 そして私達は物理ベースモデル内で作業しているので、マッ プで使用する金属反射率のために、実世界の測定値を使う 必要がある。 テクスチャリングの観点から金属に関してもうひとつ重要な点 をあげるならば、金属は腐食ができることである。これはウェ ザリング的要素が金属の反射状態に対し、大きな役割を果た すことを意味する。例えば、金属の錆の場合なら、これは金属 の反射状態を変化させ、図13に示すように、腐食した領域は やがて不導体マテリアルとして扱われることになる。 私は、あるマテリアルが金属かそうでないか、いつも自分に問 いかけてみると前に述べた。しかしより正確にいえば、その問 いかけをする際に、金属の状態、つまりそれは塗装されてい るのか、錆びているのか、汚れやグリースで覆われているの かについても、同じように問いかけられなくてはならない。マテ リアルは生の金属でないならば不導体として扱われることに なるだろうが、ウェザリングの状態によっては金属と非金属の 混ざった状態としても存在しうる。 導体と絶縁体(金属と非金属) PBR向けのマテリアルを作成するとき、金属か非金属かという観点で考えると大変分かりやすくなる。それもごくシンプルにサー フェスが金属かそうでないかを自問自答するだけだ。もしそうであれば、私はワンセットとなっているガイドラインに従うまでだし、 そうでない場合には、もうひとつのガイドラインに従うまでである。これはかなり割り切ったアプローチであるので、半金属のよう に、マテリアルによってはこれらのカテゴリに分類されない可能性があるが、マテリアルの作成プロセス全体においてまず金属 と非金属を区別し、半金属を例外とするのは、とてもよいアプローチである。マテリアルのためのガイドラインを設定するには、 まず私達が作成しようとしているものについて理解しなければならない。PBRを使うことで、このガイドラインのセットから導き出 される、金属(導体)と非金属(絶縁体)のプロパティを見ることができる。 屈折した光は吸収され、金属の色合いは反射光に由来する。 したがってマップ中では、金属に拡散色を使わない 金属 金属(導体)は、熱と電気の良導体である。簡単に言えば、 導電性金属の電界はゼロであり、電界と磁界からなる入射 光の波がサーフェイスに当たると、それは部分的に反射され、 全ての屈折光が吸収される。 研磨された金属の反射率の値は、 図12に示すように、反射約70〜 100%の範囲で高くなるであろう。 いくつかの金属は、異なる波長の 光を吸収する。例えば、金の場合、 可視スペクトルの高周波端に位置 する青色光を吸収するので、結果 として、黄色に見える。しかしながら、 屈折した光は吸収されてしまい、ま た金属の色合いは、反射光から来 る。従って、使用するマップ内、 我々は、金属に拡散色を与えてい ない。例えば、鏡面/光沢ワークフ ローでは、生のままの金属の拡散 マップは黒に設定されており、反射 率値は鏡面反射マップにおいて彩 色されたカラー値となっている。金 属では反射率の値はRGBとなり、 色が付いている。 同様に塗装された金属は、金属というよりは、むしろ不導体 のように扱われる。塗料は、生の金属の上のレイヤーとして 機能する。塗料が欠けてはがれた部分から露出した生の金 属のみが、金属として扱われる。金属についた汚れの他、生 の金属を覆い隠すものならなんでも同じことが言える。 図12 ウェザリング要素は、金属の反射状態 に大きな役割を演じる
  • 11. vol. 1 - 物理ベースレンダリングとシェーディングの理論 Page 10 非金属 非金属(不導体/絶縁体)は、電気の伝 導性に劣る。屈折した光は、散乱され/ もしくは吸収され(そしてしばしばサー フェイスから再放出される)そして金属 よりも遙かにすくない量の光を反射し、 アルベドカラーを有することもある。先 に、屈折率(IOR)から計算される一般 的な不導体の値は、F0基準で2〜5% であると述べた。図14に示すように、こ れらの値は、0.017〜0.067(sRGBで 40〜75)のリニアレンジ内に含まれる。 宝石を除けば、ほとんどの不導体は、 4%を超えることはまずない。 金属の場合とまったく同じように、現実世界における測定値 を使う必要があるが、透明ではないその他のマテリアルのた めのIORを探し出すことはかなり難しいかもしれない。しかし、 大方の一般的な不導体マテリアル間の値は急激に変化しな いので、反射率に従うようにいくつかガイドラインを利用する ことができる。これに関しては第2巻でカバーする予定である。 図13 図14 屈折率(IOR)から計算される一般的な 不導体の値は、F0基準で2∼5%である
  • 12. vol. 1 - 物理ベースレンダリングとシェーディングの理論 Page 11 線形空間レンダリング 線形空間レンダリングは、それだけでひとつのアーティクルとなりえる。従って、ここで詳細に説明することはしないつもりだ。そ れでも、計算が行われるのが線形空間内であることは、最低限理解しておこう。 簡単に言えば、線形空間レンダリングとはライティング計算において正しい計算法を提供するものだ。それが作り出した環境下 では、光は現実世界での光と同じように振る舞うことが可能となる。線形空間内では、ガンマは1.0である。しかし、これが私た ちの目に正しく見えるようにするには、線形のガンマがシフトする必要がある。ガンマエンコード済み空間(sRGB)は、コンピュー タ画面に表示される画像を補正する。画像の値は、表示向けに調整される。 カラー値を計算したり、色の操作を行う場合には、全ての計算は、線形空間内で行われるべきである。それを理解するための 単純な例として、ある画像がレンダー内ではベースカラーやディフューズとして表示される表示される場合をみてみよう。その場 合、これらのマップはsRGBとして設定される必要がある。Substance内では、その画像がsRGBにタグ付けされていたとしても、 それは計算のために一度線形に変換され、さらに表示するためにsRGBに再設定されるということが行われる。しかし、ラフネス やメタリックのようなテクスチャに、純粋にサーフェイスの特性を純粋に表す数学的な値を格納する場合には、これらのマップは 線形として設定されなければならない。 Substnceは、レンダリングされたビューポートに計算結果を表示する際にガンマ補正を行うのと同じように、入力情報に対して も自動で線形およびsRGBスペース間の変換を処理する。アーティストは、Substanceパイプラインで内部的に行われている線 形空間計算や変換を気にする必要はない。Substanceをインテグレートされたプラグイン経由でSubstanceマテリアルを使用す る場合には、線形空間への変換も自動的に処理される。 しかしながら、そのプロセスを理解しておくことは重要なことで、Substanceマップをビットマップ形式でエクスポートして、 Substanceマテリアルではなくして使うような場合では、自分が使っているレンダラーに合わせて手動で変換を実行する必要が あるかもしれない。ベースカラーやディフューズマップはsRGBで、その他のマップは線形であることは知っておく必要がある。 キーとなる要素 さて、私達は物理の背後にある基本的な理論を見てきたが、ここでPBRのためにいくつか重要なキー要素を抜き 出しておこう。 1.エネルギー保存。反射した光線は必ず、最初にサーフェスに当たった時に持っていた明るさよりも 暗くなる。エネルギー保存は、シェーダーが処理する。 2.フレネル。BRDFは、シェーダーが処理する。F0での反射率の値は、最も一般的な不導体の場合、 最小限の変化しかせず、2%〜5%の範囲内になる。一方、金属のF0は、70〜100%という高い値とな る。 3.鏡面反射の強度は、BRDF、ラフネス(roughness)やグロッシネス(glossiness)マップ、F0での反射 率の値(IOR)を介して制御される。 4.ライティング計算は線形空間内で計算される。ベースカラーやディフューズのようなガンマエンコー ドされた値を持つマップは全て、通常はシェーダーによって線形に変換される。それであっても自分が 使うゲームエンジンやレンダラーに画像をインポートする際には、適切なオプションをチェックして、そ の変換が適切に行われているか確認したほうがよい。ラフネス、グロッシネス、メタリック、ハイトマップ のような、サーフェイスの特性を記述するマップは、線形として解釈されるように設定されなければな らない。 Substanceをインテグレートされたプラグイン経由で Substanceマテリアルを使用する場合には、 線形空間への変換も自動的に処理される
  • 13. vol. 1 - 物理ベースレンダリングとシェーディングの理論 Page 12 参考資料 1.  Physically-Based Shading at Disney Brent Burley, Walt Disney Animation Studios. https:// disney-animation.s3.amazonaws.com/library/s2012_pbs_disney_brdf_notes_v2.pdf 2.  Microfacet Models for Refraction through Rough Surfaces http://www.cs.cornell.edu/~srm/publications/EGSR07-btdf.pdf 3.  Feeding a Physically-Based Shading Model by Sebastien Lagarde http://seblagarde.wordpress.com/2011/08/17/feeding-a-physical-based-lighting-mode/ 4.  An Introduction to BRDF Models by Daniël Jimenez Kwast http://hmi.ewi.utwente.nl/verslagen/capita-selecta/CS-Jimenez-Kwast-Daniel.pdf Allegorithmicは、3Dテクスチャリングソフトウェアの新世代を開発している:Substance Painter、Substance DesignerとBitmap2Material。これらのツールを使用して、ほとんどのAAAゲームスタジオでは、Substanceは、次 世代のPBR(物理ベースレンダリング)のアセットを作成するためのスタンダードとなっている。 Substanceの詳細については、当社のウェブサイトをご覧ください。 www.allegorithmic.com
  • 14. 日本語訳:Nobuyuki Kobayashi Twitter @nyaa_toraneko 2015/01/12 本ドキュメントは、Allegorithmic社が公開している 『THE COMPREHENSIVE PBR GUIDE  Volume 1: The Theory of PBR』 を私家訳したものです。 全ての著作物の権利は、Allegorithmic社にあります。 オリジナル版は、 http://www.allegorithmic.com/pbr-guide よりダウンロードできます。