OpenGL学习笔记-第一节

OpenGL是Khronos组织(https://www.khronos.org/)制定并且维护的规范,这个规范严格规定了每个操作图形、图形的函数该如何执行,以及它们的输出值,但并不关注函数本身如何实现。函数具体如何实现由OpenGL库的开发者(一般都是显卡的生产商)来决定。

OpenGL本身是一个状态机,也就是说它会一直按照某种特定的方式和参数运行,直至改变参数或者状态的时候,它会改变当前状态进入另一个状态(简单例子就是画点和线,设置为画点的时候会每帧不断地去画点,直至设置为画线,然后下一帧又开始不断地画线)。

OpenGL基于C语言进行开发,但是因为C语言不易被翻译到其他的高级语言,所以OpenGL开发的时候引入了包含“对象(Object)”的一些抽象层,方便进行渲染的时候数据赋值保存等。

立即渲染模式(固定渲染管线):

优势:

  • 绘制图形方便
  • 容易使用和理解

劣势:

  • 效率低下
  • 功能大多被库隐藏起来,开发者*度不高
  • 抽象掉了一些细节导致很难让人把握OpenGL具体是如何运作的

核心模式:

优势:

  • 使用现代函数,灵活性和效率更高
  • 可以深入理解图形编程

劣势:

  • 学习成本提升
上一篇:Servlet提交数据


下一篇:js 继承方式(一)