This keeps the special handling for Alpha8 and Gray8. All other formats
are converted to 8888. To make everything simpler, we always convert to
kBGRA, so we can just use SkColor macros to get the components.
This maintains the neighbor-averaging for fully transparent pixels, but
the implementation is slightly different. Before, we averaged RGB and A
while the pixels were premul, then unpremultiplied. Now, we pre-convert
everything to unpremul, then just average RGB over the (not fully
transparent) neighbors.
Bug: skia:
Change-Id: Ib5a0d8536e2507952a44365347518b2d57d07549
Reviewed-on: https://skia-review.googlesource.com/c/167660
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
caeb1e895d..6ba22ee137
git log caeb1e895d7b..6ba22ee13768 --date=short --no-merges --format='%ad %ae %s'
2018-11-02 geofflang@chromium.org GL: Implement EGL_ANDROID_get_frame_timestamps.
2018-11-02 james.clarke@microsoft.com Windows: add support for SpriteVisuals as a native window type.
2018-11-02 jiajia.qin@intel.com ES31: Simplify IsInShaderStorageBlock function
Created with:
gclient setdep -r third_party/externals/angle2@6ba22ee13768
The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=herb@google.com
Change-Id: Iac2b21ffe2d5950c699fa73e3761feb70233f9a4
Reviewed-on: https://skia-review.googlesource.com/c/167900
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I8c0e47933538034a2ea6f77f86b4d2694014e6b3
Reviewed-on: https://skia-review.googlesource.com/c/167686
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Bug: skia:
Change-Id: Ia82461153d7f263e7cda34dc9c98d588b3c5351c
Reviewed-on: https://skia-review.googlesource.com/c/167880
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Change-Id: I578d064660cb20b834b80898ddc18e2f36394f11
Reviewed-on: https://skia-review.googlesource.com/c/167685
Reviewed-by: Hal Canary <halcanary@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Also remove the second, bespoke implementation in displacement
map effect.
Bug: skia:
Change-Id: I7363673337caba73c1311fe3cef4385dd7d1804e
Reviewed-on: https://skia-review.googlesource.com/c/167840
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Change-Id: Iacbddf1575115852eaa79b3f2e41c3bbbf3124c8
Reviewed-on: https://skia-review.googlesource.com/c/167684
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Bug: skia:
Change-Id: I942e46c2b680714cdd10f7393c6a4d206df645a8
Reviewed-on: https://skia-review.googlesource.com/c/167394
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
- remove a couple transform_scanline_procs
- remove all use of SK_RESTRICT
- remove the color table
- reformat arguments etc.
Change-Id: I545dc6d74fffc7d95e3d53fb26ee748b94f93b65
Reviewed-on: https://skia-review.googlesource.com/c/167683
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Change-Id: I41593bf44efc0c8baa2d675e406169eb303b5015
Reviewed-on: https://skia-review.googlesource.com/c/167682
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Bug: skia:
Change-Id: I4b7e512e6ee8e4da4ab96924acc034355ae6b8bf
Reviewed-on: https://skia-review.googlesource.com/c/167101
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Make the public include/core/SkColorPriv.h a little smaller
and internal src/core/SkColorData.h a little larger.
R=brianosman@google.comTBR=reed@google.com
Bug: skia:
Change-Id: Ic51b1c397f0c6ed5383f9c054c7b4f83b7b3c308
Reviewed-on: https://skia-review.googlesource.com/c/167721
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Cary Clark <caryclark@skia.org>
Change-Id: I03760e49437b82bc8faf76fa42ce876d618bf516
Reviewed-on: https://skia-review.googlesource.com/c/167680
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Bug: skia:
Change-Id: I38336b3d803da8bdc9650d560145a24b05a1a457
Reviewed-on: https://skia-review.googlesource.com/c/167460
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
502d2e2155..caeb1e895d
git log 502d2e215556..caeb1e895d7b --date=short --no-merges --format='%ad %ae %s'
2018-11-02 jmadill@chromium.org Vulkan: Allow unlimited simultaneous descriptor sets.
2018-11-02 yizhou.jiang@intel.com Implement GetTexLevelParameter api of texture multisample extension
Created with:
gclient setdep -r third_party/externals/angle2@caeb1e895d7b
The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=herb@google.com
Change-Id: I858122b73cad708faf4e38f76729a019a87505c2
Reviewed-on: https://skia-review.googlesource.com/c/167640
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Recent bookmaker changes make coordinating include
and bmh files a bit easier.
TBR=reed@google.com
NOTRY=true
Docs-Preview: https://skia.org/?cl=167547
Bug: skia:
Change-Id: I47d46cf639b13b152f79ef84a62d67da06ae8cf1
Reviewed-on: https://skia-review.googlesource.com/c/167547
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
2197dc5290..502d2e2155
git log 2197dc529052..502d2e215556 --date=short --no-merges --format='%ad %ae %s'
2018-11-01 jmadill@chromium.org Vulkan: Crunch RenderPassDesc.
Created with:
gclient setdep -r third_party/externals/angle2@502d2e215556
The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=herb@google.com
Change-Id: I416f30f4cc550e2d6ecea381a196d6b56a8b6c70
Reviewed-on: https://skia-review.googlesource.com/c/167561
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
This reverts commit 460a43deb1.
Reason for revert: Causes the android roll to break
Original change's description:
> Remove the unused buffers for unique glyph handling
>
> Change-Id: Icf6d62586e65936caa516f8bac40941585e63943
> Reviewed-on: https://skia-review.googlesource.com/c/167265
> Commit-Queue: Herb Derby <herb@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
> Auto-Submit: Herb Derby <herb@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>
TBR=herb@google.com,brianosman@google.com
Change-Id: Id1d7d6fb9a879bd91756d724d20f398e05033bf0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/167544
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Adds a hook that gets called from GrContext::performDeferredCleanup.
Bug: skia:8452
Change-Id: I4e5f4d263528b21247fbc032a1b4881a23cbb2ff
Reviewed-on: https://skia-review.googlesource.com/c/167181
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
We're already not testing these giants sizes on 32-bit machines because
they overrun memory. I'm not sure it's important to test them at all.
Change-Id: I322d46add8024760fc71939abe09430f77cbd69d
Reviewed-on: https://skia-review.googlesource.com/c/165767
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
I *think* this is a bug in MakeForDeviceSpace(). From a symbolic point of
view, the FPs are sent T * C * Lgp * l, where T
is the texture normalization matrix, C is the FP's registered coord
transform, Lgp is the local matrix sent to the GP, and l is the local
coord vertex attribute.
The net result should be T * C * Lop * o where Lop is the local matrix
of the op (often just I), and o is the object space position.
MakeDeviceSpace() modifies these so that l is the device space position
(V*o), and Lgp = V^-1*Lop (from preConcat), which makes the output
T * C * (V^-1 * Lop) * (V * o). If postConcat is used instead, the output
is T * C * (Lop * V^-1) * (V * o) -> T * C * Lop * o as expected.
At least one place that triggers MakeForDeviceSpace, the
GrSoftwarePathRenderer, sends V = I to the op so there's no actual difference
in that context. There may be other code paths that will need to be updated
in response to this change.
Bug: skia:
Change-Id: Ibb4294a6651e07543abbf37ae997c21180d1905a
Reviewed-on: https://skia-review.googlesource.com/c/167388
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
I suspect these were fixed by the driver upgrade in
https://skia-review.googlesource.com/c/skia/+/166621
Bug: skia:6398, skia:6863
Change-Id: I9079454b385b209e0c4bf416063ec01883045ab1
Reviewed-on: https://skia-review.googlesource.com/c/167390
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
The new fill rect op seems to be the first op that sends 3D local coordinates, so
this wasn't encountered before. Prior ops specifically do not apply a perspective
matrix on the CPU so that the local coords remain 2D until after the transform.
Performing the perspective divide in the VS and then interpolating the 2D results
is basically the same as using non-perspective interpolation on the position
attribute.
Bug: skia:
Change-Id: Ib5bed8230b69040aafb100b34a69acb9309a0547
Reviewed-on: https://skia-review.googlesource.com/c/167387
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Ops that use the SimpleMeshDrawHelper but also need to make decisions on
the aa type need access to the aa type that the helper stores.
Bug: skia:
Change-Id: I52dfbd89ead550de68fea96078dd6600620ad6cf
Reviewed-on: https://skia-review.googlesource.com/c/167389
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Bug: skia:
Change-Id: I757c8e61d9fa1addf0864a67075124f29297abba
Reviewed-on: https://skia-review.googlesource.com/c/167386
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
This was spread across SkColorPriv.h and SkColorData.h, and was
accomodating fictional users that set SK_PMCOLOR_IS_* themselves.
Also, remove an unused define and stop grilling colors.
Bug: skia:
Change-Id: I70efd51052f32afdc3e19fd55dd38270d98b6b76
Reviewed-on: https://skia-review.googlesource.com/c/167392
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Bug: skia:
Change-Id: I723c5efdd746d6182dee0511795f7eca3b6066d3
Reviewed-on: https://skia-review.googlesource.com/c/167180
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Currently, GrGLGpu doesn't disable blend when the color mask is false. It
causes bad happening as follows,
* GPU thinks the blend is on so reads FBO unnecessary.
* In the case the blend needs SRC1 but shader doesn't have the color
attachment, some GPU driver can crash [1]
* In the above case, it's undefined behavior according to the spec [2]
[1] Mesa on Intel had the issue but it was fixed thank to this test failure.
https://patchwork.freedesktop.org/patch/235939/
[2] https://www.khronos.org/registry/OpenGL/extensions/ARB/ARB_blend_func_extended.txt
TEST: mixedtextblobs in dm or skqp
Bug: b/116339546
Change-Id: I71a36defd0ffe48ed914aa428bd351fd0c5f5974
Reviewed-on: https://skia-review.googlesource.com/c/167220
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Dongseong Hwang <dongseong.hwang@intel.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Bug: skia:
Change-Id: I7e53fe4bc7cba31629c80a1472d11a8a30fe6a5a
Reviewed-on: https://skia-review.googlesource.com/c/167391
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Change-Id: Icf6d62586e65936caa516f8bac40941585e63943
Reviewed-on: https://skia-review.googlesource.com/c/167265
Commit-Queue: Herb Derby <herb@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Herb Derby <herb@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
The hash is computed byte-wise, so we should compare byte-wise.
As written, if the two matrices are the same but contain a NaN,
they'll fail the comparison test, but should pass.
Bug: chromium:900835
Change-Id: I2fcef309ed604c8c1e03e268252778e7bd6d27a1
Reviewed-on: https://skia-review.googlesource.com/c/167263
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
This reverts commit 7bfe6f809d.
Reason for revert: It doesn't look like this caused the roll to break.
Original change's description:
> Revert "Move from a functional to object based interface between Painter and SkDraw"
>
> This reverts commit cc3844a076.
>
> Reason for revert: Grasping at straws for Fuchsia roller
>
> Original change's description:
> > Move from a functional to object based interface between Painter and SkDraw
> >
> > Change-Id: I845d0b90d034c84fd73b8c37bafb5a6c8e35dfd3
> > Reviewed-on: https://skia-review.googlesource.com/c/166920
> > Commit-Queue: Herb Derby <herb@google.com>
> > Reviewed-by: Mike Klein <mtklein@google.com>
>
> TBR=mtklein@google.com,herb@google.com
>
> Change-Id: Ie436fbedc6555c58228203b79cfe5e3d2bf722ac
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/167382
> Reviewed-by: Herb Derby <herb@google.com>
> Commit-Queue: Herb Derby <herb@google.com>
TBR=mtklein@google.com,herb@google.com
Change-Id: I55b09bff2fbdac9347c4dfb0de26edcbdfa157e6
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/167262
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Bookmaker can be run on one command line with:
./out/skia/bookmaker -E && ~/go/bin/fiddlecli --quiet && ./out/skia/bookmaker
Update the documentation to say so.
NOTRY=true
TBR=jcgregorio@google.com
Docs-Preview: https://skia.org/?cl=167385
Bug: skia:
Change-Id: I14bf660860c9a4451dce783b45b2b0ed02a59af9
Reviewed-on: https://skia-review.googlesource.com/c/167385
Commit-Queue: Cary Clark <caryclark@skia.org>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Cary Clark <caryclark@skia.org>
Most of this is just refactoring code and comments to help me keep
the conditions all straight in my head.
I've also sketched the next substantive change I want to make here,
to handle all non-shader/non-SrcOver blits with SkRasterPipelineBlitter.
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I971a31e863247d67fc41f06b67e941bbff3e04a4
Reviewed-on: https://skia-review.googlesource.com/c/167381
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Bug: skia:
Change-Id: I47e4b1e96905e27aed78cc317d0b7f263b8cf25a
Reviewed-on: https://skia-review.googlesource.com/c/166760
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
This reverts commit cc3844a076.
Reason for revert: Grasping at straws for Fuchsia roller
Original change's description:
> Move from a functional to object based interface between Painter and SkDraw
>
> Change-Id: I845d0b90d034c84fd73b8c37bafb5a6c8e35dfd3
> Reviewed-on: https://skia-review.googlesource.com/c/166920
> Commit-Queue: Herb Derby <herb@google.com>
> Reviewed-by: Mike Klein <mtklein@google.com>
TBR=mtklein@google.com,herb@google.com
Change-Id: Ie436fbedc6555c58228203b79cfe5e3d2bf722ac
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/167382
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>