diff options
Diffstat (limited to 'src/gpu/effects')
-rw-r--r-- | src/gpu/effects/GrBezierEffect.cpp | 11 | ||||
-rw-r--r-- | src/gpu/effects/GrBezierEffect.h | 2 | ||||
-rw-r--r-- | src/gpu/effects/GrBitmapTextGeoProc.cpp | 33 | ||||
-rw-r--r-- | src/gpu/effects/GrBitmapTextGeoProc.h | 1 | ||||
-rw-r--r-- | src/gpu/effects/GrDistanceFieldGeoProc.cpp | 21 | ||||
-rw-r--r-- | src/gpu/effects/GrDistanceFieldGeoProc.h | 3 | ||||
-rwxr-xr-x | src/gpu/effects/GrShadowGeoProc.h | 1 |
7 files changed, 22 insertions, 50 deletions
diff --git a/src/gpu/effects/GrBezierEffect.cpp b/src/gpu/effects/GrBezierEffect.cpp index 8db60acec8..cb0e0c5a0c 100644 --- a/src/gpu/effects/GrBezierEffect.cpp +++ b/src/gpu/effects/GrBezierEffect.cpp @@ -84,9 +84,7 @@ void GrGLConicEffect::onEmitCode(EmitArgs& args, GrGPArgs* gpArgs) { GrGLSLPPFragmentBuilder* fragBuilder = args.fFragBuilder; // Setup pass through color - if (!gp.colorIgnored()) { - this->setupUniformColor(fragBuilder, uniformHandler, args.fOutputColor, &fColorUniform); - } + this->setupUniformColor(fragBuilder, uniformHandler, args.fOutputColor, &fColorUniform); // Setup position this->setupPosition(vertBuilder, @@ -222,7 +220,6 @@ void GrGLConicEffect::GenKey(const GrGeometryProcessor& gp, GrProcessorKeyBuilder* b) { const GrConicEffect& ce = gp.cast<GrConicEffect>(); uint32_t key = ce.isAntiAliased() ? (ce.isFilled() ? 0x0 : 0x1) : 0x2; - key |= GrColor_ILLEGAL != ce.color() ? 0x4 : 0x0; key |= 0xff != ce.coverageScale() ? 0x8 : 0x0; key |= ce.usesLocalCoords() && ce.localMatrix().hasPerspective() ? 0x10 : 0x0; key |= ComputePosKey(ce.viewMatrix()) << 5; @@ -346,9 +343,7 @@ void GrGLQuadEffect::onEmitCode(EmitArgs& args, GrGPArgs* gpArgs) { GrGLSLPPFragmentBuilder* fragBuilder = args.fFragBuilder; // Setup pass through color - if (!gp.colorIgnored()) { - this->setupUniformColor(fragBuilder, uniformHandler, args.fOutputColor, &fColorUniform); - } + this->setupUniformColor(fragBuilder, uniformHandler, args.fOutputColor, &fColorUniform); // Setup position this->setupPosition(vertBuilder, @@ -426,7 +421,6 @@ void GrGLQuadEffect::GenKey(const GrGeometryProcessor& gp, GrProcessorKeyBuilder* b) { const GrQuadEffect& ce = gp.cast<GrQuadEffect>(); uint32_t key = ce.isAntiAliased() ? (ce.isFilled() ? 0x0 : 0x1) : 0x2; - key |= ce.color() != GrColor_ILLEGAL ? 0x4 : 0x0; key |= ce.coverageScale() != 0xff ? 0x8 : 0x0; key |= ce.usesLocalCoords() && ce.localMatrix().hasPerspective() ? 0x10 : 0x0; key |= ComputePosKey(ce.viewMatrix()) << 5; @@ -656,7 +650,6 @@ void GrGLCubicEffect::GenKey(const GrGeometryProcessor& gp, GrProcessorKeyBuilder* b) { const GrCubicEffect& ce = gp.cast<GrCubicEffect>(); uint32_t key = ce.isAntiAliased() ? (ce.isFilled() ? 0x0 : 0x1) : 0x2; - key |= ce.color() != GrColor_ILLEGAL ? 0x4 : 0x8; key |= ComputePosKey(ce.viewMatrix()) << 5; b->add32(key); } diff --git a/src/gpu/effects/GrBezierEffect.h b/src/gpu/effects/GrBezierEffect.h index edb14080d4..824883c9e6 100644 --- a/src/gpu/effects/GrBezierEffect.h +++ b/src/gpu/effects/GrBezierEffect.h @@ -100,7 +100,6 @@ public: inline bool isFilled() const { return GrProcessorEdgeTypeIsFill(fEdgeType); } inline GrPrimitiveEdgeType getEdgeType() const { return fEdgeType; } GrColor color() const { return fColor; } - bool colorIgnored() const { return GrColor_ILLEGAL == fColor; } const SkMatrix& viewMatrix() const { return fViewMatrix; } const SkMatrix& localMatrix() const { return fLocalMatrix; } bool usesLocalCoords() const { return fUsesLocalCoords; } @@ -183,7 +182,6 @@ public: inline bool isFilled() const { return GrProcessorEdgeTypeIsFill(fEdgeType); } inline GrPrimitiveEdgeType getEdgeType() const { return fEdgeType; } GrColor color() const { return fColor; } - bool colorIgnored() const { return GrColor_ILLEGAL == fColor; } const SkMatrix& viewMatrix() const { return fViewMatrix; } const SkMatrix& localMatrix() const { return fLocalMatrix; } bool usesLocalCoords() const { return fUsesLocalCoords; } diff --git a/src/gpu/effects/GrBitmapTextGeoProc.cpp b/src/gpu/effects/GrBitmapTextGeoProc.cpp index 8be4c2951a..3c4566ea7c 100644 --- a/src/gpu/effects/GrBitmapTextGeoProc.cpp +++ b/src/gpu/effects/GrBitmapTextGeoProc.cpp @@ -41,13 +41,11 @@ public: GrGLSLPPFragmentBuilder* fragBuilder = args.fFragBuilder; // Setup pass through color - if (!cte.colorIgnored()) { - if (cte.hasVertexColor()) { - varyingHandler->addPassThroughAttribute(cte.inColor(), args.fOutputColor); - } else { - this->setupUniformColor(fragBuilder, uniformHandler, args.fOutputColor, - &fColorUniform); - } + if (cte.hasVertexColor()) { + varyingHandler->addPassThroughAttribute(cte.inColor(), args.fOutputColor); + } else { + this->setupUniformColor(fragBuilder, uniformHandler, args.fOutputColor, + &fColorUniform); } // Setup position @@ -63,15 +61,13 @@ public: args.fFPCoordTransformHandler); if (cte.maskFormat() == kARGB_GrMaskFormat) { - if (!cte.colorIgnored()) { - fragBuilder->codeAppendf("%s = ", args.fOutputColor); - fragBuilder->appendTextureLookupAndModulate(args.fOutputColor, - args.fTexSamplers[0], - v.fsIn(), - kVec2f_GrSLType); - fragBuilder->codeAppend(";"); - fragBuilder->codeAppendf("%s = vec4(1);", args.fOutputCoverage); - } + fragBuilder->codeAppendf("%s = ", args.fOutputColor); + fragBuilder->appendTextureLookupAndModulate(args.fOutputColor, + args.fTexSamplers[0], + v.fsIn(), + kVec2f_GrSLType); + fragBuilder->codeAppend(";"); + fragBuilder->codeAppendf("%s = vec4(1);", args.fOutputCoverage); } else { fragBuilder->codeAppendf("%s = ", args.fOutputCoverage); fragBuilder->appendTextureLookup(args.fTexSamplers[0], v.fsIn(), kVec2f_GrSLType); @@ -102,9 +98,8 @@ public: GrProcessorKeyBuilder* b) { const GrBitmapTextGeoProc& gp = proc.cast<GrBitmapTextGeoProc>(); uint32_t key = 0; - key |= gp.usesLocalCoords() && gp.localMatrix().hasPerspective() ? 0x1 : 0x0; - key |= gp.colorIgnored() ? 0x2 : 0x0; - key |= gp.maskFormat() << 3; + key |= (gp.usesLocalCoords() && gp.localMatrix().hasPerspective()) ? 0x1 : 0x0; + key |= gp.maskFormat() << 1; b->add32(key); // Currently we hardcode numbers to convert atlas coordinates to normalized floating point diff --git a/src/gpu/effects/GrBitmapTextGeoProc.h b/src/gpu/effects/GrBitmapTextGeoProc.h index bf7f08febd..f15de47cf4 100644 --- a/src/gpu/effects/GrBitmapTextGeoProc.h +++ b/src/gpu/effects/GrBitmapTextGeoProc.h @@ -37,7 +37,6 @@ public: const Attribute* inTextureCoords() const { return fInTextureCoords; } GrMaskFormat maskFormat() const { return fMaskFormat; } GrColor color() const { return fColor; } - bool colorIgnored() const { return GrColor_ILLEGAL == fColor; } bool hasVertexColor() const { return SkToBool(fInColor); } const SkMatrix& localMatrix() const { return fLocalMatrix; } bool usesLocalCoords() const { return fUsesLocalCoords; } diff --git a/src/gpu/effects/GrDistanceFieldGeoProc.cpp b/src/gpu/effects/GrDistanceFieldGeoProc.cpp index 9d90ac9986..ee28760b11 100644 --- a/src/gpu/effects/GrDistanceFieldGeoProc.cpp +++ b/src/gpu/effects/GrDistanceFieldGeoProc.cpp @@ -53,9 +53,7 @@ public: #endif // Setup pass through color - if (!dfTexEffect.colorIgnored()) { - varyingHandler->addPassThroughAttribute(dfTexEffect.inColor(), args.fOutputColor); - } + varyingHandler->addPassThroughAttribute(dfTexEffect.inColor(), args.fOutputColor); // Setup position this->setupPosition(vertBuilder, @@ -201,8 +199,7 @@ public: GrProcessorKeyBuilder* b) { const GrDistanceFieldA8TextGeoProc& dfTexEffect = gp.cast<GrDistanceFieldA8TextGeoProc>(); uint32_t key = dfTexEffect.getFlags(); - key |= dfTexEffect.colorIgnored() << 16; - key |= ComputePosKey(dfTexEffect.viewMatrix()) << 25; + key |= ComputePosKey(dfTexEffect.viewMatrix()) << 16; b->add32(key); // Currently we hardcode numbers to convert atlas coordinates to normalized floating point @@ -323,9 +320,7 @@ public: varyingHandler->addVarying("TextureCoords", &v, kHigh_GrSLPrecision); // setup pass through color - if (!dfTexEffect.colorIgnored()) { - varyingHandler->addPassThroughAttribute(dfTexEffect.inColor(), args.fOutputColor); - } + varyingHandler->addPassThroughAttribute(dfTexEffect.inColor(), args.fOutputColor); vertBuilder->codeAppendf("%s = %s;", v.vsOut(), dfTexEffect.inTextureCoords()->fName); // Setup position @@ -457,8 +452,7 @@ public: const GrDistanceFieldPathGeoProc& dfTexEffect = gp.cast<GrDistanceFieldPathGeoProc>(); uint32_t key = dfTexEffect.getFlags(); - key |= dfTexEffect.colorIgnored() << 16; - key |= ComputePosKey(dfTexEffect.viewMatrix()) << 25; + key |= ComputePosKey(dfTexEffect.viewMatrix()) << 16; b->add32(key); } @@ -561,9 +555,7 @@ public: GrGLSLPPFragmentBuilder* fragBuilder = args.fFragBuilder; // setup pass through color - if (!dfTexEffect.colorIgnored()) { - varyingHandler->addPassThroughAttribute(dfTexEffect.inColor(), args.fOutputColor); - } + varyingHandler->addPassThroughAttribute(dfTexEffect.inColor(), args.fOutputColor); // Setup position this->setupPosition(vertBuilder, @@ -752,8 +744,7 @@ public: const GrDistanceFieldLCDTextGeoProc& dfTexEffect = gp.cast<GrDistanceFieldLCDTextGeoProc>(); uint32_t key = dfTexEffect.getFlags(); - key |= dfTexEffect.colorIgnored() << 16; - key |= ComputePosKey(dfTexEffect.viewMatrix()) << 25; + key |= ComputePosKey(dfTexEffect.viewMatrix()) << 16; b->add32(key); // Currently we hardcode numbers to convert atlas coordinates to normalized floating point diff --git a/src/gpu/effects/GrDistanceFieldGeoProc.h b/src/gpu/effects/GrDistanceFieldGeoProc.h index a0bfdd9dde..4355e8dd20 100644 --- a/src/gpu/effects/GrDistanceFieldGeoProc.h +++ b/src/gpu/effects/GrDistanceFieldGeoProc.h @@ -74,7 +74,6 @@ public: const Attribute* inColor() const { return fInColor; } const Attribute* inTextureCoords() const { return fInTextureCoords; } GrColor color() const { return fColor; } - bool colorIgnored() const { return GrColor_ILLEGAL == fColor; } const SkMatrix& viewMatrix() const { return fViewMatrix; } bool usesLocalCoords() const { return fUsesLocalCoords; } #ifdef SK_GAMMA_APPLY_TO_A8 @@ -135,7 +134,6 @@ public: const Attribute* inColor() const { return fInColor; } const Attribute* inTextureCoords() const { return fInTextureCoords; } GrColor color() const { return fColor; } - bool colorIgnored() const { return GrColor_ILLEGAL == fColor; } const SkMatrix& viewMatrix() const { return fViewMatrix; } uint32_t getFlags() const { return fFlags; } bool usesLocalCoords() const { return fUsesLocalCoords; } @@ -204,7 +202,6 @@ public: const Attribute* inTextureCoords() const { return fInTextureCoords; } DistanceAdjust getDistanceAdjust() const { return fDistanceAdjust; } GrColor color() const { return fColor; } - bool colorIgnored() const { return GrColor_ILLEGAL == fColor; } const SkMatrix& viewMatrix() const { return fViewMatrix; } uint32_t getFlags() const { return fFlags; } bool usesLocalCoords() const { return fUsesLocalCoords; } diff --git a/src/gpu/effects/GrShadowGeoProc.h b/src/gpu/effects/GrShadowGeoProc.h index dc6872e701..b0631efd9e 100755 --- a/src/gpu/effects/GrShadowGeoProc.h +++ b/src/gpu/effects/GrShadowGeoProc.h @@ -31,7 +31,6 @@ public: const Attribute* inColor() const { return fInColor; } const Attribute* inShadowParams() const { return fInShadowParams; } GrColor color() const { return fColor; } - bool colorIgnored() const { return GrColor_ILLEGAL == fColor; } const SkMatrix& localMatrix() const { return fLocalMatrix; } void getGLSLProcessorKey(const GrShaderCaps& caps, GrProcessorKeyBuilder* b) const override; |