windows下安装opengl的glut库

导读:
  GLUT不是OpenGL所必须的,但它会给我们的学习带来一定的方便,推荐安装。
  Windows环境下的GLUT下载地址:(大小约为150k)
  http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip
  无法从以上地址下载的话请使用下面的连接:
  http://upload.programfan.com/upfile/200607311626279.zip
  Windows环境下安装GLUT的步骤:
  1、将下载的压缩包解开,将得到5个文件
  2、在“我的电脑”中搜索“gl.h”,并找到其所在文件夹(如果是VisualStudio2005,则应该是其安装目录下面的“VC/PlatformSDK/include/gl文件夹”)。把解压得到的glut.h放到这个文件夹。
  3、把解压得到的glut.lib和glut32.lib放到静态函数库所在文件夹(如果是VisualStudio2005,则应该是其安装目录下面的“VC/lib”文件夹)。
  4、把解压得到的glut.dll和glut32.dll放到操作系统目录下面的system32文件夹内。(典型的位置为:C:/Windows/System32)
  OpenGL study
  你可以在OpenGL的官方网站http://www.OpenGL.org的Documentation中下载到官方教程和例子程序:
  The OpenGL Programming Guide,这就是著名的red book(“红皮书”)
  如果你英语不好,那么推荐你阅读:
  《OpenGL超级宝典》是一本相当不错的中文教程。可以在http://www.vrforum.cn/forumdisplay.php?fid=29找到它的例子代码
  《OpenGL编程权威指南》他是red book的中文译本,它的例子也就是red book的例子。
  *Nate Robin的例子对你理解OpenGL很有帮助。http://www.gamedev.net/reference/articles/article839.asp
  *The OpenGL Reference Manual(blue book)并不是一本入门教材,而是一本函数参考手册,可以从http://www.OpenGL.org的Documentation中下载下来,在实际学习中查询用
  *NeHe的例子也是大家所喜爱的初学者例子。http://nehe.gamedev.net,在http://www.chinagamedev.net还有一部分的中文译文
  ***nehe的简单窗口例子(第二课)几乎含盖世界上的所有语言,如果想用自己喜欢的独特语言,可以参考http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=02最下方的联接,并结合C++的例子学习(大多数教材都是基于C++的,不过幸好我们真正关注的是OpenGL本身)
  OpenGL的例子大都需要用到OpenGL应用工具包:GLUT库,下面讲讲怎样安装它
  Visual C++ 6.0 HOWTO:
  1。下载GLUT库:http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip
  2。将压缩包内的glut.h放到.../Microsoft Visual Studio/VC98/Include/GL目录下
  将glut32.lib放到.../Microsoft Visual Studio/VC98/Lib目录下
  将glut32.dll放到X:/windows/systom32目录下(win98用户放到X:/windows/systom目录下)
  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)将gult32.dll复制到windows系统system32下
  (2)将gult32.lib复制到vc的lib目录下
  (3)将gult.h复制到vc的include/GL下
  二、一个简单的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();//通常用于程序的结尾,表示开始运行程序.显示出所有创建的窗口
  }
  
  
  Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1691945

本文转自
http://blog.csdn.net/kpsbnc/archive/2007/07/15/1691945.aspx
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值