anchor.diff:          vertexBuffer.Bind(gl)
           vertices |> Array.map (fun v -> v.to_array())
           |> Array.iter (fun x -> vertexBuffer.SetData(gl, vertexAttributeLocation, x, false, 3))
  +        vertexBuffer.Unbind(gl)
            
           //let normalBuffer = new VertexBuffer()
           normalBuffer.Create(gl)
           normalBuffer.Bind(gl)
           normals |> Array.map (fun v -> v.to_array())
           |> Array.iter (fun x -> normalBuffer.SetData(gl, normalAttributeLocation, x, false, 3))     
  +        normalBuffer.Unbind(gl)
   
       let CreateIndexBuffer(gl) =
           
  
positive.code: let mutable openGlCtrl =  w.FindName("openGlCtrl") :?> SharpGL.WPF.OpenGLControl
  openGlCtrl.InitializeComponent()
  
  
  let gl  = SharpGL.OpenGL()
  gl.Create(SharpGL.Version.OpenGLVersion.OpenGL3_1, SharpGL.RenderContextType.FBO, 800, 600, 32, System.IntPtr.Zero) |> printfn "%A"
  let glr = ref (openGlCtrl.OpenGL)
  glr := gl
  printfn "#0"
  CelShadingExample.scene.Initialise(gl)
  printfn "#1"
  openGlCtrl.OpenGLDraw.Add (fun x -> CelShadingExample.OpenGLControl_OpenGLDraw(gl,x) )
  printfn "#2"
  openGlCtrl.OpenGLInitialized.Add (fun x -> CelShadingExample.OpenGLControl_OpenGLInitialized(gl,x) )
  printfn "#3"
  openGlCtrl.RenderContextType <- RenderContextType.FBO
  printfn "#4"
  openGlCtrl.Resized.Add (fun x -> CelShadingExample.OpenGLControl_Resized(gl,x) )
  printfn "#5"
  //openGlCtrl.Visibility <- Visibility.Visible
  
  
  
  w.Show()
  
negative.code:         /// <param name="gl">The OpenGL instance.</param>
          /// <param name="useToonShader">if set to <c>true</c> use the toon shader, otherwise use a per-pixel shader.</param>
          member x.RenderRetainedMode(gl : OpenGL, useToonShader) =
  
              gl.MatrixMode(OpenGL.GL_MODELVIEW)
              gl.LoadIdentity()
              gl.MultMatrix(modelviewMatrix.to_array())
                                                                          
              //GenerateGeometry(gl, positionAttribute, normalAttribute)
              //x.Initialise(gl)
              gl.Begin(BeginMode.Triangles)
              //[|0 .. vertexCount-1|]// indices
              indices
              |> Array.iter (fun y -> 
                  let x = (min (int y) (vertexCount - 1))
                  gl.Vertex(vertices.[x].x, vertices.[x].y, vertices.[x].z)
                  gl.Normal(normals.[x].x, normals.[x].y, normals.[x].z))
  
              //  Get a reference to the appropriate shader.
              let shader = if useToonShader then shaderToon else shaderPerPixel
  
              //indexBuffer.Bind(gl)
              //indexBuffer.SetData(gl, indices) 
  
              //  Use the shader program.
              shader.Bind(gl)
  