Index: src/gpu/gl/GrGLCaps.cpp |
diff --git a/src/gpu/gl/GrGLCaps.cpp b/src/gpu/gl/GrGLCaps.cpp |
index 9a2a5acad9fe9142229cf6d7d76fa563cb864d95..ae6e6132b1b8e80b2c4834104131c1199561c0be 100644 |
--- a/src/gpu/gl/GrGLCaps.cpp |
+++ b/src/gpu/gl/GrGLCaps.cpp |
@@ -281,6 +281,17 @@ void GrGLCaps::init(const GrContextOptions& contextOptions, |
ctxInfo.hasExtension("GL_OES_standard_derivatives"); |
} |
+ if (ctxInfo.hasExtension("GL_EXT_shader_pixel_local_storage")) { |
+ #define GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_FAST_SIZE_EXT 0x8F63 |
+ GR_GL_GetIntegerv(gli, GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_FAST_SIZE_EXT, |
+ &glslCaps->fPixelLocalStorageSize); |
+ glslCaps->fPLSPathRenderingSupport = glslCaps->fFBFetchSupport; |
+ } |
+ else { |
+ glslCaps->fPixelLocalStorageSize = 0; |
+ glslCaps->fPLSPathRenderingSupport = false; |
+ } |
+ |
/************************************************************************** |
* GrCaps fields |
**************************************************************************/ |
@@ -527,7 +538,6 @@ void GrGLCaps::initGLSL(const GrGLContextInfo& ctxInfo) { |
GrGLSLCaps* glslCaps = static_cast<GrGLSLCaps*>(fShaderCaps.get()); |
glslCaps->fGLSLGeneration = ctxInfo.glslGeneration(); |
- |
if (kGLES_GrGLStandard == standard) { |
if (ctxInfo.hasExtension("GL_EXT_shader_framebuffer_fetch")) { |
glslCaps->fFBFetchNeedsCustomOutput = (version >= GR_GL_VER(3, 0)); |