Real-time Global Illumination 实时全局光照学习笔记1

本文深入探讨实时全局光照技术,包括Reflective Shadow Maps (RSM)、Light Propagation Volumes (LPV)和Voxel Global Illumination (VXGI),分析它们的工作原理、优缺点以及在3D图形学中的应用。同时,介绍了屏幕空间全局光照和SSAO环境光遮蔽的概念及其关键思想。
ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

Real-time Global Illumination(in 3D)

全局光照就是直接光照加上间接光照
在这里插入图片描述
主要是一次弹射的间接光照
在这里插入图片描述
所有被光直接照到的物体都会作为光源再次照亮其他物体,也称为次级光源
在这里插入图片描述
要得到p点的光照结果,我们需要知道:
1.哪些东西是次级光源(联想到shadow map)
2.每个次级光源对p点光照的贡献

Reflective Shadow Maps(RSM)

问题1可由shadow map解决,sm上每一个像素都是一个次级光源,由于p点是不确定的所以我们假设:

所有反射物都是diffuse的(这样每个次级光源出射的能量(radiance)就是确定的了)

回顾辐射度量学
在这里插入图片描述
在这里插入图片描述
角的积分可以转化成面积的积分
在这里插入图片描述
对于漫反射面来说
在这里插入图片描述
代入后dA可被消除
在这里插入图片描述
问题1:次级光源对p点的可见性不可知,所以需要省略,当做可见
问题2:分母应该是2次方

其余小问题:
次级光源对渲染点的可见性不好解决(可用类似于PCSS的方法进行加速)

RSM的好处:
好实现

坏处:
性能和光源数线性相关
次级光照没有可见性检测
有许多的假设
采样数与质量的权衡

Light Propagation Volumes(LPV)

主要目标:
对任意一个渲染点在任意一个方向能够得到radiance

主要想法:
光线沿直线传播且不变

主要解决方法:
把场景分为3D的网格
在这里插入图片描述
步骤:
1.得到虚拟光源(RSM)
2.把次级光源注入到3d空间的网格中
在这里插入图片描述
3.传播
把每个网格向四周传播,相加并用球谐函数表示,重复传播直到稳定
在这里插入图片描述
4.渲染
对每个渲染点,找到所在的网格,根据网格渲染

问题:
light leaking
在这里插入图片描述
原因:格子内的光照是一样的,精度会有损失,除非格子划分无限小,并且传播过程也会忽略可见性的判断

Voxel Global Illumination(VXGI)

是一个两趟的算法
与RSM的区别:
1.次级光源从pixel变为voxel
2.RSM中的采样变为3D空间中的锥型tracing

Pass1:
记录每个voxel的光源分布与法线

Pass2:
在这里插入图片描述

Real-time Global Illumination(screen space)

什么是屏幕空间:
信息只来自于屏幕上能看到的东西(直接光照的信息)
相当于对图像进行后期处理

Screen Space Ambient Occlusion(SSAO)环境光遮蔽

什么是SSAO:
1.是全局光照的近似
2.在屏幕空间

Key idea1:
1.我们不知道间接光照
2.假设间接光照是常数(phong)

Key idea2&3:
1.要考虑可见性visibility
在这里插入图片描述
2.假设是diffuse的

理论:
从渲染方程考虑
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
分离出可见性项
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可理解为取一个平均值
对于AO来说(间接光为常数的情况下)这样拆分是准确的而不是近似
在这里插入图片描述
简单的理解:
1.间接光是L常数
2.brdf是常数
3.相当于把前两项取出来
在这里插入图片描述
如何取得每个点的平均可见性呢?(在屏幕空间上)
在这里插入图片描述
在这里插入图片描述
在红点过半的情况下才考虑环境光遮蔽(不知道法线的情况下)
在这里插入图片描述
问题:
由于不知道法线会存在不自然的遮蔽

HBAO使用了法线所以可以避免错误遮挡。

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

《GPU Pro 7:游戏开发与渲染高级技术精华》作为一本汇集了前沿渲染技术的专业书籍,它为你提供了深入探讨如何在游戏开发中实现高级实时全局光照的宝贵资料。全局光照是渲染中一个复杂但又至关重要的部分,它可以极大提升游戏场景的真实感和沉浸感。 参考资源链接:[GPU Pro 7:游戏开发与渲染高级技术精华](https://wenku.youkuaiyun.com/doc/2pxxjjkvkd?spm=1055.2569.3001.10343) 实时全局光照通常涉及到复杂的计算,比如计算光源对场景中每个点的直接光照以及这些点如何将光反射到其他表面。传统的全局光照算法,例如路径追踪(Path Tracing)在实时应用中通常计算量太大,不适用于实时渲染。因此,许多高效算法如近似的全局光照算法和基于物理的渲染技术应运而生。 在《GPU Pro 7》中,你会学习到如何利用现代GPU强大的并行处理能力来加速全局光照的计算。例如,使用图像空间的全局光照技术,如屏幕空间环境光遮蔽(Screen Space Ambient Occlusion, SSAO)或屏幕空间反射(Screen Space Reflection, SSR),可以通过在屏幕空间内进行近似计算来模拟环境光对场景的影响,从而提升光照效果的真实感。 另外,书中还介绍了使用预计算光照贴图(Lightmaps)和辐射度技术,这是一种预先计算并存储光照信息的方法,可以在运行时快速应用到场景中,以模拟间接光照效果。同时,高级的技术如光线追踪(Ray Tracing)也开始被应用于实时渲染,尤其是在最新一代GPU上,它能够提供非常真实的全局光照效果。 为了实现动态环境下的实时全局光照效果,可以考虑使用场景的动态光照探针或基于代理几何体(Proxy Geometry)的间接光照技术,通过这些技术,可以在保持光照实时变化的同时,减少计算负担。 总之,通过阅读《GPU Pro 7》,你不仅能够掌握理论知识,还能够获取实际案例的深入分析,从而在游戏开发中有效地实现高级的实时全局光照效果。为了进一步深化你的理解和技能,建议配合实际的开发实践,不断尝试和优化,以实现最佳的渲染效果。 参考资源链接:[GPU Pro 7:游戏开发与渲染高级技术精华](https://wenku.youkuaiyun.com/doc/2pxxjjkvkd?spm=1055.2569.3001.10343)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值