Commit Graph

626 Commits

Author SHA1 Message Date
skia.committer@gmail.com
7475811143 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@10790 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-17 07:01:54 +00:00
tfarina@chromium.org
f6de475e5c Replace uses of GrAssert by SkASSERT.
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/22850006

git-svn-id: http://skia.googlecode.com/svn/trunk@10789 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-17 00:02:59 +00:00
commit-bot@chromium.org
a8916ffd90 Change Atlas recycling to track current flush count and recycle if Atlas not used in current flush.
BUG=
R=bsalomon@google.com, robertphillips@google.com

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/23120004

git-svn-id: http://skia.googlecode.com/svn/trunk@10777 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-16 15:53:46 +00:00
commit-bot@chromium.org
eed779d866 This CL plumbs in the drawBitmapRectToRect "bleed" flag and makes it live on the simplest GPU path.
R=bsalomon@google.com, reed@google.com, edisonn@google.com, scroggo@google.com, jvanverth@google.com, mtklein@google.com

Author: robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/20806003

git-svn-id: http://skia.googlecode.com/svn/trunk@10765 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-16 10:24:37 +00:00
bsalomon@google.com
46b450a049 temporary kES2_GrGLBinding alias to unblock DEPS roll
git-svn-id: http://skia.googlecode.com/svn/trunk@10749 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-15 19:45:26 +00:00
bsalomon@google.com
eb170703fc missing header from previous commit
git-svn-id: http://skia.googlecode.com/svn/trunk@10748 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-15 18:57:53 +00:00
commit-bot@chromium.org
24ab3b0ce5 Add blend optimization helpers and use to convert rect draws to clears.
R=robertphillips@google.com, jvanverth@google.com

Author: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/22558003

git-svn-id: http://skia.googlecode.com/svn/trunk@10723 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-14 21:56:37 +00:00
bsalomon@google.com
75796db3b3 Revert "Add blend optimization helpers and use to convert rect draws to clears."
This reverts commit r10537.

git-svn-id: http://skia.googlecode.com/svn/trunk@10601 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-07 13:34:14 +00:00
commit-bot@chromium.org
c1cdf21ab8 Add blend optimization helpers and use to convert rect draws to clears.
Committed: http://code.google.com/p/skia/source/detail?r=10537

R=robertphillips@google.com, jvanverth@google.com, reed@google.com

Author: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/21877006

git-svn-id: http://skia.googlecode.com/svn/trunk@10562 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-06 15:07:23 +00:00
bsalomon@google.com
9b6a185e36 Revert "Add blend optimization helpers and use to convert rect draws to clears."
This reverts commit r10537.

git-svn-id: http://skia.googlecode.com/svn/trunk@10542 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-05 18:27:23 +00:00
commit-bot@chromium.org
66017f6cc5 Add blend optimization helpers and use to convert rect draws to clears.
R=robertphillips@google.com, jvanverth@google.com, reed@google.com

Author: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/21877006

git-svn-id: http://skia.googlecode.com/svn/trunk@10537 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-05 16:55:55 +00:00
skia.committer@gmail.com
aeefb2afe7 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@10398 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-27 07:01:06 +00:00
commit-bot@chromium.org
cffff79a40 get genmipmap function in the struct
BUG=
R=bsalomon@google.com, reed@google.com

Author: humper@google.com

Review URL: https://chromiumcodereview.appspot.com/20436002

git-svn-id: http://skia.googlecode.com/svn/trunk@10393 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-26 16:36:04 +00:00
skia.committer@gmail.com
956b310f13 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@10385 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-26 07:00:58 +00:00
humper@google.com
b86add1ad3 make the filter mode for GrTextureAccess an enum so we can plumb down
the paint's filter modes to the GPU

BUG=
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/20362002

git-svn-id: http://skia.googlecode.com/svn/trunk@10368 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-25 18:49:07 +00:00
robertphillips@google.com
44a91dcf25 Add GrContext::setMaxTextureSizeOverride
https://codereview.chromium.org/20325002/



git-svn-id: http://skia.googlecode.com/svn/trunk@10358 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-25 15:32:06 +00:00
robertphillips@google.com
9bf380ce7f drawBitmap* cleanup
https://codereview.chromium.org/19977003/



git-svn-id: http://skia.googlecode.com/svn/trunk@10342 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-25 12:10:42 +00:00
commit-bot@chromium.org
fd03d4a829 Replace all instances of GrRect with SkRect.
And remove the typedef in GrRect.h. The same with GrIRect.

R=robertphillips@google.com

Author: tfarina@chromium.org

Review URL: https://chromiumcodereview.appspot.com/19449002

git-svn-id: http://skia.googlecode.com/svn/trunk@10130 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-17 21:39:42 +00:00
robertphillips@google.com
736dd031f1 Move gaussianBlur functionality to src\effects
https://codereview.chromium.org/18771004/



git-svn-id: http://skia.googlecode.com/svn/trunk@10080 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-15 15:06:54 +00:00
commit-bot@chromium.org
2d3b492013 Remove possiblity of NULL effect in GrEffectStage
R=jvanverth@google.com

Author: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/18295008

