物理ベースシェーディング

出典: フリー百科事典『ウィキペディア(Wikipedia)』

出典: フリー百科事典『ウィキペディア(Wikipedia)』

物理ベースシェーディング (Physically-based shading、PBS) とは、物理法則をベースとしたシェーディングのことであり、物理ベースレンダリング (PBR) において使われている。PBSシェーディングモデルとしては、メタルネス (金属さ) ワークフローで有名な「Disney 原則BRDF」が代表的だが、それを拡張した「Disney BSDF」もある。これらをベースとしたシェーダーは、PBRシェーダーとも呼ばれている[1]

物理ベースシェーディングは、写実的レンダリングだけでなく、非写実的レンダリング (NPR) にも使われている[2]

歴史[編集]

2003年、三菱電機の研究拠点の一つ Mitsubishi Electric Research Laboratories (MERL) は、幅広いマテリアルの測定を行ってデータベース化したMERL BRDF Database[1]を発表した[3]

その後、ウォルト・ディズニー・アニメーション・スタジオは、BRDF Explorer[2]を開発し、そのツールとMERL BRDF Databaseのデータを用いて新たなシェーディングモデルの開発を行い[3]、2012年、SIGGRAPH 2012 Courseの「Physically-Based Shading at Disney」の中で、「Disney “principled” BRDF」(Disney 原則BRDF) を発表した[4]

2015年、DisneyはDisney BRDFに鏡面反射BSDF (反射+透過)とより正確な表面下散乱を統合したDisney BSDFを発表した[5]

概要[編集]

物理ベースレンダリングにおいては、基本的にエネルギー保存の法則を守る必要がある。PBSのシェーダーモデルは、パラメータを変更してもエネルギーが保存されるようになっている[6]。なお、光の相反性については、透過を実装するために使われるBTDFに相反性が無いとされる[7]

旧来のシェーディングモデルとの違い[編集]

粗い表面での鏡面反射
表面下散乱による拡散反射

拡散反射および鏡面反射[編集]

マイクロファセット (微細表面) 理論導入前のシェーディングモデルは、経験則に頼っていた。特にGPUによる固定パイプラインにおいて、拡散反射は完全拡散反射を前提とするランバート反射モデルのみであり[8]、鏡面反射は経験則のBlinn-Phong反射モデル英語版のみであった[9]

マイクロファセット理論導入後、シェーディングモデルは「表面の粗さに対応する拡散反射モデル」 (オーレン・ネイヤー反射モデル等) と「表面の粗さに対応する鏡面反射モデル」 (Cook-Torranceモデル (Beckmann分布関数ベース)、Walterモデル (GGX分布関数ベース)等) の合成となった。しかし、拡散反射のオーレン・ネイヤー反射モデルがフレネル反射に未対応であったり[10]、拡散反射のオーレン・ネイヤー反射モデルと鏡面反射の反射モデルでラフネス相当のパラメータの範囲が異なっていたり[11]など、問題が多かった。

2012年、「Disney 原則BRDF」が登場し、独自の拡散反射モデル (Disney diffuse BRDF)と、GTR分布関数 (GGX分布関数を拡張したもの) ベースの鏡面反射モデルの合成により、両反射モデルのラフネスパラメータが統合された。また、メタルネス (金属さ) が導入され、光の透過や表面下散乱 (含拡散反射) のほぼ起きない「導体 (金属) 」[note 1]と、金属光沢 (鏡面反射色のある強い鏡面反射) の起きない「誘電体 (非金属)」が別扱いされるようになった。また、影響の大きな色である導体の鏡面反射色および誘電体の拡散反射色が基本色 (ベースカラー)として同一に扱われるようになった。

2016年、多重散乱 (Multiscatter) を考慮する鏡面反射モデルが登場した[12]。これは従来の鏡面反射モデルが単一散乱のみしか考慮されて居なかったためである[12]。その後、多重散乱の高速な近似が登場している[13][14][15]

なお、拡散反射は表面下散乱の近似だとされているが、表面下散乱の距離が0に近い場合、一般的な拡散反射モデルに使われている完全拡散反射 (ランバート反射) とはならず、Chandrasekhar BRDFとなる[13][16]

表面下散乱[編集]

BRDFとBSSRDF

表面下散乱では1993年、BRDFを表面下散乱へと近似したHanrahan-Krueger BRDFが登場した[17]

