anchor.diff:      [<DefaultValue>] val mutable elementBuffer : int
       [<DefaultValue>] val mutable elements : int
       [<DefaultValue>] val mutable nodeCache : LODCache
  +    [<DefaultValue>] val mutable mesh : AllocatedMesh
       let defaultBlinnMaterial = { 
           AmbientColor = new Vector3(0.1f, 0.1f, 0.1f); 
           DiffuseColor = new Vector3(0.4f, 0.7f, 0.4f); 
  
positive.code: let drawMesh (m:Rendering.AllocatedMesh) (primitiveType:PrimitiveType) =
      m.bind()
  
      let buffer = GL.MapBuffer(BufferTarget.ArrayBuffer, BufferAccess.ReadOnly)
      let dest = Array.zeroCreate<float32> (128 * 128 * 8)
      Marshal.Copy(buffer, dest, 0, dest.Length)
      GL.UnmapBuffer(BufferTarget.ArrayBuffer) |> ignore
      
      let vectors = Array.zeroCreate<Vector3> (dest.Length / 8)
      for i = 0 to vectors.Length - 1 do
          let v = new Vector3(dest.[i*8], dest.[i*8+1], dest.[i*8+2])
          vectors.[i] <- v
              
      //GL.DrawElements(BeginMode.Triangles, m.faces * 3, DrawElementsType.UnsignedInt, 0);
      GL.DrawArrays(BeginMode.Points, 0, 128 * 128)
  
  type ShaderProgram =
      | SimpleShaderProgram of SimpleShaderProgram.SimpleProgram
  
negative.code:             lodCamera.Height <- camera.Height
  
          GL.Clear(ClearBufferMask.ColorBufferBit ||| ClearBufferMask.DepthBufferBit)
  
          let projectionMatrix = CjClutter.OpenGl.OpenTk.Matrix4dExtensions.ToMatrix4(camera.ComputeProjectionMatrix())
          let cameraMatrix = CjClutter.OpenGl.OpenTk.Matrix4dExtensions.ToMatrix4(camera.ComputeCameraMatrix())
  