OpenGL超级宝典(第五版)环境配置

1.各种库的配置

(1)glew

下载:https://sourceforge.net/projects/glew/files/glew/1.7.0/glew-1.7.0.zip/download

将include文件夹下的.h文件拷贝到C:\Program Files\Microsoft Visual Studio 9.0\VC\include\GL目录中(没有GL目录就自己创建一个,这里的具体路径视电脑上VS2008安装的位置而定) 将lib文件夹下的.lib文件拷贝到C:\Program Files\Microsoft Visual Studio 9.0\VC\lib目录中 将bin文件夹下的.dll文件拷贝到C:\Windows\System32目录中

(2)glut

下载OpenGL的glut类库:http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip

将.h文件拷贝到C:\Program Files\Microsoft Visual Studio 9.0\VC\include\GL目录中(没有GL目录就自己创建一个,这里的具体路径视电脑上VS2008安装的位置而定) 将.lib文件拷贝到C:\Program Files\Microsoft Visual Studio 9.0\VC\lib目录中 将.dll文件拷贝到C:\Windows\System32目录中

环境变量配置好后不必每个新建项目都按照下面这样配置。下面步骤仅限没有进行上述配置的用户。

2.配置项目环境

在需要用到openGL的每个项目中都需要执行以下步骤:

(1)项目——项目属性——配置属性——C/C++— —预处理器——预处理器定义,添加

GLUT_BUILDING_LIB

(2)项目——项目属性——配置属性——链接器——输入——附加依赖项,添加

glut32.lib Opengl32.lib Glu32.lib glew32.lib

3.应用举例

(1)先创建一个Win32控制台应用程序项目(文件——新建——项目——win32——win32控制台应用程序),在下面的名称处任意命名,假定是helloworld,然后点确定。之后点下一步,然后在附加选项的空项目之前打勾,之后点完成。

(2)配置项目属性:如上面所述2所述

(3)在解决方案管理器的源文件文件夹上点右键,添加——新建项——c++文件,任意命名,假定是Hello。

在导航窗格中的源文件分类下的Hello.cpp中输入如下代码:

[cpp]view plaincopyprint?

1. #include <windows.h>   //这个必不可少

2. #include <gl/glut.h>

3. void display()

4. {

5.     glClear(GL_COLOR_BUFFER_BIT);

6.     glColor3f(1.0,1.0,1.0);

7.     glBegin(GL_POLYGON);

8.     glVertex3f(0.25,0.25,0.0);

9.     glVertex3f(0.75,0.25,0.0);

10.    glVertex3f(0.75,0.75,0.0);

11.    glVertex3f(0.25,0.75,0.0);

12.    glEnd();

13.    glFlush();

14.}

15.void init()

16.{

17.    glClearColor(0.0,0.0,0.0,0.0);   //以黑色清屏

18.    glMatrixMode(GL_PROJECTION); //glMatrixMode - 指定哪一个矩阵是当前矩阵

19.                                //GL_PROJECTION,对投影矩阵应用随后的矩阵操作

20.     glLoadIdentity();           //该函数的功能是重置当前指定的矩阵为单位矩阵

21.     glOrtho(0.0,1.0,0.0,1.0,-1.0,1.0);

22.}

23.int main(int argc,char** argv)

24.

25.{

26.    glutInit(&argc,argv);

27.    glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);

28.    glutInitWindowSize(250,250);

29.    glutInitWindowPosition(100,100);

30.    glutCreateWindow("Hello OpenGL");

31.    init();

32.    glutDisplayFunc(display);

33.    glutMainLoop();

34.    return 0;

35.}

运行结果是个矩形,成功!

4.OpenGL超级宝典第五版的实例代码运行方法:

条件:下载--SB-WinSrc.rar和SB5.rar

SB-WinSrc.rar 解压后将share文件夹放在代码的../../下面(代码中的GLTools.h位置)后将SB5.rar解压后用已经配置好OpenGL的VS2008(上述配置过的那步)打开SB5\freeglut-2.6.0\VisualStudio2008Static下编译出freeglut_static.lib考到

C:\Program Files\Microsoft Visual Studio 9.0\VC\lib下后就能运行实例代码了

5.OpenGL超级宝典第五版的教学代码运行方法:

条件:SB5.rar

SB5.rar解压后将SB5\Src\GLTools\include的头文件考到C:\Program Files\Microsoft Visual Studio 9.0\VC\include中。

将SB5\VisualStudio2008\GLTools\Release中的gltools.lib考到C:\Program Files\Microsoft Visual Studio 9.0\VC\lib中

运行时遇到错误的看下面:

1.      将C:\Program Files\Microsoft Visual Studio 9.0\VC\include\glut.h复制到

C:\Program Files\Microsoft Visual Studio 9.0\VC\include\GL中

