fmalita
7e6fcf890a
Generic 4f gradient T sampler fallback
...
Add a generic T sampler fallback impl which uses T series produced by
subclasses mapTs() overrides. The fallback path uses the same interval
structures as the current optimized linear4f impl, but always sorted
in stop order (never inverted to match dx/increasing x order).
Enable the new mechanism for 4f linear w/ perspective.
Other boring changes:
* relocate the interval builder (back) to the base class
* add a private header for shared templates
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1783823002
Review URL: https://codereview.chromium.org/1783823002
2016-03-10 11:18:43 -08:00
reed
7f4b1b20b0
move drawextrapatheffect header into animator
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1747753002
TBR=caryclark@google.com
Review URL: https://codereview.chromium.org/1747753002
2016-02-28 12:46:29 -08:00
bungeman
ccb74b824a
Move SkPackBits to src/effects.
...
Prior to this change SkPackBits.h was in include/core and SkPackBits.cpp
in src/core. However, SkPackBits appears to have been written
specifically as an implementation detail of the SkTableColorFilter
effect. This change moves SkPackBits out of core and into effects, which
is the only current user.
Review URL: https://codereview.chromium.org/1722173003
2016-02-23 12:55:20 -08:00
fmalita
bc590c01b0
Initial linear gradient 4f impl
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1688543002
Review URL: https://codereview.chromium.org/1688543002
2016-02-22 09:12:33 -08:00
bsalomon
8610002ff8
Move SkColorMatrixFilter implementation to core.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1648933002
Review URL: https://codereview.chromium.org/1648933002
2016-02-01 12:09:07 -08:00
robertphillips
188d44c549
Move SkPixelXorXfermode.h to include/client/android
...
This intended to make clients aware that the SkPixelXorXfermode is Android-specific
This needs to land after the Chromium CL https://codereview.chromium.org/1647953006/ (Add include/client/android to skia .gn & .gypi files)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1645093002
Committed: https://skia.googlesource.com/skia/+/aa9cb62901075e9d2858353cb041e5e6d4719614
Review URL: https://codereview.chromium.org/1645093002
2016-02-01 04:54:15 -08:00
robertphillips
2a1d401bf2
Move SkAvoidXfermode over from Android
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1649503002
Review URL: https://codereview.chromium.org/1649503002
2016-01-29 08:44:17 -08:00
robertphillips
6b2c3461b0
Revert of Move SkPixelXorXfermode.h to include/client/android (patchset #5 id:80001 of https://codereview.chromium.org/1645093002/ )
...
Reason for revert:
GN woes
Original issue's description:
> Move SkPixelXorXfermode.h to include/client/android
>
> This intended to make clients aware that the SkPixelXorXfermode is Android-specific
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1645093002
>
> Committed: https://skia.googlesource.com/skia/+/aa9cb62901075e9d2858353cb041e5e6d4719614
TBR=scroggo@google.com ,reed@google.com,djsollen@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1644903004
2016-01-29 05:34:26 -08:00
robertphillips
aa9cb62901
Move SkPixelXorXfermode.h to include/client/android
...
This intended to make clients aware that the SkPixelXorXfermode is Android-specific
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1645093002
Review URL: https://codereview.chromium.org/1645093002
2016-01-29 05:11:14 -08:00
mtklein
bbb6dc80fd
kill SkValue
...
This is clearly not what we're going to do.
TBR=reed@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1643753002
Review URL: https://codereview.chromium.org/1643753002
2016-01-27 13:08:33 -08:00
robertphillips
64b0f5f957
Remove SkLerpXfermode
...
This relies on the Chromium CL https://codereview.chromium.org/1610573004/ (Replace use of SkLerpXfermode with SkArithmeticMode)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1611633002
Review URL: https://codereview.chromium.org/1611633002
2016-01-25 14:19:56 -08:00
halcanary
27a6e86fb1
SkValue: SkXfermode
...
Implement:
template<> SkValue SkToValue<SkXfermode>(const SkXfermode*);
template<> bool SkFromValue<SkXfermode*>(const SkValue&, SkXfermode**);
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1585813004
NOTRY=true
Review URL: https://codereview.chromium.org/1585813004
2016-01-21 14:15:10 -08:00
ajuma
1554ec0689
Delete SkRectShaderImageFilter
...
This is no longer used (as of http://crrev.com/368929 ).
BUG=skia:4780
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1575233004
Review URL: https://codereview.chromium.org/1575233004
2016-01-12 14:17:30 -08:00
reed
c7141eb8fb
remove external header for SkModeColorFilter
...
BUG=skia:4791
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1577073002
Review URL: https://codereview.chromium.org/1577073002
2016-01-11 13:09:00 -08:00
ajuma
77b6ba3b6e
Implement an SkPaint-based image filter
...
This implements SkPaintImageFilter, and is intended to replace
SkRectShaderImageFilter. By allowing a paint and not just a
shader as input, this allows consumers to control dithering.
BUG=skia:4780
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1556553002
Review URL: https://codereview.chromium.org/1556553002
2016-01-08 14:58:35 -08:00
caryclark
0152cc3819
remove 565 effects shaders
...
This removes the 565 optimization for radial,
linear, sweep, and picture shaders. The
optimization gets little real-world use and
has a reasonable fallback. This also permits
removing the square root table for the radial
gradient case.
R=reed@google.com
BUG=skia:1947
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1553103003
Review URL: https://codereview.chromium.org/1553103003
2016-01-04 09:54:55 -08:00
fmalita
2f5891ea64
Remove SkBitmapSource
...
To avoid breaking existing SKPs, add a deserialization stub which
unflattens SkBitmapSource records to SkImageSources.
R=reed@google.com ,mtklein@google.com,robertphillips@google.com
Review URL: https://codereview.chromium.org/1363913002
2015-09-25 09:15:55 -07:00
robertphillips
30c4cae7d3
Add special case circle blur for Ganesh
...
This makes the blurcircles bench go from ~33us to ~8us on Windows desktop.
It will require layout test suppressions
Review URL: https://codereview.chromium.org/1311583005
2015-09-15 10:20:55 -07:00
fmalita
cd56f812e0
SkImageSource
...
Blink is migrating away from SkBitmaps, so we need an SkImage-based
SkImageFilter source. This is pretty much a 1-1 equivalent of
SkBitmapSource.
To avoid duplication, relocate the SkImage deserialization logic
from SkPictureData to SkReadBuffer.
R=reed@google.com ,robertphillips@google.com,senorblanco@chromium.org
Review URL: https://codereview.chromium.org/1343703005
2015-09-14 13:31:18 -07:00
robertphillips
2f0dbc761a
Update SkLightingShader to support rotation
...
This also:
makes the SkLightingShader handle normal maps where the rects aren't aligned between the diffuse and normal maps.
adds a light aggregating class (Lights) to SkLightingShader (along with a Builder nested class).
Split out of https://codereview.chromium.org/1261433009/ (Add SkCanvas::drawLitAtlas call)
Committed: https://skia.googlesource.com/skia/+/45b59ed6e4e231814dbdb9f707b3d2a7ee50de84
Review URL: https://codereview.chromium.org/1291783003
2015-08-20 05:15:07 -07:00
robertphillips
f7d602a458
Revert "Update SkLightingShader to support rotation"
...
This reverts commit 45b59ed6e4
.
TBR=herb@google.com
Review URL: https://codereview.chromium.org/1304673002
2015-08-19 13:11:23 -07:00
robertphillips
45b59ed6e4
Update SkLightingShader to support rotation
...
This also:
makes the SkLightingShader handle normal maps where the rects aren't aligned between the diffuse and normal maps.
adds a light aggregating class (Lights) to SkLightingShader (along with a Builder nested class).
Split out of https://codereview.chromium.org/1261433009/ (Add SkCanvas::drawLitAtlas call)
Review URL: https://codereview.chromium.org/1291783003
2015-08-19 10:35:14 -07:00
robertphillips
5f865b9cf1
Move LightingShader to effects
...
Additionally this CL:
forces the light colors to be opaque
forces the light direction to be normalized
adds a raster implementation
adds a gm
Review URL: https://codereview.chromium.org/1245883003
2015-07-29 12:28:04 -07:00
robertphillips
3d32d768cd
Add new SkPoint3 class
...
The existing Light filter and the upcoming Lighting Shader both need a Point3 class
Review URL: https://codereview.chromium.org/1229693009
2015-07-13 13:16:44 -07:00
reed
56263c78d8
delete (unused) TransparentShader
...
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/1153193014
2015-06-05 11:31:26 -07:00
reed
71a6cbfc58
remove redundant/deprecated TwoPointRadial gradiet -- use TwoPointConical
...
This CL derived from https://codereview.chromium.org/1114243005/
BUG=skia:
Review URL: https://codereview.chromium.org/1117423003
2015-05-04 08:32:51 -07:00
scroggo
3e5622764a
Add copyright headers to remaining gyp files.
...
Prevents some PRESUBMIT errors.
TBR=mtklein@google.com
Review URL: https://codereview.chromium.org/1035523003
2015-03-25 10:22:41 -07:00
senorblanco
8c874eee94
Move SkMatrixImageFilter into core, and add a factory fn for it.
...
BUG=skia:
Review URL: https://codereview.chromium.org/1011273003
2015-03-20 06:38:17 -07:00
djsollen
961707f384
Remove SkPorterDuff now that Android has been updated.
...
BUG=skia:3178
Review URL: https://codereview.chromium.org/983743003
2015-03-05 12:42:29 -08:00
scroggo
e7ea40f4e0
Reland "remove unused SkAvoidXfermode"
...
(patchset #2 id:20001 of https://codereview.chromium.org/860583002/ )
SkAvoidXfermode has been moved into Android, so it is safe to remove.
Review URL: https://codereview.chromium.org/890893003
2015-01-30 13:16:02 -08:00
scroggo
b2b416d384
Revert of remove unused SkAvoidXfermode (patchset #2 id:20001 of https://codereview.chromium.org/860583002/ )
...
Reason for revert:
Breaking Android framework build, which still uses AvoidXfermode. (failure shown here: 565b76b4bd/logs/build_error.log
)
Here is the Java class that uses it: https://cs.corp.google.com/#android/frameworks/base/graphics/java/android/graphics/AvoidXfermode.java&sq=package:android
It has been deprecated. The glue code (which actually references the Skia file) is here: https://cs.corp.google.com/#android/frameworks/base/core/jni/android/graphics/Xfermode.cpp&q=Xfermode.cpp&sq=package:android
Mike suggested we move the implementation into Android, which is fine with me.
Original issue's description:
> remove unused SkAvoidXfermode
>
> BUG=skia:
> TBR=
> NOTRY=True
>
> Committed: https://skia.googlesource.com/skia/+/2d02df7a9a50217dac8c1d11681832a927ed79ce
TBR=bsalomon@google.com ,reed@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/822953003
2015-01-20 06:33:14 -08:00
reed
e76de5ac15
remove dead header
...
BUG=skia:
TBR=
NOTRY=True
NOTREECHECKS=True
Review URL: https://codereview.chromium.org/858813002
2015-01-18 20:12:26 -08:00
reed
2d02df7a9a
remove unused SkAvoidXfermode
...
BUG=skia:
TBR=
NOTRY=True
Review URL: https://codereview.chromium.org/860583002
2015-01-18 20:01:30 -08:00
egdaniel
16a04b8414
Move Gpu ArithmeticMode xfer effect to _gpu files.
...
BUG=skia:
Review URL: https://codereview.chromium.org/827163004
2015-01-14 10:49:18 -08:00
reed
8b5752443f
add arcto patheffect
...
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/813513003
2014-12-17 01:47:32 -08:00
sugoi
ce686270f5
Adding 3D lut color filter
...
Included in this cl is support for 3D textures.
BUG=skia:
Review URL: https://codereview.chromium.org/580863004
2014-10-09 05:27:23 -07:00
reed
a6cac4ce38
rename gradients private BitmapCache to GradientBitmapCache
...
R=caryclark@google.com
NOTREECHECKS=True
Author: reed@google.com
Review URL: https://codereview.chromium.org/474983005
2014-08-21 10:50:25 -07:00
reed
5b1b2dbe76
remove SkStippleMaskFilter - no external clients
...
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/462013002
2014-08-12 05:50:10 -07:00
senorblanco
7bf1068473
Remove SkBicubicImageFilter, and all related tests.
...
Now that we have SkResizeImageFilter, and the bicubic
resizing is part of skia proper, there's no need for a
specialized image filter.
BUG=skia:
R=bsalomon@google.com
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/357793002
2014-06-25 14:39:06 -07:00
commit-bot@chromium.org
ddb9331443
remove reference to (deleted) SkKernel33MaskFilter
...
BUG=skia:
R=caryclark@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/281163002
git-svn-id: http://skia.googlecode.com/svn/trunk@14738 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-14 17:42:42 +00:00
commit-bot@chromium.org
e003aecb30
remove unused Kernel33MaskFilter
...
R=robertphillips@google.com
TBR=robertphilips@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/280233002
git-svn-id: http://skia.googlecode.com/svn/trunk@14691 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-12 13:35:55 +00:00
commit-bot@chromium.org
b554440543
Remove SkResizeImageFilter.
...
Its functionality has been subsumed by SkMatrixImageFilter, and it's no longer
used in Blink.
BUG=skia:
R=bsalomon@google.com
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/222923005
git-svn-id: http://skia.googlecode.com/svn/trunk@14073 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-07 15:11:08 +00:00
commit-bot@chromium.org
aa64fbfd34
Pull Gpu shader out of SkTwoPointConicalGradient into own file
...
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/222943002
git-svn-id: http://skia.googlecode.com/svn/trunk@14044 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-03 14:59:19 +00:00
senorblanco@chromium.org
fd0ec2c76a
Implement a generic matrix transform image filter.
...
This will be used in Blink to accommodate matrices that contain
rotation or shearing. This is a generalization of SkResizeImageFilter,
so I've replaced all uses of SkResizeImageFilter in Skia. (It might be
easier to review by diffing it with SkResizeImageFilter, too.)
R=reed@google.com
Review URL: https://codereview.chromium.org/211103006
git-svn-id: http://skia.googlecode.com/svn/trunk@13941 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-25 17:35:10 +00:00
commit-bot@chromium.org
0a74106aaa
fix bad gyp file move
...
BUG=skia:
R=robertphillips@google.com
Author: humper@google.com
Review URL: https://codereview.chromium.org/151353004
git-svn-id: http://skia.googlecode.com/svn/trunk@13264 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-31 16:16:22 +00:00
commit-bot@chromium.org
cf34bc0634
patch from issue 119343003
...
compile on 10.6, exclude failing gms
Sorry for making another CL; rebasing ToT on the old one ended up with code in a tangled mess; was easier to start over.
NOTRY=true
R=bsalomon@google.com , epoger@google.com , reed@google.com
Author: humper@google.com
Review URL: https://codereview.chromium.org/148883005
git-svn-id: http://skia.googlecode.com/svn/trunk@13238 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-30 15:34:43 +00:00
commit-bot@chromium.org
dcfa9ff57c
Revert of Fast blurred rectangles on GPU ( https://codereview.chromium.org/119343003/ )
...
Reason for revert:
Two problems:
1. broke compile on Build-Mac10.6-* bots
2. broke GM expectations on many bots
We'll need to examine the GM impact before re-landing. I can work with you to do this on Tuesday if you like; just IM or email me.
Original issue's description:
> Perform the same analytic blur calculation on the GPU that we do on the CPU. Results in significant performance gains when using Ganesh to render drop shadows in Chrome.
>
> BUG=
>
> Committed: http://code.google.com/p/skia/source/detail?r=13210
R=bsalomon@google.com , reed@google.com , humper@google.com , rmistry@google.com
TBR=bsalomon@google.com , humper@google.com , reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=
Author: epoger@google.com
Review URL: https://codereview.chromium.org/140853008
git-svn-id: http://skia.googlecode.com/svn/trunk@13213 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-28 01:55:24 +00:00
commit-bot@chromium.org
d1829151a5
Perform the same analytic blur calculation on the GPU that we do on the CPU. Results in significant performance gains when using Ganesh to render drop shadows in Chrome.
...
BUG=
R=bsalomon@google.com , reed@google.com
Author: humper@google.com
Review URL: https://codereview.chromium.org/119343003
git-svn-id: http://skia.googlecode.com/svn/trunk@13210 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-27 22:41:45 +00:00
senorblanco@chromium.org
a612d4c513
Implement a resize image filter. This is needed for the "filterRes" feature in SVG filter effects, which specifies the required size for intermediate processing buffers. In order to make this work, we need to render the primitive at the given resolution (doable at the callsite in Blink), and then to resize the result to the actual on-screen size. The latter is where this filter comes in.
...
It simply applies a scaling factor (and the current CTM) to its input, and draws its input bitmap at that size.
R=reed@google.com
Committed: https://code.google.com/p/skia/source/detail?r=13077
Reverted: https://code.google.com/p/skia/source/detail?r=13078
BUG=
Review URL: https://codereview.chromium.org/136863006
git-svn-id: http://skia.googlecode.com/svn/trunk@13082 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-15 04:49:18 +00:00
senorblanco@chromium.org
96673a918d
Revert "Implement a resize image filter."
...
This reverts commit 3f996e31c7043929fc1553b9b5ecd6a82b5fe125 (r13077).
TBR=reed
Review URL: https://codereview.chromium.org/136793012
git-svn-id: http://skia.googlecode.com/svn/trunk@13078 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-14 22:55:04 +00:00