前言

高考完之后填志愿,当时想以后去做游戏,所以选择了计算机这个专业,之前捣鼓过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 Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\include\gl"文件夹中(gl文件夹若不存在则手动新建)。

4)将glut.lib和glut32.lib放到"C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\lib\x86"文件夹中。

5)将glut.dll和glut32.dll放到"C:\Windows\System32"文件夹(32位操作系统)或者"C:\Windows\SysWOW64"文件夹(64位操作系统)。

6)测试GLUT配置环境

打开VS,新建项目,填入合适的名字如OpenGLTest,然后选择确定。
在弹出的对话框中点击下一步,然后在附加选项中选择空项目,点击完成。

向项目中添加下面代码

  1. #include <GL/glut.h>
  2. #include<gl/gl.h>
  3. #include<gl/GLU.h>
  4.  
  5. void myDisplay()
  6. {
  7. glClear(GL_COLOR_BUFFER_BIT);
  8. glRectf(-0.5f, -0.5f, 0.5f, 0.5f);
  9. glFlush();
  10. }
  11.  
  12. int main(int argc, char *argv[])
  13. {
  14. glutInit(&argc, argv);
  15. glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
  16. glutInitWindowPosition(, );
  17. glutInitWindowSize(, );
  18. glutCreateWindow("第一个OpenGL程序");
  19. glutDisplayFunc(&myDisplay);
  20. glutMainLoop();
  21. return ;
  22. }

运行结果如下

GLUI

1.下载glui源代码并解压到合适的目录(路径中最好不要出现中文)

2.打开"glui-2.36\src\msvc"目录下的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 Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\lib\x86

把bin文件夹下glui32dlld.dll 放入 C:\Windows\SysWOW64 或 C:\Windows\System32中

最后,把 glui-2.36\src\include\GL 目录下的 glui.h 复制到 C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\include\gl 中

这样,我们的配置就算完成了,后面就是自己跑代码测试了。

下面是我跑的实验代码的测试结果

结语

现在再看看编译过程,感觉好简单,昨天居然弄了一早上才弄好,诶。。。环境算是配置好了,接下来就是愉快的敲代码时间了。后面的博客中将会把学习过程一一记录下来。

从零开始OpenGL—— 一、 环境配置的更多相关文章

  1. Fedora和Ubuntu下安装OpenGL开发环境配置

    Fedora下OpenGl开发环境配置 开发OpenGL工程需要3个库文件和对应的头文件: libglut.so,libGLU.so,libGL.so, gl.h ,glu.h, glut.h 这些库 ...

  2. OpenGL开发环境配置-Windows/MinGW/Clion/CMake

    因为某些原因,不想用过于臃肿的VS了,转而使用常用的jetbrains的CLion,Clion沿袭了jetbrans的优良传统,基本代码提示功能还是比较好的,不过就是对于windows不熟悉cmake ...

  3. OpenGL+VS2010环境配置及遇到的问题

    OpenGL+VS2010+GLUT工具包+WIN10系统: 第一步,安装GLUT工具包 Windows环境下的GLUT下载地址:(大小约为150k) http://www.opengl.org/re ...

  4. OpenGL 开发环境配置:Visual Studio 2017 + GLFW + GLEW

    Step1:Visual Studio 2017 Why 开发环境,后面编译GLFW 和 GLEW也要用 How 这里使用的是Visual Studio 2017的 Community 版本,直接官网 ...

  5. Windows7+VS2010下OpenGL的环境配置

    http://johnhany.net/2014/01/environment-for-opengl-with-vs2010/ OpenGL(Open Graphics Library)是一个开放的. ...

  6. 史上最简单OpenGL+VS2017环境配置

    这里采用 最简单的方法: (1)添加Nuget包管理器(方便我们为项目添加OpenGL的库) (2)新建一个项目 右键我们的项目名 ——> 管理NuGet程序包——>搜索nupengl,然 ...

  7. Java从零开始学一(环境配置)

      一.JDK的下载和安装 1.下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151. ...

  8. 64 计算机图形学入门(1)——OpenGL环境配置与图形流水线(图像管线)

    0 引言 最近想学一下计算机图形学方面的知识,原因如下.目前本人接触了数字图像处理(opencv)以及点云处理(PCL)方面的知识,对从图像和点云中提取特征信息,并将特征转化为底层/中层语义信息有了一 ...

  9. VC++6.0使用OpenGL前的配置(必看)

    要在VC++6.0中使用opengl,需要配置一下环境设置. 具体需要两步: 1.加入一个头文件,两个lib文件,两个dll文件,放在合适位置. 2.配置一下vc++6.0的Project Setti ...

  10. 【游戏开发】基于VS2017的OpenGL开发环境搭建

    一.简介 最近,马三买了两本有关于“计算机图形学”的书籍,准备在工作之余鼓捣鼓捣图形学和OpenGL编程,提升自己的价值(奔着学完能涨一波工资去的).俗话说得好,“工欲善其事,必先利其器”.想学习图形 ...

