2016杭电《实时三维图形绘制》OpenGL课复习提纲、试题展示及参考答案精选.docVIP

  • 14
  • 0
  • 约 11页
  • 2017-01-03 发布于湖北
  • 举报

2016杭电《实时三维图形绘制》OpenGL课复习提纲、试题展示及参考答案精选.doc

2016学年杭州电子科技大学 《实时三维图像绘制》考试 红色标记表示考到了,都是简答题,有超纲的(老师给的提纲) 超纲题: 【1】写出至少三种OpenGL矩阵堆栈,并说明作用? 【2】请完整写出用glut和OpenGL编写的程序:绘制一个平面正三角形,使它绕着过它中心的垂直于平面的轴自动旋转。 OpenGL中能渲染的基本元素是什么?GLU 可以渲染哪些基本元素? 答: OPENGL基本元素: GL_POINTS、 GL_LINES、GL_LINE_STRIP 、GL_LINE_LOOP GL_TRIANGLES、GL_TRIANGLE_STRIP 、GL_TRIANGLE_FAN GL_QUADS、GL_QUAD_STRIP、GL_POLYGON GLU基本元素: NURBS曲线曲面,二次曲面等 简述OpenGL函数的语法特点? 答: OpenGL函数以前缀gl开头,并把组成函数的每个单词首字母用大写形式表示(如glClearColor)。类似地,还定义了一些以前缀GL_开头的常量,所有单词都使用大写形式,并以下划线分隔(如GL-COLOR-BUFFER-BIT)。 3、用框图说明OpenGL的渲染流程,并简要说明每个坐标系。 写出OpenGL中局部光照的方程,要包含的系数有光源参数、材料参数、聚光灯的参数、衰减参数等,方程要表示是多个光源的。 答: 顶点颜色=顶点处的材料发射颜色+全局环境光(在顶点处根据材料环境颜色属性进行缩放)+经过适当衰减的来自所有光源的环境、散射、镜面光成分 5、在OpenGL中,使用光照的步骤是什么? 答: 1、定义每个物体的每个顶点的法线向量。 2、创建和选择一个或多个光源,并设置它们的位置。 3、创建和选择一种光照模型。 4、定义场景中物体的材料属性。 6、分析程序并计算 请看下面的一段程序,并计算三个顶点、和处的光照的颜色值。 void init(void) { GLfloat mat_ambient[] = { 0.2, 0.2, 0.2, 1.0 }; GLfloat mat_diffuse[] = { 0.8, 0.8, 0.8, 1.0 }; GLfloat mat_emission[] = { 0.0, 0.0, 0.0, 1.0 }; GLfloat mat_specular[] = { 0.3, 0.3, 0.3, 1.0 }; GLfloat mat_shininess[] = { 2.0 }; GLfloat light_position[] = { 1.0, 1.0, 1.0, 0.0 }; GLfloat light_ambient[] = {0.2, 0.2, 0.2, 1.0}; GLfloat light_diffuse[] = {1.0, 1.0, 1.0, 1.0}; GLfloat light_specular[] ={1.0, 1.0, 1.0, 1.0}; GLfloat lmodel_ambient[] = {0.2, 0.2, 0.2, 1.0}; glClearColor (0.0, 0.0, 0.0, 0.0); glShadeModel (GL_SMOOTH); glMaterialfv(GL_FRONT, GL_AMBIENT, mat_ambient); glMaterialfv(GL_FRONT, GL_DIFFUSE, mat_diffuse); glMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular); glMaterialfv(GL_FRONT, GL_EMISSION, mat_emission); glMaterialfv(GL_FRONT, GL_SHININESS, mat_shininess); glLightfv(GL_LIGHT0, GL_POSITION, light_position); glLightfv(GL_LIGHT0, GL_AMBIENT, light_ambient); glLightfv(GL_LIGHT0, GL_DIFFUSE, light_diffuse); glLightfv(GL_LIGHT0, GL_SPECULAR, light_specular); glLightMo

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档