Unity中Shader的深度缓冲区

文章目录

  • 前言
  • 一、什么是深度缓冲区
    • 深度缓冲区是和颜色缓冲区、模板缓冲区平行的一个缓冲区
    • 在这里插入图片描述
  • 二、什么是深度信息
  • 三、深度缓冲区的作用


前言

Unity中的深度缓冲区


一、什么是深度缓冲区

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

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

Unity中Shader的深度缓冲区_第1张图片

二、什么是深度信息

Unity中Shader的深度缓冲区_第2张图片


三、深度缓冲区的作用

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

你可能感兴趣的:(Unity,unity,游戏引擎)