anchor.diff:              Gl.DrawElements (Gl.BeginMode.TriangleFan, 4, Gl.DrawElementsType.UnsignedInt, nativeint 0)
               Gl.DisableVertexAttribArray lVertexPos2DAttrib
               Gl.UseProgram 0u
  +
  +            // ...
  +
               SDL.SDL_GL_SwapWindow window
  -            Threading.Thread.Sleep 16
   
           let renderer =
               { RenderContext = renderContext
  
positive.code: 
      /// Make a Renderer.
      static member make (window : nativeint) (renderContext : nativeint) =
          
          let glContext = SDL.SDL_GL_CreateContext (window)
  
          let program = Gl.CreateProgram ()
  
negative.code:         let indexDataPtr = GCHandle.Alloc (indexData, GCHandleType.Pinned)
          Gl.BufferData (Gl.BufferTarget.ArrayBuffer, indexDataSize, indexDataPtr.AddrOfPinnedObject(), Gl.BufferUsageHint.StaticDraw)
  
          let framebuffers = [|0u|]
          Gl.GenFramebuffers (1, framebuffers)
          let framebuffer = framebuffers.[0]
          Gl.BindFramebuffer (Gl.FramebufferTarget.Framebuffer, framebuffer)
  
          let frametextures = [|0u|]
          Gl.GenTextures (1, frametextures)
          let frametexture = frametextures.[0]
          Gl.BindTexture (Gl.TextureTarget.Texture2D, frametexture)
          Gl.TexImage2D (Gl.TextureTarget.Texture2D, 0, Gl.PixelInternalFormat.Rgba32f, Constants.Render.ResolutionX, Constants.Render.ResolutionY, 0, Gl.PixelFormat.Rgba, Gl.PixelType.Float, nativeint 0)
          Gl.TexParameteri (Gl.TextureTarget.Texture2D, Gl.TextureParameterName.TextureMinFilter, int Gl.TextureParameter.Nearest)
          Gl.TexParameteri (Gl.TextureTarget.Texture2D, Gl.TextureParameterName.TextureMagFilter, int Gl.TextureParameter.Nearest)
          Gl.FramebufferTexture (Gl.FramebufferTarget.Framebuffer, Gl.FramebufferAttachment.ColorAttachment0, frametexture, 0)
  
          let depthbuffers = [|0u|]
          Gl.GenRenderbuffers (1, depthbuffers)
          let depthbuffer = depthbuffers.[0]
          Gl.BindRenderbuffer (Gl.RenderbufferTarget.Renderbuffer, depthbuffer)
          Gl.RenderbufferStorage (Gl.RenderbufferTarget.Renderbuffer, Gl.RenderbufferStorageEnum.Depth32fStencil8, Constants.Render.ResolutionX, Constants.Render.ResolutionY)
          Gl.FramebufferRenderbuffer (Gl.FramebufferTarget.Framebuffer, Gl.FramebufferAttachment.DepthStencilAttachment, Gl.RenderbufferTarget.Renderbuffer, depthbuffer)
  
          while true do
  
              Gl.BindFramebuffer (Gl.FramebufferTarget.Framebuffer, framebuffer)
              Gl.DrawBuffers (1, [|Gl.DrawBuffersEnum.ColorAttachment0|])
              Gl.Viewport (0, 0, Constants.Render.ResolutionX, Constants.Render.ResolutionY)
              Gl.Clear (Gl.ClearBufferMask.ColorBufferBit ||| Gl.ClearBufferMask.DepthBufferBit ||| Gl.ClearBufferMask.StencilBufferBit)
  
              Gl.UseProgram program
              Gl.EnableVertexAttribArray lVertexPos2DAttrib
              Gl.BindBuffer (Gl.BufferTarget.ArrayBuffer, vertexBuffer)
  