gl.h

gl库是核心库,gl中包含了最基本的3D函数,可以再本地电脑中的: C:\Program Files (x86)\MicrosoftSDKs\Windows\v7.0A\Include\gl 路径下找到gl.h头文件,打开后可以看到其中定义的上百个相关函数。

glu.h

glu是实用库,包含有43个函数,函数名的前缀为glu。glu 为了减轻繁重的编程工作,glu对gl中的函数进行部分封装,glu函数通过调用核心库的函数,为开发者提供相对简单的用法,实现一些较为复杂的操作。如果算术好,在不使用glu库的情况下,使用gl库可以实现同样的效果。

glut.h

gult:OpenGL工具库 OpenGL Utility Toolkit。 glut是基本的窗口界面,是独立于gl和glu的,如果不喜欢用glut可使用MFC和Win32窗口等代替。但是glut是跨平台的,这就保证了我们编出的程序具有跨平台性,而使用MFC或Win32只能在windows操作系统上使用。主要包括窗口操作函数,窗口初始化、窗口大小、窗口位置等函数;回调函数:响应刷新消息、键盘消息、鼠标消息等等。 这个头文件自动包含了gl.h和glu.h,编程时不必再次包含它们。

freeglut.h

各种教程和书里常见的是闭源的GLUT。但由于GLUT的作者已经很久没更新过了(最后更新于2000年!= =),所以其他人另外做了一个接口兼容GLUT的freeglut,开源而且一直在维护中。可以理解为glut的替代库。

glew

GLUT或者FREEGLUT主要是1.0的基本函数功能;GLEW是使用OPENGL2.0之后的一个工具函数。不同的显卡公司,也会发布一些只有自家显卡才支 持的扩展函数,你要想用这数涵数,不得不去寻找最新的glext.h,有了GLEW扩展库,你就再也不用为找不到函数的接口而烦恼,因为GLEW能自动识别你的平台所支持的全部OpenGL高级扩展函数。也就是说,只要包含一个glew.h头文件,你就能使用gl,glu,glext,wgl,glx的全部函数。

glfw.h

GLFW无愧于其号称的lightweight的OpenGL框架,一个头文件,很少量的API,就完成了任务。GLFW的开发目的是用于替代glut的,从代码和功能上来看,我想它已经完全的完成了任务。它是一个轻量级的,开源的,跨平台的library。支持OpenGL及OpenGL ES,用来管理窗口,读取输入,处理事件等。因为OpenGL没有窗口管理的功能,所以很多热心的人写了工具来支持这些功能,比如早期的glut,现在的freeglut等。那么GLFW有何优势呢?glut太老了,最后一个版本还是90年代的。freeglut完全兼容glut,算是glut的代替品,功能齐全,但是bug太多。稳定性也不好(不是我说的啊),GLFW应运而生。并且glfw也是跨平台的~!

