初始OpenGL

Posted mikecao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初始OpenGL相关的知识,希望对你有一定的参考价值。

OpenGL到底是什么?

一般它被认为是一个API,包含一系列操作图形,图像的函数。然而,它并不是一个API,而是Khronos组织制定并维护的规范。

OpenGL规定了每个函数如何执行,以及它们的输出值。由于OpenGL的大多数实现都是由显卡厂商编写的,当产生一个bug时通常可以通过升级显卡驱动来解决。

 

核心模式和立即渲染模式?

早期的OpenGL使用立即渲染模式(Immediate mode,也就是固定渲染管线),OpenGL的大多数功能都被库隐藏起来,开发者很少能控制OpenGL如何进行计算的自由。

当使用OpenGL的核心模式时,OpenGL迫使我们使用现代的函数。现代函数要求使用者真正理解OpenGL和图形编程,它有一些难度,然而提供了更多的灵活性,更高的效率,更重要的是可以更深入的理解图形编程。

 

什么是状态机?(本质)

OpenGL自身是一个巨大的状态机(State Machine):一系列的变量描述OpenGL此刻应当如何运行。OpenGL的状态通常被称为OpenGL上下文(Context)。我们通常使用如下途径去更改OpenGL状态:设置选项,操作缓冲。最后,我们使用当前OpenGL上下文来渲染。

以上是关于初始OpenGL的主要内容,如果未能解决你的问题,请参考以下文章

OpenGLOpenGL中的Buffer的巧妙使用

opengl基础

OpenGL ES 系列之开篇

Android OpenGL ES开发入门

通过OpenGL理解前端渲染原理

通过OpenGL理解前端渲染原理