Commit Graph

226 Commits

Author SHA1 Message Date
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
tomhudson@google.com
a87cd2af4c Increase compatibility with clang, mostly around SK_RESTRICT.
Attempting to fix up our use of __restrict__ so Chrome can enable it.



git-svn-id: http://skia.googlecode.com/svn/trunk@1597 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-15 16:50:27 +00:00
bsalomon@google.com
cd19a5f194 Set texture dirty flag only when texture has really changed
Review URL: http://codereview.appspot.com/4571073/



git-svn-id: http://skia.googlecode.com/svn/trunk@1592 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-15 14:00:23 +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
epoger@google.com
baa677b248 delete all old (non-Gyp) buildfiles
git-svn-id: http://skia.googlecode.com/svn/trunk@1583 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-14 18:35:08 +00:00
tomhudson@google.com
747bf293d4 FBO probing at Context startup is very expensive. This patch removes the
test of whether FBOs work at all, and adds parameters to the GrGLInterface
so that values can be passed into the Context creation routines instead
of executing the probes.

The GrGLInterface now defaults to run FBO tests on Android (since hardware
varies), but assumes success on desktop and software platforms.



git-svn-id: http://skia.googlecode.com/svn/trunk@1582 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-14 18:16:52 +00:00
bsalomon@google.com
3914958a49 Fix text-as-path with skshader on gpu
Review URL: http://codereview.appspot.com/4576057/



git-svn-id: http://skia.googlecode.com/svn/trunk@1575 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-13 21:55:32 +00:00
bsalomon@google.com
79d2dbed5a uint32_t -> int for texture extents
Review URL: http://codereview.appspot.com/4584053/



git-svn-id: http://skia.googlecode.com/svn/trunk@1574 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-13 19:28:02 +00:00
reed@google.com
b9255d523f drop extraneous GrPrintfs
git-svn-id: http://skia.googlecode.com/svn/trunk@1572 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-13 18:54:59 +00:00
bsalomon@google.com
919583674b Consider hw render target limit for offscreen supersample and tile
Review URL: http://codereview.appspot.com/4575041/



git-svn-id: http://skia.googlecode.com/svn/trunk@1568 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-13 17:58:13 +00:00
djsollen@google.com
e32b5837c3 Updates to the Android SampleApp
http://codereview.appspot.com/4602049/


git-svn-id: http://skia.googlecode.com/svn/trunk@1567 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-13 16:58:40 +00:00
junov@google.com
53a5584bb0 Adding functionality for purgin graphics resource handles
This will allow a fix to WebKit for preventing a crash when the graphics
context is destroyed before the GrContext

BUG=http://code.google.com/p/chromium/issues/detail?id=85309



git-svn-id: http://skia.googlecode.com/svn/trunk@1551 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-08 22:55:10 +00:00
thakis@chromium.org
7e12f82aa4 GCC 4.6 fix: intptr_t <-> NULL triggers an warning.
BUG=chromium:87001
TEST=none

Patch by Ryan Sleevi <rsleevi@chromium.org>
Review URL: http://codereview.appspot.com/4571048/

git-svn-id: http://skia.googlecode.com/svn/trunk@1538 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-07 22:18:07 +00:00
bsalomon@google.com
7ca72f3355 Apply translate param to path bounds when computing ssaa bounds
Review URL: http://codereview.appspot.com/4591044/



git-svn-id: http://skia.googlecode.com/svn/trunk@1532 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-07 18:46:50 +00:00
thakis@chromium.org
441d7da536 Correct argument order for drawSimpleRect()
Patch by Ryan Sleevi <rsleevi@chromium.org>
Review URL: http://codereview.appspot.com/4568055/

git-svn-id: http://skia.googlecode.com/svn/trunk@1523 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-07 04:03:17 +00:00
kbr@chromium.org
120bdffcf0 Committing on behalf of gman@chromium.org:
Fix for putImageData

