Lazy loaded image
学习笔记
[UE]基础材质光照模型
00 分钟
2025-3-27
2025-3-27
type
status
date
slug
summary
tags
category
comment
icon
password
😀
虚幻引擎中常用的材质和光照模型
 

兰伯特(Lambert)

  • 作用:模拟漫反射(Diffuse Reflection)的基本光照模型。用于基础颜色,模拟物体明暗面
  • 原理:根据表面法线与光源方向的夹角计算光照强度,夹角越小(光直射表面)越亮,夹角越大(光斜射)越暗。
  • 公式光照强度 = max(0, dot(法线, 光源方向))
  • 特点
    • 适用于粗糙、无光泽的表面(如纸张、石头)。
    • 光照过渡平滑,但阴影区域可能过于暗黑(如夹角超过90°时直接变黑)。
  • 应用:基础材质、布料、非金属物体。

半兰伯特(Half-Lambert)

  • 作用:改进兰伯特模型,解决暗部细节丢失的问题。在物体上形成从0-1的明暗过渡(Power为可选项,可以使明暗变化更大)
  • 原理:通过数学调整将光照范围从[0,1]扩展到[0.5,1],使暗部区域仍然保留可见细节。
  • 公式光照强度 = 0.5 * dot(法线, 光源方向) + 0.5
  • 特点
    • 暗部不会完全变黑,适合卡通风格或需要柔和过渡的场景。
    • 由Valve在《半条命》中提出,常用于游戏角色渲染。
  • 应用:低多边形风格(Low Poly)、卡通渲染(Cel Shading)。
notion image
兰伯特与半兰伯特蓝图
 
notion image
兰伯特
notion image
半兰伯特
notion image
半兰伯特+Power

菲涅尔(Fresnel)

  • 作用:模拟物体表面在不同视角下的反射强度变化。常用于边缘光,可通过更改乘值和指数更改菲涅尔的效果
  • 原理:菲涅尔效应指出,当视线与表面夹角越小时(如看向地平线),反射越强;视线垂直表面时,反射最弱。
  • 公式反射强度 = 基础反射值 + (1 - 基础反射值) * pow(1 - dot(视线方向, 法线), 指数)
  • 特点
    • 增强真实感,常用于水面、玻璃、金属等材质。
    • 可控制边缘高光(如水面边缘更亮)。
  • 应用:水面、金属、玻璃、边缘光(Rim Lighting)
notion image
notion image

Matcap(Material Capture)

  • 作用:通过预渲染的环境贴图快速模拟复杂材质效果。
  • 原理:将材质的高光、反射、环境光等信息烘焙到一张球形贴图上,根据法线方向直接采样贴图颜色。
  • 特点
    • 无需复杂光照计算,性能高效。
    • 静态效果优秀,但缺乏动态光照变化。
    • 常用于快速预览、插画风格或移动端渲染。
  • 应用:角色展示、产品可视化、非真实感渲染(NPR)。
notion image
notion image

高光(Specular)

  • 作用:模拟光滑表面的镜面反射,形成亮斑(高光点)。
  • 原理:根据视线方向、光源方向和表面法线计算反射光的集中程度。
  • 常见模型
    • Phong模型:基于反射方向与视线方向的夹角。
    • Blinn-Phong模型:优化计算,使用半角向量(Halfway Vector)。
  • 公式(Blinn-Phong):高光强度 = pow(max(0, dot(半角向量, 法线)), 光泽度)
  • 特点
    • 光泽度(Glossiness)控制高光范围,金属或塑料通常有明显高光。
    • 高光颜色可能与光源颜色一致(如金属)或与材质颜色混合(如塑料)。
  • 应用:金属、塑料、陶瓷等光滑材质。
notion image
notion image
展示蓝图和效果并非Blinn-Phone

总结

材质/模型
核心作用
典型应用场景
兰伯特
基础漫反射
粗糙表面(布料、石头)
半兰伯特
保留暗部细节
卡通渲染、Low Poly风格
菲涅尔
视角相关的反射强度
水面、金属边缘光
Matcap
快速预烘焙材质效果
角色展示、移动端渲染
高光
模拟镜面反射亮斑
金属、塑料、光滑表面
这些材质和光照模型通常结合使用(如兰伯特+高光+菲涅尔),以实现更复杂的真实感或风格化渲染。
💡
以上就是虚幻中常用的材质和光照模型
上一篇
[UE]三种修改坐标轴的方法
下一篇
[UE]导入MMD模型

评论
Loading...