OpenGL 各类库的解析gl glu glut freeglut glfw glew
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相关推荐
- OpenGL 各类库的解析 gl/glu/glut/freeglut/glfw/glew
看了网上很多资料,讲的都不是很全,正好在学这一块,好好地总结一下吧 注:在windows中,对这些库的大小写是不作要求的 gl.h gl库是核心库,gl中包含了最基本的3D函数,可以再本地电脑中的: ...
- 一张图弄懂opengl的诸多库gl glu glut freeglut glew glfw之间关系
开始学习opengl,但是看opengl编程指南不同版本之间使用了一堆不同的库,概念名称全都搅起的,越看越糊涂,遂整理的一下opengl相关的一些库的名词, 才发现是不同时期不同版本不断发展的结果. ...
- GLUT, freeGLUT, GLFW, GLEW, GLAD 关系与区别
GLUT:(来自百科)(OpenGL Utility Toolkit)是一个处理OpenGL程式的工具库,负责处理和底层操作系统的呼叫以及I/O. 是专为构建中小型OpenGL程序.虽然GLUT是适合 ...
- OpenGL与gl glu glut freeglut glew glfw封装库关系(十五)
1.概述 初学者往往搞不明白OpenGL与诸多库的联系下面一张图帮理清楚,gl glu glut freeglut glew glfw都是对OpenGL的封装而已.这些库已经将OpenGL.E ...
- opengl库中gl glu glut glaux的区别
GL GLU GLUT的关系 OpenGL中的gl库是核心库,glu是实用库,glut是实用工具库. gl是核心,glu是对gl的部分封装,glut是OpenGL的跨平台工具库. gl中包含了最基本的 ...
- GL GLU GLUT的关系
GL GLU GLUT的关系 OpenGL中的gl库是核心库,glu是实用库,glut是实用工具库. gl是核心,glu是对gl的部分封装,glut是OpenGL的跨平台工具库. gl中包含了最基本的 ...
- glew, glee与 gl glu glut glx glext的区别和关系
GLEW是一个跨平台的C++扩展库,基于OpenGL图形接口.使用OpenGL的朋友都知道,window目前只支持OpenGL1.1的涵数,但 OpenGL现在都发展到2.0以上了,要使用这些Open ...
- gl/glu/glut/gltools等的区别
发现学OpenGL总是容易忘,其实好多都只是似懂非懂的.从今天起打算重新再学.为了方便查阅,买了 <OpenGL编程指南>和<OpenGL超级宝典>两书.有兴趣的大家可以一起来 ...
- VS下glut freeglut GLtools glew等 配置教程
转自:http://www.jianshu.com/p/b49fd7fe8b5c freeglut 与 glut的差别: [源自百度百科] freeglut是GLUT ...
最新文章
- Unity 4.x游戏开发技巧集锦(内部资料)
- 使用c#訪问Access数据库时,提示找不到可安装的 ISAM
- linux 修改IP, DNS 命令
- 怎样进入服务器修改东西,进入服务器修改数据库
- javascript对话框_JavaScript中的对话框
- 测试PF_RING DNA驱动
- 电音风靡全球,不了解一下吗?
- 修复windows系统快捷方式图标变成白色的问题
- matlab鼠标中键不能放大缩小,proe鼠标中键不能缩放如何解决
- elasticsearch7.12 agg分组聚合分页同段同句查询
- [置顶] 跳槽前夕的三年总结
- Go语言管道与高并发实战
- 斗地主老是输?一起用Python做个自动出牌器,欢乐豆蹭蹭涨!
- C# npoi读execel 未能加载文件或程序集“ICSharpCode.SharpZipLib, Version=0.86.0.518, Culture=neut al, PublicKeyTok
- bzoj2163 复杂的大门
- 港科资讯 | 香港首个金融科技行业发展深入研究,就策略,创新及人才培育提出多项建议...
- matlab圆周卷积计算方法,线性卷积与圆周卷积的计算.doc
- MapReduce计数器实验
- 六个高效的任务管理app应用推荐
- uniapp 安卓 苹果 实现文字转语言
热门文章
- java换成中文_如果我们的编程替换成中文会变成怎样?
- pat 乙级 1001 害死人不偿命的(3n+1)猜想(C++)
- SDH与PDH的区别介绍
- 工控交换机和工业级交换机是怎么区别的,具体有哪些区别?分别应用在什么领域?
- 交换机组网常见九大故障问题
- 【渝粤题库】国家开放大学2021春1044合同法题目
- java怎么使异常不起作用_java – @Test(expected = Exception.class)对我不起作用,我错过了什么?...
- run在java_Java语言start和run方法的区别
- mysql主从延时这么长_MySQL主从延迟问题解决
- 机器学习分类算法_机器学习分类算法