title: Why does order of scaling and translation matter for the model matrix?
body: <p>I was playing around with creating a model matrix, and realized that the order of the operations for scale and translate matters. I'm using Qt for my matrices and use QMatrix4x4 and using openGL (but this should be library and platform agnostic, and related to the mathematics). The result of scaling down a model and then translating it only works as expected, like so.</p>
  
  <pre><code>    QMatrix4x4 model;
      model.translate(some_vec3d);
      model.scale(some_vec3d);
  </code></pre>
  
  <p>I was under the impression that mathematically, since the scale appears in the first 3x3 of the matrix and translation only affects the last column of the matrix (4th column) the order is independent. When I look at the matrices I understand that the order matters, but I can't understand why.</p>