diff options
author | 2017-03-31 10:59:10 -0400 | |
---|---|---|
committer | 2017-03-31 15:43:51 +0000 | |
commit | 92d7ccafdf896cf19764e025873d13315a76842d (patch) | |
tree | e6f9457d9e04283ec02dce3b4ad9001334f440f9 /src/gpu/glsl/GrGLSLVarying.cpp | |
parent | 2e491a6a113c5e16a3b7bede5fa6f588deeb928d (diff) |
Allow FPs to elevate default precision for the entire fragment program
Currently, GrConfigConversionEffect is able to round-trip on many mobile
GPUs because it uses highp for all intermediate variables (including the
texture fetch result). Separating the texture sample into a different
processor breaks that.
This is a blunt instrument, not to be used lightly.
Bug: skia:
Change-Id: I2ab365e3da79628069e2eb727c43c2bf45bfd789
Reviewed-on: https://skia-review.googlesource.com/10162
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Diffstat (limited to 'src/gpu/glsl/GrGLSLVarying.cpp')
-rw-r--r-- | src/gpu/glsl/GrGLSLVarying.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gpu/glsl/GrGLSLVarying.cpp b/src/gpu/glsl/GrGLSLVarying.cpp index 7d841f5417..ef3fe8af23 100644 --- a/src/gpu/glsl/GrGLSLVarying.cpp +++ b/src/gpu/glsl/GrGLSLVarying.cpp @@ -42,7 +42,7 @@ void GrGLSLVaryingHandler::internalAddVarying(const char* name, SkASSERT(varying); v.fType = varying->fType; - v.fPrecision = precision; + v.fPrecision = (kDefault_GrSLPrecision == precision) ? kMedium_GrSLPrecision : precision; v.fIsFlat = flat; fProgramBuilder->nameVariable(&v.fVsOut, 'v', name); v.fVisibility = kNone_GrShaderFlags; |