CS 447/647: Image Synthesis

Assignment 4: Monte Carlo Techniques

Due: March 20

  1. Area light sources are typically defined by attaching an emission function to a shape. For now, we will assume the emission function is constant; that is, the outgoing radiance from the light source is independent of both position on the source and outgoing direction. Sampling an area light source involves choosing random points on the surface. The number of random points on any subset of the surface should be proportional to the surface area of that subset. This is called uniform area sampling.
  1. Describe an algorithm for generating a uniform distribution of points on a unit cylinder (radius 1, height 1). For this problem, ignore the circular disk at the base and top of the cylinder.
  2. Describe an algorithm for generating a uniform distribution of points on a unit cone (radius 1 on the plane z=0, and height 1; the tip of the cone is at z=1). As before, ignore the base of the cone.
  3. Describe an algorithm for uniformly sampling a unit sphere (radius 1, centered at the origin).
  1. It is also important to develop methods for sampling reflection functions. For this problem, we will assume that the reflection function is based on a "microfacet" model. That is, each point on the surface contains a distribution of tiny mirrors. The microfacet distribution is written D(α), where α is the angle between H, the normal to the microfacet, and N, the geometric normal to the surface. For this problem, assume:

    D(α) = e-cos2α/cos2β

    where β is an adjustable parameter controlling the width of the highlight (i.e. a constant). Note that cos α is simply equal to (N • H)

    Microfacet distribution functions return the number of facets of a given size oriented in a given direction H, or more simply, the total area of all the facets oriented in a given direction. Mathematically, this is written as dA(ω) dω = D(ω) dA dω; here the direction is the same as H and is the differential solid angle in the direction ω. Microfacet distributions may be interpreted as probability distributions if they are normalized. The normalization condition may be interpreted geometrically as the condition that total projected area of all the micofacets with different orientations is equal to dA. Therefore,

    ∫ D(α) cos α dωh = 1.

    Note that the microfacet distribution function may be interpreted as a probability distribution function over projected areas.

    Describe an algorithm to sample microfacet distribution functions. The algorithm should return microfacet directions H distributed according to the normalized form of the given distribution.
     

  2.  Describe an algorithm to sample from the microfacet distribution  D(a) = cos(a)s, where s is a constant (typically shininess).

Submission

Write your answers to the three questions above as a web page.  Then, just mail the URL to the TA

When submitting assignments, NEVER mail the TA anything other than a URL.