OpenGL超级宝典(第五版)环境配置
Vs2008+winXP 后续会整理Ubuntu 12.04LTS下的配置作者:sunny_unix
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超级宝典(第五版)读者可能遇到的问题,本人并不是老鸟为大家节省时间而已学习时没必要按书上每次都要加额外库。如果开发发布版本代码可以参见书第一章节步骤这里直接略过。
OpenGL学习群:134952390
转载自:http://www.cppblog.com/longzxr/archive/2009/12/04/102565.html
今天调试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下
转自:http://blog.csdn.net/sunny_unix/article/details/8056807
相关推荐
OpenGL超级宝典作者所有程序,包含gltools
OpenGL超级宝典第五版源码环境资源包是一个针对初学者极其宝贵的资料集合,它包含了学习OpenGL编程所需的全部源代码、可执行程序以及必要的环境配置文件。这个资源包旨在帮助读者快速掌握OpenGL编程基础,减少在环境...
glew-1.9.0.zip,用于OpenGl超级宝典重新编译gltools.lib,及第8章之后编译出错的问题。
OpenGL超级宝典第五版源代码及开发库是一个珍贵的学习资源,包含了OpenGL编程的详细示例和作者自编的开发库,适用于Linux和Windows操作系统。这个压缩包特别关注了在Windows环境下使用Visual Studio 2013进行配置,...
《OpenGL超级宝典》第五版是学习这一技术的重要参考资料,涵盖了从基础到高级的各种主题,包括渲染、光照、纹理、着色器、数学基础等。在开始学习之前,正确地搭建环境和获取源码是至关重要的步骤。 首先,你需要一...
OpenGL超级宝典第五版是关于计算机图形学领域中OpenGL编程的经典教材,源码及环境搭建资源对于学习和实践OpenGL编程至关重要。OpenGL是一个跨语言、跨平台的编程接口,用于渲染2D、3D矢量图形,广泛应用于游戏开发、...
OpenGL超级宝典第四版是图形编程领域的一本权威著作,为读者提供了全面深入的OpenGL学习资源。这本书的源代码和库文件是学习和实践OpenGL编程的重要辅助材料,可以帮助读者更好地理解书中理论,并将其实现在实际项目...
OpenGL是计算机图形学领域广泛应用的一种编程接口,它允许程序员创建复杂的3D图形和实时渲染效果。...通过阅读《OpenGL超级宝典》这样的书籍,并结合实际的环境配置实践,可以更深入地理解和掌握OpenGL编程。
OpenGL超级宝典第五版是学习OpenGL编程的一本权威书籍,其环境配置对于初学者来说可能是一项挑战。在Visual Studio(VS)环境下配置OpenGL通常涉及到多个步骤,包括安装必要的库、设置项目属性以及链接器选项等。这...
OpenGL超级宝典(第五版)是一本深入探讨OpenGL图形编程的经典教材,旨在帮助读者掌握现代图形编程技术。这本书包含了丰富的示例程序,这些程序能够帮助读者理解并实践OpenGL的各种概念和函数。在运行这些示例程序...
《OpenGL超级宝典》第五版源代码是学习和探索图形编程的重要参考资料,它涵盖了广泛的OpenGL技术,包括基本的渲染、高级特性以及实用的工具库。本部分提供的源代码是第一部分,主要涉及Linux平台下的OpenGL编程,...
根据提供的文件信息,我们可以推断出这是一本关于OpenGL技术的专业书籍——《OpenGL超级宝典》第五版的中文版,并提供了该书的下载链接。接下来,我们将深入探讨这本书可能涵盖的一些核心知识点,以及这些知识点在...
- **设置环境**:安装OpenGL库,配置开发环境。 - **创建窗口**:使用库函数创建窗口并初始化OpenGL上下文。 - **绘制基本图形**:如矩形、圆形等。 - **变换**:旋转、缩放和平移等操作。 - **颜色管理**:如何设置...
总的来讲主要参考了:http://www.it165.net/pro/html/201504/38164.html 先看里面的guide.txt 但是也弄了很久,遇到了各种问题,如有问题可以发邮件:bnuwjx@163.com,大家一起讨论讨论
OpenGL超级宝典是学习计算机图形学和OpenGL编程的经典教材,第五版更是涵盖了现代OpenGL的许多新特性。这个压缩包包含了该书第一部分的源码,特别针对Windows平台进行了优化,帮助读者通过实践来理解理论知识。 ...
OpenGL超级宝典第五版是OpenGL编程领域的一本权威著作,其源代码提供了丰富的示例和实践,帮助读者深入理解3D图形编程的概念和技术。这部分源码是书籍的第二部分,可能涵盖了一些高级主题或者在第一部分基础上的延伸...
### OpenGL超级宝典第五版知识点概述 #### 一、书籍基本信息 - **书名**:OpenGL超级宝典(第五版) - **作者**:Richard S. Wright Jr.、Nicholas Haemel、Graham Sellers、Benjamin Lipchak - **出版地**:美国...
OpenGL超级宝典(第五版)源代码是一份珍贵的学习资源,包含了丰富的实例和示例代码,旨在帮助读者深入理解并掌握OpenGL图形编程技术。OpenGL是一个跨语言、跨平台的编程接口,用于渲染2D、3D矢量图形,广泛应用于...