存储限定符
-
着色器变量声明过程中的修饰符.
-
输入变量:从外部(客户端/上一个阶段着色器传递的属性/Uniform等).
image.png -
输出变量: 从任何着色器阶段进行写入的变量
了解限定符
image.png- 常用限定符
- const:常量值不可变
- varying: 用来传递顶点着色器(vertex shader)中的数据到片元(fragment shader)中
- attribute:只能出现在顶点着色器中(vertex shader) 用来表示顶点数据
- 注意:1.只能出现在顶点着色器中;2.只能用来修饰float 类型的变量,不能修饰其他类型的变量;如果需要通过atribute传递值到片元着色器,只能通过顶点着色器传递到片元着色器,不能直接传递
- in/varying controid(以前用的是in,新版本都用varying controid 另外两个也是)、out/attribute 、inout/attribute controid
- varying controid 修饰输入变量
- out/attribute 修饰输出变量
- attribute controid 修饰输入输出变量
- uniform :设置将我们需要的变量统一传递到顶点(vertex shader)或片元(fragment shader)着色器
- Varying (传递)
- 表示从顶点着色器传递到片元着色器.一般会传递颜色值
创建着色器文件简单了解
image.png- fsh:代表片元着色器
- vsh:代表顶点着色器
- 注意:后缀名不是给编译器看的,而是给开发者看的,后缀可以是任何字母,只是用来区别着色器而已
网友评论