Unity中Shader的深度缓冲区


前言

Unity中的深度缓冲区


一、什么是深度缓冲区

深度缓冲区是和颜色缓冲区、模板缓冲区平行的一个缓冲区

深度缓冲区:顾名思义存放的是代表模型深度的值的一个缓冲区
而这个值是由模型顶点的 z 值转化得到一个介于 0 和 1 之间的一个值

在这里插入图片描述

二、什么是深度信息

在这里插入图片描述


三、深度缓冲区的作用

在这里插入图片描述
用上图做例子:
图中的 圆 在 三角形前面
在渲染时,先渲染圆,后渲染三角形
如果不用 深度缓冲区控制是否渲染的话
三角形被遮盖的部分 还是会被绘制一遍,比较消耗性能
这时,我们就可以使用深度缓冲区取消被遮盖区域的绘制
但是,对于半透明的物体,一般不启用深度缓冲区
因为虽然被遮挡了,但是效果需要通过前面的物体,看见后面的物体

猜你喜欢

转载自blog.csdn.net/qq_51603875/article/details/133843316