首页 > 其他分享 >Unity Shader 1 什么是Shader

Unity Shader 1 什么是Shader

时间:2022-11-21 09:45:59浏览次数:41  
标签:什么 几何 Shader 像素 Unity GPU 顶点 着色器

Unity Shader 1 什么是Shader

  • 什么是Shader
  • 什么是渲染管线
  • Shader、材质、贴图的关系

1 什么是Shader

建一栋房子,结构、框架都有了,如何装饰装修呢,Shader就是一道道工序,这就是Shader的作用,他是要给实时处理渲染器,又称为着色器。他是程序片段,又称可编程图形管线的算法片段。
他分为两种

  • Vertex Shader 顶点Shader
  • Fragment Shader 像素(片段)Shader

2 渲染管线

渲染的过程,就是GPU、CPU实现图形化的过程,好比房子的装修,Shader就是一道道工序,GPU、CPU就是负责实现的核心动力,各种图形数据通过渲染管线把最终图形呈现在屏幕上。
包括:

  • 应用程序阶段(主要由CPU负责)
  • 几何阶段
  • 光栅化阶段

2.1 应用程序阶段

  • 可见性判断:仅提交可见物体给GPU
  • 提交几何图元:提交网格、材质等数据,建立GPU命令表
  • 控制着色器参数: uniform

2.2 几何阶段

处理的是几何数据,形成几何数据,主要流程包括:顶点着色器、图元装置(投影变换)、裁剪和屏幕映射

  • 顶点着色器:进行顶点坐标变换。将输入的模型空间顶点坐标变换到裁剪空间顶点坐标。
  • 图元装配:将顶点装配成指定图元的形状(如三角形)。
  • 几何着色器:改变图元。通过产生新顶点构造出新的图元来生成其他形状。外壳着色器和域着色器可编程,镶嵌器是由硬件管理。

2.3 光栅化阶段

把图元映射为最终屏幕上显示的颜色。

  • 光栅化:把图元映射为最终屏幕上相应的像素(把三角型切分成一个个像素)。
  • 片段着色器:计算每个像素的最终颜色。
  • 深度测试和混合阶段:判断像素的遮挡关系和透明度,决定是否应该丢弃和怎么显示。

标签:什么,几何,Shader,像素,Unity,GPU,顶点,着色器
From: https://www.cnblogs.com/fishpro/p/16910328.html

相关文章