当前位置: 代码迷 >> Iphone >> OpenGL ES 3.0极点着色器(二)
  详细解决方案

OpenGL ES 3.0极点着色器(二)

热度:318   发布时间:2016-04-25 05:30:20.0
OpenGL ES 3.0顶点着色器(二)
 
#version 300 esuniform mat4 u_mvpMatrix; in vec4 a_position;in vec4 a_color;
out vec4 v_color;
void
main(){ v_color = a_color; gl_Position = u_mvpMatrix * a_position;}

上面是一段顶点着色器代码。

#version 300 es

出现在顶点着色文件的第一行,说明着色语言版本是3.0(shading language 3.0)

uniform mat4 u_mvpMatrix;

创建一个用于存储组合模型视图投影矩阵的uniform变量u_mvpMatrix。

in vec4 a_position;in vec4 a_color;

输入给顶点着色器,作为顶点着色器的属性。

 a_position是输入顶点的位置属性,a_color是输入顶点的颜色属性。

out vec4 v_color;

输出顶点颜色


gl_position是内置的自动声明变量,着色器必须写入变换位置传递给它。

void main是一个顶点或片段着色器的入口点。

v_color = a_color;

我们读取顶点属性输入a_color写它的顶点颜色输出v_color。

 gl_Position = u_mvpMatrix * a_position;

通过gl_Position改变顶点的位置。