Avoid flat interpolation on ANGLE

Bug: skia:
Change-Id: I12bea94bee9d90b92ed640c5b69853cb47d7f2e8
Reviewed-on: https://skia-review.googlesource.com/c/174066
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
This commit is contained in:
Michael Ludwig 2018-12-03 16:16:18 -05:00 committed by Skia Commit-Bot
parent 1a9956e76b
commit 240af98c65

View File

@ -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;