git-svn-id: http://skia.googlecode.com/svn/trunk@10075 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-15 13:54:06 +00:00
commit-bot@chromium.org
42dacab4e7 Make GrPaint have a variable sized array of color and coverage stages rather than a fixed size.
R=robertphillips@google.com, jvanverth@google.com

Author: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/18686007

git-svn-id: http://skia.googlecode.com/svn/trunk@10062 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-13 17:24:24 +00:00
commit-bot@chromium.org
ef284a84f5 The two leaks are:
missing unrefs in megalooper GM
  missing reset capability in oval renderer

This CL also expands the instance counting system to some recently adding classes (e.g., SkFontStyleSet)

R=bsalomon@google.com, jvanverth@google.com

Author: robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/18461007

git-svn-id: http://skia.googlecode.com/svn/trunk@10030 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-11 22:29:29 +00:00
commit-bot@chromium.org
cae27fed5e Allow the resource cache to (indirectly) flush the InOrderDrawBuffer
R=bsalomon@google.com

Author: robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/18466005

git-svn-id: http://skia.googlecode.com/svn/trunk@9949 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-10 10:14:35 +00:00
robertphillips@google.com
1267fbd952 Minor GrContext/GrInOrderDrawBuffer cleanup
https://codereview.chromium.org/18341007/



git-svn-id: http://skia.googlecode.com/svn/trunk@9898 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-03 18:37:27 +00:00
bsalomon@google.com
0a208a117b Add flag bits for partial GrContext reset
BUG=248728
R=bsalomon@google.com

Committed: https://code.google.com/p/skia/source/detail?r=9802

Review URL: https://codereview.chromium.org/17027003

git-svn-id: http://skia.googlecode.com/svn/trunk@9814 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-28 18:57:35 +00:00
edisonn@google.com
ba669991e5 revert 9802 breacking tests on some configs
git-svn-id: http://skia.googlecode.com/svn/trunk@9805 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-28 16:03:21 +00:00
bsalomon@google.com
cad107bbe7 Add flag bits for partial GrContext reset
BUG=248728
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/17027003

git-svn-id: http://skia.googlecode.com/svn/trunk@9802 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-28 14:32:08 +00:00
commit-bot@chromium.org
b8d00db075 Change undefined SkGpuRenderTarget and SkGpuTexture forward declares to GrRenderTarget and GrTexture.
R=robertphillips@google.com, reed@google.com

Author: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/17269003

git-svn-id: http://skia.googlecode.com/svn/trunk@9775 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-26 19:18:23 +00:00
bsalomon@google.com
eb6879f50a Replace fixed-size array of effect stages in GrDrawState with two appendable arrays, one for color, one for coverage.
R=robertphillips@google.com

Review URL: https://codereview.chromium.org/16952006

git-svn-id: http://skia.googlecode.com/svn/trunk@9592 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-13 19:34:18 +00:00
bsalomon@google.com
21c10c5ff5 Make text context responsible for setting GrPaint on GrDrawState.
R=robertphillips@google.com

Review URL: https://codereview.chromium.org/16928010

git-svn-id: http://skia.googlecode.com/svn/trunk@9588 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-13 17:44:07 +00:00
robertphillips@google.com
5f9f2b0875 Improve batching of drawBitmap* calls
https://codereview.chromium.org/16406006/



git-svn-id: http://skia.googlecode.com/svn/trunk@9499 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-10 22:07:19 +00:00
senorblanco@chromium.org
d0925240ef Force checking of all color, stencil and FBO allocations for SkSurface_Gpu. This fixes the software canvas fallback in Chrome.
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/15643013

git-svn-id: http://skia.googlecode.com/svn/trunk@9487 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-10 15:06:09 +00:00
commit-bot@chromium.org
bb6a3178c3 Make GrContext track the current matrix, render target, and clip directly rather than using GrDrawState.
R=robertphillips@google.com, jvanverth@google.com

Author: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/15821008

git-svn-id: http://skia.googlecode.com/svn/trunk@9297 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-28 17:25:49 +00:00
robertphillips@google.com
83d1a68141 Add special handling of rectori case for gpu
https://codereview.chromium.org/15080010/



git-svn-id: http://skia.googlecode.com/svn/trunk@9175 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-17 12:50:27 +00:00
robertphillips@google.com
afd1cba523 Re-add isIRect test for AA rect drawing
https://codereview.chromium.org/14820035/



git-svn-id: http://skia.googlecode.com/svn/trunk@9128 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-14 19:47:47 +00:00
commit-bot@chromium.org
3f4ea26ff5 Check for NULL texture in GrAutoScratchTexture::detach()
R=sugoi@chromium.org, robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/14683009

git-svn-id: http://skia.googlecode.com/svn/trunk@9104 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-11 13:21:43 +00:00
bsalomon@google.com
94b284d719 Remove GrPathCmd
R=reed@google.com

Review URL: https://codereview.chromium.org/15068008

git-svn-id: http://skia.googlecode.com/svn/trunk@9097 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-10 17:14:06 +00:00
robertphillips@google.com
114eb9e699 Update shader rect drawing path for r9087 (removal of isIRect "opt")
https://codereview.chromium.org/14972013/

(SkipBuildbotRuns)



