Could you explain the W-coordinate used for translation a little more? It seems as if the other 3 numbers in the 4th column serve the purpose of translating the vector so why do we need the 4th row of the matrix?
adrian_TA
@Tdog Generally we want to keep our coordinates as consistent as possible. We're going to need that W coordinate all the way through each Coordinate Frame Transformation, going from model->world->view->screen space (The projection matrix, which transfers coordinates from view->screen space, relies on W for example). So generally we would like to preserve the W coordinate as we build these matrices.
Also, if we made the matrices 3x4, then we wouldn't be able to combine matrices. Recall that we can write a scale+rotate+translate operation as $$(T \times (R \times (S \times \vec v))) = (T \times R \times S) \times \vec v$$, given T is a translation matrix / R is rotation / S is scale. Due to the properties of Matrix multiplication, neither of these expressions would be valid if T, R, S were 3x4 matrices.
billiam
I think at some point Adrian mentioned that if we have a $0$ for the $w$ coordinate then the image doesn't get translated. This makes sense if you just do the math.
I'm wondering what it means if the $w$ coordinate is more than $1$. Like if it was $2$ or $3$ does that signify anything from a computer graphics perspective? Like maybe you want to scale your view as well as translate it at the same time...? I can't imagine there's a real use for that though.
matticus99
In some sense, we can think of translations as rotations in 4-dimensional space. Looking at 3-dimensional space, it's possible to show that rotations which preserve the z-axis (I think) allow us to arbitrarily change the coordinates of x,y.
Could you explain the W-coordinate used for translation a little more? It seems as if the other 3 numbers in the 4th column serve the purpose of translating the vector so why do we need the 4th row of the matrix?
@Tdog Generally we want to keep our coordinates as consistent as possible. We're going to need that W coordinate all the way through each Coordinate Frame Transformation, going from model->world->view->screen space (The projection matrix, which transfers coordinates from view->screen space, relies on W for example). So generally we would like to preserve the W coordinate as we build these matrices.
Also, if we made the matrices 3x4, then we wouldn't be able to combine matrices. Recall that we can write a scale+rotate+translate operation as $$(T \times (R \times (S \times \vec v))) = (T \times R \times S) \times \vec v$$, given T is a translation matrix / R is rotation / S is scale. Due to the properties of Matrix multiplication, neither of these expressions would be valid if T, R, S were 3x4 matrices.
I think at some point Adrian mentioned that if we have a $0$ for the $w$ coordinate then the image doesn't get translated. This makes sense if you just do the math.
I'm wondering what it means if the $w$ coordinate is more than $1$. Like if it was $2$ or $3$ does that signify anything from a computer graphics perspective? Like maybe you want to scale your view as well as translate it at the same time...? I can't imagine there's a real use for that though.
In some sense, we can think of translations as rotations in 4-dimensional space. Looking at 3-dimensional space, it's possible to show that rotations which preserve the z-axis (I think) allow us to arbitrarily change the coordinates of x,y.