【光照】Unity中的[光照模型]概念辨析
【从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 和 菲涅尔效应。
- 替代传统 标准光照模型。
关系层级图
关键区别
概念 | 物理性 | 计算复杂度 | 应用场景 |
---|---|---|---|
标准光照模型 | 低 | 低 | 实时渲染(如老游戏) |
BRDF | 高 | 高 | 电影级渲染 |
PBR | 高 | 中 | 现代游戏/3D设计 |
总结
- 传统模型(如Phong/Blinn-Phong)是经验公式,适合快速渲染。
- BRDF 是物理模型,为PBR提供数学基础。
- PBR 是完整流程,整合BRDF、GGX、菲涅尔等实现真实感渲染。
【从UnityURP开始探索游戏渲染】专栏-直达
(欢迎点赞留言探讨,更多人加入进来能更加完善这个探索的过程,🙏)