OpenGL在VS2019上搭建环境 —— GLEW、GLFW以及GLUT

本文最后更新于:2020年7月7日 下午

使用VS2019搭建OpenGL运行环境,包括GLEW、GLFW以及GLUT的安装。

文件下载

蓝奏云下载链接:https://colourso.lanzous.com/b05y8x7cf 密码:fmi7

百度云下载链接:https://pan.baidu.com/s/1OixN8GjM6Igy0JWZQLRc7w 提取码:hb1v

包含两个压缩包:OpenGL环境依赖包,以及OpenGL_VS2019环境内容。

OpenGL环境依赖包包含了GLEW、GLFW、GLUT的相关文件。

OpenGL_VS2019环境内容是一个搭建的参考,在下面的搭建步骤也可以把部分内容直接拿来用。

搭建环境

创建一个目录,这里叫OpenGLRoot,这里将会存放相关的库,以及VS的项目。

在这个目录下新建文件夹External Resources,然后将准备好的GLEWGLFWGLUT拷贝进这个目录。

  • 此处安装的是:glew-2.1.0-win32.zipglfw-3.3.2.bin.WIN32.zip以及glutdlls37beta.zip三个压缩包的文件。
  • GLEW、GLFW、GLUT都是上述对应的文件,解压后直接修改文件夹名字为对应的大写字母,然后放进External Resources文件夹下。

VS配置

然后打开VS2019,创建一个新的解决方案,这里取名为opengl,存放在OpenGLRoot目录下,添加一个main.cpp文件,这样便于配置C++相关的东西。

右键项目,点击属性(快捷键是 Alt + Enter),在属性页的最上部选择配置为所有配置,平台选择活动Win32。

然后选择C/C++,然后选择常规,选择第一项附加包含目录。添加如下三个信息。

1
2
3
$(SolutionDir)/../External Resources/GLUT
$(SolutionDir)/../External Resources/GLEW/include
$(SolutionDir)/../External Resources/GLFW/include
  • $(SolutionDir)表示解决方案的所在路径,即.sln文件的所在路径。
  • 添加时一个一个添加,一行添加一个,下面两个添加也是这样。

然后选择链接器,选择常规,那么多项的中间选择附加库目录,添加如下三个信息。

1
2
3
$(SolutionDir)/../External Resources/GLUT
$(SolutionDir)/../External Resources/GLEW/lib/Release/Win32
$(SolutionDir)/../External Resources/GLFW/lib-vc2019
  • GLFW这里的目录最好对应你的VS版本,GLFW好多VS版本都有提供对应的文件。

然后选择链接器,选择输入,选择附加依赖项,添加如下三个信息。

1
2
3
opengl32.lib
glew32s.lib
glfw3.lib

  • 图片中有序号,展示了大致顺序。为了方便展示,图中少了链接器配置的两步。
  • 配置完后,记得先点击应用,再点击确定

然后进入OpenGLRoot\opengl路径下,创建两个文件夹DebugRelease

注意这两个文件夹是和解决方案.sln同级的哦~

然后找到三个库文件夹里的glew32.dllglut32.dll这两个文件,分别拷贝一份到Debug和Release目录之下。

到此环境配置完成,然后尝试用代码测试环境是否正确。

测试

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <glut.h>

void display(void) {
glClear(GL_COLOR_BUFFER_BIT);
glRectf(-0.5f, -0.5f, 0.5f, 0.5f);
glFlush();
}

int main(int argc, char* argv[]) {
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
glutInitWindowPosition(300, 300);
glutInitWindowSize(300, 300);
glutCreateWindow("第一个OpenGL程序");
glutDisplayFunc(&display);
glutMainLoop();
return 0;
}

参考链接

01->OpenGL 实验环境配置(glut)及简单实例

Youtube视频:Modern OpenGL 3.0+ Visual Studio 2017 [SETUP] GLFW and GLEW on Windows

保存项目属性表

做到这里就会有一个疑问,难道我每创建一个项目都要这么配置一遍项目吗?而且同一个解决方案里面的项目都需要重新配置一遍,这谁顶得住。

百度之后,解决方法是:保存项目属性表,然后引入到新的项目中,就不用这么来回配置了。

在VS2019的界面里,视图 –> 其他窗口 –> 属性管理器

然后就会在解决方案右侧出现属性管理器。

通常我们都是Debug Win32模式下,右键右键一个新项目属性表。记得取一个有辨识度的名字,方便之后使用。

双击新的项目属性表即可打开编辑,然后将上面的操作配置的一切操作再做一遍,即可。当然配置那一栏无法选取,因为这是默认的Debug Win32。

设置完毕之后在工程路径下找到.props文件,即你的项目属性表,然后可以使用这个项目属性表添加给其他同一解决方案下的其他项目了。

添加方式:新建一个项目,打开属性管理器,选择Debug|Win32,右键,选择添加现有属性表,添加即可。


第二种方法——只使用GLUT

  1. 解压glutdlls37beta.zip这个压缩包,包含glut.dllglut32.dllglut.libglut32.libglut.h
  2. 找到VS2019的安装目录,我的路径为D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\include,创建一个gl的文件夹,然后将glut.h这个文件放入其中。
  3. 然后找到路径D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\lib\x86,把glut.libglut32.lib复制到其中。
  4. 最后把解压到的glut.dll以及glut32.dll复制到路径C:\Windows\System32以及C:\Windows\SysWOW64两个目录下,建议都复制一下。
  5. 最后在VS2019中使用时引入的头文件为#include <gl/glut.h>
  6. VS2017同理可用。

吐槽一下

环境搭建越费力,后面写代码的可能性越小。

搭建完环境之后,我就回老家呆了7-8天,回来之后就开始各种狂奔,刷作业,刷网课,刷其他课设,中间又和同学出去玩了几次,结果临近图形学结课,我才发现我压根就没用过这个环境,就是使用了GLUT这种普通的搭建环境,以至于GLEW、GLFW的环境我也没具体测试过,但是参照的油管的教程一步一步走下来的,问题或许不大。

尴尬~


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!