The interpolation function we want to perform is shown here as f(x,y), and is
simply barycentric interpolation. It is also the result
you would get if you fit
a plane through the three corner points to try to determine the value
of the point to shade. Please note that we have to be careful
about clamping the
result when it extends beyond the B,C,D triangle and we
discuss that in the paper.
So how do we implement this function? We note that we have two linear interpolators available to us through the bilinear interpolation function g(x,y). The first is the linear interpolation between C and B, which we get if we simply plug in the x-coordinate into g(x,y) and zero out the y input. The second is the linear interpolation between C and D that can be computed if we keep the y-coordinate of the bilinear interpolation function and zero out the x input.
Now we note that if we add these two functions, we get an expression that is very similar to what we want, except that it has an extra "C" term. Thus, we can subtract out the "C" term (in this case by subtracting out g(0,0) since the origin of the cell is defined to be the C corner) to get the expression we want, f(x,y).
This means that it is possible to express the 3-corner case in terms of a combination of 3 bilinear interpolations.