OpenGL中gl,glu,glut的关系(扩展)
OpenGL中的gl库是核心库,glu是实用库,glut是实用工具库。
gl库是核心,gl中包含了最基本的3D函数,glu是对gl的部分封装,而glu似乎对gl的辅助,如果算术好,在不使用glu的情况下,使用gl可以实现同样的效果。glu包含有43个函数,函数名前缀为glu。
glut是基本的窗口界面,是独立于gl和glu的,如果不喜欢用glut可使用MFC和Win32窗口等代替。但是glut是跨平台的,这就保证了我们编出的程序具有跨平台性,而使用MFC或Win32只能在windows操作系统上使用。
这个库提供了创建窗口,处理键盘和鼠标事件,设置调色板等OpenGL本身不提供,但在编写OpenGL程序时又经常用到的功能,目前许多OpenGL教程使用这个库来编写演示程序。一些编译系统不直接提供这种库(例如VC系列),需要单独下载安装(有需要可以联系我)。这个头文件自动包含了<GL/gl.h>和<GL/glu.h>,编程时不必再次包含它们。
<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的关系(扩展)相关推荐
- 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中包含了最基本的 ...
- OpenGL与gl glu glut freeglut glew glfw封装库关系(十五)
1.概述 初学者往往搞不明白OpenGL与诸多库的联系下面一张图帮理清楚,gl glu glut freeglut glew glfw都是对OpenGL的封装而已.这些库已经将OpenGL.E ...
- OpenGL中常用的 GLUT 函数
GLUT函数说明 一.初始化 void glutInit(int* argc,char** argv) 这个函数用来初始化GLUT库.对应 main 函数的形式应是: int main(int arg ...
- OpenGL中gl,glu,glut的区别
OpenGL中的gl库是核心库,glu是实用库,glut是实用工具库, gl是核心,glu是对gl的部分封装,glut是OpenGL的跨平台工具库,gl中包含了最基本的3D函数,而glu似乎对gl的辅 ...
- 一张图弄懂opengl的诸多库gl glu glut freeglut glew glfw之间关系
开始学习opengl,但是看opengl编程指南不同版本之间使用了一堆不同的库,概念名称全都搅起的,越看越糊涂,遂整理的一下opengl相关的一些库的名词, 才发现是不同时期不同版本不断发展的结果. ...
- OpenGL 各类库的解析 gl/glu/glut/freeglut/glfw/glew
看了网上很多资料,讲的都不是很全,正好在学这一块,好好地总结一下吧 注:在windows中,对这些库的大小写是不作要求的 gl.h gl库是核心库,gl中包含了最基本的3D函数,可以再本地电脑中的: ...
- OpenGL 各类库的解析gl glu glut freeglut glfw glew
gl.h gl库是核心库,gl中包含了最基本的3D函数,可以再本地电脑中的: C:\Program Files (x86)\MicrosoftSDKs\Windows\v7.0A\Include\gl ...
- glew, glee与 gl glu glut glx glext的区别和关系
GLEW是一个跨平台的C++扩展库,基于OpenGL图形接口.使用OpenGL的朋友都知道,window目前只支持OpenGL1.1的涵数,但 OpenGL现在都发展到2.0以上了,要使用这些Open ...
最新文章
- 【开发环境】Mac 安装 PyCharm 开发环境 ( 下载 PyCharm | 安装 PyCharm )
- 【解决方案】无法将grub-efi-amd64-signed软件包安装到/target/【安装Ubuntu】
- Linux 条件变量使用细节(为何调用 pthread_cond_wait 前加锁,函数内部解锁,返回时又加锁)
- 网页性能优化03-函数防抖
- 0708---oop学习--用户密码管理
- 读卡距离和信号强度两方面来考虑
- 利用SpringBoot+RabbitMQ,实现一个邮件推送服务
- 设计模式之单例模式-C++
- 计算机语言列表,计算机语言java中得List
- 毛子说PostgreSQL 需要实现多主
- 基于Krpano的Hotspot热区插件·第二版
- JDK源码阅读调试环境搭建
- Ubuntu下截图贴图软件——flameshot
- cad卸载不干净_如何才能干净的卸载顽固软件?不给恶意软件留机会!
- 去了一趟少林寺 竟然发现...
- 【Oracle】ngrok 映射数据库地址为外网
- C++实现 L1-054 福到了 (15分)
- 做好数据全生命周期管理,实现数据资产化
- Java web(简单的servlet计算器)网页计算器
- 三月不开单,开单吃三月说的是你吗?
热门文章
- 非诚勿扰php灯全灭,“收破烂”小伙上非诚勿扰,话没完灯全灭,孟非:这破烂你们没有...
- 如何锁定EXCEL表格而保留某些单元格可以编辑
- C语言0x6c等于多少,6个变态的C语言Hello World程序——更好的理解C
- 企业会计准则2020版pdf_药二2020年执业药师真题回忆版(完整PDF版)
- linux系统之禁用usb口
- 计算机公共基础知识实验报告,MIPS单周期CPU实验报告总结.doc
- 第11章 下载xkcd的漫画
- 【Mybatis】Mybatis批量插入操作【详细教程】
- Tasks(任务), microtasks(微任务), queues(队列) and schedules(回调队列)
- 触发器与存储过程的区别