第一个OpenGL程序--基于VS2005和GLUT

分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

               

//=====================================================================
//TITLE:
//    第一个OpenGL程序--基于VS2005和GLUT
//AUTHOR:
//    norains
//DATE:
//    Friday 28-May-2010
//Environment:
//    Windows XP
//=====================================================================

 

    万事开头难,OpenGL也是如此。对于一个没有接触过OpenGL的朋友而言,往往会觉得一片茫然,无处下手。那么今天,我们就从零开始,来实现我们的第一个OpenGL程序。

 

     我们的系统是Windows XP,所以开发工具我们自然而然也选择微软出品--Visual Studio 2005(以下简称vs2005)。其实,当安装完毕vs2005之后,就可以直接开发OpenGL程序了,因为相应的头文件和lib库已经随之安装。只不过,这一切并不完美,这个自带的OpenGL只是1.1的版本,如果想更新为最新版,还需要我们自己动手。

 

    本篇文章的例子,是基于GLUT。那么,GLUT是什么呢?

 

    GLUT全称是OpenGL Utility Toolkit,是一个独立的窗口系统。它提供了一组简单的编程接口,方便我们学习和探索OpenGL程序。使用GLUT,会让我们的开发更为简单。只不过可惜的是,GLUT并不是开放源代码的。

 

    GLUT可以在此下载:http://www.opengl.org/resources/libraries/glut/。

 

    截止到本文,最新版为3.7,可以直接于此下载:http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip。

 

    将下载回来的文件解压,会有如下文件:
     Glut.h
     Glut.lib
     Glut.dll
     Glut32.lib
     Glut32.dll

 

    为了让我们能够顺利编译程序,这几个文件我们需要将它们放到相应的地方。放置的方式有两种,一种是基于系统,另一种是基于工程。现在分别来介绍这两种方式。

 

 

    一. 基于系统

 

       1. glut.h文件放置于vs2005安装目录下的VC/PlatformSDK/Include/gl

 

       2. Glut.lib,Glut32.lib放置于VC/lib

 

       3. Glut.dll,Glut32.dll放置于windows/System32

 

 

 

    二. 基于工程


       1. 将整个文件夹拷贝到工程的同级目录

 

       2. 工程属性设置额外的lib所在的文件夹为"./glut"


       3. 将glut.dll,glut32.dll拷贝到system32或生成的exe文件的同级目录下。


    这两种方式各有优缺点。前者的方式独立于工程,可以称为一劳永逸,只要放置好了,后续新的OpenGL工程可以不做额外工夫;而后者则必须每建立一个新的工程,就必须做相应的修改,但好处却又是很明显,只要在本机上能编译通过,那么将该工程打包以后,在别的机器上也能顺利成功。至于选择哪种方式,就看各位的喜好了。


    开发环境搭建完毕,那么我们就来开始第一个程序吧!


    1.打开v2005,选择File->New->Project,然后选择Win32 Console Application,随便填一个名字,然后按OK。

 

    2.在谈出的对话框左边点Application Settings,找到Empty project并勾上,选择Finish。

 

    3.建立一个OpenGL.cpp文件

 

    4.文件中输入如下代码:
   #include ".//glut//glut.h"void myDisplay(void) {     glClear(GL_COLOR_BUFFER_BIT);     glRectf(-0.5f, -0.5f, 0.5f, 0.5f);     glFlush(); } int main(int argc, char *argv[]) {      glutInit(&argc, argv);     glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);     glutInitWindowPosition(100, 100);     glutInitWindowSize(400, 400);     glutCreateWindow("Hello OpenGL!");     glutDisplayFunc(&myDisplay);     glutMainLoop();     return 0; }

 

    编译,运行,我们第一个OpenGL程序就揭开了它神秘的面纱:


    注:本文的代码参考于此篇文章:http://blog.csdn.net/wangwei200508/archive/2008/02/29/2133552.aspx,在此对作者表示感谢!

 

           

分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

你可能感兴趣的:(第一个OpenGL程序--基于VS2005和GLUT)