mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
[Impeller] switch fallback default from ImpellerVulkan to SkiaOpenGLES (flutter/engine#51071)
Unblocks shipping Impeller on Android before GLES is ready.
This commit is contained in:
parent
f026d97f42
commit
65f3a2348b
@ -236,6 +236,9 @@ AndroidRenderingAPI FlutterMain::SelectedRenderingAPI(
|
||||
"software rendering or disable impeller.";
|
||||
return AndroidRenderingAPI::kSoftware;
|
||||
}
|
||||
constexpr AndroidRenderingAPI kVulkanUnsupportedFallback =
|
||||
AndroidRenderingAPI::kSkiaOpenGLES;
|
||||
|
||||
// Debug/Profile only functionality for testing a specific
|
||||
// backend configuration.
|
||||
#ifndef FLUTTER_RELEASE
|
||||
@ -258,7 +261,7 @@ AndroidRenderingAPI FlutterMain::SelectedRenderingAPI(
|
||||
// feature.
|
||||
int api_level = android_get_device_api_level();
|
||||
if (api_level < kMinimumAndroidApiLevelForVulkan) {
|
||||
return AndroidRenderingAPI::kImpellerOpenGLES;
|
||||
return kVulkanUnsupportedFallback;
|
||||
}
|
||||
// Determine if Vulkan is supported by creating a Vulkan context and
|
||||
// checking if it is valid.
|
||||
@ -268,7 +271,7 @@ AndroidRenderingAPI FlutterMain::SelectedRenderingAPI(
|
||||
/*enable_vulkan_gpu_tracing=*/false,
|
||||
/*quiet=*/true);
|
||||
if (!vulkan_backend->IsValid()) {
|
||||
return AndroidRenderingAPI::kImpellerOpenGLES;
|
||||
return kVulkanUnsupportedFallback;
|
||||
}
|
||||
return AndroidRenderingAPI::kImpellerVulkan;
|
||||
}
|
||||
|
||||
@ -22,7 +22,7 @@ TEST(AndroidPlatformView, SelectsVulkanBasedOnApiLevel) {
|
||||
AndroidRenderingAPI::kImpellerVulkan);
|
||||
} else {
|
||||
EXPECT_EQ(FlutterMain::SelectedRenderingAPI(settings),
|
||||
AndroidRenderingAPI::kImpellerOpenGLES);
|
||||
AndroidRenderingAPI::kSkiaOpenGLES);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user