The V0 version of this will use the product of the "global" and per-quad
alpha.
A new V1 version is added that does not take a global alpha.
The V0 version will be removed once SkiaRenderer no longer uses it.
Bug: skia:8563
Change-Id: Iace3dff6c4f1fd1a5c6c30eb8226f4815c58e0ed
Reviewed-on: https://skia-review.googlesource.com/c/172146
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
This reverts commit c00e470547.
Reason for revert: Appears to fix flakiness on NUC5PPYH-Vulkan
Original change's description:
> Prefer GrAAConvexPathRenderer over ccpr
>
> Even though ccpr can be faster than the convex renderer for small
> paths, there is value in a simpler, more consistent approach. The
> convex renderer is single-pass, doesn't deal with caching, and is
> unaffected by the less favorable flush pattern in Chrome. We can
> address the regressions from this CL by optimizing single-pass convex
> path rendering, rather than trying to use ccpr more.
>
> Bug: chromium:860021
> Change-Id: I44ceefa43cdad7fb25c620faed8b525901fb1f0c
> Reviewed-on: https://skia-review.googlesource.com/c/171525
> Reviewed-by: Chris Dalton <csmartdalton@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Chris Dalton <csmartdalton@google.com>
TBR=bsalomon@google.com,csmartdalton@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: chromium:860021
Change-Id: Iccbb663b885cbc3c31b41f70cee36633d8177ecb
Reviewed-on: https://skia-review.googlesource.com/c/172144
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Chris Dalton <csmartdalton@google.com>
- We're always tiling the same way in X and Y,
so fold that through in a few ways.
- Simplify the interface between _matrixProcs.cpp and _matrix.h.
Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
Change-Id: If306b4506b960bfe8156d0f3f5d28f14ccf4b40a
Reviewed-on: https://skia-review.googlesource.com/c/172023
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
0e604f9f11..836674c28b
git log 0e604f9f1107..836674c28b1e --date=short --no-merges --format='%ad %ae %s'
2018-11-20 geofflang@chromium.org Expose GL_CHROMIUM_compressed_texture_etc on top of ES drivers.
2018-11-20 geofflang@chromium.org Skip SetUp and TearDown in VulkanCommandBufferPerfTest if its flaky.
2018-11-20 geofflang@chromium.org Fix typo in OWNERS file email address.
2018-11-20 jmadill@chromium.org Use xxHash for faster hash map lookups.
Created with:
gclient setdep -r third_party/externals/angle2@836674c28b1e
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=csmartdalton@google.com
Change-Id: Iba22e7296662dd986d31d4f5a32fb95281e1496f
Reviewed-on: https://skia-review.googlesource.com/c/172196
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bug: skia:
Change-Id: I308f191e3c4db1ec87089a499603aeed5afb5788
Reviewed-on: https://skia-review.googlesource.com/c/171904
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Bug: skia:
Change-Id: Ib3309ec0a0a00f1471c2211282d70ab089143bb2
Reviewed-on: https://skia-review.googlesource.com/c/171727
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Made addPath take one more arg to allow for append/expand
(which makes emulating the HTML canvas easier).
Add Gold test for various lineTo/pathTo, etc.
Make CanvasKit.Color() choose a better value for alpha
when omitted (was 0, should be 1).
Add some parsing logic to deal with colors/font sizes.
Fonts are going to be rather complex it seems.
Moves some arc-related logic to the JS side, (although
this should preserve the behavior of CanvasKit.arc() to
behave like the Canvas implementation)
Make Examples and tests to a side-by-side comparison to
HTML canvas where applicable.
Add a Changelog for PathKit. There was a bug (I thought), but
turns out I was wrong. The Changelog will be for future
bug fixes.
Bug: skia:
Change-Id: I1bd603fdb518232604b098e24543e3453015b504
Reviewed-on: https://skia-review.googlesource.com/c/170446
Reviewed-by: Kevin Lubick <kjlubick@google.com>
The only platform procs left here are the matrix procs,
and calmbench + my laptop say this is roughly a no-op:
Compared 930 benches. 0 of them seem to be significantly differrent.
My desktop is similar, just two small slowdowns, only in microbenchmarks:
platform-procs (compared to master) is likely
4.79% slower in draw_bitmap_aa_scale
4.79% slower in draw_bitmap_noaa_scale
Compared 930 benches. 2 of them seem to be significantly differrent.
This doesn't actually affect ARM builds. There are optimized NEON
platform procs, but they're not hooked up through platformProcs(),
rather in their own idiosyncratic way.
There's like, zero chance this doesn't change at least one layout test.
Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
Change-Id: Ia38e1e8eff8641599e9387f5411b2d0f6c5bfc73
Reviewed-on: https://skia-review.googlesource.com/c/171908
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Bug: skia:
Change-Id: I3a23031cdd86d844c78134ecf79fc1ccc37ec1f1
Reviewed-on: https://skia-review.googlesource.com/c/171721
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Bug: skia:
Change-Id: I2d166ed6c1cb1c13a91526e2f0340623e0436003
Reviewed-on: https://skia-review.googlesource.com/c/171782
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Bug: skia:7903
Change-Id: I41ee31ad3657aee372e22ec3e7a0a317e31b2791
Reviewed-on: https://skia-review.googlesource.com/c/171007
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
In most places we were using 0.25 (maximum distance between the actual
and approximated curves). In these few places, we were using 0.5, which
is enough to produce visible errors.
Added a GM that demonstrated the problem as reported - many of the arcs
with radius ~8 were previously closer to round-rects than circles.
Bug: chromium:888453
Change-Id: I7d22e27773f56174861526dd0223f52a93bf48eb
Reviewed-on: https://skia-review.googlesource.com/c/172060
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
No-Try: true
Docs-Preview: https://skia.org/?cl=172061
Change-Id: I509ca82707324b49e3c439c0c07a8091ceaf374c
Reviewed-on: https://skia-review.googlesource.com/c/172061
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
- Fold in _matrix_template.h
- Make the NEON/non-NEON distictions a bit more clear.
- Re-roll routines to their natural stride,
leaving unrolling to the compiler.
- Small style changes.
- Leave some TODOs for another round.
Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
Change-Id: Ide4111931aa5f19e23cac77722337ea5d53f72db
Reviewed-on: https://skia-review.googlesource.com/c/172020
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
b81ff9e6c5..0e604f9f11
git log b81ff9e6c518..0e604f9f1107 --date=short --no-merges --format='%ad %ae %s'
2018-11-20 jmadill@chromium.org ANGLE Perf Test fixes.
Created with:
gclient setdep -r third_party/externals/angle2@0e604f9f1107
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=csmartdalton@google.com
Change-Id: Id9de7b41eae4cc293c7ce2032ee814d12b7fbcfa
Reviewed-on: https://skia-review.googlesource.com/c/172040
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Change-Id: I900a661f346a10dbd8002bfe383d1705138feb50
Reviewed-on: https://skia-review.googlesource.com/c/146401
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Bug: skia:8563
Change-Id: Iff1a5544df7f5dfeca3bfa14723ce39e653007eb
Reviewed-on: https://skia-review.googlesource.com/c/171903
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
8a0fb48a56..b81ff9e6c5
git log 8a0fb48a56d6..b81ff9e6c518 --date=short --no-merges --format='%ad %ae %s'
2018-11-20 jiajia.qin@intel.com ES31: Add std430 encoder.
2018-11-19 ynovikov@chromium.org Vulkan: warn on VK_ERROR_DEVICE_LOST
Created with:
gclient setdep -r third_party/externals/angle2@b81ff9e6c518
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=csmartdalton@google.com
Change-Id: I73555c782d6831a7f99663f7f39d0314dc2644b0
Reviewed-on: https://skia-review.googlesource.com/c/171980
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
add safety net if it gets
stuck in a loop. Also fix
skia fuzzer latest.
R=kjlubick@google.com
Bug: 906360
Change-Id: Iabb608f615838b6b7ec9e001ec5664e84566c274
Reviewed-on: https://skia-review.googlesource.com/c/171902
Commit-Queue: Cary Clark <caryclark@skia.org>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Adds a GrAAFillRRectOp class that can draw any round rect, including
complex. The Op makes use of instanced rendering and fwidth().
Bug: chromium:860021
Change-Id: I3d8818a003899b56c33d35babe22cd15d3f8e110
Reviewed-on: https://skia-review.googlesource.com/c/170729
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Prepping SkFont.h so that docs can be generated.
Mostly copying and pasting documentation with
edits to match SkFont conventions.
Added parameter names where missing to public
functions.
In a follow-on CL bookmaker will generate the
corresponding docs/SkFont_Reference.bmh
R=reed@google.com
Bug: skia:
Change-Id: Ib413b07000b368e2ee1b9145da1fca206a07a592
Reviewed-on: https://skia-review.googlesource.com/c/171646
Commit-Queue: Cary Clark <caryclark@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Change-Id: I3fd20d2b69d5c3b4b7163c239d65185ce9099c41
Reviewed-on: https://skia-review.googlesource.com/c/171783
Commit-Queue: Hal Canary <halcanary@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
- SkPDFFont no longer inherits from SkPDFObject.
- PDFFont reserves a PDFIndirectReference upon creation;
these are shared.
- PDFFonts no longer have virtual method and subtypes.
- PDFFont is moveable so it can be in hashmap.
- Refer to Fonts by "F"+referenceValue in content.
- Canon directly owns SkPDFFont objects.
- Canonicalize Type 3 descriptors.
- Pre-serialize Type 1 descriptors.
- SkPDFDocument::emit(const SkPDFObject&) for objects on the stack.
- SkPDFDocument::registerFont is gone. Canon is used instead.
- Replace lots of 'ObjRef' with 'Ref'.
- Standard PDFTypes that use String now take by value to sometimes
save ref/unref.
Change-Id: Iff039c79120a903263edfd1f122c7feabc45e2b8
Reviewed-on: https://skia-review.googlesource.com/c/171781
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
fde74c078f..8a0fb48a56
git log fde74c078f77..8a0fb48a56d6 --date=short --no-merges --format='%ad %ae %s'
2018-11-19 jmadill@chromium.org Vulkan: Suppress functional.shaders.invariance.* on NV.
2018-11-19 matavenrath@nvidia.com Make all single line getter functions in State class inline functions.
Created with:
gclient setdep -r third_party/externals/angle2@8a0fb48a56d6
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=csmartdalton@google.com
Change-Id: I95f2cfeb0a4adbf5a498dfc2c695cde91a8ecdec
Reviewed-on: https://skia-review.googlesource.com/c/171840
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bug: skia:
Change-Id: Ie681369ef4b1d3d43c326da684afde9ce6d08486
Reviewed-on: https://skia-review.googlesource.com/c/171726
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Doesn't look like we need to distinguish these if we just
write them as the simple
1) load the right number of bytes
2) clamp to [min,max]
This makes enum fuzzing independent of its underlying type, and may make
it easier to see the mapping from fuzzed byte stream to
nextRange()/nextEnum() values.
Change-Id: I9f785f94f513a0087ad7151b5e7bc14ddbe9314a
Reviewed-on: https://skia-review.googlesource.com/c/171820
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>