OpenGL 各类库的解析gl glu glut freeglut glfw glew相关推荐

  1. OpenGL 各类库的解析 gl/glu/glut/freeglut/glfw/glew

    看了网上很多资料,讲的都不是很全,正好在学这一块,好好地总结一下吧 注:在windows中,对这些库的大小写是不作要求的 gl.h gl库是核心库,gl中包含了最基本的3D函数,可以再本地电脑中的: ...

  2. 一张图弄懂opengl的诸多库gl glu glut freeglut glew glfw之间关系

    开始学习opengl,但是看opengl编程指南不同版本之间使用了一堆不同的库,概念名称全都搅起的,越看越糊涂,遂整理的一下opengl相关的一些库的名词, 才发现是不同时期不同版本不断发展的结果. ...

  3. GLUT, freeGLUT, GLFW, GLEW, GLAD 关系与区别

    GLUT:(来自百科)(OpenGL Utility Toolkit)是一个处理OpenGL程式的工具库,负责处理和底层操作系统的呼叫以及I/O. 是专为构建中小型OpenGL程序.虽然GLUT是适合 ...

  4. OpenGL与gl glu glut freeglut glew glfw封装库关系(十五)

    1.概述     初学者往往搞不明白OpenGL与诸多库的联系下面一张图帮理清楚,gl glu glut freeglut glew glfw都是对OpenGL的封装而已.这些库已经将OpenGL.E ...

  5. opengl库中gl glu glut glaux的区别

    GL GLU GLUT的关系 OpenGL中的gl库是核心库,glu是实用库,glut是实用工具库. gl是核心,glu是对gl的部分封装,glut是OpenGL的跨平台工具库. gl中包含了最基本的 ...

  6. GL GLU GLUT的关系

    GL GLU GLUT的关系 OpenGL中的gl库是核心库,glu是实用库,glut是实用工具库. gl是核心,glu是对gl的部分封装,glut是OpenGL的跨平台工具库. gl中包含了最基本的 ...

  7. glew, glee与 gl glu glut glx glext的区别和关系

    GLEW是一个跨平台的C++扩展库,基于OpenGL图形接口.使用OpenGL的朋友都知道,window目前只支持OpenGL1.1的涵数,但 OpenGL现在都发展到2.0以上了,要使用这些Open ...

  8. gl/glu/glut/gltools等的区别

    发现学OpenGL总是容易忘,其实好多都只是似懂非懂的.从今天起打算重新再学.为了方便查阅,买了 <OpenGL编程指南>和<OpenGL超级宝典>两书.有兴趣的大家可以一起来 ...

  9. VS下glut freeglut GLtools glew等 配置教程

     转自:http://www.jianshu.com/p/b49fd7fe8b5c              freeglut 与 glut的差别: [源自百度百科] freeglut是GLUT ...

最新文章

  1. Unity 4.x游戏开发技巧集锦(内部资料)
  2. 使用c#訪问Access数据库时,提示找不到可安装的 ISAM
  3. linux 修改IP, DNS 命令
  4. 怎样进入服务器修改东西,进入服务器修改数据库
  5. javascript对话框_JavaScript中的对话框
  6. 测试PF_RING DNA驱动
  7. 电音风靡全球,不了解一下吗?
  8. 修复windows系统快捷方式图标变成白色的问题
  9. matlab鼠标中键不能放大缩小,proe鼠标中键不能缩放如何解决
  10. elasticsearch7.12 agg分组聚合分页同段同句查询
  11. [置顶] 跳槽前夕的三年总结
  12. Go语言管道与高并发实战
  13. 斗地主老是输?一起用Python做个自动出牌器,欢乐豆蹭蹭涨!
  14. C# npoi读execel 未能加载文件或程序集“ICSharpCode.SharpZipLib, Version=0.86.0.518, Culture=neut al, PublicKeyTok
  15. bzoj2163 复杂的大门
  16. 港科资讯 | 香港首个金融科技行业发展深入研究,就策略,创新及人才培育提出多项建议...
  17. matlab圆周卷积计算方法,线性卷积与圆周卷积的计算.doc
  18. MapReduce计数器实验
  19. 六个高效的任务管理app应用推荐
  20. uniapp 安卓 苹果 实现文字转语言

热门文章

  1. java换成中文_如果我们的编程替换成中文会变成怎样?
  2. pat 乙级 1001 害死人不偿命的(3n+1)猜想(C++)
  3. SDH与PDH的区别介绍
  4. 工控交换机和工业级交换机是怎么区别的,具体有哪些区别?分别应用在什么领域?
  5. 交换机组网常见九大故障问题
  6. 【渝粤题库】国家开放大学2021春1044合同法题目
  7. java怎么使异常不起作用_java – @Test(expected = Exception.class)对我不起作用,我错过了什么?...
  8. run在java_Java语言start和run方法的区别
  9. mysql主从延时这么长_MySQL主从延迟问题解决
  10. 机器学习分类算法_机器学习分类算法