OpenGL 开发环境配置(Windows) - Visual Studio 2017 + GLFW + GLAD 详细图文教程

OpenGL 开发环境配置(Windows) - Visual Studio 2017 + GLFW + GLAD 详细图文教程

大部分 OpenGL 是直接面向设备商的,如果开发者需要使用 OpenGL 进行开发,一般需要使用已有的库,本文使用的是GLFW,它提供了一些渲染物体所需的最低限度的接口。

同时,我们还需要 GLAD,因为 OpenGL 只是一个标准/规范,具体的实现是由驱动开发商针对特定显卡实现的,对于开发者而言,GLAD 也可以让开发更为方便。

准备条件

  • 操作系统:Windows 10
  • 编译器:Visual Studio 2017(VC++ 2017)
  • CMake 工具
  • GLFW库
  • GLAD库

Visual Studio和CMake的安装略去
相关链接:
Visual Studio官网
CMake官网下载

配置步骤

Step1. 下载并编译GLFW库

首先访问GLFW官网下载页,下载源代码并解压,如下图所示

glfw源码

接下来打开CMake程序,设置source code为GLFW解压目录,build目录为GLFW解压目录下新建的build文件夹:

cmake1

点击configure,默认即可:

cmake2

再次点击configure按钮:

cmake3

最后点击Generate:

cmake4

可以在build目录下生成Visual Studio的解决方案:

build目录

打开解决方案,直接编译即可:

编译

编译成功

build\src\Debug\目录下得到编译后的库文件:

库文件

Step2. 下载GLAD库

转到GLAD在线服务页面,修改语言为C/C++,选择OpenGL,API选择使用的对应OpenGL版本,Profile选择Core,勾上Generate a loader,点击GENERATE:

glad1

glad2

下载压缩包:

glad3

如何查看OpenGL版本

下载使用OpenGL Extension Viewer,即可查看OpenGL版本:

OpenGL版本

相关链接:
OpenGL Extension Viewer在Softonic的下载页

Step3. 配置Visual Studio工程

将GLFW源码中的include\文件下的内容、GLFW编译后的库、下载的GLAD库,放入opengl文件夹,组织如下:

组织方式

新建Visual C++空项目,将opengl文件夹放入工程目录:

放入

配置VS工程如下:

配置1

配置2

配置3

添加opengl\src\glad.c源文件:

源文件

Step4. 编写代码并测试

代码如下:

#include <glad/glad.h>
#include <GLFW/glfw3.h>
#include <iostream>
using namespace std;

void framebuffer_size_callback(GLFWwindow* window, int width, int height);

int main() {
    glfwInit();
    glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
    glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
    glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);

    GLFWwindow *window = glfwCreateWindow(800, 600, "LearnOpenGL", NULL, NULL);
    if (window == NULL) {
        cout << "Failed to create GLFW window" << endl;
        glfwTerminate();
        return -1;
    }
    glfwMakeContextCurrent(window);

    if (!gladLoadGLLoader((GLADloadproc)glfwGetProcAddress)) {
        std::cout << "Failed to initialize GLAD" << std::endl;
        return -1;
    }

    glViewport(0, 0, 800, 600);

    glfwSetFramebufferSizeCallback(window, framebuffer_size_callback);

    while (!glfwWindowShouldClose(window)) {
        glfwSwapBuffers(window);
        glfwPollEvents();
    }

    glfwTerminate();
    return 0;
}

void framebuffer_size_callback(GLFWwindow* window, int width, int height) {
    glViewport(0, 0, width, height);
}

编译运行,结果如下:

结果

至此,配置完成。


参考链接

Learn OpenGL CN - 入门 - 创建窗口

  • 49
    点赞
  • 162
    收藏
    觉得还不错? 一键收藏
  • 26
    评论
Visual Studio配置GLFW需要以下步骤: 1. 下载并安装GLFW库。你可以从官方网站上下载GLFW:https://www.glfw.org/download。 2. 下载并安装GLEW库。你可以从GLEW的官方网站上下载GLEW:https://glew.sourceforge.net/。 3. 在Visual Studio中创建一个新的OpenGL项目。 4. 将GLFW和GLEW的头文件复制到Visual Studio的include文件夹中。具体步骤如下: a. 打开OpenGL文件夹,将GLFW文件夹复制到Visual Studio的include文件夹中。 b. 打开glad和KRH文件夹,将其中的文件复制到Visual Studio的include文件夹中。 5. 在你的源代码中引入GLFW和GLEW的头文件。可以使用以下代码: #include "glew.h" #include "glfw3.h" 6. 确保在main函数之前调用glfwInit()进行GLFW的初始化。 7. 创建一个窗口并设置OpenGL上下文,可以使用以下代码: GLFWwindow* window; window = glfwCreateWindow(640, 480, "Hello World", NULL, NULL); glfwMakeContextCurrent(window); 8. 在初始化GLEW之前,确保检查glewInit()的返回值是否等于GLEW_OK。如果不是,表示初始化失败。 9. 在渲染循环中绘制你的OpenGL图形。你可以使用以下代码作为例子: while (!glfwWindowShouldClose(window)) { // 渲染代码 glClear(GL_COLOR_BUFFER_BIT); glBegin(GL_TRIANGLES); glVertex2f(-0.5f,-0.5f); glVertex2f(0.0f, 0.5f); glVertex2f(0.5f, -0.5f); glEnd(); glfwSwapBuffers(window); glfwPollEvents(); } 10. 最后,在程序结束时调用glfwTerminate()释放资源。 以上是在Visual Studio配置GLFW的基本步骤和代码示例。希望对你有帮助!<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [OpenGL VisualStudio 环境配置的 glew 和 glfw 包](https://download.csdn.net/download/u014361280/86725065)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [OpenGL+Visual Studio2022+GLFW+glad详细配置教程](https://blog.csdn.net/qq_18855997/article/details/127095232)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [Visual Studio 2022 搭建GLFW OpenGL开发环境](https://blog.csdn.net/baoecit/article/details/130523003)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 26
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值