超逼真渲染!虚幻引擎技术大牛解读全局光照系统Lumen(3)

简介: 超逼真渲染!虚幻引擎技术大牛解读全局光照系统Lumen

第一个成功的方法是实现纯体素圆锥跟踪,整个场景在运行时是体素化的,就像经典的「Interactive Indirect Illumination Using Voxel Cone Tracing」一文中的那样实现。

栅格化的三角形
光线步进卡 (高度场)
体素圆锥追踪
光线步进卡继续与体素锥跟踪

而这种方法的主要缺点是,由于场景几何体的过度融合而导致泄漏,这种现象在跟踪粗低映射时尤其明显。

第一种降低图像泄漏的技术是,对全局距离场进行跟踪,只在靠近表面的地方进行体素采样。在采样过程中,随着采样范围扩大积累不透明度,停止追踪时,不透明度将达到1。这样总是在几何体附近进行精确采样,实现降低图形泄露的目的。

第二种技术是对网状内部进行体素化。这大大减少了在较厚的壁处的泄露,不过这样也会造成一些过度遮挡。

其他的实验包括跟踪稀疏体素位块和每面透明通道的体素。这两个实验的目的都是为了解决射线方向体素插值问题,即对于不垂直于壁面的射线,轴对齐的实心壁将变得透明。

体素位砖是将每个体素存储一个位在一个8x8x8的砖块中,以指示给定的体素是否为空。然后使用两级 DDA 算法进行光线步进。具有透明面的体素相似,但 DDA相同,并且沿着光线方向透明度不断上升。结果表明,这两种方法在表示几何体方面的效果都不如距离域,而且速度相当慢。
带有透明度的体素

最早的跟踪合并表示的方法是,对全局距离字段和使用全局每个场景卡的着色命中进行锥形跟踪。即遍历一个 BVH,找出场景中的哪些卡影响采样点,然后根据锥形足迹对每张卡的适度滑步水平进行采样。

本文放弃了这种方法,因为当初没有考虑只用它来表示远场轨迹,而是把它看作是高场光线步进的直接替代。有点讽刺的是,这种被抛弃的方法与我们两年后最终达成的解决方案最为接近。

第一个演示


到这里,已经可以产生一些相当不错的结果了:


尽管如此,还是遇到了很多图形泄漏的问题,而且在这个简单的场景中,即使在一个高端 PC GPU 上,性能也不是很理想。

为了解决泄漏问题,以处理更多的实例、在PS5上以8毫秒以下时间完成处理。这个demo堪称是真正的催化剂。

与以往的方案相比,第一个变化也是最大的变化是,用距离场跟踪取代高度场跟踪。

为了遮蔽生命点,从卡片上插入生命点的光线,因为距离场没有顶点属性,这样,未覆盖的区域只会导致能源损失,而不是泄漏。

出于同样的考虑,将体素锥形追踪改为全局距离场射线追踪。

与此同时,我们还做了很多不同的优化,并通过缓存方案对Lumen的不同部分进行了时间分流。值得注意的是,如果没有锥体追踪,我们必须更积极地去噪和缓存追踪,但这又是一个漫长而复杂的故事。

这是我们发送第一个演示后的最终结果,在PS5上一直低于8ms,包括所有共享数据结构的更新,如全局距离字段。目前的性能表现甚至更好了,比如最新demo的完成时间接近4毫秒,质量上也有明显的改进。
image.png


尾声


总之,本文对整个Lumen进行了全面重写,还有许多不同的想法没有实施。另一方面,有些东西被重新利用。就像最初我们用卡片作为追踪表示,但现在用来作为缓存网格表面的各种计算方式。和软件追踪类似,开始是我们主要的追踪方法,主要是圆锥体追踪,但最后成为一种缩小规模和支持具有大量重叠实例的、复杂重度场景的方法。

参考资料:https://knarkowicz.wordpress.com/2022/08/18/journey-to-lumen/https://advances.realtimerendering.com/s2022/index.html#Lumenhttps://www.youtube.com/channel/UC9V4KS8ggGQe_Hfeg1OQrWw

相关文章
|
8月前
|
人工智能 测试技术
「化腐朽为神奇」:Stability AI又出新工具,草图瞬间精致,不同风格随心选
「化腐朽为神奇」:Stability AI又出新工具,草图瞬间精致,不同风格随心选
|
10月前
|
图形学
【unity每日一记】--控制游戏人物移动的细节
【unity每日一记】--控制游戏人物移动的细节
151 0
|
11月前
|
存储 数据挖掘 开发者
超逼真渲染!虚幻引擎技术大牛解读全局光照系统Lumen(2)
超逼真渲染!虚幻引擎技术大牛解读全局光照系统Lumen
|
11月前
|
算法 图形学 开发者
超逼真渲染!虚幻引擎技术大牛解读全局光照系统Lumen(1)
超逼真渲染!虚幻引擎技术大牛解读全局光照系统Lumen
113 0
|
11月前
|
存储 缓存 算法
超逼真渲染!虚幻引擎技术大牛解读全局光照系统Lumen(3)
超逼真渲染!虚幻引擎技术大牛解读全局光照系统Lumen
|
11月前
|
存储 数据挖掘 开发者
超逼真渲染!虚幻引擎技术大牛解读全局光照系统Lumen
超逼真渲染!虚幻引擎技术大牛解读全局光照系统Lumen
|
前端开发 JavaScript
一起看跨年烟花(流行背景音乐+雪花)---- 系列
一起看跨年烟花(流行背景音乐+雪花)---- 系列
171 0
一起看跨年烟花(流行背景音乐+雪花)---- 系列
|
前端开发
【我的前端】玻璃拟态效果实战开发:比毛玻璃更好看的CSS背景玻璃拟态效果
玻璃拟态是目前市面上的新风格,越来越受欢迎,新拟态 (Neumorphism) 模仿受到挤压的塑料材质,这种新的视觉风格更加注重垂直空间z轴的使用。它的典型特征是:
【我的前端】玻璃拟态效果实战开发:比毛玻璃更好看的CSS背景玻璃拟态效果
|
人工智能 搜索推荐 图形学
一文足矣:Unity&行为树(一)
一文足矣:Unity&行为树
600 1
一文足矣:Unity&行为树(一)

热门文章

最新文章