Commit Graph

143 Commits

Author SHA1 Message Date
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
898d9e5dc6 Fix signed/unsigned warning in GrInOrderDrawBuffer.cpp
git-svn-id: http://skia.googlecode.com/svn/trunk@1182 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-26 13:22:33 +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
4711a7ae95 Remove unnecessary BindBuffers. These were needed when we used vertex arrays. Now we always use buffer objects.
git-svn-id: http://skia.googlecode.com/svn/trunk@1173 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-25 18:02:58 +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
e624caf6c3 Fix copy/paste bug that causes stage 0 sample mode to be used for all stages
git-svn-id: http://skia.googlecode.com/svn/trunk@1168 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-22 19:22:58 +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
9dbdb4068f Fix mask from change r1155. (I blame the mistake on skipping afternoon coffee :))
git-svn-id: http://skia.googlecode.com/svn/trunk@1161 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-20 13:01:29 +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
reed@google.com
34cec2416c remove static from template functions
http://codereview.appspot.com/4437055/



git-svn-id: http://skia.googlecode.com/svn/trunk@1151 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-19 15:53:12 +00:00
bsalomon@google.com
8b484419e8 Suppress warnings in GrBufferAllocPool
git-svn-id: http://skia.googlecode.com/svn/trunk@1148 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-18 19:07:44 +00:00
ctguil@chromium.org
d5683e2caa Add newline to GrStencil.cpp to prevent warning.
Review URL: http://codereview.appspot.com/4442061

git-svn-id: http://skia.googlecode.com/svn/trunk@1146 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-18 18:12:50 +00:00
Scroggo
9df214e836 http://codereview.appspot.com/4373057/
git-svn-id: http://skia.googlecode.com/svn/trunk@1135 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-15 14:48:08 +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
13a950ae4e Use has_gl_extension_from_string in GrGLDefaultInterface_win.cpp (before the GL iface is installed).
git-svn-id: http://skia.googlecode.com/svn/trunk@1112 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-12 14:16:21 +00:00
bsalomon@google.com
7aaee005fa Use min of max_texture and max_renderbuffer size when calling fbo_test
git-svn-id: http://skia.googlecode.com/svn/trunk@1110 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-11 19:54:04 +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
9283b583ab Always bind packed depth stencil formats to both attacment points
Review URL: http://codereview.appspot.com/4372048/



git-svn-id: http://skia.googlecode.com/svn/trunk@1087 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-08 19:00:04 +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
twiz@google.com
f236d16914 During ganesh tear-down, it may be the case that the vertex and index buffers
are those currently bound to the HW geometry state.  We should not assert under
these conditions.

Review:  http://codereview.appspot.com/4365046/



git-svn-id: http://skia.googlecode.com/svn/trunk@1076 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-07 15:57:12 +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
3eb291455c Add GrTexture.cpp to legacy project files
git-svn-id: http://skia.googlecode.com/svn/trunk@1057 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-05 17:49:49 +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
reed@google.com
0ebe81a2b7 always flush accumulated draws before we purge the font cache
git-svn-id: http://skia.googlecode.com/svn/trunk@1051 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-04 20:06:59 +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
reed@google.com
5e76223ca7 move trimStorage to outer scope, so its memory is still valid later on when
we reference the newly assigned src pixels.



git-svn-id: http://skia.googlecode.com/svn/trunk@1046 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-04 18:15:49 +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
bsalomon@google.com
beccee78bb fix mac build of gr unit test
Review URL: http://codereview.appspot.com/4351042/



git-svn-id: http://skia.googlecode.com/svn/trunk@1034 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-01 14:51:07 +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
2022c94ec4 Fix signed/unsigned warnings in debug build in flushStencil()
git-svn-id: http://skia.googlecode.com/svn/trunk@1028 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-30 21:43:04 +00:00
bsalomon@google.com
b0259f3c86 Add GrResource.cpp to gr_files.mk
git-svn-id: http://skia.googlecode.com/svn/trunk@1027 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-30 21:31:12 +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
reed@google.com
a45af9f585 add new file GrPathUtils.cpp
git-svn-id: http://skia.googlecode.com/svn/trunk@1017 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-30 17:06:19 +00:00
bsalomon@google.com
11f0b51976 Fix ref leak on GrGpu.
Review URL: http://codereview.appspot.com/4323043/



git-svn-id: http://skia.googlecode.com/svn/trunk@1015 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-29 20:52:23 +00:00
senorblanco@chromium.org
cf3edc9c97 Two optimizations for the tesselated path renderer:
1)  If the path contains a single convex subpath, and we're not using inverted
fill modes, skip the tesselation and draw the interpolated path as a triangle
fan directly.
2)  Use GrDrawTarget.set*SourceToArray(), rather than creating a new
AutoReleaseGeometry, saving a copy of the vertex and index data.

Review URL:  http://codereview.appspot.com/4280076/



git-svn-id: http://skia.googlecode.com/svn/trunk@1014 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-29 17:42:30 +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
7f5875d334 Fix direct-to-stencil clippath rendering logic in GrGpu.
Review URL: http://codereview.appspot.com/4273104/

git-svn-id: http://skia.googlecode.com/svn/trunk@1001 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-24 16:55:45 +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
bsalomon@google.com
a9ecdadfbc Add GL_CHROMIUM_framebuffer_multisample support.
Review URL: http://codereview.appspot.com/4287072/



git-svn-id: http://skia.googlecode.com/svn/trunk@984 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-23 13:50:34 +00:00
reed@google.com
a03ec86e99 add GR at the end
git-svn-id: http://skia.googlecode.com/svn/trunk@981 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-22 17:49:13 +00:00
bsalomon@google.com
8361a0fa2c Fix macro in Chrome's GL config file
Review URL: http://codereview.appspot.com/4308041/


git-svn-id: http://skia.googlecode.com/svn/trunk@980 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-22 14:38:11 +00:00
bsalomon@google.com
86c92b3d8f Remove redundant defines of GR_GL macros.
Patch submitted by weiwei.li@intel.com

Review URL: http://codereview.appspot.com/4290060/



git-svn-id: http://skia.googlecode.com/svn/trunk@977 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-22 13:08:48 +00:00