title: How to compose a matrix to perform isometric (dimetric) projection of a world coordinate?
body: <p>I have a 2D unit vector containing a world coordinate (some direction), and I want to convert that to screen coordinates (classic isometric tiles).</p>
  
  <p>I'm aware I can achieve this by rotating around the relevant axis but I want to see and understand how to do this using a purely matrix approach? Partly because I'm learning 'modern OpenGL' (v2+) and partly because I will want to use this same technique for other things so need a solid understanding and my math ability is a little lacking.</p>
  
  <p>If needed my screen's coordinate system has it's origin at top left with +x &amp; +y pointing right and down respectively. Also, my vertex positions are converted to the NDC range in my vertex shader if that's relevant.</p>
  
  <p>Language is C++ with no supporting libraries.</p>