opengl傻瓜教程-环境配置
本文内容根据https://learnopengl-cn.github.io/ 编写。资源大多在github估计会被墙,可以用我提供的文件。1.CMake安装一路next直接完成,cmake资源链接:https://download.csdn.net/download/zzjzmdx/156815892.GLFW 配置2.1下载https://www.glfw.org/download.html
本文内容根据 https://learnopengl-cn.github.io/ 编写。
资源大多在github估计会被墙,可以用我提供的文件。
1.CMake安装
一路next直接完成,
cmake资源链接: https://download.csdn.net/download/zzjzmdx/15681589
2.GLFW 配置
2.1下载
https://www.glfw.org/download.html 下载
glfw-3.3.3 资源链接:https://download.csdn.net/download/zzjzmdx/15681682
2.2编译
打开cmake,配置路径
下一步,配置项设置,然后点击finish。
出现框中Configuring done后,点击Generate编译。
出现框中Generating done后,表示完成。
可以看到最初配置的路径下多了build文件夹,双击GLFW.sln文件,用vs打开此项目。
在GLFW3上右键,然后点击生成。
出现完成后可以在配置的路径下的build目录下看到编译好的文件。
新建个放第三方包的文件夹,把包问价和头文件都放到第三方包目录下
3.配置GLAD
在线配置,打开 链接https://glad.dav1d.de/,然后填入选项,learnopengl网站用的是3.3,所以配置如下图
点击GENERATE按钮,进入下个页面后点击包文件链接下载文件。
也可以直接用我给的链接下载:https://download.csdn.net/download/zzjzmdx/15682357
之后将文件夹解压后 放入第三方包那个文件夹备用(只要头文件就可以)。
4.vs里面新建项目并下载opengl
在vs里面新建个c++空项目
在项目选项里选择管理NuGet程序包。
在浏览里搜索NupenGL,点击安装即可,此处的包每个新项目都要重新安装。
5.vs项目配置(此处每个新项目都要重新配置)
项目右键,选择属性
配置属性----VC++目录------可执行文件目录
然后依次点击下面的按钮
然后选择第三方包文件夹
同样的方式配置配置库目录和包含目录,然后点击确定。
同样方式配置附加依赖项
加入opengl32.lib包依赖
新建一个cpp文件
将刚才的glad.c文件添加到项目下
贴入如下代码
#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);
//glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE);
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);
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))
{
processInput(window);
glClearColor(0.2f, 0.3f, 0.3f, 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);
}
点击运行
出现以下页面表示全部安装完成。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)