CSC418/2504F Fall 2000: Assignment 3

Due date: December 6th, in class. Late penalty: 20% per day.

Frequently-Asked Questions

How to submit your code

Solutions

  1. Continuity: [6 marks] Consider a function made up of two cubic segments, each defined for 0≤t≤1:
    NOTE: This question has a mistake in it. Ignore parts b, d, and f.
    1. [1 mark] Is the function C0 continuous?
    2. [1 mark] Is the function G0 continuous?
    3. [1 mark] Is the function C1 continuous?
    4. [1 mark] Is the function G1 continuous?
    5. [1 mark] Is the function C2 continuous?
    6. [1 mark] Is the function G2 continuous?

  2. [6 marks] Consider a cubic curve C(t) with 0≤t≤1,defined by 4 control values, such that
    • C(0) = P1
    • C(1/2) = P2
    • C(1) = P3
    • C(2) = P4 (if the curve were extended beyond t=1)
    1. [3 marks] What is the basis matrix?
    2. [1 mark] What are the four basis functions?
    3. [2 marks] Plot the basis functions.

  3. [4 marks] Consider a curve made up of two Bezier segments:
    1. [1 mark] What are the tangents B1'(t) and B2'(t) at the shared point P4?
    2. [1 mark] What are the second derivatives B1''(t) and B2''(t) at P4?
    3. [1 mark] Under what conditions will the combined curve be C1 continuous?
    4. [1 mark] Under what conditions will the combined curve be C2 continuous?

  4. Local Illumination: [8 marks] Using the Phong model: and assuming that the normal N has been pre-computed at each vertex, and R,G,B components must be computed,
    1. [3 marks] If lights are point sources, and n=32, how many +, -, *, / and square root operations are need to illuminate each vertex?
    2. [1 mark] How many, if lights are directional, and n=64?
    3. [3 marks] Consider this scene with the following illumination parameters:
      • Ia=0.5
      • IL=1.0
      • ka=0.2
      • kd=0.4
      • ks=0.6
      • n=50
      Draw a plot of the intensity I along the path AOB.
    4. [1 mark] For the same scene, give the locations of the centres of the specular peaks (shiny highlights).

  5. Parallel Rendering: [3 marks] One way to speed up rendering is to use more than one processor. Consider a multicomputer with two graphics processors, and think about the best way to share the rendering work.
    1. [1 mark] Image partition: Each machine is responsible for part of the image. It receives all the graphics primitives (polygons), transforms them, and scan-converts them if they appear in the portion is is responsible for. The diagrams show two ways to divide up the screen.
      Which approach may be slower for some scenes, and why?
    2. [1 mark] Object partition: Each machine receives half the primitives, renders them to its frame buffer and Z-buffer (which covers the whole image), and a separate machine merges the two images. Write BRIEF pseudocode for the merging step.
    3. [1 mark] If a scene consists of many small polygons, which approach will be faster, and why? Be CONCISE.

  6. Programming Project: [25 marks] Choose one of the programming projects described in It is suggested that you work in teams of two students. Both students will receive the same mark. If you want to choose a different programming project, prepare a proposal and get the professor's approval first.