9927bd355fc1557aa2c98900266ba6f49f806889 |
|
20-May-2014 |
commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Centralize decision about whether to do bicubic filtering, and fallbacks to mip, bilerp, or nearest R=robertphillips@google.com, humper@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/282293004 git-svn-id: http://skia.googlecode.com/svn/trunk@14809 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/effects/GrBicubicEffect.cpp
|
7d7f31433b627e62f518e9186d3f2d9bd44662e0 |
|
16-Dec-2013 |
commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Use GrTextureDomain in GrBicubicEffect to perform non-bleeding HQ filter drawBitmap. R=senorblanco@chromium.org, robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/99203011 git-svn-id: http://skia.googlecode.com/svn/trunk@12687 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/effects/GrBicubicEffect.cpp
|
bc91fd71faa2c5fd14423fecd18e50701c922ced |
|
10-Dec-2013 |
commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Make GrBicubicEffect take tile modes rather than GrTextureParams. GrTextureParams allows the caller to override the filter mode. But no filtering other than nearest neighbor makes sense. Also removes coord set from creation signature since it is unused. R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/99523008 git-svn-id: http://skia.googlecode.com/svn/trunk@12591 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/effects/GrBicubicEffect.cpp
|
dec61503d02862760f3c91203a698636a02c882a |
|
02-Dec-2013 |
commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
HQ filtering for tiled/bleed drawBitmap sample at pix center in bicubic R=senorblanco@chromium.org, jvanverth@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/83153006 git-svn-id: http://skia.googlecode.com/svn/trunk@12440 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/effects/GrBicubicEffect.cpp
|
d3baf20dd1de9940717dd50b5c9ff6061561342e |
|
07-Nov-2013 |
commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Added support for Chrome's gpu command buffer extension BindUniformLocation. R=bsalomon@google.com, bsalomon Author: skaslev@chromium.org Review URL: https://codereview.chromium.org/62163004 git-svn-id: http://skia.googlecode.com/svn/trunk@12178 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/effects/GrBicubicEffect.cpp
|
759befb72c558202de65a480c44d7b27428ec312 |
|
23-Oct-2013 |
commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
use the supplied matrix instead of the texture w/h div for the bicubic GPU effect BUG= R=bsalomon@google.com, caryclark@google.com Author: humper@google.com Review URL: https://codereview.chromium.org/37003005 git-svn-id: http://skia.googlecode.com/svn/trunk@11921 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/effects/GrBicubicEffect.cpp
|
a34995e18b1f0a7d8c9f23451718bb30ff0105b0 |
|
23-Oct-2013 |
commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Implement SkColorFilter as a GrGLEffect Adds GrEffect::willUseInputColor() which indicates whether or not the input color affects the output of the effect. This is needed for certain Xfermodes, such as kSrc_Mode. For these modes the color filter will not use the input color. An effect with GrEffect::willUseInputColor() true will cause all color or coverage effects before it to be discarded, as their computations cannot affect the output. In these cases program is marked as having white input color. This fixes an assert when Skia is compiled in a mode that prefers using uniforms instead of attributes for constants. (Flags GR_GL_USE_NV_PATH_RENDERING or GR_GL_NO_CONSTANT_ATTRIBUTES). Using attributes hides the problem where the fragment shader does not need input color for color filters that ignore DST part of the filter. The assert would be hit when uniform manager tries to bind an uniform which has been optimized away by the shader compiler. Adds specific GrGLSLExpr4 and GrGLSLExpr1 classes. This way the GLSL expressions like "(v - src.a)" can remain somewhat readable in form of "(v - src.a())". The GrGLSLExpr<typename> template implements the generic functionality, GrGLSLExprX is the specialization that exposes the type-safe interface to this functionality. Also adds operators so that GLSL binary operators of the form "(float * vecX)" can be expressed in C++. Before only the equivalent "(vecX * float)" was possible. This reverts the common blending calculations to more conventional order, such as "(1-a) * c" instead of "c * (1-a)". Changes GrGLSLExpr1::OnesStr from 1 to 1.0 in order to preserve the color filter blending formula string the same (with the exception of variable name change). Shaders change in case of input color being needed: - vec4 filteredColor; - filteredColor = (((1.0 - uFilterColor.a) * output_Stage0) + uFilterColor); - fsColorOut = filteredColor; + vec4 output_Stage1; + { // Stage 1: ModeColorFilterEffect + output_Stage1 = (((1.0 - uFilterColor_Stage1.a) * output_Stage0) + uFilterColor_Stage1); + } + fsColorOut = output_Stage1; Shaders change in case of input color being not needed: -uniform vec4 uFilterColor; -in vec4 vColor; +uniform vec4 uFilterColor_Stage0; out vec4 fsColorOut; void main() { - vec4 filteredColor; - filteredColor = uFilterColor; - fsColorOut = filteredColor; + vec4 output_Stage0; + { // Stage 0: ModeColorFilterEffect + output_Stage0 = uFilterColor_Stage0; + } + fsColorOut = output_Stage0; } R=bsalomon@google.com, robertphillips@google.com, jvanverth@google.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/25023003 git-svn-id: http://skia.googlecode.com/svn/trunk@11912 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/effects/GrBicubicEffect.cpp
|
77af6805e5faea1e2a5c0220098aec9082f3a6e5 |
|
02-Oct-2013 |
bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Make GPU coord transforms automatic Adds a GrCoordTransform class and updates the framework to handle coord transforms similar to how it handles textures with GrTextureAccess. Renames GrGLEffectMatrix to GrGLCoordTransform and slightly repurposes it to be used by the framework instead of effects. R=bsalomon@google.com, robertphillips@google.com Review URL: https://codereview.chromium.org/24853002 git-svn-id: http://skia.googlecode.com/svn/trunk@11569 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/effects/GrBicubicEffect.cpp
|
e0e7cfe44bb9d66d76120a79e5275c294bacaa22 |
|
09-Sep-2013 |
commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> |
Change old PRG to be SkLCGRandom; change new one to SkRandom The goal here is to get people to start using the new random number generator, while leaving the old one in place so we don't have to rebaseline GMs. R=reed@google.com, bsalomon@google.com Author: jvanverth@google.com Review URL: https://chromiumcodereview.appspot.com/23576015 git-svn-id: http://skia.googlecode.com/svn/trunk@11169 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/effects/GrBicubicEffect.cpp
|
d1af237d7d52e23bc08ccaf73eddaadddeab6758 |
|
04-Sep-2013 |
humper@google.com <humper@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
fix the onIsEqual method on the new bicubic effect to consider the texture accesses as well as the textures git-svn-id: http://skia.googlecode.com/svn/trunk@11090 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/effects/GrBicubicEffect.cpp
|
3aad3b01afc77993ff051c02e49186294e312980 |
|
04-Sep-2013 |
humper@google.com <humper@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> |
add support for high quality image filtering on the GPU R=bsalomon@google.com, reed@google.com Review URL: https://codereview.chromium.org/23779003 git-svn-id: http://skia.googlecode.com/svn/trunk@11087 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/gpu/effects/GrBicubicEffect.cpp
|