2.      静态库动态库编译时都选---项目-----属性----配置属性---C/C++----代码生成----运行时库都用和生成gltools.lib一样的-------多线程/MT

3.      因为生成gltools.lib需要glew库而第五版用的是OpenGL3.3所以glew要用1.9的版本而且要用生成gltools.lib的头文件(在src目录里面)的glew.h  glxew.h  wglew.h 覆盖原来的才行。

4.      现在打开示例代码后选---属性----配置属性---C/C++----代码生成----运行时库—MT后试试能不能运行,如果能运行那接着向下进行,如果失败那先停在这看看前面自己仔细在检查一遍解决完在向下进行。

5.      打开gltools项目将项目-----属性----配置属性---C/C++----代码生成----运行时库—多线程调试/MDT后再次编译一个MDT版本的库后一次将freeglut_static.lib和freeglut.lib一样也编译后覆盖原来的。

6.      再次打开刚才那个实例项目将项目-----属性----配置属性---C/C++----代码生成----运行时库—多线程调试/MDT后运行是否通过,通过就说明成功,忘了说一下运行前别忘了先清理一下项目!!。

关于后面的OpenEXR:

1)下载相关组件

在C盘下建立一个目录libs-x86,从OpenEXR官网http://www.openexr.com/downloads.html下载最新稳定版本:

IlmBase 1.02 source code release

OpenEXR 1.7.0 source code release

从网站http://www.winimage.com/zLibDll/index.html 下载zlib-1.2.5的源文件(用到其中的zlib.h和zconf.h)和dll文件:

zlib125.zip

zlib125dll.zip

这里需要说明的是,OpenEXR1.7.0用到的zlib版本为zlib-1.2.5,下载更新的版本会引起错误。

2)将下载文件解压到目录C:/libs-x86下

打开c:/libx-x86/ilmbase-1.0.2/vc/vc8/IlmBase/IlmBase.sln,选择Tools->VisualStudio Command Prompt,在打开的DOS界面输入:

cd c:\libs-x86\ilmbase-1.0.2\Half

cl eLut.cpp

cl toFloat.cpp

eLut > eLut.h

toFloat > toFloat.h

生成相应的文件。

3)选择Debug配置,编译解决方案

4)选择Release配置,编译解决方案

5)此时在C盘下创建了一个目录C:\Deploy,目录下有lib,include,bin三个子目录。

6)复制zlib.h和zconf.h从目录c:\libs-x86\zlib125到目录c:\Deploy\include

复制zdllwapi.lib和zlibwapi.exp从c:\libs-x86\zlib125dll\dll32到C:\Deploy\lib\Win32\Debug

复制zdllwapi.lib和zlibwapi.exp从c:\libs-x86\zlib125dll\dll32到C:\Deploy\lib\Win32\Release

复制zdllwapi.dll从c:\libs-x86\zlib125dll\dll32到C:\Deploy\bin\Win32\Debug

复制zdllwapi.dll从c:\libs-x86\zlib125dll\dll32到C:\Deploy\bin\Win32\Release

在VS2010中打开C:\libs-x86\openexr-1.7.0\vc\vc8\OpenEXR\OpenEXR.sln

选择Debug配置,选择ProjectIlmImf,右键ProjectOnly->Build OnlyIlmImf,然后再Build整个解决方案。

选择Release配置,选择ProjectIlmImf,右键ProjectOnly->Build OnlyIlmImf,然后再Build整个解决方案。

遇到问题及解决方案:

1)在Debug模式下,LINK : fatal error LNK1104: cannot open file'..\Win32\Debug\IlmImf.map'

解决方法:IlmImf右键->Properties->Linker->General->EnableIncremental Linking,设置为No。

之后考到相关目录就行了,还有后面代码可能除了有问题还有就是你的电脑支持的opengl版本,太低的程序也不能运行!!!

今天调试OpenGl的源程序,编译通过,但一运行就提示,计算机丢失 glut32.dll文件,郁闷的不行,上网查了下,网上提供的绝大多是做法都是,先下载这个文件复制这个文件到 C:\WINDOWS\system 32中,但是照做了后发现依旧不行,折腾了一下午后,突然之间意识到可能是我新装的windows 7系统有关,而且因为装的是64位的,于是,试着将这个 glut32.dll复制到C:\WINDOWS中的SysWOW64的文件夹中,后来就全都ok了,唉,在此特记录下来,提醒以后的各位装了Win 7又装了Vc++ 6.0 的各位朋友注意一下。   

     PS:刚开始接触OpenGl的时候难免会遇到一些问题,一些编译环境的设置和头文件的安装注意事项,特别整理了一下,如下:

(1)将gult32.dll,glut.dll复制到windows系统system32(如果是win 7 64位操作系统,则是C:\WINDOWS中的SysWOW64这个文件下)

