Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1371)

Issue 1348583002: Make skpaint->grpaint flow work for composing draws (Closed)

Created:
5 years, 3 months ago by bsalomon
Modified:
5 years, 2 months ago
CC:
reviews_skia.org
Base URL:
https://skia.googlesource.com/skia.git@master
Target Ref:
refs/heads/master
Project:
skia
Visibility:
Public.

Description

Make skpaint->grpaint flow work for composing draws (verts and atlas) One side effect is that the SkShader's (or implicit shader's) fragment processor is responsible for the transition from an unpremul paint color to a premul color. Committed: https://skia.googlesource.com/skia/+/f1b7a1d82860e106ed7d3e0e876419e65783fb84

Patch Set 1 #

Patch Set 2 : SkPaintToGrPaint rewrite #

Patch Set 3 : more #

Patch Set 4 : working #

Patch Set 5 : cleanup #

Patch Set 6 : rebase #

Patch Set 7 : small cleanup #

Total comments: 34

Patch Set 8 : Address comments #

Patch Set 9 : Address comments #

Patch Set 10 : rebase #

Patch Set 11 : remove unused inheriteds to satisfy clang #

Unified diffs Side-by-side diffs Delta from patch set Stats (+529 lines, -222 lines) Patch
M gm/constcolorprocessor.cpp View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M gm/dcshader.cpp View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M gyp/gpu.gypi View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M include/core/SkShader.h View 1 2 3 4 1 chunk +3 lines, -0 lines 0 comments Download
M include/gpu/GrColor.h View 1 2 3 4 5 6 1 chunk +2 lines, -2 lines 0 comments Download
M include/gpu/GrFragmentProcessor.h View 1 2 3 4 5 6 7 1 chunk +15 lines, -1 line 0 comments Download
M include/gpu/GrInvariantOutput.h View 1 2 3 4 5 6 7 3 chunks +1 line, -6 lines 0 comments Download
M include/gpu/SkGr.h View 1 2 3 4 3 chunks +18 lines, -19 lines 0 comments Download
M include/gpu/effects/GrXfermodeFragmentProcessor.h View 1 2 3 4 1 chunk +3 lines, -0 lines 0 comments Download
M src/core/SkBitmapProcShader.cpp View 1 2 3 4 1 chunk +2 lines, -2 lines 0 comments Download
M src/core/SkDevice.cpp View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M src/core/SkLightingShader.cpp View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M src/core/SkShader.cpp View 1 1 chunk +1 line, -1 line 0 comments Download
M src/effects/SkColorFilters.cpp View 1 1 chunk +1 line, -1 line 0 comments Download
M src/effects/SkPerlinNoiseShader.cpp View 1 2 3 4 2 chunks +2 lines, -2 lines 0 comments Download
M src/effects/gradients/SkLinearGradient.cpp View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M src/effects/gradients/SkRadialGradient.cpp View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M src/effects/gradients/SkSweepGradient.cpp View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M src/effects/gradients/SkTwoPointConicalGradient.cpp View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M src/gpu/GrAtlasTextContext.cpp View 1 2 3 3 chunks +3 lines, -3 lines 0 comments Download
M src/gpu/GrBlurUtils.cpp View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M src/gpu/GrFragmentProcessor.cpp View 1 2 3 4 5 6 7 8 9 10 2 chunks +153 lines, -1 line 0 comments Download
M src/gpu/GrInvariantOutput.cpp View 1 2 3 4 5 6 2 chunks +0 lines, -25 lines 0 comments Download
M src/gpu/GrTextContext.cpp View 1 2 3 4 2 chunks +2 lines, -1 line 0 comments Download
M src/gpu/SkGpuDevice.cpp View 1 2 3 4 5 6 7 8 23 chunks +104 lines, -86 lines 0 comments Download
M src/gpu/SkGr.cpp View 1 2 3 4 5 6 7 3 chunks +146 lines, -38 lines 0 comments Download
M src/gpu/SkGrPriv.h View 1 2 3 4 2 chunks +39 lines, -1 line 0 comments Download
M src/gpu/batches/GrDrawAtlasBatch.cpp View 1 2 3 4 2 chunks +12 lines, -3 lines 0 comments Download
M src/gpu/effects/GrXfermodeFragmentProcessor.cpp View 1 2 2 chunks +7 lines, -16 lines 0 comments Download
M src/image/SkImageShader.cpp View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M tests/GpuColorFilterTest.cpp View 1 1 chunk +2 lines, -2 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 22 (7 generated)
bsalomon
I think if you start with SkGr.cpp the rest of this will make sense. Many ...
5 years, 2 months ago (2015-09-25 18:12:44 UTC) #2
bsalomon
Please ignore the changes in gm/vertices.cpp. That will be its own CL and needs a ...
5 years, 2 months ago (2015-09-25 18:54:09 UTC) #3
egdaniel
initial skgr comments https://codereview.chromium.org/1348583002/diff/120001/src/gpu/SkGr.cpp File src/gpu/SkGr.cpp (right): https://codereview.chromium.org/1348583002/diff/120001/src/gpu/SkGr.cpp#newcode30 src/gpu/SkGr.cpp:30: #include "effects/GrConstColorProcessor.h" alphabetize https://codereview.chromium.org/1348583002/diff/120001/src/gpu/SkGr.cpp#newcode754 src/gpu/SkGr.cpp:754: grPaint->setColor(GrColor_WHITE); ...
5 years, 2 months ago (2015-09-25 19:23:15 UTC) #4
robertphillips
https://codereview.chromium.org/1348583002/diff/120001/gm/vertices.cpp File gm/vertices.cpp (right): https://codereview.chromium.org/1348583002/diff/120001/gm/vertices.cpp#newcode157 gm/vertices.cpp:157: for (size_t j = 0; j < SK_ARRAY_COUNT(modes); ++j) ...
5 years, 2 months ago (2015-09-25 19:52:17 UTC) #5
egdaniel
https://codereview.chromium.org/1348583002/diff/120001/src/gpu/GrFragmentProcessor.cpp File src/gpu/GrFragmentProcessor.cpp (right): https://codereview.chromium.org/1348583002/diff/120001/src/gpu/GrFragmentProcessor.cpp#newcode11 src/gpu/GrFragmentProcessor.cpp:11: #include "gl/builders/GrGLProgramBuilder.h" this should go below the gl/*.cpp https://codereview.chromium.org/1348583002/diff/120001/src/gpu/SkGpuDevice.cpp ...
5 years, 2 months ago (2015-09-25 20:01:55 UTC) #6
bsalomon
https://codereview.chromium.org/1348583002/diff/120001/gm/vertices.cpp File gm/vertices.cpp (right): https://codereview.chromium.org/1348583002/diff/120001/gm/vertices.cpp#newcode157 gm/vertices.cpp:157: for (size_t j = 0; j < SK_ARRAY_COUNT(modes); ++j) ...
5 years, 2 months ago (2015-09-25 20:45:08 UTC) #7
bsalomon
ping
5 years, 2 months ago (2015-09-28 13:03:03 UTC) #8
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1348583002/180001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1348583002/180001
5 years, 2 months ago (2015-09-28 13:04:34 UTC) #10
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: Build-Ubuntu-GCC-x86_64-Release-Trybot on client.skia.compile (JOB_FAILED, http://build.chromium.org/p/client.skia.compile/builders/Build-Ubuntu-GCC-x86_64-Release-Trybot/builds/3438)
5 years, 2 months ago (2015-09-28 13:05:19 UTC) #12
egdaniel
outside of failing trybots, lgtm, but might want rob to agree as well
5 years, 2 months ago (2015-09-28 13:13:22 UTC) #13
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1348583002/200001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1348583002/200001
5 years, 2 months ago (2015-09-28 13:15:24 UTC) #15
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 2 months ago (2015-09-28 13:21:25 UTC) #17
robertphillips
lgtm
5 years, 2 months ago (2015-09-28 13:23:05 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1348583002/200001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1348583002/200001
5 years, 2 months ago (2015-09-28 13:25:36 UTC) #21
commit-bot: I haz the power
5 years, 2 months ago (2015-09-28 13:26:39 UTC) #22
Message was sent while issue was closed.
Committed patchset #11 (id:200001) as
https://skia.googlesource.com/skia/+/f1b7a1d82860e106ed7d3e0e876419e65783fb84

Powered by Google App Engine
This is Rietveld 408576698