三、OpenGL准备
本系列中使用到不少三方库。基于后续学习并掌握效果的原因,所有的三方库都是开源的。本系列中主要用的三方库包含Qt、Glfw、Glad、LFW、Stb_image、Assimp等部分三方库,如有遗漏再后续中补充。
本系列中使用到不少三方库。基于后续学习并掌握效果的原因,所有的三方库都是开源的。本系列中主要用的三方库包含Qt、Glfw、Glad、LFW、Stb_image、Assimp等部分三方库,如有遗漏再后续中补充。
1、Qt
Qt是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,Qt很容易扩展,并且允许真正地组件编程。
官网:https://www.qt.io/
2、GLFW
GLFW 是一个 OpenGL 的应用框架同时也是一个专门针对OpenGL的C语言库,支持 Linux 和 Windows。GLFW 主要用来处理特定操作系统下的特定任务,例如 OpenGL 窗口管理、分辨率切换、键盘、鼠标以及游戏手柄、定时器输入、线程创建等等。
GLFW提供了一些渲染物体所需的最低限度的接口。本系列中只需要它提供允许用户创建OpenGL上下文、定义窗口参数以及处理用户输入等功能。
官网:https://www.glfw.org/
3、Glad
GLAD是当前最新的用来访问OpenGL规范接口的第三方库。提供以下功能实现基础渲染。
使用它的接口访问OpenGL的接口。
官网:https://glad.dav1d.de/。
4、Stb_image
stb_image.h 是 Sean Barrett 的一个非常流行的单头文件图像加载库,它能够读写大部分流行的文件格式,支持文件格式如下:
- png
- jpg
- tga
- bmp
- psd
- gif
- hdr
- pic
除了从文件加载图片,stb_image 还支持从内存中加载图片,通过 stbi_load方法读取图片。
加载完图片之后,stb_image 还提供了相应的释放方法 stbi_image_free,实际上就是把 free 封装了一下而已。下载地址:https://github.com/nothings/stb/blob/master/stb_image.h
5、GLM
GLM是OpenGL Mathematics的缩写,它是一个只有头文件的坐标转换的三方库。我们只需包含对应的头文件就行了,不用链接和编译。GLM可以在它们的网站上下载。把头文件的根目录复制到你的includes文件夹,然后你就可以使用这个库了。
官网:https://glm.g-truc.net/
6、Assimp
Assimp是一个模型加载的三方库。Assimp库就可以帮我们解决模型加载的问题,当然也支持几乎所有的格式,其内部将不同的模型文件都转换为一个统一的数据结构,只要Assimp加载完了模型文件,我们就可以从Assimp上获取所有我们需要的模型数据
下载地址:https://github.com/assimp/assimp/
本文章引用或借鉴网上相关资料,感谢大家的分享。
有问题请下方评论,转载请注明出处,并附有原文链接,谢谢!如有侵权,请及时联系。
更多推荐
所有评论(0)