本文设计的工具包:

链接:https://pan.baidu.com/s/1Kcx-5x_NuB-JUFyCE_Bq1g
提取码:g445
复制这段内容后打开百度网盘手机App,操作更方便哦

OPGL+VS2017+GLFW+GLEW配置详细步骤

首先呢?不可否认我在CSDN这个平台上学到了很多有用的知识,可能是感染到我吧,第一次有想法自己发博文,不足之处,请多多指教。

入门学习OPGL,配置环境必不可少。但网上大多数是VS2013和OPGL的配置过程。而我使用的是VS2017。实在不甘心将VS2017卸载装个VS2013,乖乖尝试着配吧。

推荐学习教程

作为小白的我,很开心通过知乎找到了一个极好的学习OPGL的教程。至于我以下要分享的配置过程便是紧紧围绕这个教程展开的哦!学习教程网址推荐如下:

http://learnopengl-cn.readthedocs.io/zh/latest/01%20Getting%20started/02%20Creating%20a%20window/

一.我们到底是在配什么东西

我们都知道要下载相关的OPGL库、配置VS,但我们主要配置什么呢?网上教程真的多,但一开始尝试配的时候,真的不知道自己在干嘛,只是配完之后,傻傻的想着我到底干了个嘛!以下图可以很好的告诉你我们下载相关的OPGL库是为了干嘛?

看了上面的图你能否了解到目的?目的是:将一些头文件和生成的库复制粘贴到自己新建的文件夹下。(至于原理我现在还不懂,以后慢慢了解吧)。以下就是我新建的文件夹"OPGLlearnResources"。至于下图中的其他三个文件夹(它们下面步骤需要下载的资源),这个时候先忽略,后面会介绍的。

好的,知道了我们要干嘛,就不会迷茫了。现在开始准备配置啦!以下是自己在配置过程的详细步骤,仅供参考。如有不足,多多指教!!!

注意:关于下载,前辈们都建议:即使电脑是64位的也最好下载32位的!!!(说是64位文件会出现莫名的错误哦)

二.下载GLFW库

a.进入下载网址。

下载官网:http://www.glfw.org/download.html

注意:一开始我并不知道下载源代码和二进制文件的区别,因此走了很多弯路。不过,现在貌似明白了一点。其时我们主要需要知道的是,源文件下载下来需要自己动手编译生成相应的.lib文件。而,二进制压缩包下载下来后自带.lib文件,可以直接复制到指定位置使用,不需要自己手动去编译。其中,GLFW我推荐下载源代码压缩包(你可以感受下什么是所谓的“编译”),GLEW我推荐下载二进制压缩包(这个貌似根本不需要编译,自己试过下载源代码编译,但一直报错,目前并未解决)。

b.下载源代码包,解压

没有进行任何操作前的文件夹里的内容如下图。  我们这个时候要注意到:并没有文件夹build!所以在后面“CMake对GLFW的操作”步骤中需要手动新建一个build文件夹。新建这个文件夹的目的是什么呢?目的是: 存放经过CMake处理后生成的.sln解决方案。这个解决方案可以用vs软件编译,编译后可在D:\OpenGL学习涉及的库\glfw-3.2.1\glfw-3.2.1\src\Debug文件夹内生成glfw3.lib文件。(现在不懂没关系,等你配一遍流程就知道了,先略过继续下一步)

三.下载GLEW库

a.进入下载网址。

下载官网:http://glew.sourceforge.net/index.html

注意:因为自己的GLEW库在VS2017中编译后没有生成glew32s.lib文件,一时间这个问题又解决不了。所以改成下载Binaries版本:glew-2.1.0-win32.zip。这个不需要编译哦。

b.下载后,解压

四.下载CMake

功能:将OPGL的相应的库经过CMake处理后生成相应的的.sln解决方案。

a.进入下载网址。

下载网址:https://cmake.org/download/

(其中,ZIP,Installer随便选一个下载就好。我是习惯ZIP.如果是下载ZIP,直接解压就可以用了;如果是Installer,则需要安装)

b.下载后,解压

c.找到bin文件夹下的“cmake-gui.exe”,然后双击打开

d.CMake对GLFW的操作

注意:因为GLEW库自带build文件夹,所以CMake不需要对GLEW库进行操作。

①在Where is the source code栏里,选择GLFW文件夹下的include、src等文件夹所在目录,如下图。

在Where tobuild the binaries栏里,选择要将项目文件生成在哪个文件夹里,可以不存在。build是我新建的一个文件夹,如下图。

②点击“Finish”后,等待,知道下面界面出现,则成功。

③此时D:\OpenGL学习涉及的库\glfw-3.2.1\glfw-3.2.1\build中会生成如下内容:

④再次点击Configure(设置)按钮保存设置。保存之后,点击Generate(生成)按钮,生成的工程文件会在你的build文件夹中。

⑤你会发现,此时的D:\OpenGL学习涉及的库\glfw-3.2.1\glfw-3.2.1\build中会生成.sln解决方案。

注意:这个时候查看文件夹src,可知,这个时候并没有生成Debug文件夹,如下图:

五.GLFW库的编译

GLFW.sln

b.打开项目后点击编译运行按钮即可。

因为CMake已经配置好了项目,所以我们直接点击Build Solution(生成解决方案)按钮,然后编译的库glfw3.lib(注意我们用的是第3版)就会出现在src/Debug文件夹内。

但是,会在结束的时候报出这么个错误,不知道是什么意思?貌似也不影响,先放这里放着,以后再说。

六.配置vs2017

a.首先需要确定我们自己新建的文件夹内如下图一样,已经放入了相应的文件。

b.在VS2017中新建一个空项目。

