前言
高考完之后填志愿,当时想以后去做游戏,所以选择了计算机这个专业,之前捣鼓过U3D,这学期也开始了计算机图形学的学习,最近学习了OpenGL相关的一些内容,将在博客中记录这系列的学习。这篇开篇博客将介绍环境的配置。
配置过程
本地环境
Window 10 + VS2017
配置环境
GLUT + GLUI
GLUT
1)下载GLUT。Windows环境下的GLUT下载地址:http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip
2)将下载的压缩包解开,将得到5个文件:glut.h、glut.lib、glut32.lib、glut.dll、glut32.dll。
3)将glut.h放到"C:Program Files (x86)Microsoft Visual Studio2017EnterpriseVCToolsMSVC14.16.27023includegl"文件夹中(gl文件夹若不存在则手动新建)。
4)将glut.lib和glut32.lib放到"C:Program Files (x86)Microsoft Visual Studio2017EnterpriseVCToolsMSVC14.16.27023libx86"文件夹中。
5)将glut.dll和glut32.dll放到"C:WindowsSystem32"文件夹(32位操作系统)或者"C:WindowsSysWOW64"文件夹(64位操作系统)。
6)测试GLUT配置环境
打开VS,新建项目,填入合适的名字如OpenGLTest,然后选择确定。
在弹出的对话框中点击下一步,然后在附加选项中选择空项目,点击完成。
向项目中添加下面代码
#include <GL/glut.h> #include<gl/gl.h> #include<gl/GLU.h> void myDisplay() { 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(100, 100); glutInitWindowSize(400, 400); glutCreateWindow("第一个OpenGL程序"); glutDisplayFunc(&myDisplay); glutMainLoop(); return 0; }
运行结果如下
GLUI
1.下载glui源代码并解压到合适的目录(路径中最好不要出现中文)
2.打开"glui-2.36srcmsvc"目录下的glui.sln解决方案文件
这里会出现要升级方案,直接点击确定就行
3.重定解决方案
点确定即可
4.在“解决方案资源管理器”中右键点击“解决方案"glui"”项,点击批生成,勾选前四项,点击生成。
这时,我们会遇到第一个错误
双击其中一个,然后将下面圈中的代码放到类外
然后重复之前生成操作,点击重新生成就ok了。
你真的以为好了吗?不存在的,我们又遇到了下面这个错误
这个错误搞了我好久,百度了很多方案都是针对2013之前版本的VS的,这里有更方便的操作方式
右键_gluidll library,点击属性
在连接器->高级中选项更改如下
应用,确定,然后重新生成
这次能成功吗???
我好像又报这个错误了。。重启VS,然后重新生成,好的,它成功了,我也不知道为什么。。不管了,继续。。orz
5.对example1-6做同样的操作,把SAFESEH改成NO,在“解决方案资源管理器”中右键点击“解决方案"glui"”项,点击批生成,取消选择前四项,勾选其余项,点击生成。
然后到目录bin下,可以看到这几个文件,随便点一个exe文件
嗯,成功了,但还没结束,接下来是跟前面GLUT相同的配置步骤
把lib文件夹下所有.lib文件放入C:Program Files (x86)Microsoft Visual Studio2017EnterpriseVCToolsMSVC14.16.27023libx86
把bin文件夹下glui32dlld.dll 放入 C:WindowsSysWOW64 或 C:WindowsSystem32中
最后,把 glui-2.36srcincludeGL 目录下的 glui.h 复制到 C:Program Files (x86)Microsoft Visual Studio2017EnterpriseVCToolsMSVC14.16.27023includegl 中
这样,我们的配置就算完成了,后面就是自己跑代码测试了。
下面是我跑的实验代码的测试结果
结语
现在再看看编译过程,感觉好简单,昨天居然弄了一早上才弄好,诶。。。环境算是配置好了,接下来就是愉快的敲代码时间了。后面的博客中将会把学习过程一一记录下来。