做三维重建需要用到OpenGL,开始看《OpenGL超级宝典》,新手第一步配置环境就折腾了一天,记录下环境的配置过程。

《超级宝典》中的例子使用了GLEW,freeglut以及GLTools这三个库

1.GLEW

The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library. GLEW provides efficient run-time mechanisms for determining which OpenGL extensions are supported on the target platform. OpenGL core and extension functionality is exposed in a single header file. GLEW has been tested on a variety of operating systems, including Windows, Linux, Mac OS X, FreeBSD, Irix, and Solaris.

GLEW是一个跨平台的OpenGL的扩展库,支持多个操作系统。下载地址:http://glew.sourceforge.net/   提供了已编译好的文件

解压后将得到的文件分别进行复制:

include文件夹下是头文件,将位于include文件夹下的GL文件夹复制到C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include 下

lib文件夹下Release\Win32的文件复制到:C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib

bin文件夹下Release\Win32的文件复制到:C:\Windows\System32

GLEW就配置完成了

2.freeglut

FreeGLUT is a free-software/open-source alternative to the OpenGL Utility Toolkit (GLUT) library。

最新的稳定版是3.0,其下载地址:http://freeglut.sourceforge.net/   ,没有提供编译好的包,需要使用CMake自行编译。

CMake的配置

注意红圈的两个位置,第一个是生成的freeglut库文件所在的位置,其默认是在C(系统盘),由于访问C盘需要管理员权限,这里没有使用默认值。

第二个是生成Static Lib,勾了这个选项在Install的时候会出现一个错误,由于不生成这个Static Lib也没有多大影响,这里就取消了这个选项。配置好CMake选项后,Generate生成的visual studio2013的项目如下:

打开freeglut.sln

编译,生成的库文件在CMake配置的CMAKE_INSTALL_PREFIX下,有三个文件夹include、bin、lib,和GLEW类似,将其内容复制到相应的位置。

freeglu配置完成。

3.GLTools

