anchor.diff:          GL.UseProgram p.ProgramId
           p.ProjectionMatrixUniform.set renderJob.StaticContext.ProjectionMatrix
           p.ViewMatrix.set renderJob.StaticContext.ViewMatrix
  -//        for j in renderJob.RenderJobs do
  -//            p.ModelMatrix.set j.IndividualContext.ModelMatrix
  -//            p.NormalMatrix.set j.IndividualContext.NormalMatrix
  -//            drawMesh j.Mesh PrimitiveType.Points
   
   let configureTweakBar c defaultValue =
       let bar = new Bar(c)
  
positive.code:         GL.UseProgram p.ProgramId
          p.ProjectionMatrixUniform.set renderJob.StaticContext.ProjectionMatrix
          p.ViewMatrix.set renderJob.StaticContext.ViewMatrix
  //        for j in renderJob.RenderJobs do
  //            p.ModelMatrix.set j.IndividualContext.ModelMatrix
  //            p.NormalMatrix.set j.IndividualContext.NormalMatrix
  //            drawMesh j.Mesh PrimitiveType.Triangles
      | BlinnShaderProgram p ->
          GL.UseProgram p.ProgramId
          p.ProjectionMatrixUniform.set renderJob.StaticContext.ProjectionMatrix
  
negative.code:     let factory = new CjClutter.OpenGl.TerrainChunkFactory()
      let mutable synchronizeCameras = true
      let mutable nodesInCache = 0
      let mutable cacheSize = 10000000
  
      override this.OnLoad(e) =
          this.program <- BlinnShaderProgram BlinnShaderProgram.makeBlinnShaderProgram
  