基于时间超采样的粗像素着色技术研究报告
作者及发表信息
本文由Kai Xiao、Gabor Liktor和Karthik Vaidyanathan(均来自英特尔公司)合作完成,发表于2018年5月的I3D ‘18: Symposium on Interactive 3D Graphics and Games会议论文集,标题为《Coarse Pixel Shading with Temporal Supersampling》。
学术背景
研究领域与背景
本文属于实时渲染优化领域,具体针对高分辨率显示设备(如虚拟现实设备)下的渲染性能瓶颈问题。随着显示分辨率的提升,传统逐像素着色(per-pixel shading, PS)的计算成本急剧增加,而功耗预算有限,因此需通过降低着色率(shading rate)来平衡性能与画质。
现有技术瓶颈
1. 粗像素着色(Coarse Pixel Shading, CPS):通过将着色粒度从单像素扩大至多像素(如2×2像素块),显著减少着色计算量,但会导致纹理细节丢失和着色伪影(如阴影锯齿)。
2. 棋盘格渲染(Checkerboard Rendering, CBR):每帧交替渲染半数像素,通过时间累积重建完整分辨率图像,但会因动态场景中的遮挡变化(disocclusion)产生伪影,且仅能降低50%的着色量。
研究目标
本文提出CPS-T(Coarse Pixel Shading with Temporal Supersampling),一种结合CPS与时间超采样的新方法,旨在以更低的着色成本(相比CBR进一步减少50%着色量)实现相近的画质,同时保留完整分辨率的几何边缘细节。
技术方法与流程
1. 核心算法设计
时间超采样框架
- 基础公式:基于时间抗锯齿(Temporal Antialiasing, TAA),每帧通过抖动(jitter)生成多组采样点,并通过指数平滑函数累积历史帧数据。
- 改进点:
- 分离着色与可见性采样:着色样本(红色)分布在2×2像素块中心,可见性样本(蓝色)保留全分辨率。
- 解决抖动冲突问题:传统低差异序列(如Halton序列)在CPS中会导致着色与可见性样本分布不均衡。
蓝噪声抖动序列
- 方法扩展:基于Void and Cluster方法(Ulichney, 1993),优化抖动序列以同时在着色域和可见性域生成蓝噪声(blue noise)特性样本。
- 初始化:生成随机分布的着色样本掩膜(mask)。
- 迭代优化:通过高斯卷积识别样本簇(cluster)与空隙(void),将簇中心样本移至空隙,同时考虑可见性样本的分布。
- 结果:预计算抖动序列并应用于每帧视口偏移,确保时间累积后样本覆盖均匀。
动态场景处理
- 运动补偿:通过屏幕空间速度(velocity buffer)追踪历史帧位置,避免动态场景下的模糊或重影(ghosting)。
- 自适应颜色裁剪:
- 问题:传统方差裁剪(variance clipping)在CPS中因稀疏着色样本易产生闪烁或重影。
- 改进:根据边缘几何复杂度动态调整方差采样尺度(如检测速度差异>30%时采用基础尺度LOD=0)。
- 遮挡检测:比较当前帧与历史帧深度信息,触发遮挡事件时降低裁剪强度。
2. 实现细节
- CPS仿真:通过1/4分辨率渲染 + 4×MSAA模拟2×2 CPS,并复制样本至全分辨率图像。
- 纹理细节保护:引入负LOD偏置(bias=-1)以缓解纹理模糊。
- 时间解析:采用高斯滤波器(σ=0.7)加权混合当前帧与历史帧颜色。
实验结果
1. 画质对比
测试场景包括Bistro(高复杂度几何与材质)、Sponza(中频纹理)和San Miguel(细几何植被)。
- CPS-T vs. CBR:
- 优势:CPS-T在几何边缘(如栅栏、树叶)保留更完整细节,避免CBR因遮挡缺失导致的锯齿。
- 劣势:因每帧着色样本较少,动态阴影收敛速度慢于CBR(见图7阴影边界重建延迟)。
- CPS-T vs. CPS:显著改善纹理细节(如Sponza场景中的狮子雕像法线贴图),但仍有轻微摩尔纹(moire)伪影。
2. 性能分析
- 着色调用减少:在GTX 1080 GPU上,CPS-T的着色调用量仅为CBR的50-75%(见图9),理论最大降低75%(实际因几何复杂度浮动)。
- 渲染耗时:
- Sponza(128光源):CPS-T总耗时3.32ms,较PS(4.53ms)和CBR(3.86ms)更低。
- Bistro(单光源):因非着色瓶颈,性能提升不明显。
结论与价值
科学价值:
1. 提出首个面向CPS的时间超采样方案,解决了低着色率下的画质退化问题。
2. 设计蓝噪声抖动序列,统一优化着色与可见性样本分布,为动态场景下的高效渲染提供新思路。
应用价值:
- 适用于VR/AR等高分辨率实时渲染场景,显著降低GPU功耗。
- 为未来GPU原生支持CPS特性提供了技术验证。
研究亮点
- 多域样本优化:开创性地在着色与可见性双域实现蓝噪声分布。
- 动态适应机制:通过速度检测与方差裁剪自适应平衡闪烁与重影。
- 性能优势:以更低着色成本(相比CBR)实现媲美全分辨率渲染的画质。
局限性与展望
- 收敛速度:动态场景需更多帧累积以达稳定画质。
- 遮挡处理:当前遮挡检测算法在高速运动下可能失效。
- 未来方向:引入空间滤波(spatial filtering)加速遮挡区域重建,优化样本空间分布以减少外推伪影。