Home | History | Annotate | Download | only in effects

Lines Matching refs:fsBuilder

54         GrGLProcessorFragmentShaderBuilder* fsBuilder = builder->getFragmentShaderBuilder();
55 SkAssertResult(fsBuilder->enableFeature(
72 fsBuilder->codeAppend("\tvec4 texColor = ");
73 fsBuilder->appendTextureLookup(samplers[0],
76 fsBuilder->codeAppend(";\n");
77 fsBuilder->codeAppend("\tfloat distance = "
84 fsBuilder->codeAppendf("\tvec2 uv = %s;\n", fsCoordName.c_str());
85 fsBuilder->codeAppendf("\tvec2 st = uv*%s;\n", textureSizeUniName);
86 fsBuilder->codeAppend("\tfloat afwidth;\n");
89 fsBuilder->codeAppend("\tafwidth = " SK_DistanceFieldAAFactor "*dFdx(st.x);\n");
91 fsBuilder->codeAppend("\tvec2 Jdx = dFdx(st);\n");
92 fsBuilder->codeAppend("\tvec2 Jdy = dFdy(st);\n");
94 fsBuilder->codeAppend("\tvec2 uv_grad;\n");
97 fsBuilder->codeAppend("\tfloat uv_len2 = dot(uv, uv);\n");
98 fsBuilder->codeAppend("\tif (uv_len2 < 0.0001) {\n");
99 fsBuilder->codeAppend("\t\tuv_grad = vec2(0.7071, 0.7071);\n");
100 fsBuilder->codeAppend("\t} else {\n");
101 fsBuilder->codeAppend("\t\tuv_grad = uv*inversesqrt(uv_len2);\n");
102 fsBuilder->codeAppend("\t}\n");
104 fsBuilder->codeAppend("\tuv_grad = normalize(uv);\n");
106 fsBuilder->codeAppend("\tvec2 grad = vec2(uv_grad.x*Jdx.x + uv_grad.y*Jdy.x,\n");
107 fsBuilder->codeAppend("\t uv_grad.x*Jdx.y + uv_grad.y*Jdy.y);\n");
110 fsBuilder->codeAppend("\tafwidth = " SK_DistanceFieldAAFactor "*length(grad);\n");
112 fsBuilder->codeAppend("\tfloat val = smoothstep(-afwidth, afwidth, distance);\n");
122 fsBuilder->codeAppendf("\tuv = vec2(val, %s);\n", luminanceUniName);
123 fsBuilder->codeAppend("\tvec4 gammaColor = ");
124 fsBuilder->appendTextureLookup(samplers[1], "uv", kVec2f_GrSLType);
125 fsBuilder->codeAppend(";\n");
126 fsBuilder->codeAppend("\tval = gammaColor.r;\n");
129 fsBuilder->codeAppendf("\t%s = %s;\n", outputColor,
298 GrGLProcessorFragmentShaderBuilder* fsBuilder = builder->getFragmentShaderBuilder();
300 SkAssertResult(fsBuilder->enableFeature(
304 fsBuilder->codeAppendf("\tvec2 uv = %s;\n", fsCoordName.c_str());
305 fsBuilder->codeAppendf("\tvec2 st = uv*%s.xy;\n", textureSizeUniName);
308 fsBuilder->codeAppend("\tfloat dx = dFdx(st.x);\n");
309 fsBuilder->codeAppendf("\tvec2 offset = vec2(dx*%s.z, 0.0);\n", textureSizeUniName);
311 fsBuilder->codeAppend("\tvec2 Jdx = dFdx(st);\n");
312 fsBuilder->codeAppend("\tvec2 Jdy = dFdy(st);\n");
313 fsBuilder->codeAppendf("\tvec2 offset = %s.z*Jdx;\n", textureSizeUniName);
317 fsBuilder->codeAppend("\tvec4 texColor = ");
318 fsBuilder->appendTextureLookup(samplers[0], "uv", kVec2f_GrSLType);
319 fsBuilder->codeAppend(";\n");
320 fsBuilder->codeAppend("\tvec3 distance;\n");
321 fsBuilder->codeAppend("\tdistance.y = texColor.r;\n");
323 fsBuilder->codeAppend("\tvec2 uv_adjusted = uv - offset;\n");
324 fsBuilder->codeAppend("\ttexColor = ");
325 fsBuilder->appendTextureLookup(samplers[0], "uv_adjusted", kVec2f_GrSLType);
326 fsBuilder->codeAppend(";\n");
327 fsBuilder->codeAppend("\tdistance.x = texColor.r;\n");
329 fsBuilder->codeAppend("\tuv_adjusted = uv + offset;\n");
330 fsBuilder->codeAppend("\ttexColor = ");
331 fsBuilder->appendTextureLookup(samplers[0], "uv_adjusted", kVec2f_GrSLType);
332 fsBuilder->codeAppend(";\n");
333 fsBuilder->codeAppend("\tdistance.z = texColor.r;\n");
335 fsBuilder->codeAppend("\tdistance = "
347 fsBuilder->codeAppend("\tfloat afwidth;\n");
350 fsBuilder->codeAppend("\tafwidth = " SK_DistanceFieldAAFactor "*dx;\n");
352 fsBuilder->codeAppend("\tvec2 uv_grad;\n");
355 fsBuilder->codeAppend("\tfloat uv_len2 = dot(uv, uv);\n");
356 fsBuilder->codeAppend("\tif (uv_len2 < 0.0001) {\n");
357 fsBuilder->codeAppend("\t\tuv_grad = vec2(0.7071, 0.7071);\n");
358 fsBuilder->codeAppend("\t} else {\n");
359 fsBuilder->codeAppend("\t\tuv_grad = uv*inversesqrt(uv_len2);\n");
360 fsBuilder->codeAppend("\t}\n");
362 fsBuilder->codeAppend("\tuv_grad = normalize(uv);\n");
364 fsBuilder->codeAppend("\tvec2 grad = vec2(uv_grad.x*Jdx.x + uv_grad.y*Jdy.x,\n");
365 fsBuilder->codeAppend("\t uv_grad.x*Jdx.y + uv_grad.y*Jdy.y);\n");
368 fsBuilder->codeAppend("\tafwidth = " SK_DistanceFieldAAFactor "*length(grad);\n");
371 fsBuilder->codeAppend("\tvec4 val = vec4(smoothstep(vec3(-afwidth), vec3(afwidth), distance), 1.0);\n");
380 fsBuilder->codeAppendf("\tuv = vec2(val.x, %s.x);\n", textColorUniName);
381 fsBuilder->codeAppend("\tvec4 gammaColor = ");
382 fsBuilder->appendTextureLookup(samplers[1], "uv", kVec2f_GrSLType);
383 fsBuilder->codeAppend(";\n");
384 fsBuilder->codeAppend("\tval.x = gammaColor.r;\n");
386 fsBuilder->codeAppendf("\tuv = vec2(val.y, %s.y);\n", textColorUniName);
387 fsBuilder->codeAppend("\tgammaColor = ");
388 fsBuilder->appendTextureLookup(samplers[1], "uv", kVec2f_GrSLType);
389 fsBuilder->codeAppend(";\n");
390 fsBuilder->codeAppend("\tval.y = gammaColor.r;\n");
392 fsBuilder->codeAppendf("\tuv = vec2(val.z, %s.z);\n", textColorUniName);
393 fsBuilder->codeAppend("\tgammaColor = ");
394 fsBuilder->appendTextureLookup(samplers[1], "uv", kVec2f_GrSLType);
395 fsBuilder->codeAppend(";\n");
396 fsBuilder->codeAppend("\tval.z = gammaColor.r;\n");
398 fsBuilder->codeAppendf("\t%s = %s;\n", outputColor,