OpenGL渲染架构

OpenGL渲染架构图

渲染架构图.png
  • OpenGL渲染架构图分为客户端和服务端两部分
  • 客户端是Application程序和OpenGL的API,在CPU中执行,负责传递Attributes、Uniforms、Texture Data。
  • 服务端负责接收客户端数据进行渲染,在GPU中执行。
  • Attributes变量是只能在vertex shader(顶点着色器)中使用的变量,一般用来表示顶点的坐标,法线,顶点的颜色等。
  • Uniforms就像是C语言中的常量,Shader只能用不能修改,一般用来表示变化矩阵、材质、光照参数、颜色信息等。
  • Texture Data(纹理) 现实生活中,纹理最通常的作用是装饰我们的物体模型,它就像是贴纸一样贴在物体表面,使得物体表面拥有图案。但实际上在OpenGL中,纹理的作用不仅限于此,它可以用来存储大量的数据,一个典型的例子就是利用纹理存储地形信息。
  • Primitive Assembly(图元装配)把顶点着色器输出的顶点组合成点,线段或者三角形。
  • 光栅化 图元装配之后的图形映射到屏幕上,确定在屏幕上每个像素点的位置。
  • Vertex Shader可以接收Attributes、Uniforms、Texture Data。
  • Fragment Shader(片元着色器)只可以接收Uniforms、Texture Data,不能直接接收Attributes。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容