(2)将gult32.lib,glut.lib复制到vc的lib目录下

(3)将gult.h复制到vc的include\GL下

OpenGL超级宝典 5e 环境配置相关推荐

  1. [转]OpenGL超级宝典 5e 环境配置

    OpenGL超级宝典(第五版)环境配置 1.各种库的配置 (1)glew 下载:https://sourceforge.net/projects/glew/files/glew/1.7.0/glew- ...

  2. OpenGL超级宝典开发环境配置(VS2010)

    <OpenGL超级宝典>第五版中的例子使用了GLEW.freeglut和GLTools三个库. 1.GLEW The OpenGL Extension Wrangler Library i ...

  3. 《OpenGL超级宝典》环境搭建

    系统环境 Windows 7 64位 Visual Studio 2010 盗版旗舰 参考文档: OPENGL VS2012环境搭建之FreeGlut OPENGL VS2012环境搭建之Glew O ...

  4. 《OpenGL超级宝典》编程环境配置

    最近在接触OpenGL,使用的书籍就是那本<OpenGL超级宝典>,不过编程环境的搭建和设置还是比较麻烦的,在网上找了很多资料,找不到GLTools.lib这个库.没办法自己就借助源码自己 ...

  5. win7 上配置openGL开发环境(配套openGL 超级宝典Super Bible 6th)

    此教程配套openGL 超级宝典super Bible圣经 第六版基于最新openGL4.3,但只有英语版 第六版比第五版(第五版目前有中文版基于openGL3.2)跨了一个时代,改变非常巨大,所以笔 ...

  6. OpenGL超级宝典(第五版)环境配置

    本文转自:http://blog.csdn.net/sunny_unix/article/details/8056807,感谢作者分享. OpenGL超级宝典(第五版)环境配置 Vs2008+winX ...

  7. OpenGL超级宝典(第五版)环境配置【转】

    OpenGL超级宝典(第五版)环境配置 Vs2008+winXP  后续会整理Ubuntu 12.04LTS下的配置作者:sunny_unix 1.各种库的配置 (1)glew 下载:https:// ...

  8. OpenGL超级宝典(第五版) 环境配置

    特别提醒:有些在word中或者其他中的代码复制到vs中会报错,原因是word中有些隐含的字符,复制到vs中就会报错:重新输一遍就可以解决问题,这里只是提醒下! 可以参阅我前面转载的一篇文章,进行比较然 ...

  9. OpenGL超级宝典(第五版) 环境配置(WinXp+VS2008)

    转自:http://blog.csdn.net/sunny_unix/article/details/8056807 OpenGL超级宝典(第五版)环境配置 1.各种库的配置 (1)glew 下载:h ...

最新文章

  1. python pip-python的pip安装以及使用教程
  2. 针对架构设计的几个痛点,我总结出的架构原则和模式
  3. 更改setting文件的mirror_setting.xml的mirror、mirrorOf和pom.xml的repositories、repository的关系关联*...
  4. Css的filter常用濾波器屬性及語句大全
  5. 查询方法android的CursorLoader用法小结
  6. LeetCode 1653. 使字符串平衡的最少删除次数(DP)
  7. 做数学与拼乐高的若干相似之处
  8. 给apm换一个软件源
  9. dom兼容性问题3 元素操作
  10. python 安装matlab,python – Anaconda在Linux上安装Matlab Engine
  11. 创建log文件的代码
  12. java day02 【数据类型转换、运算符、方法入门】
  13. 将 varchar 值转换为数据类型为 int 的列时发生语法错误
  14. css3背景颜色渐变属性(Gradients)
  15. 基于Python爬虫的电影数据可视化分析
  16. 生信文献学习(part1)--PRECISE: a ... approach to transfer predictors of drug response from pre-clinical ...
  17. echarts合并地图,把中国各个省份分成华北,东北,华东,华中,华南,西南,西北七个大区...
  18. [附源码]计算机毕业设计springboot咖啡销售平台
  19. 如何获取安卓iOS上的微信聊天记录、通过Metasploit控制安卓
  20. php7的新特性有哪些,php7新特性有哪些?

热门文章

  1. 频域(傅里叶变换)的作用
  2. 符号位处理方式 c语言,C语言位域解析符号位扩展规则
  3. 如何4天时间通过马克思近代史两门公共课?
  4. JavaWeb04(验证码登录新闻增加)
  5. 计算机科学属于电气工程吗,电气工程及其自动化专业属于什么门类
  6. HDMI接口介绍及其代码
  7. 使用QTP11.0的过程中,常见的部分问题解决方法(持续更新...)
  8. 英语需要你说出来-12月
  9. GB2312、GB 13000、GBK、GB18030 介绍
  10. redisson lock、tryLock分布式锁原理解析