   
   func update() {
     let aspect = fabsf(Float(self.view.bounds.size.width / self.view.bounds.size.height))
-    let projectionMatrix : GLKMatrix4
+//    let projectionMatrix : GLKMatrix4
     if aspect > 1 {
-      projectionMatrix = GLKMatrix4MakeOrtho(-aspect, aspect, -1, 1, -10, 10)
+      let edge = (aspect-1)*0.5
+      projectionMatrix = GLKMatrix4MakeOrtho(-edge, 1+edge, 0, 1, -10, 10)
+      pointScale = GLfloat(self.view.bounds.size.height)
     } else {
-      projectionMatrix = GLKMatrix4MakeOrtho(-1, 1, -1.0/aspect, 1.0/aspect, -10, 10)
-    }
-
-//    let orthMatrix = GLKMatrix4MakeOrtho(0, 1, 0, 1, -1, 1)
-    
-//    self.effect?.transform.projectionMatrix = projectionMatrix
-    
-    var baseModelViewMatrix = GLKMatrix4Identity;
-    // GLKMatrix4MakeTranslation(0.0, 0.0, -4.0)
-//    baseModelViewMatrix = GLKMatrix4Rotate(baseModelViewMatrix, rotation, 0.0, 1.0, 0.0)
-    
-//    // Compute the model view matrix for the object rendered with GLKit
-//    var modelViewMatrix = GLKMatrix4MakeTranslation(0.0, 0.0, -1.5)
-//    modelViewMatrix = GLKMatrix4Rotate(modelViewMatrix, rotation, 1.0, 1.0, 1.0)
-//    modelViewMatrix = GLKMatrix4Multiply(baseModelViewMatrix, modelViewMatrix)
-//    
-//    self.effect?.transform.modelviewMatrix = modelViewMatrix
-    
+      let edge = (1.0/aspect - 1)*0.5
+      projectionMatrix = GLKMatrix4MakeOrtho(0, 1, -edge, 1+edge, -10, 10)
+      pointScale = GLfloat(self.view.bounds.size.width)
+    }
+    
+    let baseModelViewMatrix = GLKMatrix4Identity;
+
     // Compute the model view matrix for the object rendered with ES2
     var modelViewMatrix = GLKMatrix4MakeTranslation(0,0,0)
 //    modelViewMatrix = GLKMatrix4Rotate(modelViewMatrix, rotation, 1.0, 1.0, 1.0)

    
    modelViewProjectionMatrix = GLKMatrix4Multiply(projectionMatrix, modelViewMatrix)
    
//    rotation += Float(self.timeSinceLastUpdate * 0.5)
  }
  
  override func glkView(view: GLKView, drawInRect rect: CGRect) {

  var vertexBuffer: GLuint = 0
  
  var context: EAGLContext? = nil
  
  var pointScale : GLfloat = 1
  

  deinit {
    self.tearDownGL()
