Go to file
Michael Ludwig 1186b60fcf [graphite] Only convert LinearTolerances to vertex counts when invoking draw calls
Instead of taking the minimum required index/vertex count for an
instance, DynamicInstances::append() now takes a proxy. The proxy can
be used to calculate the index when it's needed at flush time, and can
accumulate its internal state to represent a worst case that
corresponds to the worst case index count as well.

Updates the tessellating RenderSteps to use a single PatchAllocator
definition that just swaps out how tess::LinearTolerances are converted
to a vertex count. This will also work seamlessly with
FixedCountStrokes.

Removes stride() function from PatchAllocator because it's clunky to
try and pass that out of DrawWriter or RenderStep to PatchWriter, and
can be re-computed from fAttribs anyways. Since it's only re-used in
PatchWriter for the deferred patch, it's one sum for every path contour
and will likely not be noticed in perf. If it is, we can have
PatchWriter remember it instead and keep PatchAllocator simple still.

Bug: skia:13056, skia:13012
Change-Id: I52a36da4df23ebb01a98246458b6538744c1815f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/540620
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2022-05-20 01:32:52 +00:00
bazel Manual Dawn roll from 34d2d1ba0273 to 4bdded68d58d (34 revisions) 2022-05-19 20:56:01 +00:00
bench Have CategorizeGlyphRunList take a strike cache as a param 2022-05-19 19:52:11 +00:00
bin Update SKPs documentation link 2022-05-18 15:21:44 +00:00
build/fuchsia [fuchsia] Fix fidlc command. 2020-06-10 03:29:24 +00:00
build_overrides Set dawn_vulkan_tools_dir in Dawn's GN overrides 2022-04-14 17:05:33 +00:00
client_utils/android Revert "Move SkCamera.h to client_utils/android" 2022-04-25 12:33:01 +00:00
demos.skia.org [canvaskit] Add in fillText to spreadsheet demo for comparison 2022-02-15 15:35:43 +00:00
dm Convert color data to skvx::float4 from Sk4f 2022-05-19 19:45:23 +00:00
docker [infra] Avoid timeouts in CreateDockerImage_Skia_WASM_Release 2022-04-08 12:26:54 +00:00
docs/examples Reland "Add kR8_unorm_SkColorType" 2022-02-10 18:00:19 +00:00
example [bazel] Put licenses() after legacy_exports 2022-05-02 15:04:33 +00:00
experimental Reland "[infra] Remove old python scripts and urllib2 references" 2022-05-16 20:15:49 +00:00
fuzz Run SkSL unit tests with optimizations disabled. 2022-05-11 14:38:07 +00:00
gm Add controls to fontscalerdistortable gm. 2022-05-18 21:10:20 +00:00
gn [graphite] Only convert LinearTolerances to vertex counts when invoking draw calls 2022-05-20 01:32:52 +00:00
include Improve skvx::any() and all() intrinsics 2022-05-20 00:50:59 +00:00
infra Skip blurcircles2 on Win10 RTX3060. 2022-05-19 20:58:28 +00:00
modules Return the width of a placeholder in iterateThroughSingleRunByStyles 2022-05-19 22:08:54 +00:00
platform_tools Fix bug where SkQP test that are always to be excluded are not. 2022-04-29 20:26:54 +00:00
resources [particles] add support for multiframe asset bindings 2022-05-19 19:39:12 +00:00
samplecode Convert color data to skvx::float4 from Sk4f 2022-05-19 19:45:23 +00:00
site Doc typos and formatting 2022-05-16 16:33:43 +00:00
specs [infra] Port serve.py from Python2 to 3 2021-08-31 15:28:19 +00:00
src [graphite] Only convert LinearTolerances to vertex counts when invoking draw calls 2022-05-20 01:32:52 +00:00
tests Improve skvx::any() and all() intrinsics 2022-05-20 00:50:59 +00:00
third_party [sksl][wgsl] Enable WGSL validation using Tint 2022-05-17 18:25:01 +00:00
toolchain set up tools for building Skia on Mac semi hermetically 2022-05-04 16:56:46 +00:00
tools [particles] add support for multiframe asset bindings 2022-05-19 19:39:12 +00:00
.bazelrc [infra] Add BazelBuild task to build CanvasKit on the CI with Bazel 2022-05-06 17:54:08 +00:00
.bazelversion [canvaskit] Add skottie to Bazel build 2022-02-04 19:18:27 +00:00
.clang-format no more bin packing in .clang-format 2021-03-04 17:22:50 +00:00
.clang-tidy Disable ClangTidy namespace comments for short blocks. 2020-08-24 14:01:22 +00:00
.gitignore [infra] Add BazelBuild task to build CanvasKit on the CI with Bazel 2022-05-06 17:54:08 +00:00
.gn Add support for ANGLE's Metal backend 2022-04-28 19:53:18 +00:00
.vpython [python3] Reland recipes -> python3 changes 2021-12-01 13:04:03 +00:00
AUTHORS Add mike@reedtribe.org to AUTHORS 2022-05-19 12:49:11 +00:00
BUILD.bazel [bazel] Put licenses() after legacy_exports 2022-05-02 15:04:33 +00:00
BUILD.gn [sksl][wgsl] Enable WGSL validation using Tint 2022-05-17 18:25:01 +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 SK Tool from e770b52f19c3 to bf200d93f5e3 2022-05-19 22:45:56 +00:00
DIR_METADATA Move metadata in OWNERS files to DIR_METADATA files 2021-02-02 23:41:54 +00:00
go_repositories.bzl [infra] Update dep of infra repo 2022-04-28 13:20:10 +00:00
go.mod [infra] Update dep of infra repo 2022-04-28 13:20:10 +00:00
go.sum [infra] Fix go.sum 2022-04-28 18:01:34 +00:00
LICENSE LICENSE file: clean up 2019-11-22 21:59:03 +00:00
OWNERS [infra] Add wildcard OWNERS 2021-08-30 19:19:34 +00:00
OWNERS.android Update OWNERS.android with more details 2022-03-16 18:13:33 +00:00
package-lock.json [bazel] Make custom karma_test rule 2022-02-23 14:53:01 +00:00
package.json [bazel] Make custom karma_test rule 2022-02-23 14:53:01 +00:00
PRESUBMIT.py [bazel] Add Presubmit to remind devs about adding/deleting files. 2022-05-17 18:01:58 +00:00
public.bzl [graphite] Moving still more files into src/text/gpu 2022-05-19 18:44:05 +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 Make float color versions of SkBitmap::clear 2022-05-19 23:25:06 +00:00
requirements.txt Added expected hash for MarkupSafe for the MacOS platform with the M1 chip 2022-05-19 17:54:32 +00:00
whitespace.txt Push shaders.skia.org. 2022-01-19 21:46:16 +00:00
WORKSPACE.bazel [bazel] Move third party BUILD.bazel files to bazel/external 2022-05-17 12:13:49 +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.