CG ECSE-4750 Computer Graphics Midterm, RPI, Thurs 2017-10-12
Name, RCSID:
. .
Rules:
- You have 60 minutes.
- You may bring in one 2-sided 8.5"x11" paper with notes.
- You may not share material with each other during the exam.
- No collaboration or communication (except with the staff) is allowed.
- There are 18 questions. Check that your copy of this test has all the pages.
-
(4 pts) Suppose that we have a plane in 3-D thru the points A(4,2,0), B(2,2,0), and C(3,1,0).
- What is its equation, in the form ax+by+cz+d=0 ?
- Consider the line L thru the points O(0,0,0) and P(1,1,1). Where does this line intersect the plane?
. .
-
(2) Which RPI grad was the technical person in the founding group of NVidia?
. .
-
(2) What hardware component had to get much cheaper in order to make frame buffers possible?
. .
-
(5) Part of changing from one coordinate system to another is scaling and making things fit. E.g., suppose that you had a square with lower left corner (llc) (0,0) and upper right corner (urc) (2,2). You want to scale and center it to just fit into a rectangle with llc (0,0) and urc (2,4). Find \(s, d_x, d_y\) in these formulae:
\(x' = s x+d_x\)\(y' = s y + d_y\). .
-
(2) Putting certain corkscrew-shaped mocucules in an electric field stretches them out. What widely used graphics device exploits this?
. .
-
(2) Which of the following types of GLSL variables can be stored in constant memory in the GPU?
uniform, varying, attribute.
. .
-
(2) If you do not tell OpenGL to do hidden surface removal, and two objects overlap the same pixel, then what color is that pixel?
- OpenGL throws an error.
- the closer object
- the farther object
- the first object to be drawn there
- the last object to be drawn there
. .
-
(5) Use the vector rotation formula to rotate the point (1,0,0) by 180 degrees about the axis (12,4,3).
. .
-
(2) In 2D, what is the complex number that corresponds to a rotation by 270 degrees?
. .
-
(2) What is gimbal lock?
. .
-
(2) What tool maps spectral colors into a human perceptual coordinate system? You use it to determine what one color a mixture of colors will appear.
. .
-
(2) What's a disadvantage of using a widely standardized API compared to a proprietary API?
. .
-
(2) This is a rotation matrix
\(\left(\begin{array}{ccc} 0.07142857142 & - 0.6589265829 & 0.7488081981 \\ 0.9446408685 & 0.2857142857 & 0.1613101866 \\ - 0.3202367695 & 0.6958326704 & 0.6428571428 \end{array}\right)\)
What's its determinant?
. .
-
(5) If \(\theta\) is the angle of rotation, what's \(\cos\theta\) ?
. .
-
(2) What does gl.bindBuffer do?
. .
-
(2) What does gl.uniform1f do?
. .
-
(5) Many programs we've studied have a line like this:
var y = 2*(canvas.height-event.clientY)/canvas.height-1;
This is necessitated because of something messy in the various coordinate systems these programs use. What?
. .
-
(2) What is GLSL used for?
. .
End of midterm, total 50 points.