| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
| |
using explicit local coords.
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/438053002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(https://codereview.chromium.org/432143002/)
Reason for revert:
Breaking Chrome.
Original issue's description:
> Add ETC1 format to SkTextureCompressor
>
> Committed: https://skia.googlesource.com/skia/+/5d8b1b44ea7636fc8e98247cb311568f277ce3a5
R=robertphillips@google.com
TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/438443004
|
|
|
|
|
|
|
|
| |
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/441623005
|
|
|
|
|
|
|
|
| |
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/432143002
|
|
|
|
|
|
|
|
| |
R=egdaniel@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/428103003
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GL APIs such as glProgramPathFragmentInputGenNV need the explicit program id in
order to set the program resources. For GrGLProgramDataManager to call the APIs,
the program id needs to be available to the GrGLProgramDataManager.
One GrGLProgramDataManager is used to explicitly manage the resources of one
GrGLProgram. Refactor the classes to reflect this: make GrGLProgram create and
own GrGLProgramDataManager. This way the program id can be made available through
GrGLProgram backpointer.
In order to do this, remove the population of the program link results
information for uniforms in GrGLProgramDataManager during shader generation.
Instead, accumulate the info to the uniform list of GrGLShaderBuilder. After the
generation, compilation and link is successful, this info can be used to
construct both GrGLProgram and GrGLProgramDataManager.
Changes names of functions to create UniformHandles and convert them to list
indices. This tries to highlight that they're different lists, even though at
the moment they match index-wise. E.g the contract is that handles can be
created based on the shader builder state, and the object can later be set with
the handle and the manager that was created with the builder.
This is needed to support NV_path_rendering for GLES.
R=bsalomon@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/426553011
|
|
|
|
|
|
|
|
|
| |
R=bsalomon@google.com
TBR=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/434623010
|
|
|
|
|
|
|
|
|
|
|
| |
This also addresses an inadvertantly introduced distance field bug.
BUG=399125
R=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/438683006
|
|
|
|
|
|
|
|
|
| |
BUG=skia:
R=krajcevski@google.com, bsalomon@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/433603002
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
layer pre-rendering
The CTM is required on the key so we will re-render when necessary.
The SkGpuDevice change ensures big layers in the midst of atlas-able layers don't cause a render target switch.
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/433553002
|
|
|
|
|
|
|
|
|
| |
BUG=skia:
R=bsalomon@chromium.org, bsalomon@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/421823003
|
|
|
|
|
|
|
|
|
| |
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/425153003
|
|
|
|
|
|
|
|
| |
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/427093004
|
|
|
|
|
|
|
|
|
| |
BUG=skia:
R=bsalomon@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/430833002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a unique ID to SkImageFilter, and use it as part
of a persistent cache of image-filtered results. This is used for
caching frame-to-frame coherent filters.
We also keep track of which filter subtrees do not reference the
src input, and use a GenID of zero for the src input in that case.
That way, subtrees which are not dependent on the filter input can be
cached independently of it.
This gives approximately a 4X speedup on
letmespellitoutforyou.com/samples/svg/filter_terrain.svg on Z620
and Nexus10. The cache key consists of the uniqueID of the filter, the
clip bounds, the CTM and the genID of the input bitmap.
Since this does not yet handle the case where the input primitives
(and part of the resulting filter tree) are unchanged, we have
to keep around the external cache for that painting case.
When the work to cache unchanging input primitives is done, the
old cache can be removed, and the new UniqueIDCache will be renamed
to Cache.
R=bsalomon@google.com, mtklein@google.com
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/414483003
|
|
|
|
|
|
|
|
| |
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/430773004
|
|
|
|
|
|
|
|
| |
R=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/432443002
|
|
|
|
|
|
|
|
| |
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/431603002
|
|
|
|
|
|
|
|
|
|
|
|
| |
This also is a step towards unifying GrDistanceFieldTextureEffect and GrDistanceFieldLCDTextureEffect.
Committed: https://skia.googlesource.com/skia/+/137bac067306c5446bc4f9797bedc3bbaf302822
R=robertphillips@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/424103002
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rename GrGLUniformManager to GrGLProgramDataManager in anticipation that the
class would be used to manage shader resources that are not uniforms.
This is needed in order to implement NVPR on GLES.
R=bsalomon@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/365853002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds the glStencilThenCover* nvpr methods to GrGLInterface and starts
using them. When drawing multible paths, this will make it so we only
have to send the index/transform data once. It will also allow the
driver to save time internally.
The glStencilThenCover* methods are a newer addition, so they aren't
available on every driver. In the event that they are not present, we
emulate them using the existing glStencil*/glCover* methods.
BUG=skia:
R=markkilgard@gmail.com, bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/423173004
|
|
|
|
|
|
|
|
| |
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/428963005
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
not reach this code and thus was never used.
The blend opt flag kDisableBlend should now be able to be removed, however it is left in this CL and will removed in its own.
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/427823002
|
|
|
|
|
|
|
|
|
| |
BUG=skia:
R=bsalomon@chromium.org, senorblanco@chromium.org, bsalomon@google.com, junov@chromium.org
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/422123003
|
|
|
|
|
|
|
|
| |
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/422023006
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(https://codereview.chromium.org/424103002/)
Reason for revert:
breaking Chrome canary.
Original issue's description:
> Add effect caching to distance field text.
>
> This also is a step towards unifying GrDistanceFieldTextureEffect and GrDistanceFieldLCDTextureEffect.
>
> Committed: https://skia.googlesource.com/skia/+/137bac067306c5446bc4f9797bedc3bbaf302822
R=robertphillips@google.com, jvanverth@google.com
TBR=jvanverth@google.com, robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
Author: bensong@google.com
Review URL: https://codereview.chromium.org/424173002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(https://codereview.chromium.org/423943003/)
Reason for revert:
Breaking windows 7 compare gm's
Original issue's description:
> Remove gpu support for willUseHWAALines.
>
> By removing willUseHWAALines, we also no long reference the blend opt flag kDisableBlend so it has been removed
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/e6dfba868c19b00562f8c733b9bf37dd4ec9e68c
R=bsalomon@google.com
TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/430493003
|
|
|
|
|
|
|
|
|
|
| |
This also is a step towards unifying GrDistanceFieldTextureEffect and GrDistanceFieldLCDTextureEffect.
R=robertphillips@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/424103002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix debug crash when GrResourceCache is destroyed after GrContext is abandoned while GrTextures are in the exlusive list.
Notify debug GL context that GL resources are expected to remain undeleted when context is destroyed after being abandoned.
Stop leaking program cache entries when context is abandoned.
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/422323002
|
|
|
|
|
|
|
|
|
|
|
| |
By removing willUseHWAALines, we also no long reference the blend opt flag kDisableBlend so it has been removed
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/423943003
|
|
|
|
|
|
|
|
|
|
| |
This is setup for running cluster telemetry tests
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/429593002
|
|
|
|
|
|
|
|
|
|
| |
This class is no longer used in Ganesh (in favor of SkTDynamicHash)
R=jvanverth@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/421253003
|
|
|
|
|
|
|
|
|
|
| |
This CL allows a GrPlot full of atlased layer to be purged from the atlas to make room for new layers.
R=jvanverth@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/411703003
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
So round and bevel hairline rects can generate the vertices and indices the same as miter rects do. The original code behaves the same as bevel rects for round and bevel hairline rects.
This small CL can save (vertices and indices) buffer memory as well as improve performance (draw less triangles).
gm cases show no difference after this CL is applied.
BUG=skia:
R=robertphillips@google.com
Author: yunchao.he@intel.com
Review URL: https://codereview.chromium.org/417113002
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rename GrContext::contextDestroyed to GrContext::abandonContext.
Remove GrContext::resetContext.
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/422903002
|
|
|
|
|
|
|
|
|
| |
BUG=skia:
R=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/421563002
|
|
|
|
|
|
|
|
|
|
|
|
| |
This gets a very welcome ~10% speedup on my Mac.
Committed: https://skia.googlesource.com/skia/+/1d38619389cc1100bd516b9acbf17b7bd42d33ce
R=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/414573002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before this change, GrStencilAndCoverTextContext would send 6-float
affine transforms to drawPaths for every glyph. This updates it to
concat the text scale onto the context matrix, and then only send
2-float translates (or 1-float x-translates when possible).
Also adds a glyph_pos_align test to gm that exercises the newly added
codepaths, and starts ignoring a few gm tests with benign pixel diffs
until we can rebaseline.
BUG=skia:
R=bsalomon@google.com, kkinnunen@nvidia.com, jvanverth@google.com, bungeman@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/406523003
|
|
|
|
|
|
|
|
|
| |
BUG=skia:2779
R=robertphillips@google.com, mtklein@google.com, reed@android.com, bsalomon@google.com
Author: bungeman@google.com
Review URL: https://codereview.chromium.org/419113002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(https://codereview.chromium.org/414573002/)
Reason for revert:
Breaking Ubuntu and Windows bots.
Original issue's description:
> Move vertex buffer setup out of drawPackedGlyph().
>
> This gets a very welcome ~10% speedup on my Mac.
>
> Committed: https://skia.googlesource.com/skia/+/1d38619389cc1100bd516b9acbf17b7bd42d33ce
R=bsalomon@google.com
TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/419943002
|
|
|
|
|
|
|
|
|
|
| |
This gets a very welcome ~10% speedup on my Mac.
R=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/414573002
|
|
|
|
|
|
|
|
| |
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/418143004
|
|
|
|
|
|
|
|
|
|
| |
We want to create a new base class for "meta" gr resources as part of the GrResourceCache rewrite and this is an iterim step towards that goal.s
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/414013005
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For some (as yet unknown reason) the guard in ConicPathBench that disables the path_hairline_big_AA_conic case isn't working. As an alternate fix, this CL makes the Default path renderer confess its lack of support for conics and allows the Software path renderer to handle non-AA cases. This will work but the real fix is to enable conics in the Default path renderer.
Here is the situation we're seeing in the path_hairline_big_AA_conic case:
the path is a hairline drawn with AA
the render target is multisampled (so AA on the draw gets disabled)
StencilAndCover path renderer doesn't handle hairlines
AAHairLine path renderer only handles AA paths (but can handle conics)
AAConvexPath renderer also only handles AA paths
Default path renderer only handles non-AA paths (but doesn't handle conics)
Software path renderer - was disallowed from handling non-AA paths
BUG=skia:2078
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/418073002
|
|
|
|
|
|
|
|
|
|
|
| |
Searching the font cache for existing text strikes was showing up
as a hotspot on Android. This change reduces that cost.
R=bsalomon@google.com, robertphillips@google.com, mtklein@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/390103002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
notifications to GrGpuGL when textures and RTs are… (https://codereview.chromium.org/376703009/)"
This reverts commit 249171e7d29b5559f3eefe9dbd437030bfad3fda.
Uses 32 bit id instead of 64. Renamed instanceID to uniqueID to match existing code.
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/414493002
|
|
|
|
|
|
|
|
|
| |
R=robertphillips@google.com
TBR=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/413523002
|
|
|
|
|
|
|
|
|
|
| |
This is intended to lower the bookkeeping burden for the Layer Caching feature. Cached layers are now automatically purged when a picture is deleted.
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/408923002
|
|
|
|
|
|
|
|
|
| |
BUG=skia:
R=bsalomon@chromium.org, senorblanco@chromium.org, bsalomon@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/379253003
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds a GrPathRange object that represents a range of paths on the gpu.
Updates GrDrawTarget::drawPaths and supporting code to use GrPathRange
instead of an array of GrPath objects.
Change-Id: I67845f3893cd4d955db947d699aa3733cbb081e0
BUG=skia:
R=bsalomon@google.com, jvanverth@google.com, kkinnunen@nvidia.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/400713003
|