aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/effects
Commit message (Collapse)AuthorAge
* Port morphology to SkOpts.Gravatar mtklein2015-08-04
| | | | | | | | | | | | Nothing too fancy. Direction enums become enum classes so they don't get all confused. An alternative is to create one single Direction enum that both blur and morphology opts use. BUG=skia:4117 Review URL: https://codereview.chromium.org/1267343004
* Port SkBlurImage opts to SkOpts.Gravatar mtklein2015-08-04
| | | | | | | | | | | | +268 -535 lines I also rearranged the code a little bit to encapsulate itself better, mostly replacing static helper functions with lambdas. This also let me merge the SSE2 and SSE4.1 code paths. BUG=skia:4117 Review URL: https://codereview.chromium.org/1264103004
* Added registerChild; transforms, textures, glKey automatically handled.Gravatar wangyix2015-08-04
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1266633003
* Some cleanup in GrTextureProvider and GrResourceProvider.Gravatar bsalomon2015-07-31
| | | | Review URL: https://codereview.chromium.org/1261643004
* Address some SkLightingShader TODOsGravatar robertphillips2015-07-31
| | | | | | | | This CL: switches the light colors to be 3 scalars (SkColor3f) adds some dox Review URL: https://codereview.chromium.org/1265983003
* Minor cleanup of SkLightingShaderGravatar robertphillips2015-07-30
| | | | | | | | Fix: PM component swizzling on Macs Serialization Review URL: https://codereview.chromium.org/1270533003
* Update SkLightingShader to take a localMatrixGravatar robertphillips2015-07-30
| | | | | | W/o this we can't draw lit objects anywhere but the origin. Review URL: https://codereview.chromium.org/1253223003
* Move LightingShader to effectsGravatar robertphillips2015-07-29
| | | | | | | | | | | Additionally this CL: forces the light colors to be opaque forces the light direction to be normalized adds a raster implementation adds a gm Review URL: https://codereview.chromium.org/1245883003
* Fix variable shadowing in SkMorphologyImageFilterGravatar robertphillips2015-07-23
| | | | Review URL: https://codereview.chromium.org/1245883005
* Added GrGLFragmentProcessor::EmitArgs struct for use with emitCode()Gravatar wangyix2015-07-22
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1251173002
* Misc cleanupGravatar robertphillips2015-07-22
| | | | | | | | | | This is split off of https://codereview.chromium.org/1225923010/ (Start tightening correspondence betweeen GrDrawContext and GrRenderTarget). It: fixes some style nits replaces some passing of GrContext with GrTextureProvider & GrDrawContext does a bit of the finer grained creation of GrDrawContexts Review URL: https://codereview.chromium.org/1245183002
* Moved GrGLFragmentProcessor definition to its own fileGravatar wangyix2015-07-22
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1246193002
* Reland of Add fast normalize for SkLightingImageFilter. (patchset #1 id:1 of ↵Gravatar jvanverth2015-07-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1244523002/) Reason for revert: Florin will rebaseline the images. Original issue's description: > Revert of Add fast normalize for SkLightingImageFilter. (patchset #2 id:20001 of https://codereview.chromium.org/1240023002/) > > Reason for revert: > Speculative revert -- DEPS roll block on linux_blink_rel > > https://storage.googleapis.com/chromium-layout-test-archives/linux_blink_rel/71483/layout-test-results/results.html > > Original issue's description: > > Add fast normalize for SkLightingImageFilter. > > > > The normalize routine in SkPoint3 is very robust. However, for simple > > lighting cases we prefer speed over robustness. This fixes a perf > > regression in smoothness.tough_filters_cases. > > > > BUG=chromium:510562 > > > > Committed: https://skia.googlesource.com/skia/+/dfa0ecf169db87f7afddd93bc1c500de481a62c7 > > TBR=reed@google.com,senorblanco@google.com,senorblanco@chromium.org,jvanverth@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=chromium:510562 > > Committed: https://skia.googlesource.com/skia/+/ac66a8122b27c388cc74b3913d9a9be351a44e54 TBR=reed@google.com,senorblanco@google.com,senorblanco@chromium.org,reed@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:510562 Review URL: https://codereview.chromium.org/1241583007
* Revert[2] of guard to remove DrawBitmapRectFlagsGravatar reed2015-07-17
| | | | | | | | | This reverts commit 91110195a2eee170c11885da9d16f94b00a39f87. BUG=skia: TBR= Review URL: https://codereview.chromium.org/1240753003
* Revert of guard to remove DrawBitmapRectFlags (patchset #1 id:1 of ↵Gravatar scroggo2015-07-17
| | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1235393003/) Reason for revert: breaking android framework build Original issue's description: > guard to remove DrawBitmapRectFlags > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/6fb0b6779e40ce05c20cf279f0ecff31fa3cd60d TBR=fmalita@chromium.org,djsollen@google.com,reed@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1230823007
* Revert of Add fast normalize for SkLightingImageFilter. (patchset #2 ↵Gravatar reed2015-07-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | id:20001 of https://codereview.chromium.org/1240023002/) Reason for revert: Speculative revert -- DEPS roll block on linux_blink_rel https://storage.googleapis.com/chromium-layout-test-archives/linux_blink_rel/71483/layout-test-results/results.html Original issue's description: > Add fast normalize for SkLightingImageFilter. > > The normalize routine in SkPoint3 is very robust. However, for simple > lighting cases we prefer speed over robustness. This fixes a perf > regression in smoothness.tough_filters_cases. > > BUG=chromium:510562 > > Committed: https://skia.googlesource.com/skia/+/dfa0ecf169db87f7afddd93bc1c500de481a62c7 TBR=reed@google.com,senorblanco@google.com,senorblanco@chromium.org,jvanverth@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:510562 Review URL: https://codereview.chromium.org/1244523002
* Add fast normalize for SkLightingImageFilter.Gravatar jvanverth2015-07-16
| | | | | | | | | | The normalize routine in SkPoint3 is very robust. However, for simple lighting cases we prefer speed over robustness. This fixes a perf regression in smoothness.tough_filters_cases. BUG=chromium:510562 Review URL: https://codereview.chromium.org/1240023002
* guard to remove DrawBitmapRectFlagsGravatar reed2015-07-16
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1235393003
* Another trivial cleanupGravatar joshualitt2015-07-14
| | | | | | | | | TBR=bsalomon@google.com BUG=skia: Committed: https://skia.googlesource.com/skia/+/52e7657cd850f95e66eb23c6d138ee45149a1039 Review URL: https://codereview.chromium.org/1229303003
* add src-rect-constraint to drawImageRectGravatar reed2015-07-14
| | | | | | | | | | | Follow-on work - unify around SrcRectConstraint (i.e. drawBitmapRect) - remove silly drawBitmapRectToRect alias - clean-up (possibly remove) alias problems around drawBitmapRect + IRect parameter BUG=skia: Review URL: https://codereview.chromium.org/1228083004
* Revert of Another trivial cleanup (patchset #6 id:100001 of ↵Gravatar joshualitt2015-07-13
| | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1229303003/) Reason for revert: breaking things Original issue's description: > Another trivial cleanup > > TBR=bsalomon@google.com > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/52e7657cd850f95e66eb23c6d138ee45149a1039 TBR=robertphillips@google.com,joshualitt@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1233853004
* Add new SkPoint3 classGravatar robertphillips2015-07-13
| | | | | | The existing Light filter and the upcoming Lighting Shader both need a Point3 class Review URL: https://codereview.chromium.org/1229693009
* Another trivial cleanupGravatar joshualitt2015-07-13
| | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1229303003
* More threading of GrProcessorDataManagerGravatar joshualitt2015-07-09
| | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1230813003
* rename GrShaderDataManager -> GrProcessorDataManagerGravatar joshualitt2015-07-09
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1228683002
* fix up test create functionsGravatar joshualitt2015-07-08
| | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1213623022
* Makes GrPipelineInfo a class with query functions used by GrBatch subclasses.Gravatar bsalomon2015-07-08
| | | | | | Committed: https://skia.googlesource.com/skia/+/f5179a4c490bc787190321bd8ffdb0e6a4efa9ac Review URL: https://codereview.chromium.org/1213383005
* Revert of Rework GrPipelineInfo (patchset #7 id:120001 of ↵Gravatar bsalomon2015-07-08
| | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1213383005/) Reason for revert: breaking stuff! Original issue's description: > Makes GrPipelineInfo a class with query functions used by GrBatch subclasses. > > Committed: https://skia.googlesource.com/skia/+/f5179a4c490bc787190321bd8ffdb0e6a4efa9ac TBR=joshualitt@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1213013003
* more threading of GrShaderDataManagerGravatar joshualitt2015-07-08
| | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1215643006
* Thread GrShaderDataManager through Image filtersGravatar joshualitt2015-07-08
| | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1229613002
* More threading of GrShaderDataManagerGravatar joshualitt2015-07-08
| | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1213613016
* Makes GrPipelineInfo a class with query functions used by GrBatch subclasses.Gravatar bsalomon2015-07-08
| | | | Review URL: https://codereview.chromium.org/1213383005
* Initial CL to create dummy GrShaderDataManager and thread it throughGravatar joshualitt2015-07-08
| | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1225673007
* style nit cleanups. e.g. remove 'virtual' on override declarationsGravatar robertphillips2015-07-07
| | | | Review URL: https://codereview.chromium.org/1216433005
* Revert of Revert of Revert of Fix SkTileImageFilter clipping/cropRect ↵Gravatar robertphillips2015-07-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | interaction issue (patchset #1 id:1 of https://codereview.chromium.org/1207353004/) Reason for revert: Still want to disable due to pref regression Original issue's description: > Revert of Revert of Fix SkTileImageFilter clipping/cropRect interaction issue (patchset #1 id:1 of https://codereview.chromium.org/1219193002/) > > Reason for revert: > Blocking the roll > > Original issue's description: > > Revert of Fix SkTileImageFilter clipping/cropRect interaction issue (patchset #2 id:30001 of https://codereview.chromium.org/1210053003/) > > > > Reason for revert: > > Perf regression: https://code.google.com/p/chromium/issues/detail?id=505564 > > > > Original issue's description: > > > Fix SkTileImageFilter clipping/cropRect interaction issue > > > > > > BUG=499499 > > > > > > Committed: https://skia.googlesource.com/skia/+/157bcd0840b578060dbc3365daafffc6837da391 > > > > TBR=reed@google.com,senorblanco@google.com,senorblanco@chromium.org,robertphillips@google.com > > NOPRESUBMIT=true > > NOTREECHECKS=true > > NOTRY=true > > BUG=499499 > > > > Committed: https://skia.googlesource.com/skia/+/ebaf6a69bf604c85185e23aca3fb93308e747ff5 > > TBR=reed@google.com,senorblanco@google.com,senorblanco@chromium.org,robertphillips@google.com,reed@chromium.org,bsalomon@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=499499 > > Committed: https://skia.googlesource.com/skia/+/835510085062f055c04d8ea46d82831cfbe51793 TBR=reed@google.com,senorblanco@google.com,senorblanco@chromium.org,reed@chromium.org,bsalomon@google.com,jvanverth@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=499499 Review URL: https://codereview.chromium.org/1217303004
* Revert of Revert of Fix SkTileImageFilter clipping/cropRect interaction ↵Gravatar jvanverth2015-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | issue (patchset #1 id:1 of https://codereview.chromium.org/1219193002/) Reason for revert: Blocking the roll Original issue's description: > Revert of Fix SkTileImageFilter clipping/cropRect interaction issue (patchset #2 id:30001 of https://codereview.chromium.org/1210053003/) > > Reason for revert: > Perf regression: https://code.google.com/p/chromium/issues/detail?id=505564 > > Original issue's description: > > Fix SkTileImageFilter clipping/cropRect interaction issue > > > > BUG=499499 > > > > Committed: https://skia.googlesource.com/skia/+/157bcd0840b578060dbc3365daafffc6837da391 > > TBR=reed@google.com,senorblanco@google.com,senorblanco@chromium.org,robertphillips@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=499499 > > Committed: https://skia.googlesource.com/skia/+/ebaf6a69bf604c85185e23aca3fb93308e747ff5 TBR=reed@google.com,senorblanco@google.com,senorblanco@chromium.org,robertphillips@google.com,reed@chromium.org,bsalomon@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=499499 Review URL: https://codereview.chromium.org/1207353004
* Revert of Fix SkTileImageFilter clipping/cropRect interaction issue ↵Gravatar bsalomon2015-07-01
| | | | | | | | | | | | | | | | | | | | | | (patchset #2 id:30001 of https://codereview.chromium.org/1210053003/) Reason for revert: Perf regression: https://code.google.com/p/chromium/issues/detail?id=505564 Original issue's description: > Fix SkTileImageFilter clipping/cropRect interaction issue > > BUG=499499 > > Committed: https://skia.googlesource.com/skia/+/157bcd0840b578060dbc3365daafffc6837da391 TBR=reed@google.com,senorblanco@google.com,senorblanco@chromium.org,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=499499 Review URL: https://codereview.chromium.org/1219193002
* 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
* Fix SkTileImageFilter clipping/cropRect interaction issueGravatar robertphillips2015-06-26
| | | | | | BUG=499499 Review URL: https://codereview.chromium.org/1210053003
* Convert SkPMFloat to [0,1] range and prune its API.Gravatar mtklein2015-06-25
| | | | | | | | | | | | | | | | | | | | | | | | Now that Sk4px exists, there's a lot less sense in eeking out every cycle of speed from SkPMFloat: if we need to go _really_ fast, we should use Sk4px. SkPMFloat's going to be used for things that are already slow: large-range intermediates, divides, sqrts, etc. A [0,1] range is easier to work with, and can even be faster if we eliminate enough *255 and *1/255 steps. This is particularly true on ARM, where NEON can do the *255 and /255 steps for us while converting float<->int. We have lots of experimental SkPMFloat <-> SkPMColor APIs that I'm now removing. Of the existing APIs, roundClamp() is the sanest, so I've kept only that, now called round(). The 4-at-a-time APIs never panned out, so they're gone. There will be small diffs on: colormatrix coloremoji colorfilterimagefilter fadefilter imagefilters_xfermodes imagefilterscropexpand imagefiltersgraph tileimagefilter BUG=skia: Review URL: https://codereview.chromium.org/1201343004
* Move GLSL-specific routines/classes to separate glsl directoryGravatar jvanverth2015-06-24
| | | | | | | The purpose is to begin separating our GLSL-specific code from our GL-specific code, so it can be used with the GL45 platform Review URL: https://codereview.chromium.org/1202293002
* Clean up usage of SkSurfacePropsGravatar robertphillips2015-06-22
| | | | | | | | | | | | This CL continues cleaning up Skia's usage of SkSurfaceProps. It: Removes the duplicate SkSurfaceProps object from SkImageFilter::Proxy. Removes a dispreferred ctor from SkCanvas Removes the initForRootLayer entry point from SkDevice (since the root device and the canvas should always have the same pixel geometry now). Review URL: https://codereview.chromium.org/1201983006
* Fix dst bound reported by SkTileImageFilterGravatar robertphillips2015-06-16
| | | | | | | | | | | | | | | | | | | | | | | | In the example from the bug we had the filter DAG: color filter (table) 0: xfermode filter (arith) 0: tile filter [0,80,34,114] -> [0,80,800,480] 0: color filter (table) 0: bitmap src 34x34 -> [0,80,34,114] 1: color filter (table) 0: picture filter [0, 80, 800, 480] computeFastBounds was coming out of the DAG with a bound of [0,80,34,114] which didn't represent the pixels that would be drawn. This CL updates SkTileImageFilter to correctly set the bound for the pixels it will hit. BUG=493783 Committed: https://skia.googlesource.com/skia/+/05be93bbdf09576f7903130e3b106b0a8c7c4b4e Committed: https://skia.googlesource.com/skia/+/0be685755f942baea26c66a87226b569fc17e960 Review URL: https://codereview.chromium.org/1152553006
* skia: Add runtime option to disable picture IO security precautionsGravatar hendrikw2015-06-16
| | | | | | | | Replaced the compile time file IO security setting with a runtime setting. Unfortunately the setting is global. Review URL: https://codereview.chromium.org/1183853003
* Don't leak fragment processor in SkColorFilter::asFragmentProcessors ↵Gravatar bsalomon2015-06-12
| | | | | | | | implementations. TBR=reed@google.com Review URL: https://codereview.chromium.org/1182813002
* Remove overly-promiscuous SkNx syntax sugar.Gravatar mtklein2015-06-10
| | | | | | | | | | | | I haven't figured out a pithy way to have these apply to only classes originating from SkNx, so let's just remove them. There aren't too many use cases, and it's not really any less readable without them. Semantically, this is a no-op. BUG=skia: Review URL: https://codereview.chromium.org/1167153002
* add copyrightGravatar reed2015-06-09
| | | | | | | | BUG=skia: NOTRY=True TBR= Review URL: https://codereview.chromium.org/1170343002
* Revert[2] SkDraw and all Blitters to use pixmap instead of bitmapiGravatar reed2015-06-09
| | | | | | | | This reverts commit b3f0ec9f9967da2f80f0d842cb7fd53617b48de3. BUG=skia: Review URL: https://codereview.chromium.org/1168303006
* remove subclassing from ImageFilter::ProxyGravatar reed2015-06-09
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1172693002
* Revert of change SkDraw and all Blitters to use pixmap instead of bitmap ↵Gravatar reed2015-06-08
| | | | | | | | | | | | | | | | | | | | | | (patchset #6 id:100001 of https://codereview.chromium.org/1148793007/) Reason for revert: speculative revert to try to unblock DEPS roll Original issue's description: > change SkDraw and all Blitters to use pixmap instead of bitmap > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/c31af44336f5eb4a50e83e76e51962d46c3ed458 TBR=scroggo@google.com,jvanverth@google.com,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1164373003