最終更新日時: 2025年08月25日 12:57
BRDF(双方向反射分布関数)は、3次元空間における光の反射特性を数式的に表す関数である。材質モデルの違いはBRDFの定義に帰着する。
- BRDFは入射光と出射光の方向に基づいて、単位入射放射輝度あたりの出射輝度を定める関数
- 材質モデル(Lambert, Phong, Cook-Torranceなど)は、異なるBRDFを定義することで反射特性を近似している
- Lambertモデルは理想拡散、Phongモデルは経験的光沢、Cook-Torranceは物理ベース反射を再現する
BRDF f_r は次式で定義される:
fr(x,ωi,ωo)=dEi(x,ωi)dLo(x,ωo)=Li(x,ωi)(ωi⋅n)dωidLo(x,ωo)
- x: 反射位置 [m]
- ω_i: 入射方向(単位ベクトル)
- ω_o: 出射方向(単位ベクトル)
- L_i: 入射輝度 [W⋅sr−1⋅m−2]
- L_o: 出射輝度 [W⋅sr−1⋅m−2]
- dE_i: 入射放射照度の微小量
- n: サーフェス法線(単位ベクトル)
- f_r: BRDF [sr−1]
| モデル名 | BRDF式 | 特徴 | 代表例 |
|---|
| Lambert | f_r=πρ | 等方的完全拡散反射、観測方向に依存しない | 白壁、チョーク、紙 |
| Phong | f_r∝(r⋅v)s | 経験的光沢モデル、鏡面方向近傍に集中 | プラスチック、陶器 |
| Blinn-Phong | f_r∝(n⋅h)s | Phongの計算最適化型 | ガラス、艶消し金属 |
| Cook-Torrance | f_r=4(ω_o⋅n)(ω_i⋅n)DGF | 物理ベース反射、マイクロファセット理論 | 金属、濡れた表面 |
| Oren-Nayar | Lambertの粗面拡張。解析式は長いため省略 | 拡散面の粗さ考慮 | 布、コンクリート |
| GGX / Trowbridge-Reitz | 分布D項にD=π((n⋅h)2(α2−1)+1)2α2 | PBRで用いられる鏡面分布 | ゲームエンジンの標準材質 |
| Perfect Specular | f_r=δ(ω_o−r(ω_i)) | 完全鏡面反射、デルタ関数 | 鏡、静水面 |
- ρ: 拡散反射率(アルベド、無次元)
- r: 入射方向の鏡面反射ベクトル
- v: 観測方向ベクトル
- n: サーフェス法線
- h: ハーフベクトル(h=∣ω_i+ω_o∣ω_i+ω_o)
- s: 光沢指数(Phongモデルにおける指数、無次元)
- α: 表面粗さパラメータ(GGX)
- D,G,F: 分布項、幾何項、フレネル項(Cook-Torranceモデル)
- Lambert
- Phong
- Blinn-Phong
- Cook-Torrance
拡散反射において、放射輝度 L_o は入射方向 ω_i からの放射照度 E_i に比例し、すべての方向に等しく反射されると仮定する。
Lo(x,ωo)=πρEi(x)=πρ∫ΩLi(x,ωi)(ωi⋅n)dωi
よって、BRDF f_r は:
fr(x,ωi,ωo)=πρ
これは方向に依存しない定数であり、エネルギー保存性を持つ。
Phongモデルは経験的な鏡面ハイライトの近似であり、反射ベクトル r と視線方向 v の間の角度 θ に依存して次のように表される:
fr(ωi,ωo)∝(max(r⋅v,0))s
ここで s は光沢指数であり、大きいほど鏡面反射が鋭くなる。
正規化には以下のようにエネルギー保存則を仮定してスケーリング係数を導入する:
fr(ωi,ωo)=2πs+2(max(r⋅v,0))s
Blinn-Phongは反射ベクトルの代わりにハーフベクトル h を用いる。
fr(ωi,ωo)=8πs+8(max(n⋅h,0))s
この式もエネルギー保存性のための正規化係数を含む。h は以下のように定義される:
h=∥ωi+ωo∥ωi+ωo
Cook-Torranceモデルはマイクロファセット理論に基づき、以下の3要素で構成される:
fr=4(ωi⋅n)(ωo⋅n)D(h)G(ωi,ωo,h)F(ωi)
- D: 法線分布関数(NDF)
- G: 幾何項(遮蔽・マスキング)
- F: フレネル反射係数(Schlick近似等)
代表的なGGX分布:
DGGX(h)=π((n⋅h)2(α2−1)+1)2α2
幾何項(Smith近似):
GSmith(ω)=(n⋅v)+α2+(1−α2)(n⋅v)22(n⋅v)
フレネル項(Schlick近似):
F(ωi)=F0+(1−F0)(1−(ωi⋅h))5
以降、各項目の物理的意味、エネルギー保存の証明、Fresnel完全式との比較などを必要に応じて展開可能である。