《图形编程技术学习》(九)OpenGL的功能及其两种学习路线

一.OpenGL是什么?

.Open Graphics Library(开放的图形编程库)

.调用图形硬件的程序接口

     .大约150个函数组成,用户可以调用来完成各种绘图任务

《图形编程技术学习》(九)OpenGL的功能及其两种学习路线

二.OpenGL能做什么?

.变换(几何变化,投影,视口变换)

.光照与材质

.纹理映射

.图形功能(anti-aliasing(反混淆),fog, blending(混合)...)

.特效(Depth Cue(深度暗示),Motion Blur(运动模糊)...)

.建模(basic primitives、NURBS)

. ......

.注意:OpenGL不是用来建模的,而是用来渲染的。

.学习OpenGL绝不能只是学习一堆离散的函数,而必须很好地理解图形流水线的整体流程及各个环节,否则学习OpenGL函数如同盲人摸象。

.OpenGL是一个状态机

     .整个绘制操作会按照固定的流程进行,如同流水线。

     .OpenGL函数只是用来设置这条流水线的一系列状态参数,而并不是用来真正执行绘制操作的。

三.图形流水线

《图形编程技术学习》(九)OpenGL的功能及其两种学习路线

四.图形流水线的发展

《图形编程技术学习》(九)OpenGL的功能及其两种学习路线

五.OpenGL的两种编程模式

《图形编程技术学习》(九)OpenGL的功能及其两种学习路线

六.OpenGL的两种学习路线

1.传统方式

  .学习固定流水线,然后过渡到shader编程

  .《opengl编程指南》第7版(红宝书)--------第8版开始转入现代方式

  .Nehe教程

2.现代方式

   .直接学习Shader编程模式

   .《OpenGL》超级宝典 (蓝宝书)

   . http://www.learnopengl.com/(glfw + glad)
   . http://ogldev.atspace.co.uk/(freeglut + glew)

3.我们选择传统方式进行学习,理由:

      (1)   现在依然有大量的程序是固定流水线模式;

      (2)传统方式可以让我们更容易理解图形流水线。

4.我们的方式:

     .原理-------编程-------回归原理

相关学习链接:

• 《计算机图形学》,清华胡事民教授,来源:爱课 程

• 《计算机图形学导论》加州伯克利大学 | 分类: 计算机(568),来源:学堂在线