计算机图形学(4)Shading--深度缓存Blinn-Phong反射模型

1.深度缓存

在介绍深度测试之前,我们先想象一下,情景中有很多物体,那么一个显而易见的问题就是物体的遮挡问题,即物体摆放的顺序问题,有哪些物体是必须靠近屏幕的,有哪些物体一定是放在某一个物体的前面的等问题。那么,我们处理这类问题的一个显而易见的方法就是,按顺序在屏幕上先处理最远的,然后依次由远到近一层一层进行处理,即像油画家画画一样的处理手法,由远及近,层层遮挡,我们把这种处理方法叫做画家算法。

但是这种按远到近的顺序处理,是要经过一系列判断的,有时候会出现无法判断到底哪个物体是离相机最远或者最近的情况,如下图。

在视图变换中,我们将摄像机的位置变换到了原点且摄像机看向-Z方向,这样会得到离相机越远其值越小,这里我们规定离相机越远其深度就越大。我们在来看上图,我们已经无法判断谁在前,谁在后了,因为三角形之间存在两两覆盖的情况。对于这个问题,我们既然不能够去确定三角形的前后顺序,但是我们可以比较容易去判断每一个像素的前后顺序,即深度。我们引入深度缓存(Z-buffer),即我们去记录像素内所表示的图像最浅的深度,也就是离我们最近的深度,为了完成深度缓存,我们在渲染得到最后的结果图的同时,也会生成每个像素所表示的几何物体的最浅深度信息

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值