aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkColorSpaceXformSteps.cpp
Commit message (Collapse)AuthorAge
* collapse parametric_{r,g,b} into parametric, remove _a and gamma_dstGravatar Mike Klein2018-07-11
| | | | | | | | | | | | | parametric_a and gamma_dst were unused outside of unit tests. In all other cases, we always use parametric_{r,g,b} together and always pass them the same argument. So we can collapse them into a single stage like gamma and to/from_srgb. Change-Id: I08cea896c7744f97b4f4bf9e029f5d643e45e177 Reviewed-on: https://skia-review.googlesource.com/140576 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com>
* might as well use SkRasterPipeline::gamma tooGravatar Mike Klein2018-07-11
| | | | | | | | | | This is a pretty good speedup over parametric_* when we hit it. It's both less math and fewer stages to hop through. Change-Id: I97b6e6b6c290441238f0f61bea47786eacc2a9c7 Reviewed-on: https://skia-review.googlesource.com/140569 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* use from/to_srgbGravatar Mike Klein2018-07-11
| | | | | | | | | Change-Id: I256dd98e1e918943195772954bc114e54b9325cd Reviewed-on: https://skia-review.googlesource.com/140564 Commit-Queue: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com> Auto-Submit: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com>
* update (non-sprite) image shader color managementGravatar Mike Klein2018-07-10
| | | | | | | | | | | | | | | | | Just another little step... diffs down to ~450 from ~500. The A8 handling has changed a little, keeping the paint color in sRGB just to make the append_misc() logic a bit more streamlined. I may want to refactor things a little later so that I can get an easy signal to use to_srgb and from_srgb stages instead of sending them through the generic parametric stages. Change-Id: Iefff3206b06a3aa7d81f85fd169272b6ac9c20e0 Reviewed-on: https://skia-review.googlesource.com/140250 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* SkColorSpaceXformSteps improvements and testsGravatar Brian Osman2018-06-14
| | | | | | | | | | | | Added some helper functions and put the booleans in a nested struct (this is motivated by upcoming changes). Added a unit test of steps against skcms, with round-tripping in both combinations. Change-Id: Iea3d60cd52edb5259b5576b1422ed6f856cde815 Reviewed-on: https://skia-review.googlesource.com/134660 Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Fix matrix multiplication orderGravatar Brian Osman2018-06-06
| | | | | | | | | Change-Id: I23feb52f46bc5d22911347de97d0b61411e8ef9a Reviewed-on: https://skia-review.googlesource.com/132543 Commit-Queue: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org> Auto-Submit: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* whoopsGravatar Mike Klein2018-05-30
| | | | | | | | | Change-Id: Ifffa6b9ef4fdce2779561e5cf8803785636c72de Reviewed-on: https://skia-review.googlesource.com/130900 Commit-Queue: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com> Auto-Submit: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com>
* wouldn't it be nice?Gravatar Mike Klein2018-05-29
| | | | | | | | | | Here's our drawing pipeline if we always blend as encoded. I think it's very intuitive. Change-Id: I0e531c5da1f6279d0da1f19b84d6317d99942da3 Reviewed-on: https://skia-review.googlesource.com/130131 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* skip unpremul...premul with only linear ops betweenGravatar Mike Klein2018-05-24
| | | | | | | | Change-Id: I26ed83bb613a83a0fd73f2f8b868b775be1ce968 Reviewed-on: https://skia-review.googlesource.com/130121 Commit-Queue: Mike Klein <mtklein@chromium.org> Auto-Submit: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com>
* skip transfer functions when not neededGravatar Mike Klein2018-05-24
| | | | | | | | Change-Id: I72e1084e6a14b3c1fa3f0a5c2100f13c6bcb24c7 Reviewed-on: https://skia-review.googlesource.com/130062 Commit-Queue: Mike Klein <mtklein@chromium.org> Auto-Submit: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com>
* spin off unpremul and opaque testsGravatar Mike Klein2018-05-24
| | | | | | | | | | | | | | - opaque and unpremul are never the same... there's no reason to ever premul opaque sources. - under optimization, they won't always be a deterministic tweak the the premul steps (though right now they still are). Change-Id: I5669b3dba83774326c07d5a8f16b1d2ce2b22aae Reviewed-on: https://skia-review.googlesource.com/130061 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com> Auto-Submit: Mike Klein <mtklein@chromium.org>
* skip gamut transform when identityGravatar Mike Klein2018-05-24
| | | | | | | | Change-Id: I3bb3ec19ee856ce4070a58a57b3bb8e8a170a5b9 Reviewed-on: https://skia-review.googlesource.com/130024 Commit-Queue: Mike Klein <mtklein@chromium.org> Auto-Submit: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com>
* SkColorSpaceXformStepsGravatar Mike Klein2018-05-24
Lots TODO. Change-Id: I95edb764b85a5140d432adb506c3b537869e6df4 Reviewed-on: https://skia-review.googlesource.com/129933 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Brian Osman <brianosman@google.com> Auto-Submit: Mike Klein <mtklein@chromium.org>