Shader 着色器学习(一)
两个基本问题 :
1.shader是什么?
2.shader可以用来干什么?
第一个问题 : shader是什么?
(1). shader是运行在GPU(显卡)上的程序.
(2). shader中文叫着色器,但是它不仅仅可以控制图像的颜色,还可以控制图像的形状,简而言之就是通过控制显卡来控制图像的生成.
(3). 最常用的shader有两种:
Vertex Shader (顶点着色器)
Fragment Shader (片元着色器)
(4). shader是渲染管线上可高度编程的环节.
第一问题引出了一个新的概念 : 渲染管线
理解渲染管线对学习shader至关重要,那么
渲染管线是什么呢?
(1). 渲染管线也称为渲染流水线,是显示芯片(比如GPU)内部处理图形信号相互独立的并行处理单元。
可以把显卡看成一个加工厂,这个工厂负责的是把3D/2D场景加工成显示在屏幕上的图像.
工厂里的加工流水线就是渲染管线,很显然一个工厂绝对不止一条流水线,一条条流水线一起工作又相互独立互不干扰,由此才有了显卡强大的渲染能力.
(2). 渲染管线指的是一个过程,是指从3D场景出发到加工生成显示在屏幕图像的这一系列步骤.
再简化一下 : 渲染管线是GPU上处理图形数据的一套流程.
注 : 这是个人总结,有错漏之处还望指出,大家共同学习共同进步.
第二个问题 : shader可以用来干什么?
(1). 先回顾一下,上面讲到s