【從UnityURP開始探索遊戲渲染】專欄-直達
基礎光照模型
標準光照模型(Standard Lighting Model)
- 定義:傳統光照計算的框架,通常包含漫反射、鏡面反射和環境光三部分。
- 特點:非物理經驗模型,計算簡單但缺乏真實感。
- 從屬關係:
- 包含 漫反射 和 高光反射
- 是 Phong模型 和 Blinn-Phong模型 的基礎框架。
漫反射(Diffuse Reflection)
- 定義:光線均勻散射到所有方向(如啞光表面)。
- 模型:
- 蘭伯特模型Lambertian Model:
- 公式:
I = k_d * (N·L) - 特點:與視角無關,僅依賴法線和光照方向。
- 公式:
- 蘭伯特模型Lambertian Model:
高光反射(Specular Reflection)
- 定義:光線集中反射(如鏡面或金屬光澤)。
- 模型:
- Phong模型:
- 公式:
I = k_s * (R·V)^n - 特點:基於反射向量(R)和視角(V)計算高光。
- 公式:
- Blinn-Phong模型:
- 公式:
I = k_s * (N·H)^n - 特點:用半角向量(H)替代反射向量,計算更高效。
- 公式:
- Phong模型:
物理基礎模型
BRDF(Bidirectional Reflectance Distribution Function)
- 定義:描述入射光與出射光關係的數學函數,是PBR的理論基礎。
- 特點:
- 滿足能量守恆(反射率≤1)。
- 包含 漫反射 和 鏡面反射 的物理計算。
- 從屬關係:
- 是 PBR 的核心數學工具。
- 包含 GGX(法線分佈函數)和 菲涅爾效應。
GGX(Trowbridge-Reitz分佈)
- 定義:一種微表面法線分佈函數(NDF),用於PBR的鏡面反射計算。
- 特點:
- 更真實模擬粗糙表面的高光拖尾效果。
- 公式:
D(m) = α² / [π((N·m)²(α²-1)+1)²]
- 從屬關係:
- 屬於 BRDF 的組成部分。
- 是 Cook-Torrance BRDF 的核心部分。
菲涅爾效應(Fresnel Effect)
- 定義:光線在不同角度下反射率變化的物理現象(如玻璃邊緣更反光)。
- 特點:
- 金屬材質反射率隨角度變化顯著。
- 非金屬材質(如塑料)反射率較低。
- 從屬關係:
- 是 BRDF 的組成部分。
- 在 PBR 中用於計算鏡面反射。
高級渲染框架
PBR(Physically Based Rendering)
- 定義:基於物理的渲染流程,使用BRDF等物理模型模擬真實光照。
- 特點:
- 能量守恆(無“超亮”高光)。
- 參數化(金屬度、粗糙度)。
- 從屬關係:
- 基於 BRDF 和 微表面理論。
- 包含 GGX 和 菲涅爾效應。
- 替代傳統 標準光照模型。
關係層級圖
graph TD A[標準光照模型] --> B[漫反射] A --> C[高光反射] B --> D[蘭伯特模型] C --> E[Phong模型] C --> F[Blinn-Phong模型] G[BRDF] --> H[漫反射] G --> I[鏡面反射] I --> J[GGX] I --> K[菲涅爾效應] L[PBR] --> G L --> M[能量守恆] L --> N[微表面理論]
關鍵區別
| 概念 | 物理性 | 計算複雜度 | 應用場景 |
|---|---|---|---|
| 標準光照模型 | 低 | 低 | 實時渲染(如老遊戲) |
| BRDF | 高 | 高 | 電影級渲染 |
| PBR | 高 | 中 | 現代遊戲/3D設計 |
總結
- 傳統模型(如Phong/Blinn-Phong)是經驗公式,適合快速渲染。
- BRDF 是物理模型,為PBR提供數學基礎。
- PBR 是完整流程,整合BRDF、GGX、菲涅爾等實現真實感渲染。
【從UnityURP開始探索遊戲渲染】專欄-直達
(歡迎點贊留言探討,更多人加入進來能更加完善這個探索的過程,🙏)