A question about the rasterization algorithm presented in
Olano and Greer's paper <Triangle scan conversion using homogeneous
coordinates>
In section 4.1 of Olano's paper, it is said that if an attribute
linearly varies across the triangle in 3D, it must obey the equation:
u = a*X_eye + b*Y_eye + c*Z_eye (1)
But I think that 'u' should obey the following equation instead:
u = a*X_eye + b*Y_eye + c*Z_eye + d (1*)
That is, we have an additional constant 'd' term. After all, equation (1*)
is the general form of a linear function. And I really do not understand
why we are sure that 'd' is 0.
If the equation (1*) holds, then we will have (2*) and (3*) instead (2)
and (3) in Olano's equations:
u = a*X_prj + b*Y_prj + c*W_prj + d (2*)
u/w = a*x/w + b*y/w + d/w = a*X_ndc + b*Y_ndc + c + d/w (3*)
Then I don't know how to get Olano's conclusion on coefficients for
the perspective-correct interpolation because I don't know how to handle
the 'd/w' term
Can anyone help me explaining this? thanks
Olano and Greer's paper <Triangle scan conversion using homogeneous
coordinates>
In section 4.1 of Olano's paper, it is said that if an attribute
linearly varies across the triangle in 3D, it must obey the equation:
u = a*X_eye + b*Y_eye + c*Z_eye (1)
But I think that 'u' should obey the following equation instead:
u = a*X_eye + b*Y_eye + c*Z_eye + d (1*)
That is, we have an additional constant 'd' term. After all, equation (1*)
is the general form of a linear function. And I really do not understand
why we are sure that 'd' is 0.
If the equation (1*) holds, then we will have (2*) and (3*) instead (2)
and (3) in Olano's equations:
u = a*X_prj + b*Y_prj + c*W_prj + d (2*)
u/w = a*x/w + b*y/w + d/w = a*X_ndc + b*Y_ndc + c + d/w (3*)
Then I don't know how to get Olano's conclusion on coefficients for
the perspective-correct interpolation because I don't know how to handle
the 'd/w' term
Can anyone help me explaining this? thanks