本文主要是介绍Shader学习一:Shader入门,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
shader零基础入门文档
Fragment shader 片段着色器
- Shaders也是一系列的指令,但是这些指令会对屏幕上的每个像素同时下达。也就是说,你的代码必须根据像素在屏幕上的不同位置执行不同操作。
- 你的程序就像一个 function(函数),输入位置信息,输出颜色信息,当它编译完之后会以相当快的速度运行。
shader语言
像素颜色取决于预设的全局变量 gl_FragColor
vec4(四分量浮点向量)
vec3 (三分量浮点向量)
vec2 (二分量浮点向量)
float(单精度浮点型)
int(整型)
bool(布尔型)
有了宏才可以 #define (定义)全局变量和进行一些基础的条件运算(通过使用 #ifdef 和 #endif)
(precision lowp float;)设定了所有的浮点值都是中等精度
(precision mediump float;)设定了所有的浮点值都是中等精度
(precision highp float;)设定了所有的浮点值都是高等精度
Uniforms
因为显卡的架构,所有线程的输入值必须统一(uniform),而且必须设为只读。也就是说,每条线程接收相同的数据,并且是不可改变的数据。
这篇关于Shader学习一:Shader入门的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!