title: stucked in matrix operation errors
body: <p>I was set up a 2D opengl view in iOS with top left as origin and bottom right as (768, 1366)</p>
  
  <p>My projection matrix is setup like this:</p>
  
  <pre><code>projectionMtx = GLKMatrix4MakeOrtho( 0, 768, 1366, 0, 10, -10);
  </code></pre>
  
  <p>When I got the touch event, the coordinates are in physical coordinates, and i need to convert them into my own logical coordinates, so I thought like this:</p>
  
  <p>Since <code>V_physical = M_projection * V_logical</code></p>
  
  <p>So  <code>V_logical = M_projection_invert * V_phsical</code></p>
  
  <p>and I implemented the code like this:</p>
  
  <pre><code>(void)touchesBegan:(NSSet*)touches withEvent:(UIEvent*)event
  {
      UITouch* touch = [[event allTouches] anyObject];
      CGPoint location = [touch locationInView:self.view];
  
      GLKVector4 locationVector = {
          (float)location.x,
          (float)location.y,
          0,
          0,
      };
  
      GLKVector4 result = GLKMatrix4MultiplyVector4(GLKMatrix4Invert(projectionMtx, nullptr),locationVector);
  
  
      NSLog(@"touch %.2f %.2f", location.x, location.y);
      NSLog(@"vector %.2f %.2f", result.v[0], result.v[1]);
  }
  </code></pre>
  
  <p>However, this is what I got from testing:</p>
  
  <p><code>touch 367.00 662.00</code></p>
  
  <p><code>vector 140928.00 -452151.28</code></p>
  
  <p>Is my math wrong or my code wrong?</p>