Go to file
Mike Klein 2eae8e53ba only scale shader by paint alpha < 1
This adds `shader && paint alpha < 1.0f` to the blitter Key, so we'll
generate and cache two different programs based on that bit.

I put a little bit of effort into a different approach, wrapping the
shader with a new shader that modulates by paint alpha when paint alpha
is less than one.  This should work, but I realized that it would break
caching, since we're caching based on shader identity.  (Not really
break, but make it ineffective.)

I've added some notes about cache keys in general, and that this wrapper
approach would make caching less effective is I think enough to make me
want to work out a "identify yourself except for uniforms" protocol for
shaders (really effects, eventually color filters will need it too).

Change-Id: I1a2a490657bf7442e79f87d80968302720265f7d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/251775
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-10-31 15:27:53 +00:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bench Reland "Add variety of bulk API benchmarks" 2019-10-28 18:48:32 +00:00
bin roll GN 2019-09-26 20:34:17 +00:00
build_overrides Update Dawn backend to ToT. This is about 3 months of changes. 2019-10-15 22:26:38 +00:00
dm Rename functions in TestUtils.h 2019-10-25 00:36:28 +00:00
docker Fix usage of depot_tools in containers. 2019-10-14 19:38:40 +00:00
docs/examples docs/fiddle: add "incomplete" fiddle. 2019-10-11 18:22:34 +00:00
example Revert "add guard to switch to SkPathTypes" 2019-09-14 19:13:44 +00:00
experimental Reland "Minimal iOS app: Perform present subsequent to flush" 2019-10-14 18:32:37 +00:00
fuzz [fuzzing] Fix skdescriptor deserialize compile 2019-10-23 11:54:14 +00:00
gm Update YUV GMs to use SkYUVMath matrices 2019-10-31 14:54:03 +00:00
gn Reland "Add variety of bulk API benchmarks" 2019-10-28 18:48:32 +00:00
include build: fix compilation on macOS with 10.14 SDK 2019-10-30 20:18:58 +00:00
infra Roll recipe dependencies (nontrivial). 2019-10-31 13:45:53 +00:00
modules [canvaskit] Add tentative support for savelayerrec 2019-10-29 16:46:43 +00:00
platform_tools android_gdbserver: Don't fail when trying to locate nonexistent files 2019-09-16 16:28:33 +00:00
resources [skottie] Fix layer blend modes under mattes 2019-10-29 01:49:26 +00:00
samplecode Add helper to determine the index buffer that will be used 2019-10-28 16:36:02 +00:00
site [docs] Add skolo-builder to swarmingbots.md 2019-10-30 19:06:48 +00:00
specs [img-decode] Start on proposed new spec 2019-05-06 17:39:19 +00:00
src only scale shader by paint alpha < 1 2019-10-31 15:27:53 +00:00
tests Swap SkPackedGlyphID bitfields around 2019-10-30 19:20:28 +00:00
third_party Dawn: roll to ToT. 2019-10-30 14:29:26 +00:00
tools Dawn: s/dawn::/wgpu::/g. 2019-10-30 14:29:46 +00:00
.clang-format restore .clang-format 2019-03-21 15:52:32 +00:00
.clang-tidy add google-build-namespaces to clang-tidy checks 2018-12-12 16:33:59 +00:00
.gitignore clean up some .gitignores 2019-05-15 19:55:45 +00:00
.gn Basic standalone GN configs. 2016-07-21 12:25:45 -07:00
AUTHORS build: fix compilation on macOS with 10.14 SDK 2019-10-30 20:18:58 +00:00
BUILD.gn SkRemoteGlyphCache Add tracing to diff canvas 2019-10-24 17:09:31 +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 third_party/externals/angle2 bb35bb4e5379..841b01678c49 (4 commits) 2019-10-31 06:10:22 +00:00
go.mod Update Go deps 2019-10-24 05:26:54 +00:00
go.sum Blacklist bulkrect benchmarks on chorizo 2019-10-28 22:04:15 +00: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 Use urllib_request instead of urllib2 in PRESUBMIT. 2019-10-22 20:30:56 +00:00
public.bzl remove SkPicture_none.cpp 2019-08-16 14:52:25 +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
RELEASE_NOTES.txt Remove legacy async read pixels APIs. 2019-10-28 17:28:53 +00:00
whitespace.txt Whitespace test 2019-05-18 13:05:29 +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.