void Update(OpenTKApplication a_app) { switch (Environment.OSVersion.Platform) { case PlatformID.MacOSX: { m_graphics.Update(a_app.WindowInfo); break; } } m_graphicsPipeline.Update(); Vector2 size = new Vector2(a_app.Width, a_app.Height); GL.Viewport(0, 0, (int)size.X, (int)size.Y); List <Canvas> gui = m_pipeline.GUIs; foreach (Canvas canvas in gui) { if (canvas.Visible) { canvas.Draw(size); } } m_consoleDisplay.Draw(size, m_pipeline.DisplayConsole); lock (this) { if (!m_shutDown && m_graphics != null) { if (PipelineTime.FPS <= 55.0f) { m_graphics.SwapInterval = 0; } else { m_graphics.SwapInterval = 1; } m_graphics.SwapBuffers(); } } #if DEBUG_INFO Pipeline.GLError("Pipeline: Update: "); #endif }