[游戏引擎架构]第三部分:渲染引擎(1)

探讨深度缓冲技术在三角形光栅化中的应用,解决深度冲突问题,确保渲染精度。文章分析了裁剪空间深度计算导致的画面穿插现象,提出通过深度辅助检测避免错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

10-1:采用深度缓冲的三角形光栅化基础

            笔记:深度冲突以及W缓存一文中:因为裁剪空间的深度为pHz = 1/pVz ,

      

      所以在会产生精度上的问题,造成画面上的穿插

       在Shader中,一般在VertexShader中返回的是齐次裁剪空间的坐标而不是除以w后的归一化坐标,所以猜测是否因为这个原因。

       通过比较准确的z坐标,来进行深度的辅助检测,从而避免深度冲突的问题

       在Realtime rendering 一书中,在2.3 GeometryProcess中指出,在投影之后需要获取齐次坐标作为裁剪(Clip)的输入,并且为了正确的线性插值,第四个参数w是需要的,所以需要的是齐次坐标(上面也说错了,应该是齐次坐标),进行裁剪之后才是齐次裁剪空间坐标,然后进行透视除法,即转换到NDC空间了

       

       FROM RealTime Rendering 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值