2001年、医療物理学向けの手法の応用により、双極子 (Dipole) モデルを用いたBSSRDFベースのレンダリング手法が確立された[18][17]ものの、多重散乱部分は近似となっていた[19]

2015年、拡散モデル向けに単一散乱および多重散乱の両方を同時に近似したChristensen-Burley拡散プロファイルが登場し[17][19][20]、この拡散プロファイルは同年のDisney BSDFでも採用された[19]

しかし、拡散モデルは平らな表面を前提としているために曲率の高い表面でアーティファクトが多く[21]、Disney BSDFでは正確でアーティファクトの少ないPath-traced subsurface scattering (ランダムウォーク方式) も検討され[19]、2017年にDisney子会社のPixarはPath-traced subsurface scatteringの新たなモデルを公開した[21]。このPixarの新モデルはランベルト・ベールの法則よりも正確な非指数関数モデルに基づき、滲み (bleed) パラメータが導入された[22][23]

リアルタイム表面下散乱[編集]

リアルタイムにおける表面下散乱の表現では当初、擬似的なHalf-Lambertシェーダーが使われていた。その後、Wrapped Diffuseシェーダーにルックアップテーブルでカラーシフトを加える手法、深度マップを用いた吸収の近似、テクスチャ空間でのガウシアンぼかしによる拡散の近似が登場した[24]

2009年、テクスチャ空間の代わりにスクリーン空間でぼかし処理を行うScreen Space Subsurface Scattering (SSSSS)が登場した[25]。2012年にはスクリーン空間でのぼかし処理を2つの畳み込みまで減らして高速化したSeparable Subsurface Scattering (SSSS)が登場した[26]。Disney BSDF登場後は、ガウシアン拡散プロファイルの代わりにChristensen-Burley拡散プロファイルが使われるようにもなった[27]

また、表面下散乱の透過のために、焼き付けたThicknessマップが使われるようになった[28]


透過・半透明[編集]

BSDF (BRDFとBTDFの組み合わせ)

レイトレーシング導入前の透過には、2次元的なアルファブレンドが用いられていた。

レイトレーシング導入後、屈折の再現が可能となった。また、ランベルト・ベールの法則に基づく指数関数的減衰の再現により、半透明における、より正しい体積吸収 (ボリュームアブソープション) の再現が可能となった (なお、ランベルト・ベールの法則は関与媒体が無相関の場合のみ正確となる[23])。

