openGL着色器的渲染流程

openGL渲染架构

openGL渲染架构图

上图为openGL渲染架构图

Attributes属性

属性就是对每一个顶点都要做改变的数据元素,只能直接传递到顶点着色器Vertex Shader
属性可以是顶点位置、纹理坐标、颜色值、光照等
特点:

  • 属性值可以是浮点数、整数、布尔数据
  • 属性总是以四维向量的形式进行内部存储的
  • 这些属性是应用于每个顶点的,每个顶点都要做出改变,它们的值也可以重复
uniform值

uniform值是一种对整个批次属性都取统一的单一值,可以传递到顶点着色器和片元着色器
它是不变的,设置uniform变量,紧接着就会发送一个图元批次命令,uniform变量实际上可以无数次限制地使用。可以设置一个用于整个表面的颜色值,或是设置一个时间值
这里的uniform变量是每个批次改变一次,而不是每个顶点改变一次
uniform值可以是浮点、整数、布尔值,也可以是标量类型、矢量类型、uniform矩阵

纹理数据Texture Data

在顶点着色器、片元着色器中都可以对纹理数据进行采样和筛选。
比如,片元着色器对一个纹理进行采样,然后在一个三角形表面使用这个渲染的纹理数据

图片渲染流程:
图片渲染流程
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容