http://www.lighthouse3d.com/tutorials/glut-tutorial/

GLUT是OpenGL Utility Toolkit的意思.作者Mark J. Kilgard把它设计成跨平台的库.所以不用管x-window或者微软的windows系统.Kilgard先实现了x-window版本,然后Nate Robins移植到微软的windows系统下.感谢他们俩.

利用GLUT你可以5行代码实现一个OpenGL窗体,再用3-4行代码实现你的鼠标键盘事件. GLUT令代码变得简单,因此学一下有用.虽然GLUT已经不再维护了,但它目前已经足够用了.

GLUT除了提供发行包之外,还提供了很多例子.你可以到官网GLUTs page看.

本教程会引导你用GLUT构建基础程序.本教程不会用到复杂的特效.我会用OpenGL2.0,因为它够简单,避免了一些复杂的课题.

另外还有开源的GLUT版本,像freeGLUTOpenGLUT.他们的API和GLUT99.9%相同,所以你用这两个的话,本教程也适用.

PS: 各个版本的最后更新日期如下:

GLUT for X-Window: 1998.8

GLUT for MS Windows: 2001.11

OpenGLUT: 2005.3

FreeGLUT: 2013.4 (目前仍在持续更新中..)

如果你觉得有地方没说清楚,你可以留言,期待你的反馈.

目录

基础

安装

初始化

改变窗体大小

动画

输入 (预备知识: http://www.cs.princeton.edu/courses/archive/fall99/cs426/lectures/view/sld001.htm)

键盘

移动镜头1

键盘高级特性

移动镜头2

整合代码1

鼠标

移动镜头3

整合代码2

弹出菜单

弹出菜单基础

子菜单

修改菜单

交换菜单

整合代码3

字体

位图字体

整合代码4

位图和正交投影视图

笔划字体

额外功能

每秒帧数

整合代码5

游戏模式

整合代码6

子窗体

创建和关闭子窗体

重整子窗体

渲染到子窗体

整合代码7

避开空闲函数

glutPostRedisplay函数

整合代码8

源代码和项目文件

附英文版目录

Index

Basics

Input

Pop-up Menus

Fonts

Extras

Subwindows

Avoiding the Idle Func

Source Code and Projects

[译]GLUT教程(目录)的更多相关文章

  1. [译]GLUT教程 - 安装

    Lighthouse3d.com >> GLUT Tutorial >> Basics >> Setup 你需要什么 要用GLUT库开发程序,你可以下载最新版本3. ...

  2. [译]GLUT教程 - 游戏模式

    Lighthouse3d.com >> GLUT Tutorial >> Extras >> Game Mode 根据GLUT官网的说明,GLUT的游戏模式是为开启 ...

  3. [译]GLUT教程 - glutPostRedisplay函数

    Lighthouse3d.com >> GLUT Tutorial >> Avoiding the Idle Func >> glutPostRedisplay 直 ...

  4. [译]GLUT教程 - 整合代码8

    Lighthouse3d.com >> GLUT Tutorial >> Avoiding the Idle Func >> The Code So Far VII ...

  5. [译]GLUT教程 - 整合代码7

    Lighthouse3d.com >> GLUT Tutorial >> Extras >> The Code So Far VII 以下是子窗体的最终版本代码. ...

  6. [译]GLUT教程 - 渲染到子窗体

    Lighthouse3d.com >> GLUT Tutorial >> Subwindows >> Rendering to Subwindows 先回顾一下之前 ...

  7. [译]GLUT教程 - 重整子窗体

    Lighthouse3d.com >> GLUT Tutorial >> Subwindows >> Reshape Subwindows 重整函数的回调需要处理两 ...

  8. [译]GLUT教程 - 创建和关闭子窗体

    Lighthouse3d.com >> GLUT Tutorial >> Subwindows >> Creating and Destroying Subwind ...

  9. [译]GLUT教程 - 整合代码6

    Lighthouse3d.com >> GLUT Tutorial >> Extras >> The Code So Far VI 下面代码以窗体模式启动.你可以在 ...

随机推荐

  1. 洛谷——P1170 兔八哥与猎人

    P1170 兔八哥与猎人 题目描述 兔八哥躲藏在树林旁边的果园里.果园有M × N棵树,组成一个M行N列的矩阵,水平或垂直相邻的两棵树的距离为1.兔八哥在一棵果树下. 猎人背着猎枪走进了果园,他爬上一 ...

  2. ubuntu网卡问题

    目前遇到的ubuntu网卡相关问题总结 ------------------------------------------- 装ubuntu系统后,有线网卡不能用 电脑:办公室dell台式电脑(较新 ...

  3. haproxy代理kibana、nginx代理kibana并实现登录验证

    在使用ELK进行日志统计的时候,由于Kibana自身并没有身份验证的功能,任何人只要知道链接地址就可以正常登录到Kibana控制界面,由于日常的查询,添加和删除日志都是在同一个web中进行,这样就有极 ...

  4. How to: Launch the Debugger Automatically

    Sometimes, you may need to debug the startup code for an application that is launched by another pro ...

  5. C++ development cross platforms

    1. target platforms: linux suse, windows server, both use vmware virtual machine on lab server. 2. c ...

  6. numpy自动生成数组

    1 np.arange(),类似于range,通过指定开始值,终值和步长来创建表示等差数列的一维数组,注意该函数和range一样结果不包含终值. >>> np.arange(10) ...

  7. ISP基础一

    1.专业术语 [ColorTemp] 色温 所谓色温,简而言之,就是定量地以开尔文温度(K)来表示色彩.英国著名物理学家开尔文认为,假定某一黑体物质,能够将落在其上的所有热量吸收,而没有损失,同时又能 ...

  8. JStorm的搭建文档

    1.下载jstorm的jar包 https://github.com/alibaba/jstorm/releases 2.解压jstorm的包 tar -xvf jstorm-2.4.0.tgz mv ...

  9. 简谈WP,IOS,Android智能手机OS

    什么是智能手机? 相信到现在这个已经是傻瓜到不能再傻瓜的问题了 智能手机都不懂? 那你活着还有什么意思= = 但是为了谈论今天的三大主角:wp,ios,android 不得不回答一下这个笨笨的问题 如 ...

  10. selenium的PageObject设计模式

    PageObject设计模式1. Web自动化测试框架(WebTestFramework)是基于Selenium框架且采用PageObject设计模式进行二次开发形成的框架. 2. web测试时,建议 ...