OpenGL的渲染架构

2019-05-14  本文已影响0人  昵称是乱起的

1. 一个以三角形渲染为例的简单架构图

image.png

1.1 客户端-服务器

1.2 着色器

渲染一个三个顶点的三角形的步骤:

顶点着色器执行三次,这三次是同时进行的。
图元组合将三个顶点组合在一起。
对三角形逐个片段进行光栅化。
每个片段通过片段着色器进行填充。
片段着色器输出我们在屏幕上看到的最终的颜色值。

1.3 为着色器提供数据的三种方式

1.3.1 属性
1.3.2 Uniform值
1.3.3 纹理
1.3.4 输出

2. OpenGL注意

由于OpenGL是基于C的API,因此它非常便携且受到广泛支持。作为C API,它与基于Objective-C的Cocoa应用程序无缝集成。OpenGL提供应用程序用于生成2D或3D图像的函数。您的应用程序将渲染的图像呈现给屏幕或将它们复制回自己的内存。
OpenGL规范没有提供自己的窗口层。它依赖于OS X定义的功能来将OpenGL绘图与窗口系统集成。您的应用程序创建OS X OpenGL渲染上下文并将渲染目标附加到其上(称为可绘制对象)。渲染上下文管理OpenGL状态更改和通过调用OpenGL API创建的对象。

上一篇 下一篇

猜你喜欢

热点阅读