论文部分内容阅读
基于光栅化的实时渲染管线已有数十年发展,由于过分强调光照模型的简化,同时算法受限于并行GPU架构,正逐渐步入瓶颈。同时,2018年,封装了支持快速并行光线追踪的图灵架构GPU正式发布,实时光线追踪能很好的改进光栅化渲染的缺陷。然而,在目前的GPU运算能力下,采取类似离线渲染的高采样率蒙特卡洛路径积分渲染不可能满足实时性要求。将实时光线追踪与光栅化渲染的精华相结合组成混合渲染管线,是目前最为明确的研究方向。基于光栅化的简化思路,将光照模型进行简化,并用光线跟踪在低采样率下生成符合物理模型的高质量结果。然而,如何在低采样率下获得足够质量的渲染结果,如何构建合适的简化光照模型,如何针对部分收敛困难的物理模型进行模拟,都是目前混合渲染管线研究的难点。本文在光栅化渲染对光照模型的简化思路基础上,将光照模型分解为直接光照、反射、间接光照三部分,分别对每个部分利用低采样率下的实时光线追踪算法进行渲染。本文的主要工作如下:1.基于棋盘格渲染的设计思路,针对多边形光源的光线追踪直接光照算法进行改进,扩展了支持的光源种类,并提高了渲染质量。本文基于GGX的BRDF分布实现了简化光源与多边形光源的直接光照渲染,同时在1 ray/pixel的采样率下实现了支持硬边阴影与软阴影的实时阴影渲染系统。2.基于粗糙着色技术的改进思路,改进光线追踪反射算法,提高了渲染质量。在0.25 ray/pixel的采样率下进行反射采样,并通过相邻像素采样点的互用,实现了高分辨率的反射纹理重建算法,并利用额外的1 ray/pixel的可见度光线采样提高了重建的准确度,实现了高质量的实时反射渲染。3.结合实时光线追踪改进了LPV方法,提高了渲染质量。在场景中分布16*16*8的probe阵列,利用256 ray/probe获取场景的间接光照信息。在渲染物体时,结合周围的八个Probe进行采样,实现了高效率的间接光照渲染,同时解决了LPV方法的弥散距离不足、漏光和暗影等问题。4.利用薄透镜模型改进了TAA+SVGF高频滤波器的重采样部分,提高了运动场景下的滤波准确度。由于对反射纹理进行TAA重采样时,会在相机与光源运动时发生拖影,本文在利用平面镜模型改进的基础上,进一步利用薄透镜模型进行改进,大大改善了曲面反射纹理的拖影问题。5.结合最新的渲染引擎实现,对DX12进行封装,完成了支持多线程的高性能渲染器,并封装了Grid与BVH的场景管理算法。基于1-4的实现思路,利用该渲染器对场景的每个渲染模块进行完整的测试实验,获得了令人满意的结果。