また、位相関数を用いたボリュームレンダリングも行われるようになった (#ボリューム (体積)も参照)。

薄いサーフィスにおいては、「表面下散乱による拡散透過」が導入された[29]ほか、屈折にもマイクロファセット理論が導入され、粗い (ラフネスの高い) 表面により拡散された拡散透過および鏡面透過の再現が可能となった。


Disney 原則BRDF[編集]

「Disney 原則BRDF」には、ベースカラー (アルベド)、メタルネス (金属度)、ラフネス (粗さ)、スペキュラレベル (鏡面反射量) だけでなく、表面下 (サブサーフィス)や異方性 (アニソトロピック)やツヤ (Sheen)英語版やクリア塗装 (クリアコート)も含まれている[4]。しかし、物理ベースシェーディングの実装によっては、それらの幾つかが省略されているものもある。

元資料のパラメータ[編集]

ディズニーの元資料の「Disney 原則BRDF」にあるパラメータは以下となっている[4]

メタルネス (金属さ、金属度、メタリック)
メタルネスパラメータは誘電体 (非金属)か導体 (金属)かを指定する。中間を指定すると、誘電体と導体がブレンド (ミックス)される。
誘電体では、光が入射すると正反射光と屈折光に分かれ、屈折光が表面下で散乱・吸収され散乱光 (拡散反射光を含む) となったり[30]、透過・吸収されて透過光となる。導体では、光が入射すると一部の光が屈折して吸収され[30]、それ以外の光が正反射される。
ベースカラー (アルベド)
ベースカラーパラメータは、誘電体の拡散反射色および導体の正反射色を指定する[1]
ラフネス (粗さ、粗度)
ラフネスパラメータは、微細表面 (マイクロファセット) 理論に基づくマイクロスケールでの表面の粗さを指定する (なお、メソスケールの粗さについては法線マップで再現する必要がある)。
ラフネスが高いほど、正反射光、屈折光および散乱光が表面で拡散することとなる。なお、誘電体か導体かに関わらず全てのマテリアルはフレネル反射を持つが、ラフネスが高くなるほどフレネル反射は小さくなる。
一部のPBS実装では、ラフネス (粗さ)の代わりにグロシネス (光沢度、滑らかさ)で実装されている (GGX/GTR鏡面反射モデルにおいては、ラフネス = 1.0 - グロシネス)。
スペキュラレベル (鏡面反射量、単にスペキュラとも書かれる)
スペキュラレベルパラメータは、誘電体の鏡面反射率を0.08 (8%) で割って指定する[31]。スペキュラレベルは屈折率 (IOR) から算出することもできる: (((ior-1)/(ior+1))**2)/0.08 [1]
スペキュラレベルの標準値は0.5 (= IOR 1.5) となっている。
スペキュラティント (鏡面反射の色味)
スペキュラティントパラメータは、誘電体の正反射色をどれだけベースカラーに近づけるかを指定する (なお、導体の正反射色はベースカラーと同等)。なお、スペキュラティントは、フルネル反射の反射色に影響を及ぼさない[4]
サブサーフィス (表面下)
サブサーフィスパラメータは、誘電体において、表面下で散乱された散乱光が拡散反射形に近いか表面下散乱形に近いかを指定する[32]
「Disney 原則BRDF」において表面下散乱は、Hanrahan-Krueger BSDFにインスパイアされた薄い散乱層向けの近似モデルを採用している[32][4]。一方、Disney BSDFでは、従来の薄い散乱層向けの表面下散乱は、サブサーフィスパラメータからフラットネス (平坦さ) パラメータへと変更され[33]、サブサーフィスには、より正確な表面下散乱として、独自の拡散プロファイルによる近似 (Christensen-Burley方式)、もしくは曲率の高いサーフィスでも問題の無い[21]Path-traced subsurface scattering (ランダムウォーク方式) が導入された[5]
フラットネスパラメータには、LightWave[34]、MODO[35]などが対応している。ランダムウォーク方式の表面下散乱には、Arnold[36]やBlender 2.80以降[37]などが対応している。
アニソトロピック (異方性)
アニソトロピックパラメータは正反射の異方性の度合いを指定する[4]。正反射の異方性は繊維や溝などの平行的な構造より生じるため[38]、ブラッシングされた金属、布地、髪などのマテリアルで使用される[38]
Sheen (ツヤ)
シーンパラメータは、誘電体において、ラフネスパラメータで再現しきれない追加のフレネル反射の反射率を指定する[4][39]。このパラメータと下のシーンティントパラメータは透過性繊維が含まれている布地[39]などに必要となる。
SheenTint (ツヤ色味)
シーンティントパラメータは、誘電体において、追加のフレネル反射をどれだけベースカラーに近づけるかを指定する。
クリアコート (クリア塗装)
クリアコートパラメータは、レイヤー合成されるクリア塗装マテリアルの合成強度を、0.25で割って指定する[40]。なお、「Disney 原則BRDF」では屈折率 1.5のポリウレタンによるクリア塗装を前提としている[31]
クリアコートグロス (クリア塗装の滑らかさ、クリア塗装の光沢度)
クリアコートグロスパラメータは、クリアコートの滑らかさを指定する。
一部のPBS実装ではクリアコートグロスの代わりにクリアコートラフネス (クリア塗装の粗さ) で実装されている (クリアコートラフネス = 1.0 - クリアコートグロス)。

RenderMan拡張のパラメータ[編集]

ディズニー子会社のピクサーがRenderManのPxrDisneyシェーダーで実装していた拡張パラメータには以下がある。

サブサーフィスカラー (表面下の色)
サブサーフィスカラーパラメータは、誘電体の表面下散乱に用いられる表面下の色を指定する。
RenderMan[41]、Blender[1]、Houdini[42]、Arnold[36]、LightWave[34]などが対応している。
エミットカラー (放射色、エミッションカラー、ルミナスカラー、発光色)
エミットカラーパラメータは、発光における放射色を指定する。
RenderMan[41]、Arnold[43]、Houdini[42]、LightWave[34]などが対応している。

Disney BSDF拡張のパラメータ[編集]

ディズニーのDisney BSDFの資料にある拡張パラメータには以下がある。なお、フラットネス (平坦さ)については、上記のサブサーフィスの項を参照。

スキャッターディスタンス (散乱距離、サブサーフィスラジアス、表面下の半径、サブサーフィスディスタンス、表面下の距離)
スキャッターディスタンスパラメータは、誘電体の表面下散乱において、それぞれの色の光線毎の表面下における平均距離を指定する[44]
Disney BSDF由来[44]であり、Blender[1]、Houdini[42]、Arnold[36]、LightWave[34]などが対応している。
トランスミッタンスカラー (トランスミッションカラー、透過色)
トランスミッタンスカラーは、誘電体の体積吸収 (ボリュームアブソープション) において、吸収された光の色合いを指定する[42]
Disney BSDF由来[45]であり、Houdini[42]、Arnold[46]、LightWave[34]などが対応している。
アットディスタンス (トランスミッタンスディスタンス、トランスミッションデプス、透過距離)
アットディスタンスパラメータは、誘電体の体積吸収 (ボリュームアブソープション) において、吸収された光が透過色に達するまでの距離を指定する[34]
Disney BSDF由来[45]であり、Houdini[42]、Arnold[46]、LightWave[34]などが対応している。
specTrans
specTransパラメータは誘電体において、鏡面反射以外と鏡面反射のミックス割合を指定する[47]
diffTrans
diffTransパラメータは誘電体の薄いサーフィスにおいて、散乱による拡散反射と拡散透過の割合を0~2で指定する[29]

Enterprise PBR拡張のパラメータ[編集]

Dassault SystèmesのEnterprise PBRは、glTF形式の次世代PBRマテリアルの元になる予定となっている [48]

Enterprise PBRで拡張されたパラメータには以下がある[49][50]

トランスパレンシー (透明度)
カットアウトオパシティとは別物。
フレークカラー (フレーク色)
フレークデンシティ (フレーク密度)
フレークラフネス (フレークの粗さ)
フレークサイズ (フレークの大きさ)
エミッションバリュー (放射量)
エミッションバリューパラメータは、発光における放射量をlm (全面積での放射量)又はlm/m2 (単位面積当たりの放射量)で指定する[50]
エミッションモード (放射モード)
エネルギーノーマライゼーション (エネルギー正規化)
エネルギーノーマライゼーションパラメータは、発光における放射色の正規化を行うかを二値で指定する[50]
Thin Walled (薄肉)
Thin Walledパラメータはマテリアルが薄肉かどうかを二値で指定する。マテリアルが薄肉でない場合、表面下散乱が有効となる[50]
Index of Refraction (屈折率)
アテニュエーションカラー (減衰色)
アテニュエーションディスタンス (減衰距離)

その他の拡張パラメータ[編集]

屈折光の分散
薄膜 (dが薄膜の厚み)
オパシティ (不透明度、カットアウトオパシティ[50])
不透明度を指定する。細かな穴のある布などを表現する時などに使われる。物理的に正しい不透明度を実装した実装系も存在する[51]
ディスパージョン (分散)
光の屈折で生じる分散に関するパラメータを指定する。Houdini、Arnoldなどが独自に実装しており、前者は0.0~1.0で、後者はアッベ数で指定する[42][46]
Thin Film Thickness (薄膜の厚み)
Thin Film Thicknessパラメータは表面上の薄膜の厚みを指定する。薄膜は分散した屈折光の内部反射により玉虫色 (イリデスンス) となる (薄膜干渉/薄膜光学)。薄膜の厚みへと対応するものには、ArnoldやRenderManがある[52][53]

対応ソフトウェア[編集]

オフスクリーンレンダラー[編集]

  • RenderManのPxrDisneyシェーダー[41] (なお、Uberシェーダーは既にPxrSurfaceシェーダーに移行済み)
  • Blender 2.79以降のCyclesのPrincipled Node[1] (透過はDisney BSDFと非互換の形で実装)
  • MODO 11.2以降のPrincipledシェーダー[54][35]
  • 3ds Max 2018及びMaya 2018以降に搭載のArnold 5以降のStandard Surface[55] (「Disney 原則BRDF」のスーパーセット)
  • Houdini 16以降のMantraのPrincipled Shader VOPノード[42]/Principled Shader SHOPノード[56][57] (「Disney 原則BRDF」のスーパーセット)
  • LightWave 2018以降のPrincipled BSDF[34]
  • appleseedのDisney BRDF及びDisney Material[58]

リアルタイムレンダラー[編集]

  • Blender 2.8以降のEeveeのPrincipled Node (一部未実装[59])

スキン (肌)[編集]

スキンシェーダーとは、肌の皮脂膜表皮 (メラニン[60])、真皮 (ヘモグロビン[60])、皮下組織の各層の反射・散乱に対応するシェーダーのことであり、一部のレンダラーが標準でこれに対応していた。現在は別の方式に置き換えられている。

スキンシェーダーの実装[編集]

  • ArnoldのSkinシェーダー - Standard Surfaceに置き換えられて、廃止予定となっている[61]
  • RenderManのPxrSkinシェーダー - レイヤリング表面下散乱マテリアルのPxrLMSubsurfaceに置き換えられ[62]、RenderMan 21でPxrLM系シェーダーがPxrLayerSurfaceシェーダーに置き換えられた。PxrSkin及びPxrLM系シェーダーはRenderMan 22で廃止された[63]
  • V-RayのVRaySkinMtl[64] - V-Ray NextでVRayFastSSS2及びVRayALSurfaceMtlに置き換えられた[65]


層化 (レイヤー)[編集]

層化 (レイヤー) はベースマテリアルに薄膜マテリアルなどを足す時に使われる。層化には、非物理的ではあるものの、層同士の線形合成 (lerp) が用いられてきた。その後、より物理的な層化モデルも登場したが、計算が複雑である[66]ため、あまり用いられていない。

ヘア・ファー (髪・毛)[編集]

ヘアシェーダーの鏡面反射では、1989年に登場したKajiya-Kayモデルで異方性反射が導入され、2003年に登場したMarschner反射モデルで縦方向と方位角の反射が分離され[67]、その後、2011年のd'Eon et al.の論文でMarschner反射モデルが改良されて「エネルギー保存の法則」を満たすようになった[67]

ヘアシェーダーの拡散反射では、Marschnerベースの反射モデルに近接場の問題があり[68]、1989年に登場したKajiya-Kayモデルの拡散反射が長らく使われていた。2007年に近接場散乱モデルのZinkeモデルが登場した[68]

2016年、Walt Disney Animation Studiosは、鏡面反射のd'Eonモデルと拡散反射のZinkeモデルをベースに改良したChiang et al.の論文を公表した[68]

また、ファー向けのシェーダーモデルも開発された。動物の毛は人毛と異なりメデュラ(毛髄質)が目立つ[69]ため、それを考慮したYan et al.の論文が2015年に登場し[69]、2017年にはそれを高速化するためのファーモデルが登場した[70]

パラメータ[編集]

物理ベースより前のMarschner鏡面反射モデルでは、一次鏡面反射 (Primary Specular; R (反射))、二次鏡面反射 (Secondary Specular; TRT (透過-反射-透過))、透過鏡面反射 (Transmit Specular; TT (透過-透過))のそれぞれに反射色や鏡面反射の角度シフトを指定していた。また、これらとは別に拡散反射色を指定することもあった。

物理ベースの後は反射パスを分けずに、髪色および角度シフトの指定を単一で行うようになった。また、髪色は基本色だけでなくメラニン色素ベースの指定も可能となった。d’Eon et al. (2014)の論文では、メラニン色素とRGB吸収係数との関係に以下を提示している (定数はそれぞれの吸収断面積を表す)[71]:

RGB吸収係数 = ユーメラニン濃度 * [0.419, 0.697, 1.37] + フェオメラニン濃度 * [0.187, 0.4, 1.05]

各ソフトウェアの実装[編集]

  • RenderManのPxrMarschnerHair - 拡散反射にZinkeモデルを採用している (古いKajiya-Kay拡散モデルへの切り替えも可能)[72]。物理ベースの髪色指定にはPxrHairColorノードが必要[73]
  • Arnold 5以降のStandard Hairシェーダー - 鏡面反射にd'Eonモデル、拡散反射にZinkeモデルを採用している[74]
  • V-Ray NextのVRayHairNextMtl - Chiang et al.及びYan et al.の論文を参照して実装された[75]
  • Blender 2.8以降のPrincipled Hair BSDF - Chiang et al.の論文を参照して実装された[76]

ボリューム (体積)[編集]

ボリュームシェーダーでは簡易的なHenyey-Greenstein位相関数が長らく用いられてきた。1993年、Henyey-Greenstein位相関数を単純化したSchlick位相関数が登場した[77]。Henyey-Greenstein位相関数とSchlick位相関数ではパラメータが異なるため、パラメータの変換が必要となる[78]

また、1987年のNishita, et al.の論文において、極小粒子向けのレイリー散乱理論に基づくRayleigh位相関数、小さな粒子向けのミー・ローレンツ理論 (ミー散乱) の近似であるMie-Hazy位相関数及びMie-Murky位相関数が示された[79][80]。これら位相関数は計算の容易な位相関数のフィッティング先に使われており、例えばmental rayではこれらの位相関数に相当するパラメータ値を提示していた[81]

その後、雲の散乱において雨滴粒径分布 (DSD) 毎のミー・ローレンツ位相関数の事前計算が行われるようになった[82]ものの、ミー・ローレンツ位相関数にはサンプリングが難しいという問題があり、ミー・ローレンツ位相関数の回折ピークを切り落とすという手法が登場した[83]

スカイ (空)[編集]

当初、輝度のみの解析的なスカイモデルとして、1993年にPerezスカイモデルが登場し、1994年にそれを少し変更したCIEスカイモデルが登場した[84]。しかし、これらのモデルはパラメータが多く使い難い上、輝度のみにしか対応していないため色が無く、レンダリングには適さないものであった[84]

色のあるものとしては、シミュレーション的なスカイモデルが登場した。1993年に大気の散乱をベースとするNishitaスカイモデル (1993年版) が登場したものの、単一散乱のみの考慮となっていた[84]。その後、1996年に大気の多重散乱を考慮するNishitaスカイモデル (1996年版) が登場した[84]

1999年、色に対応する解析的なスカイモデルとしてPreethamスカイモデルが登場し[84]、レンダリングに広く使われるようになった。このPreethamスカイモデルは、Perezの解析的なスカイモデルをベースに、Nishitaのシミュレーション的なスカイモデルの生成結果を当て嵌めた上でパラメータを単純化したものであり[84]、色に対応しながらも使いやすいものとなっていた。2012年、Preethamスカイモデルをベースとして光の全スペクトルを考慮するようにしたHosek-Wilkieスカイモデルが登場した[84]

スカイモデルの実装[編集]

シミュレーション的スカイモデル
  • Octane Render V4 XB2.1 (実験版) のPlanetary Environmentノード - Nishita sky modelを採用している[85]
  • NishitaAtmos.osl - 無料。OSLシェーダー対応のレンダラーで使用可能。
解析的スカイモデル
  • ArnoldのPhysical Sky - Hosek-Wilkieスカイモデルをベースとしている[86]
  • BlenderのCyclesレンダラーのSky Textureノード - Hosek-WilkieスカイモデルとPreethamスカイモデルに対応している[87]
  • V-RayのVRaySky - Hosek-Wilkieスカイモデル、Preethamスカイモデル、CIEスカイモデルに対応している[88]
  • RenderManのPxrEnvDayLight - Preethamスカイモデルをベースとしている[89]

関連項目[編集]

注釈[編集]

  1. ^ 薄い金属フィルムでは光の吸収が起きる前に透過してしまう (浸透深さ英語版/表皮深さ)

出典[編集]

  1. ^ a b c d e f Principled Node Blender Foundation
  2. ^ 物理ベースのマテリアル Epic Games
  3. ^ a b Physically-Based Shading at Disney P.3-4 Walt Disney Animation Studios 2012年8月31日
  4. ^ a b c d e f g Physically-Based Shading at Disney P.12-13 Walt Disney Animation Studios 2012年8月31日
  5. ^ a b Extending the Disney BRDF to a BSDF with Integrated Subsurface Scattering Walt Disney Animation Studios 2015年
  6. ^ The Comprehensive PBR Guide by Allegorithmic - vol. 1 P.7 Allegorithmic
  7. ^ Extending the Disney BRDF to a BSDF with Integrated Subsurface Scattering P.5 Walt Disney Animation Studios 2015年
  8. ^ 『Game Graphic Programming』 P.348 Allen Sherrod 2008年6月10日 ISBN 978-1584505167
  9. ^ 『Real-Time Shader Programming』 P.162 Ron Fosner 2002年12月31日 ISBN 978-1558608535
  10. ^ Designing Reflectance Models for New Consoles P.21 トライエース 2014年
  11. ^ PBR Diffuse Lighting for GGX+Smith Microsurfaces P.6-8 UBM Tech 2017年3月
  12. ^ a b Multiple-scattering microfacet BSDFs with the Smith model Eric Heitz, et al. 2016年
  13. ^ a b Revisiting Physically Based Shading at Imageworks ソニー・ピクチャーズ・イメージワークス 2017年
  14. ^ The Road Toward Unified Rendering with Unity's High Definition Render Pipeline P.91- Unity Technologies 2018年
  15. ^ Filament - 4.7.2 Energy loss in specular reflectance Google
  16. ^ 『Real-Time Rendering, Fourth Edition』 P.352-353 Tomas Akenine-Moeller、Eric Haines、Naty Hoffman 2018年9月10日 ISBN 978-1138627000
  17. ^ a b c Physically Based Rendering: From Theory To Implementation - Light Transport II: Volume Rendering - Further Reading Matt Pharr、Wenzel Jakob、Greg Humphreys 2018年
  18. ^ "毛"の表現の新境地をもとめて ~前編~ CG-ARTS 2011年6月15日
  19. ^ a b c d Extending the Disney BRDF to a BSDF with Integrated Subsurface Scattering P.7-10 Walt Disney Animation Studios 2015年
  20. ^ Approximate Reflectance Profiles for Efficient Subsurface Scattering Pixar 2015年
  21. ^ a b c Path Traced Subsurface Scattering using Anisotropic Phase Functions and Non-Exponential Free Flights P.2 PIXAR 2017年7月
  22. ^ Path Traced Subsurface Scattering using Anisotropic Phase Functions and Non-Exponential Free Flights P.8-9 PIXAR 2017年7月
  23. ^ a b PIXAR Deep Dive on SSS : SIGGRAPH Preview fxguide 2017年7月28日
  24. ^ GPU Gems - Chapter 16. Real-Time Approximations to Subsurface Scattering NVIDIA 2004年
  25. ^ Real-time rendering of subsurface scattering according to translucency magnitude Hiroyuki Kubo, et al. 2015年
  26. ^ Separable Subsurface Scattering Jorge Jimenez, et al. 2012年
  27. ^ Efficient Screen-Space Subsurface Scattering Using Burley's Normalized Diffusion in Real-Time Unity Technologies 2018年
  28. ^ Efficient Screen-Space Subsurface Scattering Using Burley's Normalized Diffusion in Real-Time P.39-40 Unity Technologies 2018年
  29. ^ a b Extending the Disney BRDF to a BSDF with Integrated Subsurface Scattering P.12 Walt Disney Animation Studios 2015年
  30. ^ a b SIGGRAPH 2010 Course Notes: Physically-Based Shading Models in Film and Game Production P.8
  31. ^ a b Physically-Based Shading at Disney P.15-16 Walt Disney Animation Studios 2012年8月31日
  32. ^ a b Physically-Based Shading at Disney P.14 Walt Disney Animation Studios 2012年8月31日
  33. ^ Extending the Disney BRDF to a BSDF with Integrated Subsurface Scattering P.12 Walt Disney Animation Studios 2015年
  34. ^ a b c d e f g h Principled BSDF LightWave 3D Group 2018年1月7日
  35. ^ a b Principled Shader Foundry
  36. ^ a b c Subsurface Solid Angle
  37. ^ Bf-blender-cvs - a6968e87f13 - master: Cycles: add random walk subsurface scattering to Principled BSDF. Blender Foundation 2018年2月9日
  38. ^ a b Anisotropic Materials Appearance Analysis using Ellipsoidal Mirror P.1 Jiri Filip、Radomir Vavra 2015年
  39. ^ a b Physically-Based Shading at Disney P.10 Walt Disney Animation Studios 2012年8月31日
  40. ^ Physically-Based Shading at Disney P.16 Walt Disney Animation Studios 2012年8月31日
  41. ^ a b c PxrDisney Pixar
  42. ^ a b c d e f g h Principled Shader VOP node Side Effects Software
  43. ^ Emission Solid Angle
  44. ^ a b Extending the Disney BRDF to a BSDF with Integrated Subsurface Scattering P.7,P.15 Walt Disney Animation Studios 2015年
  45. ^ a b Extending the Disney BRDF to a BSDF with Integrated Subsurface Scattering P.6 Walt Disney Animation Studios 2015年
  46. ^ a b c Transmission Solid Angle
  47. ^ Extending the Disney BRDF to a BSDF with Integrated Subsurface Scattering P.3 Walt Disney Animation Studios 2015年
  48. ^ glTF Update March 2019 P.5 Khronos Group
  49. ^ A new PBR Material serving Mobile, Web, Real-time Engines and Raytracing Dassault Systèmes 2019年
  50. ^ a b c d e Enterprise PBR Shading Model Version 1.0 Dassault Systèmes
  51. ^ Practical Multilayered Materials in Call of Duty: Infinite Warfare Activision 2017年
  52. ^ Thin Film Solid Angle
  53. ^ PxrSurface Pixar
  54. ^ Foundry ships Modo 11.2 CG Channel 2017年11月8日
  55. ^ Arnold 5 - Rendering Evolved Solid Angle 2017年4月12日
  56. ^ Principled Shader shader node Side Effects Software
  57. ^ What was new in Shading, and rendering Side Effects Software
  58. ^ appleseed - Documentation The appleseedhq Organization
  59. ^ Nodes Support - Shaders Nodes
  60. ^ a b A Spectral BSSRDF for Shading Human Skin P.3 Craig Donner, Henrik Wann Jensen 2006年
  61. ^ Skin - Arnold for Maya User Guide 5 Solid Angle
  62. ^ PxrSkin Pixar
  63. ^ RenderMan 22.0 Pixar
  64. ^ Skin Material - VRaySkinMtl Chaos Group
  65. ^ Migrating from V-Ray 3.x to V-Ray Next Chaos Group
  66. ^ Autodesk Standard Surface - 4.3 Layering model Autodesk
  67. ^ a b 01 THE IMPLEMENTATION OF A HAIR SCATTERING MODEL P.37-38 Matt Pharr 2016年10月16日
  68. ^ a b c A Practical and Controllable Hair and Fur Model for Production Path Tracing Walt Disney Animation Studios 2015年
  69. ^ a b Physically-Accurate Fur Reflectance: Modeling, Measurement and Rendering Yan et al. 2015年
  70. ^ An Efficient and Practical Near and Far Field Fur Reflectance Model Yan et al. 2017年
  71. ^ An Energy-Conserving Hair Reflectance Model P.2, 5-6 Eugene d’Eon et al. 2014年
  72. ^ PxrMarschnerHair Pixar
  73. ^ PxrHairColor Pixar
  74. ^ Arnold 5 - Rendering Evolved Solid Angle 2017年4月12日
  75. ^ VRayHairNextMtl Chaos Group
  76. ^ Bf-blender-cvs - 5078b9d2d08 - master: Cycles: add Principled Hair BSDF. Blender Foundation 2018年7月18日
  77. ^ A Rendering Algorithm for Discrete Volume Density Objects, Philippe Blasi, et al. 1993年
  78. ^ Efficient Many-Light Rendering of Scenes with Participating Media P.20 Carsten Dachsbacher, et al. 2014年
  79. ^ A shading model for atmospheric scattering considering luminous intensity distribution of light sources P.304 Tomoyuki Nishita, et al. 1987年
  80. ^ Efficient Many-Light Rendering of Scenes with Participating Media P.21-22 Carsten Dachsbacher, et al. 2014年
  81. ^ Participating Media Autodesk
  82. ^ Interactive multiple anisotropic scattering in clouds P.2-3 Antoine Bouthors, et al. 2008年
  83. ^ Deep Scattering: Rendering Atmospheric Clouds with Radiance-Predicting Neural Networks P.4 Disney Research 2017年
  84. ^ a b c d e f g An Analytic Model for Full Spectral Sky-Dome Radiance Lukas Hosek, Alexander Wilkie 2012年
  85. ^ OctaneRender V4 XB2.1 OctaneRender Team 2018年5月16日
  86. ^ Physical Sky Solid Angle
  87. ^ Sky Texture Node Blender Foundation
  88. ^ Sun and Sky System - VRaySun Chaos Group
  89. ^ PxrEnvDayLight Pixar