OpenGL环境搭建 [转]
目录
下载GLFW
- 解压,然后在文件夹里新建一个build文件夹,之后会用
- 使用Cmake
- 源目录:刚刚下下载解压的GLFW的目录
- 输出目录:刚刚在解压目录里新建的build目录
- 然后点击 CMake 左下角 Configure,点击完成应该如图:
- 如果这里点击Configure,没有向图片这样,可能是三种原因:1、GLFW下载错了。2、源目录、目标目录配置错了。3、CMake下载错了。
- 所有问题解决之后,点击 Generate。
- 然后去我们新建的Build目录,也就是输出目录中,找到 GLFW.sln,使用VS2019打开(其他的版本也可,官方教程用的2015)。
- 然后就可以编译了,编译完成之后,在src/Debug目录下会生成,glfw3.lib 文件。
- 【注】32位配置
建立测试工程案例
- 打开VS,新建一个新项目之后,需要配置三处地方:
- 包含目录:下载的GLFW的include目录
- 库目录:我们生成的build目录下的src/Debug目录
- build目录的src/Debug目录里会生成 glfw3.lib,最后一步操作如下:
下载Glad
- 点击右下角的GENERATE,选择 .zip文件,下载解压。
- 解压之后将他的 include文件夹下的文件全部拷贝到我们 上文配置的include文件夹下,.c文件直接拷贝到项目中。
- 点击右下角的GENERATE,选择 .zip文件,下载解压。
- 解压之后将他的 include文件夹下的文件全部拷贝到我们 上文配置的include文件夹下,.c文件直接拷贝到项目中。
- 运行一下,没有报错就完事了
- 测试代码:
#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); }