aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrAddPathRenderers_default.cpp
Commit message (Collapse)AuthorAge
* Enable distance field path rendering in Chrome.Gravatar jvanverth2014-11-04
| | | | | | | | | | - Add stat tracking for df-renderable paths - Modify GPU rasterization veto to account for df-renderable paths - Remove #define hiding df paths from Chromium and Android BUG=skia:2935 Review URL: https://codereview.chromium.org/685113003
* Add GrAASmallPathRenderer.Gravatar jvanverth2014-10-06
| | | | | | | | | Uses cached signed distance fields to render scaled and rotated versions of small paths. BUG=skia:2935 Review URL: https://codereview.chromium.org/589103004
* This takes the convex path tesselator from the Android code and hooks it into aGravatar jvanverth@google.com2013-01-09
| | | | | | | | | | | 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
* This CL introduces a new path renderer.Gravatar sugoi@google.com2013-01-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Follow up on the previous patch :Gravatar sugoi@google.com2012-12-17
| | | | | | | | | | | | | | | - Moved the SkStrokeRec class in its own file - Replaced SkStroke by SkStrokeRec in Ganesh - Moved path stroking to the Ganesh level in some cases (everytime it isn't required to do it directly in SkGpuDevice). PathEffect and MaskFilter still require path stroking at the SkGpuDevice for now. - Renamed static functions in SkPath with proper names * No functionality shold have changed with this patch. This is a step towards enabling Ganesh Path Renderers to decide whether or not to stroke the path rather than always receiving the stroked path as an input argument. BUG=chromium:135111 TEST=Try path rendering tests from the gm Review URL: https://codereview.appspot.com/6946072 git-svn-id: http://skia.googlecode.com/svn/trunk@6861 2bbb7eff-a529-9590-31e7-b0007b416f81
* Modifications to GrPatherRenderer(Chain) interfaces to support clip mask ↵Gravatar bsalomon@google.com2012-12-10
| | | | | | | | | manager. R=robertphillips@google.com Review URL: https://codereview.appspot.com/6904069 git-svn-id: http://skia.googlecode.com/svn/trunk@6741 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add placement new macros to SkPostConfig, call SkNEW* from Ganesh.Gravatar tomhudson@google.com2012-07-09
| | | | | | | | | | | | TODO: unify with the placement new implementation in SkTemplatesPriv.h, once various issues there are overcome. reed@ should be taking the lead there. http://codereview.appspot.com/6384043/ git-svn-id: http://skia.googlecode.com/svn/trunk@4492 2bbb7eff-a529-9590-31e7-b0007b416f81
* Initial support for GL_NV_path_renering. Experimental, there are still some ↵Gravatar bsalomon@google.com2012-06-28
| | | | | | | | | | issues to resolve, set gyp variable skia_nv_path_rendering=1 or build flag GR_GL_USE_NV_PATH_RENDERING to enable. http://codereview.appspot.com/6349049/ git-svn-id: http://skia.googlecode.com/svn/trunk@4390 2bbb7eff-a529-9590-31e7-b0007b416f81
* Removed SoftwarePathRenderer from GrContext's path renderer chainGravatar robertphillips@google.com2012-05-23
| | | | | | | | http://codereview.appspot.com/6221065/ git-svn-id: http://skia.googlecode.com/svn/trunk@4036 2bbb7eff-a529-9590-31e7-b0007b416f81
* Second half of refactoring to move SW path rendering to GrPathRendererGravatar robertphillips@google.com2012-05-01
| | | | | | | | http://codereview.appspot.com/6125046/ git-svn-id: http://skia.googlecode.com/svn/trunk@3804 2bbb7eff-a529-9590-31e7-b0007b416f81
* Enable convex path renderer.Gravatar bsalomon@google.com2012-01-30
| | | | | | | | | | | NOTE: THIS WILL CAUSE BOTS TO FAIL GM ON THE GPU. These tests will be rebaslined. Review URL: http://codereview.appspot.com/5601052/ git-svn-id: http://skia.googlecode.com/svn/trunk@3109 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reland r3078 (original failures that led to revert were problems with the bot)Gravatar bsalomon@google.com2012-01-30
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3101 2bbb7eff-a529-9590-31e7-b0007b416f81
* revert 3078Gravatar bsalomon@google.com2012-01-21
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3079 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix interior issues in convex path rendererGravatar bsalomon@google.com2012-01-21
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@3078 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add convex path renderer (disabled)Gravatar bsalomon@google.com2012-01-17
Review URL: http://codereview.appspot.com/5533061/ git-svn-id: http://skia.googlecode.com/svn/trunk@3040 2bbb7eff-a529-9590-31e7-b0007b416f81