24春学期(高起本:1709-2103、专升本/高起专:2003-2103)《3D游戏软件设计》在线作业-00002
试卷总分:100 得分:100
一、单选题 (共 20 道试题,共 40 分)
1.函数glAlpaFunc用于设置alpha测试的参考值和比较函数的参数中,哪个参数的意义表示“绝不接受这个片段”
A.GL_NERVER
B.GL_ALWAYS
C.GL_LESS
D.GL_EQUAL
2.我们使用函数gluLookAt(0,1,0, 0,0,-3,0,1,0)观察物体,那么,我们的视点起始处为
A.(0,1,0)
B.(0,0,-3)
C.(-3,0,1)
D.(1,0,0)
3.下列哪个不属于计算机上支持的像素位数
A.4位
B.24位
C.20位
D.32位
4.下列哪个颜色不属于三原色
A.红
B.蓝
C.绿
D.黑
5.进行点选操作后,假设当前的选择缓冲区为pSelectBuff,那么其中的pSelectBuff[0]的值得含义是
A.名字堆栈中压入的名字数
B.自上一个点击记录之后,与视景体相交的图元的所有顶点的最小窗口坐标的z值
C.自上一个点击记录之后,与视景体相交的图元的所有顶点的最大窗口坐标的z值
D.点击发生时名字堆栈的内容
6.启动混合后,如果红色物体和一个黑色物体用glBlendFunc(GL_ONE,GL_ONE)方式混合后,结果的混合部分的颜色为
A.红色
B.绿色
C.白色
D.黑色
7.当我们的源和目标的alpha值都为0.75时,当使用函数glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA)进行像素混合,得出的结果描述正确的是
A.源和目标混合效果相同
B.混合色更接近源
C.混合色更接近目标
D.无法判断
8.OpenGL中,四种独立的光照模型中哪种光线在环境中经过了充分的散射,无法辨识出它的方向
A.环境光
B.散射光
C.镜面光
D.发射光
9.现在有控制点为四个,每个顶点有三个坐标,现在我们想利用函数gluNurbsSurface进行NURBS表面设置,那么u_stride的值应该设置为
A.3
B.4
C.12
D.48
10.OpenGL中在颜色索引模式下使用的用于选择单值索引的函数是
A.glIndex*
B.glClampColor
C.glClear
D.glColor3f
11.如果有两束光进入人眼,他们的成分为(R1,G1,B1)和(R2,G2,B2)那么叠加在一起的时候,如果红色分量超出1了,那么最后的叠加结果为
A.R1+R2
B.1-R1-R2
C.1
D.R1+R2-1
12.在复合变换中,固定坐标模式的变换,对于坐标变换操作的调用和执行顺序描述中,正确的是
A.相对于同一个固定坐标系先调用的变换先执行
B.相对于同一个固定坐标系先调用的变换后执行
C.相对于同一个固定坐标系调用和执行的顺序没有必然联系
D.以上说法都不对
13.OpenGL中复杂的图形绘制一般都是如何实现的
A.用曲线模拟
B.用四边形拼接
C.用三角形拼接
D.只要是凸多边形拼接就可以
14.在利用矩阵进行图形三维变换时,我们只用3×3矩阵无法完成的变换操作是
A.平移
B.旋转
C.错切
D.以上说法都不对
15.将一条不经过原点的直线进行简单的缩放变换,缩放后直线和原来直线相比
A.位置变化长度不变
B.长度变化位置不变
C.位置和长度都会变化
D.以上说法都不对
16.我们在绘制完物体后,如果锁定了深度缓冲区,接着再调换物体的z方向的次序,此时关于遮挡关系以下说法中正确的是
A.AB物体重叠部分会发生混合
B.遮挡关系发生改变,AB物体遮挡关系互调
C.遮挡关系不变
D.无法判断
17.利用3×3矩阵进行二维点集变化时,我们使用的矩阵为[1,0,0;0,-1,0;0,0,1],那么变化后的效果为
A.沿着X轴对称变换
B.沿着Y轴对称变换
C.沿着原点对称变换
D.沿着直线y=x对称变换
18.两个矢量之间的叉乘结果为
A.一个矢量
B.一个标量
C.如果为零则不是矢量,其它情况下皆为矢量
D.以上说法都不对
19.使用函数glDisk(GLUquadric*qobj,Gldouble innerRadius,Gldouble outerRadius,Glint slices,Glint rings)如果要绘制一个没有空的圆盘,我们的参数innerRadius应该如何设置
A.大小和outerRadius相同
B.1
C.0
D.大于outerRadius
20.glClear(GL_COLOR_BUFFER_BIT)函数的功能是什么
A.把屏幕颜色全部清除成白色
B.把屏幕颜色清除成红色
C.把屏幕颜色清除成黑色
D.把屏幕颜色清除成当前设置清除颜色
二、多选题 (共 10 道试题,共 20 分)
21.下列哪些是OpenGL的常用库
A.GL
B.GLU
C.GLAUX
D.GLUT
22.在多边形偏移中,可以有哪几种模式用于不同的多边形光栅化
A.GL_FILL
B.GL_LINE
C.GL_POINT
D.GL_TRANGLES
23.在如下哪些模式下,不会产生任何绘图像素,并且屏幕被“冻结”
A.反馈模式
B.选择模式
C.渲染模式
D.都不是
24.实现物体坐标到达屏幕坐标的处理管线中,包括的处理步骤有
A.视图模型矩阵操作
B.投影操作
C.透视除法进行规范化
D.视口变换
25.我们使用函数glRender(Glenum mode)去启动控制模式,那么以下说法正确的是
A.可以启动渲染模式
B.可以启动选择模式
C.可以启动反馈模式
D.可以同时启动三种模式
26.以下对函数gluLookAt(0,0,0, 0,0,-3,0,1,0)描述正确的是
A.观察点在原点
B.观察方向指向z轴负方向
C.观察方向指向z轴正方向
D.正方向为y轴正方向
27.以下是正交投影glOrtho函数作用特点的是
A.视体是一个椎体
B.物体近大远小
C.视体为立方体
D.物体的距离并不影响它看上去的大小
28.我们可以通过函数glLightfv设置光源的哪些属性
A.环境光强度
B.散射光强度
C.镜面光属性
D.光源位置
29.以下是OpenGL三角形绘制方式的是
A.GL_TRIANGLE_STRIP
B.GL_TRIANGLE_FAN
C.GL_TRIANGLES
D.GL_TRIANGLELIST
30.当前程序的状态处于常规的绘图模式,那么接下来使用下列哪些函数可以推出当前绘图模式
A.glRender(GL_FEEDBACK);
B.glRender(GL_SELECT);
C.glEnd();
D.glRender(GL_RENDERMODE);
三、判断题 (共 20 道试题,共 40 分)
31.过滤函数中的参数GL_NEAREST可以将靠近像素中心的那个纹理单元用于放大和缩小来防止纹理扭曲
32.OpenGL的全称是OpenGraphicsLibrary吗
33.函数glDepthMask的flag参数设置为GL_TRUE,则标志着深度缓冲区可以写入
34.纹理坐标必须在RGBA模式下才能使用
35.视图变换和模型变换可以互逆变换
36.位图是由0和1组成的矩形数组
37.OpenGL至少可以在场景中包含1个光源
38.对物体进行平移变换和缩放变换的顺序不会对最后结果产生影响
39.在光栅屏幕中,我们的锯齿效果可以通过各种优化技术完全消除
40.过滤函数中的参数GL_LINER它会对一小块区域的纹理单元值进行加权平均,用于放大或者缩小
41.glDrawPixels函数被调用时,数据首先根据当前生效的像素存储模式从内存进行解包,接着执行像素传输操作。
42.glBlendFunc(Glenum srcfac,Glenum Destfac)参数Destfac表示已经存储在帧缓冲区中的像素的混合因子
43.OpenGL坐标系统和Windows程序的坐标系统方向完全一致
44.模板测试只有存在模板缓冲的情况下才会执行,否则模板测试总是能够通过
45.矩阵[cosA,-sinA;sinA,cosA]实现对二维空间上的图元的的逆时针旋转
46.设置光源位置时,当我们的光源坐标位置(x,y,z,w)中的w为0时代表我们的光为局部光源
47.无论是在反馈模式下还是选择模式下,物体的信息总是在任何片断测试之前返回
48.OpenGL的1.5版本中加入了OpenGLShadingLanguage
49.glNormal*函数是glBegin和glEnd之间的合法函数
50.glRotatef(fRot,0.0f,1.0f,0.0f)函数可以让图形绕着X轴偏转fRot角度