看了网上很多资料,讲的都不是很全,正好在学这一块,好好地总结一下吧

注:在windows中,对这些库的大小写是不作要求的
gl.h

gl库是核心库,gl中包含了最基本的3D函数,可以再本地电脑中的: C:\Program Files (x86)\Microsoft SDKs\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也是跨平台的~!
————————————————
版权声明:本文为CSDN博主「MISAYAONE」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/misayaaaaa/article/details/73087464

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

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

    gl.h gl库是核心库,gl中包含了最基本的3D函数,可以再本地电脑中的: C:\Program Files (x86)\MicrosoftSDKs\Windows\v7.0A\Include\gl ...

  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. 最全面的缓存架构设计
  2. shell实现批量在多台windows服务器上执行同一命令并获取返回结果
  3. AI:2020年6月北京智源大会演讲视频回放集合——分享博主体会与总结
  4. Thymeleaf提取公共页面(从实例入手,以inspinia模板为例)
  5. 两道递推公式题的解题报告
  6. lvs系列之dr(二)
  7. Windows下静态链接库的使用
  8. 【bfs】极其简单的最短路问题
  9. centos7.3 docker安装grafana
  10. linux系统ip占用,IP地址被占用的问题,折腾我好几天了 (已解决)
  11. clickhouse注入的利用
  12. Realsense D435i 运行 Vins-fusion
  13. DEL: 2012年每月花销
  14. 网站时间显示——基于Date
  15. 库克回应乔纳森离职:不影响苹果继续创新
  16. 林期苏曼属性标签编辑_标签打印软件如何打印指定日期
  17. 1. MySQL基础概念及mysql安装,从MySQL获得帮助 及视频下载地址
  18. datanode启动后闪退_网友吐槽12306 App:不同意获取个人信息就会“闪退”
  19. 最近学到一些linq和面向对象的经验分享
  20. 【SpringBoot_ANNOTATIONS】组件注册 03 FilterType

热门文章

  1. android 市场自动安装软件,Android 应用中跳转到应用市场评分示例
  2. 用c语言做教学课程安排,C语言入门课程安排
  3. 《mongodb权威指南》学习
  4. JVM学习笔记(四)------内存调优
  5. Spring容器中Bean的作用域
  6. 程序员面试题精选100题(16)-O(logn)求Fibonacci数列[算法]
  7. 跟我一起写 Makefile(十)
  8. 【OpenCV3】角点检测——cv::goodFeaturesToTrack()与cv::cornerSubPix()详解
  9. iOS应用代码注入防护
  10. Tomcat的设置1——设置根目录