美文网首页
OpenGL渲染架构理解

OpenGL渲染架构理解

作者: K哥的贼船 | 来源:发表于2020-07-12 10:52 被阅读0次

OpenGL中的渲染架构如下图


OpenGL中的渲染架构

这个图主要分为两部分,Client和Server。

  • Client指的是应用层代码(比如iOS)和OpenGL的API。是在CPU中。
  • Server指的是OpenGL底层API,可以直接驱动GPU渲染的,在GPU中。

在Server中,iOS开发者通过传入数据对顶点着色器和片元着色器自定义编程,无法对图元装配、渲染模块自定义,这是由系统自己做。

那么客户端的代码怎么把数据传入到顶点着色器、片元着色器的呢?
客户端和服务器数据传输有三个通道:Attributes、Uniforms、Texture Data

通道名 传输的数据类型 传输的着色器
Attributes 顶点坐标(x、y、z)、光照坐标、投影矩阵、模型矩阵、纹理坐标 顶点着色器
Uniforms 统一批次的数据 顶点着色器、片元着色器
Texture Data 纹理数据 顶点着色器、片元着色器
  • Attributes:主要用来传输数据,常用的顶点坐标、光照坐标、投影矩阵、模型矩阵、纹理坐标(图片映射坐标,只能经由顶点着色器桥接传入片元着色器)等。
  • Uniforms:用来传输统一批次的数据,不经常改动的数据,比如变换矩阵、颜色、时间戳等。
  • Texture Data:用来传输纹理数据,可以传入顶点着色器、片元着色器。片元着色器中处理纹理数据,虽然可以传入顶点着色器,但是顶点着色器不处理纹理的数据,所以没什么意义。

相关文章

  • OpenGL渲染架构

    OpenGL的渲染架构图 OpenGL渲染主架构 OpenGL渲染架构分为客户端(Client)和服务端(Serv...

  • OpenGL/OpenGL ES(二) 渲染架构

    1. 渲染架构图 上图是 OpenGL 渲染的大致架构,从图中我们可以看出,OpenGL 渲染架构分为Client...

  • OpenGL渲染架构理解

    OpenGL中的渲染架构如下图 这个图主要分为两部分,Client和Server。 Client指的是应用层代码(...

  • 视频特效学习02- OpenGL渲染基础

    学习目标: 1.OpenGL渲染架构(掌握) OpenGL数据传递的3种方式(理解) OpenGL提供的着色器(掌...

  • OpenGL渲染架构以及三种数据传递方式

    一、OpenGL渲染架构 了解OpenGL渲染架构对我们学习OpenGL有非常重要的作用。话不多说,直接上图: 图...

  • 04-OpenGL渲染基础

    目标: 掌握OpenGL渲染架构图 理解OpenGL数据传递的三种方式 掌握OpenGL提供的存储着色器 正投影 ...

  • 3. OpenGL渲染基础

    一、OpenGL渲染架构图 1. OpenGL渲染架构图: 2. 数据传递: 从上图可以看出OpenGL的数据传递...

  • OpenGL渲染架构

    OpenGL渲染架构 OpenGL的渲染架构image.png 渲染流程:设置顶点数据和其他参数。在顶点着色器中进...

  • 3、OpenGL渲染架构

    OpenGL渲染架构 渲染架构图 主要分为两大模块 Client:是指常见的ios代码和OpenGL API方法。...

  • openGL着色器的渲染流程

    openGL渲染架构 上图为openGL渲染架构图 Attributes属性 属性就是对每一个顶点都要做改变的数据...

网友评论

      本文标题:OpenGL渲染架构理解

      本文链接:https://www.haomeiwen.com/subject/hvdgcktx.html