From 2b23c4bf3186bf3fa71bb105afdcf3b8e5995b52 Mon Sep 17 00:00:00 2001 From: Brian Osman Date: Fri, 1 Jun 2018 12:25:08 -0400 Subject: Dest color space no longer impacts mipmaps or texture sampling PS5: Removes SkDestinationSurfaceColorMode, tracking of mipmap mode on GrTexture, sRGB decode state per-texture. Because we were often choosing sRGB configs for RGB color types, legacy rendering would then be incorrect (too dark). So... PS7: Stops ever using sRGB pixel configs when translating image info or color type. Also removes a bunch of GrCaps bits and a GrContextOption that are no longer relevant. PS9: Adjusts surface creation unit test expectations, and changes the raster rules accordingly. At this point, sRGB configs are (obviously) going to be broken. Locally, I ran 8888, gl, and the gbr- versions of both. Across all GMs x configs, there are 13 diffs. 12 are GMs that create surfaces with a color-space attached (and thus, the offscreen is no longer getting sRGB pixel config). The only remainder constructs an SkPictureImageGenerator, (with an attached color space) and renders it to the gbr-gl canvas, which triggers a a tagged surface inside the generator. Bug: skia: Change-Id: Ie5edfa157dd799f3121e8173fc4f97f6c8ed6789 Reviewed-on: https://skia-review.googlesource.com/131282 Commit-Queue: Brian Osman Reviewed-by: Mike Klein Reviewed-by: Brian Salomon --- tests/MipMapTest.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'tests/MipMapTest.cpp') diff --git a/tests/MipMapTest.cpp b/tests/MipMapTest.cpp index 7e0a653c1e..938e723456 100644 --- a/tests/MipMapTest.cpp +++ b/tests/MipMapTest.cpp @@ -23,7 +23,7 @@ DEF_TEST(MipMap, reporter) { int width = 1 + rand.nextU() % 1000; int height = 1 + rand.nextU() % 1000; make_bitmap(&bm, width, height); - sk_sp mm(SkMipMap::Build(bm, SkDestinationSurfaceColorMode::kLegacy, nullptr)); + sk_sp mm(SkMipMap::Build(bm, nullptr)); REPORTER_ASSERT(reporter, mm->countLevels() == SkMipMap::ComputeLevelCount(width, height)); REPORTER_ASSERT(reporter, !mm->extractLevel(SkSize::Make(SK_Scalar1, SK_Scalar1), @@ -60,7 +60,7 @@ static void test_mipmap_generation(int width, int height, int expectedMipLevelCo SkBitmap bm; bm.allocN32Pixels(width, height); bm.eraseColor(SK_ColorWHITE); - sk_sp mm(SkMipMap::Build(bm, SkDestinationSurfaceColorMode::kLegacy, nullptr)); + sk_sp mm(SkMipMap::Build(bm, nullptr)); const int mipLevelCount = mm->countLevels(); REPORTER_ASSERT(reporter, mipLevelCount == expectedMipLevelCount); @@ -90,7 +90,7 @@ DEF_TEST(MipMap_DirectLevelAccess, reporter) { SkBitmap bm; bm.allocN32Pixels(1, 1); bm.eraseColor(SK_ColorWHITE); - sk_sp mm(SkMipMap::Build(bm, SkDestinationSurfaceColorMode::kLegacy, nullptr)); + sk_sp mm(SkMipMap::Build(bm, nullptr)); REPORTER_ASSERT(reporter, mm == nullptr); } -- cgit v1.2.3