aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu
Commit message (Collapse)AuthorAge
* Add check before freeing op in GrTextureOpListGravatar Robert Phillips2018-07-12
| | | | | | | | | This now matches the behavior of the GrRenderTargetOpList and is probably behind all the TSAN complaints. Change-Id: I9a1cc65a893c20e9927d21814227673167f2f675 Reviewed-on: https://skia-review.googlesource.com/141047 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Generate GrVkInterface when we make the GrVkGpu.Gravatar Greg Daniel2018-07-12
| | | | | | | | | | | | | | Also add a GetProc function to the GrVkBackendContext which will be used to create the GrVkInterface. This change (and updating clients to use it), will allow us to move GrVkInterface out of public which is needed to fix vulkan header issues. Bug: skia: Change-Id: Id8067943ae27cec8cad29fd31b05f0b8387412d4 Reviewed-on: https://skia-review.googlesource.com/140783 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Remove SkDrawFilter.Gravatar Ben Wagner2018-07-12
| | | | | | | | | Change-Id: I0204a9522e828c87bb7c6c20ae34ce51161442af Reviewed-on: https://skia-review.googlesource.com/137895 Reviewed-by: Herb Derby <herb@google.com> Reviewed-by: Ben Wagner <bungeman@google.com> Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Reland "Make GPU cache invalidation SkMessageBus messages go to one GrContext."Gravatar Brian Salomon2018-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | This is a reland of f4c5bb9aba485aa47c27b15905d81992b7cf4707 Original change's description: > Make GPU cache invalidation SkMessageBus messages go to one GrContext. > > Makes it so the template param to SkMessageBus must implement: > bool shouldSend(uint32_t inboxID) const > > Updates all GPU backend message types to only go to the GrContext that > is adding a cache entry. > > Bug: skia: > Change-Id: I3e8a4eb90654b7b8ac57cac9fb508c0ef1d51058 > Reviewed-on: https://skia-review.googlesource.com/140220 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Reviewed-by: Jim Van Verth <jvanverth@google.com> Bug: skia: Change-Id: I8402bfe3ed0170c99936d47050458817030b473b Reviewed-on: https://skia-review.googlesource.com/140801 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Revert "Make GPU cache invalidation SkMessageBus messages go to one GrContext."Gravatar Brian Salomon2018-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit f4c5bb9aba485aa47c27b15905d81992b7cf4707. Reason for revert: Accidentally submitted without CQ Original change's description: > Make GPU cache invalidation SkMessageBus messages go to one GrContext. > > Makes it so the template param to SkMessageBus must implement: > bool shouldSend(uint32_t inboxID) const > > Updates all GPU backend message types to only go to the GrContext that > is adding a cache entry. > > Bug: skia: > Change-Id: I3e8a4eb90654b7b8ac57cac9fb508c0ef1d51058 > Reviewed-on: https://skia-review.googlesource.com/140220 > Reviewed-by: Robert Phillips <robertphillips@google.com> > Reviewed-by: Jim Van Verth <jvanverth@google.com> TBR=jvanverth@google.com,bsalomon@google.com,robertphillips@google.com Change-Id: Iadb667d8027341703d254325320ddaa528fb33a1 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/140800 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Make GPU cache invalidation SkMessageBus messages go to one GrContext.Gravatar Brian Salomon2018-07-11
| | | | | | | | | | | | | | Makes it so the template param to SkMessageBus must implement: bool shouldSend(uint32_t inboxID) const Updates all GPU backend message types to only go to the GrContext that is adding a cache entry. Bug: skia: Change-Id: I3e8a4eb90654b7b8ac57cac9fb508c0ef1d51058 Reviewed-on: https://skia-review.googlesource.com/140220 Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Jim Van Verth <jvanverth@google.com>
* fix for persistent shader cacheGravatar Ethan Nicholas2018-07-11
| | | | | | | | Bug: skia: Change-Id: I43b4dc58ab4dde3fa8140de0d73134c38f7d79db Reviewed-on: https://skia-review.googlesource.com/140566 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* Reland "Reland "Move Vulkan DebugCallback code into tools.""Gravatar Greg Daniel2018-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 3148f802af419297c466e6bf5efc003b6c498f0a. Reason for revert: hopefully fuchsia is fixed Original change's description: > Revert "Reland "Move Vulkan DebugCallback code into tools."" > > This reverts commit be0ab883e796b190cd20a4b1cfaedea932f9e0bf. > > Reason for revert: fuchsia change reverted > > Original change's description: > > Reland "Move Vulkan DebugCallback code into tools." > > > > This reverts commit 05d3fe3f100b794abe3f99a770734057960d7da5. > > > > Reason for revert: relanding after fuchsia fixes are in > > > > Original change's description: > > > Revert "Move Vulkan DebugCallback code into tools." > > > > > > This reverts commit d4b2adeaa929edd1664754ac6621ec524992ef03. > > > > > > Reason for revert: Need to revert earlier changes cause of fucshia > > > > > > Original change's description: > > > > Move Vulkan DebugCallback code into tools. > > > > > > > > Bug: skia: > > > > Change-Id: Ib356200e86e54f9ff0ba16396874e6fd10cf0465 > > > > Reviewed-on: https://skia-review.googlesource.com/137424 > > > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > > > > > TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com > > > > > > # Not skipping CQ checks because original CL landed > 1 day ago. > > > > > > Bug: skia: > > > Change-Id: I38d4e71dc29c6503f92712be54e22c58956498c5 > > > Reviewed-on: https://skia-review.googlesource.com/137902 > > > Reviewed-by: Greg Daniel <egdaniel@google.com> > > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > > > TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com > > > > # Not skipping CQ checks because original CL landed > 1 day ago. > > > > Bug: skia: > > Change-Id: Idb88f21018b9c0e23b62f0a5b12f0fab60373921 > > Reviewed-on: https://skia-review.googlesource.com/138300 > > Reviewed-by: Greg Daniel <egdaniel@google.com> > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com > > Change-Id: I40d5ba1067248066403f843c0739b885a2bfc834 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia: > Reviewed-on: https://skia-review.googlesource.com/138421 > Reviewed-by: Greg Daniel <egdaniel@google.com> > Commit-Queue: Greg Daniel <egdaniel@google.com> TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: skia: Change-Id: I5d24bb2df3bd9ecf6bb3870886114ef98478dc7a Reviewed-on: https://skia-review.googlesource.com/139001 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* implemented uploading intial texture data for metal gpu backendGravatar Timothy Liang2018-07-11
| | | | | | | | Bug: skia: Change-Id: I76c820beb9b29b230a2f7d82fe8b6b141eee43d7 Reviewed-on: https://skia-review.googlesource.com/139163 Commit-Queue: Timothy Liang <timliang@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* refactored where texture descriptors are made for metal gpu backendGravatar Timothy Liang2018-07-11
| | | | | | | | Bug: skia: Change-Id: Ic90660b5ad5c1e795cd768bb7471e9ac80a59f47 Reviewed-on: https://skia-review.googlesource.com/138999 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Timothy Liang <timliang@google.com>
* Remove clamping of kPlus with F16 configsGravatar Brian Osman2018-07-11
| | | | | | | | | | | | | | | | | The most common use-case for F16 is to draw things that are explicitly outside of [0,1]. We can't prevent out-of-range values in general, users could just draw out-of-range content in src mode. We've decided that it's best to avoid surprising behavior, and trust the user in these situations. This effectively reverts https://skia-review.googlesource.com/c/skia/+/48183 Bug: skia: Change-Id: I71c2dd925c567e2862d96ab70c752f19245a69c4 Reviewed-on: https://skia-review.googlesource.com/140500 Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Remove old lazy image decoding heuristic logicGravatar Brian Osman2018-07-11
| | | | | | | | | | | This led to removing a lot of transfer function behavior code. There is more that could be done, and we need to add in decoding to dst color space, but this CL is almost entirely mechanical. Change-Id: I91b2169f95aadcfaacdd2b9821bb1a01ce53f9a6 Reviewed-on: https://skia-review.googlesource.com/140349 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Reland "Reland "Make GrVkBackendContext no longer derive from SkRefCnt.""Gravatar Greg Daniel2018-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 007267bdb54d56ec978c97c6a6944afc2b6ff40b. Reason for revert: Hopefully fuchsia is fixed this time Original change's description: > Revert "Reland "Make GrVkBackendContext no longer derive from SkRefCnt."" > > This reverts commit 0db3a8846a4d05d55c36b7fa95fa6fbc1a6639cd. > > Reason for revert: fuchsia change reverted > > Original change's description: > > Reland "Make GrVkBackendContext no longer derive from SkRefCnt." > > > > This reverts commit 059a9ab4bcd07a4bfdbfef333c27ef3d277e0e46. > > > > Reason for revert: Fix landed in Fuchsia > > > > Original change's description: > > > Revert "Make GrVkBackendContext no longer derive from SkRefCnt." > > > > > > This reverts commit 93ae2337732bf206e6ef4faecc6b30c3881e8359. > > > > > > Reason for revert: <INSERT REASONING HERE> > > > > > > Original change's description: > > > > Make GrVkBackendContext no longer derive from SkRefCnt. > > > > > > > > Also moves the helper Create functions to VkTestUtils since no clients > > > > are using them anymore. > > > > > > > > Bug: skia: > > > > Change-Id: I7e8e4912e7ef6fb00a7e2a00407aed5e83211799 > > > > Reviewed-on: https://skia-review.googlesource.com/135323 > > > > Reviewed-by: Jim Van Verth <jvanverth@google.com> > > > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > > > > > TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com > > > > > > # Not skipping CQ checks because original CL landed > 1 day ago. > > > > > > Bug: skia: > > > Change-Id: If7201917631dc22753ea3fa6e9d2984463e38e4c > > > Reviewed-on: https://skia-review.googlesource.com/137903 > > > Reviewed-by: Greg Daniel <egdaniel@google.com> > > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > > > TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com > > > > # Not skipping CQ checks because original CL landed > 1 day ago. > > > > Bug: skia: > > Change-Id: Ia4b7c0bb2c7b5dba809d85c69f0b41b473140526 > > Reviewed-on: https://skia-review.googlesource.com/138181 > > Reviewed-by: Greg Daniel <egdaniel@google.com> > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com > > Change-Id: I3f7bc4a5e4e09512fe165303685c123ec3527e58 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia: > Reviewed-on: https://skia-review.googlesource.com/138422 > Reviewed-by: Greg Daniel <egdaniel@google.com> > Commit-Queue: Greg Daniel <egdaniel@google.com> TBR=egdaniel@google.com,jvanverth@google.com,bsalomon@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: skia: Change-Id: I5705f1ae306707fe28559797e1bb8c2d57e12204 Reviewed-on: https://skia-review.googlesource.com/139000 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* added skeletal animation support to GPU backendGravatar Ruiqi Mao2018-07-11
| | | | | | | | | | Pulled from reverted CL: https://skia-review.googlesource.com/c/skia/+/139282 Bug: skia: Change-Id: Iad8e834aa5bbd085b2dee679cb343c5736c57907 Reviewed-on: https://skia-review.googlesource.com/140383 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Ruiqi Mao <ruiqimao@google.com>
* Revert "added skeletal animation support to GPU backend"Gravatar Joe Gregorio2018-07-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit d275ef501c8e6ea6444912e22c29e2d13a3dfb53. Reason for revert: Failing to compile on debian9. Original change's description: > added skeletal animation support to GPU backend > > Pulled from reverted CL: https://skia-review.googlesource.com/c/skia/+/138596 > > Bug: skia: > Change-Id: Ie07f1c76bae65c219ebe93d071bb19f1a30100c2 > Reviewed-on: https://skia-review.googlesource.com/139282 > Reviewed-by: Brian Osman <brianosman@google.com> > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Ruiqi Mao <ruiqimao@google.com> TBR=robertphillips@google.com,brianosman@google.com,ruiqimao@google.com Change-Id: Ibc0da6ce16f078ff74a2c1bcab30750baff460f7 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/140381 Reviewed-by: Joe Gregorio <jcgregorio@google.com> Commit-Queue: Joe Gregorio <jcgregorio@google.com>
* Revert "Remove interpolants are inaccurate workaround for Adreno 3xx."Gravatar Brian Salomon2018-07-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit a7a278205bb040061cb4ba46839efe18635c7edc. Reason for revert: Chrome change had to be reverted because of new failures on Nexus 9 and 6P. Original change's description: > Remove interpolants are inaccurate workaround for Adreno 3xx. > > The chrome screenshot unit test that led to adding this workaround has > been adjusted to avoid testing AA edges of rendered rectangles. We're > accepting the inaccuracy in favor of increased performance. > > Chrome change: https://chromium-review.googlesource.com/c/chromium/src/+/1129041 > > Bug: chromium:847984 > Change-Id: I9b714ade2a67e956ebb2773ebe3b8632dc3a50c6 > Reviewed-on: https://skia-review.googlesource.com/140180 > Commit-Queue: Brian Salomon <bsalomon@google.com> > Commit-Queue: Brian Osman <brianosman@google.com> > Auto-Submit: Brian Salomon <bsalomon@google.com> > Reviewed-by: Brian Osman <brianosman@google.com> TBR=bsalomon@google.com,brianosman@google.com Change-Id: Ic6b0e5a343556e59d144852f9fa5b561302f9781 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:847984 Reviewed-on: https://skia-review.googlesource.com/140380 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* added skeletal animation support to GPU backendGravatar Ruiqi Mao2018-07-10
| | | | | | | | | | | Pulled from reverted CL: https://skia-review.googlesource.com/c/skia/+/138596 Bug: skia: Change-Id: Ie07f1c76bae65c219ebe93d071bb19f1a30100c2 Reviewed-on: https://skia-review.googlesource.com/139282 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Ruiqi Mao <ruiqimao@google.com>
* Revert "switched from NUM_SHADER_BINARY_FORMATS to NUM_PROGRAM_BINARY_FORMATS"Gravatar Stan Iliev2018-07-10
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 8fe31406e98062af447ff1e0511ab9bbdeed7638. Reason for revert: ToT master Android is broken starting with ab/4882993, which is the first build with this change (previous build ab/4882954 works fine). The device booted and worked initially, but after the first reboot all drawing is mangled or missing.It seems there is a problem with loading cached shaders. Original change's description: > switched from NUM_SHADER_BINARY_FORMATS to NUM_PROGRAM_BINARY_FORMATS > > Bug: b/110175245 > Change-Id: I6b843bc1e3c36bc32531705fc661788d4eef6d35 > Reviewed-on: https://skia-review.googlesource.com/140003 > Commit-Queue: Ethan Nicholas <ethannicholas@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> TBR=bsalomon@google.com,ethannicholas@google.com Change-Id: I35d388b3da1e3f421005d7b02ba1e0f0ede0ac84 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: b/110175245 Reviewed-on: https://skia-review.googlesource.com/140280 Reviewed-by: Stan Iliev <stani@google.com> Commit-Queue: Stan Iliev <stani@google.com>
* Expand testing of SkMatrix::decomposeScaleGravatar Robert Phillips2018-07-10
| | | | | | | | Bug: skia:7211 Change-Id: If03ad1d364b33e174d91010ca250cd6c2d2f67c2 Reviewed-on: https://skia-review.googlesource.com/140185 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Deinline some GrPathRenderer method and one GrDrawingMananger method.Gravatar Brian Salomon2018-07-10
| | | | | | | | | | | | | | Removes circular dependencies from coming change. Some IWYU fallout from removing #includes from GrPathRenderer.h and GrDrawingManager.h Bug: skia: Change-Id: Ice377538e6d64b6a74a59e6140e1de9a58ab99bf Reviewed-on: https://skia-review.googlesource.com/140181 Commit-Queue: Brian Salomon <bsalomon@google.com> Auto-Submit: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Remove interpolants are inaccurate workaround for Adreno 3xx.Gravatar Brian Salomon2018-07-10
| | | | | | | | | | | | | | | | The chrome screenshot unit test that led to adding this workaround has been adjusted to avoid testing AA edges of rendered rectangles. We're accepting the inaccuracy in favor of increased performance. Chrome change: https://chromium-review.googlesource.com/c/chromium/src/+/1129041 Bug: chromium:847984 Change-Id: I9b714ade2a67e956ebb2773ebe3b8632dc3a50c6 Reviewed-on: https://skia-review.googlesource.com/140180 Commit-Queue: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com> Auto-Submit: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* switched from NUM_SHADER_BINARY_FORMATS to NUM_PROGRAM_BINARY_FORMATSGravatar Ethan Nicholas2018-07-09
| | | | | | | | Bug: b/110175245 Change-Id: I6b843bc1e3c36bc32531705fc661788d4eef6d35 Reviewed-on: https://skia-review.googlesource.com/140003 Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* added caching of SkVerticesGravatar Ruiqi Mao2018-07-09
| | | | | | | | | | | | | | | SkVertices can now be "volatile", meaning they should not be cached. SkVertices is volatile by default if the argument is not given. Pulled from reverted CL: https://skia-review.googlesource.com/c/skia/+/138596 Docs-Preview: https://skia.org/?cl=139545 Bug: skia: Change-Id: I92cf832efe1c0aaa8f432eedde2678582dd2454e Reviewed-on: https://skia-review.googlesource.com/139545 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Ruiqi Mao <ruiqimao@google.com>
* Revert "Add genIDs from all contributing elements to GrReducedClip's mask key."Gravatar Brian Salomon2018-07-09
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 1354048c8fa885b83e414532c011d710590d6b46. Reason for revert: tsan/valgrind failures Original change's description: > Add genIDs from all contributing elements to GrReducedClip's mask key. > > Change-Id: I3fed124ba3fefd1ef82acdb4ace9531d0c89ad8b > Reviewed-on: https://skia-review.googlesource.com/138586 > Commit-Queue: Brian Salomon <bsalomon@google.com> > Reviewed-by: Robert Phillips <robertphillips@google.com> TBR=bsalomon@google.com,robertphillips@google.com,csmartdalton@google.com Change-Id: Ia5bc098309cd02baf46f03d8ff17fabbd383481e No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/139920 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Add genIDs from all contributing elements to GrReducedClip's mask key.Gravatar Brian Salomon2018-07-09
| | | | | | | Change-Id: I3fed124ba3fefd1ef82acdb4ace9531d0c89ad8b Reviewed-on: https://skia-review.googlesource.com/138586 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Add color type to the image filter DAG's OutputPropertiesGravatar Brian Osman2018-07-06
| | | | | | | | | | | | Don't try to guess the pixel config to use for intermediates. Instead, just make the intermediates in the same color type (and space) as the final destination. This removes some no-longer-correct logic that was using sRGB configs, resulting in linear blending and precision loss. Change-Id: I627c47193a9f2889c3dc121170ff3e7d5d315fa0 Reviewed-on: https://skia-review.googlesource.com/139547 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Use TextureProxy size directly in GrYUVToRGBEffect FragmentProcessorGravatar Weiliang Chen2018-07-03
| | | | | | | | | | | Instead of take extra input to indicate size for texture proxies of different planes, directly use texture proxy's size. Bug: skia:7903 Change-Id: I5d6c859510f7390948c6dcfbdd17343faa786aca Reviewed-on: https://skia-review.googlesource.com/130964 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Weiliang Chen <weiliangc@chromium.org>
* Revert "added skeletal animation support to GPU backend"Gravatar Ruiqi Mao2018-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit b6307340e8a6a9d3a7517def7f5eaaadffd07d14. Reason for revert: patch/atlas failing in gold Original change's description: > added skeletal animation support to GPU backend > > added caching of SkVertices > > Docs-Preview: https://skia.org/?cl=138596 > Bug: skia: > Change-Id: Ia750f55f5f6d0de250d9e9c5619f4d1ac856f9f5 > Reviewed-on: https://skia-review.googlesource.com/138596 > Reviewed-by: Brian Osman <brianosman@google.com> > Reviewed-by: Robert Phillips <robertphillips@google.com> > Commit-Queue: Ruiqi Mao <ruiqimao@google.com> TBR=robertphillips@google.com,brianosman@google.com,reed@google.com,ruiqimao@google.com Change-Id: Idfaf016a7ff4cdd8af2543d510706f489d04417a No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/139281 Reviewed-by: Ruiqi Mao <ruiqimao@google.com> Commit-Queue: Ruiqi Mao <ruiqimao@google.com>
* Disable NVPR path renderer in DDL modeGravatar Robert Phillips2018-07-03
| | | | | | | | | I have confirmed locally that the NVPR path renderer is not DDL compatible. Change-Id: If2d0050079b562f22cc77da41f9f879d97ceb333 Reviewed-on: https://skia-review.googlesource.com/139264 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Reland "Remove setting/use of GrPixelConfig in GrBackendTex/RT ctors."Gravatar Greg Daniel2018-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 34aa059c1502d67c9a5f4db449667a8709b69fb9. Reason for revert: <INSERT REASONING HERE> Original change's description: > Revert "Remove setting/use of GrPixelConfig in GrBackendTex/RT ctors." > > This reverts commit ff2181e62e79ffd2ce628fc8c05b5457d4f54163. > > Reason for revert: suspect it's behind Chrome roll failure > > Original change's description: > > Remove setting/use of GrPixelConfig in GrBackendTex/RT ctors. > > > > Bug: skia: > > Change-Id: I1466668e3502cd1e6e1f6aed4105e0f626d293dd > > Reviewed-on: https://skia-review.googlesource.com/138987 > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > Reviewed-by: Robert Phillips <robertphillips@google.com> > > TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com > > Change-Id: I4cba44858aafffbadc45e18349b93c741d7cfc66 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia: > Reviewed-on: https://skia-review.googlesource.com/139220 > Reviewed-by: Ethan Nicholas <ethannicholas@google.com> > Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Bug: skia: Change-Id: Ib1fd10c126862824f3e31c420c697ac749c637f5 Reviewed-on: https://skia-review.googlesource.com/139221 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Fix allocation size of vk transfer buffer during copy.Gravatar Greg Daniel2018-07-03
| | | | | | | | Bug: skia: Change-Id: Id89964d5afd29de0ee7c4c6dd9b024891ffbfe82 Reviewed-on: https://skia-review.googlesource.com/139162 Reviewed-by: Timothy Liang <timliang@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* Revert "Remove setting/use of GrPixelConfig in GrBackendTex/RT ctors."Gravatar Ethan Nicholas2018-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit ff2181e62e79ffd2ce628fc8c05b5457d4f54163. Reason for revert: suspect it's behind Chrome roll failure Original change's description: > Remove setting/use of GrPixelConfig in GrBackendTex/RT ctors. > > Bug: skia: > Change-Id: I1466668e3502cd1e6e1f6aed4105e0f626d293dd > Reviewed-on: https://skia-review.googlesource.com/138987 > Commit-Queue: Greg Daniel <egdaniel@google.com> > Reviewed-by: Robert Phillips <robertphillips@google.com> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com Change-Id: I4cba44858aafffbadc45e18349b93c741d7cfc66 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/139220 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* added skeletal animation support to GPU backendGravatar Ruiqi Mao2018-07-03
| | | | | | | | | | | | added caching of SkVertices Docs-Preview: https://skia.org/?cl=138596 Bug: skia: Change-Id: Ia750f55f5f6d0de250d9e9c5619f4d1ac856f9f5 Reviewed-on: https://skia-review.googlesource.com/138596 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Ruiqi Mao <ruiqimao@google.com>
* Replace isGammaCorrect with isLinearlyBlendedGravatar Brian Osman2018-07-03
| | | | | | | | | | | | | | | | | | | | We were using isGammaCorrect (presence of a color space) to trigger rendering effects that should only apply when doing linear blending. Rename and redefine that function to fix many of those issues. In a few places, we really do care about the color space. The big win here is text rendering, which is now the same on legacy gl and glsrgb configs. Also left some comments about our desire to do something smarter for text in the future. Bug: skia: Change-Id: I94106e95f5f81aaa0a28dbaccd65f5d94cf0de67 Reviewed-on: https://skia-review.googlesource.com/139109 Commit-Queue: Brian Osman <brianosman@google.com> Auto-Submit: Brian Osman <brianosman@google.com> Reviewed-by: Ben Wagner <bungeman@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Fix empty stroked oval handling in GrRenderTargetContext::drawOvalGravatar Robert Phillips2018-07-03
| | | | | | | | | | The fix in https://skia-review.googlesource.com/c/skia/+/138932 (Don't reject stroked empty rrects in GPU backend) revealed a similar bug in oval drawing. Bug: skia:8115 Change-Id: I2f864daf2ccabdcdbb49b242cc5ce3682fe7b12a Reviewed-on: https://skia-review.googlesource.com/139120 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Remove setting/use of GrPixelConfig in GrBackendTex/RT ctors.Gravatar Greg Daniel2018-07-03
| | | | | | | | Bug: skia: Change-Id: I1466668e3502cd1e6e1f6aed4105e0f626d293dd Reviewed-on: https://skia-review.googlesource.com/138987 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* implement onreadpixels for metal gpu backendGravatar Timothy Liang2018-07-02
| | | | | | | | | Bug: skia: Change-Id: I1645f7e4e65766558f2b6744ce28d5f98ce852c6 Reviewed-on: https://skia-review.googlesource.com/138982 Commit-Queue: Timothy Liang <timliang@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com> Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
* GrTessellator: handle three consecutive collinear edges.Gravatar Stephen White2018-07-02
| | | | | | | | | | | | | | | In some cases, splitting may produce three consecutive edges which are collinear. The first one was being merged out, causing the third one to be missed. The fix is to switch the arguments to merge_edges_*, ensuring that the second parameter (the destination edge) is never merged out. Bug: 851409 Change-Id: I65be2e8222846c99f7bc8d17ea61ddead617cc31 Reviewed-on: https://skia-review.googlesource.com/138700 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Stephen White <senorblanco@chromium.org>
* implemented wrapped backend texture/rendertarget/textureRT for Metal gpu backendGravatar Timothy Liang2018-07-02
| | | | | | | | | Bug: skia: Change-Id: I5d84f9f4340023301bf119731d0b544649be7ab0 Reviewed-on: https://skia-review.googlesource.com/137892 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Timothy Liang <timliang@google.com>
* Simplify GrGLInterface::abandonGravatar Hal Canary2018-07-02
| | | | | | | | | Change-Id: I07e0d0670dfc47602394daf68c30d561e543d826 Reviewed-on: https://skia-review.googlesource.com/138995 Commit-Queue: Hal Canary <halcanary@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com> Auto-Submit: Hal Canary <halcanary@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Remove sRGB config checks based on color spaceGravatar Brian Osman2018-07-02
| | | | | | | | | | | | | | | | All of the restrictions/assumptions that led to this code are gone, so we can always use appropriate color space. For the YUV provider, if/when we re-introduce 8888 sRGB, the color space will have a linear transfer function, so the color space xform will automatically do what was happening here. That removes the last usage of framebuffer sRGB control, so we can remove all kinds of GrPaint and GrPipeline plumbing for that feature. Change-Id: I24af1d498dbc75210f92f8c61b10aa31eec022f6 Reviewed-on: https://skia-review.googlesource.com/138986 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com>
* Fix race condition in GrGLCapsGravatar Robert Phillips2018-07-02
| | | | | | | | Bug: 854778 Change-Id: I3421360a8549e231f508f28d3945d81f811e66de Reviewed-on: https://skia-review.googlesource.com/138923 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Remove unused generateTextureProxyForParamsGravatar Brian Osman2018-07-02
| | | | | | | Change-Id: Ia599d8db0072b1f3629e05c5bd6bb6e7492cad28 Reviewed-on: https://skia-review.googlesource.com/138937 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Don't reject stroked empty rrects in GPU backendGravatar Robert Phillips2018-07-02
| | | | | | | | Bug: skia:8115 Change-Id: Icaedd332a77c530646e7c2a8687132d729c0ee76 Reviewed-on: https://skia-review.googlesource.com/138932 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Revert "Some scissor state cleanup."Gravatar Brian Salomon2018-07-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit a219419c9d76432dca74494b611ff1f59086d139. Reason for revert: breaking things Original change's description: > Some scissor state cleanup. > > Separate flushing the enablement of scissor from the rect in GrGLGpu. > > Move GrPipeline::ScissorState to a global enum and use more broadly. > Rename to GrScissorTest to avoid name conflict with existing > GrScissorState. > > Change-Id: Ib32160b3300bc12de2d2e1761d152fd1bba8b683 > Reviewed-on: https://skia-review.googlesource.com/137395 > Commit-Queue: Brian Salomon <bsalomon@google.com> > Reviewed-by: Chris Dalton <csmartdalton@google.com> TBR=bsalomon@google.com,csmartdalton@google.com Change-Id: If71a5c5efc86d4239b40675bad2a6cb1f77460f8 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/138900 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Some scissor state cleanup.Gravatar Brian Salomon2018-07-02
| | | | | | | | | | | | | Separate flushing the enablement of scissor from the rect in GrGLGpu. Move GrPipeline::ScissorState to a global enum and use more broadly. Rename to GrScissorTest to avoid name conflict with existing GrScissorState. Change-Id: Ib32160b3300bc12de2d2e1761d152fd1bba8b683 Reviewed-on: https://skia-review.googlesource.com/137395 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Chris Dalton <csmartdalton@google.com>
* Don't use geometry shaders on older Adreno chipsGravatar Chris Dalton2018-06-29
| | | | | | | | | | | These appear to be implemented in software. The CCPR vertex impl is significantly faster. Bug: skia:8104 Change-Id: I711b2f805361303a10a6ffcb9c4d68e1c8fca249 Reviewed-on: https://skia-review.googlesource.com/138407 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Remove half float workaround in GrGLGpu::onReadPixelsGravatar Brian Osman2018-06-29
| | | | | | | | | | | To ensure that SwiftShader keeps working, always read back F16 as F32 on GL. Bug: skia: Change-Id: I0d4184a3e9072a6f4cbc7533ddda658ac76f7f84 Reviewed-on: https://skia-review.googlesource.com/138585 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* ccpr: Recycle cache entries when possible to avoid mallocGravatar Chris Dalton2018-06-29
| | | | | | | | Bug: skia: Change-Id: Id06098f66ad6399c11707f8380597e7eeb392eec Reviewed-on: https://skia-review.googlesource.com/138441 Commit-Queue: Chris Dalton <csmartdalton@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* skeletal animation support added to API and software backendGravatar Ruiqi Mao2018-06-29
| | | | | | | | | | | | SkCanvas::drawVertices now supports overloads that take an array of bone deformation matrices. SkVertices::MakeCopy and SkVertices::Builder now support two additional optional attributes, boneIndices and boneWeights. Bug: skia: Change-Id: I30a3b11691e7cdb13924907cc1401ff86d127aea Reviewed-on: https://skia-review.googlesource.com/137221 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Ruiqi Mao <ruiqimao@google.com>