ITCS 4120/5120
Spring 2005
Final Exam
Professor Wartell
Read over the entire test first before beginning. Different questions are worth different amounts of points so spend your time accordingly. The questions are ordered from the questions worth the fewest points to the questions worth the most points.
Generally 2 point questions should have answers that are only 2-4 sentences or items.
You have the entire 3 hour period if you need it for this exam. This exam will be graded out of 100 points but there are a total of 125 points. This gives you some flexibility to skip questions or parts of questions that you get stuck on.
(If some student manages to get over 100 points I will give that individual extra credit; but their extra credit won’t adversely affect any scaling or curving of the grades of the class as a whole. Given the exams length, it is probably unlikely anyone will answer all questions).
1)[2pts] What are the basic geometric properties of affine transformations? (i.e. what geometric properties do these transformation preserve and not preserve).
2)[2pts] What are the basic geometric properties of non-affine collineations (such as a perspective collineation)? (i.e. what geometric properties do these transformations preserve and not preserve).
3)[2pts] The perspective projection that many ITCS students have seen in earlier math classes maps 3D space onto a 2D space (a plane). The computer graphics 3D viewing transformation process generally, however, uses a more sophisticated perspective projection that maps 3D space to 3D space. What are the two motivations or advantages for using this 3D-to-3D perspective (non-affine) collineation in the 3D viewing process?
4)[2pts] (A) We can considered visibility as a function that maps a projection reference point (PRP) and an arbitrary point, P, to a value in the set {TRUE,FALSE} which indicates whether Pis visible from PRP. In words how would you geometrically compute “visible(PRP,P)”? (B) Ifwe have a geometric scene description,S, and we transform S and a particular PRPbysome transformation to S′ and PRP′, what geometric property must the transformation preserve in order to guarantee the outcome of a visibility test for the PRP any given point Pin Sequals the outcome for the visibility test for PRP′and P′in S′?
5)[2pts] If Irefl is the light intensity reflected of a transparent surface and Itransis the light intensity entering a transparent surface and kt is the surface’s transparency coefficient, what is the equation to compute the total surface light intensity I?
6)[3pts] What is the monitor response curve? What is its equation?
7)[3pts] For the basic illumination model, describe in words what the ambient lighting term is, what type of light interaction it approximates, and give an example of a limitation of this approximation.
8)[4pts] (A) Describe an orthogonal parallel projection? (B) Describe an axonometric projection? (C) Describe an isometric projection? (Use illustrations).
9)[5pts] (A) Describe a limiting assumption that the back-face removal technique has? (B) Describe and/or illustrate an instance where back-face removal correctly removes some of the non-visible polygons but fails to correctly handle all visibility issues? (C) How would you compute back-face removal for a polygon and what equation would you use?
10)[5pts] Gouraud Shading: Given the polygon below with vertices 1,2,3 with coordinates (x1,y1) etc. and intensities at each vertex I1,I2,I3. (A) How would you compute the intensity at point l? [Give equation]
11)[10pts] (A) Illustrate an oblique perspective viewing frustum and label all the key geometric locations and/or distances. (Assume a center of projection (PRP) located at the origin of the coordinate system you’re working in and that the projection plane is parallel to the XY plane and offset along the negative z-axis).
(B) In normalized device coordinates what is the shape, size and exact coordinate locations of the planes of the normalized view volume? Illustrate it.
(C) What is the matrix transformation that would transform 3D space such that the oblique perspective viewing frustum from part (A) transforms into normalized view volume in normalized device coordinates (part B)? [For full credit give the final exact 4x4 transformation matrix or give the sequence of the exact 4x4 transformation matrices that could be multiplied together to give the final matrix. For partial credit give the sequence of these basic matrices that are used to build up the final matrix but instead of giving the detailed exact equations for each matrix explain in words what each matrix does and which of the parameters from (A) each matrix depends on]
12)[10pts] Assume the following region code convention for 3D clipping:
Assume a line segment with end points (p1,p2) with homogenous coordinates
p1=(xh1,y h1,z h1,w h1) and p2=(xh2,yh2,zh2,wh2) in the configuration shown below. The vertical dashed lines dropped from the two points indicate their perpendicular projection onto the XZ plane. Assume the illustration below is the result after mapping into standard normalized device coordinates using the standard convention for the view volume’s boundary planes’coordinates.
A) What are the region codes for p1,p2?
B) What feature about the region codes indicates the need to clip to the near plane?
C) Explain how you’d compute the intersection point on the near plane and show the equations you’d use to compute the resulting intersection point.
13) [10pts] (A) Give an outline of the depth-buffer algorithm.
(B) Explain briefly how depth-buffer tests can be worked into a triangle scan-conversion routine. (C) Give the basic equations you’d use for computing the current pixel’s z value as the scan-converter steps along an active edge of a triangle one scan-line at a time (stepping in y and x—don’t forget along an active edge the y-step is always 1 and the x-step is a fraction based on edge’s slope). Use illustrations as necessary to explain your work.
14)[10pts] In the depth sort algorithm, the surfaces are sorted in a list Lby each surface’s smallest z coordinate. (Assume Z+ is the projection plane normal pointing towards the PRP). The algorithm compares the farthest surface, SF, on the list to each successive surface Si in L. IfSF‘s z extentsdonotoverlapSi’s z extents, then we know a correct rendering order would render SFbefore Si and the algorithm proceeds to Si+1in list L. If Si‘s and SF‘s z extents do overlap, the algorithm performs a sequence of several more tests comparing SFandSi. (A) What are each of these tests? For each test give a brief illustration of a case, where the test passes. (B) If all tests fail, what does the algorithm do?
15)[10pts] (A) The set of line segments below represent a set of polygons. The arrows indicate the front side of a polygon. Construct a BSP tree for these polygons using the surfaces that embed each polygon as the BSP partitioning surfaces. Create your tree such that a node’s left child stores information behind a partitioning surface while the right child is for information in front of the partitioning surface. (B) Use your BSP tree to list the order in which the BSP’s polygons will be rendered for the projection reference point PRP1 and also PRP2. Assume we render farther polygons first.
16)[10pts] Radiosity: (A) What is a form factor? (B) What is the basic equationto compute a form factor? (C) Illustrate and label the key geometry (surfaces, vectors, angles, etc.) for the equation in (B).
17) [15pt] Given the two coordinate systems A and B shown in the diagram:
a) What is the matrix MB←Athat transforms a point’s coordinate given in Ainto its coordinate inB? (From inspecting the diagram you should be able to give the exact real number values of the elements in the matrix—its ok to leave results in a form like cos 45 if you want).
b) If you had to compute MB←Aby concatenating together only elementary matrices (translations and rotations, scales , and shears about origin) what would the sequence of these elementary matrices be? You should leave your answer as a sequence of matrices to be concatenated and for each matrix indicate what type of elementary matrix it is.
18)[20pts] (A) Give the high level equation for the basic illumination model used in computer graphics assuming 1 through n point light sources. Include terms for radial (distance) attenuation and angular (spot light) attenuation. (B) Give the calculations (i.e. using dot products or cos’s as appropriate) for each term in this equation that involves computing angles between various vectors. Include a textual description of any special cases where each term may be assigned a value of 0.0. (C) Illustrate and label all the pertinent vectors in a diagram.