Remove a redundant position assignment from stroke tessellation shaders
Bug: skia:10419
Change-Id: I74429ceb1fc03e68872c74eb62f64675e1bd55cc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/327476
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
diff --git a/src/gpu/tessellate/GrStrokeTessellateShader.cpp b/src/gpu/tessellate/GrStrokeTessellateShader.cpp
index dab581a..a012a7a 100644
--- a/src/gpu/tessellate/GrStrokeTessellateShader.cpp
+++ b/src/gpu/tessellate/GrStrokeTessellateShader.cpp
@@ -697,18 +697,17 @@
}
if (localEdgeID == 0) {
- // The first local edge of each section uses the provided P[0] and tan0. This ensures
- // continuous rotation across chops made by the vertex shader as well as crack-free
- // seaming between patches.
- position = P[0];
+ // The first local edge of each section uses the provided tan0. This ensures continuous
+ // rotation across chops made by the vertex shader as well as crack-free seaming between
+ // patches. (NOTE: position is always equal to P[0] here when localEdgeID==0.)
tangent = tan0;
}
if (gl_TessCoord.x == 1) {
// The final edge of the quad strip always uses the provided endPt and endTan. This
// ensures crack-free seaming between patches.
- position = tcsEndPtEndTan.xy;
tangent = tcsEndPtEndTan.zw;
+ position = tcsEndPtEndTan.xy;
}
// Determine how far to outset our vertex orthogonally from the curve.