TEST=manually ran tests that were failing
BUG=84165
TBR=reed@google.com

Code review URL: http://codereview.appspot.com/4570042


git-svn-id: http://skia.googlecode.com/svn/trunk@1518 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-07 01:27:01 +00:00
reed@google.com
70c136e54e allow the build system to enable offscreen_aa to some max dimension
default is still 0 for the moment.



git-svn-id: http://skia.googlecode.com/svn/trunk@1498 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-03 19:51:26 +00:00
twiz@google.com
76b8274242 Correction of texture domain calculation. Review=http://codereview.appspot.com/4517126
git-svn-id: http://skia.googlecode.com/svn/trunk@1483 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-02 20:30:02 +00:00
tomhudson@google.com
0d831725f6 Reduce GrGLProgram::ProgramDesc from 88B to 24B.
http://codereview.appspot.com/4561058.



git-svn-id: http://skia.googlecode.com/svn/trunk@1480 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-02 15:37:14 +00:00
tomhudson@google.com
78e7d2c795 Fix to bug, partial fix to unit tests following on from
http://codereview.appspot.com/4536100/



git-svn-id: http://skia.googlecode.com/svn/trunk@1475 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-01 20:43:05 +00:00
reed@google.com
9b24d25c6b include SkTypes.h
git-svn-id: http://skia.googlecode.com/svn/trunk@1474 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-01 20:27:53 +00:00
tomhudson@google.com
0d3f1fbd6b Speed up GrBinHashKey computation by replacing Adler32 with One-at-a-Time hash
function, do 32b at a time instead of 8b at a time.



git-svn-id: http://skia.googlecode.com/svn/trunk@1472 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-01 19:27:31 +00:00
bsalomon@google.com
d7beab4252 Fix copy/paste bug that checks same stencil field twice in isDisabled().
git-svn-id: http://skia.googlecode.com/svn/trunk@1442 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-27 16:42:30 +00:00
junov@google.com
5d6e108624 This change eliminates a potential memory leak and it
fixes a mem check bug that was blocking the skia roll 
into Chromium.

BUG=http://code.google.com/p/skia/issues/detail?id=278




