高级计算机图形学
中国科学技术大学计算机学院
黄章进
zhuang@ustc.edu.cn
定义几何图元
图元由下面语句定义:
glBegin( primType );
glEnd();
• primType 决定顶点如何组合成图元
glBegin( primType );
for ( i = 0; i < n; ++i ) {
glColor3f( red[i], green[i], blue[i] );
glVertex3fv( coords[i] );
}glEnd();
(右,顶,远)
OpenGL中的照相机
照相机被放置
在对象坐标系
的原点,指向z
轴的负方向
默认的视景体
是一个中心在
原点,边长为2
的立方体
(左,底,近)
正交视图
在正交视图(OpenGL默认视图)中,点
沿着z轴投影到z=0的平面上
z=0
视图矩形
平面z=0
程序结构
#include
void init() {…} // 设置OpenGL状态
void display() {…} // 显示回调函数
int main(int argc, char** argv)
{
glutInit(&argc,argv);
…
//创建并初始化GLUT窗口;
…
glutDisplayFunc(display);
…
注册其他回调函数;
…
init();
glutMainLoop();
这自动包含了gl.h,glu.h
显示回调函数
}
设置OpenGL状态
进入事件循环
第三章
输入与交互
第三章之第一节
简介
基本内容
输入设备
• 物理设备
• 逻辑设备
• 输入模式
GLUT事件驱动编程
• 鼠标事件
• 键盘事件
• 窗口事件