GrPathRenderer. GrAndroidPathRenderer is activated by gyp flag 'skia_android_path_rendering'.
A few changes to get this to work:
- Had to change SkPaint* param to SkStrokeRec& in ConvexPathVertices()
- Had to copy the vertex buffer created by the Android code to GrDrawTarget-generated vertex buffer, and convert float alpha to GrColor for AA paths
git-svn-id: http://skia.googlecode.com/svn/trunk@7110 2bbb7eff-a529-9590-31e7-b0007b416f81
Most of these issues were due to functions whose definitions appear in header files; I changed those functions to be 'static inline' instead of just 'static' or 'inline', which kills the warning for such functions.
Other functions that were static or anonymous-namespaced but were unused in cpp files were probably called at some point but are no longer; someone who knows more than I do should probably scrub all the functions I either deleted or #if 0'ed out and make sure that the right thing is happening here.
Lots of unused variables removed, and one nasty const issue handled.
There remains a single warning in thirdparty/externals/cityhash/src/city.cc on line 146 related to a signed/unsigned mismatch. I don't know if we have control over this library so I didn't fix this one, but perhaps someone could do something about that one.
BUG=
Review URL: https://codereview.appspot.com/7067044
git-svn-id: http://skia.googlecode.com/svn/trunk@7051 2bbb7eff-a529-9590-31e7-b0007b416f81
Here are the characteristics :
- It uses the original path, before stroking
- It supports traight lines only (no curves)
- It supports butt or square caps only
- It supports miter or bevel joins only
- No AA support
Support for these will be added step by step later on.
A first pass at the benchmarks on my linux machine gave me these approximate speed improvements (running all bench with the option '--forceAA 0') :
path_stroke_small_long_line 4X
path_stroke_small_sawtooth 4X
path_stroke_big_rect 4X
path_stroke_small_rect 6X
path_stroke_big_triangle 4X
path_stroke_small_triangle 10X
lines_1_BW 1.5X
dashline_2_square 1.5X
dashline_1_square 1.5X
Also note that I can't submit this code until GrDrawTarget::isOpaque() is implemented, unless I just disable my renderer completely for now.
BUG=chromium:135111
TEST=The following gms are affected and may require rebaselining : lineclosepath, linepath, strokes_poly
Review URL: https://codereview.appspot.com/7026049
git-svn-id: http://skia.googlecode.com/svn/trunk@7047 2bbb7eff-a529-9590-31e7-b0007b416f81
A experimental/LightSymbolsUtil
A experimental/LightSymbolsUtil/lightsymbols
A experimental/LightSymbolsUtil/lightsymbols/lightsymbols.cc
A experimental/LightSymbolsUtil/lightsymbols/helper.h
A experimental/LightSymbolsUtil/lightsymbols/lightsymbols.h
A experimental/LightSymbolsUtil/Callstacker
A experimental/LightSymbolsUtil/Callstacker/Callstacker.sln
A experimental/LightSymbolsUtil/Callstacker/Callstacker
A experimental/LightSymbolsUtil/Callstacker/Callstacker/Callstacker.vcxproj
A experimental/LightSymbolsUtil/Callstacker/Callstacker/Callstacker.cpp
A experimental/LightSymbolsUtil/Callstacker/Callstacker/Callstacker.vcxproj.filters
A experimental/LightSymbolsUtil/Callstacker/Callstacker/targetver.h
A experimental/LightSymbolsUtil/Callstacker/Callstacker/stdafx.cpp
A experimental/LightSymbolsUtil/Callstacker/Callstacker/ReadMe.txt
A experimental/LightSymbolsUtil/Callstacker/Callstacker/Callstacker.vcxproj.user
A experimental/LightSymbolsUtil/Callstacker/Callstacker/stdafx.h
git-svn-id: http://skia.googlecode.com/svn/trunk@6928 2bbb7eff-a529-9590-31e7-b0007b416f81
things work pretty well up to this point
it's time to apply recent deletion of binary code
algorithms to the unary code path
git-svn-id: http://skia.googlecode.com/svn/trunk@6788 2bbb7eff-a529-9590-31e7-b0007b416f81
Complete rewrite of binary logic makes the result
work and much easier to understand.
git-svn-id: http://skia.googlecode.com/svn/trunk@6597 2bbb7eff-a529-9590-31e7-b0007b416f81