aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrPathRange.h
Commit message (Collapse)AuthorAge
* Style bikeshed - remove extraneous whitespaceGravatar halcanary2016-03-29
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1842753002 Review URL: https://codereview.chromium.org/1842753002
* Updates nvpr text blobs to not store a direct reference to theGravatar cdalton2015-10-08
| | | | | | | | | | | per-glyph GPU path object, but rather store a key for looking it up in the resource cache. This allows the cache to purge glyphs when needed. Also indirectly fixes a memory leak that was introduced with nvpr text blobs. BUG=skia: Review URL: https://codereview.chromium.org/1374853004
* Make path range loading explicitGravatar cdalton2015-10-05
| | | | | | | | | | 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
* Style Change: NULL->nullptrGravatar halcanary2015-08-27
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316233002 Review URL: https://codereview.chromium.org/1316233002
* remove SkInstCntGravatar mtklein2015-06-26
| | | | | | | | | | | | | | It's been outclassed by Valgrind and leak sanitizer, and it seems to be causing problems for external folks building Skia. I'm not sure why our own builds seem unaffected. Latest thread: https://groups.google.com/forum/#!topic/skia-discuss/oj9FsQwwSF0 BUG=skia: Review URL: https://codereview.chromium.org/1217573002
* Refactor GrGpu path rendering functions to GrPathRenderingGravatar kkinnunen2015-06-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 GrStencilAndCoverPathRendererGravatar kkinnunen2015-05-18
| | | | | | | | | | | | | | | | 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
* Make uncached textures uncached from the get go.Gravatar bsalomon2015-01-14
| | | | | | | | This avoids the problem of a newly created uncached texture causing a purge of cached resources. BUG=chromium:445885 Review URL: https://codereview.chromium.org/846303002
* Add a simpler key type for scratch resource keys.Gravatar bsalomon2014-12-30
| | | | | | BUG=skia:2889 Review URL: https://codereview.chromium.org/815833004
* Add IndexType parameter to GrDrawTarget::drawPathsGravatar cdalton2014-11-25
| | | | | | | | | Allows the caller to decide whether they sent 8, 16, or 32 bit path indices. BUG=skia: Review URL: https://codereview.chromium.org/746253003
* Replace GrResourceCache with GrResourceCache2.Gravatar bsalomon2014-11-14
| | | | | | | | | | BUG=skia:2889 Committed: https://skia.googlesource.com/skia/+/66a450f21a3da174b7eed89a1d5fc8591e8b6ee6 Committed: https://skia.googlesource.com/skia/+/407aa584d183c1bf314f5defd1cf0202e8a96c89 Review URL: https://codereview.chromium.org/716143004
* Revert of Replace GrResourceCache with GrResourceCache2. (patchset #7 ↵Gravatar bsalomon2014-11-14
| | | | | | | | | | | | | | | | | | | | | | | id:120001 of https://codereview.chromium.org/716143004/) Reason for revert: broken again Original issue's description: > Replace GrResourceCache with GrResourceCache2. > > BUG=skia:2889 > > Committed: https://skia.googlesource.com/skia/+/66a450f21a3da174b7eed89a1d5fc8591e8b6ee6 > > Committed: https://skia.googlesource.com/skia/+/407aa584d183c1bf314f5defd1cf0202e8a96c89 TBR=robertphillips@google.com NOTREECHECKS=true NOTRY=true BUG=skia:2889 Review URL: https://codereview.chromium.org/726913002
* Replace GrResourceCache with GrResourceCache2.Gravatar bsalomon2014-11-14
| | | | | | | | BUG=skia:2889 Committed: https://skia.googlesource.com/skia/+/66a450f21a3da174b7eed89a1d5fc8591e8b6ee6 Review URL: https://codereview.chromium.org/716143004
* Revert of Replace GrResourceCache with GrResourceCache2. (patchset #6 ↵Gravatar bsalomon2014-11-13
| | | | | | | | | | | | | | | | | | | | | id:100001 of https://codereview.chromium.org/716143004/) Reason for revert: Breaking stuff Original issue's description: > Replace GrResourceCache with GrResourceCache2. > > BUG=skia:2889 > > Committed: https://skia.googlesource.com/skia/+/66a450f21a3da174b7eed89a1d5fc8591e8b6ee6 TBR=robertphillips@google.com NOTREECHECKS=true NOTRY=true BUG=skia:2889 Review URL: https://codereview.chromium.org/715333003
* Replace GrResourceCache with GrResourceCache2.Gravatar bsalomon2014-11-13
| | | | | | BUG=skia:2889 Review URL: https://codereview.chromium.org/716143004
* Uses a single pre-baked set of paths for drawing nvpr text of a givenGravatar cdalton2014-09-18
| | | | | | | | | | | | | | | | | | | | | | | | | 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
* Make GrGpuResources register with GrResourceCache2 after fully constructed.Gravatar bsalomon2014-08-26
| | | | | | | | | | Committed: https://skia.googlesource.com/skia/+/d68b3e491bb765beb7ca5e4ac8e0c80dedf5a83b R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/504313002
* Revert of Make GrGpuResources register with GrResourceCache2 after fully ↵Gravatar bsalomon2014-08-26
| | | | | | | | | | | | | | | | | | | | | constructed. (patchset #3 of https://codereview.chromium.org/504313002/) Reason for revert: Breaking the bots Original issue's description: > Make GrGpuResources register with GrResourceCache2 after fully constructed. > > Committed: https://skia.googlesource.com/skia/+/d68b3e491bb765beb7ca5e4ac8e0c80dedf5a83b R=robertphillips@google.com TBR=robertphillips@google.com NOTREECHECKS=true NOTRY=true Author: bsalomon@google.com Review URL: https://codereview.chromium.org/488463004
* Make GrGpuResources register with GrResourceCache2 after fully constructed.Gravatar bsalomon2014-08-26
| | | | | | | | R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/504313002
* Rename GrGpuObject to GrGpuResourceGravatar bsalomon2014-07-25
| | | | | | | | R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/418143004
* Add a GrPathRange classGravatar cdalton2014-07-21
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