Remove GrCoordTransform entirely
Bug: skia:10416
Change-Id: I0ca7535a0e6507e6b2a9f4682788826972c5f3b8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/300296
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
diff --git a/src/gpu/GrPathProcessor.cpp b/src/gpu/GrPathProcessor.cpp
index 2fdd97b..8371117 100644
--- a/src/gpu/GrPathProcessor.cpp
+++ b/src/gpu/GrPathProcessor.cpp
@@ -58,25 +58,17 @@
GrGLSLUniformHandler* uniformHandler,
FPCoordTransformHandler* transformHandler) {
for (int i = 0; *transformHandler; ++*transformHandler, ++i) {
- const auto& fp = transformHandler->get();
-
- GrShaderVar fragmentVar;
- GrShaderVar transformVar;
- if (fp.isSampledWithExplicitCoords()) {
- transformHandler->omitCoordsForCurrCoordTransform();
- } else {
- SkString strVaryingName;
- strVaryingName.printf("TransformedCoord_%d", i);
- GrGLSLVarying v(kFloat2_GrSLType);
+ SkString strVaryingName;
+ strVaryingName.printf("TransformedCoord_%d", i);
+ GrGLSLVarying v(kFloat2_GrSLType);
#ifdef SK_GL
- GrGLVaryingHandler* glVaryingHandler = (GrGLVaryingHandler*)varyingHandler;
- fVaryingTransform.push_back().fHandle =
- glVaryingHandler->addPathProcessingVarying(strVaryingName.c_str(), &v)
- .toIndex();
+ GrGLVaryingHandler* glVaryingHandler = (GrGLVaryingHandler*)varyingHandler;
+ fVaryingTransform.push_back().fHandle =
+ glVaryingHandler->addPathProcessingVarying(strVaryingName.c_str(), &v)
+ .toIndex();
#endif
- fragmentVar = {SkString(v.fsIn()), kFloat2_GrSLType};
- transformHandler->specifyCoordsForCurrCoordTransform(transformVar, fragmentVar);
- }
+ GrShaderVar fragmentVar = {SkString(v.fsIn()), kFloat2_GrSLType};
+ transformHandler->specifyCoordsForCurrCoordTransform(fragmentVar);
}
}
@@ -104,7 +96,7 @@
// Varying transforms are used for non-explicitly sampled FPs. We provide a matrix
// to GL as fixed function state and it uses it to compute a varying that we pick up
- // in the FS as the output of the coord transform.
+ // in the FS as the transformed local coords.
struct TransformVarying {
VaryingHandle fHandle;
SkMatrix fCurrentValue = SkMatrix::InvalidMatrix();