Homework 2 Corrections and Clarifications


You are asked about the disadvantage of using a constant halfway vector for general lighting and viewing directions.  This quesition is not about about how the halfway vector model (N.H)^ns differs from (R.V)^ns; let's assume for now that they are equally good models of light reflection.  Rather, the question is about what happens when the globally constant lighting and viewing direction assumption, which allows for a constant halfway vector, is no longer valid.

There is some confusion about the meaning of distinct roots and roots with multiplicity greater than 1.  Let's consider the sphere intersection example.  This problem reduced to solving a quadratic equation:

    a t^2 + b t + c = 0

 which has the solution(s):

    t = (-b +/- sqrt(b^2 - 4 a c) ) / 2a

There are then three types of solutions:

    b^2 - 4 a c > 0  =>  two real roots =>  two possible intersections

    b^2 - 4 a c = 0  =>  one real root  =>  one possible intersection (tangent to the sphere)

    b^2 - 4 a c < 0  =>  two complex roots =>  no intersection

The second case is the tricky one.  In effect, the solution is t = (-b +/- 0) / 2a.  So, you get t = -b/2a, but you get a version plus 0 and a version minus 0.  You can think of these as two roots that are equal to each other.  Or, you can refer to these as one root with multiplicity two.  More formally, we'd say that this case corresponds to finding one distinct real root of multiplicity 2, and no complex roots.  In the homework problem, we're trying to get you to answer this as: one disctinct real root, one real root of multiplicity > 1, no complex roots.  Note that the second part, the number of real roots of multiplicity > 1, is about identifying how many of your distinct real roots meet the multiplicity criterion -- these are not additional real roots, but a qualification about the types of real roots that you enumerated.

Now, let's apply the terminology to all the sphere cases:

    b^2 - 4 a c > 0  =>  two distinct real roots, no real roots with multiplicity >1, no complex roots

    b^2 - 4 a c = 0  =>  one distinct real root, one real root with multiplicity > 1, no complex roots

    b^2 - 4 a c < 0  =>  no distinct real roots, no roots with multiplicity > 1, two complex roots

Along with these cases, you can draw corresponding ray-circle intersections (for a circular slice through a sphere), and they would correspond to a ray passing through the circle at two locations, a ray passing tangent to the sphere, and a ray missing the sphere altogether.

Here's another take on thinking about these roots.  We can always factor a quadratic equation into the form:

  (t - p)(t - q) = 0

where p and q are the roots of the quadratic equation.  You can end up with three cases:

  p,q are real, and p != q  =>
      two distinct real roots
      no real roots with multiplicity > 1
      no complex roots

  p,q are real, and p == q =>
      one distinct real root
      one real root with multiplicity > 1
      no complex roots

  p,q are complex =>
      no distinct real roots
      no real roots with multiplicity > 1
      two complex roots

Similar analysis can be applied to a quartic equation which has four roots (not all of them necessarily distinct!).

For the torus problems 3(c) and 3(d), you do not have to solve for any roots.  Rather, you must reason about roots by counting them and by considering their geometric interpretations, as in the sphere example.

You should draw your ray in the y-z plane (not the x-z plane, as the problem originally stated).

For cone texture mapping, use the same mapping as you would for a cylinder, i.e., u=theta/(2*pi) and v=y/h, where the cone sits on the x-z plane and narrows to a point at height h, and you can refer to any point on the cone in terms of a vertical position (y) and rotation (theta) around the y axis.

The question is whether or not the reflections off of a new, synthetic object will look the same as the reflections you would if the object were place in the original scene.  You should:

When a curve is C^0 continuous, you should assume that it is *not* C^1 continuous.  Similarly, when a curve is G^0 continuous, you should assume that it is not G^1 continuous.