bsalomon@google.com
00e17c5a1b
Fix uninit of mask var
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1369 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-18 19:02:42 +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
junov@google.com
6acc9b3d2b
Fixed color bleeding issue when drawing a sub region of a bitmap with filtering enabled.
...
Problem was resolved by adding the notion of a custom texture domain in generated shaders, when necessary.
git-svn-id: http://skia.googlecode.com/svn/trunk@1337 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-16 18:32:07 +00:00
reed@google.com
07f3ee10d3
use SkPath for GrPath, removing GrPathIter entirely
...
http://codereview.appspot.com/4515071/
git-svn-id: http://skia.googlecode.com/svn/trunk@1335 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-16 17:21:57 +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
cc4dac3dac
Make GrMatrix an alias of SkMatrix. Add new methods to SkMatrix.
...
Review URL: http://codereview.appspot.com/4538043/
Checked in on behalf of reed@ with some additional work (remove the do-nother sk->gr matrix converter).
git-svn-id: http://skia.googlecode.com/svn/trunk@1289 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-10 13:52:42 +00:00
reed@google.com
20efde71b4
Share code with SkRect
...
http://codereview.appspot.com/4523046/
git-svn-id: http://skia.googlecode.com/svn/trunk@1277 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-09 17:00:02 +00:00
reed@google.com
59f9961d00
remove #if 0 code
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1276 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-09 13:37:36 +00:00
reed@google.com
7744c205f2
use SkPoint, creating an alias for GrPoint
...
http://codereview.appspot.com/4498041/
git-svn-id: http://skia.googlecode.com/svn/trunk@1268 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-06 19:26:26 +00:00
reed@google.com
2e550127e6
share macros and types with SkScalar, but keep aliases for now, to avoid editing
...
call sites.
git-svn-id: http://skia.googlecode.com/svn/trunk@1267 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-06 17:30:45 +00:00
bsalomon@google.com
fc29629525
Replace GrStringBuilder with SkString. First step in cleaning up the shader generator. Slight performance hit when creating a new shader (<10% of total shader gen time on my Windows box is spent in building our string before handing it to GL). Much of this can be recovered by better usage pattern of SkString in coming revisions.
...
Review URL: http://codereview.appspot.com/4465053/
git-svn-id: http://skia.googlecode.com/svn/trunk@1266 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-06 13:53:47 +00:00
bsalomon@google.com
2ba4abbb31
Switch to GrGpuGLShaders (instead of GrGpuGLShaders2).
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1251 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-05 12:39:20 +00:00
bsalomon@google.com
6aef1fb4eb
Add 4x4 downsample filter with 4 bilinear texture reads, use for ssaa.
...
Review URL: http://codereview.appspot.com/4483042/
git-svn-id: http://skia.googlecode.com/svn/trunk@1250 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-05 12:33:22 +00:00
senorblanco@chromium.org
99c2a8b362
SampleApp builds skia on Linux with BGRA pixel order, but Ganesh's SampleApp
...
assumes GL_RGBA texture format on all platforms except Windows (where it uses
GL_BGRA), so texture colours come out wrong. As a temporary fix, do on Linux
what we do on Windows, and assume GL_BGRA. (This should be made more general
later, and the assumption of matching formats between Skia and Ganesh removed.)
Review URL: http://codereview.appspot.com/4474046/
git-svn-id: http://skia.googlecode.com/svn/trunk@1247 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 20:12:01 +00:00
bsalomon@google.com
bf2a46941e
Add all ES2 glUniform functions to GrGLInterface. Add interface validation for fixed pipe or shader pipe use.
...
Review URL: http://codereview.appspot.com/4435082/
git-svn-id: http://skia.googlecode.com/svn/trunk@1234 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-04 12:35:39 +00:00
bsalomon@google.com
05ef510389
Remove GrContext.h dependence on GrGpu.h
...
Review URL: http://codereview.appspot.com/4433096/
git-svn-id: http://skia.googlecode.com/svn/trunk@1227 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-02 21:14:59 +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
6a77cc5dde
Fix warnings.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1209 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-28 17:33:34 +00:00
agl@chromium.org
83747252b8
Adding newline at end of file to fix compiler error.
...
Unreviewed, build fix.
git-svn-id: http://skia.googlecode.com/svn/trunk@1206 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-27 23:11:21 +00:00
bsalomon@google.com
06e1795cd9
Add bounding rect for paths
...
Review URL: http://codereview.appspot.com/4442094/
git-svn-id: http://skia.googlecode.com/svn/trunk@1205 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-27 21:13:04 +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
48ba56d5fa
Update GR_API to support non-Windows DLLs.
...
Review URL: http://codereview.appspot.com/4441067/
git-svn-id: http://skia.googlecode.com/svn/trunk@1189 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-26 17:59:32 +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
a39f404c87
Remove sampler state param from lockKeylessTexture. It didn't serve any function and gave the false impression that tiling modes were handled on APIs with npot limitations.
...
http://codereview.appspot.com/4444061/
git-svn-id: http://skia.googlecode.com/svn/trunk@1181 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-26 13:18:16 +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
fea37b5e53
Add lockKeylessTexture() for caching texture without a content key.
...
Review URL: http://codereview.appspot.com/4440065/
git-svn-id: http://skia.googlecode.com/svn/trunk@1172 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-25 15:51:06 +00:00
bsalomon@google.com
205d46067a
Move alpha-ramp AA to GrContext, detect cases when AA is applied via other methods (smooth lines, MSAA) or rect falls on integer coords and skip the alpha ramp path. Use pre-fab index buffer for alpha-ramped fill rects and stroke rects.
...
Review URL: http://codereview.appspot.com/4449047/
git-svn-id: http://skia.googlecode.com/svn/trunk@1169 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-25 12:43:45 +00:00
bsalomon@google.com
a55847ba22
Fix alignment issues with stack allocated memory allocated as bytes but used to hold other types.
...
Review URL: http://codereview.appspot.com/4435060/
git-svn-id: http://skia.googlecode.com/svn/trunk@1162 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-20 15:47:04 +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
398109cc3e
rename SkDevice::eraseColor to clear and make virtual.
...
Properly flush in GrContext before calling GrGpu::clear()
Review URL: http://codereview.appspot.com/4419043/
git-svn-id: http://skia.googlecode.com/svn/trunk@1130 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-14 18:40:27 +00:00
bsalomon@google.com
9ccdb95319
NO_ERROR version of GR_GL macro shouldn't call check errror
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1128 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-14 17:43:23 +00:00
bsalomon@google.com
399d454be9
test of writable Skia tree in a chrome tree.
...
(removed an extra newline from FlingState.h)
git-svn-id: http://skia.googlecode.com/svn/trunk@1122 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-13 21:28:23 +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
bsalomon@google.com
5877ffd5ea
Add APIs and plumbing for external rendertaret-textures w/ and w/out MSAA.
...
Review URL: http://codereview.appspot.com/4388049/
git-svn-id: http://skia.googlecode.com/svn/trunk@1102 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-11 17:58:48 +00:00
bsalomon@google.com
0650e811b5
fix use of smooth lines
...
Review URL:http://codereview.appspot.com/4370050/
git-svn-id: http://skia.googlecode.com/svn/trunk@1085 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-08 18:07:53 +00:00
bsalomon@google.com
f954d8dd9a
Add isMultisampled() to GrRenderTarget. Cleanup MSAA vs smooth lines logic in GrGpuGL.
...
Skia issue: 178
Review URL: http://codereview.appspot.com/4382041/
git-svn-id: http://skia.googlecode.com/svn/trunk@1067 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-06 17:50:02 +00:00
bsalomon@google.com
6dcf499d35
Fix dangling ptr when GrRenderTarget outlives its GrTexture representation
...
Move management of fRenderTarget ptr from GL texture class to base class
Minor:
Remove redundant GrContext-per-frame debug code in SampleApp.cpp
Add GrTexture.cpp to legacy VS2010 vcxproj
Review URL: http://codereview.appspot.com/4352051/
git-svn-id: http://skia.googlecode.com/svn/trunk@1061 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-05 21:16:14 +00:00
reed@google.com
f81401763e
add rect.inset(dx, dy)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1058 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-05 20:05:56 +00:00
bsalomon@google.com
669fdc4ed8
Adds read pixels to GrTexture and GrRenderTarget
...
Adds SkGrRenderTargetPixelRef for SkBitmaps that are backed by RTs that aren't textures.
Adds onReadPixels implementations for SkGr pixel ref types
git-svn-id: http://skia.googlecode.com/svn/trunk@1056 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-05 17:08:27 +00:00
bsalomon@google.com
67dc548cec
export GrDefaultPathRenderer/GrPathRenderer
...
Review URL: http://codereview.appspot.com/4357050/
git-svn-id: http://skia.googlecode.com/svn/trunk@1048 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-04 18:45:32 +00:00
bsalomon@google.com
f987d1b234
Remove dependence on platform GL headers. Remove code that attempts to infer GL function pointers on various platforms. Instead add platform-specific implementations for Windows and Mac. (GLX coming)
...
Review URL: http://codereview.appspot.com/4354048/
git-svn-id: http://skia.googlecode.com/svn/trunk@1045 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-04 17:13:52 +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
8fe72477f2
Add GrResource base class for ibs, texs, vbs, etc.
...
Add lostContext() to GrContext.
Review URL: http://codereview.appspot.com/4328044/
git-svn-id: http://skia.googlecode.com/svn/trunk@1026 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-30 21:26:44 +00:00
senorblanco@chromium.org
9d18b7873c
This CL implements a tesselated path renderer, using GLU's libtess. All of the
...
fill modes except hairline are supported. Note that the path renderer is not
enabled by default; to enable it, replace "GrCreatePathRenderer_none.cpp" with
"GrCreatePathRenderer_tesselated.cpp" in skia.gyp, and run gyp_skia, and build.
This change also contains a number of build fixes for Win32 (for building
SampleApp on VS2008) and Mac (for my ancient Mac Pro which supports
GL_EXT_framebuffer_object but not GL_ARB_framebuffer_object). Also,
priorityq-heap.c was removed from the SampleApp build, since it's #included by
priorityq.c (weird, I know).
NB: When this change is rolled into chrome, some modifications to chromium's
skia.gyp will be necessary.
Review URL: http://codereview.appspot.com/4289072/
git-svn-id: http://skia.googlecode.com/svn/trunk@1012 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-28 20:47:09 +00:00
bsalomon@google.com
dfe75bcf98
Add way to determine at link time what path renderer will be used.
...
Added mechanism for a custom path renderer to punt and fallback to default path renderer
git-svn-id: http://skia.googlecode.com/svn/trunk@1005 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-25 12:31:16 +00:00
bsalomon@google.com
f6a7c1106e
Rename flag that disables stencil buffer creation
...
Review URL: http://codereview.appspot.com/4273103/
git-svn-id: http://skia.googlecode.com/svn/trunk@1000 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-24 16:14:10 +00:00