anchor.diff:  
                       | FileTexture(info, file) ->
                           let t = newTexture ()
  -                        if file = null then 
  +                        if isNull file then 
                               t
                           else
  -                            let pi = PixImage.Create(file, PixLoadOptions.UseDevil)
  -                            let mm = PixImageMipMap [|pi|]
  -                            uploadTexture2D t info mm |> ignore
  +                            Devil.uploadTexture2D t file info
  +//                            let pi = PixImage.Create(file, PixLoadOptions.UseDevil)
  +//                            let mm = PixImageMipMap [|pi|]
  +//                            uploadTexture2D t info mm |> ignore
                               t
   
                       | PixTexture2D(wantMipMaps, data) -> 
  
positive.code:                         uploadTexture3D t info image
  
                      | FileTexture(info, file) ->
                          let pi = PixImage.Create(file, PixLoadOptions.UseDevil)
                          let mm = PixImageMipMap [|pi|]
                          uploadTexture2D t info mm |> ignore
  
                      | :? NullTexture -> failwith "cannot update texture with null texture"
  
  
negative.code: 
              if sizeChanged then
                  let sizeInBytes = int64 <| ((InternalFormat.getSizeInBits internalFormat) * size.X * size.Y) / 8
                  let sizeInBytes =  if textureParams.wantMipMaps then (sizeInBytes * 4L) / 3L else sizeInBytes
                  updateTexture t.Context t.SizeInBytes sizeInBytes
                  t.SizeInBytes <- sizeInBytes
  
  