Go to file
Kevin Lubick d9b9e5ec4b [canvaskit] High performance Path APIs
https://skia-review.googlesource.com/c/skia/+/297896 draws
several paths with over 1000 points (one has ~250k) and
was pretty slow. We already had a way to provide a flat(ish)
array of all the verbs, points and weights mushed together
(although that should be cleaned up to prefer taking a 1d
array).

This adds an additional way to provide multiple verbs,
points, (and optionally weights, if conics are used) to CanvasKit.
This makes things dramatically faster because of batch copying
the values between JS and WASM (or using Malloc).

Additionally, the above CL revealed a need to be able to
use a subsection of a Malloc'd array efficiently. Thus,
I added subarray as a method of the Malloc object, which
can be used effectively as a pointer (i.e. no copying).

Change-Id: I2c1d26b25118fb9949e878b1b519d93efcfa5019
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/297841
Reviewed-by: Nathaniel Nifong <nifong@google.com>
Reviewed-by: Chris Dalton <csmartdalton@google.com>
2020-06-24 12:40:49 +00:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bench add simple pathbuilder 2020-06-24 01:50:30 +00:00
bin Roll gn. 2020-06-18 19:33:04 +00:00
build/fuchsia [fuchsia] Fix fidlc command. 2020-06-10 03:29:24 +00:00
build_overrides Use Dawn's BUILD.gn instead of defining another one for Skia. 2020-04-13 23:26:31 +00:00
client_utils/android Remove SkBitmapRegionDecoder and SkBRDAllocator 2020-06-01 20:56:29 +00:00
demos.skia.org [demos] Move to subdir 2020-06-23 17:29:37 +00:00
dm Prevent non-trivial destructors from running after exit in DM. 2020-06-20 00:02:23 +00:00
docker Support specifying hash and patch_ref in skia-release & skia-wasm-release Dockerfiles 2020-05-06 20:39:04 +00:00
docs/examples Remove SkSurface::MakeFromBackendTextureAsRenderTarget from public API 2020-05-29 15:09:52 +00:00
example Revert "Revert "switch to new filltype for SkPath"" 2019-11-26 17:43:14 +00:00
experimental [skrive] Parse ellipse data 2020-06-24 02:17:30 +00:00
fuzz replace max_len with if statements 2020-06-16 17:26:30 +00:00
gm Update image_from_yuv_textures GM for *ooprddl configs 2020-06-23 13:10:02 +00:00
gn add simple pathbuilder 2020-06-24 01:50:30 +00:00
include add simple pathbuilder 2020-06-24 01:50:30 +00:00
infra Roll NDK to r21d 2020-06-23 20:23:51 +00:00
modules [canvaskit] High performance Path APIs 2020-06-24 12:40:49 +00:00
platform_tools Reland the new module for skia lib for g3 2020-06-23 14:19:13 +00:00
resources Runtime effect implementation of color cube filter 2020-05-28 15:45:48 +00:00
samplecode Handle kMatrixMultiply in ByteCode -> SkVM 2020-06-19 20:31:10 +00:00
site Regularize selection of fontmgr. 2020-06-11 12:28:03 +00:00
specs Fix CanvasKit generated documentation to work with emscripten 1.39.16. 2020-05-27 12:23:32 +00:00
src add simple pathbuilder 2020-06-24 01:50:30 +00:00
tests add simple pathbuilder 2020-06-24 01:50:30 +00:00
third_party decouple werror and -isystem in third_party 2020-06-19 21:59:35 +00:00
tools Make glPatchParameteri required when tessellation is supported 2020-06-23 18:45:41 +00:00
.clang-format Disable BinPackParameters in .clang-format 2020-03-27 14:32:40 +00:00
.clang-tidy add google-build-namespaces to clang-tidy checks 2018-12-12 16:33:59 +00:00
.gitignore Reland the new module for skia lib for g3 2020-06-23 14:19:13 +00:00
.gn Basic standalone GN configs. 2016-07-21 12:25:45 -07:00
AUTHORS Fixing a bug in SkOpEdgeBuilder::walk that causes pathOps to fail when cubic segment is reducable 2020-04-21 16:56:54 +00:00
BUILD.gn Reland the new module for skia lib for g3 2020-06-23 14:19:13 +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 ANGLE from 9daab8cbffb7 to 1496de215a39 (13 revisions) 2020-06-24 04:46:00 +00:00
go.mod Update Go Deps 2020-06-21 05:38:24 +00:00
go.sum Update Go Deps 2020-06-21 05:38:24 +00:00
LICENSE LICENSE file: clean up 2019-11-22 21:59:03 +00:00
OWNERS add OWNERS file 2017-12-01 19:50:19 +00:00
PRESUBMIT.py PRESUBMIT: Don't check formatting of deleted files 2020-04-08 10:36:09 +00:00
public.bzl Fix public.bzl formatting 2020-06-23 16:27:17 +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 Add SkSurface flush call that takes a GrBackendSurfaceMutableState. 2020-06-12 20:40:54 +00:00
whitespace.txt Whitespace change to re-trigger Mac/iOS tests 2020-02-23 20:55:01 +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.