diff options
author | 2016-09-19 08:36:58 -0700 | |
---|---|---|
committer | 2016-09-19 08:36:58 -0700 | |
commit | d91237ee051523f439238042674ade99207fe4a6 (patch) | |
tree | e53b2b1e356e1945863bc6a6446187ee1f4d76f2 /src/gpu/effects/GrBitmapTextGeoProc.cpp | |
parent | 122fac306189940a4135e884eaef71a9aa0d5c8a (diff) |
Stop flattening GrCoordTransforms in parent GrFragmentProcessors.
This changes moves to a model that iterates over GrCTs in a GrFP hierarchy when inserting transformations by GrGLSLPrimitiveProcessors.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2339203002
Review-Url: https://codereview.chromium.org/2339203002
Diffstat (limited to 'src/gpu/effects/GrBitmapTextGeoProc.cpp')
-rw-r--r-- | src/gpu/effects/GrBitmapTextGeoProc.cpp | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/src/gpu/effects/GrBitmapTextGeoProc.cpp b/src/gpu/effects/GrBitmapTextGeoProc.cpp index 20a4e937c0..7f5366363f 100644 --- a/src/gpu/effects/GrBitmapTextGeoProc.cpp +++ b/src/gpu/effects/GrBitmapTextGeoProc.cpp @@ -60,8 +60,7 @@ public: gpArgs->fPositionVar, cte.inPosition()->fName, cte.localMatrix(), - args.fTransformsIn, - args.fTransformsOut); + args.fFPCoordTransformHandler); if (cte.maskFormat() == kARGB_GrMaskFormat) { fragBuilder->codeAppendf("%s = ", args.fOutputColor); @@ -84,7 +83,8 @@ public: } } - void setData(const GrGLSLProgramDataManager& pdman, const GrPrimitiveProcessor& gp) override { + void setData(const GrGLSLProgramDataManager& pdman, const GrPrimitiveProcessor& gp, + FPCoordTransformIter&& transformIter) override { const GrBitmapTextGeoProc& btgp = gp.cast<GrBitmapTextGeoProc>(); if (btgp.color() != fColor && !btgp.hasVertexColor()) { float c[4]; @@ -92,14 +92,7 @@ public: pdman.set4fv(fColorUniform, 1, c); fColor = btgp.color(); } - } - - void setTransformData(const GrPrimitiveProcessor& primProc, - const GrGLSLProgramDataManager& pdman, - int index, - const SkTArray<const GrCoordTransform*, true>& transforms) override { - this->setTransformDataHelper(primProc.cast<GrBitmapTextGeoProc>().localMatrix(), pdman, - index, transforms); + this->setTransformDataHelper(btgp.localMatrix(), pdman, &transformIter); } static inline void GenKey(const GrGeometryProcessor& proc, |