技术美术知识学习5200:光追相关概念介绍

学习教程来自:【技术美术百人计划】图形 5.2 光线追踪、路径追踪、光线投射、光线步进介绍

笔记

1. 光线追踪 Ray Tracing

光栅化渲染:并行的按照物体->三角面->像素拆解每个对象,缺少全局信息,无法精确实现一些效果
光线追踪:一种渲染框架
采用路径追踪的光线追踪方法步骤为:从相机出发,对每个像素点,向场景投射光线,直到光线与场景中第一个物体相交,在交点处根据物体性质、光源属性和光照模型等计算这个交点的颜色。然后,在交点处,该光线发生反射或折射,继续遍历追踪反射光线和折射光线,直到光线与下一个表面相交,计算该交点的颜色。直到光线到达光源或逸出场景。

技术美术知识学习5200:光追相关概念介绍_第1张图片
图片来自PPT

I = I a + k d ∑ j = 1 j = l s ( N ⋅ L j ) + k s S + k t T I = I_a + k_d\sum_{j=1}^{j=ls}(N \cdot L_j)+k_sS+k_tT I=Ia+kdj=1j=ls(NLj)+ksS+ktT

计算交点的方法:

  1. 曲面方程和射线方程方程组求解
  2. 计算射线与物体三角形面的交点
  3. 优化:包围盒,空隙使用空间划分优化(八叉树、KD树、BSP树)

2. 光线投射 Ray Casting

技术美术知识学习5200:光追相关概念介绍_第2张图片
图片来自PPT
只考虑投射,不追踪后续

3. 路径追踪 Path Tracing

一种光线追踪方法

技术美术知识学习5200:光追相关概念介绍_第3张图片
图片来自PPT

L o ( p , ω o ) = L e ( p , ω o ) + ∫ S + f r ( p , ω i → ω o ) L i ( p , ω i ) cos ⁡ θ i d ω i L_o(p,\omega_o)=L_e(p,\omega_o)+\int_{S+}^{}f_r(p,\omega_i \to \omega_o)L_i(p,\omega_i)\cos \theta_i d \omega_i Lo(p,ωo)=Le(p,ωo)+S+fr(p,ωiωo)Li(p,ωi)cosθidωi

出射光 = 自发光 + 半球上贡献的积分

一些常见问题的处理办法:
积分的求解:蒙特卡洛积分
光线数量:一个像素块多条光线,反射时只产生一条光线,最终混合这些结果

技术美术知识学习5200:光追相关概念介绍_第4张图片
图片来自PPT

迭代终止:随机数法,每次迭代生成一个随机数决定是否继续
光源面积小:不在半球上采样,通过变化直接在光源上采样

完整步骤:从相机出发,对每个像素点,向场景投射光线,直到光线与场景中第一个物体相交,在交点处根据物体性质、光源属性和光照模型等计算这个交点的颜色。然后,在交点处,该光线发生反射或折射,继续遍历追踪反射光线和折射光线,直到光线与下一个表面相交,计算该交点的颜色。直到光线到达光源或逸出场景。

4. 体积光线投射 Volume Ray Casting

体绘式技术(Volume Rendering)

技术美术知识学习5200:光追相关概念介绍_第5张图片
采样三维纹理并混合

5. 光线步进 Ray Marching

光线从起点步步前进,一步一计算直到终点

应用场景 起点 终点 方向
屏幕空间反射(SSR) 反射面上的被计算的点 反射光线与被反射对象表面的交点 根据反射面法线和视线方向计算的反射方向
时差贴图 视线和模型表面的交点 视线和偏移表面的交点 视线方向
体绘制 视点 视线和模型表面的交点 视线方向

6. 一些区别

递归式光线追踪(Whitted Style Ray Tracing):每个像素一条光线
路径追踪:每个像素多条光线

作业

分析光线追踪、路径追踪、光线投射、光线步进在游戏中有哪些技术应用,paper

游戏中的应用 以下截屏来自来自Xbox Series X和3060显卡(Mincraft)

1. 地平线5 Forza 5

2. 灵媒 The Medium

技术美术知识学习5200:光追相关概念介绍_第6张图片

3. 我的世界 Minecraft

GTX off
RTX on

4. 黑客帝国觉醒 The Matrix Awakens

技术美术知识学习5200:光追相关概念介绍_第7张图片

5. 食人鲨 Maneater

RTX off
RTX on
RTX off
RTX on

你可能感兴趣的:(计算机图形学入门,技术美术,几何学,计算机视觉)