1. WebGL入门

单元测验1

1、单选题:
​JS 文件通过哪个命令获取canvas对象?‏
选项:
A: getWebGLContext(canvas)
B: document.getElementById("example")
C: canvas.getContext(2d)
D: <canvas id='webgl' width='400' height='400'></canvas>
答案: 【 document.getElementById("example")

2、单选题:
‌获取 WebGL 绘图环境的命令是?‌
选项:
A: getWebGLContext(canvas)
B: document.getElementById("example")
C: canvas.getContext(2d)
D: <canvas id='webgl' width='400' height='400'></canvas>
答案: 【 getWebGLContext(canvas)

3、单选题:
‍HTML 文件通过哪种标签引入 JS 文件?‌
选项:
A: head
B: body
C: script
D: title
答案: 【 script

4、单选题:
‎以下函数可用于清理颜色缓冲区的是?‏
选项:
A: gl.clearColor()
B: gl.clear()
C: console.log()
D: getWebGLContext()
答案: 【 gl.clear()

5、单选题:
​以下RGB值,表示绿色的是?‍
选项:
A: (1.0, 0.0, 0.0)
B: (1.0, 1.0, 0.0)
C: (0.0, 1.0, 0.0)
D: (0.0, 0.0, 1.0)
答案: 【 (0.0, 1.0, 0.0)

6、单选题:
‍顶点着色器中,用于存储顶点位置信息的内置变量是?‏
选项:
A: gl_PointSize
B: gl_Position
C: gl_FragColor
D: gl
答案: 【 gl_Position

7、单选题:
‍initShaders(gl, vshader, fshader); 命令实现了什么功能?‎
选项:
A: 获取 WebGL 绘图环境
B: 在 WebGL 系统内部建立和初始化着色器
C: 执行顶点着色器
D: 清理颜色缓冲区
答案: 【 在 WebGL 系统内部建立和初始化着色器

8、单选题:
‏gl.clearColor(1.0, 1.0, 1.0, 1.0); 将canvas背景色设置为?​
选项:
A: 紫色
B: 青色
C: 黑色
D: 白色
答案: 【 白色

9、单选题:
‍以下函数用于获取 attribute 变量存储地址的是?​
选项:
A: gl.vertexAttrib3f()
B: gl.vertexAttrib3fv()
C: gl.getAttribLocation()
D: gl.drawArrays()
答案: 【 gl.getAttribLocation()

10、单选题:
‌vec4 是 GLSL 的内置类型,该类型保存的是什么数据?‌
选项:
A: 4维向量
B: 3维向量
C: 2维向量
D: 浮点数
答案: 【 4维向量

11、单选题:
‍WebGL 提供了一种机制,可以一次性地向着色器传入多个顶点的数据,请问这种机制叫什么?‏
选项:
A: 着色器
B: 隐藏面消除
C: 缓冲区对象
D: attribute 变量
答案: 【 缓冲区对象

12、单选题:
‏gl.drawArrays(gl.POINTS, 1, n); 命令一共绘制了几个点?‎
选项:
A: n
B: n-1
C: n+1
D: 2n
答案: 【 n

13、单选题:
‏绑定缓冲区对象应使用哪个函数?​
选项:
A: gl.creatBuffer()
B: gl.bindBuffer()
C: gl.bufferData()
D: gl.disableVertexArray()
答案: 【 gl.bindBuffer()

14、单选题:
​以下不是类型化数组的是?‏
选项:
A: Int8Array
B: UInt32Array
C: Float32Array
D: Double64Array
答案: 【 Double64Array

15、单选题:
‌将缓冲区对象分配给attribute变量,应使用下列哪个函数?​
选项:
A: gl.vertexAttribPointer()
B: gl.vertexAttrib3f()
C: gl.enableVertexAttribArray()
D: gl.getAttribLocation()
答案: 【 gl.vertexAttribPointer()

16、单选题:
‎命令 gl.drawArrays(gl.POINTS, 0, 1); 中的 gl.POINTS 变量表明要绘制的是一个什么图形?‍
选项:
A: 线段
B: 三角形
C: 多边形
D: 点
答案: 【 点

17、单选题:
‎使用 gl.TRIANGLES 绘制四边形时,一共需要输入几个点?‌
选项:
A: 4
B: 5
C: 6
D: 7
答案: 【 6

18、单选题:
​gl.LINE_LOOP 表示绘制的是什么类型的图形?‏
选项:
A: 线段
B: 线条
C: 回路
D: 点
答案: 【 回路

19、多选题:
‍WebGL程序涉及到哪些编程语言?‌
选项:
A: C

剩余75%内容付费后可查看

发表评论

电子邮件地址不会被公开。 必填项已用*标注