Commit 28d782ef authored by Miguel Casas's avatar Miguel Casas Committed by Commit Bot

Gpu FeatureFlags: do not signal chromium_image_xr30 on GLES 3.0

Gpu FeatureInfo::FeatureFlags.chromium_image_xr30 doesn't work
on Swiftshader because it doesn't support GL_BGRA(_EXT) for
glImage2D(), making our texture uploads fail.  This failure is
legit because GLES 3.0 supports only GL_RGBA data format.

So this CL disables chromium_image_xr30 until the swiftshader
bug is addressed (adding a TODO), and also corrects the OpenGL
version where GL_EXT_texture_type_2_10_10_10_REV was inlined,
which is 3.3 and not 4.2 as I wrote erroneously before, oops!
(see http://go/gl3.3)

Bug: 808172, swiftshader:95
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: I0c6952b14ff53fb504bf292c51a8bc2ffe612918
Reviewed-on: https://chromium-review.googlesource.com/899462Reviewed-by: default avatarAntoine Labour <piman@chromium.org>
Commit-Queue: Miguel Casas <mcasas@chromium.org>
Cr-Commit-Position: refs/heads/master@{#534216}
parent 306e8326
...@@ -1079,10 +1079,12 @@ void FeatureInfo::InitializeFeatures() { ...@@ -1079,10 +1079,12 @@ void FeatureInfo::InitializeFeatures() {
feature_flags_.chromium_image_xr30 = base::mac::IsAtLeastOS10_13(); feature_flags_.chromium_image_xr30 = base::mac::IsAtLeastOS10_13();
#elif !defined(OS_WIN) #elif !defined(OS_WIN)
// TODO(mcasas): connect in Windows, https://crbug.com/803451 // TODO(mcasas): connect in Windows, https://crbug.com/803451
// XR30 support was introduced in GLES 3.0/ OpenGL 4.2, before that it was // XR30 support was introduced in GLES 3.0/ OpenGL 3.3, before that it was
// signalled via a specific extension. // signalled via a specific extension.
// TODO(mcasas): add GLES3 .0 when swiftshader supports GL_BGRA_EXT
// https://crbug.com/swiftshader/95.
feature_flags_.chromium_image_xr30 = feature_flags_.chromium_image_xr30 =
gl_version_info_->is_es3 || gl_version_info_->IsAtLeastGL(4, 2) || gl_version_info_->IsAtLeastGL(3, 3) ||
gl::HasExtension(extensions, "GL_EXT_texture_type_2_10_10_10_REV"); gl::HasExtension(extensions, "GL_EXT_texture_type_2_10_10_10_REV");
#endif #endif
if (feature_flags_.chromium_image_xr30){ if (feature_flags_.chromium_image_xr30){
......
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