aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/RecordDrawTest.cpp
Commit message (Collapse)AuthorAge
...
* SkRecord: Strip out cull-skipping and y-only drawPosTextH skipping.Gravatar mtklein2014-08-08
| | | | | | | | | | | | These optimizations are outclassed by a general bounding-box hierarchy, and are just going to make plugging that into SkRecordDraw more complicated. BUG=skia: R=robertphillips@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/452983002
* Tick off some TODOs:Gravatar Mike Klein2014-06-24
| | | | | | | | | | | | | | | | | | - support fRecord in copy constructor - support SkDrawPictureCallback Moved SkDrawPictureCallback to its own header so SkRecordDraw can include it without pulling in all of SkPicture. Adding an SkAutoSaveRestore to SkRecordDraw was the easiest way to match the balance guarantees of the callback, and probably not a bad idea in general. Updated its tests. BUG=skia: R=robertphillips@google.com Review URL: https://codereview.chromium.org/349973008
* Remove SkRecorder's kWriteOnly mode.Gravatar commit-bot@chromium.org2014-05-29
| | | | | | | | | | | | | | | | | | | I'm soon going to have SkRecorder start calling getTotalMatrix(), which would be broken in write-only mode. That change is big and nebulous, but it's clear kWriteOnly needs to go, so we might as well kill it now. My notes in bench_playback about kWriteOnly mode being important were probably overly cautious. I now think this is a fair enough comparison even re-recording into a read-write canvas. BUG=skia:2378 R=fmalita@chromium.org, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/290653004 git-svn-id: http://skia.googlecode.com/svn/trunk@14963 2bbb7eff-a529-9590-31e7-b0007b416f81
* Don't clobber initial transform with SetMatrix.Gravatar commit-bot@chromium.org2014-05-19
| | | | | | | | | | | BUG=skia:2378 R=reed@google.com, mtklein@google.com, robertphillips@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/290883004 git-svn-id: http://skia.googlecode.com/svn/trunk@14778 2bbb7eff-a529-9590-31e7-b0007b416f81
* Backfill unit tests for SkRecordGravatar commit-bot@chromium.org2014-04-30
| | | | | | | | | | | BUG=skia:2378 R=fmalita@chromium.org, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/251133008 git-svn-id: http://skia.googlecode.com/svn/trunk@14455 2bbb7eff-a529-9590-31e7-b0007b416f81
* Don't bother doing the empty clip check in SkRecordDraw.Gravatar commit-bot@chromium.org2014-04-29
| | | | | | | | | | | | | | | | | | | | | | | | | On Mike's suggestion, I tested out not doing any empty-clip check at all in SkRecordDraw, given that mostly we'll do that again anyway inside SkCanvas. Most SKPs are identical to the status quo, whether bot or silk, played back in tiles or full. Average playback performance, both arithmetic and geometric mean, is also unchanged. A handful of SKPs do draw faster or slower reliably, particularly when tiled. E.g. a cnn tile draws about 40% faster, a cuteoverload tile about 20% slower. Their profiles look pretty much the same before and after, so I can't really explain the changes. I'd say, given that performance is mostly identical and very identical in bulk, we might as well remove this code. It's nice to keep SkRecordDraw as dumb as possible. BUG=skia:2378 R=reed@google.com, fmalita@chromium.org, mtklein@google.com, borenet@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/258183002 git-svn-id: http://skia.googlecode.com/svn/trunk@14433 2bbb7eff-a529-9590-31e7-b0007b416f81
* Start using type traits in src/record instead of macros.Gravatar commit-bot@chromium.org2014-04-28
| | | | | | | | | | | | | Simplified skip logic by always running clip commands. No performance difference on bot or silk SKPs. BUG=skia:2378 R=bungeman@google.com, fmalita@chromium.org, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/258693006 git-svn-id: http://skia.googlecode.com/svn/trunk@14410 2bbb7eff-a529-9590-31e7-b0007b416f81
* anticipate more optimizations by renaming some files and methodsGravatar commit-bot@chromium.org2014-04-21
| | | | | | | | | | | | | also, call the new SkRecordOptimize in bench_playback BUG=skia:2378 R=fmalita@chromium.org, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/243243003 git-svn-id: http://skia.googlecode.com/svn/trunk@14277 2bbb7eff-a529-9590-31e7-b0007b416f81
* Mark our territory with (C).Gravatar commit-bot@chromium.org2014-04-11
| | | | | | | | | | | BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/235253002 git-svn-id: http://skia.googlecode.com/svn/trunk@14158 2bbb7eff-a529-9590-31e7-b0007b416f81
* SkRecordDraw: don't bother clipping an empty clip down furtherGravatar commit-bot@chromium.org2014-04-10
| | | | | | | | | | | BUG=skia:2378 R=fmalita@chromium.org, mtklein@google.com, fmalita@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/231933003 git-svn-id: http://skia.googlecode.com/svn/trunk@14126 2bbb7eff-a529-9590-31e7-b0007b416f81
* SkRecordDraw: skip draw ops when the clip is emptyGravatar commit-bot@chromium.org2014-04-09
- Adds tests for SkRecordDraw's two main features: cull- and clip- based skipping. - Adds full SkCanvas semantic mode to SkRecorder, so it can be used as a target for SkRecordDraw. BUG=skia:2378 R=fmalita@chromium.org, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/231653002 git-svn-id: http://skia.googlecode.com/svn/trunk@14124 2bbb7eff-a529-9590-31e7-b0007b416f81