OpenGL 头文件,库文件

1.OpenGL

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

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

        glx,agl,wgl是针对不同窗口系统的函数。

        aux库,窗口管理、鼠标键盘事件处理等函数, 若干个基本的三维几何对象的创建函数。

        glut是跨平台的OpenGl程序的工具包,比aux功能强大(aux很大程度上已被glut库取代)

        扩展函数库是硬件厂商为实现硬件更新利用OpenGL的扩展机制开发的的函数。

2.glut:OpenGL工具库 OpenGL Utility Tookit   (译 OpenGL实用工具包)

       这部分函数以glut开头,主要包括窗口操作函数、窗口初始化、窗口大小、窗口位置等函数;

       回调函数:响应刷新消息、键盘消息、鼠标消息、定时器函数等;

       创建复杂三维物体;菜单函数;程序运行函数。glut对应的开源实现是freeglut。

3.glew---------------------------自动识别你的平台所支持的全部OpenGl高级扩展函数

       GLUT或者FREEGLUT主要是1.0的基本函数功能;GLEW是使用OPENGL2.0之后的一个工具函数。

       不同的显卡公司,也会发布一些只有自家显卡才支持的扩展函数,你要想用到这些函数,不得不去寻找最新的glext.h。

       有了GLEW扩展库能自动识别你的平台所支持的全部OpenGl高级扩展函数。只要包含一个glew.h头文件,

                         你就能使用gl、glu、glex、wgl、glx、的u全部函数。

       glad是glew的升级版,用哪个都行,区别是glew比较老,glad比较新。

4.glfw------------------------------跨平台,管理窗口,读取输入,处理事件。

       glfw是OpenGL的轻量级框架,只负责跨平台必要做的事情。只有一个头文件,很少量的API,就完成了任务。

       glfw的开发目的是用于替代glut。

       glfw是一个轻量级,开源的,跨平台的库。支持OpenGL以及OpenGL ES,用来管理窗口,读取输入,处理事件。

       因为OpenGL没有窗口管理的功能,于是有人编写工具来支持这些功能,比如早起glut,现在的freeglut。

       glut太老,freeglult完全兼容glut,算是glut的替代品,功能齐全,但bug太多,稳定性不好,glfw应运而生。

       glfw是glut的升级和改进,glew包含了OpenGL所需的核心。

原文地址:https://www.cnblogs.com/Ziyo/p/9622941.html