Games202Lecture 6 Real-time Environment Mapping

RTRT

RTRT(real time ray tracing): path tracing+denoising

PRT

PRT (Precomputed radiance transfer):离线预计算,运行时快速内积。

  1. 预计算(Offline Precomputation):

    • 传输函数(Transfer Function):PRT 的核心思想是预计算物体表面对光照的响应。传输函数描述了光线如何从环境光照射到物体表面,并经过多次反射、折射等相互作用后最终到达观察者。这个函数通常依赖于物体的几何形状、材质属性(如漫反射、镜面反射)以及环境光的分布。

    • 球谐函数(Spherical Harmonics, SH)或 Wavelets:为了高效存储和计算这些复杂的传输数据,PRT 使用球谐函数或小波(Wavelets)等数学工具来压缩数据。球谐函数特别适合表示低频的光照变化,而小波则更适合高频细节。通过压缩,传输数据可以在运行时快速访问和计算。

  2. 运行时(Real-Time Rendering):

    • 环境光照与传输函数的结合:在运行时,PRT 通过将预计算的传输函数与当前的环境光照进行快速 计算【将**传输函数的系数向量**与**环境光的系数向量**进行内积(Dot Product)】 ,近似计算出全局光照效果。由于传输函数已经预计算并压缩,运行时计算可以非常高效。

    • 动态环境光变化:PRT 适用于动态环境光变化的场景,因为环境光的变化可以通过简单的数学运算(如球谐系数的更新)来反映。然而,PRT 通常不适用于大规模的几何变形(如物体的形状发生显著变化),因为传输函数是基于预计算的几何形状和材质属性,几何变形会导致预计算的数据失效。

傅里叶变换

时域和频域

相位

球谐函数(SH)

一些观察:(L代表阶数,每阶有2L+1个不同的基函数(编号-L...0...L),前n阶有n²个,参数量为n²)
基函数长这样

球谐函数类似于傅里叶级数 以sin和cos为基函数拟合出不同的周期函数

用于球面上的基函数,去拟合球面上随位置变换的离散的值
r=f(θ,φ)(球谐函数与r无关)

3D Gaussian Splatting原理速通(二)--球谐函数作用

用4阶函数做加权求和

作用1:[图左】在不同角度看高斯点云呈现不同颜色和光泽

作用2:地球重力场的模拟,看到不同位置重力的表达,测量离散的数据然后用SH去拟合。

RECALL

Diffuse BRDF基本只有低频信息(diffuse球不会反射出特别复杂的光照)

BRDF的频率可以用前三阶描述

近似光照👇

相关推荐
ObjectX前端实验室26 分钟前
【图形编辑器架构】:无限画布标尺与网格系统实现解析
前端·canvas·图形学
ObjectX前端实验室7 小时前
【图形编辑器架构】:编辑器的 Canvas 分层事件系统
前端·canvas·图形学
ObjectX前端实验室1 天前
【图形编辑器架构】节点树与渲染树的双向绑定原理
前端·计算机图形学·图形学
ObjectX前端实验室2 天前
【图形编辑器架构】渲染层篇 — 从 React 到 Canvas 的声明式渲染实现
前端·计算机图形学·图形学
ObjectX前端实验室2 天前
【图形编辑器架构】节点树篇 — 从零构建你的编辑器数据中枢
前端·计算机图形学·图形学
吃饺子不吃馅4 天前
AntV X6图编辑器如何实现切换主题
前端·svg·图形学
吃饺子不吃馅6 天前
深感一事无成,还是踏踏实实做点东西吧
前端·svg·图形学