Commit b0c217ba by Ian Elliott Committed by Commit Bot

Disable GL_EXT_shader_framebuffer_fetch_non_coherent on Arm/QCOM

Thie is a shorter-term work-around to games not checking extensions properly. Bug: b/177320565 Bug: b/186643966 Bug: b/186783762 Change-Id: Ic348396db1d081925cd9747cdd9406f5929313b9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2894407Reviewed-by: 's avatarCharlie Lao <cclao@google.com> Reviewed-by: 's avatarCody Northrop <cnorthrop@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
parent e601181d
...@@ -874,10 +874,18 @@ void RendererVk::ensureCapsInitialized() const ...@@ -874,10 +874,18 @@ void RendererVk::ensureCapsInitialized() const
mNativeCaps.subPixelBits = limitsVk.subPixelPrecisionBits; mNativeCaps.subPixelBits = limitsVk.subPixelPrecisionBits;
// Important games are not checking supported extensions properly, and are confusing the
// GL_EXT_shader_framebuffer_fetch_non_coherent as the GL_EXT_shader_framebuffer_fetch
// extension. Therefore, don't enable the extension on Arm and Qualcomm.
// https://issuetracker.google.com/issues/186643966
if (!(IsARM(mPhysicalDeviceProperties.vendorID) ||
IsQualcomm(mPhysicalDeviceProperties.vendorID)))
{
// Enable GL_EXT_shader_framebuffer_fetch_non_coherent // Enable GL_EXT_shader_framebuffer_fetch_non_coherent
// For supporting this extension, gl::IMPLEMENTATION_MAX_DRAW_BUFFERS is used. // For supporting this extension, gl::IMPLEMENTATION_MAX_DRAW_BUFFERS is used.
mNativeExtensions.shaderFramebufferFetchNonCoherentEXT = mNativeExtensions.shaderFramebufferFetchNonCoherentEXT =
mNativeCaps.maxDrawBuffers >= gl::IMPLEMENTATION_MAX_DRAW_BUFFERS; mNativeCaps.maxDrawBuffers >= gl::IMPLEMENTATION_MAX_DRAW_BUFFERS;
}
// Enable Program Binary extension. // Enable Program Binary extension.
mNativeExtensions.getProgramBinaryOES = true; mNativeExtensions.getProgramBinaryOES = true;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment