/external/skia/src/gpu/glsl/ |
GrGLSLXferProcessor.cpp | 20 static void adjust_for_lcd_coverage(GrGLSLXPFragmentBuilder* fragBuilder, 24 fragBuilder->codeAppendf("%s.a = max(max(%s.r, %s.g), %s.b);", 37 GrGLSLXPFragmentBuilder* fragBuilder = args.fXPFragBuilder; 39 const char* dstColor = fragBuilder->dstColor(); 55 fragBuilder->codeAppendf("if (all(lessThanEqual(%s.rgb, vec3(0)))) {" 74 fragBuilder->codeAppend("// Read color from copy of the destination.\n"); 75 fragBuilder->codeAppendf("vec2 _dstTexCoord = (sk_FragCoord.xy - %s) * %s;", 79 fragBuilder->codeAppend("_dstTexCoord.y = 1.0 - _dstTexCoord.y;"); 82 fragBuilder->codeAppendf("vec4 %s = ", dstColor); 83 fragBuilder->appendTextureLookup(args.fDstTextureSamplerHandle, "_dstTexCoord" [all...] |
GrGLSLFragmentProcessor.cpp | 30 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 31 outputColor->append(fragBuilder->getMangleString()); 32 fragBuilder->codeAppendf("vec4 %s;", outputColor->c_str()); 39 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 41 fragBuilder->onBeforeChildProcEmitCode(); // call first so mangleString is updated 46 fragBuilder->codeAppend("{\n"); 47 fragBuilder->codeAppendf("// Child Index %d (mangle: %s): %s\n", childIndex, 48 fragBuilder->getMangleString().c_str(), childProc.name()); 53 EmitArgs childArgs(fragBuilder, 64 fragBuilder->codeAppend("}\n") [all...] |
GrGLSLPrimitiveProcessor.cpp | 39 void GrGLSLPrimitiveProcessor::setupUniformColor(GrGLSLPPFragmentBuilder* fragBuilder, 50 fragBuilder->codeAppendf("%s = %s;", outputName, stagedLocalVarName); 51 if (fragBuilder->getProgramBuilder()->shaderCaps()->mustObfuscateUniformColor()) { 52 fragBuilder->codeAppendf("%s = max(%s, vec4(0, 0, 0, 0));", outputName, outputName);
|
GrGLSLXferProcessor.h | 30 EmitArgs(GrGLSLXPFragmentBuilder* fragBuilder, 40 : fXPFragBuilder(fragBuilder) 78 static void DefaultCoverageModulation(GrGLSLXPFragmentBuilder* fragBuilder,
|
/external/skia/src/effects/ |
SkHighContrastFilter.cpp | 255 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 257 fragBuilder->codeAppendf("vec4 color = %s;", args.fInputColor); 260 fragBuilder->codeAppendf("float nonZeroAlpha = max(color.a, 0.00001);"); 261 fragBuilder->codeAppendf("color = vec4(color.rgb / nonZeroAlpha, nonZeroAlpha);"); 265 fragBuilder->codeAppendf("float luma = dot(color, vec4(%f, %f, %f, 0));", 267 fragBuilder->codeAppendf("color = vec4(luma, luma, luma, 0);"); 271 fragBuilder->codeAppendf("color = vec4(1, 1, 1, 1) - color;"); 276 fragBuilder->codeAppendf("float fmax = max(color.r, max(color.g, color.b));"); 277 fragBuilder->codeAppendf("float fmin = min(color.r, min(color.g, color.b));"); 278 fragBuilder->codeAppendf("float l = (fmax + fmin) / 2;") [all...] |
SkRRectsGaussianEdgeMaskFilter.cpp | 220 GrGLSLFPFragmentBuilder* fragBuilder, 230 fragBuilder->codeAppendf("vec2 delta = abs(sk_FragCoord.xy - %s.%s);", 238 fragBuilder->codeAppendf("float scaledDist = length(delta/%s);", radName); 239 fragBuilder->codeAppendf("%s = clamp((%s.%c/%s - scaledDist), 0.0, 1.0);", 243 fragBuilder->codeAppendf( 248 fragBuilder->codeAppendf("%s = clamp(1.0 - length(rectDist), 0.0, 1.0);", 262 fragBuilder->codeAppendf("float xDist = (%s.%c - delta.x) / %s;", 264 fragBuilder->codeAppendf("float yDist = (%s.%c - delta.y) / %s;", 266 fragBuilder->codeAppend("float rectDist = clamp(min(xDist, yDist), 0.0, 1.0);"); 275 fragBuilder->codeAppendf("float insetDist = min(max(%s, %s.%c), [all...] |
SkOverdrawColorFilter.cpp | 146 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 148 fragBuilder->codeAppendf("%s.rgba = vec4(%f, %f, %f, %f);", args.fOutputColor, 154 fragBuilder->codeAppendf("float alpha = 255.0 * %s.a;", args.fInputColor); 155 fragBuilder->codeAppendf("if (alpha < 0.5) {"); 156 fragBuilder->codeAppendf(" %s.rgba = vec4(%f, %f, %f, %f);", args.fOutputColor, 161 fragBuilder->codeAppendf("} else if (alpha < 1.5) {"); 162 fragBuilder->codeAppendf(" %s.rgba = vec4(%f, %f, %f, %f);", args.fOutputColor, 167 fragBuilder->codeAppendf("} else if (alpha < 2.5) {"); 168 fragBuilder->codeAppendf(" %s.rgba = vec4(%f, %f, %f, %f);", args.fOutputColor, 173 fragBuilder->codeAppendf("} else if (alpha < 3.5) {") [all...] |
GrAlphaThresholdFragmentProcessor.cpp | 33 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 43 fragBuilder->ensureCoords2D(args.fTransformedCoords[0]); 45 fragBuilder->ensureCoords2D(args.fTransformedCoords[1]); 46 fragBuilder->codeAppendf( 53 fragBuilder->getProgramBuilder()->samplerVariable(args.fTexSamplers[0]).c_str(), 55 fragBuilder->getProgramBuilder()->samplerSwizzle(args.fTexSamplers[0]).c_str(), 63 fragBuilder->getProgramBuilder()->samplerVariable(args.fTexSamplers[1]).c_str(), 65 fragBuilder->getProgramBuilder()->samplerSwizzle(args.fTexSamplers[1]).c_str(),
|
SkLumaColorFilter.cpp | 63 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 64 fragBuilder->codeAppendf("\tfloat luma = dot(vec3(%f, %f, %f), %s.rgb);\n", 69 fragBuilder->codeAppendf("\t%s = vec4(0, 0, 0, luma);\n",
|
SkMagnifierImageFilter.cpp | 167 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 168 SkString coords2D = fragBuilder->ensureCoords2D(args.fTransformedCoords[0]); 169 fragBuilder->codeAppendf("\t\tvec2 coord = %s;\n", coords2D.c_str()); 170 fragBuilder->codeAppendf("\t\tvec2 zoom_coord = %s + %s * %s;\n", 175 fragBuilder->codeAppendf("\t\tvec2 delta = (coord - %s.xy) * %s.zw;\n", bounds, bounds); 176 fragBuilder->codeAppendf("\t\tdelta = min(delta, vec2(1.0, 1.0) - delta);\n"); 177 fragBuilder->codeAppendf("\t\tdelta = delta * %s;\n", 180 fragBuilder->codeAppend("\t\tfloat weight = 0.0;\n"); 181 fragBuilder->codeAppend("\t\tif (delta.s < 2.0 && delta.t < 2.0) {\n"); 182 fragBuilder->codeAppend("\t\t\tdelta = vec2(2.0, 2.0) - delta;\n") [all...] |
/external/skia/src/gpu/effects/ |
GrShadowGeoProc.cpp | 25 GrGLSLPPFragmentBuilder* fragBuilder = args.fFragBuilder; 29 fragBuilder->codeAppend("vec4 shadowParams;"); 46 fragBuilder->codeAppend("float d = length(shadowParams.xy);"); 47 fragBuilder->codeAppend("float distance = shadowParams.z * (1.0 - d);"); 49 fragBuilder->codeAppend("float factor = 1.0 - clamp(distance, 0.0, shadowParams.w);"); 50 fragBuilder->codeAppend("factor = exp(-factor * factor * 4.0) - 0.018;"); 51 fragBuilder->codeAppendf("%s = vec4(factor);",
|
GrDistanceFieldGeoProc.cpp | 35 GrGLSLPPFragmentBuilder* fragBuilder = args.fFragBuilder; 97 fragBuilder->codeAppendf("highp vec2 uv = %s;\n", uv.fsIn()); 99 fragBuilder->codeAppend("\tfloat texColor = "); 100 fragBuilder->appendTextureLookup(args.fTexSamplers[0], 103 fragBuilder->codeAppend(".r;\n"); 104 fragBuilder->codeAppend("\tfloat distance = " 108 fragBuilder->codeAppendf("distance -= %s;", distanceAdjustUniName); 111 fragBuilder->codeAppend("float afwidth;"); 119 fragBuilder->codeAppendf("afwidth = abs(" SK_DistanceFieldAAFactor "*dFdx(%s.x));", 123 fragBuilder->codeAppendf("afwidth = abs(" SK_DistanceFieldAAFactor "*dFdy(%s.y));" [all...] |
GrConvexPolyEffect.cpp | 108 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 112 fragBuilder->codeAppend("\t\tfloat xSub, ySub;\n"); 113 fragBuilder->codeAppendf("\t\txSub = min(sk_FragCoord.x - %s.x, 0.0);\n", rectName); 114 fragBuilder->codeAppendf("\t\txSub += min(%s.z - sk_FragCoord.x, 0.0);\n", rectName); 115 fragBuilder->codeAppendf("\t\tySub = min(sk_FragCoord.y - %s.y, 0.0);\n", rectName); 116 fragBuilder->codeAppendf("\t\tySub += min(%s.w - sk_FragCoord.y, 0.0);\n", rectName); 119 fragBuilder->codeAppendf("\t\tfloat alpha = (1.0 + max(xSub, -1.0)) * (1.0 + max(ySub, -1.0));\n"); 121 fragBuilder->codeAppendf("\t\tfloat alpha = 1.0;\n"); 122 fragBuilder->codeAppendf("\t\talpha *= (sk_FragCoord.x - %s.x) > -0.5 ? 1.0 : 0.0;\n", 124 fragBuilder->codeAppendf("\t\talpha *= (%s.z - sk_FragCoord.x) > -0.5 ? 1.0 : 0.0;\n" [all...] |
GrBezierEffect.cpp | 84 GrGLSLPPFragmentBuilder* fragBuilder = args.fFragBuilder; 86 this->setupUniformColor(fragBuilder, uniformHandler, args.fOutputColor, &fColorUniform); 126 fragBuilder->declAppend(edgeAlpha); 127 fragBuilder->declAppend(dklmdx); 128 fragBuilder->declAppend(dklmdy); 129 fragBuilder->declAppend(dfdx); 130 fragBuilder->declAppend(dfdy); 131 fragBuilder->declAppend(gF); 132 fragBuilder->declAppend(gFM); 133 fragBuilder->declAppend(func) [all...] |
GrRRectEffect.cpp | 175 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 193 fragBuilder->codeAppendf("vec2 dxy0 = %s.xy - sk_FragCoord.xy;", rectName); 194 fragBuilder->codeAppendf("vec2 dxy1 = sk_FragCoord.xy - %s.zw;", rectName); 195 fragBuilder->codeAppend("vec2 dxy = max(max(dxy0, dxy1), 0.0);"); 196 fragBuilder->codeAppendf("float alpha = %s;", clampedCircleDistance.c_str()); 199 fragBuilder->codeAppendf("vec2 dxy = max(%s.xy - sk_FragCoord.xy, 0.0);", 201 fragBuilder->codeAppendf("float rightAlpha = clamp(%s.z - sk_FragCoord.x, 0.0, 1.0);", 203 fragBuilder->codeAppendf("float bottomAlpha = clamp(%s.w - sk_FragCoord.y, 0.0, 1.0);", 205 fragBuilder->codeAppendf("float alpha = bottomAlpha * rightAlpha * %s;", 209 fragBuilder->codeAppendf("vec2 dxy = max(vec2(sk_FragCoord.x - %s.z, [all...] |
GrSRGBEffect.cpp | 19 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 27 fragBuilder->emitFunction(kFloat_GrSLType, 36 fragBuilder->emitFunction(kFloat_GrSLType, 50 fragBuilder->codeAppendf("vec4 color = %s;", args.fInputColor); 52 fragBuilder->codeAppendf("float nonZeroAlpha = max(color.a, 0.00001);"); 53 fragBuilder->codeAppendf("color = vec4(color.rgb / nonZeroAlpha, color.a);"); 55 fragBuilder->codeAppendf("color = vec4(%s(color.r), %s(color.g), %s(color.b), color.a);", 60 fragBuilder->codeAppendf("color = vec4(color.rgb, 1) * color.a;"); 62 fragBuilder->codeAppendf("%s = color;", args.fOutputColor);
|
GrBicubicEffect.cpp | 55 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 56 SkString coords2D = fragBuilder->ensureCoords2D(args.fTransformedCoords[0]); 76 fragBuilder->codeAppend("mat4 kMitchellCoefficients = mat4(" 81 fragBuilder->codeAppendf("vec2 coord = %s - %s * vec2(0.5);", coords2D.c_str(), imgInc); 86 fragBuilder->codeAppendf("coord /= %s;", imgInc); 87 fragBuilder->codeAppend("vec2 f = fract(coord);"); 88 fragBuilder->codeAppendf("coord = (coord - f + vec2(0.5)) * %s;", imgInc); 89 fragBuilder->codeAppend("vec4 wx = kMitchellCoefficients * vec4(1.0, f.x, f.x * f.x, f.x * f.x * f.x);"); 90 fragBuilder->codeAppend("vec4 wy = kMitchellCoefficients * vec4(1.0, f.y, f.y * f.y, f.y * f.y * f.y);"); 91 fragBuilder->codeAppend("vec4 rowColors[4];") [all...] |
GrNonlinearColorSpaceXformEffect.cpp | 20 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 67 fragBuilder->emitFunction(kFloat_GrSLType, fnName, SK_ARRAY_COUNT(gTransferFnFuncArgs), 74 fragBuilder->codeAppendf("vec4 color = %s;", args.fInputColor); 77 fragBuilder->codeAppendf("float nonZeroAlpha = max(color.a, 0.00001);"); 78 fragBuilder->codeAppendf("color = vec4(color.rgb / nonZeroAlpha, nonZeroAlpha);"); 82 fragBuilder->codeAppendf("color.r = %s(color.r);", tfFuncNames[0].c_str()); 83 fragBuilder->codeAppendf("color.g = %s(color.g);", tfFuncNames[0].c_str()); 84 fragBuilder->codeAppendf("color.b = %s(color.b);", tfFuncNames[0].c_str()); 90 fragBuilder->codeAppendf( 96 fragBuilder->codeAppendf("color.r = %s(color.r);", tfFuncNames[1].c_str()) [all...] |
GrBlurredEdgeFragmentProcessor.cpp | 23 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 27 fragBuilder->codeAppendf(
|
GrGaussianConvolutionFragmentProcessor.cpp | 59 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 60 SkString coords2D = fragBuilder->ensureCoords2D(args.fTransformedCoords[0]); 62 fragBuilder->codeAppendf("%s = vec4(0, 0, 0, 0);", args.fOutputColor); 67 fragBuilder->codeAppendf("vec2 coord = %s - %d.0 * %s;", coords2D.c_str(), ce.radius(), imgInc); 68 fragBuilder->codeAppend("vec2 coordSampled = vec2(0, 0);"); 79 fragBuilder->codeAppend("coordSampled = coord;"); 89 fragBuilder->codeAppendf("coordSampled.%s = clamp(coord.%s, %s.x, %s.y);\n", 94 fragBuilder->codeAppendf("coordSampled.%s = " 100 fragBuilder->codeAppendf("if (coord.%s >= %s.x && coord.%s <= %s.y) {", 109 fragBuilder->codeAppendf("%s += ", args.fOutputColor) [all...] |
GrSimpleTextureEffect.cpp | 23 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 28 fragBuilder->ensureCoords2D(args.fTransformedCoords[0]); 29 fragBuilder->codeAppendf( 33 fragBuilder->getProgramBuilder()->samplerVariable(args.fTexSamplers[0]).c_str(), 35 fragBuilder->getProgramBuilder()->samplerSwizzle(args.fTexSamplers[0]).c_str(),
|
GrMatrixConvolutionEffect.cpp | 71 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 72 SkString coords2D = fragBuilder->ensureCoords2D(args.fTransformedCoords[0]); 73 fragBuilder->codeAppend("vec4 sum = vec4(0, 0, 0, 0);"); 74 fragBuilder->codeAppendf("vec2 coord = %s - %s * %s;", coords2D.c_str(), kernelOffset, imgInc); 75 fragBuilder->codeAppend("vec4 c;"); 80 GrGLSLShaderBuilder::ShaderBlock block(fragBuilder); 83 fragBuilder->codeAppendf("float k = %s[%d]%s;", kernel, offset / 4, 87 fDomain.sampleTexture(fragBuilder, 95 fragBuilder->codeAppend("c.rgb /= c.a;"); 96 fragBuilder->codeAppend("c.rgb = clamp(c.rgb, 0.0, 1.0);") [all...] |
GrConstColorProcessor.cpp | 19 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 31 fragBuilder->codeAppendf("%s = %s;", args.fOutputColor, colorUni); 34 fragBuilder->codeAppendf("%s = %s * %s;", args.fOutputColor, args.fInputColor, 38 fragBuilder->codeAppendf("%s = %s.a * %s;", args.fOutputColor, args.fInputColor,
|
GrBitmapTextGeoProc.cpp | 42 GrGLSLPPFragmentBuilder* fragBuilder = args.fFragBuilder; 47 this->setupUniformColor(fragBuilder, uniformHandler, args.fOutputColor, 64 fragBuilder->codeAppendf("%s = ", args.fOutputColor); 65 fragBuilder->appendTextureLookupAndModulate(args.fOutputColor, 69 fragBuilder->codeAppend(";"); 70 fragBuilder->codeAppendf("%s = vec4(1);", args.fOutputCoverage); 72 fragBuilder->codeAppendf("%s = ", args.fOutputCoverage); 73 fragBuilder->appendTextureLookup(args.fTexSamplers[0], v.fsIn(), kVec2f_GrSLType); 74 fragBuilder->codeAppend(";");
|
/external/skia/src/core/ |
SkNormalMapSource.cpp | 38 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; 48 fragBuilder->codeAppendf("vec3 normal = normalize(%s.rgb - vec3(0.5));", 52 fragBuilder->codeAppend( "if (abs(normal.z) > 0.999) {"); 53 fragBuilder->codeAppendf(" %s = normalize(vec4(0.0, 0.0, normal.z, 0.0));", 60 fragBuilder->codeAppend( "} else {"); 61 fragBuilder->codeAppendf(" vec2 transformed = %s * normal.xy;", 63 fragBuilder->codeAppend( " float scalingFactorSquared = " 67 fragBuilder->codeAppendf(" %s = vec4(transformed*inversesqrt(scalingFactorSquared)," 70 fragBuilder->codeAppend( "}");
|