数据类型:
1、标量: bool、int、float
2、向量 :vec2、vec3、vec4、ivec2、ivec3、ivec4、bvec2、bvec3、bvec4
3、矩阵:mat2 、mat3、 mat4(float type)
4、采样器:sampler2D、sampler3D、samplerCube
5、结构体
6、数组
7、空类型
没有类型转换
限定符:
1、attribute 修饰的变量其值是由宿主程序(Android中java)批量传入渲染管线的,管线进行基本处理后再传递给顶点着色器。
2、uniform 修饰的变量指对于同一组顶点组成的单个3D物体中所有顶点都相同的量。
3、varying 修饰的变量 是顶点着色器以及片元着色器之间的动态接口。不可赋值。
流程控制:if-else、while/do-while、for
精度控制: precision <精度><类型>; 精度可选lowp、mediump、highp
内建变量:
顶点着色器的内建变量:输出变量gl_Position、gl_PointSize
片元着色器的内建变量:输入变量gl_FragCoord、gl_FrontFacing输出变量gl_FragColor、gl_FragData
内置函数:主演完成数据操作。