   }
   
   override func viewWillLayoutSubviews() {
-    super.viewWillLayoutSubviews()
-   
     // Make CAEAGLLayer a square to ease the rotation process
     if self.view.layer.bounds.size.width > self.view.layer.bounds.size.height {
       self.view.layer.bounds.size.height = self.view.layer.bounds.size.width
     } else {
       self.view.layer.bounds.size.width = self.view.layer.bounds.size.height
     }
+
+    super.viewWillLayoutSubviews()
   }
   
   override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent) {


extension OpenGLViewController: GLKViewDelegate {
  override func glkView(view: GLKView!, drawInRect rect: CGRect) {
    glClearColor(0.156862745, 0.156862745, 0.156862745, 1)
    glClear(GLenum(GL_COLOR_BUFFER_BIT))
    

  }
  
  private func loadGL() {
    let options: [NSObject: AnyObject] = [GLKTextureLoaderOriginBottomLeft: false]
    var error: NSError?
    
