Uh Oh, we've done several days of good hands-on computer type stuff, and now he's back with the THEORY. These notes just contain the Queries for the lecture of Monday 25 September. But they're important queries, of course. If you want the LECTURE NOTES for this Lecture, I hope that you will take good notes during the Lecture!
In order to work these queries out before class, you need to use the textbook's Chapter 3. We will introduce (or refresh your knowledge of) the Cross Product in the lecture.
Clipping
Query 6.1. Draw an (X,Y) coordinate axis and construct a square window from (0,0) to (3.3). Now plot a triangle with the three vertices (-3,0), (0,-1) and (6,3) in counterclockwise order. If polygon clipping is applied to this triangle, describe the resulting polygon by listing its vertices in counterclockwise order.
Normal Vectors
Query 6.2. Consider the three points given above as lying in the plane where Z=0. Compute the surface normal vector for this triangle via the cross product technique shown in class. Convince me that your answer is correct. Blinn's law is not allowed.
Query 6.3. Define a cube by listing its eight vertices in a vertex table, and then constructing a face table which refers to the vertices. Your cube can be anywhere in space that you choose. Use the counterclockwise convention. At most two of the faces may be parallel to an axial plane (XY, YZ or ZX).
Now construct the surface normals to two of the adjacent faces that are not parallel to axial planes.
How can you prove that these two normals are perpendicular to each other? They obviously must be, in order to be normals of adjacent cubic surfaces.
GIANT HINT:
The dot product of two vectors is equal to the product of their lengths and the cosine of the angle between them.
Colo(u)r Theory
These queries have been added in Sept. 2000. Since they were added very briefly before the class, their principal utility is in studying for exams.
(Our British author uses the colourful spelling, which I rather like.)
Query 6.4. Moshell explained the basic theory of trichromatic color and the "color gamut" of colors which the human can distinguish. There are many coordinate systems for trichromat color, of which RGB is the one most familiar to most computer scientists. Another is expressed in terms of "hue, lightness and saturation" (HLS).
Define each of these terms in your own words.
Query 6.5. Assume that two color dots have RGB values (0.0, 0.2., 0.2) and (0.0, 0.4, 0.4) respectively. Describe what you would see, and characterize the difference in the dots' perceived value in terms of HLS.
Query 6.6. If you construct the RGB color (1.0, 1.0, 0) you see a bright yellow color. Could this be predicted from the theory of complementary colors (which you presumably learned in elementary school, with crayons?)
Most of this lecture will be done by using an interactive color space explorer which is located at
http://www.cs.brown.edu/courses/cs092/VA10/HTML/start.html
You should experiment with this system to get a good sense of what Hue, Lightness and Saturaton mean.
A Diversion: Stereo Perception through Temporal Multiplexing, False Color and Polarization
To generate stereo images, a common concern in VR, you need to present two different images to the two eyes. If you have a dual-display Head Mounted Display, the stereo issue is simple: just put up two different images in two displays. For augmented reality (where you see things in the real world as well as the virtual world) there are a few problems to solve. The main one is that the left eye shouldn't see what the right one is seeing, and vice versa.
Stereo images always require that the viewer's position with respect to the screen be accounted for. Thus we always assume that the viewer has some kind of tracking device attached to their head, and that the software is changing the images appropriately as the viewers moves around. If this is not done, the images still look like stereo but the illusion rapidly fails when the user moves.
Time Multiplexing is done by providing glasses with shutters which open and close alternately. This causes a 50% "duty factor" penalty in brightness, and requires expensive glasses.
Color Aliasing means assigning certain colors to the left, and others to the right eye. This allows cheap glasses ("comic book 3d") but makes it impossible to present true color images.
Polarization uses the fact that the electric vector in light can be oriented in a particular direction. If you project two different images onto the screen with orthogonal polarizations, and provide polaroid lenses with similar polarizations, you will see stereo images. Polaroid preserves color, but the filters on the projectors also cost you about 50% of your light intensity and the ones on your eyes also have less than 100% transmittance for their favored polarization.
Query: 6.7: For each of the above techniques, what happens if multiple people need to see the same display - each in correct perspective?
Back to the course index
Back to the course syllabus
Back to the previous lecture
Onward to the next lecture