GL GLU GLUT的关系

OpenGL中的gl库是核心库,glu是实用库,glut是实用工具库。

gl是核心,glu是对gl的部分封装,glutOpenGL的跨平台工具库。

gl中包含了最基本的3D函数,而glu似乎对gl的辅助,如果算数好,不用glu的情况下,也是可以做出同样的效果。

glut是基本的窗口界面,如果不喜欢用glut可以用MFCWin32窗口等代替,但是glut是跨平台的,这就保证了我们编出的程序是跨平台的,如果用MFC或者Win32只能在windows操作系统上使用。选择OpenGL的一个很大原因就是因为它的跨平台性,所以我们可以尽量的使用glut库

GLUT不是 OpenGL 所必须的,但它会给我们的学习带来一定的方便。

首先,需要包含头文件#include <gl/glut.h>,这是 GLUT的头文件。本来 OpenGL 程序一般还要包含<gl/gl.h><gl/glu.h>,但GLUT 的头文件中已经自动将这两个文件包含了,不必再次包含。

各种库

OpenGL 实用库 : 43个函数,以glu开头,包括纹理映射、坐标变换、多边形分化、绘制一些如椭球、圆柱、茶壶等简单多边形实体部分函数象核心函数一样在任何OpenGL平台都可以应用。

OpenGL辅助库: 31个函数,以aux开头。

OpenGL函数库相关的API有核心库(gl)实用库(glu)辅助库(aux)实用工具库(glut)窗口库(glx、agl、 wgl)和扩展函数库等。

gl是核心,glu是对gl的部分封装。

glxaglwgl 是针对不同窗口系统的函数。

glut是为跨平台的OpenGL程序的工具包,比aux功能强大。

几种常见的“奇异”头文件:

<gl/glaux.h>GLAUX(OpenGL辅助库)所使用的函数和常量声明。目前这个库已经过时,只有比较少的编译环境中有提供,例如VC系列。在VC系列编译器中,使用这个头文件之前必须使用#include <windows.h>或者具有类似功能的头文件。

<gl/glext.h>:扩展头文件。因为微软公司对OpenGL的支持不太积极,VC系列编译器虽然有<gl/gl.h>这个头文件,但是里面只有OpenGL 1.1版本中所规定的内容,而没有OpenGL 1.2及其以后版本。对当前的计算机配置而言,几乎都支持OpenGL 1.4版本,更高的则到1.5, 2.0, 2.1,而VC无法直接使用这些功能。为了解决这一问题,就有了 <gl/glext.h> 头文件。这个头文件提供了高版本OpenGL所需要的各种常数声明以及函数指针声明。

<gl/wglext.h>:扩展头文件。与<gl/glext.h>类似,但这个头文件中只提供适用于Windows系统的各种OpenGL扩展所使用的函数和常量,不适用于其它操作系统。

OpenGL库中gl、glu、glut、glaux的关系相关推荐

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

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

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

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

  3. GL GLU GLUT的关系

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

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

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

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

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

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

    gl.h gl库是核心库,gl中包含了最基本的3D函数,可以再本地电脑中的: C:\Program Files (x86)\MicrosoftSDKs\Windows\v7.0A\Include\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. [转]OpenGL库介绍

    原帖地址:http://blog.csdn.net/yyyuhan/archive/2008/01/15/2045009.aspx 开发基于OpenGL的应用程序,必须先了解OpenGL的库函数.它采 ...

最新文章

  1. 正则表达式中的*,+,?以及\w和\W的区别等常见问题的总结
  2. Java NIO系列教程(一) Java NIO 概述
  3. 动态矩阵控制 MATLAB代码
  4. 用grub4dos修复grub
  5. 7.5 obtaining database metadata
  6. python内核_python内核_python内核语言_python版本内核 - 云+社区 - 腾讯云
  7. carmaker的弱智算法
  8. 我的自学ROS历程3-3-Vsual Studio code安装
  9. java实现多文件批量下载总结
  10. python竖线_python 读取竖线分隔符的文本方法
  11. 如何完全卸载oracle
  12. [附源码]计算机毕业设计Python+uniapp基于Android的大学生健康管理APPo1q3h(程序+源码+LW+远程部署)
  13. R语言学习笔记——入门篇:第三章-图形初阶
  14. 毕业设计 单片机智能识别机器人 - 物联网 深度学习 AI 图像分类
  15. PS插件-2.5D Generator 2.0高级版 一键直接实现扁平图转2.5D立体风格
  16. 测试酒的真假软件,茅台防伪溯源系统软件
  17. magick API 接口函数中文注解- imagick类
  18. 如何读取PSD文件(photoshop)的图层......
  19. [计算机数值分析]利用秦九韶算法求多项式的值
  20. CTFHub web 文件上传- 无限制

热门文章

  1. U盘安装Kali linux进行抓包破解或阻断wpa/wpa2加密WIFI
  2. 360欺骗4亿网民 胡乱解读“超级工厂”病毒 ——卡巴斯基关于360胡乱解读“超级工厂”的声明
  3. 列举一些站长工具中常用的SEO工具和百度指数
  4. lightroom 闪退_Lightroom从入门到精通系统课程,提升您图片后期处理的速度
  5. java有哪些网校,【有哪些必备的Java的基础知识?想学好这个语言就要了解这些】- 环球网校...
  6. Ubuntu系统下生成Android app系统签名
  7. 7-15 十进制转十六进制
  8. ipad2/3分辨率
  9. python函数库 阶跃 信号函数 调用_python 已知响应函数求单位阶跃响应或脉冲响应...
  10. matlab一直系统函数画脉冲响应,Matlab 相关分析法求系统脉冲响应(三)