Bug: skia:7713
Change-Id: I15c6a55370848cd211c783c886923f31dec1788c
Reviewed-on: https://skia-review.googlesource.com/114505
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
When both GL_EXT_texture_format_BGRA8888 and GL_APPLE_texture_format_BGRA8888
extensions are present, the presence of GL_APPLE_texture_format_BGRA8888 was
preventing GL_EXT_texture_format_BGRA8888 from allowing BGRA8888 to be used
as a render target. By checking for GL_EXT_texture_format_BGRA8888 first,
this solves the issue.
The issue was encountered trying to run vr_pixeltests on top of SwiftShader
on the bots with a version of SwiftShader exposing both extension strings.
Change-Id: I446ec502a4703d24c24339708dcbbe9c334a7533
Reviewed-on: https://skia-review.googlesource.com/114495
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Alexis Hetu <sugoi@google.com>
All issues have been resolved.
Bug: skia:
Change-Id: Id63d63ad081725885cb0225b410b0d3972abd8f7
Reviewed-on: https://skia-review.googlesource.com/113060
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
This reverts commit 7d2b16ad13.
Reason for revert: Maybe breaking chrome?
Original change's description:
> Improve handling of GrPixelConfig in GrBackendTex/RT ctors
>
> Make sure that no client facing code was relying on what we set as the
> default value for fConfig by making in kUnkown.
>
> Bug: skia:
> Change-Id: Ie52ff08ba8deeacc16fe06eb0dd0c7292b2edf91
> Reviewed-on: https://skia-review.googlesource.com/114261
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>
TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com
Change-Id: I91e190d72407f9c4bee93a031a557f740bb49b66
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/114423
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
This reverts commit b78dd5d01e.
Reason for revert: possibly breaking chrome roll
Original change's description:
> Add back missing unique key checks when creating CachedBitmap/Image Proxies
>
> Its possible that this could fix perf regression in Chrome.
>
> Bug: 811452
> Change-Id: I2d4f7827092b361469586580f0c7c843ab2d5cec
> Reviewed-on: https://skia-review.googlesource.com/114280
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com
Change-Id: I71646befd07bf28442ac3b9225c021cd141bf398
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 811452
Reviewed-on: https://skia-review.googlesource.com/114422
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Adds an attenuation parameter to corners that corrects the over-coverage
from linear interpolation.
Adds a GM for shared corners that ensures we're doing this right.
Bug: skia:
Change-Id: Iff8bd40554f9fda2e7e03faa3c9fbefe65f27568
Reviewed-on: https://skia-review.googlesource.com/114272
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Make sure that no client facing code was relying on what we set as the
default value for fConfig by making in kUnkown.
Bug: skia:
Change-Id: Ie52ff08ba8deeacc16fe06eb0dd0c7292b2edf91
Reviewed-on: https://skia-review.googlesource.com/114261
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Its possible that this could fix perf regression in Chrome.
Bug: 811452
Change-Id: I2d4f7827092b361469586580f0c7c843ab2d5cec
Reviewed-on: https://skia-review.googlesource.com/114280
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
This suppresses the noexcept-type warning, since Skia doesn't have a
stable ABI in any event. GCC now warns on more printf style formats,
so we have to hide our bad test formats a little better. GCC now
also warns on implicit enum to bool conversions, which did catch two
issues.
Change-Id: Ib81769c421757186506873f0fe298ecd0106ae87
Reviewed-on: https://skia-review.googlesource.com/114263
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Bug: chromium:820913
Change-Id: I77f9b40cf6173369a4a1b943d71734c305893e09
Reviewed-on: https://skia-review.googlesource.com/114140
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
We now check GL_NUM_SHADER_BINARY_FORMATS to ensure that it is greater
than zero, and handle errors that occur when we try to install a
cached shader by falling back to using GLSL.
Bug: skia:
Change-Id: I1ac46243e9c561d15e1b4190b68afbf514fc8079
Reviewed-on: https://skia-review.googlesource.com/113820
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Update unit tests to use backend render targets on non-GL contexts
Add named DM configs for rendering to Vulkan backend render targets and textures.
Make src data ptr param to createTestingOnlyBackendTexture be const.
Change-Id: I17f5375ed9bb08422006698956469d3151c4954c
Reviewed-on: https://skia-review.googlesource.com/113276
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Ever since we added drawShadow to the public api, blurs have necessarily
part of the core. This CL just formalizes that.
This should also allow us to have builds that exclude all of /effects (for code size)
and still be valid.
Will follow-up with a change to deprecate SkBlurMaskFilter and SkBlurQuality (both no longer needed).
Bug: skia:
Change-Id: Ifbbd8b47a30a0386d215726b67bcf1e8b84fb8f5
Reviewed-on: https://skia-review.googlesource.com/113713
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Change-Id: I09549cb21e8bdbc2924a54bc2eca3d399e5a7f44
Reviewed-on: https://skia-review.googlesource.com/113429
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Truncating negative values will produce a negative fractional part when
you subtract out the integer value, which causes havoc with rendering
the path and searching for it in the cache. What we want is the floor.
Bug: 819966, 819522
Change-Id: I2feb451e28bfb863111479f70fd99fa1299abac0
Reviewed-on: https://skia-review.googlesource.com/113428
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
The include guards make this not bad, but it seems strange and iwyu
complains about it.
Change-Id: I4e40d290b4c7208dddf82fdd1b107780c239d8fc
Reviewed-on: https://skia-review.googlesource.com/113423
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Compared against images using config gldft.
Everything the same.
Change-Id: I9c9209dfcae4f4d79cbdb8c2acac3b623c87300f
Reviewed-on: https://skia-review.googlesource.com/113401
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Modifies triangle corner shaders to just approximate their coverage with
linear values that ramp to zero at bloat vertices outside the triangle.
For the vertex backend, since corners now have the same fragment shader
as the rest of the triangle, we fold them in with the other steps and
draw triangles in a single pass.
The geometry backend still draws triangles in two passes, as there is
not an apparent performance advantage in combining them.
Updates SampleCCPRGeometry to better visualize this new geometry by
clearing to black and drawing with SkBlendMode::kPlus.
Bug: skia:
Change-Id: Idf8df8ff715dfab7ac91a07b914f65c08e46010b
Reviewed-on: https://skia-review.googlesource.com/113287
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Change-Id: I2408278355cdd5a8a65748b5dd313b9466aee2b1
Reviewed-on: https://skia-review.googlesource.com/113211
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
This will allow a client to make an SkImage that "wraps" a gpu texture,
however the client does need to supply the actual gpu texture at Image
creation time. Instead it is retrieve at flush time via a callback.
Bug: skia:
Change-Id: I6267a55ab7102101a7bd80a6f547b6a870d2df08
Reviewed-on: https://skia-review.googlesource.com/109021
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
This is a point change to see if it causes bad draws using config
gldft. Checked with skdiff on that config.
Change-Id: Ibee4630df21456ba9dccf28480bded82d1d9bf47
Reviewed-on: https://skia-review.googlesource.com/113204
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
We already always create the stencil buffer even for wrapped RTs.
Make VulkanWindowContext use SkSurface::MakeFromBackendRenderTarget.
Change-Id: I5df429d347331801954ec17cb9d75e323a7af345
Reviewed-on: https://skia-review.googlesource.com/113206
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
This also adds GrGpu::create/deleteTestingOnlyBackendRenderTarget. Implemented in GL only for now.
Change-Id: I9e5fdc953c4a249959af89e08332f520cefe9d90
Reviewed-on: https://skia-review.googlesource.com/113305
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Hardens the path parser to handle zero-length fan tessellations. In this
case the vertex pointer returned by the tessellator will be null, so we
need to indicate whether a tessellation exists in a different way.
Bug: skia:7642
Change-Id: If29df9d08565ff613059f2d3b49ab4eb79908495
Reviewed-on: https://skia-review.googlesource.com/113362
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Holding off on removing definition until android cleans
up its code.
Change-Id: I19cce13d6d1f10f172770a926966761686bc7d6a
Reviewed-on: https://skia-review.googlesource.com/113168
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>