From 1422ec86f2e97323f876a267bc5dae3fbf1eac96 Mon Sep 17 00:00:00 2001 From: senorblanco Date: Thu, 11 Jun 2015 11:51:29 -0700 Subject: [PATCH] Fix for dashing shader on Mali: use highp where necessary. The varyings used to compute rect coverage need to be high precision, since they're offset by the frag coord. R=egdaniel BUG=skia:3935 Review URL: https://codereview.chromium.org/1178123004 --- src/gpu/effects/GrDashingEffect.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gpu/effects/GrDashingEffect.cpp b/src/gpu/effects/GrDashingEffect.cpp index e3e6c07084..ad6f70d96d 100644 --- a/src/gpu/effects/GrDashingEffect.cpp +++ b/src/gpu/effects/GrDashingEffect.cpp @@ -1079,13 +1079,13 @@ void GLDashingLineEffect::onEmitCode(EmitArgs& args, GrGPArgs* gpArgs) { // XY refers to dashPos, Z is the dash interval length GrGLVertToFrag inDashParams(kVec3f_GrSLType); - args.fPB->addVarying("DashParams", &inDashParams); + args.fPB->addVarying("DashParams", &inDashParams, GrSLPrecision::kHigh_GrSLPrecision); vsBuilder->codeAppendf("%s = %s;", inDashParams.vsOut(), de.inDashParams()->fName); // The rect uniform's xyzw refer to (left + 0.5, top + 0.5, right - 0.5, bottom - 0.5), // respectively. GrGLVertToFrag inRectParams(kVec4f_GrSLType); - args.fPB->addVarying("RectParams", &inRectParams); + args.fPB->addVarying("RectParams", &inRectParams, GrSLPrecision::kHigh_GrSLPrecision); vsBuilder->codeAppendf("%s = %s;", inRectParams.vsOut(), de.inRectParams()->fName); // Setup pass through color