Final Exam Flashcards

1
Q

Converting polygons into pixels

A

Rasterization

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Shiny spots or highlights

A

Specular

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

The opacity of a pixel

A

Alpha channel

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Soft shading of a surface that changes with angle to a light source

A

Diffuse

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

A pixel going through the graphics pipeline, along with location and other data

A

Fragment

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

A fixed amount of light added to each pixel

A

Ambient

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Which of the following would be valid reasons for using a number of colors other than 3 to represent the color of a pixel? (Select the best answer.)

Question 2Answer

a.
You are designing a graphics system for colorblind people

b.
You are designing a graphics system for space aliens who have four different types of cones

c.
You are modeling the color-spreading effect of a prism, which depends on light wavelength

d.
All of the above

A

d.
All of the above

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Shooting multiple rays through each pixel to reduce the stair-step effect

A

Antialiasing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Adjusting the number of rays you shoot through each pixel according to how fast the color is changing with respect to nearby pixels

A

Adaptive anti-aliasing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

When an object is partially transparent a ray striking the surface splits, with some of the “energy” bouncing and some going through. This results in a/an

A

Ray tree

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

An algorithm for reducing the number of intersection tests needed to find the object that a ray strikes first

A

Bounding-volume heirarchy

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

When using ray tracing to generate a realistic image, a ray is shot from the eye point, through a pixel, and to an object in the scene. From there the ray travels in various directions in different cases. In each case below choose the direction the ray would travel.

  1. Ray tracing a specular highlight
  2. Ray tracing for diffuse illumination
  3. Transparency without refraction
  4. Transparency with refraction
A
  1. Reflection direction
  2. Toward the light source
  3. Continue in the same direction
  4. Continue in nearly the same direction, modified by the index of refraction
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Suppose you are generating a ray-traced image of a scene (1,000,000 pixels) with 10,000 objects using the basic algorithm (no adaptive anti-aliasing or bounding volume hierarchy). You shoot 25 rays through each pixel for anti-aliasing, and you limit the number of rays in each ray tree to 40. There are 3 color values per pixel, 60 frames per second, and 3 point light sources.

How many ray / object intersection tests would be needed for real-time ray tracing?

Question 5Answer

a.
250 million

b.
1.8 quadrillion

c.
250 billion

d.
600 trillion

A

d.
600 trillion

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Rayshade lets you use a noise function to alter certain surface properties of objects in a scene. Which of the following can be done with procedural textures? Select all that apply.

Question 6Answer

a.
Making a hilly landscape

b.
Waves on a body of water

c.
Wispy clouds that vary in transparency

d.
Wood-grain patterns on surfaces

A

A, B, C, D

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

The algorithm used to compute form factors

A

Hemicube

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

The light reflected or emitted from a patch

A

Radiosity

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

A section of an object of the scene treated as a unit in the radiosity computation

A

Patch

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

The fraction of radiosity from one patch that reaches another patch

A

Form factor

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

The law of physics that radiosity simulates

A

conservation of energy

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Which of the following visible effects are strengths of the radiosity algorithm? (Check all that apply)

Question 8Answer

a.
Transparency with refraction

b.
Shadows with soft edges

c.
Mirror-like reflections

d.
Color bleeding from one surface to another

A

B, D

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

You want to draw a triangle in 2D canvas. What primitive should you use?

Image
Rectangle
Text
Path

A

Path

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

You want to draw a circle in 2D canvas. What primitive should you use?

Image
Text
Path
Rectangle

A

Path

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

You want to draw a wavy line in 2D canvas. What primitive should you use?

Text
Path
Image
Rectangle

A

Path

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Suppose you are generating graphics via Canvas 2D and you want to make everything twice as tall using the setTransform function. Which value would you modify?
[ a c e ]
[ b d f ]
[ 0 0 1 ]

What would you set its value to?

A

d
2

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

The jQuery function call

