| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
| |
The main change is to make GrSamplerParams smaller by making its enums have byte-sized underlying types. The rest is cosmetic.
Change-Id: Ib71ea50612d24619a85e463826c6b8dfb9b445e3
Reviewed-on: https://skia-review.googlesource.com/43200
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
SkFAIL is a legacy macro which is just SK_ABORT. This CL mechanically
changes uses of SkFAIL to SK_ABORT in preparation for its removal. The
related sk_throw macro will be changed independently, due to needing to
actually clean up its users.
Change-Id: Id70b5c111a02d2458dc60c8933f444df27d9cebb
Reviewed-on: https://skia-review.googlesource.com/35284
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
|
|
|
|
|
|
|
|
|
| |
Again, this will be useful when GrSurface does not have a origin field.
Change-Id: I0c4ef5b441eaf38f3489e8631aced11b11fdb6ac
Reviewed-on: https://skia-review.googlesource.com/27540
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
|
|
|
|
|
|
|
|
|
| |
This does push some additional work (& includes) into the .cpp files.
Change-Id: I27c847e371802270d13594dcc22aae44039990bb
Reviewed-on: https://skia-review.googlesource.com/19660
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
|
|
|
|
|
|
|
|
|
|
| |
I believe this addresses the concerns of this particular bug (although more remains to be done)
Bug: skia:5327
Change-Id: Ie82f08f87b3cf3d7986fe4eeb16a5d2553173913
Reviewed-on: https://skia-review.googlesource.com/18599
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
|
|
|
|
|
|
|
|
|
|
| |
Removes drawPathBatch methods from GrDrawTarget and GrDrawContext, and
integrates nvpr batches in with all the other batches.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1966763002
Review-Url: https://codereview.chromium.org/1966763002
|
|
|
|
|
|
|
|
|
| |
A side effect is that arbitrary path effects can no be pushed deeper into the Ganesh flow for paths. They may be applied by path renderers.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1957363002
Committed: https://skia.googlesource.com/skia/+/33595bdf4b64a745f6340338d307e806e96c587f
Review-Url: https://codereview.chromium.org/1957363002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://codereview.chromium.org/1957363002/ )
Reason for revert:
Breaking some bots
Original issue's description:
> Replace GrStrokeInfo with GrStyle.
>
> A side effect is that arbitrary path effects can no be pushed deeper into the Ganesh flow for paths. They may be applied by path renderers.
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1957363002
>
> Committed: https://skia.googlesource.com/skia/+/33595bdf4b64a745f6340338d307e806e96c587f
TBR=egdaniel@google.com,robertphillips@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review-Url: https://codereview.chromium.org/1967513002
|
|
|
|
|
|
|
| |
A side effect is that arbitrary path effects can no be pushed deeper into the Ganesh flow for paths. They may be applied by path renderers.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1957363002
Review-Url: https://codereview.chromium.org/1957363002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
#5 id:80001 of https://codereview.chromium.org/1908433002/ )
Reason for revert:
This causes what looks like significantly wrong results. Here is an example:
https://gold.skia.org/diff?test=stroke-fill&left=cb47dc2cabbad7d146aedaac199ebace&top=2c6e65d597c574e3bb170a19ca9634c6
Original issue's description:
> Batch multiple single NVPR draw paths to instanced draws
>
> Batch multiple single NVPR draw paths to instanced draws.
> A draw path batch can be combined to other batch if the
> batches do not overlap and have same draw characteristics.
>
> Join the batches in linked list and flatten the list to a
> path list during draw time.
>
> Replace GrPathRendering::drawPath with GrPathRendering::drawPaths.
>
> Perf changes ARM, Shield TV device, Tegra X1 GPU:
> desk_chalkboard.skp_1 21.5ms -> 17.8ms 0.83x
> desk_mapsvg.skp_1 7.49ms -> 6.18ms 0.82x
> Others results are more volatile.
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1908433002
>
> Committed: https://skia.googlesource.com/skia/+/3c33c389e9f8d14d86756ea1ddeba2097f31ad22
TBR=joshualitt@chromium.org,bsalomon@google.com,kkinnunen@nvidia.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1919843002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Batch multiple single NVPR draw paths to instanced draws.
A draw path batch can be combined to other batch if the
batches do not overlap and have same draw characteristics.
Join the batches in linked list and flatten the list to a
path list during draw time.
Replace GrPathRendering::drawPath with GrPathRendering::drawPaths.
Perf changes ARM, Shield TV device, Tegra X1 GPU:
desk_chalkboard.skp_1 21.5ms -> 17.8ms 0.83x
desk_mapsvg.skp_1 7.49ms -> 6.18ms 0.82x
Others results are more volatile.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1908433002
Review URL: https://codereview.chromium.org/1908433002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
of https://codereview.chromium.org/1863013003/ )"
add SK_SUPPORT_NEW_ONCREATESCALERCONTEXT for chrome
this has now landed https://codereview.chromium.org/1878913002/
TBR=
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1880873002
Review URL: https://codereview.chromium.org/1880873002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://codereview.chromium.org/1863013003/ )
Reason for revert:
Seems to have broken the DEPS roll.
Original issue's description:
> Pass effects directly to fontcache
>
> BUG=skia:5176
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1863013003
>
> Committed: https://skia.googlesource.com/skia/+/c79172857c3f69cc46837e1beeae0c1ead377bb2
TBR=djsollen@google.com,bungeman@google.com,mtklein@google.com,fmalita@chromium.org,msarett@google.com,reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:5176
Review URL: https://codereview.chromium.org/1872253004
|
|
|
|
|
|
|
| |
BUG=skia:5176
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1863013003
Review URL: https://codereview.chromium.org/1863013003
|
|
|
|
|
|
|
|
|
| |
The main change here is that we pull primitive type off of the vertices, we set the gpu state on gpu once per pipeline/prim proc draw batch, and we create the ProgramDescriptor only for the Cache/ProgramBuilder.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1806983002
Review URL: https://codereview.chromium.org/1806983002
|
|
|
|
|
|
|
|
|
|
| |
Requires the caller to explicitly preload paths within a range before
calling drawPaths. This allows us to remove the implicit lazy load,
thereby eliminating a redundant check on every redraw of a text blob.
BUG=skia:
Review URL: https://codereview.chromium.org/1382013002
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/1332923003
|
|
|
|
| |
Review URL: https://codereview.chromium.org/1287973003
|
|
|
|
|
|
| |
Remove the NVPR glyph loading functionality. A bit risky feature.
Review URL: https://codereview.chromium.org/1176113008
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GrGpu, GrGLGpu, GrPathRendering, GrGLPathRendering all duplicated
each others' path rendering related member functions. Make
GrPathRending the logical extension of GrGpu by removing the methods
from GrGpu. Similarly to the GL variants.
Changes includes and forward declarations due to removing
GrDrawTarget.h include from GrGpu.h. This was necessary due to
GrDrawTarget.h including GrPathRendering.h, and now GrPathRendering.h
includes GrGpu.h. (Also GrGpu.h does not need GrDrawTarget.h anymore).
Very slight runtime improvement on x86_64:
desk_fontwipe.skp_1 836us -> 841us 1.01x
desk_silkfinance.skp_1 2.01ms -> 2.01ms 1x
desk_forecastio.skp_1 7.03ms -> 7.05ms 1x
desk_weather.skp_1 3.74ms -> 3.74ms 1x
desk_twitter.skp_1 8.02ms -> 8.01ms 1x
desk_mapsvg.skp_1 5.24ms -> 5.23ms 1x
desk_pokemonwiki.skp_1 7.06ms -> 7.03ms 1x
desk_sfgate.skp_1 3.19ms -> 3.17ms 1x
tabl_cuteoverload.skp_1 2.66ms -> 2.64ms 0.99x
...
tabl_transformice.skp_1 3.06ms -> 2.98ms 0.98x
tabl_googlecalendar.skp_1 11.3ms -> 11ms 0.97x
tabl_gamedeksiam.skp_1 12.8ms -> 12.4ms 0.97x
desk_samoasvg.skp_1 10.6ms -> 10.3ms 0.97x
tabl_worldjournal.skp_1 4.44ms -> 4.3ms 0.97x
Review URL: https://codereview.chromium.org/1157683006
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Improve caching of dashed paths in GrStencilAndCoverPathRenderer.
Look up the (NVPR specific) GrGLPath based on GrStrokeInfo and
the original path.
Use unique keys for all GrPaths.
Dash the path with Skia dash stroker and use that path geometry for
NVPR path.
NVPR internal dashing stroke is not used, because the dashing
implementation of NVPR does not match Skia implementation.
Review URL: https://codereview.chromium.org/1116123003
|
|
|
|
|
|
|
|
|
| |
Allows the caller to decide whether they sent 8, 16, or 32 bit path
indices.
BUG=skia:
Review URL: https://codereview.chromium.org/746253003
|
|
|
|
|
|
| |
BUG=skia:
Review URL: https://codereview.chromium.org/687563008
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
typeface. Loads the paths using the driver's glyph loading routines.
Refactors GrPathRange to accept a PathGenerator class that it uses to
lazily initialize its paths. The client code is no longer expected to
initialize the paths in a GrPathRange; instead it must provide a
PathGenerator* instance to createPathRange().
Adds a new createGlyphs() method to GrPathRendering that creates a
range of glyph paths, indexed by glyph id. GrPathRendering implements
createGlyphs() with a PathGenerator that loads glyph paths using the
skia frameworks. GrGLPathRendering uses glMemoryGlyphIndexArrayNV()
instead, when possible, to load the glyph paths.
Removes all GlyphPathRange logic from GrStencilAndCoverTextContext.
It instead uses createGlyphs().
BUG=skia:2939
R=bsalomon@google.com, jvanverth@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/563283004
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now that we have the GrPathRendering class, it doesn't make sense to
have a bunch of shims on on GrGpu. This updates the path rendering
clients to make calls directly on the GrPathRendering object.
BUG=skia:2939
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/578563002
|
|
Separate GL path rendering state from GrGpuGL to GrGLPathRendering. This
makes GrGpuGL code simpler.
The intention is that while GrGpuGL represents the global environment for GL,
the GrGLPathRendering represents the global environment for path rendering
extension.
Add GrPathRendering, a base class for path rendering, and inherit
GrGLPathRendering from that. Move the path rendering virtual functions from
GrGpu to GrPathRendering.
R=bsalomon@google.com, cdalton@nvidia.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/452823002
|