Go to file
Mike Klein 37155d476c Rework out-of-gamut handling in SkRasterPipeline
Instead of trying to carefully manage the in-gamut / out-of-gamut state
of the pipeline, let's do what a GPU would do, clamping to representable
range in any float -> integer conversion.

Most effects doing table lookups now clamp themselves internally, and
the store_foo() methods clamp when the destination is fixed point.  In
turn the from_srgb() conversions and all future transfer function stages
can care less about this stuff.

If I'm thinking right, the _lowp side of things need not change at all,
and that will soften the performance impact of this change.  Anything
that was fast to begin with was probably running a _lowp pipeline.

Bug: skia:7419

Change-Id: Id2e080ac240a97b900a1ac131c85d9e15f70af32
Reviewed-on: https://skia-review.googlesource.com/85740
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
2017-12-18 18:48:42 +00:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bench Fix benches that aren't really timing what we want 2017-12-18 15:56:02 +00:00
bin bin/try: No prompt for a single matching job 2017-12-11 18:32:08 +00:00
debugger remove deprecated SkPixelSerializer 2017-12-16 14:21:32 +00:00
dm SkQP: make_gmkb, gm_knowledge (GM Knowledgebase) 2017-12-15 17:23:48 +00:00
docs working on image docs 2017-12-15 16:47:08 +00:00
example Add GrGLMakeNativeInterface factory that returns sk_sp<const GrGLInterface>. 2017-12-11 17:54:38 +00:00
experimental experimental/tools/gerrit-change-id-to-number 2017-12-18 17:21:42 +00:00
fuzz Fuzz skpicture with ReadBuffer 2017-12-12 19:11:09 +00:00
gm point deferredtextureimage GMs at resources/images 2017-12-18 17:08:02 +00:00
gn Revert "Remove SkImage deferred texture image data APIs." 2017-12-15 23:57:41 +00:00
include remove deprecated SkPixelSerializer 2017-12-16 14:21:32 +00:00
infra Add Goma to CQ as experimental. 2017-12-15 22:37:50 +00:00
platform_tools SkQP: make_gmkb, gm_knowledge (GM Knowledgebase) 2017-12-15 17:23:48 +00:00
resources resources: orgainize directory. 2017-12-08 17:16:00 +00:00
samplecode CCPR: Don't use instanced draw calls with geometry shaders 2017-12-11 17:27:38 +00:00
site working on image docs 2017-12-15 16:47:08 +00:00
src Rework out-of-gamut handling in SkRasterPipeline 2017-12-18 18:48:42 +00:00
tests remove deprecated SkPixelSerializer 2017-12-16 14:21:32 +00:00
third_party Update Windows clang asset 2017-12-08 16:55:10 +00:00
tools Blacklist mail.google.com from top25_desk pageset 2017-12-18 17:34:42 +00:00
.clang-format Mark flatennable macros as block beginning/ending in .clang-format 2017-01-09 15:31:36 +00:00
.gitignore Ignore generated README.recipes.md 2017-10-26 18:07:27 +00:00
.gn Basic standalone GN configs. 2016-07-21 12:25:45 -07:00
AUTHORS fix use of uninitialized flag in SkCodec 2017-10-09 19:17:05 +00:00
BUILD.gn SkQP: make_gmkb, gm_knowledge (GM Knowledgebase) 2017-12-15 17:23:48 +00:00
codereview.settings Make uploading to Gerrit the default for Skia 2016-11-09 19:07:56 +00:00
CONTRIBUTING Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
CQ_COMMITTERS Moved committer list to chrome-infra-auth and deleted it from the repo 2015-09-02 13:37:54 -07:00
DEPS Roll skia/third_party/externals/angle2/ a2d981418..0e74e0596 (1 commit) 2017-12-18 17:24:12 +00:00
Doxyfile Make the housekeeper upload doxygen to a newer bucket 2016-10-04 13:23:57 -07:00
LICENSE BUG=skia:5602 2016-09-02 11:19:34 -07:00
OWNERS add OWNERS file 2017-12-01 19:50:19 +00:00
PRESUBMIT.py PostUploadHook needs to return something 2017-12-07 18:40:09 +00:00
public.bzl Revert "Revert "remove SK_SUPPORT_LEGACY_PDF_PIXELSERIALIZER dead code"" 2017-12-15 20:43:10 +00:00
README Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
README.chromium Update README.chromium. 2015-06-11 13:19:24 -07:00
whitespace.txt Removed general bot upload permissions, whitespace change to test 2017-12-04 13:03:34 +00:00

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.

See full details, and build instructions, at https://skia.org.