bsalomon@google.com
25fb21f5df
Refactor GrDrawTarget vertex/index api
...
Review URL: http://codereview.appspot.com/4631056/
git-svn-id: http://skia.googlecode.com/svn/trunk@1662 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-21 18:17:25 +00:00
senorblanco@chromium.org
129b8e3237
Implement edge AA for concave polys in the tesselated path renderer.
...
Review URL: http://codereview.appspot.com/4571072/
git-svn-id: http://skia.googlecode.com/svn/trunk@1600 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-15 17:52:09 +00:00
bsalomon@google.com
7ac249bdc7
Enable SSAA on inverse filled paths
...
Review URL: http://codereview.appspot.com/4613044/
git-svn-id: http://skia.googlecode.com/svn/trunk@1584 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-14 18:46:24 +00:00
bsalomon@google.com
271cffc77b
Add dual source blending support for proper blending with coverage.
...
Review URL: http://codereview.appspot.com/4535088/
git-svn-id: http://skia.googlecode.com/svn/trunk@1390 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-20 14:13:56 +00:00
senorblanco@chromium.org
ef3913bcbf
Batch up draws into triangle fans as large as possible when drawing convex
...
edge AA polys, so we minimize state changes and GL calls. This requires
querying GL for the maximum number of fragment uniforms. It also makes the
shader generator produce custom shaders for the number of relevant edges.
This gives a ~5X speedup on the "Shapes" SampleApp.
Review URL: http://codereview.appspot.com/4536070/
git-svn-id: http://skia.googlecode.com/svn/trunk@1380 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-19 17:11:07 +00:00
bsalomon@google.com
26c2d0a69e
Use coverage stages for supersample AA resolve, edgeAA, and glyph masks. Expose a mask stage through GrPaint
...
Review URL: http://codereview.appspot.com/4548048/
git-svn-id: http://skia.googlecode.com/svn/trunk@1356 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-17 20:15:30 +00:00
junov@google.com
d31cbc4650
Removing remnants of GrGLEffect.
...
Bug: http://code.google.com/p/skia/issues/detail?id=264
Code review: http://codereview.appspot.com/4517073/
git-svn-id: http://skia.googlecode.com/svn/trunk@1350 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-17 17:01:17 +00:00
bsalomon@google.com
f2d91557b2
separate coverage stages from color stages.
...
Review URL: http://codereview.appspot.com/4538064/
git-svn-id: http://skia.googlecode.com/svn/trunk@1339 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-16 20:56:06 +00:00
senorblanco@chromium.org
92e0f222fb
Edge antialiasing for convex shapes in Ganesh
...
This patch implements edge antialiasing for convex shapes, using the fragment
shader to compare against the edge equations for each triangle. Currently, it
only works for flat shaded primitives (i.e., it was not integrated into the
"active stages" path). The skia.gyp changes cause this code to be compiled into
SampleApp, but do not enable the tesselated path by default.
Notes: the SkOSWindow_Unix.cpp change is to silence a valgrind warning about
memcpy() with overlapping regions. The GrBinHashKey change is to avoid running
a two-pass hash (GrProgramDesc is now 52 bytes or so, exceeding the 32 byte
default size).
Review URL: http://codereview.appspot.com/4519054/
git-svn-id: http://skia.googlecode.com/svn/trunk@1314 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-12 15:49:15 +00:00
Scroggo
97c88c255c
Add color filters to gpu path.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1297 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-11 14:05:25 +00:00
bsalomon@google.com
8295dc1474
4x4 SSAA with improvements in determination of when to apply. Still disabled at compile time.
...
Review URL: http://codereview.appspot.com/4445075/
git-svn-id: http://skia.googlecode.com/svn/trunk@1218 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-02 12:53:34 +00:00
bsalomon@google.com
6aa25c3f55
Make Gr clear take a rect for a partial-clear
...
Review URL: http://codereview.appspot.com/4442093/
git-svn-id: http://skia.googlecode.com/svn/trunk@1203 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-27 19:55:29 +00:00
bsalomon@google.com
a47a48dca5
SSSA for drawVerts, cleanup determination of when stage is enabled
...
Review URL: http://codereview.appspot.com/4430066/
git-svn-id: http://skia.googlecode.com/svn/trunk@1195 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-26 20:22:11 +00:00
bsalomon@google.com
06afe7b5a1
Per-draw super sampling. Disabled, path only, 2x2 only
...
Review URL: http://codereview.appspot.com/4452048/
git-svn-id: http://skia.googlecode.com/svn/trunk@1186 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-26 15:31:40 +00:00
bsalomon@google.com
0b335c1ac1
Make clear a GrDrawTarget virtual method and implement in GrInOrderDrawBuffer
...
Review URL: http://codereview.appspot.com/4442081/
git-svn-id: http://skia.googlecode.com/svn/trunk@1176 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-25 19:17:44 +00:00
bsalomon@google.com
4be283f3a8
Adds a build flag for GL to never use vertex attributes that don't have per-vertex values.
...
Also promotes the ATTRIBUTE_MATRIX flag that was local to cpp files to the public config file.
Review URL: http://codereview.appspot.com/4434057/
git-svn-id: http://skia.googlecode.com/svn/trunk@1155 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-19 21:15:09 +00:00
bsalomon@google.com
bcdbbe61e1
rename XHelper members to onX
...
Review URL: http://codereview.appspot.com/4380056/
git-svn-id: http://skia.googlecode.com/svn/trunk@1113 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-12 15:40:00 +00:00
junov@google.com
f93e717c7f
Refactoring the GrGpuGLShaders2 into 2 classes: GrGpuGLShaders
...
and GrGLProgram. The change also contains stubs and placeholders for GrEffect
(work in progress), which will extend shader and rendering capabilities in
Ganesh. The hash keys for the program cache table have been modified to be able
to accomodate variable-length keys, which will be required for GrEffect support.
Code review: http://codereview.appspot.com/4309045/
git-svn-id: http://skia.googlecode.com/svn/trunk@1031 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-31 21:26:24 +00:00
bsalomon@google.com
080773ca79
Add blend constant color and use it for lcd text common case (no fancy blend or shaded text)
...
Review URL: http://codereview.appspot.com/4274057/
git-svn-id: http://skia.googlecode.com/svn/trunk@941 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-15 19:09:25 +00:00
djsollen@google.com
cd9d69b9ce
Upstreaming changes from android.
...
- fix compile warnings in the GPU code
- upstream android specific code (ifdef protected)
- fail gracefully when a custom allocator fails
git-svn-id: http://skia.googlecode.com/svn/trunk@936 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-14 20:30:14 +00:00
bsalomon@google.com
5aaa69e433
Fixups for clipstack, convexity test for paths.
...
Review URL http://codereview.appspot.com/4250056/
git-svn-id: http://skia.googlecode.com/svn/trunk@891 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-04 20:29:08 +00:00
bsalomon@google.com
d302f1401b
Add support for clipstack to Gr. GrClip is now a list of rects and paths with set operations to combine them. The stencil buffer is used to perform the set operations to put the clip into the stencil buffer. Building Gr's clip from Skia's clipStack is currently disabled due to the fact that Skia's clipStack is relative to the root layer not the current layer. This will be fixed in a subsequent CL.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@878 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-03 13:54:13 +00:00
bsalomon@google.com
27847dedd9
Fix line endings in Gr files and set svn eol style to LF
...
git-svn-id: http://skia.googlecode.com/svn/trunk@832 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-22 20:59:41 +00:00
bsalomon@google.com
ffca400ef6
Make a separate path renderer object. Move enum types to GrTypes.h
...
Review URL http://codereview.appspot.com/4167067/
git-svn-id: http://skia.googlecode.com/svn/trunk@829 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-22 20:34:01 +00:00
bsalomon@google.com
c6cf72381b
Hide alloc size vs content size below API
...
Remove old gl shaders class
Move texture matrix to sampler class
git-svn-id: http://skia.googlecode.com/svn/trunk@808 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-17 16:43:10 +00:00
bsalomon@google.com
86afc2ae27
Batch consecutive draw rects.
...
Review URL: http://codereview.appspot.com/4178057/
git-svn-id: http://skia.googlecode.com/svn/trunk@800 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-16 16:12:19 +00:00
bsalomon@google.com
1c13c9668a
Refactor how Gr handles vertex and index data. GrGpu and GrInOrderDrawBuffer both GrBufferAllocPool to manage reserved and set-to-array vertex and index data.
...
rietveld issue 4188049
git-svn-id: http://skia.googlecode.com/svn/trunk@786 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-14 16:51:21 +00:00
bsalomon@google.com
6f7fbc9fbb
Adds ability to draw rects using a unit square vertex buffer. Useful when matrix/uniform changes are less expensive than sending new verts.
...
Adds optional matrix parameters to GrContext drawRect and drawRectToRect so that non-axis-aligned matrices can be drawn using these functions.
codereview Issue 4105049
git-svn-id: http://skia.googlecode.com/svn/trunk@749 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-01 19:12:40 +00:00
bsalomon@google.com
7d34d2eecc
Increase number of stages from 1 to 2
...
Move GrTextContext from stage 0 to stage 1 so it doesn't conflict with GrPaint (allow textured text)
Switch to dynamically generated shaders
git-svn-id: http://skia.googlecode.com/svn/trunk@721 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-01-24 17:41:47 +00:00
bsalomon@google.com
5782d712ff
Rev the GrContext interface. Context has draw* functions that take a new GrPaint object. Removed many of the lower-level GrGpu function call-throughs on context.
...
Remove unused/unsupported point size (we don't draw non-hairline points using GL points).
Change current* getter functions to get* for consistency.
Fix bounds when drawing inverse-filled paths.
git-svn-id: http://skia.googlecode.com/svn/trunk@718 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-01-21 21:03:59 +00:00
bsalomon@google.com
8531c1cea2
Towards issue #106
...
Adds notion of texture multiple stages but currently just uses 1.
git-svn-id: http://skia.googlecode.com/svn/trunk@694 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-01-13 19:52:45 +00:00
reed@google.com
8195f67427
rename DrawState to DrState -- MS decided to #define DrawState, complicating
...
our (compiler) lives :(
git-svn-id: http://skia.googlecode.com/svn/trunk@689 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-01-12 18:14:28 +00:00
reed@google.com
ac10a2d039
add gpu backend (not hooked up yet)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@649 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-12-22 21:39:39 +00:00