From 240af98c655a92c11bbf4541c94a4c0f62283bef Mon Sep 17 00:00:00 2001 From: Michael Ludwig Date: Mon, 3 Dec 2018 16:16:18 -0500 Subject: [PATCH] Avoid flat interpolation on ANGLE Bug: skia: Change-Id: I12bea94bee9d90b92ed640c5b69853cb47d7f2e8 Reviewed-on: https://skia-review.googlesource.com/c/174066 Reviewed-by: Brian Salomon Commit-Queue: Michael Ludwig --- src/gpu/gl/GrGLCaps.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/gpu/gl/GrGLCaps.cpp b/src/gpu/gl/GrGLCaps.cpp index 1f2d8f3967..73e1f9dc25 100644 --- a/src/gpu/gl/GrGLCaps.cpp +++ b/src/gpu/gl/GrGLCaps.cpp @@ -735,9 +735,11 @@ void GrGLCaps::initGLSL(const GrGLContextInfo& ctxInfo, const GrGLInterface* gli shaderCaps->fFlatInterpolationSupport = ctxInfo.glslGeneration() >= k330_GrGLSLGeneration; // This is the value for GLSL ES 3.0. } - // Flat interpolation appears to be slow on Qualcomm GPUs (tested Adreno 405 and 530). + // Flat interpolation appears to be slow on Qualcomm GPUs (tested Adreno 405 and 530). ANGLE + // Avoid on ANGLE too, it inserts a geometry shader into the pipeline to implement flat interp. shaderCaps->fPreferFlatInterpolation = shaderCaps->fFlatInterpolationSupport && - kQualcomm_GrGLVendor != ctxInfo.vendor(); + kQualcomm_GrGLVendor != ctxInfo.vendor() && + kANGLE_GrGLDriver != ctxInfo.driver(); if (kGL_GrGLStandard == standard) { shaderCaps->fNoPerspectiveInterpolationSupport = ctxInfo.glslGeneration() >= k130_GrGLSLGeneration;