git-svn-id: http://skia.googlecode.com/svn/trunk@9089 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-10 13:16:13 +00:00
robertphillips@google.com
18136d1cf2 Remove isIRect "optimization" & defer computation of device Rect in AA rect rendering
https://chromiumcodereview.appspot.com/14890021/



git-svn-id: http://skia.googlecode.com/svn/trunk@9087 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-10 11:05:58 +00:00
commit-bot@chromium.org
8d47ddc19a Make GrGLShaderBuilder check whether GrEffect advertised that it would require the dst color or fragment position
R=senorblanco@chromium.org, robertphillips@google.com

Author: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/14998007

git-svn-id: http://skia.googlecode.com/svn/trunk@9074 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-09 14:55:46 +00:00
bsalomon@google.com
00142c4405 Fix GL extension printing on core profiles.
R=robertphillips@google.com

Review URL: https://codereview.chromium.org/14864002

git-svn-id: http://skia.googlecode.com/svn/trunk@8970 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-02 19:42:54 +00:00
robertphillips@google.com
4b140b5fbe Add geometry-based rotated AA rect drawing path
https://codereview.chromium.org/14854005/



git-svn-id: http://skia.googlecode.com/svn/trunk@8961 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-02 17:13:13 +00:00
robertphillips@google.com
b19cb7f367 Axis aligned shader-based rect drawing
https://codereview.chromium.org/14314004/



git-svn-id: http://skia.googlecode.com/svn/trunk@8960 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-02 15:37:20 +00:00
commit-bot@chromium.org
37d883d9d3 Disable AA for ovals and roundrects if MSAA is enabled.
Also remove GrPaint from a number of methods -- we only
use it to get the AA state.

R=bsalomon@google.com

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/14109033

git-svn-id: http://skia.googlecode.com/svn/trunk@8954 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-02 13:11:22 +00:00
robertphillips@google.com
a6ffb58b10 Plumbed in discard_framebuffer extension
https://codereview.chromium.org/14461006/



git-svn-id: http://skia.googlecode.com/svn/trunk@8906 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-29 16:50:17 +00:00
skia.committer@gmail.com
2cf444f704 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8873 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-26 07:00:58 +00:00
robertphillips@google.com
6ef912ac43 Reduce calls to SkMatrix::reset from GrDrawState
https://codereview.chromium.org/14474011/



git-svn-id: http://skia.googlecode.com/svn/trunk@8861 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-25 17:23:46 +00:00
commit-bot@chromium.org
f2bfd54de3 Add GPU support for roundrects
This uses the OvalRenderer to render roundrects as "stretched ovals." It adds an
additional shader that handles the straight edges of ellipsoid roundrects better, 
and uses the circle shader for roundrects where the two radii are the same. Only
axis-aligned, simple roundrects are supported. Handles fill, stroke and hairline.

R=bsalomon@google.com, robertphillips@google.com, reed@google.com

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/13852049

git-svn-id: http://skia.googlecode.com/svn/trunk@8859 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-25 15:27:00 +00:00
bsalomon@google.com
d42aca31b9 Remove static effects from the effect memory pool.
Review URL: https://codereview.chromium.org/14081016

git-svn-id: http://skia.googlecode.com/svn/trunk@8828 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-23 15:37:27 +00:00
robertphillips@google.com
235ef3d0e2 Remove GR_STATIC_RECT_VB
https://codereview.chromium.org/14367030/



git-svn-id: http://skia.googlecode.com/svn/trunk@8786 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-20 12:10:26 +00:00
bsalomon@google.com
018f179efb Expand modulate, add, subtract, extract component glsl helpers.
Review URL: https://codereview.chromium.org/13895006