随机推荐

  1. 使用Counter进行计数统计

    使用Counter进行计数统计 想必大家对计数统计都不陌生吧!,简单的说就是统计某一项出现的次数.实际应用中很多需求都需要用到这个模型,如检测样本中某一值出现的次数.日志分析某一消息出现的频率分析文件 ...

  2. Sqlserver2012 评估期已过问题

    sql server 2012提示评估期已过的解决方法: 第一步:进入SQL2012配置工具中的安装中心. 第二步:再进入左侧维护选项界面,然后选择选择版本升级. 第三步:进入输入产品密钥界面,输入相 ...

  3. 重新学习MySQL数据库开篇:数据库的前世今生

    本文内容出自刘欣的"码农翻身"公众号,强烈推荐刘欣大大的文章.   数据库的前世今生 小李的数据库之旅 无纸化办公 小李是这个大学计算机科学与技术系的知名学生,他的编程能力了得,使 ...

  4. shiro登录名的获取

    登录名的获取:通过的SecurityUtils的shiro import org.apache.shiro.SecurityUtils; //登录用户名 String loginAccount = S ...

  5. 车联网服务non-RESTful架构改造实践

    导读 在构建面向企业项目.多端的内容聚合类在线服务API设计的过程中,由于其定制特点,采用常规的restful开发模式,通常会导致大量雷同API重复开发的窘境,本文介绍一种GraphQL查询语言+网关 ...

  6. Python数据分析之pandas基本数据结构:Series、DataFrame

    1引言 本文总结Pandas中两种常用的数据类型: (1)Series是一种一维的带标签数组对象. (2)DataFrame,二维,Series容器 2 Series数组 2.1 Series数组构成 ...

  7. unity_实用小技巧(空指针错误)

    在游戏开发中,空指针错误是我们最常见也是最容易出现的错误.下面介绍一下博主近期遇见的空指针错误 如上图,有两个类,如果此时我们在图2中调用图1的单例模式可能会出现空指针错误. 原因在于:编译器可能先执 ...

  8. PHP 与 MySQL 相关操作

    一.MySQL基操 •MySQL启动 注意:MySQL不能直接通过 mysql.exe 命令启动 MySQL客户端访问服务端需要寻找匹配:连接认证 连接:IP和端口确定,如果是本地都可以忽略 -h 主 ...

  9. windows系统查询指定端口运行的进程并关闭

    假如占用的端口是80: 先打开cmd命令窗口 再查找80端口占用的进程:netstat  -aon|findstr  "80"    ,找到对应的程序的PID号: 根据PID号找到 ...

  10. 并发新特性—Executor框架与线程池

    http://blog.csdn.net/ns_code/article/details/17465497 Executor框架简介 在Java5之后,并发编程引入了一堆新的启动.调度和管理线程的AP ...