当前位置: 首页 > news >正文

ShadingModel与Lighting

一,经典经验光照模型

Lambert ——> 半 Lambert

Phong ——> BlinPhong

二,基础PBR光照模型

0,本质约定

(1)能量守恒
(2)Fresnel 菲涅尔反射
(3)微表面模型 Microfacet
(4)漫反射 + 镜面反射
(5)粗糙度控制高光形状
(6)金属/非金属材质区分
(7)IBL 环境光

1,渲染方程中的BRDF

(1)最核心的三个材质参数:Diffuse,F0,Roughness。

注:Normal一般是属于的模型参数,但是NormalMap却属于材质参数了。

注:非金属的F0一般是0.04到0.08,而金属的F0则是有颜色的。

(2)最核心的计算项F,Kd。

F是镜面反射强度,高光主要贡献(不仅用到了F0,而且与视线角度强相关)。

D与G项都是对高光形状进行辅助控制的。

kd = 1 - F,镜面越强漫反射越弱,同时维持能量守恒。

2,SG

Diffuse,Specular,Glossiness

F0 = Specular

3,MR

更好的Specular约束,防止出错。

BaseColor,Metaillic,Roughness

Diffuse = BaseColor * (1 - Metallic)

F0 = lerp ( 0.04, BaseColor, Metallic )

三,MatCap

半球的正投影,把半球面压扁成一个圆盘:
1,只关心在ViewSpace下,面朝摄像机的情况;
2,球体特性,越靠近视觉中心,法线越垂直(R,G = 0);
但对Sample UV来讲,中心其实是(0.5,0.5) 。
即ViewSpace下Normal越垂直,UV越接近0.5, Normal越偏,越远离0.5

四,Global Lighting

1,Precomputed GI

(1)Lightmap

(2)Radiosity

(3)PRT

(4)Irradiance Volume

2,Image-Based Lighting

(1)Irradiance Map

(2)Prefiltered Environment Map(Roughness) 与 BRDF LUT

3,Probe

(1)Reflection Probe

(2)Light Probe

(3)Irradiance Probe

(4)DDGI / RTXGI

4,Screen-Space GI

(1)SSAO / GTAO

(2)SSR

(3)SSGI

5,Voxel-Based GI

(1)Voxel Cone Tracing

(2)Sparse Voxel Octree GI

(3)LPV

6,Ray / Path-Based GI

(1)Ray Traced GI

(2)Path Tracing

(3)Photon Mapping

(4)ReSTIR GI

7,Cache / Neural GI

(1)Irradiance Cache

(2)Radiance Cache

(3)Neural Radiance Cache

五,BumpMapping

1,Normal Mapping

1.1 TangentSpace

2,Height Map

3,Parallax Mapping

3.1.1 原版

3.1.2 Steep Parallax Mapping

3.1.3 Parallax Occlusion Mapping(POM)

4,Displacement Mapping

5,Detail Normal

六,Gamma

1,Gamma编码的意义(0.45次幂)

人眼对暗部更敏感, 但8位低精度LDR表示范围有限, 所以需要手动分配更多空间去维持。

2,用法案例

(1)从DCC导出时,BaseColor一般默认都会Gamma编码,在UE里则相应需要勾选SRGB。

但对于Normal,Roughness,Metallic这些属性来讲则不需要。

(2)线性空间Shading,但写入Final RT前,需要根据 swapchain / 显示模式做对应的输出转换;
显示链路会按声明的色彩空间和传递函数显示。(LDR:Gamma,HDR:PQ / HLG 等)

七,HDR管线

1,主要特点

(1)高精度光照贴图:存储真实数据。

(2)高精度存储RT:在渲染过程中维持住高精度。

(3)ToneMapping映射到 “设备可显示区间 ”,SDR是【0,1】,但支持HDR的设备可能不同。

(4)显示器是否支持HDR影响最终输出链路:不支持则会回退到Gamma流程。

支持通过PQ/HLG等HDR编码后写入更高精度的RT(10bit / 12bit),最后由显示器解码。

2,对后处理管线的影响

2.1 Before ToneMapping

(1)DOF

(2)TAA

(3)SSR Input

(4)Exposure

(5)Bloom / Glare

2.2 After ToneMapping

(1)Color Grading

http://www.jsqmd.com/news/1119302/

相关文章:

  • ClaudeAPI 医疗场景落地指南:适用边界、提示词与审核流程
  • C++语言基础1:作用域解析运算符“::”详细讲解
  • Scrum落地避坑指南:一个技术负责人踩过的5个流程管理深坑与解法
  • 云服务器已进入黑暗森林时代
  • 【Linux网络】深入 HTTP 协议(一):从初识到 URL 编解码底层探索
  • 【AVRCP】规范精讲[38]:本地调节音量,控制器如何同步感知与更新
  • 演唱会、音乐会适合用的Tally灯
  • DLSS Swapper终极指南:如何智能切换DLSS版本提升游戏帧率
  • 《唤醒你的AI同事:WorkBuddy从零上手》035:工作流程优化
  • 【C++】008、sizeof与strlen的区别
  • 无刷电机控制系统架构与优化实践
  • Kimi K2.5 vs GPT-5.4编程实测:长文本与推理能力硬核对比
  • 如何快速打造个性化桌面:Ark-Pets开源桌宠完整指南
  • 人工智能赋能新型工业化实施路径方法论
  • 永磁同步电机控制技术:从PI到MPC的演进与实践
  • 【共创季稿事节】鸿蒙原生 ArkTS 布局方式之 Stack 实现渐变背景与文字对比度提升
  • 2026 AI外呼公司:6家产品路线对比
  • centos python ide 用这工具,效率天差地别,你还在龟速查找?
  • PP-OCRv6 来了,C# 离线 OCR OnnxOCRSharp再升级
  • AI赋能非技术行业实战:我用DeepSeek+混元整理了2026河北高考志愿填报完整指南
  • 成都月映长滩四层老旧别墅电梯落地:天井改造加装封闭式曳引电梯
  • PyTorch实现猫狗分类器:从数据到部署的完整指南
  • 警惕AI技术谣言:GPT-5并不存在,理性看待大模型演进
  • Python 3个实现屏幕截图工具的方法
  • 聊聊Google Play上架:新号需要走的12人连测14天该怎么操作
  • 27届二本!简历主项目烂大街,立刻放弃主攻开发岗
  • Claude Code 记忆系统的边界感,CLAUDE.md 和 auto memory 怎样分工
  • 【监控与可观测性】03-ELK日志体系搭建:从采集到告警的完整闭环
  • 【Camera】Monocular vs Stereo Calibration
  • 【TwinCAT3实战教程】项目交付前的最后一步:六大核心配置与避坑指南