diff options
Diffstat (limited to 'src/effects')
-rw-r--r-- | src/effects/GrAlphaThresholdFragmentProcessor.fp | 16 | ||||
-rw-r--r-- | src/effects/GrAlphaThresholdFragmentProcessor.h | 24 | ||||
-rw-r--r-- | src/effects/GrCircleBlurFragmentProcessor.h | 1 |
3 files changed, 17 insertions, 24 deletions
diff --git a/src/effects/GrAlphaThresholdFragmentProcessor.fp b/src/effects/GrAlphaThresholdFragmentProcessor.fp index b576ecf086..3c06dbe9d3 100644 --- a/src/effects/GrAlphaThresholdFragmentProcessor.fp +++ b/src/effects/GrAlphaThresholdFragmentProcessor.fp @@ -28,20 +28,12 @@ in uniform float outerThreshold; } } -@fields { - GrCoordTransform fImageCoordTransform; - GrCoordTransform fMaskCoordTransform; +@coordTransform(image) { + SkMatrix::I() } -@initializers { - fImageCoordTransform(SkMatrix::I(), image.get()), - fMaskCoordTransform(SkMatrix::MakeTrans(SkIntToScalar(-bounds.x()), SkIntToScalar(-bounds.y())), - mask.get()) -} - -@constructorCode { - this->addCoordTransform(&fImageCoordTransform); - this->addCoordTransform(&fMaskCoordTransform); +@coordTransform(mask) { + SkMatrix::MakeTrans(SkIntToScalar(-bounds.x()), SkIntToScalar(-bounds.y())) } @header { diff --git a/src/effects/GrAlphaThresholdFragmentProcessor.h b/src/effects/GrAlphaThresholdFragmentProcessor.h index 702b6aeb88..5dd669ac14 100644 --- a/src/effects/GrAlphaThresholdFragmentProcessor.h +++ b/src/effects/GrAlphaThresholdFragmentProcessor.h @@ -16,6 +16,7 @@ #include "GrColorSpaceXform.h" #include "GrFragmentProcessor.h" #include "GrCoordTransform.h" +#include "GrColorSpaceXform.h" #include "effects/GrProxyMove.h" class GrAlphaThresholdFragmentProcessor : public GrFragmentProcessor { public: @@ -44,35 +45,34 @@ private: const SkIRect& bounds ) : INHERITED(kNone_OptimizationFlags) - , - fImageCoordTransform(SkMatrix::I(), image.get()), - fMaskCoordTransform(SkMatrix::MakeTrans(SkIntToScalar(-bounds.x()), SkIntToScalar(-bounds.y())), - mask.get()) - , fImage(std::move(image)) , fColorXform(colorXform) , fMask(std::move(mask)) , fInnerThreshold(innerThreshold) - , fOuterThreshold(outerThreshold) { - - this->addCoordTransform(&fImageCoordTransform); - this->addCoordTransform(&fMaskCoordTransform); + , fOuterThreshold(outerThreshold) + , fImageCoordTransform( + SkMatrix::I() +, fImage.proxy()) + , fMaskCoordTransform( + SkMatrix::MakeTrans(SkIntToScalar(-bounds.x()), SkIntToScalar(-bounds.y())) +, fMask.proxy()) { this->addTextureSampler(&fImage); this->addTextureSampler(&fMask); + this->addCoordTransform(&fImageCoordTransform); + this->addCoordTransform(&fMaskCoordTransform); this->initClassID<GrAlphaThresholdFragmentProcessor>(); } GrGLSLFragmentProcessor* onCreateGLSLInstance() const override; void onGetGLSLProcessorKey(const GrShaderCaps&,GrProcessorKeyBuilder*) const override; bool onIsEqual(const GrFragmentProcessor&) const override; GR_DECLARE_FRAGMENT_PROCESSOR_TEST - - GrCoordTransform fImageCoordTransform; - GrCoordTransform fMaskCoordTransform; TextureSampler fImage; sk_sp<GrColorSpaceXform> fColorXform; TextureSampler fMask; float fInnerThreshold; float fOuterThreshold; + GrCoordTransform fImageCoordTransform; + GrCoordTransform fMaskCoordTransform; typedef GrFragmentProcessor INHERITED; }; #endif diff --git a/src/effects/GrCircleBlurFragmentProcessor.h b/src/effects/GrCircleBlurFragmentProcessor.h index c01ea9b11d..72632d2796 100644 --- a/src/effects/GrCircleBlurFragmentProcessor.h +++ b/src/effects/GrCircleBlurFragmentProcessor.h @@ -14,6 +14,7 @@ #if SK_SUPPORT_GPU #include "GrFragmentProcessor.h" #include "GrCoordTransform.h" +#include "GrColorSpaceXform.h" #include "effects/GrProxyMove.h" class GrCircleBlurFragmentProcessor : public GrFragmentProcessor { public: |