diff options
author | Jim Van Verth <jvanverth@google.com> | 2017-09-08 14:43:47 +0000 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-09-08 14:43:54 +0000 |
commit | e7492fe49c61915b70bde648b75f9b6fc60b4bef (patch) | |
tree | 0b8502ef3047f553e2427ee71f0e8c1508b2a6f6 /src/gpu/effects/GrBitmapTextGeoProc.cpp | |
parent | 336ce7babc1c6c9184a69e39fd4ee877ae4a067b (diff) |
Revert "Add multitexture support to text and path shaders"
This reverts commit 7f754260f7fc2ae0326a072dd2f0429e584f8ca0.
Reason for revert: Bot failures.
Original change's description:
> Add multitexture support to text and path shaders
>
> This does not add additional textures to the atlases, just adds the
> ability to access those textures in the shaders.
>
> Bug: skia:3550
> Change-Id: I636b329a6f748b6753f5f92a70066fb412623df2
> Reviewed-on: https://skia-review.googlesource.com/43000
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Jim Van Verth <jvanverth@google.com>
TBR=jvanverth@google.com,bsalomon@google.com,robertphillips@google.com
Change-Id: I5c28ea48ed9bdde2cd936ef4f96fc720d5e4b4a5
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:3550
Reviewed-on: https://skia-review.googlesource.com/44162
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Diffstat (limited to 'src/gpu/effects/GrBitmapTextGeoProc.cpp')
-rw-r--r-- | src/gpu/effects/GrBitmapTextGeoProc.cpp | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/src/gpu/effects/GrBitmapTextGeoProc.cpp b/src/gpu/effects/GrBitmapTextGeoProc.cpp index fab0904a4f..c2cf8ebc22 100644 --- a/src/gpu/effects/GrBitmapTextGeoProc.cpp +++ b/src/gpu/effects/GrBitmapTextGeoProc.cpp @@ -7,7 +7,6 @@ #include "GrBitmapTextGeoProc.h" -#include "GrAtlasedShaderHelpers.h" #include "GrTexture.h" #include "glsl/GrGLSLFragmentShaderBuilder.h" #include "glsl/GrGLSLGeometryProcessor.h" @@ -37,11 +36,12 @@ public: "AtlasSizeInv", &atlasSizeInvName); - GrGLSLVertToFrag uv(kVec2f_GrSLType); - GrGLSLVertToFrag st(kVec2f_GrSLType); - GrGLSLVertToFrag texIdx(kFloat_GrSLType); - append_index_uv_varyings(args, btgp.inTextureCoords()->fName, atlasSizeInvName, - &uv, &st, &texIdx); + GrGLSLVertToFrag v(kVec2f_GrSLType); + varyingHandler->addVarying("TextureCoords", &v, kHigh_GrSLPrecision); + vertBuilder->codeAppendf("%s = float2(%s.x, %s.y) * %s;", v.vsOut(), + btgp.inTextureCoords()->fName, + btgp.inTextureCoords()->fName, + atlasSizeInvName); GrGLSLPPFragmentBuilder* fragBuilder = args.fFragBuilder; // Setup pass through color @@ -64,16 +64,18 @@ public: btgp.localMatrix(), args.fFPCoordTransformHandler); - fragBuilder->codeAppend("float4 texColor;"); - append_multitexture_lookup(args, btgp.numTextureSamplers(), - texIdx, uv.fsIn(), "texColor"); - if (btgp.maskFormat() == kARGB_GrMaskFormat) { - // modulate by color - fragBuilder->codeAppendf("%s = %s * texColor;", args.fOutputColor, args.fOutputColor); + fragBuilder->codeAppendf("%s = ", args.fOutputColor); + fragBuilder->appendTextureLookupAndModulate(args.fOutputColor, + args.fTexSamplers[0], + v.fsIn(), + kVec2f_GrSLType); + fragBuilder->codeAppend(";"); fragBuilder->codeAppendf("%s = float4(1);", args.fOutputCoverage); } else { - fragBuilder->codeAppendf("%s = texColor;", args.fOutputCoverage); + fragBuilder->codeAppendf("%s = ", args.fOutputCoverage); + fragBuilder->appendTextureLookup(args.fTexSamplers[0], v.fsIn(), kVec2f_GrSLType); + fragBuilder->codeAppend(";"); } } @@ -87,7 +89,7 @@ public: fColor = btgp.color(); } - SkASSERT(btgp.numTextureSamplers() >= 1); + SkASSERT(btgp.numTextureSamplers() == 1); GrTexture* atlas = btgp.textureSampler(0).peekTexture(); SkASSERT(atlas && SkIsPow2(atlas->width()) && SkIsPow2(atlas->height())); @@ -106,7 +108,6 @@ public: key |= (btgp.usesLocalCoords() && btgp.localMatrix().hasPerspective()) ? 0x1 : 0x0; key |= btgp.maskFormat() << 1; b->add32(key); - b->add32(btgp.numTextureSamplers()); } private: |