GLTools的配置比较麻烦,主要是由于按照书中提供的网址(http://www.starstonesoftware.com/)下载不到源代码。幸好在GitHub上找到一个GLTools的Linux的版本(地址:https://github.com/HazimGazov/GLTools),使用其源代码编译生成GLTools库。

注意glew.c需要到GLEW的网站下其源代码得到,另外就是其include文件需要放到VC\include文件夹下,而且需要GLEW和freeglut都已配置完成。

在编译GLTools前需要更改其项目属性 > C/C++ > 预处理器右边的预处理器定义中添加 _CRT_SECURE_NO_WARNINGS

编译生成以后将Debug文件夹下的GLTools.lib复制到C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib下

4.最后

设置项目的依赖项

忽略特定依赖库

《超级宝典》的第一个例子:

OpenGL超级宝典visual studio 2013开发环境配置,GLTools的更多相关文章

  1. Unity3D-RPG项目实战(3):整合Visual Studio 2013开发环境

    古人云:工欲善其事必先利其器,IDE尽管属于一个非常上层的工具,可是一个好的IDE对工作效率提高还是非常大的. 事实上我还是满想用一下官方推荐的Mono,毕竟跨平台如今还是非常重要的一个特性.尝试了这 ...

  2. Visual studio 通用开发环境配置:SDL,FFMPEG为例

    引言 每一个C++库的使用都是从开发环境的配置开始的,其实每个库的配置过程都是大同小异,总结下来有下面几个步骤: 下载库文件,这里假定是已经预先编译完成的. 配置库文件的包含目录(include)和库 ...

  3. OpenGL超级宝典第5版&&开发环境搭建

    参考:http://www.zyh1690.org/build-opengl-super-bible-fifth-edition-development-environment/ 环境搭建的测试环境为 ...

  4. Visual Studio 2012 开发环境配置+控制台工具+桌面应用程序

    一.界面布局视图设置 1.窗口的布局.控制台窗口运行恢复到开发环境的设置方法 也可以保存好设好的个性化设置,导入设置: 2.视图|服务器资源管理器(sever explorer) 可以访问数据源.服务 ...

  5. Visual Studio OpenCV 开发环境配置

    因为VS配置OpenCV好多新手都很难一次配置成功,而且OpenCV库每新建一个项目都要配置很是麻烦,所以今天就给大家介绍一个“一劳永逸”的方法. 注:理论上只要VS和OpenCV是版本兼容的,该方法 ...

  6. 打造TypeScript的Visual Studio Code开发环境

    打造TypeScript的Visual Studio Code开发环境 本文转自:https://zhuanlan.zhihu.com/p/21611724 作者: 2gua TypeScript是由 ...

  7. Visual Studio 2017开发环境的安装

    Visual Studio 2017是微软为了配合.NET战略推出的IDE开发环境,同时也是目前开发C#程序最新的工具,本节以Visual Studio 2017社区版的安装为例讲解具体的安装步骤. ...

  8. Google Android Studio Kotlin 开发环境配置

    Google 近日开发者大会宣布Kotlin成为Android开发的第一级语言,即Android官方开发语言,可见Google对Kotlin的重视,本文就介绍一下Android Studio下的Kot ...

  9. 如何使用Visual Studio 2013 开发PHP5.6项目

    原文如何使用Visual Studio开发PHP项目 在windows下开发php除了记事本 DW 以及一帮Zend studio,Eclipse,NetBeans之流以外,个人感觉还是vsiual ...

随机推荐

  1. ThinkPHP3.* 模型操作相关函数

    ThinkPHP3.* 版本,大家所不熟知的,且与数据库操作相关的函数做以简单罗列: 1.getLastSql 别名 _sql (鉴于getLastSql比较常用,故出现了别名函数_sql) 2.se ...

  2. Git命令----放弃本地修改使用服务器上的代码

    git reset --hard FETCH_HEAD FETCH_HEAD表示上一次成功git pull之后形成的commit点.

  3. HTML的两三事

    关于在页面布局上,我用了两种方式  用&nbsp来调整需要空格的地方,  用<pre></pre>直接在代码页面调整页面布局  但是用&nbsp来布局当我把网页 ...

  4. Hadoop 和 HDInsight:Windows Azure 中的大数据

    世界的大数据包含一个庞大而充满活力的生态系统,但一个开放源码项目上面有这一切,那就是 Hadoop 的王朝. Hadoop 是事实上的标准的分布式的数据运算.Hadoop 提供了一个 MapReduc ...

  5. 2013 duilib入门简明教程 -- 界面设计器 DuiDesigner (10)

        上一个教程讲解了怎么布局最大化.最小化.关闭按钮,但是如果手动去计算这三个按钮的位置和大小的话,非常的不直观,也很不方便.     所以这一章准备介绍duilib的UI设计器,由于这个设计器很 ...

  6. AJAX简介

    基本介绍 AJAX 指异步 JavaScript 及 XML(Asynchronous JavaScript And XML). 国内翻译常为“阿贾克斯”和阿贾克斯足球队同音.Web应用的交互如Fli ...

  7. OO设计原则

    开闭原则(OCP) 里氏代换原则(LSP) 依赖倒转原则(DIP) 接口隔离原则(ISP) 合成/聚合利用原则(CARP) 迪米特法则(LOD)

  8. Unity3D研究院之Prefab里面的Prefab关联问题

    最近在做UI部分中遇到了这样的问题,就是Prefab里面预制了Prefab.可是在Unity里面一旦Prefab预制了Prefab那么内部的Prefab就失去关联.导致与如果要改内部的Prefab需要 ...

  9. 【转】WPF防止界面卡死并显示加载中效果

    原文地址:http://www.cnblogs.com/linyijia/archive/2013/02/06/2900609.html <Window x:Class="Loadin ...

  10. Windows phone 全景视图

    Windows phone 全景视图下为了实现可以上下滑动需要使用listbox. 需要的布局什么的,在listbox中填写 <ListBox Name="ListBox_new&qu ...