Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(508)

Unified Diff: src/gpu/effects/GrDistanceFieldGeoProc.cpp

Issue 1885863004: Refactor how we store and use samplers in Ganesh (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/gpu/effects/GrDistanceFieldGeoProc.cpp
diff --git a/src/gpu/effects/GrDistanceFieldGeoProc.cpp b/src/gpu/effects/GrDistanceFieldGeoProc.cpp
index 0c4125d962083afe771dcb9ac94f4768c2f0dec7..82b845e8ba4dcd2cf5e07dc7493e9e16f9650483 100644
--- a/src/gpu/effects/GrDistanceFieldGeoProc.cpp
+++ b/src/gpu/effects/GrDistanceFieldGeoProc.cpp
@@ -101,7 +101,7 @@ public:
fragBuilder->codeAppendf("vec2 uv = %s;\n", uv.fsIn());
fragBuilder->codeAppend("\tfloat texColor = ");
- fragBuilder->appendTextureLookup(args.fTexSamplers[0],
+ fragBuilder->appendTextureLookup(uniformHandler->getSampler(args.fTexSamplers[0]),
"uv",
kVec2f_GrSLType);
fragBuilder->codeAppend(".r;\n");
@@ -338,7 +338,7 @@ public:
fragBuilder->codeAppendf("vec2 uv = %s;", v.fsIn());
fragBuilder->codeAppend("float texColor = ");
- fragBuilder->appendTextureLookup(args.fTexSamplers[0],
+ fragBuilder->appendTextureLookup(uniformHandler->getSampler(args.fTexSamplers[0]),
"uv",
kVec2f_GrSLType);
fragBuilder->codeAppend(".r;");
@@ -605,22 +605,23 @@ public:
fragBuilder->codeAppend("vec2 offset = delta*Jdx;");
}
+ const GrGLSLSampler& sampler = uniformHandler->getSampler(args.fTexSamplers[0]);
// green is distance to uv center
fragBuilder->codeAppend("\tvec4 texColor = ");
- fragBuilder->appendTextureLookup(args.fTexSamplers[0], "uv", kVec2f_GrSLType);
+ fragBuilder->appendTextureLookup(sampler, "uv",kVec2f_GrSLType);
fragBuilder->codeAppend(";\n");
fragBuilder->codeAppend("\tvec3 distance;\n");
fragBuilder->codeAppend("\tdistance.y = texColor.r;\n");
// red is distance to left offset
fragBuilder->codeAppend("\tvec2 uv_adjusted = uv - offset;\n");
fragBuilder->codeAppend("\ttexColor = ");
- fragBuilder->appendTextureLookup(args.fTexSamplers[0], "uv_adjusted", kVec2f_GrSLType);
+ fragBuilder->appendTextureLookup(sampler, "uv_adjusted", kVec2f_GrSLType);
fragBuilder->codeAppend(";\n");
fragBuilder->codeAppend("\tdistance.x = texColor.r;\n");
// blue is distance to right offset
fragBuilder->codeAppend("\tuv_adjusted = uv + offset;\n");
fragBuilder->codeAppend("\ttexColor = ");
- fragBuilder->appendTextureLookup(args.fTexSamplers[0], "uv_adjusted", kVec2f_GrSLType);
+ fragBuilder->appendTextureLookup(sampler, "uv_adjusted", kVec2f_GrSLType);
fragBuilder->codeAppend(";\n");
fragBuilder->codeAppend("\tdistance.z = texColor.r;\n");

Powered by Google App Engine
This is Rietveld 408576698