aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/gl/GrGLCaps.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpu/gl/GrGLCaps.cpp')
-rw-r--r--src/gpu/gl/GrGLCaps.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/gpu/gl/GrGLCaps.cpp b/src/gpu/gl/GrGLCaps.cpp
index 0bfcc39236..d95e10ba64 100644
--- a/src/gpu/gl/GrGLCaps.cpp
+++ b/src/gpu/gl/GrGLCaps.cpp
@@ -284,6 +284,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
**************************************************************************/
@@ -531,7 +542,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));