f2eb5ab780
Both shader and gradient_shader write matrices to the flatten stream. However, they were just calling write(&matrix, sizeof(SkMatrix)) and the matrix can contain lazily-computed function ptrs as part of its internal cache. Thus two matrices that are logically the same may write different bytes. This is a problem because picture relies on flattening objects and then using the flatten stream as a key into its cache. This matrix-write bug effectively kills the effectiveness of the cache for shaders. The fix is to write proper read/write functions for matrix (and region btw). These call through to the existing low-level flatten routines (which just write into a memory ptr). git-svn-id: http://skia.googlecode.com/svn/trunk@1290 2bbb7eff-a529-9590-31e7-b0007b416f81 |
||
---|---|---|
animations | ||
bench | ||
experimental | ||
forth | ||
gm | ||
gpu | ||
gyp | ||
include | ||
obsolete | ||
samplecode | ||
src | ||
tests | ||
third_party | ||
tools | ||
unix_test_app | ||
vs | ||
xcode | ||
configure.ac | ||
Makefile | ||
Makefile.am | ||
README |
Skia is a complete 2D graphic library for drawing Text, Geometries, and Images. - 3x3 matrices w/ perspective - antialiasing, transparency, filters - shaders, xfermodes, maskfilters, patheffects