Index: third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp |
diff --git a/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp b/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp |
index f86a72c3a2e0aa0845052030b27b6a27259b1d2c..5e52cbf43e9de39e0bf2fee0ead29aee6fcfa51f 100644 |
--- a/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp |
+++ b/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp |
@@ -485,7 +485,13 @@ bool DrawingBuffer::initialize(const IntSize& size, bool useMultisampling) |
m_antiAliasingMode = ScreenSpaceAntialiasing; |
} |
} |
- m_storageTextureSupported = m_webGLVersion > WebGL1 || m_extensionsUtil->supportsExtension("GL_EXT_texture_storage"); |
+ // TODO(dshwang): enable storage texture on all platform. crbug.com/557848 |
+ // Linux ATI bot fails WebglConformance.conformance_textures_misc_tex_image_webgl |
+ // So use storage texture only if ScreenSpaceAntialiasing is enabled, |
+ // because ScreenSpaceAntialiasing is much faster with storage texture. |
+ m_storageTextureSupported = (m_webGLVersion > WebGL1 |
+ || m_extensionsUtil->supportsExtension("GL_EXT_texture_storage")) |
+ && m_antiAliasingMode == ScreenSpaceAntialiasing; |
m_sampleCount = std::min(4, maxSampleCount); |
m_gl->GenFramebuffers(1, &m_fbo); |