skia2/include
brianosman b9c5137a1c Add storage and computation of SkColor4f version of gradient stops.
For now, we still only have the SkColor factory, but the Descriptor can
now carry either an SkColor or SkColor4f specified gradient. Base class
constructor automatically populates both forms of color, so that legacy
raster backend will continue to work, and new backend work can operate
directly from the float4 version.

On the GPU side, we have similar logic, but GrGradientEffect only
keeps one version of colors around: SkColor if the destination is
legacy, and SkColor4f (with an optional gamut xform) if the destination
is gamma correct. The 4f colors are already linear, and we gamut xform
them in setData, so gradients are now fully color-correct in sRGB and
F16 modes...

... unless there are more than three stops. Then we use a texture, and
that code path isn't handled yet. We have a few choices here (do we
use an 8-bit sRGB atlas, or just always use F16 linear atlas so we can
share it among both sRGB and wide-gamut rendering). In any case, I'd
like to defer that to a second CL.

This change does fix the non-texture gradients in the gamut GM.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2337313002

Review-Url: https://codereview.chromium.org/2337313002
2016-09-15 11:09:45 -07:00
..
android change SkStreams to work with sk_sp<SkData> instead of SkData* 2016-09-12 12:01:44 -07:00
animator Change SkTime::GetMSecs to double; ensure values stored in SkMSec do not overflow. 2016-03-25 12:59:53 -07:00
c spin off easy stuff from Herb's windows GN CL 2016-08-04 06:19:33 -07:00
codec Implement Fill() for incomplete decodes to RGBA_F16 2016-09-13 09:04:11 -07:00
config gyp/sfntly: set SK_SFNTLY_SUBSETTER uniformly 2016-08-24 12:28:38 -07:00
core Revert of SkFontData to use smart pointers. (patchset #3 id:40001 of https://codereview.chromium.org/2339273002/ ) 2016-09-15 10:57:39 -07:00
effects Switch default for SkGaussianBlurShader radius size. 2016-09-14 07:04:49 -07:00
gpu Add storage and computation of SkColor4f version of gradient stops. 2016-09-15 11:09:45 -07:00
images gn: fix fiddle 2016-08-02 11:13:49 -07:00
pathops Move SkTDArray to private. 2016-02-18 08:53:33 -08:00
ports Revert of SkFontData to use smart pointers. (patchset #3 id:40001 of https://codereview.chromium.org/2339273002/ ) 2016-09-15 10:57:39 -07:00
private Improve usage of window rectangles 2016-09-06 10:01:07 -07:00
svg Delete the legacy SVG parser 2016-07-19 06:12:54 -07:00
utils Revert of SkFontData to use smart pointers. (patchset #3 id:40001 of https://codereview.chromium.org/2339273002/ ) 2016-09-15 10:57:39 -07:00
views Remove use of MakeRenderTargetDirect from view system 2016-07-28 15:17:34 -07:00
xml Initial SVG model 2016-07-26 18:46:34 -07:00