5891d67871
The general flow of the blendInfo is: It is created/filled in during the PaintParamsKey creation - it is currently stored on the SkPipelineData to get it out of the creation phase Ownership is "transferred" to the ShaderCodeDictionary::Entry when the PaintParamsKey is converted to a uniqueKey - this makes sense bc the blendInfo depends pretty directly on the PaintParamsKey When a FS is generated by a backend the BlendInfo is retrieved (from the SCD::Entry) and placed in the SkShaderInfo - the backend can then use the BlendInfo to set up the fixed-function blending Note: The duplication of the BlendInfo in the SkPipelineData and the SCD::Entry is unfortunate but may go away in the future. We are faced with the general problem of the pre-compilation pass needing to get both the structure of the uniforms a program requires and the BlendInfo but _not_ the uniforms. So, in the future, an SkPipelineData may always be passed in to collect data but then disassembled (e.g., the uniformBlock is cached, the blendInfo goes into the SCD::Entry, etc.) Bug: skia:12701 Change-Id: I5571809981cefa6770f69a4c1b8361db14afc44b Reviewed-on: https://skia-review.googlesource.com/c/skia/+/517876 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com> |
||
---|---|---|
bazel | ||
bench | ||
bin | ||
build/fuchsia | ||
build_overrides | ||
client_utils/android | ||
demos.skia.org | ||
dm | ||
docker | ||
docs/examples | ||
example | ||
experimental | ||
fuzz | ||
gm | ||
gn | ||
include | ||
infra | ||
modules | ||
platform_tools | ||
resources | ||
samplecode | ||
site | ||
specs | ||
src | ||
tests | ||
third_party | ||
toolchain | ||
tools | ||
.bazelrc | ||
.bazelversion | ||
.clang-format | ||
.clang-tidy | ||
.gitignore | ||
.gn | ||
.vpython | ||
AUTHORS | ||
BUILD.bazel | ||
BUILD.gn | ||
codereview.settings | ||
CONTRIBUTING | ||
CQ_COMMITTERS | ||
DEPS | ||
DIR_METADATA | ||
go_repositories.bzl | ||
go.mod | ||
go.sum | ||
LICENSE | ||
OWNERS | ||
package-lock.json | ||
package.json | ||
PRESUBMIT.py | ||
public.bzl | ||
README | ||
README.chromium | ||
RELEASE_NOTES.txt | ||
whitespace.txt | ||
WORKSPACE.bazel |
Skia is a complete 2D graphic library for drawing Text, Geometries, and Images. See full details, and build instructions, at https://skia.org.