OpenGL分为客户端(Client,它负责发送OpenGL命令,客户端实际上就是存储在电脑上的OpenGL API代码程序)和 服务端(Server,它负责接收OpenGL命令并执行相应的操作,OpenGL的显示设备和驱动程序就是服务端);
渲染传值通过Attribute、Uniform以及TextureData来完成。
Attribute (属性)
可传递的数据:颜色数据、顶点数据、纹理坐标、光照法线。
Attribute->顶点着色器->光栅化->片元着色器->渲染
只能直接传递给顶点着色器,如果需要传递给片元着色器,需要使用GLSL通过顶点着色器间接传递;
Uniform
可传递的数据:转换矩阵、光照参数或者颜色。
是变量类型的一种修饰符,是OpenGL ES 着色器中的常量值,使用存储各种着色器需要的数据,可以直接传递给顶点着色器和片元着色器;
发生旋转的时候,每一个顶点 * 旋转矩阵,视频颜色空间是YUV,需要转换为RGB,对片元着色器生效。
Texture Data(纹理数据)
可传递的数据:纹理数据