当前位置: 首页 > article >正文

【openGL学习笔记】----GLFW、GLAD环境配置

glew、glad、freeglut、glfw的区别?

  1. glew(The OpenGL Extension Wrangler Library)是对底层OpenGL接口的封装,可以让你的代码跨平台。
  2. glad与glew作用相同,可以看作它的升级版。
  3. Freeglut(OpenGL Utility Toolkit)允许用户创建OpenGL上下文、定义窗口参数以及处理用户输入等
  4. glfw(Graphics Library Framework)是Freeglut升级版,作用基本一样。

通常来说glad和glfw配合使用来提供更高效的渲染和更好的跨平台支持‌。

配置GLFW

GLFW可以从它官方网站的下载页上获取。GLFW已经提供为Visual Studio(2012到2022都有)预编译好的二进制版本和相应的头文件。

VS2022链接GLFW

  1. 首先进入Project Properties(工程属性,在解决方案窗口里右键项目),然后选择VC++ Directories(VC++ 目录)选项卡(如下图)。在下面的两栏添加目录:在这里插入图片描述
    这里可以把自己的目录加进去,让工程知道到哪去搜索。
    需要手动把目录加在后面,也可以点击需要的位置字符串,选择选项,之后会出现类似下面这幅图的界面,图是选择Include Directories(包含目录)时的界面:
    在这里插入图片描述
    这里可以添加任意多个目录,IDE会从这些目录里寻找头文件。所以只要将GLFW的Include文件夹加进路径中,就可以使用<GLFW/…>来引用头文件。库文件夹也是一样的。
  2. 现在VS可以找到所需的所有文件了。最后需要在Linker(链接器)选项卡里的Input(输入)选项卡里添加glfw3.lib这个文件:在这里插入图片描述
    要链接一个库我们必须告诉链接器它的文件名。库名字是glfw3.lib,我们把它加到Additional Dependencies(附加依赖项)字段中(手动或者使用选项都可以)。这样GLFW在编译的时候就会被链接进来了。

配置GLAD

GLAD是一个开源的库,使用了一个在线服务定义OpenGL的版本,并且根据这个版本加载所有相关的OpenGL函数。

  1. 打开GLAD的在线服务,将语言(Language)设置为C/C++,在API选项中,选择3.3以上的OpenGL(gl)版本(更新的版本也能用)。
  2. 将模式(Profile)设置为Core,并且保证选中了生成加载器(Generate a loader)选项。现在可以先(暂时)忽略扩展(Extensions)中的内容。
  3. 都选择完之后,点击生成(Generate)按钮来生成库文件。
  4. GLAD提供了一个zip压缩文件,包含两个头文件目录,和一个glad.c文件。将两个头文件目录(glad和KHR)复制到配置Include目录中),并添加glad.c文件到工程中。
  5. 加载头文件
#include <glad/glad.h> 

编译没有报错说明已经配置成功。


http://www.kler.cn/news/350943.html

相关文章:

  • 专业135+总分400+西安交通大学815869(原909)信号与系统考研经验电子信息与通信工程,真题,大纲,参考书
  • Vue实现手风琴功能组件 vue 实现折叠面板功能
  • npm install 安装很慢怎么办?
  • OpenCV视觉分析之运动分析(2)背景减除类:BackgroundSubtractorKNN的使用
  • 我谈Sobel算子与高斯一阶微分的关系
  • streamlit 实现 flink SQL运行界面
  • 【中医揭秘】烦躁不安的根源与调养秘籍,让你重获内心宁静
  • SSL: CERTIFICATE_VERIFY_FAILED解决方法
  • 以下是为升级到 Spring Boot 3 制定测试计划
  • 「从零开始的 Vue 3 系列」:第十三章——架构一个Vue项目(简单版)
  • 2024 年江西省职业院校技能大赛应用软件系统开发赛项竞赛规程(高职组)
  • 网络安全知识核心20要点
  • 论文速读:通过目标感知双分支蒸馏进行跨域目标检测(CVPR2022)
  • 在Openshift(K8S)上通过EMQX Operator部署Emqx集群
  • 【微信小程序_16_上拉触底相关功能补充】
  • Github优质项目推荐(第八期)
  • 进行SEDEX认证需要准备哪些资料?
  • 制造已然走出国门,数据如何走向全球?
  • 元器件行业常用软件推荐-加速度JSUDO
  • Android12 Settings系列(一)二级设置界面中自定义Fragment使用一级菜单中的图标显示异常
  • 《语音识别方案选型研究》
  • BPMN-Moddle模型校验指南
  • 【秋招笔试-支持在线评测】10.12百度(A卷)秋招(已改编)-三语言题解
  • JQuery创建HTML公用模块进行引用
  • 移动端面试问题笔记(一)
  • 刘文超数量关系笔记