OpenGL开发:官方GLUT库的环境配置

GLUT,是指OpenGL Utility Toolkit,用于开发独立于窗口系统的OpenGL程序,即该库打包了很多的窗口操作,提供了独立于具体操作系统的API,让你快速的在OpenGL开发中完成窗口相关操作,如窗口显示、输入设备读取、多级级联菜单、多窗口管理等等便捷功能。

在windows中开发OpenGL,多基于VS环境,以VS 2015 社区版为例,介绍如何配置完整的GLUT开发环境。

GLUT相关二进制库下载

除了官方GLUT,还有freeglut, 详见:SourceforgeGITHUB仓库

GLUT 3.7版本下载:下载连接

GLUT 下载列表页面:下载列表,包含多种系统与版本,以及相关文档

GLUT Windows库内容

包含如下5个文件:

Paste_Image.png
  • glut.dll 动态链接库
  • glut.h 头文件
  • glut.lib 库文件
  • glut32.dll 动态链接库
  • glut32.lib 库文件

两个动态链接库文件glut.dll, glut32.dll

需要放入到系统drive目录内,

Windows 32位系统为:

C:\Windows\System32

Windows 64位系统为:

C:\Windows\SysWOW64

实际上,放在可执行文件同级目录下,也是可以的,如,VS项目的Debug/,64位项目为x64/Debug/。为了方便起见,最好放置到系统drive目录下,为了后期发布,则应当与项目放置在一起。

头文件 glut.h

头文件放置到系统头文件放置的位置,这其中有多个选择,目前VS安装后,配置的相关开发平台库都具有OpenGL相关头文件和库,所以,只需要找到OpenGL的头文件,放置到相同位置。OpenGL头文件包括了:GL.h, GLU.h

具体的位置,结合VS项目,将很容易获取到。
如:

  C:\Program Files (x86)\Windows Kits\8.1\Include\um\gl

Lib库文件 glut.lib, glut32.lib

Lib库文件与头文件放置位置差不多,只不过是放置到统一的Lib库中。可以通过查看OpenGL的库的位置,放置到相同位置。OpenGL库文件包括了:GlU32.Lib, OpenGL32.Lib
如·:

C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x64

通过VS提供的路径进行配置

创建一个空的VS VC空项目:

创建Win32控制台程序
空的项目

打开项目属性面板:

Paste_Image.png

查看VC++目录的相关内容:

Paste_Image.png

配置包括了:Debug/Release的32位和64位平台的相关内容,需要根据具体的路径,和项目类型,进行放置头文件、Lib文件的位置。

注意:dll文件,是根据本机系统类型,而非项目类型,因此,64位机就放入到C:\Windows\SysWOW64,32位机就放到C:\Windows\System32

一个例程

#include<gl/glut.h>
#include<gl/glu.h>
#include<gl/gl.h>

void renderScene(void)
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glLoadIdentity();
    glBegin(GL_TRIANGLES);
    glVertex3f(-0.5, -0.5, 0.0);
    glVertex3f(0.5, 0.0, 0.0);
    glVertex3f(0.0, 0.5, 0.0);
    glEnd();
    glutSwapBuffers();
}

int main(int argc, char* argv[])
{
    glutInit(&argc, (char**)argv);
    glutInitDisplayMode(GLUT_DEPTH | GLUT_DOUBLE | GLUT_RGBA);
    glutInitWindowPosition(100, 100);
    glutInitWindowSize(320, 320);
    glutCreateWindow("Hello OpenGL");
    glutDisplayFunc(renderScene);
    glutMainLoop();//enters the GLUT event processing loop.
    return 0;
}

运行之后,看到黑色背景上,一个三角形,这是一个空间三角形:

Paste_Image.png

OpenGL以点、线、三角形为基本元素类型,空间三角形是OpenGL中使用最多的基本类型。

为什么一定要这么配置

其实不一定要这么配置,尤其是GLUT,打开glut.h,可以看到这么一段:

#pragma comment (lib, "winmm.lib")     /* link with Windows MultiMedia lib */
#pragma comment (lib, "opengl32.lib")  /* link with Microsoft OpenGL lib */
#pragma comment (lib, "glu32.lib")     /* link with OpenGL Utility lib */
#pragma comment (lib, "glut32.lib")    /* link with Win32 GLUT lib */

这里,链接glut32.lib,并没有指定具体的路径位置,所以,链接器会在Include Lib目录里找,因此需要放入到相应的Include目录。修改这个为相对路径或者绝对路径后,则无需如此放置。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,126评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,254评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,445评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,185评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,178评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,970评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,276评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,927评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,400评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,883评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,997评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,646评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,213评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,204评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,423评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,423评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,722评论 2 345

推荐阅读更多精彩内容