diff options
Diffstat (limited to 'src/gpu/GrOvalRenderer.cpp')
-rw-r--r-- | src/gpu/GrOvalRenderer.cpp | 55 |
1 files changed, 25 insertions, 30 deletions
diff --git a/src/gpu/GrOvalRenderer.cpp b/src/gpu/GrOvalRenderer.cpp index a429caba11..57e53b69d6 100644 --- a/src/gpu/GrOvalRenderer.cpp +++ b/src/gpu/GrOvalRenderer.cpp @@ -661,18 +661,17 @@ public: void initBatchTracker(const GrPipelineInfo& init) override { // Handle any color overrides - if (init.fColorIgnored) { + if (!init.readsColor()) { fGeoData[0].fColor = GrColor_ILLEGAL; - } else if (GrColor_ILLEGAL != init.fOverrideColor) { - fGeoData[0].fColor = init.fOverrideColor; } + init.getOverrideColorIfSet(&fGeoData[0].fColor); // setup batch properties - fBatch.fColorIgnored = init.fColorIgnored; + fBatch.fColorIgnored = !init.readsColor(); fBatch.fColor = fGeoData[0].fColor; fBatch.fStroke = fGeoData[0].fStroke; - fBatch.fUsesLocalCoords = init.fUsesLocalCoords; - fBatch.fCoverageIgnored = init.fCoverageIgnored; + fBatch.fUsesLocalCoords = init.readsLocalCoords(); + fBatch.fCoverageIgnored = !init.readsCoverage(); } void generateGeometry(GrBatchTarget* batchTarget, const GrPipeline* pipeline) override { @@ -876,18 +875,17 @@ public: void initBatchTracker(const GrPipelineInfo& init) override { // Handle any color overrides - if (init.fColorIgnored) { + if (!init.readsCoverage()) { fGeoData[0].fColor = GrColor_ILLEGAL; - } else if (GrColor_ILLEGAL != init.fOverrideColor) { - fGeoData[0].fColor = init.fOverrideColor; } + init.getOverrideColorIfSet(&fGeoData[0].fColor); // setup batch properties - fBatch.fColorIgnored = init.fColorIgnored; + fBatch.fColorIgnored = !init.readsColor(); fBatch.fColor = fGeoData[0].fColor; fBatch.fStroke = fGeoData[0].fStroke; - fBatch.fUsesLocalCoords = init.fUsesLocalCoords; - fBatch.fCoverageIgnored = init.fCoverageIgnored; + fBatch.fUsesLocalCoords = init.readsLocalCoords(); + fBatch.fCoverageIgnored = !init.readsCoverage(); } void generateGeometry(GrBatchTarget* batchTarget, const GrPipeline* pipeline) override { @@ -1140,18 +1138,17 @@ public: void initBatchTracker(const GrPipelineInfo& init) override { // Handle any color overrides - if (init.fColorIgnored) { + if (!init.readsColor()) { fGeoData[0].fColor = GrColor_ILLEGAL; - } else if (GrColor_ILLEGAL != init.fOverrideColor) { - fGeoData[0].fColor = init.fOverrideColor; } + init.getOverrideColorIfSet(&fGeoData[0].fColor); // setup batch properties - fBatch.fColorIgnored = init.fColorIgnored; + fBatch.fColorIgnored = !init.readsColor(); fBatch.fColor = fGeoData[0].fColor; fBatch.fMode = fGeoData[0].fMode; - fBatch.fUsesLocalCoords = init.fUsesLocalCoords; - fBatch.fCoverageIgnored = init.fCoverageIgnored; + fBatch.fUsesLocalCoords = init.readsLocalCoords(); + fBatch.fCoverageIgnored = !init.readsCoverage(); } void generateGeometry(GrBatchTarget* batchTarget, const GrPipeline* pipeline) override { @@ -1489,18 +1486,17 @@ public: void initBatchTracker(const GrPipelineInfo& init) override { // Handle any color overrides - if (init.fColorIgnored) { + if (!init.readsColor()) { fGeoData[0].fColor = GrColor_ILLEGAL; - } else if (GrColor_ILLEGAL != init.fOverrideColor) { - fGeoData[0].fColor = init.fOverrideColor; } + init.getOverrideColorIfSet(&fGeoData[0].fColor); // setup batch properties - fBatch.fColorIgnored = init.fColorIgnored; + fBatch.fColorIgnored = !init.readsColor(); fBatch.fColor = fGeoData[0].fColor; fBatch.fStroke = fGeoData[0].fStroke; - fBatch.fUsesLocalCoords = init.fUsesLocalCoords; - fBatch.fCoverageIgnored = init.fCoverageIgnored; + fBatch.fUsesLocalCoords = init.readsLocalCoords(); + fBatch.fCoverageIgnored = !init.readsCoverage(); } void generateGeometry(GrBatchTarget* batchTarget, const GrPipeline* pipeline) override { @@ -1662,18 +1658,17 @@ public: void initBatchTracker(const GrPipelineInfo& init) override { // Handle any color overrides - if (init.fColorIgnored) { + if (!init.readsColor()) { fGeoData[0].fColor = GrColor_ILLEGAL; - } else if (GrColor_ILLEGAL != init.fOverrideColor) { - fGeoData[0].fColor = init.fOverrideColor; } + init.getOverrideColorIfSet(&fGeoData[0].fColor); // setup batch properties - fBatch.fColorIgnored = init.fColorIgnored; + fBatch.fColorIgnored = !init.readsColor(); fBatch.fColor = fGeoData[0].fColor; fBatch.fStroke = fGeoData[0].fStroke; - fBatch.fUsesLocalCoords = init.fUsesLocalCoords; - fBatch.fCoverageIgnored = init.fCoverageIgnored; + fBatch.fUsesLocalCoords = init.readsLocalCoords(); + fBatch.fCoverageIgnored = !init.readsCoverage(); } void generateGeometry(GrBatchTarget* batchTarget, const GrPipeline* pipeline) override { |