git-svn-id: http://skia.googlecode.com/svn/trunk@1424 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-25 20:26:11 +00:00
senorblanco@chromium.org
1fa803d6b4 Rename glu libtess symbols. When enabled in WebKit, the internal_glu libtess
symbols in skia will collide with the same internal_ implementation in WebKit.
Rename the glu entry points with an Sk_ prefix instead.  Also, unfork the
changes to the libtess source as much as possible (the same as was done in
http://trac.webkit.org/changeset/87178).

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



git-svn-id: http://skia.googlecode.com/svn/trunk@1419 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-25 14:46:17 +00:00
junov@google.com
2f83940c4d Fixes performance for texture domain uniform upload
Code review: http://codereview.appspot.com/4536073/
bug: http://code.google.com/p/skia/issues/detail?id=275




git-svn-id: http://skia.googlecode.com/svn/trunk@1406 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-24 15:13:01 +00:00
bungeman@google.com
8c5753ea2e Fixed point no longer crashes when GL enabled in gm tests.
http://codereview.appspot.com/4532073/


git-svn-id: http://skia.googlecode.com/svn/trunk@1394 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-20 19:11:50 +00:00
bsalomon@google.com
0251b2fe99 Tag GrPrintf with GR_API so that it is exposed to users of a Skia DLL
Review URL: http://codereview.appspot.com/4530059/


git-svn-id: http://skia.googlecode.com/svn/trunk@1392 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-20 18:50:54 +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
bsalomon@google.com
2368f6f572 Remove createPlatformRenderTarget, undeprecate createRenderTargetFrom3DAPIState
Review URL: http://codereview.appspot.com/4552053/



git-svn-id: http://skia.googlecode.com/svn/trunk@1387 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-19 21:22:39 +00:00
senorblanco@chromium.org
64cc579efa The plain Makefile was using -Wall, but the gyp build wasn't. This CL turns on
-Wall -Wextra and -Wno-unused in common.gypi.  This revealed a lot of warnings
(and some actual bugs), all of which I fixed here.  This is pretty mindless
stuff for the most part (order of intialization, missing initializers, && within
||, etc), but will allow us to build cleanly with -Wall and -Wextra (and
-Werror, if we so choose).

I put defaults into switches that were missing cases.  I could put in the actual
missing enums instead if that's desired.  I could also assert on missing enums
instead of break, if that's desired.  I wasn't sure how to test the stuff in
"animator", so that should be looked at a bit more closely.

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



git-svn-id: http://skia.googlecode.com/svn/trunk@1386 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-19 19:58:58 +00:00
bungeman@google.com
0e45441994 Add Mesa as a GL backend.
http://codereview.appspot.com/4545055/


git-svn-id: http://skia.googlecode.com/svn/trunk@1382 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-19 17:47:02 +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
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
senorblanco@chromium.org
db2566bf96 Set fEdgesUni to kUseUniform when we need to upload it. Fix for bug introduced
in r1339 where the tesselated path renderer would render nothing.

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


git-svn-id: http://skia.googlecode.com/svn/trunk@1355 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-17 19:11:04 +00:00
senorblanco@chromium.org
5793a1ff40 Pass forceClose "true" to SkPath::Iter constructor in
GrPathUtils::worstCasePointCount().  worstCasePointCount() is sometimes
returning a lower value than the number of points subsequently generated by
the path renderers.  This is because it constructs the SkPath::Iter with
forceClose set to "false", while the path renderers use one with forceClose
set to "true".  They should both be the same, and since we're filling paths, I
think it should be set "true".

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



git-svn-id: http://skia.googlecode.com/svn/trunk@1353 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-17 18:29:26 +00:00
epoger@google.com
2047f00e46 get tests closer to passing for SKIA_SCALAR=fixed
http://codereview.appspot.com/4532064/



git-svn-id: http://skia.googlecode.com/svn/trunk@1351 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-17 17:36:59 +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
ff174b3947 Fix winding order check for negative scale in tesselated path rendering. The
isCCW() code in GrTesselatedPathRenderer was using untransformed vertices,
which fails for transforms with negative scale.  Doing the check after
transformation fixes it.  This was causing some missing geometry in the
PolyToPoly and Shapes tests in SampleApp.

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



git-svn-id: http://skia.googlecode.com/svn/trunk@1334 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-16 16:59:57 +00:00
bsalomon@google.com
27a4dc4c36 Upload matrix as gl float rather than gr scalar (fixes a build break when scalar==fixed)
Review URL: http://codereview.appspot.com/4516051/


git-svn-id: http://skia.googlecode.com/svn/trunk@1329 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-16 13:14:03 +00:00
bsalomon@google.com
12ad3aa49b Disable blend for edge AA not general AA
Review URL: http://codereview.appspot.com/4526051/




git-svn-id: http://skia.googlecode.com/svn/trunk@1316 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-12 20:34:19 +00:00
Scroggo
5d7574099b Style fix
git-svn-id: http://skia.googlecode.com/svn/trunk@1315 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-12 18:27:05 +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
0bad67303d Allow blending if there is a color filter.
git-svn-id: http://skia.googlecode.com/svn/trunk@1309 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-11 20:25:01 +00:00
bsalomon@google.com
dcf1b0b0ab Add space between mediump and float in 2pt radial vertex uniform decl
Review URL http://codereview.appspot.com/4544041/




git-svn-id: http://skia.googlecode.com/svn/trunk@1308 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-11 19:00:54 +00:00
Scroggo
a8a57be564 Remove a warning.
git-svn-id: http://skia.googlecode.com/svn/trunk@1303 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-11 18:16:56 +00:00