剖析虚幻渲染体系(06)- UE5特辑(05)
发布网友
发布时间:2024-09-07 01:03
我来回答
共1个回答
热心网友
时间:2024-09-30 10:27
在虚幻渲染体系的深度解析中,6.5.6小节详细讲解了Voxel Cone Tracing(体素椎体追踪)技术。首先,它基于Interactive Indirect Illumination Using Voxel Cone Tracing和Voxel Cone Tracing and Sparse Voxel Octree for Real-time Global Illumination,通过构建稀疏体素八叉树(如UE5的稀疏HLOD网格距离场)来对场景进行处理。体素化后的Sponza场景展示出这一过程。
UE5的混合渲染管线中,直接光采用传统光栅化,而次级光则利用椎体追踪技术,通过对几何体进行预过滤并采用体积光线投射,体素使用不透明场和入射辐射率来近似模拟椎体射线覆盖。MIP映射图的生成运用了高斯权重,根据体素中心向外的权重逐渐减小,以适应椎体形状。
Voxel渲染过程分为三个步骤:光照烘焙(反射阴影图,RSM)、预过滤(通过稀疏八叉树下采样辐射率)和相机Pass(收集可见像素的辐照度)。此外,Voxel追踪还适用于镜面反射、AO和软阴影,通过调整椎体数量和大小来适应不同表面粗糙度。
Lumen的场景光照由RenderLumenSceneLighting负责,其执行流程清晰可见。RenderRadiosityForLumenScene负责渲染辐射度,涉及裁剪、追踪参数构建和追踪图集纹素计算。追踪纹素通过采样方向追踪附近的辐射度,输入参数包括全局距离场、深度、透明度、法线等。追踪过程支持两种模式:辐照度缓存和实时追踪。
接下来的阶段包括组合光照(CombineLumenSceneLighting)、直接光照计算(RenderDirectLightingForLumenScene)以及预过滤(PrefilterLumenSceneLighting),这些步骤利用不同的纹理和深度信息,计算出最终的光照效果。ComputeLumenSceneVoxelLighting负责体素光照的计算,更新和体素化可见性缓存。
6.5.7小节则聚焦于Lumen非直接光照的计算,通过先前的计算结果,模拟全局光照,包括SSGI降噪、屏幕空间探针收集等步骤。这些复杂的过程在虚幻渲染体系中发挥着至关重要的作用。