1.下载VS2019
官网下载链接:https://visualstudio.microsoft.com/zh-hans/downloads/
下载社区版即可。
2.选择工作负载
3.VS安装好后下载OpenGL库文件
glutdlls37beta.zip点击蓝色字体自动下载
下载后解压得到如图5个文件。
根据后缀名,分为 .dll; .h; .lib 三类。
4.将文件放到VS中的指定文件夹下
我的VS include库路径在C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29333\include下,在当前目录下新建一个“GL”的文件夹。
将glut.h拷贝到GL文件夹下。
再进入到C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29333\lib\x86路径下。
将glut.lib,glut32.lib拷贝到当前目录中。
再进入到C:\Windows\SysWOW64路径下。
将== glut.dll,glut32.dll==拷贝到当前目录下。
5.添加GLAD
GLAD在线下载
将下载好的glad.zip中include下的glad和KHR文件夹拷贝到C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29333\include路径下。
6.添加GLFW
下载GLFW
将下载下来的glfw-3.3.2.bin.WIN64.zip\glfw-3.3.2.bin.WIN64\include中的GLFW文件夹拷贝到C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29333\include路径下。
至此,C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29333\include中有以下四个文件夹。
7.创建控制台应用并测试
在当前工程内添加glad.c源文件。glad.c在下载好的glad.zip\src中。
最后,删除.cpp文件中的全部内容,将下面的代码拷贝到.cpp文件中。
#include <glad/glad.h>
#include <GLFW/glfw3.h>
#include <iostream>
void framebuffer_size_callback(GLFWwindow* window, int width, int height);
void processInput(GLFWwindow* window);
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)
{
std::cout << "Failed to create GLFW window" << std::endl;
glfwTerminate();
return -1;
}
glfwMakeContextCurrent(window);
// 初始化GLAD
if (!gladLoadGLLoader((GLADloadproc)glfwGetProcAddress))
{
std::cout << "初始化GLAD失败!" << std::endl;
return -1;
}
// 设置视口
glViewport(0, 0, 800, 600);
glfwSetFramebufferSizeCallback(window, framebuffer_size_callback);
// 渲染循环
while (!glfwWindowShouldClose(window))
{
// 检测是否需要退出窗口
processInput(window);
// 渲染指令
// 设置清除颜色 -- 状态设置
glClearColor(0.2f, 0.3f, 0.4f, 1.0f);
// 开始清空屏幕并且使用上面的颜色
glClear(GL_COLOR_BUFFER_BIT);
// 交换颜色缓冲区
glfwSwapBuffers(window);
// 检查是否触法相关事件
glfwPollEvents();
}
// 删除/释放资源
glfwTerminate();
return 0;
}
// 窗口大小变换监听
void framebuffer_size_callback(GLFWwindow* window, int width, int height)
{
glViewport(0, 0, width, height);
}
// 输入监听
void processInput(GLFWwindow* window)
{
if (glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS)
glfwSetWindowShouldClose(window, true);
}
按下F5测试程序,若如下图显示的一样则配置成功。
若报错请将报错内容评论。
欢迎转载!转载请注明出处!