admin管理员组文章数量:1598075
2024年5月30日发(作者:)
VC 6中配置OpenGL开发环境
2009-04-10 16:22
这里,我习惯使用VC 6,就使用它作为开发OpenGL应用的IDE吧。
要在Windows下学习OpenGL,首先就是要配置开发环境,我在这里详细的说明
整个配置过程,希望对初学的朋友有所帮助。
第一步:下载OpenGL库
Windows环境下的GLUT下载地址:(大小约为150k)
/resources/libraries/glut/
其实,也不是必须从这里下载,在你下载一些例子的时候,一般都会打包呆上
OpenGL库的。
这里顺便介绍一下OpenGL吧:
OpenGL作为当前主流的图形API之一,它在一些场合具有比DirectX更优越的
特性。
● 与C语言紧密结合。
OpenGL命令最初就是用C语言函数来进行描述的,对于学习过C语言的人来讲,
OpenGL是容易理解和学习的。如果你曾经接触过TC的graphics.h,你会发现,
使用OpenGL作图甚至比TC更加简单。
● 强大的可移植性。
微软的Direct3D虽然也是十分优秀的图形API,但它只用于Windows系统(现
在还要加上一个XBOX游戏机)。而OpenGL不仅用于Windows,还可以用于
Unix/Linux等其它系统,它甚至在大型计算机、各种专业计算机(如:医疗用
显示设备)上都有应用。并且,OpenGL的基本命令都做到了硬件无关,甚至是
平台无关。
● 高性能的图形渲染。
OpenGL是一个工业标准,它的技术紧跟时代,现今各个显卡厂家无一不对
OpenGL提供强力支持,激烈的竞争中使得OpenGL性能一直领先。
总之,OpenGL是一个很NB的图形软件接口。至于究竟有多NB,去看看DOOM3
和QUAKE4等专业游戏就知道了。
OpenGL官方网站(英文):
第二步:OpenGL库配置文件
加压缩下载的OpenGL库文件,上面那个下载下来可能没有我下面列举的文件
多,可以到网上下载的,或者Email我,我给你发一份。
OpenGL库配置用到的文件分为下面三类:
■ 动态链接库文件(.dll)
、、、。
■ 头文件(.h)
GL.H、GLAUX.H、glos.h、GLU.H、glut.h。
■ 库文件(.lib)
、、、。
第三步:Windows下配置OpenGL
假设我的VC 6安装到D:Program FilesMicrosoft Visual Studio目录下。
将上一步提到的动态链接库文件,全部拷贝到C:WINDOWSsystem目录下面;
将上一步提到的头文件,全部拷贝到D:Program FilesMicrosoft Visual
StudioVC98IncludeGL目录下面,如果没有GL目录的话,自己创建一个;
将上一步提到的库文件,全部拷贝到D:Program FilesMicrosoft Visual
StudioVC98Lib目录下面。
第四步:配置VC 6中工程
启动VC 6,新建一个Win32 Console Application
1、按照如下顺序选择:
Project → Settings → Link选项卡
然后,在Object/library modules下面的文本框的最前面添加如下库文件内容:
最后,在Project Options中修改subsystem:console修改为
subsystem:windows。
2、再按照如下顺序选择:
Project → Settings → C/C++选项卡
将Preprocessor definitions 中的_CONSOLE修改为_WINDOWS。
现在,你可以进行测试了,测试你的OpenGL应用。
关于异常问题总结
如果,你在测试的时候,出现下面的异常:
() : error LNK2001: unresolved external symbol _main
这是 Windows子系统设置错误,你可以通过如下方式解决:
按照如下顺序选择:Project → Settings → C/C++选项卡,然后将Preprocessor
definitions 中的_CONSOLE修改为_WINDOWS
windows下安装opengl的glut库
2008年10月28日 星期二 19:42
原文
windows下安装opengl的glut库
GLUT不是OpenGL所必须的,但它会给我们的学习带来一定的方便,推荐安装。
Windows环境下的GLUT下载地址:(大小约为150k)
/resources/libraries/glut/
无法从以上地址下载的话请使用下面的连接:
/upfile/
Windows环境下安装GLUT的步骤:
1、将下载的压缩包解开,将得到5个文件
2、在“我的电脑”中搜索“gl.h”,并找到其所在文件夹(如果是
VisualStudio2005,则应该是其安装目录下面的“VCPlatformSDKincludegl
文件夹”)。把解压得到的glut.h放到这个文件夹。
3、把解压得到的和放到静态函数库所在文件夹(如果是
VisualStudio2005,则应该是其安装目录下面的“VClib”文件夹)。
4、把解压得到的和放到操作系统目录下面的system32
文件夹内。(典型的位置为:C:WindowsSystem32)
OpenGL study
你可以在OpenGL的官方网站的Documentation中下载
到官方教程和例子程序:
The OpenGL Programming Guide,这就是著名的red book(“红皮书”)
如果你英语不好,那么推荐你阅读:
《OpenGL超级宝典》是一本相当不错的中文教程。可以在
/?fid=29找到它的例子代码
《OpenGL编程权威指南》他是red book的中文译本,它的例子也就是red book
的例子。
*Nate Robin的例子对你理解OpenGL很有帮助。
/reference/articles/
*The OpenGL Reference Manual(blue book)并不是一本入门教材,而是一本
函数参考手册,可以从的Documentation中下载下来,
在实际学习中查询用
*NeHe的例子也是大家所喜爱的初学者例子。,在
还有一部分的中文译文
***nehe的简单窗口例子(第二课)几乎含盖世界上的所有语言,如果想用自
己喜欢的独特语言,可以参考
/data/lessons/?lesson=02最下方的联
接,并结合C++的例子学习(大多数教材都是基于C++的,不过幸好我们真正关
注的是OpenGL本身)
OpenGL的例子大都需要用到OpenGL应用工具包:GLUT库,下面讲讲怎样安装
它
Visual C++ 6.0 HOWTO:
1。下载GLUT库:
/resources/libraries/glut/
2。将压缩包内的glut.h放到...Microsoft Visual StudioVC98IncludeGL
目录下
将放到...Microsoft Visual StudioVC98Lib目录下
将放到X:windowssystom32目录下(win98用户放到
X:windowssystom目录下)
3。建立一个控制台工程Win32 Console Application,加入hello.c并运行:
#i nclude
void display(void)
{
glClear (GL_COLOR_BUFFER_BIT);/* clear all pixels */
glColor3f (1.0, 1.0, 1.0);
glBegin(GL_POLYGON);/* draw white polygon with corners at(0.25,
0.25, 0.0) and (0.75, 0.75, 0.0)*/
glVertex3f (0.25, 0.25, 0.0);
glVertex3f (0.75, 0.25, 0.0);
glVertex3f (0.75, 0.75, 0.0);
glVertex3f (0.25, 0.75, 0.0);
glEnd();
glFlush ();/* start processing buffered OpenGL routines */
}
void init (void)
{
glClearColor (0.0, 0.0, 0.0, 0.0);/* select clearing color */
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);/* initialize viewing
values */
}
int main(int argc, char** argv)
{
glutInit(&argc, argv);
glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB);/*Declare initial
display mode(single buffer and RGBA).*/
glutInitWindowSize (250, 250); /*Declare initial window size.*/
glutInitWindowPosition (100, 100);/*Declare initial window
position.*/
glutCreateWindow ("hello");/*Open window with "hello"in its title
bar.*/
init ();/*Call initialization routines.*/
glutDisplayFunc(display); /*Register callback function to display
graphics.*/
glutMainLoop();/*Enter main loop and process events.*/
return 0; /* ANSI C requires main to return int. */
}
OpenGL是目前用于开发可移植的、可交互的2D和3D图形应用程序的首选
环境,也是目前应用最广泛的计算机图形标准。OpenGL是SGI公司开发的一套
的计算机图形处理系统,是图形硬件的软件接口,GL代表图形库(Graphics
Library)。OpenGL具有可移植性,任何一个OpenGL应用程序无须考虑其运行
环境所在平台与操作系统,在任何一个遵循OpenGL标准的环境下都会产生相同
的可视效果。
OpenGL不是一种编程语言,而是一种API(Application Programming
Interface,应用程序编程接口)。当我们说某个程序是基于OpenGL的或者说
它是个OpenGL程序是,意思是说它是用某种编程语言如C或C++编写的,其
中调用了一个或多个OpenGL库函数。作为一种API,OpenGL遵循C语言的调用
约定。
OpenGL主要包括三个函数库,它们是核心库、实用函数库和编程辅助库。
核心库中包含了OpenGL最基本的命令函数。核心库提供了一百多个函数,这些
函数都以”gl”为前缀,用来建立各种各样的几何模型、进行坐标变换、产生
光照效果、进行纹理映射、产生雾化效果等所有的二维和三维图形操作。实用
函数库是比核心库更高一层的函数库,它提供四十多个函数,这些函数都
以”glu”为前缀。由于OpenGL是一个图形标准,是独立于任何窗口系统或操
作系统的,在OpenGL中没有提供窗口管理和消息事件响应的函数,也没有鼠标
和键盘读取事件的功能,所以在编程辅助库提供了一些基本的窗口管理函数、
事件处理函数和简单的事件函数。这类函数以”aux”作为前缀。值得一提的是,
目前AUX编程辅助库已经很大程度上被GLUT库取代了。以下介绍以GLUT库为
例。
GLUT代表OpenGL应用工具包(OpenGL Utility Toolkit),是一个与窗
口系统无关的工具包。它作为AUX库的功能更强的替代品,用于隐藏不同窗口
系统API的复杂性。GLUT的子程序的前缀使用”glut”。
一、下面以windows及visualC++为例介绍使用预编译库进行安装的过程:
(1)将复制到windows系统system32下
(2)将复制到vc的lib目录下
(3)将gult.h复制到vc的includeGL下
二、一个简单的OpenGL程序
#i nclude
#i nclude
//绘图子程序
void display( void ) {
glClearColor( 1.0f,1.0f,1.0f,1.0f ); // 设置
清除窗口时将窗口设为白色
glClear( GL_COLOR_BUFFER_BIT );// 执行窗口清理
glFlush(); // 刷新OpenGL中的命令队列和缓冲区,使所
有尚未被执行的命令执行
}
void main( int argc,char** argv ) {
glutInit( &argc, argv ); // 初始化GLUT库
glutInitDisplayMode( GLUT_SINGLE| GLUT_RGB ); // 显示模式
glutCreateWindow( "Hello OpenGL!" ); // 创建一个窗口,参数
为窗口的标题
glutDisplayFunc( display ); // 绘制当前窗口
glutMainLoop();//通常用于程序的结尾,表示开始运行程序.显示
出所有创建的窗口
}
版权声明:本文标题:VC_6中配置OpenGL开发环境 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1717036795a529538.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论