senorblanco@chromium.org
cd9f55989e
Add a factory Create function for SkColorFilterImageFilter, and move the matrix optimization there. This will allow the Chrome compositor to extract the optimized matrix, and potentially apply the color matrix itself, saving a buffer allocation & draw.
...
Review URL: https://codereview.appspot.com/6739057
git-svn-id: http://skia.googlecode.com/svn/trunk@6152 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-26 19:37:00 +00:00
epoger@google.com
de96163a80
object-ify gmmain.cpp (no functional change) to ease planned changes later
...
Review URL: https://codereview.appspot.com/6801043
git-svn-id: http://skia.googlecode.com/svn/trunk@6147 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-26 18:56:36 +00:00
djsollen@google.com
ebce16d21b
Refactor gm to minimize wasted passes through picture and pipe code paths.
...
Testing this CL shows around a 40% time reduction when running gm on a mac debug build.
Review URL: https://codereview.appspot.com/6791043
git-svn-id: http://skia.googlecode.com/svn/trunk@6140 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-26 14:07:13 +00:00
bsalomon@google.com
08283afc26
Rename GrSamplerState to GrEffectStage.
...
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6777053
git-svn-id: http://skia.googlecode.com/svn/trunk@6135 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-26 13:01:20 +00:00
reed@google.com
b5a5a9dc75
don't send % by itself to printf
...
git-svn-id: http://skia.googlecode.com/svn/trunk@6120 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-25 17:58:23 +00:00
epoger@google.com
f28dd8ab10
clarify code/comments in gmmain.cpp (no functional change)
...
Review URL: https://codereview.appspot.com/6749067
git-svn-id: http://skia.googlecode.com/svn/trunk@6115 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-25 16:27:34 +00:00
bsalomon@google.com
6f261bed02
GrCustomStage Renaming Part 2
...
GrSamplerState member rename
GrCustomStageUnitTest rename
some comment updates
Review URL: https://codereview.appspot.com/6771043
git-svn-id: http://skia.googlecode.com/svn/trunk@6078 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-24 19:07:10 +00:00
senorblanco@chromium.org
985fa79141
Protect filter_texture() against render target change.
...
Fix blend filters when input textures are "sloppy" (approx scratch texture match)
Add a new test case to gm/imagefiltersgraph, and reduce its size.
NOTE: this will require new baselines for the imagefiltersgraph GM.
BUG=950
Review URL: https://codereview.appspot.com/6769043
git-svn-id: http://skia.googlecode.com/svn/trunk@6073 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-24 15:14:26 +00:00
skia.committer@gmail.com
24c29d91ca
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@6023 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-20 02:01:23 +00:00
bsalomon@google.com
c6126c1828
Add a GM that tests xfermode-based color filters.
...
Review URL: https://codereview.appspot.com/6736052
git-svn-id: http://skia.googlecode.com/svn/trunk@6022 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-19 19:26:05 +00:00
edisonn@google.com
9cb9c2057c
Enable gm/aarectmodes with pdf config. Does not crash in mac (nor windows) according to comment. I am working to improve pdf, first step to have all gms export to pdf.
...
Review URL: https://codereview.appspot.com/6713055
git-svn-id: http://skia.googlecode.com/svn/trunk@6016 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-19 14:17:22 +00:00
skia.committer@gmail.com
6a748ad8d8
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@6013 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-19 02:01:19 +00:00
reed@google.com
ae7b8f3e7b
add --modulo A B option to gm, so we can only execute 1/B of the tests in a
...
given instance.
Review URL: https://codereview.appspot.com/6739044
git-svn-id: http://skia.googlecode.com/svn/trunk@6007 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-18 21:30:57 +00:00
mike@reedtribe.org
a0591698fd
add two more tilemode gms, in advance of experimenting w/ decal
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5990 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-18 02:01:59 +00:00
bsalomon@google.com
1282009256
Add transparent source bitmap to colormatrix GM.
...
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6727043
git-svn-id: http://skia.googlecode.com/svn/trunk@5969 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-16 17:50:48 +00:00
bsalomon@google.com
dfdb7e5240
Reland r5963 with two fixes:
...
Missing ref in GrSweepGradient::TestCreate.
Must reset() the sampler in setup_drawstate_aaclip() to avoid hitting a (dubious) assert.
git-svn-id: http://skia.googlecode.com/svn/trunk@5964 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-16 15:19:45 +00:00
bsalomon@google.com
f6eac8af58
Revert r5962 because of failures.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5963 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-16 14:31:26 +00:00
bsalomon@google.com
b022177777
Require matrix for custom stage to be set when custom stage is installed.
...
Review URL: https://codereview.appspot.com/6696044
git-svn-id: http://skia.googlecode.com/svn/trunk@5962 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-16 14:16:11 +00:00
skia.committer@gmail.com
f57c01bdcf
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5943 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-13 02:01:56 +00:00
bsalomon@google.com
42316095ec
Add new GM, shadertext3. It would have revealed a bug in the GPU draw-large-text-as-path code path that was recently fixed.
...
R=reed@google.com
Review URL: https://codereview.appspot.com/6638057
git-svn-id: http://skia.googlecode.com/svn/trunk@5932 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-12 19:26:15 +00:00
senorblanco@chromium.org
8d21f6c7a9
When two or more color matrix image filters are connected together, and the non-leaf matrices do not require clamping, we can concatenate their matrices and apply them together.
...
Review URL: https://codereview.appspot.com/6489054
git-svn-id: http://skia.googlecode.com/svn/trunk@5931 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-12 19:14:06 +00:00
skia.committer@gmail.com
fc84359aa9
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5892 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-11 02:01:14 +00:00
senorblanco@chromium.org
9f25de7900
This patch implements generalized DAG connectivity for SkImageFilter. SkImageFilter maintains a list of inputs, which can be constructed either from a SkImageFilter** or zero or more SkImageFilter* arguments (varargs).
...
Existing filters which maintained their own filter connectivity were refactored to use the new constructors and flattening/unflattening code. Modifying the remaining filters which are not yet DAG-friendly is left for future work; they are considered to have zero inputs for now.
Review URL: https://codereview.appspot.com/6443119
git-svn-id: http://skia.googlecode.com/svn/trunk@5891 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-10 20:36:13 +00:00
reed@google.com
1b6c73d67a
add ability to skip 565 test in gm (until I can fix an assert in debug build)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5879 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-10 15:17:24 +00:00
bsalomon@google.com
41fe45b955
Add a new GM: shadertext2.
...
It tests a bitmap shader with various combinations of matrices and shader matrices. The text is drawn filled and stroked.
Review URL: https://codereview.appspot.com/6639052
git-svn-id: http://skia.googlecode.com/svn/trunk@5877 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-10 13:35:23 +00:00
bsalomon@google.com
c7448cef09
GrPaint encapsulation.
...
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6624052
git-svn-id: http://skia.googlecode.com/svn/trunk@5838 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-05 19:04:13 +00:00
bsalomon@google.com
88becf450f
Rename GrPaint fields/enums/members texture->color mask->coverage.
...
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6615046
git-svn-id: http://skia.googlecode.com/svn/trunk@5827 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-05 14:54:42 +00:00
scroggo@google.com
30efb8a94f
Do not do PNG encoding/decoding when testing picture serialization.
...
Fixes the build.
Review URL: https://codereview.appspot.com/6624046
git-svn-id: http://skia.googlecode.com/svn/trunk@5819 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 22:02:46 +00:00
scroggo@google.com
5a7c6be72b
Add the ability to provide function pointers to SkPicture serialization
...
and deserialization for encoding and decoding bitmaps.
Remove kForceFlattenBitmapPixels_Flag, which is no longer used.
When an SkOrderedReadBuffer needs to read a bitmap, if it does not
have an image decoder, use a dummy bitmap.
In GM, add a tolerance option for color differences, used when
testing picture serialization, so it can assume two images are the
same even though PNG encoding/decoding may have resulted in small
differences.
Create dummy implementations for SkImageDecoder and SkImageEncoder
functions in SkImageDecoder_empty so that a project that does not
want to include the images project it can still build.
Allow ports to build without images project.
In Mac's image encoder, copy 4444 to 8888 before encoding.
Add SkWriter32::reservePad, to provide a pointer to write non 4 byte
aligned data, padded with zeroes.
In bench_ and render_ pictures, pass decode function to SkPicture
creation from a stream.
BUG=https://code.google.com/p/skia/issues/detail?id=842
Review URL: https://codereview.appspot.com/6551071
git-svn-id: http://skia.googlecode.com/svn/trunk@5818 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 21:46:08 +00:00
senorblanco@chromium.org
3bc16c8bc1
Implement GPU path for matrix convolution. Note that when not convolving alpha,
...
the premultiplying is done less efficiently than in the raster path: it's
done on each texture access, rather than as a pre-processing pass. This was
so I could do the filter as a single custom stage; will try the optimization
separately.
This implementation gives a ~30X speedup on the GPU results for the
matrixconvolution bench (~10X due to the GPU, and ~3X due to texture
uploads/readback removal).
Note: this changes the matrixconvolution for the software path as well, so
it will likely break the bots until that test is rebaselined.
Review URL: https://codereview.appspot.com/6585069/
git-svn-id: http://skia.googlecode.com/svn/trunk@5809 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-04 17:18:20 +00:00
reed@google.com
1ba274d9f3
revert 5794
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5795 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 20:40:38 +00:00
reed@google.com
4837724a7e
add test for rotated saveLayer, to see that we clip against the specified bounds
...
(hint: we don't at the moment)
git-svn-id: http://skia.googlecode.com/svn/trunk@5794 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-03 20:17:22 +00:00
caryclark@google.com
5987f58036
build iOS with 'make all'
...
This builds all skia tests by treating iOS tools
as executable applications. A few warnings were
fixed as well.
Removed old trace draw code and remnants.
Review URL: https://codereview.appspot.com/6597063
git-svn-id: http://skia.googlecode.com/svn/trunk@5776 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-02 18:33:14 +00:00
robertphillips@google.com
8fdb4c16a1
Fixed memory leak in bitmaprect GM
...
https://codereview.appspot.com/6593058/
git-svn-id: http://skia.googlecode.com/svn/trunk@5763 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-02 11:47:16 +00:00
reed@google.com
7ec0015ec3
delete obsolete/unused SkGpuCanvas
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5752 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-01 18:06:05 +00:00
reed@google.com
44a42ea8b2
1. remove references to (deprecated) SkGpuCanvas
...
2. remove references to setDevice (soon to be deprecated)
Review URL: https://codereview.appspot.com/6597055
git-svn-id: http://skia.googlecode.com/svn/trunk@5751 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-01 17:54:05 +00:00
robertphillips@google.com
ffad46b264
Fixed bug in drawing of large bitmaps
...
https://codereview.appspot.com/6595047/
git-svn-id: http://skia.googlecode.com/svn/trunk@5745 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-10-01 14:32:51 +00:00
robertphillips@google.com
67d91be9bb
Added additional case to GM:drawbitmapmatrix
...
https://codereview.appspot.com/6573067/
This require re-baselining of all drawbitmapmatrix images!
git-svn-id: http://skia.googlecode.com/svn/trunk@5723 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-28 17:24:44 +00:00
skia.committer@gmail.com
44d498812a
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5705 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-27 02:01:04 +00:00
tfarina@chromium.org
7b3b26e56c
gm: Include system_preferences.h in mac file.
...
This fixes the FIXME in there.
R=epoger@google.com
Review URL: https://codereview.appspot.com/6576049
git-svn-id: http://skia.googlecode.com/svn/trunk@5692 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 15:41:42 +00:00
robertphillips@google.com
653b0d678e
Disable memory intensive drawBitmapRectToRect tests on Android
...
http://codereview.appspot.com/6567052/
git-svn-id: http://skia.googlecode.com/svn/trunk@5691 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 15:28:04 +00:00
robertphillips@google.com
21a95f16c9
Added more drawBitmapRectToRect tests
...
http://codereview.appspot.com/6564053/
git-svn-id: http://skia.googlecode.com/svn/trunk@5688 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 13:10:19 +00:00
mike@reedtribe.org
3bd2173663
SkCanvas::setDevice() must die, and so we begin by removing our own
...
references to setBitmapDevice() (gotta walk before we can run)
git-svn-id: http://skia.googlecode.com/svn/trunk@5680 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-26 02:45:10 +00:00
bungeman@google.com
8ff8a1959f
Vertical metrics for FreeType.
...
https://codereview.appspot.com/6554064/
git-svn-id: http://skia.googlecode.com/svn/trunk@5677 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-25 20:38:28 +00:00
senorblanco@chromium.org
8640d5024d
This patch adds support for optional processing of the alpha channel in
...
the matrix convolution filter. Test cases are added to the GM and the
bench.
NOTE: This will require rebaselining the matrixconvolution GM, so it will
likely turn the bots red until that is done.
https://codereview.appspot.com/6547049/
git-svn-id: http://skia.googlecode.com/svn/trunk@5661 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-25 14:32:42 +00:00
scroggo@google.com
977e6626af
When recording a GM to a picture, pass the GM's size to beginRecording.
...
Review URL: https://codereview.appspot.com/6552047
git-svn-id: http://skia.googlecode.com/svn/trunk@5644 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-21 19:12:32 +00:00
senorblanco@chromium.org
5faa2dc266
Implements a matrix convolution filter (raster path only). The filtering loop
...
is templated on the tiling mode for speed: interior pixels are unconditionally
fetched; border pixels apply the appropriate tiling mode before fetching. It
handles target, bias, divisor (as gain), and edge modes (named to be more
skia-like). It does not handle the "preserveAlpha" semantics of
feConvolveMatrix, nor "kernelUnitLength".
git-svn-id: http://skia.googlecode.com/svn/trunk@5592 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 20:32:34 +00:00
reed@google.com
7112173c3c
re-re-land 5578
...
will follow w/ new .skp files to keep the waterfall green (I hope)
git-svn-id: http://skia.googlecode.com/svn/trunk@5584 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 15:14:33 +00:00
reed@google.com
10f9f4a844
revert 5580
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5581 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 14:04:54 +00:00
reed@google.com
eab16dea1c
re-land 5578 w/ pipe fix
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5580 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-18 13:47:20 +00:00