aboutsummaryrefslogtreecommitdiffhomepage
path: root/gm
Commit message (Collapse)AuthorAge
* rebaseline_server: cache results in long-running ImageDiffDB instanceGravatar epoger2014-07-09
| | | | | | | | | | | | | | Rather than rebuilding the ImageDiffDB from scratch every time we update expected/actual results, keep the same ImageDiffDB instance around and add image pairs to it. This makes updating results within a long-running server.py *much* faster, and tests out an idea I'm ruminating in https://goto.google.com/LongRunningImageDiffDBServer : we could run an ImageDiffDB server that developers could connect to from their locally running rebaseline_server instances, for much faster launch times. BUG=skia:2414 NOTRY=True R=rmistry@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/379563005
* rebaseline_server: allow JSON to control column filteringGravatar epoger2014-07-09
| | | | | | | | | | | | | | | | Makes the rebaseline_server client more generic, allowing the server to tweak display properties by writing directives into the JSON file. Adds two new fields to the rebaseline_server JSON file (and thus increments VALUE__HEADER__SCHEMA_VERSION): 1. KEY__ROOT__EXTRACOLUMNORDER: order in which the client should display columns 2. KEY__EXTRACOLUMNHEADERS__USE_FREEFORM_FILTER: whether a column should be filtered using a freeform text field or checkboxes BUG=skia:2230 NOTRY=True R=rmistry@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/376623002
* Goodbye GrEffectRef.Gravatar bsalomon2014-07-08
| | | | | | | | | | Also, reworked some var names and comments around SkShader::asNewEffect. R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/374923002
* Clean up SkImageFilter constructors.Gravatar senorblanco2014-07-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | Now that all creation of SkImageFilters goes through factory Create() methods, there's no real reason for the convenience constructors. Some SkImageFilter subclasses which actually have zero DAG-able inputs were passing NULL to the superclass constructor. This actually means 1 input, with a NULL value, not zero inputs. This becomes more relevant for the upcoming cache infrastructure, where this indicates that the filter will use its src input, where in fact some of these filters do not (they are image generators only). Limiting SkImageFilter to a single constructor resolves this ambiguity. Along the way, I removed all of the default parameters to the constructors, since the Create methods always call them with the full argument list. BUG=skia: R=reed@google.com Author: senorblanco@chromium.org Review URL: https://codereview.chromium.org/376953003
* YUV to RGB converterGravatar sugoi2014-07-07
| | | | | | | | | | | | | This is a first piece of the GPU YUV decoder, which is the actual effect that performs the conversion. For now, it simply applies the conversion matrix, since it is all I need. I may add modes if different matrices need to be applied or if I add color profile support here. I'll try to keep these cls short and easy to review, but there should be a few of them coming once this one is in. BUG=skia: R=senorblanco@chromium.org, senorblanco@google.com, reed@google.com, bsalomon@google.com Author: sugoi@chromium.org Review URL: https://codereview.chromium.org/378503006
* gpu and cpu flags for gm and bench.Gravatar bsalomon2014-07-07
| | | | | | | | | BUG=skia:2074 R=borenet@google.com, mtklein@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/376643002
* Add always-threaded SkRecord quilt tests.Gravatar mtklein2014-07-07
| | | | | | | | | | | | | | | | | | | | | Now that we're drawing tiles threaded like implside painting, remove the checks that those lock counts are balanced. They're just not right for anyone anymore. SkBitmaps themselves are not threadsafe (even const ones), so shallow copy them on playback of an SkRecord. (The underlying SkPixelRefs are threadsafe.) Simplify quilt drawing by using SkBitmap::extractSubset. No need for locking. Bump up to 256x256 tiles. 16x16 tiles just murders performance (way too much contention). This has the nice side effect of letting us enable a bunch more GMs for quilt mode; they drew wrong with small tiles but exactly right with large. BUG=171776 R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/371023005
* rebaseline_server: handle column filtering more genericallyGravatar epoger2014-07-07
| | | | | | | | | | | This is a step towards making rebaseline_server more flexible, and useful for displaying output of the cluster telemetry server as well as actuals-on-configA-vs-actuals-on-configB. BUG=skia:2230 R=rmistry@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/369133004
* rebaseline_server: if urlSchemaVersion is not specified, assume currentGravatar epoger2014-07-03
| | | | | | | | | | | | | | | Modification to https://codereview.chromium.org/368933002/ ('rebaseline_server: add urlSchemaVersion parameter') Means we don't need https://codereview.chromium.org/367173002/ ('add urlSchemaVersion to rebaseline_server link on buildbot console page') NOTREECHECKS=True NOTRY=True R=borenet@google.com TBR=borenet Author: epoger@google.com Review URL: https://codereview.chromium.org/364253003
* rebaseline_server: add urlSchemaVersion parameterGravatar epoger2014-07-02
| | | | | | | | | | | | In https://codereview.chromium.org/369473005 ('rebaseline_server: handle category filtering more generically'), I am changing the meaning of some URL parameters. If a user pastes an old URL into an updated rebaseline_server instance, they may get unexpected results. Adding a urlSchemaVersion parameter allows us to automatically convert the URL, or at least warn the user. BUG=skia:2230 NOTRY=True R=jcgregorio@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/368933002
* rebaseline_server: use just skpdiff, not Python Image LibraryGravatar epoger2014-07-02
| | | | | | | | | BUG=skia:2414 R=djsollen@google.com, borenet@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/325413003
* Cleanup usage of GetResourcePath() after commit ↵Gravatar tfarina2014-07-01
| | | | | | | | | | | | | | | | | bcbc1788b478b1e54079318ad073e8490aa66fae. There was a clean up opportunity left over after https://skia.googlesource.com/skia/+/bcbc1788b478b1e54079318ad073e8490aa66fae, that could make use of the default parameter of GetResourcePath() function to make some call sites cleaner. We decided to make it in a separate CL to make reviewer's and author's life easier, so we could catch errors and/or mistakes easily. BUG=None TEST=make all && out/Debug/dm && out/Debug/SampleApp R=mtklein@google.com Author: tfarina@chromium.org Review URL: https://codereview.chromium.org/351133003
* stop calling SkCanvas::getDeviceGravatar reed2014-06-30
| | | | | | | | | BUG=skia: R=bsalomon@google.com, robertphillips@google.com, junov@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/355193006
* SaveFlags be-goneGravatar Florin Malita2014-06-30
| | | | | | | | | | Remove the deprecated save(SaveFlags), willSave(SaveFlags) and all traces of kMatrix_SaveFlags/kClip_SaveFlag. BUG=skia:2297 R=mtklein@google.com, reed@google.com, robertphillips@google.com Review URL: https://codereview.chromium.org/340403003
* Support using OpenGL ES context on desktopGravatar kkinnunen2014-06-30
| | | | | | | | | | | | | | Support using OpenGL ES context on desktop for unix and Android platforms. This is mainly useful in development. Add --gpuAPI flag to gm, dm, bench, bench_pictures and render_pictures. The possible parameters for the flag are "gl" and "gles". R=bsalomon@google.com, mtklein@google.com, robertphillips@google.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/319043005
* Drop --clone from commands in skia repo.Gravatar Mike Klein2014-06-27
| | | | | | | | | | | --clone, and SkPicture::clone(), are no longer. CQ_EXTRA_TRYBOTS=tryserver.skia:Housekeeper-PerCommit-Trybot BUG=skia: R=rmistry@google.com Review URL: https://codereview.chromium.org/343813006
* Remove SkBicubicImageFilter, and all related tests.Gravatar senorblanco2014-06-25
| | | | | | | | | | | | | Now that we have SkResizeImageFilter, and the bicubic resizing is part of skia proper, there's no need for a specialized image filter. BUG=skia: R=bsalomon@google.com Author: senorblanco@chromium.org Review URL: https://codereview.chromium.org/357793002
* use platform-independent font for gmGravatar caryclark2014-06-23
| | | | | | | | | | | | | | Create a custom typeface and scaler to render simple paths the same on all platforms. GM tests are modified to explicitly select the custom typeface. R=reed@google.com, mtklein@google.com, bungeman@google.com TBR=reed Author: caryclark@google.com Review URL: https://codereview.chromium.org/348323003
* Revert of Revert of Fix SkPaint::measureText for stroked hairline text ↵Gravatar rmistry2014-06-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/354433002/) Reason for revert: Rebaseline CL is ready to be submitted Original issue's description: > Revert of Fix SkPaint::measureText for stroked hairline text (https://codereview.chromium.org/335603003/) > > Reason for revert: > Caused many shadertext GM failures > > Original issue's description: > > Fix SkPaint::measureText for stroked hairline text > > > > SkPaint::measureText and text drawing used different criteria for > > determining whether text should be drawn as paths or not. > > > > Adds tests glyph_pos_(h/n)_(s/f/b) to test the text rendering and the glyph > > positioning in the rendering. Mainly added in order to define what is the > > expected text rendering when hairline stroke is used with various transform > > options. > > > > The testcase also tries to note or highlight the fact that SkPaint::measureText > > is not expected to produce intuitively matching results when compared to a > > rendering, if the rendering is done so that the device ends up having a device > > transform. > > > > This fixes the glyph_pos_h_s (hairline, stroked) test-case. > > > > Ignore shadertext2_pdf-poppler.png gm on > > Test-Ubuntu13.10-ShuttleA-NoGPU-x86_64-Debug temporarily, as that fails. > > > > Committed: https://skia.googlesource.com/skia/+/196af738027c5e18c3eb792dbcaf90ef27821793 > > TBR=jvanverth@google.com,reed@google.com,kkinnunen@nvidia.com > NOTREECHECKS=true > NOTRY=true > > Committed: https://skia.googlesource.com/skia/+/abc9bb55ddfeb4b1a7acc335a34841fddcd22d27 R=jvanverth@google.com, reed@google.com, kkinnunen@nvidia.com TBR=jvanverth@google.com, kkinnunen@nvidia.com, reed@google.com NOTREECHECKS=true NOTRY=true Author: rmistry@google.com Review URL: https://codereview.chromium.org/349153005
* Revert of Support using OpenGL ES context on desktop ↵Gravatar rmistry2014-06-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/319043005/) Reason for revert: Caused segmentation fault on many builders. Please see reverted CL's msg #21 for details. Original issue's description: > Support using OpenGL ES context on desktop > > Support using OpenGL ES context on desktop for unix and Android platforms. This > is mainly useful in development. > > Add --gpuAPI flag to gm, dm, bench, bench_pictures and render_pictures. The > possible parameters for the flag are "gl" and "gles". > > Committed: https://skia.googlesource.com/skia/+/74fc727dc88ee24d89f88cb1709f963e9073aeb3 R=bsalomon@google.com, mtklein@google.com, robertphillips@google.com, kkinnunen@nvidia.com TBR=bsalomon@google.com, kkinnunen@nvidia.com NOTREECHECKS=true NOTRY=true Author: rmistry@google.com Review URL: https://codereview.chromium.org/351583002
* Revert of Fix SkPaint::measureText for stroked hairline text ↵Gravatar rmistry2014-06-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/335603003/) Reason for revert: Caused many shadertext GM failures Original issue's description: > Fix SkPaint::measureText for stroked hairline text > > SkPaint::measureText and text drawing used different criteria for > determining whether text should be drawn as paths or not. > > Adds tests glyph_pos_(h/n)_(s/f/b) to test the text rendering and the glyph > positioning in the rendering. Mainly added in order to define what is the > expected text rendering when hairline stroke is used with various transform > options. > > The testcase also tries to note or highlight the fact that SkPaint::measureText > is not expected to produce intuitively matching results when compared to a > rendering, if the rendering is done so that the device ends up having a device > transform. > > This fixes the glyph_pos_h_s (hairline, stroked) test-case. > > Ignore shadertext2_pdf-poppler.png gm on > Test-Ubuntu13.10-ShuttleA-NoGPU-x86_64-Debug temporarily, as that fails. > > Committed: https://skia.googlesource.com/skia/+/196af738027c5e18c3eb792dbcaf90ef27821793 R=jvanverth@google.com, reed@google.com, kkinnunen@nvidia.com TBR=jvanverth@google.com, kkinnunen@nvidia.com, reed@google.com NOTREECHECKS=true NOTRY=true Author: rmistry@google.com Review URL: https://codereview.chromium.org/354433002
* Support using OpenGL ES context on desktopGravatar kkinnunen2014-06-22
| | | | | | | | | | | | | | Support using OpenGL ES context on desktop for unix and Android platforms. This is mainly useful in development. Add --gpuAPI flag to gm, dm, bench, bench_pictures and render_pictures. The possible parameters for the flag are "gl" and "gles". R=bsalomon@google.com, mtklein@google.com, robertphillips@google.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/319043005
* Fix SkPaint::measureText for stroked hairline textGravatar kkinnunen2014-06-22
| | | | | | | | | | | | | | | | | | | | | | | | | | SkPaint::measureText and text drawing used different criteria for determining whether text should be drawn as paths or not. Adds tests glyph_pos_(h/n)_(s/f/b) to test the text rendering and the glyph positioning in the rendering. Mainly added in order to define what is the expected text rendering when hairline stroke is used with various transform options. The testcase also tries to note or highlight the fact that SkPaint::measureText is not expected to produce intuitively matching results when compared to a rendering, if the rendering is done so that the device ends up having a device transform. This fixes the glyph_pos_h_s (hairline, stroked) test-case. Ignore shadertext2_pdf-poppler.png gm on Test-Ubuntu13.10-ShuttleA-NoGPU-x86_64-Debug temporarily, as that fails. R=jvanverth@google.com, reed@google.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/335603003
* optimize circularclips to act as a bench, fix null-check bug in etcbenchGravatar reed2014-06-20
| | | | | | | | | BUG=skia: R=krajcevski@google.com, rmistry@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/345183003
* Refactor how we handle resources path in Tests.Gravatar tfarina2014-06-18
| | | | | | | | | | | | | This idea emerged while doing https://codereview.chromium.org/321723002/ (commit 880914c35c8f7fc2e9c57134134c883baf66e538). BUG=None TEST=make tests && out/Debug/tests R=mtklein@google.com Author: tfarina@chromium.org Review URL: https://codereview.chromium.org/346453002
* Add basic stacktrace handler using libunwind.Gravatar mtklein2014-06-18
| | | | | | | | | | | This means we will all have to apt-get install libunwind8-dev on Linux. Mac comes with everything we need already. BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/343583005
* In Android framework, make tools depend on jsoncppGravatar scroggo2014-06-18
| | | | | | | | | | | | | | | | | | Always build the tools with JSON, but either build our own or use the system's. Rename skia_build_json_writer to skia_use_system_jsoncpp, since we now always build with JSON. Remove SK_BUILD_JSON_WRITER, which was only there so we could build without JSON it in the framework. BUG=skia:2448 R=djsollen@google.com, reed@google.com Author: scroggo@google.com Review URL: https://codereview.chromium.org/303913002
* hide SkBitmap::Config entirely (behind a flag)Gravatar reed2014-06-17
| | | | | | | | | | | | | patch from issue 339463002 TBR= I think the NoGPU failure is unrelated, so ignoring NOTRY=True Author: reed@google.com Review URL: https://codereview.chromium.org/340533002
* hide Config in SkImageDecoder -- use SkColorType insteadGravatar reed2014-06-12
| | | | | | | | | | patch from issue 334613003 TBR=scroggo Author: reed@chromium.org Review URL: https://codereview.chromium.org/334793002
* Fix tiled perlin noise.Gravatar senorblanco2014-06-12
| | | | | | | | | | | | | | | | | | | | | | | | | It turns out that the perlin implementation we inherited from WebKit does not actually generate tileable noise (see Chromium bug http://crbug.com/383495). The main problem is that when generating coordinates for gradient interpolation, it was attempting to wrap both x and (x + 1) simultaneously at the tile boundary (that is, either both or neither are wrapped). This obviously won't work, since along the tile seams, (x + 1) should be wrapped, but x should not. The same is true in y. This patch fixes both the CPU and GPU paths, renames some variables to more closely match the spec, and modifies the perlin noise GM to actually test tiling. (Note that the clipping the GM was doing was removed, since it's superfluous: it used to be necessary for image filters, but isn't anymore, and this isn't an image filter GM anyway.) R=sugoi@google.com, sugoi TBR=senorblanco Author: senorblanco@chromium.org Review URL: https://codereview.chromium.org/332523006
* Use vertex attributes for dash effect in gpuGravatar egdaniel2014-06-12
| | | | | | | | | | | | | This will allow us to batch dashed lines together when drawing. Also, this removes the need for a coord transform matrix in the shader, thus we save the cost of uploading a new matrix uniform everytime we do a simple transform to the dashed line we are drawing. BUG=skia: R=bsalomon@google.com Author: egdaniel@google.com Review URL: https://codereview.chromium.org/326103002
* rebaseline_server: delete no-longer-used weightedDiffMeasureGravatar epoger2014-06-11
| | | | | | | | | | | | (replaced by perceptual diff) NOTRY=True R=rmistry@google.com TBR=rmistry Author: epoger@google.com Review URL: https://codereview.chromium.org/334533003
* rebaseline_server: change 2 image expectations within unittestsGravatar epoger2014-06-11
| | | | | | | | | | NOTRY=True R=rmistry@google.com TBR=rmistry Author: epoger@google.com Review URL: https://codereview.chromium.org/329933002
* rebaseline_server: merge identical results (across multiple ↵Gravatar epoger2014-06-11
| | | | | | | | | | | builders/configs) into a single row BUG=skia:2534 R=jcgregorio@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/326013002
* Cleanup: Get rid of make_isize() function from gm.h.Gravatar tfarina2014-06-09
| | | | | | | | | | | | | | | This helper function is not necessary. The same thing can be achieved by using SkISize::Make() provided by SkTSize API. BUG=skia:2645 TEST=make dm && out/Debug/dm R=robertphillips@google.com, reed@google.com Author: tfarina@chromium.org Review URL: https://codereview.chromium.org/326523002
* hide SkBitmap::setConfigGravatar reed2014-06-09
| | | | | | | | | | patch from issue 325733002 TBR=scroggo Author: reed@chromium.org Review URL: https://codereview.chromium.org/322963002
* GM/bench for text draws with various parameters and clip rects.Gravatar bsalomon2014-06-09
| | | | | | | | R=jvanverth@google.com, robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/319053002
* Reland "Clean up Test's resourcePath code."Gravatar tfarina2014-06-09
| | | | | | | | | | | | | This relands commit 91359bed48bc006a4319da86eb26db3b2e6d4afb (Clean up Test's resourcePath code." BUG=None TEST=make dm && out/Debug/dm R=mtklein@google.com Author: tfarina@chromium.org Review URL: https://codereview.chromium.org/321723002
* Fix Assert for gpu ConicalTwoPointGradient edgecase to be correct bounds.Gravatar egdaniel2014-06-09
| | | | | | | | | BUG=skia: R=bsalomon@google.com Author: egdaniel@google.com Review URL: https://codereview.chromium.org/311373003
* remove GM result-grooming tools that use skia-autogenGravatar epoger2014-06-09
| | | | | | | | | BUG=skia:553 R=borenet@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/320443002
* Remove SkPicture::kUsePathBoundsForClip_RecordingFlagGravatar robertphillips2014-06-09
| | | | | | | | | | The real question is whether we ever want to record a picture without using the path bounds for a conservative (but faster) clip answer? R=reed@google.com, mtklein@google.com, djsollen@google.com, scroggo@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/316143003
* Revert of Clean up Test's resourcePath code. ↵Gravatar mtklein2014-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/319473003/) Reason for revert: Some benchmarks are written in a way that makes this change unsafe (e.g. const char* resPath = GetResourcePath().c_str(); in SkipZeroesBench) and Valgrind and ASAN caught that. We can try again after a more careful cleanup of GetResourcePath(). Original issue's description: > Clean up resourcePath code. > > 1) Make the implementation of SetResourcePath/GetResourcePath of GM and SkBenchmark match with the one in Test. > 2) Make gResourcePath a static pointer to const char and move it inside the classes. > > BUG=None > TEST=make tests && out/Debug/tests > make gm && out/Debug/gm > make bench && out/Debug/bench > R=mtklein@google.com > > Committed: https://skia.googlesource.com/skia/+/52e4f413ffe2d281f9e90ff2147db08083ffcba7 R=tfarina@chromium.org TBR=tfarina@chromium.org NOTREECHECKS=true NOTRY=true BUG=None Author: mtklein@google.com Review URL: https://codereview.chromium.org/320733002
* Clean up resourcePath code.Gravatar tfarina2014-06-07
| | | | | | | | | | | | | | | | 1) Make the implementation of SetResourcePath/GetResourcePath of GM and SkBenchmark match with the one in Test. 2) Make gResourcePath a static pointer to const char and move it inside the classes. BUG=None TEST=make tests && out/Debug/tests make gm && out/Debug/gm make bench && out/Debug/bench R=mtklein@google.com Author: tfarina@chromium.org Review URL: https://codereview.chromium.org/319473003
* reland "rebaseline_server: download actual-results.json files from GCS ↵Gravatar epoger2014-06-05
| | | | | | | | | | | | | instead of SVN" relands https://codereview.chromium.org/310093003 with modifications. BUG=skia:2641 R=jcgregorio@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/313343003
* remove SkBitmap::allocConfigPixels and update doxGravatar reed2014-06-05
| | | | | | | | | | I see no callers in android R=scroggo@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/310283004
* Revert "rebaseline_server: download actual-results.json files from GCS ↵Gravatar epoger2014-06-04
| | | | | | | | | | | | | | | | instead of SVN" This reverts commit f4666045f378dee22ce40108e90bf5195634ebfc. BUG=skia:2641 NOTREECHECKS=True NOTRY=True R=jcgregorio@google.com TBR=jcgregorio Author: epoger@google.com Review URL: https://codereview.chromium.org/317783004
* rebaseline_server: download actual-results.json files from GCS instead of SVNGravatar epoger2014-06-04
| | | | | | | | | BUG=skia:553 R=borenet@google.com Author: epoger@google.com Review URL: https://codereview.chromium.org/310093003
* Add non power of two gm for ETC1 bitmapGravatar krajcevski2014-06-04
| | | | | | | | R=robertphillips@google.com Author: krajcevski@google.com Review URL: https://codereview.chromium.org/316813005
* Alter SkCanvas::drawPicture (devirtualize, take const SkPicture, take pointer)Gravatar robertphillips2014-06-04
| | | | | | | | R=reed@google.com, bsalomon@google.com, mtklein@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/313613004
* Initial KTX file decoderGravatar krajcevski2014-06-03
| | | | | | | | R=bsalomon@google.com, robertphillips@google.com, halcanary@google.com, reed@google.com Author: krajcevski@google.com Review URL: https://codereview.chromium.org/302333002