使用全局光照贴图对场景进行渲染,首先就需要对场景进行光照贴图的生成,同时计算出场景中各个多边形的顶点所对应的纹理坐标,然后再对多边形列表的光照贴图进行合并,并进行纹理坐标的重新定位,这样就可以生成整个场景的一张光照贴图,从而实现带有光照效果的高效率渲染。
理论上,在渲染时各个多边形根据它所对应的纹理坐标来访问场景光照贴图就能得到正确的显示效果,但在实际中却由于浮点运算的精度误差而使得到的纹理坐标产生误差,导致每个多边形在访问光照贴图时会出现纹理偏差,进而致使渲染出的场景效果不正确,特别是场景中多边形的边缘处会出现很不自然的裂痕,这样就使渲染的质量降低。虽然这些偏差都是在单个纹理区域的边界上出现微小的偏差,但由于两个多边形边界处本应自然衔接,于是这在边界上出现的即便是极小的偏差也导致了整体渲染效果的下降。
如图所示:

在全局光照贴图生成中,浮点运算精度问题会导致纹理坐标误差,影响渲染质量,尤其在多边形边缘产生裂痕。提高计算精度如float到double并未显著改善。一种有效解决方案是对多边形光照贴图进行扩展,利用边缘颜色值进行扩展,确保边界颜色一致,消除裂痕。这种方法改善了渲染效果,虽增加光照贴图尺寸,但总体收益明显。
最低0.47元/天 解锁文章
1015

被折叠的 条评论
为什么被折叠?



