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

来源:互联网 发布:c语言中运算符的优先级 编辑:程序博客网 时间:2024/05/16 23:57

此教程配套openGL 超级宝典super Bible圣经 第六版基于最新openGL4.3,但只有英语版

第六版比第五版(第五版目前有中文版基于openGL3.2)跨了一个时代,改变非常巨大,所以笔者推荐各位初学者(其实包括笔者也是)抛弃3.X版本,生啃4.X版本吧,因为3.X版本已经毫无借鉴了(笔者经过多方

// Include the "sb6.h" header file#include "sb6.h"// Derive my_application from sb6::applicationclass my_application : public sb6::application{public:// Our rendering functionvoid render(double currentTime){// Simply clear the window with redstatic const GLfloat red[] = { 1.0f, 0.0f, 0.0f, 1.0f };glClearBufferfv(GL_COLOR, 0, red);}};// Our one and only instance of DECLARE_MAINDECLARE_MAIN(my_application);

考证...)

闲话不多说..

第一步,安装vs2010

这一步属于搭建开发环境,各位自己安装,破解...

第二步,安装GLUT工具包

Windows环境下的GLUT下载地址:(大小约为150k)
http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip

无法从以上地址下载的话请使用下面的连接:

http://upload.programfan.com/upfile/200607311626279.zip

Windows环境下安装GLUT的步骤:
1、将下载的压缩包解开,将得到5个文件,分别是glut.h,glut.lib,glut32.lib,glut.dll,glut32.dll
2、在E盘,我用的E盘,当然你们也可以用D盘。。随你新建文件夹用于管理 ,我创建了E:\GLUT文件夹

3    分别创建E:\GLUT\include,E:\GLUT\lib文件夹,并把glut.h放在include中。 glut.lib,glut32.lib放在lib中

4    新建一个空控制台项目..这应该会吧.在项目->配置->VC++目录中 的包含目录中添加E:\GLUT\include引用目录,库目录中添加E:\GLUT\lib

5   现在编译项目的时候会自动搜索E:\GLUT\include中的头文件和E:\GLUT\lib中的静态库文件了

6  吧glut.dll和glut32.dll放入C:\Windows\System32文件夹中(32bit系统)C:\Windows\SysWOW64中(64bit系统)


完成后在项目中添加源文件里添加XX.cpp文件,名字随意,拷贝如下代码:

#include <GL/glut.h> //注意此行语句一定要放在最开始的地方

#include<gl/gl.h>

#include<gl/GLU.h>

void myDisplay()

{

    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("第一个OpenGL程序");

    glutDisplayFunc(&myDisplay);

    glutMainLoop();

    return 0;

}

编译,通过...你的第一个GL程序完成

上述针对普通OpenGL开发

下面针对openGL超级宝典第六版 

作者在超级宝典中写了自己的代码 若想和笔者一样希望和作者保持相同的代码,,好想是废话....

那么就下载http://www.openglsuperbible.com sb6code压缩包

解压后,放在E盘,你会看到解压后文件夹下就有include,lib等文件夹,作者给你打包好了,不用自己去分类棒棒的

和上面一样添加包含文件目录(头文件引用)和库引用。。。

创建一个空win32项目,,对你没看错是win32项目,这本书的例子都是基于windows窗口编写的,所以需要windows操作系统的支持啦,

新建一个XX.cpp

// Include the "sb6.h" header file#include "sb6.h"// Derive my_application from sb6::applicationclass my_application : public sb6::application{public:// Our rendering functionvoid render(double currentTime){// Simply clear the window with redstatic const GLfloat red[] = { 1.0f, 0.0f, 0.0f, 1.0f };glClearBufferfv(GL_COLOR, 0, red);}};// Our one and only instance of DECLARE_MAINDECLARE_MAIN(my_application);
编译运行,如果你不慎创建了一个控制台程序,那么编译时会出现LINK链接错误

>MSVCRTD.lib(crtexe.obj) : error LNK2019: 无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup

别担心,右键项目->属性->链接器->系统  第一栏 子系统切换成窗口 (/SUBSYSTEM:WINDOWS)

done!

enjoy your first gl programme :)


0 0
原创粉丝点击