Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit 95b5fb9

Browse files
Revert "Share code handling legacy SkFilterQuality"
This reverts commit 9a8cbe5. Reason for revert: forgot to retain the ganesh-diff of performing trilerp for kMedium Original change's description: > Share code handling legacy SkFilterQuality > > Change-Id: Idfd3b96896d7fa2cdcf9127b4d30e2fc29bcab79 > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/337436 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Mike Reed <reed@google.com> TBR=bsalomon@google.com,robertphillips@google.com,reed@google.com Change-Id: I1e126be4c81fa3cfd21ead6734a530eb9509c3d7 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/c/skia/+/337639 Reviewed-by: Mike Reed <reed@google.com>
1 parent f9334e9 commit 95b5fb9

1 file changed

Lines changed: 20 additions & 13 deletions

File tree

src/gpu/SkGr.cpp

Lines changed: 20 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -457,10 +457,14 @@ GrInterpretFilterQuality(SkISize imageDims,
457457
const SkMatrix& localM,
458458
bool sharpenMipmappedTextures,
459459
bool allowFilterQualityReduction) {
460+
using Filter = GrSamplerState::Filter;
461+
using MipmapMode = GrSamplerState::MipmapMode;
460462
switch (paintFilterQuality) {
461-
case kNone_SkFilterQuality: break;
462-
case kLow_SkFilterQuality: break;
463-
case kMedium_SkFilterQuality:
463+
case kNone_SkFilterQuality:
464+
return {Filter::kNearest, MipmapMode::kNone, false};
465+
case kLow_SkFilterQuality:
466+
return {Filter::kLinear, MipmapMode::kNone, false};
467+
case kMedium_SkFilterQuality: {
464468
if (allowFilterQualityReduction) {
465469
SkMatrix matrix;
466470
matrix.setConcat(viewM, localM);
@@ -475,22 +479,25 @@ GrInterpretFilterQuality(SkISize imageDims,
475479
// 2^0.5/2 = s
476480
SkScalar mipScale = sharpenMipmappedTextures ? SK_ScalarRoot2Over2 : SK_Scalar1;
477481
if (matrix.getMinScale() >= mipScale) {
478-
paintFilterQuality = kLow_SkFilterQuality;
482+
return {Filter::kLinear, MipmapMode::kNone, false};
479483
}
480484
}
481-
break;
482-
case kHigh_SkFilterQuality:
485+
return {Filter::kLinear, MipmapMode::kLinear, false};
486+
}
487+
case kHigh_SkFilterQuality: {
483488
if (allowFilterQualityReduction) {
484489
SkMatrix matrix;
485490
matrix.setConcat(viewM, localM);
486491
paintFilterQuality = SkMatrixPriv::AdjustHighQualityFilterLevel(matrix);
487492
}
488-
break;
493+
switch (paintFilterQuality) {
494+
case kNone_SkFilterQuality: return {Filter::kNearest, MipmapMode::kNone , false};
495+
case kLow_SkFilterQuality: return {Filter::kLinear , MipmapMode::kNone , false};
496+
case kMedium_SkFilterQuality: return {Filter::kLinear , MipmapMode::kLinear, false};
497+
case kHigh_SkFilterQuality: return {Filter::kNearest, MipmapMode::kNone , true };
498+
}
499+
SkUNREACHABLE;
500+
}
489501
}
490-
auto sampling = SkSamplingOptions(paintFilterQuality);
491-
return {
492-
static_cast<GrSamplerState::Filter>(sampling.fFilter),
493-
static_cast<GrSamplerState::MipmapMode>(sampling.fMipmap),
494-
sampling.fUseCubic,
495-
};
502+
SkUNREACHABLE;
496503
}

0 commit comments

Comments
 (0)