c.配置项目属性中的包含(头)文件和库文件的路径及附加依赖项的库。

       至于这里,我也不知道为什么会添加一个openGL32.lib。只是看别人的教程里都添加了。完成上面步骤后,我们就可以创建我们的第一个OpenGL工程了!

七.创建工程,测试

a.为空项目添加一个新项。如下图:

b.测试代码一:新建一个窗口。

源代码下载网址:https://learnopengl.com/code_viewer.php?code=getting-started/hellowindow

直接将源代码粘贴复制到你的项目中,然后编译运行即可。

编译后运行的结果为:

c.测试代码二:新建一个和黑板颜色相近的窗口。

源代码下载网址:https://learnopengl.com/code_viewer.php?code=getting-started/hellowindow2

直接将源代码粘贴复制到你的项目中,然后编译运行即可。

编译后运行的结果为:

d.测试代码三:在黑板色的窗口上画一个三角形。

源代码下载地址:https://learnopengl.com/code_viewer.php?code=getting-started/hellotriangle

直接将源代码粘贴复制到你的项目中,然后编译运行即可。

编译后运行的结果为:

ok,很开心。以后呢?我会继续跟着教程去学习,希望一点点进步。心,彻底的静下来,踏踏实实的过每一天。更希望和大家分享更多干货

OPGL+GLFW+GLEW配置详细步骤的更多相关文章

  1. OPGL+VS2017+GLFW+GLEW配置详细步骤

    OPGL+VS2017+GLFW+GLEW配置详细步骤: https://blog.csdn.net/weixin_40921421/article/details/80211813 原博客地址:ht ...

  2. Apollo 配置详细步骤(Windows环境)

    一. 准备工作 1.下载 apollo 安装包 下载链接:http://activemq.apache.org/apollo/download.html 2.下载 JavaJDK 安装包 ( apol ...

  3. Oracle Stream配置详细步骤

    1 引言 Oracle Stream功能是为提高数据库的高可用性而设计的,在Oracle 9i及之前的版本这个功能被称为Advance Replication.Oracle Stream利用高级队列技 ...

  4. PERC H310 配置详细步骤【阵列RAID创建】【阵列恢复】【阵列池创建】

    机器配置: HP PRO6300 二手淘的201912,HP的主板芯片Intel Q75芯片组,集成显卡(集成显卡与H310阵列卡冲突),CPU Intel I5 3450 [raid5阵列创建] 1 ...

  5. lab_0 清华大学ucore实验环境配置详细步骤!(小白入)

    实验步骤 1.下载项目 从github上 的https://github.com/kiukotsu/ucore下载 ucore lab实验: git clone https://github.com/ ...

  6. java的安装环境配置详细步骤

    --------------------声明,如果你有什么建议或者不懂的地方,欢迎回复,我们可以互相学习,转载请注明出处,谢谢---------------- 首先得安装jdk(Java Develo ...

  7. MyEclipse新建工作空间后的配置详细步骤

    1. General --> Workspace --> UTF-8 2. General --> Editors -->File  Associations --> J ...

  8. Hadoop-HA配置详细步骤

    1. HA服务器配置 对hdfs做高可用 1.1服务器详情 服务器:centos7 Hadoop:2.6.5 Jdk:1.8 共四台服务器 192.168.1.111 node1 192.168.1. ...

  9. SSH三大框架整合配置详细步骤(3)

    5 配置Spring2.5 5.1 基础配置 1)        导入spring包.下载spring-framework-2.5.6并解压后,在spring-framework-2.5.6" ...

随机推荐

  1. MySQL之从忘记密码到重置密码

    在对MySQL的应用中,难免会有忘记登陆密码的情况:接下来,将简单介绍下MySQL忘记密码如何登陆和重置密码的操作过程. 首先来说下新版MySQL(5.7+)的重置密码过程: 由于忘记登陆密码,所以正 ...

  2. 廖雪峰Java14Java操作XML和JSON-2JSON-1Json介绍

    JSON是一种类似JavaScript对象的数据表示格式 JavaScript Object Notation 去除了JavaScript的执行语句 仅保留数据 JSON格式: 仅保留UTF-8编码 ...

  3. 「题解」:windy数

    问题: windy数 时间限制: 1 Sec  内存限制: 512 MB 题面 题目描述 Windy 定义了一种 Windy 数:不含前导零且相邻两个数字之差至少为 的正整数被称为 Windy 数. ...

  4. 使用java代码动态配置与xml文件结合的方式使用mybatis-generator生成代码配置

    1.使用java代码动态配置与xml文件结合的方式使用mybatis-generator生成代码配置 2.上代码:在resources目录下新建:generatorConfiguration.xml文 ...

  5. CF1166D——数学公式思维题

    #include<bits/stdc++.h> using namespace std; #define ll long long ll ans[],a,b,m; /* b=2^(n-2) ...

  6. php析构函数小结

    l 基本语法 class  类名{ public  function  __destruct(){ //函数体 //析构函数的最重要的作用,就是释放对象创建的资源 //比如 数据库连接, 文件句柄, ...

  7. JavaScript数据可视化编程书籍上面的例子(flotr2)

    先看demo再看例子 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  8. Python学习之enumerate

         enumerate还可以接收第二个参数,用于指定索引起始值   2.     注意open返回文件对象,可迭代,而os.open返回的是文件指针,int类型, <wiz_tmp_tag ...

  9. poj 3263

    传送门 解题思路 如果x与y互相看见,那么他们一定比之间的高,所以给他们之间的高度-1,最后得到的答案是所有牛的高度+h,之间-1会T,用差分数组或线段树维护即可. 代码 #include<io ...

  10. myeclipse 配置svn

    方法三:直接解压下载SVN插件:site-1.6.10.zip解压后将其全部文件拷贝至:D:\Program Files\Genuitec\MyEclipse 8.5\dropins(MyEclips ...