第一章 OpenGL 概述
OpenGL 流程:顶点数据 ==》顶点着色器 ==》图元装配 ==》光栅化 ==》 片段着色器 ==》混合测试 ==》输出到屏幕。
顶点数据可以看成应用程序阶段,顶点数据可以是,模型(model),一个三维场景 (Scene)。
从顶点数据到顶点着色器包括了数据怎么发送到 GPU 的内存,需要向 OpenGL 解释数据的内存布局,比如代表顶点,向量,颜色等等的数据需要在应用程序阶段解释给 OpenGL 。方便 OpenGL 去执行,到顶点着色器。顶点着色器输出的数据给到图元装配一般会有线性插值,在装配图元的时候会产生插值。这就可以解释三角形色盘现象。线性插值。
在 OpenGL 中,有两个着色器是必须要的,顶点着色器,片段着色器。
可以这么理解:OpenGL 程序可以当成客户端,通过特殊的传递信息到服务器,服务器可以粗略的看成操作系统中处理图形的硬件,显卡。关于显示的数据,为什么会显示,显示的数据是什么,framebuffer。一块存储在显存中的数据块,这个就是显示的内容,显示器映射到显卡的一块区域。
当我们缓存完毕就可以去调用 OpenGL 绘制命令去绘制对应的图元。glDrawArrays() 这个是不带索引的绘制,这是一条最基础的绘制命令。
顶点着色器和细分着色器以及几何着色器决定了一个图元位于屏幕的什么位置,而片段着色器使用这些信息来决定某一个片段是什么颜色。
逐片段操作,深度测