git-svn-id: http://skia.googlecode.com/svn/trunk@8755 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-18 19:36:09 +00:00
jvanverth@google.com
c4f2ecaa47 Disable GPU acceleration for narrow ovals.
GPU anti-aliasing is currently not correct for ellipses where the ratio of long
axis length to short axis length is greater than 2 (see 
https://code.google.com/p/skia/issues/detail?id=1249). This disables the GPU 
path for those cases.

Review URL: https://codereview.chromium.org/13925015/


git-svn-id: http://skia.googlecode.com/svn/trunk@8694 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-16 12:30:35 +00:00
commit-bot@chromium.org
98168bb394 Add glCopyTexSubImage2D to GrGLInterface
Author: bsalomon@google.com

Reviewed By: robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/13941006

git-svn-id: http://skia.googlecode.com/svn/trunk@8634 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-11 22:00:34 +00:00
bsalomon@google.com
686bcb871b Reland of 8525 with fix for case when GrRT outlives GrTexture.
Review URL: https://codereview.chromium.org/13814015

git-svn-id: http://skia.googlecode.com/svn/trunk@8573 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-09 15:04:12 +00:00
robertphillips@google.com
df3695e5c7 First pass at Rect Effect
https://codereview.chromium.org/13521006/



git-svn-id: http://skia.googlecode.com/svn/trunk@8571 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-09 14:01:44 +00:00
bsalomon@google.com
e06f8ef5ba Revert 8525,8526 pending investigation of bench_pictures crashes.
git-svn-id: http://skia.googlecode.com/svn/trunk@8527 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 21:06:42 +00:00
bsalomon@google.com
d02e8803e9 Remove GrTexture::releaseRenderTarget() and add GrSurface::isSameAs().
Review URL: https://codereview.chromium.org/13414006

git-svn-id: http://skia.googlecode.com/svn/trunk@8525 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 19:49:13 +00:00
commit-bot@chromium.org
5d01bec07a Fix for effect cache key.
Adds the additional shift needed to incorporate the attribKeyBits.  Also simplifies the creation of the static globals for the edge effects.

Author: jvanverth@google.com

Reviewed By: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/13465019

git-svn-id: http://skia.googlecode.com/svn/trunk@8498 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-02 20:48:38 +00:00
robertphillips@google.com
a6c63a90d1 Fix another clang warning/error
git-svn-id: http://skia.googlecode.com/svn/trunk@8476 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-01 23:30:26 +00:00
jvanverth@google.com
86b5e29f80 Patches for r8468 build errors. Unreviewed.
git-svn-id: http://skia.googlecode.com/svn/trunk@8469 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-01 20:14:02 +00:00
jvanverth@google.com
054ae99d93 Take two for r8466:
Replace the old attribute binding and index interface with one where we include the binding as part of the attribute array. Also removed the fixed attribute indices for constant color and coverage attributes, and replaced with dynamic ones based on current attribute set. Removed binding of color and coverage attributes unless they're actually set.

Original author: bsalomon@google.com

Author: jvanverth@google.com

Reviewed By: bsalomon@google.com,robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/13296005


git-svn-id: http://skia.googlecode.com/svn/trunk@8468 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-01 20:06:51 +00:00
jvanverth@google.com
c7bf2963f0 Rolling back r8466.
Not reviewed.


git-svn-id: http://skia.googlecode.com/svn/trunk@8467 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-01 19:29:32 +00:00
commit-bot@chromium.org
fb495b537f Revise attribute binding interface.
Replace the old attribute binding and index interface with one where we include the binding as part of the attribute array. Also removed the fixed attribute indices for constant color and coverage attributes, and replaced with dynamic ones based on current attribute set. Removed binding of color and coverage attributes unless they're actually set.

Original author: bsalomon@google.com

Author: jvanverth@google.com

Reviewed By: bsalomon@google.com,robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/13296005

git-svn-id: http://skia.googlecode.com/svn/trunk@8466 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-01 19:12:42 +00:00
bsalomon@google.com
26e18b593a Add support for reading the dst pixel value in an effect. Use in a new effect for the kDarken xfer mode.
The current implementation is to always make a copy of the entire dst before the draw.
It will only succeed if the RT is also a texture.
Obviously, there is lots of room for improvement.
Review URL: https://codereview.chromium.org/13314002

git-svn-id: http://skia.googlecode.com/svn/trunk@8449 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-29 19:22:36 +00:00
bsalomon@google.com
123ac1d4ea Make GM render to render targets that are also textures.
Review URL: https://codereview.chromium.org/13211002

git-svn-id: http://skia.googlecode.com/svn/trunk@8438 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-28 19:18:12 +00:00
bsalomon@google.com
b8eb2e89ed Make GrGLShaderBuilder::TextureSampler extract only required info from GrTextureAccess.
This will make it possible to init a TextureSampler without a texture or a specific config.

Also unify two separate bitfields of color components in GPU code.
Review URL: https://codereview.chromium.org/13121002

git-svn-id: http://skia.googlecode.com/svn/trunk@8428 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-28 13:46:42 +00:00
bsalomon@google.com
73818dce93 Add GrPaint stage for xfermodes.
Review URL: https://codereview.chromium.org/12918032

git-svn-id: http://skia.googlecode.com/svn/trunk@8425 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-28 13:23:29 +00:00
bsalomon@google.com
31ec7985f2 Move GrGLProgram::Desc out of GrGLProgram.
Review URL: https://codereview.chromium.org/12942014

git-svn-id: http://skia.googlecode.com/svn/trunk@8411 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-27 18:14:57 +00:00
robertphillips@google.com
ad9327f036 Increase space for effect-class-ID and fix assert
https://codereview.chromium.org/12703040/



git-svn-id: http://skia.googlecode.com/svn/trunk@8400 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-26 19:35:06 +00:00
bsalomon@google.com
c26d94fd7d Move nested class GrDrawTarget::Caps out as GrDrawTargetCaps.
Pass caps to GrEffect::TestCreate() functions so that they can return effects that will work with the capabilities.
Review URL: https://codereview.chromium.org/12965018

git-svn-id: http://skia.googlecode.com/svn/trunk@8369 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-25 18:19:00 +00:00
skia.committer@gmail.com
7e32851d54 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8350 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-23 07:01:28 +00:00
commit-bot@chromium.org
81312830ef Move oval rendering code to GrOvalRenderer.
Author: jvanverth@google.com

Reviewed By: bsalomon@google.com,robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/12657003

git-svn-id: http://skia.googlecode.com/svn/trunk@8345 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-22 18:34:09 +00:00
bsalomon@google.com
c78188896e Attempt to reland 8264-5 with warning-as-error fixes.
git-svn-id: http://skia.googlecode.com/svn/trunk@8272 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-20 19:19:53 +00:00
reed@google.com
67e7cde5c5 revert 8265-8264 (broke build)
git-svn-id: http://skia.googlecode.com/svn/trunk@8268 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-20 17:47:16 +00:00
bsalomon@google.com
4d9853288b Fix build breakage.
git-svn-id: http://skia.googlecode.com/svn/trunk@8265 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-20 17:41:50 +00:00
bsalomon@google.com
ae81d5c4aa Adds local coords to GrEffect system.
Effects can ask the builder for local coords which may or may not be distinct from positions.

GrEffectStage tracks changes to relationship between pos and local coords.

GrGLEffectMatrix and GrSingleTextureEffect can use either pos or textures as intput coords

GrSimpleTextureEffect now allows for an explicit texture coords attribute.
Review URL: https://codereview.chromium.org/12531015

git-svn-id: http://skia.googlecode.com/svn/trunk@8264 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-20 17:32:27 +00:00
skia.committer@gmail.com
01c34ee599 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8249 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-20 07:01:02 +00:00
robertphillips@google.com
f4b6763b95 Removed GrEffectStage::fVertexAttribCount to fix Chrome compilation warning/error
git-svn-id: http://skia.googlecode.com/svn/trunk@8245 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-20 00:28:46 +00:00
bsalomon@google.com
f3a60c09b9 Add support for IMG's MSAA extension.
Review URL: https://codereview.chromium.org/12875005

git-svn-id: http://skia.googlecode.com/svn/trunk@8241 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-19 19:06:09 +00:00
jvanverth@google.com
65eb4d5a21 Add stroked ovals and CircleEdgeEffect.
Adds some optimizations to the circle and ellipse shaders, static effect 
instances for their GrEffects, and some minor changes to GrDrawState::setEffect
to make GrEffect setup faster.


git-svn-id: http://skia.googlecode.com/svn/trunk@8238 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-19 18:51:02 +00:00
commit-bot@chromium.org
e4657ed7e1 Add a macro for querying the byte order of SkPMColor.
R=reed@google.com

Author: bsalomon@google.com

Reviewed By: reed@google.com,epoger@google.com

Review URL: https://chromiumcodereview.appspot.com/12771010

git-svn-id: http://skia.googlecode.com/svn/trunk@8219 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-19 14:16:31 +00:00
bsalomon@google.com
8a70eef71c Add MSAA configs to bench.
Review URL: https://codereview.chromium.org/12607013

git-svn-id: http://skia.googlecode.com/svn/trunk@8217 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-19 13:58:55 +00:00
jvanverth@google.com
c3413d6f41 Increase bits for effect attribute key.
We can have an attribute index value up to 7, but only allow 2 bits for each
index in GrGLEffect::GenAttribKey. This change gives them 3 bits (and fixes an
assert when running tests in debug).

Review URL: https://codereview.chromium.org/12431018/


git-svn-id: http://skia.googlecode.com/svn/trunk@8140 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-13 21:05:14 +00:00
skia.committer@gmail.com
91274b9972 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8120 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-13 07:01:04 +00:00
commit-bot@chromium.org
ff6ea2663f Add GrEllipseEdgeEffect.
Adds the effect that replaces the old oval rendering code. Also hooks in code to set attribute names and indices for effects.

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/12462008

git-svn-id: http://skia.googlecode.com/svn/trunk@8092 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-12 12:26:08 +00:00
jvanverth@google.com
9b855c7c95 Resubmit r7899 and r7901.
git-svn-id: http://skia.googlecode.com/svn/trunk@7929 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-01 18:21:22 +00:00
bsalomon@google.com
ecd84842b3 Add support to GrGLInterface for vertex array objects
Committed: https://code.google.com/p/skia/source/detail?r=7919
Review URL: https://codereview.chromium.org/12379025

git-svn-id: http://skia.googlecode.com/svn/trunk@7924 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-01 15:36:02 +00:00
bsalomon@google.com
b82c3993c2 Revert 7919 and 7920 (committed wrong version of r7919.)
git-svn-id: http://skia.googlecode.com/svn/trunk@7923 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-01 15:32:49 +00:00
bsalomon@google.com
87c6d7a99e Add support to GrGLInterface for vertex array objects
Review URL: https://codereview.chromium.org/12379025

git-svn-id: http://skia.googlecode.com/svn/trunk@7919 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-01 14:37:18 +00:00
robertphillips@google.com
af3a3b9fb1 Revert r7901 & r7899 to allow DEPS roll
git-svn-id: http://skia.googlecode.com/svn/trunk@7909 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-28 23:08:28 +00:00
robertphillips@google.com
6177e6999d Split GrGLContextInfo into GrGLContext & GrGLContextInfo
https://codereview.appspot.com/7436045/



git-svn-id: http://skia.googlecode.com/svn/trunk@7905 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-28 20:16:25 +00:00
bsalomon@google.com
26fb61ae46 Move the default definition of GR_USE_NEW_SHADER_SOURCE_SIGNATURE to GrGLConfig.
R=senorblanco@google.com
Review URL: https://codereview.chromium.org/12390021

git-svn-id: http://skia.googlecode.com/svn/trunk@7904 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-28 19:26:04 +00:00
commit-bot@chromium.org
e452a0ab43 Use updated Khronos signature for glShaderSource
(const char* const instead of char**).

This is needed for new Khronos headers.

BUG=178589

Review URL: https://chromiumcodereview.appspot.com/12310156

git-svn-id: http://skia.googlecode.com/svn/trunk@7900 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-28 17:11:11 +00:00
jvanverth@google.com
b8b705b1b9 Add new vertex attribute array specification.
This changes the old method of setting vertex layout to a new one where we
specify vertex attribute data separately from attribute bindings (i.e. program
functionality). Attribute data is now set up via an array of generic attribute
types and offsets, and this is mapped to the old program functionality by
setting specific attribute indices. This allows us to create more general 
inputs to shaders.


git-svn-id: http://skia.googlecode.com/svn/trunk@7899 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-28 16:28:34 +00:00
skia.committer@gmail.com
12eea2b10d Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@7875 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-27 07:10:10 +00:00
bsalomon@google.com
1744f97ea7 Use glGetStringi to get extensions when available.
Review URL: https://codereview.chromium.org/12328111

git-svn-id: http://skia.googlecode.com/svn/trunk@7872 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-26 21:46:32 +00:00
bsalomon@google.com
6e4e65066a Give GrDrawTarget a back ptr to its owning GrContext.
Review URL: https://codereview.appspot.com/7395055

git-svn-id: http://skia.googlecode.com/svn/trunk@7850 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-25 20:12:45 +00:00
bsalomon@google.com
cb26535ff7 Make GPU versions of benchs use the same canvas size as raster.
Review URL: https://codereview.appspot.com/7400049

git-svn-id: http://skia.googlecode.com/svn/trunk@7827 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-22 16:13:16 +00:00
bsalomon@google.com
96966a5a1f Use CPU arrays for dynamic indices/vertices on ARM GPUs.
Review URL: https://codereview.appspot.com/7365047

git-svn-id: http://skia.googlecode.com/svn/trunk@7810 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-21 16:34:21 +00:00
bsalomon@google.com
682e1f9245 Use CGL rather than AGL on the Mac.
Review URL: https://codereview.appspot.com/7307106

git-svn-id: http://skia.googlecode.com/svn/trunk@7736 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-14 15:10:59 +00:00
bsalomon@google.com
73a9694b4c Use SkMWRandom in GLPrograms test.
R=jvanverth@google.com
Review URL: https://codereview.appspot.com/7306097

git-svn-id: http://skia.googlecode.com/svn/trunk@7721 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-13 16:31:19 +00:00
bsalomon@google.com
994b52ea55 Correct default value for GR_STATIC_RECT_VB
git-svn-id: http://skia.googlecode.com/svn/trunk@7685 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-08 21:45:47 +00:00
bsalomon@google.com
6438695222 Revert 7625 until after M26 due to a mix of perf changes.
git-svn-id: http://skia.googlecode.com/svn/trunk@7683 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-08 21:22:44 +00:00
bsalomon@google.com
85983288ba Remove compile time option to use different types for text vertices.
Review URL: https://codereview.appspot.com/7309060

git-svn-id: http://skia.googlecode.com/svn/trunk@7658 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-07 22:00:29 +00:00
bsalomon@google.com
82b0ec6ea4 Remove GR_DISABLE_DRAW_BUFFERING, replace with RTConf variable.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/7312061

git-svn-id: http://skia.googlecode.com/svn/trunk@7656 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-07 21:02:36 +00:00
bsalomon@google.com
5b25a8d72d Remove GR_DUMP_TEXTURE_UPLOADS
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/7300062

git-svn-id: http://skia.googlecode.com/svn/trunk@7652 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-07 20:21:39 +00:00
bsalomon@google.com
51ac7e6d97 Remove GR_AGGRESSIVE_SHADER_OPTS build option.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/7312058

git-svn-id: http://skia.googlecode.com/svn/trunk@7650 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-07 19:53:49 +00:00
robertphillips@google.com
fe1b536bb7 Enhance GL error checking for non-Ganesh GL calls
https://codereview.appspot.com/7312057/



git-svn-id: http://skia.googlecode.com/svn/trunk@7647 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-07 19:45:46 +00:00
bsalomon@google.com
fec0bc3fc1 Remove legacy names no longer referenced in Chrome and WebKit.
Review URL: https://codereview.appspot.com/7311055

git-svn-id: http://skia.googlecode.com/svn/trunk@7640 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-07 14:43:04 +00:00
bsalomon@google.com
1c7c01a1b3 Remove GR_STATIC_RECT_VB
Review URL: https://codereview.appspot.com/7304055

git-svn-id: http://skia.googlecode.com/svn/trunk@7625 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-06 18:53:12 +00:00
bsalomon@google.com
9c68058b67 Fix WritePixels test on ANGLE.
Don't upload BGRA to RGBA if not supported (ES2 w/ EXT BGRA extension).

R=senorblanco@chromium.org
Review URL: https://codereview.appspot.com/7305046

git-svn-id: http://skia.googlecode.com/svn/trunk@7622 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-06 18:17:50 +00:00
senorblanco@chromium.org
3cb406bb88 Implement support for origin-TopLeft render targets. Note that the default behaviour remains the same: textures default to origin-TopLeft, render targets default to origin-BottomLeft, and backend textures default to origin-BottomLeft. However, the caller can override the default by setting fOrigin in GrTextureDesc, GrBackendTextureDesc or GrBackendRenderTargetDesc.
Review URL: https://codereview.appspot.com/7230049

git-svn-id: http://skia.googlecode.com/svn/trunk@7594 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-05 19:50:46 +00:00
robertphillips@google.com
cf9faf6ce9 Reverting r7545 (render target origin change) due to layout test issues (see https://codereview.chromium.org/12210002/)
git-svn-id: http://skia.googlecode.com/svn/trunk@7571 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-05 14:05:06 +00:00
senorblanco@chromium.org
ed8659b51d Implement support for origin-TopLeft render targets in GL backend.
Review URL: https://codereview.appspot.com/7230049

git-svn-id: http://skia.googlecode.com/svn/trunk@7545 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-04 17:29:51 +00:00
bsalomon@google.com
67b915de99 Make GPU unit tests use GrContexts of different GL types.
Review URL: https://codereview.appspot.com/7281046

git-svn-id: http://skia.googlecode.com/svn/trunk@7540 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-04 16:13:32 +00:00
skia.committer@gmail.com
cdcb2ce274 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@7439 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-29 07:05:52 +00:00
senorblanco@chromium.org
22943cd588 Fix debug build. Unreviewed.
git-svn-id: http://skia.googlecode.com/svn/trunk@7416 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-28 16:48:51 +00:00
senorblanco@chromium.org
ef5dbe1cd9 Add an origin flag for backend (external) textures. Some textures in WebKit have a topdown orientation, and skia needs to be notified of this, so that they are not drawn upside-down.
Review URL: https://codereview.appspot.com/7200048

git-svn-id: http://skia.googlecode.com/svn/trunk@7414 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-28 16:42:38 +00:00
bsalomon@google.com
adc6536fe5 Remove getter of writable GrEffectStage from GrDrawState.
Upcoming changes will require GrDrawState to know things about the set of installed effects. Thus all setting of effects must go through a GrDrawState function (setEffect()). This change accomplishes that.
Review URL: https://codereview.appspot.com/7214045

git-svn-id: http://skia.googlecode.com/svn/trunk@7411 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-28 14:26:09 +00:00
skia.committer@gmail.com
e16efc1882 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@7406 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-26 07:06:02 +00:00
bsalomon@google.com
95ed55adc6 Make all GrContext members that return a texture also ref the texture for the caller.
Review URL: https://codereview.appspot.com/7198049

git-svn-id: http://skia.googlecode.com/svn/trunk@7362 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-24 14:46:47 +00:00
bsalomon@google.com
838f6e18fb Add deferred count to GrResource.
This will be used to determine whether a resource can either be deleted or reinserted in the cache when its ref count reaches zero.
Review URL: https://codereview.appspot.com/7202046

git-svn-id: http://skia.googlecode.com/svn/trunk@7355 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 21:37:01 +00:00
bsalomon@google.com
1f0f1a3b5e Fix bug introduced in r7348, deleting wrapped resources.
git-svn-id: http://skia.googlecode.com/svn/trunk@7354 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 21:32:32 +00:00
bsalomon@google.com
7283022819 Make GrResource know whether 3D objects' lifetimes are managed by Skia or not.
Review URL: https://codereview.appspot.com/7201046

git-svn-id: http://skia.googlecode.com/svn/trunk@7348 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 20:25:22 +00:00
bsalomon@google.com
ca43208e4a Reland r7342 with fixes.
git-svn-id: http://skia.googlecode.com/svn/trunk@7346 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 19:53:46 +00:00
bsalomon@google.com
58f9ae1c7a Revert 7342 to investigate failures.
git-svn-id: http://skia.googlecode.com/svn/trunk@7345 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 19:09:06 +00:00
bsalomon@google.com
bcede394ee Add GrDrawState::DeferredState for saving GrDrawStates in GrInOrderDrawBuffer.
A future CL will do the unref'ing of GrResources when converting a GrDrawState to a DeferredState.
Review URL: https://codereview.appspot.com/7181049

git-svn-id: http://skia.googlecode.com/svn/trunk@7342 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 18:29:21 +00:00
bsalomon@google.com
730138c02b Remove declaration of unimplemented function.
git-svn-id: http://skia.googlecode.com/svn/trunk@7327 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-22 22:04:13 +00:00
bsalomon@google.com
8a252f7962 Switch GrEffect::onIsEqual signature back to GrEffect from GrEffectRef.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/7188046

git-svn-id: http://skia.googlecode.com/svn/trunk@7326 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-22 20:35:13 +00:00
bsalomon@google.com
6340a41108 Let them eat GrEffectRef.
Changes the remaining existing code that operates on naked GrEffects to GrEffectRef.
Review URL: https://codereview.appspot.com/7124058

git-svn-id: http://skia.googlecode.com/svn/trunk@7321 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-22 19:55:59 +00:00
jvanverth@google.com
46d3d39e65 Add GPU support for axis-aligned ovals:
- Add drawOval base function to SkDevice, and override in SkGpuDevice
- Move isSimilarityMatrix to SkMatrix (renamed to isSimilarity) and fixed up unit test
- Since both SkGpuDevice::drawOval() and GrContext::drawPath() can try to draw ovals, added GrContext::canDrawOval() and GrContext::internalDrawOval() to avoid duplicate code
- Hooked in axis-aligned oval fill shader
- Enabled GPU stroked circles
- Added stroked circle bench test

Review URL: https://codereview.appspot.com/7137050



git-svn-id: http://skia.googlecode.com/svn/trunk@7304 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-22 13:34:01 +00:00
bsalomon@google.com
68b58c9538 Remove default implementation of GrEffect::isEqual. Make GrSingleTextureEffect abstract.
Review URL: https://codereview.appspot.com/7142049

git-svn-id: http://skia.googlecode.com/svn/trunk@7254 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-17 16:50:08 +00:00
bsalomon@google.com
a1ebbe447d Change some function/vars from EffectPtr to EffectRef to reflect GrEffectPtr->GrEffectRef renaming.
git-svn-id: http://skia.googlecode.com/svn/trunk@7226 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-16 15:51:47 +00:00
bsalomon@google.com
87c472653b Fix no-static-init (android) build.
git-svn-id: http://skia.googlecode.com/svn/trunk@7225 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-16 15:38:37 +00:00
bsalomon@google.com
64287c5ef7 Fix missing "class" in friend decls in GrEffect.h
git-svn-id: http://skia.googlecode.com/svn/trunk@7223 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-16 15:25:55 +00:00
bsalomon@google.com
0ac6af4997 Wrap GrEffects in GrEffectPtr.
This is the first step towards automatic recycling of scratch resouces in the cache via ref-cnts.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/7092061

git-svn-id: http://skia.googlecode.com/svn/trunk@7222 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-16 15:16:18 +00:00
bsalomon@google.com
371e105da5 Add GrEffect::updateKnownColorComponents(). It is used to determine whether the output of an effect has a constant output value for r,g,b, or a.
Review URL: https://codereview.appspot.com/7064057

git-svn-id: http://skia.googlecode.com/svn/trunk@7144 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-11 21:08:55 +00:00
bsalomon@google.com
50db75c871 Make GrEffect::textureAccess non-virtual. Require subclasses to append their GrTAs.
Review URL: https://codereview.appspot.com/7062063

git-svn-id: http://skia.googlecode.com/svn/trunk@7129 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-11 13:54:30 +00:00
sugoi@google.com
e3453cbd20 This CL introduces a new path renderer.
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
2013-01-07 14:26:40 +00:00
bsalomon@google.com
34cccde630 Allow GrEffects with multiple textures.
It will work as long as the total number of textures sis less than GrDrawState::kNumStages. That will be fixed in a follow up CL.
Review URL: https://codereview.appspot.com/7040052

git-svn-id: http://skia.googlecode.com/svn/trunk@7023 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-04 18:34:30 +00:00
djsollen@google.com
ade109f57c Fix Android compiler warnings.
Review URL: https://codereview.appspot.com/7040053

git-svn-id: http://skia.googlecode.com/svn/trunk@7014 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-04 15:29:06 +00:00
bsalomon@google.com
11f20d6270 Remove GrInstanceCounter.
R=reed@google.com
Review URL: https://codereview.appspot.com/6849125

git-svn-id: http://skia.googlecode.com/svn/trunk@6972 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-02 19:57:10 +00:00
skia.committer@gmail.com
2859eb74f9 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@6921 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-21 02:01:28 +00:00
bsalomon@google.com
0797c2ccea Reland 6914 w/ fixes.
git-svn-id: http://skia.googlecode.com/svn/trunk@6916 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-20 15:13:01 +00:00
bsalomon@google.com
0b6ad2297f Revert 6914 to fix build issues.
git-svn-id: http://skia.googlecode.com/svn/trunk@6915 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-20 14:23:26 +00:00
bsalomon@google.com
4b86e3428b Simplify cache IDs and keys.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6954047

git-svn-id: http://skia.googlecode.com/svn/trunk@6914 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-20 14:18:10 +00:00
robertphillips@google.com
6d0673042f Accelerate AA filled rect drawing using drawIndexedInstances
https://codereview.appspot.com/6947078/



git-svn-id: http://skia.googlecode.com/svn/trunk@6889 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-18 21:47:47 +00:00
sugoi@google.com
5f74cf8c49 Follow up on the previous patch :
- 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
2012-12-17 21:16:45 +00:00
bsalomon@google.com
9f6a557548 Remove unused type GrCacheKey
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6947074

git-svn-id: http://skia.googlecode.com/svn/trunk@6858 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-17 20:44:22 +00:00
reed@google.com
dd335aeb5d Change to BDS license (as we did with all the other files that were Apache)
Review URL: https://codereview.appspot.com/6948045

git-svn-id: http://skia.googlecode.com/svn/trunk@6787 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 19:24:05 +00:00