I kind of understand that the correct way to do the projection is that we first calculate the angle and project to 2D, which gives us the right image. But I don't quite understand how we get the middle image. Why do we usually split the square into two triangles? Why does the two triangles look consistent inside themselves but look wrong when they are put put together?

jamesyc23

Hi Debbie! I think the idea in the slide is that we want to rasterize this tilted square with the given texture. Since we only know how to rasterize triangles, we break the square up into two triangles and rasterize them separately. The problem comes from the fact that doing barycentric interpolation of the screen-space triangle loses the fact that we should project the texture onto the global-space triangles and then rasterize them. Another way to see that the middle method is wrong is to see that many different global-space triangles have the same screen-space projection. However, we should texture the various global-space triangles differently.

I kind of understand that the correct way to do the projection is that we first calculate the angle and project to 2D, which gives us the right image. But I don't quite understand how we get the middle image. Why do we usually split the square into two triangles? Why does the two triangles look consistent inside themselves but look wrong when they are put put together?

Hi Debbie! I think the idea in the slide is that we want to rasterize this tilted square with the given texture. Since we only know how to rasterize triangles, we break the square up into two triangles and rasterize them separately. The problem comes from the fact that doing barycentric interpolation of the screen-space triangle loses the fact that we should project the texture onto the global-space triangles and then rasterize them. Another way to see that the middle method is wrong is to see that many different global-space triangles have the same screen-space projection. However, we should texture the various global-space triangles differently.