aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu
Commit message (Collapse)AuthorAge
* Correct precondition for SDF mask format.Gravatar Ben Wagner2018-05-01
| | | | | | | | | | | When creating an SDF glyph the mask format of the underlying glyph must be A1 or A8. Currently the code just checks for ~ARGB, but LCD16, 3D, and any other possible mask formats are also unsupported. Change-Id: I092a18828742dddfc93687eabd9858186605fc96 Reviewed-on: https://skia-review.googlesource.com/125083 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Revert "Use a cached index buffer for triangle fans in GrDefaultPathRenderer."Gravatar Brian Salomon2018-05-01
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit ddff425b0a9cd4b178c74d7feee2c5c22e37c8d1. Reason for revert: bad gms Original change's description: > Use a cached index buffer for triangle fans in GrDefaultPathRenderer. > > Change-Id: I3c3c8db6506c71e4b273c8bc7adcc68d3d768626 > Reviewed-on: https://skia-review.googlesource.com/124841 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,brianosman@google.com Change-Id: I701b55f188c949c2ee39b39f9bbf5b233f80f174 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/125040 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Use a cached index buffer for triangle fans in GrDefaultPathRenderer.Gravatar Brian Salomon2018-05-01
| | | | | | | Change-Id: I3c3c8db6506c71e4b273c8bc7adcc68d3d768626 Reviewed-on: https://skia-review.googlesource.com/124841 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Alter the decimation portion of Ganesh's GaussianBlur methodGravatar Robert Phillips2018-05-01
| | | | | | | | | This CL doesn't change any GMs for me locally but (because of the backingFit and clipRect changes) it has the possibility of doing so. Change-Id: Iaa1ad9baf420624d118bf1b12d8bac726218274d Reviewed-on: https://skia-review.googlesource.com/124283 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* ccpr: Avoid inline array definitionsGravatar Chris Dalton2018-04-30
| | | | | | | | | | | | MoltenVK currently has an issue translating these to MSL: https://github.com/KhronosGroup/SPIRV-Cross/issues/558 Bug: skia: Change-Id: Id210780672f8ec3920f8087bd60a9108e8fb0256 Reviewed-on: https://skia-review.googlesource.com/124525 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
* Move TestForPreservingPMConversions memset to FP fileGravatar Brian Osman2018-04-30
| | | | | | | | | | | Fixes CheckGeneratedFiles error introduced by: https://skia-review.googlesource.com/c/skia/+/124350 Change-Id: I2e1314c6fa9e6a938a0c26ae49aa5b9121a7229f Reviewed-on: https://skia-review.googlesource.com/124640 Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Remove GrPrimitiveType::kTriangleFanGravatar Brian Salomon2018-04-30
| | | | | | | Change-Id: Ia121198ebcdc34e32a3ff99b0821047256df282d Reviewed-on: https://skia-review.googlesource.com/124503 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* memset arrays in TestForPreservingPMConversions in case of read pixels failureGravatar Brian Salomon2018-04-30
| | | | | | | | Bug: chromium:837649 Change-Id: Iced3cef5af8745964323ef3fa8cc5ac9d184c3b4 Reviewed-on: https://skia-review.googlesource.com/124350 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Rewrite SkVertices specified with triangle fans as indexed trianglesGravatar Brian Salomon2018-04-28
| | | | | | | Change-Id: Ifaacc426bc657b324f6a885a8ef70b347b048226 Reviewed-on: https://skia-review.googlesource.com/124349 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Chris Dalton <csmartdalton@google.com>
* ccpr: Remove canMakeClipProcessorGravatar Chris Dalton2018-04-27
| | | | | | | | | | | | Now that conics are supported we can make a ccpr clip FP out of any path. No need to ask. And the 'fDrawCachablePaths' check was redundant since clip paths are always volatile anyway (for now). Bug: skia: Change-Id: I670474a3b91f1c252ed323eb627bbb109788e6b8 Reviewed-on: https://skia-review.googlesource.com/124362 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Add InternalSurfaceFlag so we know if RenderTargetProxys and RenderTargets ↵Gravatar Greg Daniel2018-04-26
| | | | | | | | | | use GL FBO 0. Bug: skia:7748 Change-Id: I2fda3cde12ccdef19fe06ff287a8024b58d28ef0 Reviewed-on: https://skia-review.googlesource.com/124048 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Don't use triangle fans in default path rendererGravatar Brian Salomon2018-04-26
| | | | | | | Change-Id: Ie5dc65adfb843ba22690fe624c8bcb882a5fe43f Reviewed-on: https://skia-review.googlesource.com/123744 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Revert "Reland "Revert "Add arcs as a specialized geometry to GrShape."""Gravatar Brian Salomon2018-04-26
| | | | | | | | | | This reverts commit 580aee2fa4a57bf8208498fbc23acea04e16e092. Bug: skia:7794 Change-Id: I9c2b923859c826dff58c22c529dc4e2ab4d0f186 Reviewed-on: https://skia-review.googlesource.com/124042 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* ccpr: Don't use varying matricesGravatar Chris Dalton2018-04-26
| | | | | | | | Bug: skia:7869 Change-Id: Ie6071fd49d0eb32b2f5dfdf6413f99a9a8d41637 Reviewed-on: https://skia-review.googlesource.com/123908 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Add more granularity inside of SkCanvas::Flush traces.Gravatar Xiao Yu2018-04-26
| | | | | | | | | | We currently just get a big nondescript block when trying to understand what's taking rendering time. This will help us get an idea of the general categories of time consuming things when we toggle skia traces on. Bug: skia: Change-Id: Ia231cfc0e6e984172ad04547e95e269e8cc2d12a Reviewed-on: https://skia-review.googlesource.com/123820 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Fix GrAAConvexTessellator trying to fan a 0 point ringGravatar Adrienne Walker2018-04-25
| | | | | | | | | | | | This prevents accessing off an empty array. Bug: chromium:830038 Change-Id: I5ad019d56659c667564efc498dcef7fb112da4af Reviewed-on: https://skia-review.googlesource.com/123800 Commit-Queue: Adrienne Walker <enne@chromium.org> Commit-Queue: Mike Klein <mtklein@google.com> Auto-Submit: Adrienne Walker <enne@chromium.org> Reviewed-by: Mike Klein <mtklein@google.com>
* Reland "Revert "Add arcs as a specialized geometry to GrShape.""Gravatar Brian Salomon2018-04-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 8a98bc96748d1bdaf9c2d8cfa0b672e3a035973d. Reason for revert: <INSERT REASONING HERE> Original change's description: > Revert "Revert "Add arcs as a specialized geometry to GrShape."" > > This reverts commit af88ec37124846a0168a4ab061bf10cc6030c2d6. > > Bug: skia:7794 > Change-Id: I2d0e1d7b4e025481241d823b09f5de5d0f1a13eb > Reviewed-on: https://skia-review.googlesource.com/123627 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,robertphillips@google.com Change-Id: Ib09a533600028b76a69b455c952f3dd12b39bdba No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7794 Reviewed-on: https://skia-review.googlesource.com/123780 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Remove the MSAA path rendererGravatar Chris Dalton2018-04-25
| | | | | | | | Bug: skia: Change-Id: Ib18bede613c8d27fd6326f655dc2d638e35870ff Reviewed-on: https://skia-review.googlesource.com/123726 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Add GrCap check for whether we can do a copy or not, and implement in Vk backendGravatar Greg Daniel2018-04-25
| | | | | | | | | | | | | | Today, we only know if we fail a copy during the flush so we have no way to cleanly handle a failed copy. This will allow us to know if we'll fail a copy during recording and allow us to do some appropriate fallback and/or dropping of the draw. Bug: skia: Change-Id: I38f209dbd4ebb4e762210b4609147d4b0a1b01b1 Reviewed-on: https://skia-review.googlesource.com/123560 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Add CheckGeneratedFiles recipe check for gpu workaroundsGravatar Adrienne Walker2018-04-25
| | | | | | | | | | | | Followup to https://skia-review.googlesource.com/122800 Bug: chromium: 829614 Change-Id: Idde753e0f8943290208625ba5b6332a5fdc07184 Reviewed-on: https://skia-review.googlesource.com/123536 Commit-Queue: Adrienne Walker <enne@chromium.org> Commit-Queue: Eric Boren <borenet@google.com> Auto-Submit: Adrienne Walker <enne@chromium.org> Reviewed-by: Eric Boren <borenet@google.com>
* Revert "Revert "Add arcs as a specialized geometry to GrShape.""Gravatar Brian Salomon2018-04-25
| | | | | | | | | | This reverts commit af88ec37124846a0168a4ab061bf10cc6030c2d6. Bug: skia:7794 Change-Id: I2d0e1d7b4e025481241d823b09f5de5d0f1a13eb Reviewed-on: https://skia-review.googlesource.com/123627 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Fix GrRRectBlurEffect.fpGravatar Robert Phillips2018-04-25
| | | | | | | Change-Id: I40192fd1bcc0af7f06edddfd2e961b69b14546f5 Reviewed-on: https://skia-review.googlesource.com/123630 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Refactor GaussianBlurGravatar Robert Phillips2018-04-25
| | | | | | | | | | | | | One of the bounding boxes in this method goes haywire in DDL mode. Hopefully, this refactoring will make it easier to determine which one it is. Note that in this CL I tried to not change the existing behavior at all. Bug: skia:7765 Change-Id: Ie71b4c338fd7ecf4f4b8b4cb5609ef3e686eaef5 Reviewed-on: https://skia-review.googlesource.com/122956 Reviewed-by: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Minor shadow fixes.Gravatar Jim Van Verth2018-04-24
| | | | | | | | | | | | | | | Fix inset value for analytic shadows to get full inset (and hence proper falloff). Fix compute_radial_values in tessellator to return only positive values and produce cleaner arcs. Adjust shadow params in Android sample to match Android. Fix corner calculation for analytic shadow. Bug: skia:7486 Change-Id: Ib393b5d577f5a5eb89d3388aa4726ea4dae37055 Reviewed-on: https://skia-review.googlesource.com/123220 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* Compile with latest clang 7.Gravatar Ben Wagner2018-04-24
| | | | | | | | | | | | | Changes to warnings in clang introduced by https://reviews.llvm.org/D43322 and https://reviews.llvm.org/D44883 cause warning as error failures when building Skia. In particular this addresses return-std-move-in-c++11 and self-assign-overloaded. Change-Id: I680318098d8af1b64fba464585c7cdfcfcf39d66 Reviewed-on: https://skia-review.googlesource.com/123582 Reviewed-by: Greg Daniel <egdaniel@google.com> Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Update flag checks when validating surface being assigned to proxy.Gravatar Greg Daniel2018-04-24
| | | | | | | | Bug: skia:7748 Change-Id: Id87c0b1be2efbdefd96740e9591fd102e09b4d95 Reviewed-on: https://skia-review.googlesource.com/123423 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* ccpr: Cull extremely thin trianglesGravatar Chris Dalton2018-04-24
| | | | | | | | | | | | | When triangles get too thin it's possible for FP round-off error to actually give us the wrong winding direction, causing rendering artifacts. This change also allows us to unblacklist ANGLE. Bug: skia:7805 Bug: skia:7820 Change-Id: Ibaa0f033eba625d720e3a594c4515d8264cc413d Reviewed-on: https://skia-review.googlesource.com/123262 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Revert "Add arcs as a specialized geometry to GrShape."Gravatar Mike Klein2018-04-24
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 255bcf57ffd9db368cd66ca9697549efd799153e. Reason for revert: layout and scuba image diffs Original change's description: > Add arcs as a specialized geometry to GrShape. > > BUG: skia:7794 > > Change-Id: I484693711f48e55631732a0f4ee97e2848dec89d > Reviewed-on: https://skia-review.googlesource.com/122900 > Commit-Queue: Brian Salomon <bsalomon@google.com> > Reviewed-by: Robert Phillips <robertphillips@google.com> TBR=bsalomon@google.com,robertphillips@google.com Change-Id: I9293b8fbb535d940bca5fc30a95908416b9eb7a7 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/123362 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* Revert "ccpr: Don't preempt the convex path renderer"Gravatar Chris Dalton2018-04-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 1804b3528c53f52664d9d344950f38e62bf7a71f. Reason for revert: Didn't help Original change's description: > ccpr: Don't preempt the convex path renderer > > It seems to perform better on RRects from web pages. > > Bug: skia:7825 > Change-Id: Ibecf33849c6d14e7486d9de740b1cc42f274080f > Reviewed-on: https://skia-review.googlesource.com/122626 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Chris Dalton <csmartdalton@google.com> TBR=brianosman@google.com,csmartdalton@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: skia:7825 Change-Id: I06ca833c09f43f4e01989699c88610ae2ef72516 Reviewed-on: https://skia-review.googlesource.com/123381 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Add arcs as a specialized geometry to GrShape.Gravatar Brian Salomon2018-04-23
| | | | | | | | | BUG: skia:7794 Change-Id: I484693711f48e55631732a0f4ee97e2848dec89d Reviewed-on: https://skia-review.googlesource.com/122900 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Revert "Remove ambient clamp hack for analytic shadows."Gravatar Jim Van Verth2018-04-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit d75b34394b5c53b0a5e8144dd28f956fbc8b90b2. Reason for revert: Breaking GMs Original change's description: > Remove ambient clamp hack for analytic shadows. > > The hack was added to make analytic ambient shadows match the geometric > ones exactly. Removing it does produce a slight difference, but it's > only visible at full black values (and then, only slightly) and this > makes room to pass a blend parameter for falloff. > > Also fixes an issue with filling out arcs in the shadow tesselator. > > Bug: skia:7486 > Change-Id: If78d0104df7e18f4320c1658af75576f6a4a8c73 > Reviewed-on: https://skia-review.googlesource.com/122580 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Jim Van Verth <jvanverth@google.com> TBR=jvanverth@google.com,bsalomon@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: skia:7486 Change-Id: If0a20a358759c08a3a475d60be54a3d62ff7b6ad Reviewed-on: https://skia-review.googlesource.com/123120 Reviewed-by: Jim Van Verth <jvanverth@google.com>
* ccpr: Don't call calcCubicInverseTransposePowerBasisMatrixGravatar Chris Dalton2018-04-23
| | | | | | | | | | | We only need a few values from this Matrix, so it doesn't make sense to spend time solving the entire thing. Bug: skia: Change-Id: Id56d6f593a9a5afe1455bf2c93f6a51b1b9f1642 Reviewed-on: https://skia-review.googlesource.com/122130 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Fixes in ReadPixels2 and yuv_texture gm to fix Vulkan validation issues.Gravatar Greg Daniel2018-04-23
| | | | | | | | Bug: skia: Change-Id: Idfccdec9106bdc79a690da0e173a232a0cbe51a9 Reviewed-on: https://skia-review.googlesource.com/122955 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Reland "Prevent masked solid-color draws from being turned into clears"Gravatar Robert Phillips2018-04-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit f92bb3785fa8015cde9f379be52dedfce5abc290. Reason for revert: The new unit test has been suppressed on ANGLE Original change's description: > Revert "Prevent masked solid-color draws from being turned into clears" > > This reverts commit e9f2bbe082e9e1eb9d76e3043adedc9443427d8d. > > Reason for revert: ANGLE > > Original change's description: > > Prevent masked solid-color draws from being turned into clears > > > > GrRenderTargetContext::drawRect was eliding a BlurMask filtered circle. > > > > Bug: skia:7765 > > Change-Id: Id98c059f7d786ee5c9bca839c8e099997ff2aedb > > Reviewed-on: https://skia-review.googlesource.com/122793 > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > TBR=bsalomon@google.com,robertphillips@google.com > > Change-Id: I1b7752eab0fcf55ab6248eed587fd85d438efd78 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia:7765 > Reviewed-on: https://skia-review.googlesource.com/122960 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> TBR=bsalomon@google.com,robertphillips@google.com Change-Id: If432c24548ef0f6df4fd6a06aa3b1fb38ba793b8 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7765 Reviewed-on: https://skia-review.googlesource.com/123000 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* (Mostly) respect FilterQuality in draw[stretchy]Gravatar Leon Scroggins III2018-04-23
| | | | | | | | | | | | | | | | | | | | | | | Bug: b/77917978 For drawImageLattice drawBitmapLattice drawImageNine drawBitmapNine , respect the SkFilterQuality on the SkPaint. Previously the GPU used the lowest quality to avoid a bleeding effect, leading to ugly nine- patches on Android. For all backends, cap the filter quality at kLow_SkFilterQuality. Update SkCanvas' documentation to specify this. Change-Id: Id28c7753834975f039170f14bc51be4f2bd44d41 Reviewed-on: https://skia-review.googlesource.com/121891 Reviewed-by: Cary Clark <caryclark@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com> Auto-Submit: Leon Scroggins <scroggo@google.com>
* Revert "Prevent masked solid-color draws from being turned into clears"Gravatar Robert Phillips2018-04-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit e9f2bbe082e9e1eb9d76e3043adedc9443427d8d. Reason for revert: ANGLE Original change's description: > Prevent masked solid-color draws from being turned into clears > > GrRenderTargetContext::drawRect was eliding a BlurMask filtered circle. > > Bug: skia:7765 > Change-Id: Id98c059f7d786ee5c9bca839c8e099997ff2aedb > Reviewed-on: https://skia-review.googlesource.com/122793 > Reviewed-by: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,robertphillips@google.com Change-Id: I1b7752eab0fcf55ab6248eed587fd85d438efd78 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7765 Reviewed-on: https://skia-review.googlesource.com/122960 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Prevent masked solid-color draws from being turned into clearsGravatar Robert Phillips2018-04-23
| | | | | | | | | GrRenderTargetContext::drawRect was eliding a BlurMask filtered circle. Bug: skia:7765 Change-Id: Id98c059f7d786ee5c9bca839c8e099997ff2aedb Reviewed-on: https://skia-review.googlesource.com/122793 Reviewed-by: Brian Salomon <bsalomon@google.com>
* Fix starting location in GrRTC::drawOval when converting to GrShapeGravatar Brian Salomon2018-04-20
| | | | | | | | Change-Id: I3b86d15add9d463e64c97f53bdb5042f1e2a2f27 Reviewed-on: https://skia-review.googlesource.com/122880 Auto-Submit: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Analytic dashing of circles with single on/off intervals and butt caps.Gravatar Brian Salomon2018-04-20
| | | | | | | | Change-Id: If19ac52cb78af57572a102cec0084f5b6c037680 Reviewed-on: https://skia-review.googlesource.com/121882 Auto-Submit: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Reland "Add stub gpu workaround generators"Gravatar Adrienne Walker2018-04-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a reland of 94d25b970b97c68ddd0b4ceb71f2233aac05e6b5 Original change's description: > Add stub gpu workaround generators > > Like https://chromium-review.googlesource.com/c/chromium/src/+/1005362, > this patch adds a way for Chrome and Skia to share a set of driver > workaround names so that they can be turned on by Chrome (or Skia) as > needed. > > To avoid weird cross-repository dependencies, the generator script is > duplicated in Skia. > > This patch just adds a few dummy workaround names to make sure the build > process is working. The followup to this is to add workaround init > to GrContext/GrContextOptions and to start implementing individual > workarounds. > > Implementing these workarounds is to support Chrome's "out of process > raster" which will use Ganesh without a command buffer, and so will not > have the workarounds that the command buffer provides. > > Bug: chromium:829614 > Change-Id: I40745a777a95805995991fedb81657ae418b52d9 > Reviewed-on: https://skia-review.googlesource.com/120608 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Adrienne Walker <enne@chromium.org> Bug: chromium:829614 Change-Id: Idb3309ffa894f7585ee493388b56565e9d4a3101 Reviewed-on: https://skia-review.googlesource.com/122800 Auto-Submit: Adrienne Walker <enne@chromium.org> Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Add ability to dump opList info at flush-timeGravatar Robert Phillips2018-04-20
| | | | | | | | | When debugging DDL it is useful to just see which ops are being drawn instead of the entire reordering history. Change-Id: I89708fecbd53c097b00e65b0da426bfb8046b0ee Reviewed-on: https://skia-review.googlesource.com/122780 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Add discard check when deciding if we should execute op list or not.Gravatar Greg Daniel2018-04-20
| | | | | | | | Bug: skia:7828 Change-Id: I339ba64b6312cd9444cd4faffd426d91852774e9 Reviewed-on: https://skia-review.googlesource.com/122784 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Remove another writePixels instanceGravatar Robert Phillips2018-04-20
| | | | | | | | | This converts the GrSWMaskHelper to being DDL compatible Change-Id: Ic0c7f95a7ed6d2936118b4127c2cfce94a2ec0da Reviewed-on: https://skia-review.googlesource.com/122788 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* ccpr: Don't solve for cubic roots that are out of rangeGravatar Chris Dalton2018-04-20
| | | | | | | | | | | | | Most real-world cubics don't have both KLM roots inside T=0..1, and a large amount don't have any. This CL gives a nice speedup by not wasting time finding padding around KLM roots that we aren't going to chop at anyway. Bug: skia: Change-Id: Icb7217142e29fc3f8e8ff657e9dc739caf6d6714 Reviewed-on: https://skia-review.googlesource.com/122129 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* ccpr: Fix flatness and triangle-ness detection for conicsGravatar Chris Dalton2018-04-20
| | | | | | | | | | | We should detect these cases by examining the curve at max height; not midtangent. Bug: skia:7821 Change-Id: I3d9e3a10798f0d825916840cb99d054b2a6284c3 Reviewed-on: https://skia-review.googlesource.com/122620 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* ccpr: Don't preempt the convex path rendererGravatar Chris Dalton2018-04-19
| | | | | | | | | | It seems to perform better on RRects from web pages. Bug: skia:7825 Change-Id: Ibecf33849c6d14e7486d9de740b1cc42f274080f Reviewed-on: https://skia-review.googlesource.com/122626 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Remove ambient clamp hack for analytic shadows.Gravatar Jim Van Verth2018-04-19
| | | | | | | | | | | | | | | The hack was added to make analytic ambient shadows match the geometric ones exactly. Removing it does produce a slight difference, but it's only visible at full black values (and then, only slightly) and this makes room to pass a blend parameter for falloff. Also fixes an issue with filling out arcs in the shadow tesselator. Bug: skia:7486 Change-Id: If78d0104df7e18f4320c1658af75576f6a4a8c73 Reviewed-on: https://skia-review.googlesource.com/122580 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* ccpr: Clean up GrCCGeometryGravatar Chris Dalton2018-04-19
| | | | | | | | | | | Gets rid of the ugly template functions, rearranges a few static methods, and adds a benchmark. Bug: skia: Change-Id: I442f3a581ba7faf7601ae5be0c7e07327df09496 Reviewed-on: https://skia-review.googlesource.com/122128 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Fix double counting of coverage in analytic round capped stroked circles.Gravatar Brian Salomon2018-04-19
| | | | | | | Change-Id: I28d39f8620d786180b0bf0204b18ca4d1fec597b Reviewed-on: https://skia-review.googlesource.com/122086 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* When creating testing backendTexture take colorspace into account.Gravatar Greg Daniel2018-04-19
| | | | | | | | | Bug: skia: Change-Id: Ifa8dbad3eca81790648476f9a6d3fa5a088fede9 Reviewed-on: https://skia-review.googlesource.com/122341 Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>