$(“#menu”)

operates on which element or elements on the web page?

Element with ID “menu”
Elements with class “menu”
Elements of type menu

A

Element with ID “menu”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

The jQuery function call

$(“#menu”).bind(‘click’,display)

causes a function called ‘display’ to be called for what menu event?

Click
Mouse-exit
Mouse-over

A

Click

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

Primitives such as spline surfaces are cut up into polygons:

Front End
Vertex Shader
Rasterizer
Fragment Shader
Back End

A

Front End

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

The depth buffer algorithm for hidden surface removal:

Front End
Vertex Shader
Rasterizer
Fragment Shader
Back End

A

Back End

29
Q

Multiplying vertices by the modelview and projection matrices:

Front End
Vertex Shader
Rasterizer
Fragment Shader
Back End

A

Vertex Shader

30
Q

Converting a triangle into pixels:

Front End
Vertex Shader
Rasterizer
Fragment Shader
Back End

A

Rasterizer

31
Q

Blending a transparent pixel with what is behind it:

Front End
Vertex Shader
Rasterizer
Fragment Shader
Back End

A

Back End

32
Q

Computing the brightness of each vertex of a polygon

Front End
Vertex Shader
Rasterizer
Fragment Shader
Back End

A

Vertex Shader

33
Q

Smooth-shading the pixels of a polygon based on the lighting values at each vertex:

Front End
Vertex Shader
Rasterizer
Fragment Shader
Back End

A

Fragment Shader

34
Q

Front End:

A

Task: Processes primitives with vertices.
Role: Prepares vertices for rasterization by applying transformations and setting up vertex data.

35
Q

Vertex Shader

A

Task: Processes individual vertices to calculate their final positions and attributes.
Role: Part of the Front End, transforms vertex positions from object space to clip space.

36
Q

Rasterizer

A

Task: Converts polygons into fragments (pixels).
Role: Turns triangles into fragments, determining which pixels on the screen the triangle covers.

37
Q

Fragment Shader

A

Task: Processes fragments to compute the final color of each pixel.
Role: Part of the Back End, calculates the final color of each pixel based on interpolated vertex data and additional inputs.

38
Q

Back End

A

Task: Processes fragments, not including the user-supplied fragment shader.
Role: Handles per-sample operations, blending, and depth testing to determine the final color of each pixel on the screen.

39
Q

WebGL Primitive? (T/F)
Point

A

T

40
Q

WebGL Primitive? (T/F)
Line

A

T

41
Q

WebGL Primitive? (T/F)
Triangle

A

T

42
Q

WebGL Primitive? (T/F)
Triangle Fan

A

T

43
Q

WebGL Primitive? (T/F)
Polygon

A

F

44
Q

WebGL Primitive? (T/F)
Arc

A

F

45
Q

WebGL Primitive? (T/F)
Spline curve

A

F

46
Q

WebGL Primitive? (T/F)
Text

A

F

47
Q

WebGL Primitive? (T/F)
Image

A

F

48
Q

A program organization in which the program waits for something to happen and then handles it

Event mode
Event loop
Sample mode
State diagram

A

Event loop

49
Q

Configuring a sensor to interrupt a program when something happens

Event mode
Event loop
Sample mode
State diagram

A

Event mode

50
Q

Reading a sensor at fixed intervals

Event mode
Event loop
Sample mode
State diagram

A

Sample mode

51
Q

Specifying what a program should do in various situations

Event mode
Event loop
Sample mode
State diagram

A

State diagram

52
Q

Mousedown handler:

Go into paint mode
Exit paint mode
Store mouse position
Draw a dot
Draw a line from the old mouse position to the new
Draw a happy face

A

Paint mode
Store mouse position
Draw a dot

53
Q

Mouseup handler:

Go into paint mode
Exit paint mode
Store mouse position
Draw a dot
Draw a line from the old mouse position to the new
Draw a happy face

A

exit paint mode

54
Q

Mouse move handler:

Go into paint mode
Exit paint mode
Store mouse position
Draw a dot
Draw a line from the old mouse position to the new
Draw a happy face

A

draw a line from the old mouse position to the new
set old mouse position to the new

55
Q

The triangles being drawn must be sorted back to front and drawn in that order. This is called the painter’s algorithm. (T/F)

A

False

56
Q

Hidden surface removal happens in the geometry-processing (front end) part of the pipeline. (T/F)

A

False

57
Q

When a polygon is rasterized, the distance of the fragment from the viewer is stored, and it moves along with the other fragment data through the back end of the pipeline. (T/F)

A

True

58
Q

When several fragments are drawn that would appear at the same pixel on the screen, they must be drawn in back to front order. (T/F)

A

False

59
Q

When a fragment is stored in the framebuffer, its distance from the viewer is compared to the distance for the fragment already there. If the new fragment is further away, it is discarded. (T/F)

A

True

60
Q

Given a vector u = <1, 2, 3>, what is |u|, the length of u?

A

\sqrt{\left(1^{2}+2^{2}+3^{2}\right)}
sqrt(14)

61
Q

Given vectors u = <.333, .667, .667> and v = <.667, .667, .333>, what is u dot v?

A

.889
Def: u * v = ux vx + uy vy+ uz vz
u * v = |u| |v| cos θ
(.333.667) + (.667.667) + (.667*333)

62
Q

Given vectors u = <.333, .667, .667> and v = <.667, .667, .333>, what is u x v (cross product)?

A

u x v = <uyvz - uzvy, uzvx - uxvz, uxvy - uyvx>
<-.222, .334, -.222>

63
Q

Given a point P1 = (1, 2, 3) and P2=(-2, 2, -1), match the following point descriptions with their values:

A point half way between P1 and P2

A point on the line containing P1 and P2, but on the far side of P2 from P1

A point on the line between P1 and P2, one quarter of the way from P1 to P2

A

(-.5, 2, 1)
(-5, 2, -5)
(0.25, 2, 2)

64
Q

Suppose the dot product of two vectors is .809. Which of the following could be the angle between the vectors? (Select all that apply.)

a.
36

b.
144

c.
-36

d.
-144

A

36
-36

65
Q

If two vectors are normal (perpendicular) to each other, their dot product will be…

Question 6Answer

a.
Positive

b.
Negative

c.
Zero

A

zero

66
Q

Given a viewer standing at (1, 2, 3) and looking at the origin, what is the viewing direction?

A

(-1, -2, -3)

67
Q

Suppose you have a viewer at (1, -2, 3) looking at the origin and a polygon with outward normal <-2, 1, 1>. Is the front of the polygon visible from the viewpoint?

A

Yes

68
Q

Given a polygon with points P1, P2, and P3 in counterclockwise order from the front, what is a formula for computing an outward surface normal?

A

(P2-P1)x(P3-P2)