Lines Matching refs:fragBuilder

149             GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder;
153 fragBuilder->codeAppend("float4 circleEdge;");
156 fragBuilder->codeAppend("half3 clipPlane;");
161 fragBuilder->codeAppend("half3 isectPlane;");
167 fragBuilder->codeAppend("half3 unionPlane;");
173 fragBuilder->codeAppend("float4 roundCapCenters;");
185 fragBuilder->codeAppendf("half4 %s;", args.fOutputColor);
198 fragBuilder->codeAppend("float d = length(circleEdge.xy);");
199 fragBuilder->codeAppend("half distanceToOuterEdge = half(circleEdge.z * (1.0 - d));");
200 fragBuilder->codeAppend("half edgeAlpha = saturate(distanceToOuterEdge);");
202 fragBuilder->codeAppend(
204 fragBuilder->codeAppend("half innerAlpha = saturate(distanceToInnerEdge);");
205 fragBuilder->codeAppend("edgeAlpha *= innerAlpha;");
209 fragBuilder->codeAppend(
213 fragBuilder->codeAppend(
218 fragBuilder->codeAppend(
222 fragBuilder->codeAppend("edgeAlpha *= clip;");
227 fragBuilder->codeAppendf(
237 fragBuilder->codeAppendf("half4 %s = half4(edgeAlpha);", args.fOutputCoverage);
337 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder;
341 fragBuilder->codeAppend("float4 circleEdge;");
345 fragBuilder->codeAppend("float4 dashParams;");
413 fragBuilder->codeAppendf("half4 wrapDashes = %s;", wrapDashes.fsIn());
414 fragBuilder->codeAppendf("half lastIntervalLength = %s;", lastIntervalLength.fsIn());
417 fragBuilder->codeAppendf("half4 %s;", args.fOutputColor);
437 SkString fnName = fragBuilder->getMangledFunctionName("coverage_from_dash_edge");
438 fragBuilder->emitFunction(kFloat_GrSLType, fnName.c_str(),
445 fragBuilder->codeAppend(R"(
470 fragBuilder->codeAppendf(R"(
483 fragBuilder->codeAppendf(R"(
496 fragBuilder->codeAppendf(R"(
504 fragBuilder->codeAppendf("half4 %s = half4(edgeAlpha);", args.fOutputCoverage);
618 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder;
620 fragBuilder->codeAppendf("half4 %s;", args.fOutputColor);
645 fragBuilder->codeAppendf("float2 offset = %s.xy;", ellipseOffsets.fsIn());
647 fragBuilder->codeAppendf("offset *= %s.xy;", ellipseRadii.fsIn());
649 fragBuilder->codeAppend("float test = dot(offset, offset) - 1.0;");
651 fragBuilder->codeAppendf("float2 grad = 2.0*offset*(%s.z*%s.xy);",
654 fragBuilder->codeAppendf("float2 grad = 2.0*offset*%s.xy;", ellipseRadii.fsIn());
656 fragBuilder->codeAppend("float grad_dot = dot(grad, grad);");
660 fragBuilder->codeAppend("grad_dot = max(grad_dot, 1.1755e-38);");
662 fragBuilder->codeAppend("grad_dot = max(grad_dot, 6.1036e-5);");
665 fragBuilder->codeAppendf("float invlen = %s.z*inversesqrt(grad_dot);",
668 fragBuilder->codeAppend("float invlen = inversesqrt(grad_dot);");
670 fragBuilder->codeAppend("float edgeAlpha = saturate(0.5-test*invlen);");
674 fragBuilder->codeAppendf("offset = %s.xy*%s.zw;", ellipseOffsets.fsIn(),
676 fragBuilder->codeAppend("test = dot(offset, offset) - 1.0;");
678 fragBuilder->codeAppendf("grad = 2.0*offset*(%s.z*%s.zw);",
681 fragBuilder->codeAppendf("grad = 2.0*offset*%s.zw;", ellipseRadii.fsIn());
683 fragBuilder->codeAppend("grad_dot = dot(grad, grad);");
685 fragBuilder->codeAppend("grad_dot = max(grad_dot, 6.1036e-5);");
688 fragBuilder->codeAppendf("invlen = %s.z*inversesqrt(grad_dot);",
691 fragBuilder->codeAppend("invlen = inversesqrt(grad_dot);");
693 fragBuilder->codeAppend("edgeAlpha *= saturate(0.5+test*invlen);");
696 fragBuilder->codeAppendf("half4 %s = half4(half(edgeAlpha));", args.fOutputCoverage);
824 GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder;
825 fragBuilder->codeAppendf("half4 %s;", args.fOutputColor);
840 fragBuilder->codeAppendf("float2 scaledOffset = %s.xy;", offsets0.fsIn());
841 fragBuilder->codeAppend("float test = dot(scaledOffset, scaledOffset) - 1.0;");
842 fragBuilder->codeAppendf("float2 duvdx = dFdx(%s.xy);", offsets0.fsIn());
843 fragBuilder->codeAppendf("float2 duvdy = dFdy(%s.xy);", offsets0.fsIn());
844 fragBuilder->codeAppendf(
849 fragBuilder->codeAppendf("grad *= %s.z;", offsets0.fsIn());
852 fragBuilder->codeAppend("float grad_dot = 4.0*dot(grad, grad);");
855 fragBuilder->codeAppend("grad_dot = max(grad_dot, 1.1755e-38);");
857 fragBuilder->codeAppend("grad_dot = max(grad_dot, 6.1036e-5);");
859 fragBuilder->codeAppend("float invlen = inversesqrt(grad_dot);");
861 fragBuilder->codeAppendf("invlen *= %s.z;", offsets0.fsIn());
865 fragBuilder->codeAppend("float edgeAlpha = saturate(1.0-test*invlen);");
866 fragBuilder->codeAppend("edgeAlpha *= saturate(1.0+test*invlen);");
868 fragBuilder->codeAppend("float edgeAlpha = saturate(0.5-test*invlen);");
873 fragBuilder->codeAppendf("scaledOffset = %s.xy;", offsets1.fsIn());
874 fragBuilder->codeAppend("test = dot(scaledOffset, scaledOffset) - 1.0;");
875 fragBuilder->codeAppendf("duvdx = float2(dFdx(%s));", offsets1.fsIn());
876 fragBuilder->codeAppendf("duvdy = float2(dFdy(%s));", offsets1.fsIn());
877 fragBuilder->codeAppendf(
882 fragBuilder->codeAppendf("grad *= %s.z;", offsets0.fsIn());
884 fragBuilder->codeAppend("grad_dot = 4.0*dot(grad, grad);");
886 fragBuilder->codeAppend("grad_dot = max(grad_dot, 6.1036e-5);");
888 fragBuilder->codeAppend("invlen = inversesqrt(grad_dot);");
890 fragBuilder->codeAppendf("invlen *= %s.z;", offsets0.fsIn());
892 fragBuilder->codeAppend("edgeAlpha *= saturate(0.5+test*invlen);");
895 fragBuilder->codeAppendf("half4 %s = half4(half(edgeAlpha));", args.fOutputCoverage);