From 1c6a055e9e539947fd24687569e58fcdcc574ef9 Mon Sep 17 00:00:00 2001 From: Aaron Clarke Date: Fri, 9 Jun 2023 13:36:16 -0700 Subject: [PATCH 1/6] [Impeller] Added helper messaging around validation usage --- impeller/renderer/backend/vulkan/BUILD.gn | 5 +++++ impeller/renderer/backend/vulkan/context_vk.cc | 11 +++++++++++ 2 files changed, 16 insertions(+) diff --git a/impeller/renderer/backend/vulkan/BUILD.gn b/impeller/renderer/backend/vulkan/BUILD.gn index 595454ded36bd..96fe23a6c310d 100644 --- a/impeller/renderer/backend/vulkan/BUILD.gn +++ b/impeller/renderer/backend/vulkan/BUILD.gn @@ -2,6 +2,7 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +import("//flutter/vulkan/config.gni") import("../../../tools/impeller.gni") impeller_component("vulkan_unittests") { @@ -96,4 +97,8 @@ impeller_component("vulkan") { "//third_party/vulkan-deps/vulkan-headers/src:vulkan_headers", "//third_party/vulkan_memory_allocator", ] + + if (enable_vulkan_validation_layers) { + defines = [ "IMPELLER_ENABLE_VULKAN_VALIDATION_LAYERS" ] + } } diff --git a/impeller/renderer/backend/vulkan/context_vk.cc b/impeller/renderer/backend/vulkan/context_vk.cc index a23aa60eaabe0..1ff8ba101e5a0 100644 --- a/impeller/renderer/backend/vulkan/context_vk.cc +++ b/impeller/renderer/backend/vulkan/context_vk.cc @@ -184,6 +184,17 @@ void ContextVK::Setup(Settings settings) { vk::InstanceCreateInfo instance_info; if (caps->AreValidationsEnabled()) { + std::stringstream ss; + ss << "Enabling validation layers, features: ["; + for (const auto& validation : enabled_validations) { + ss << vk::to_string(validation) << " "; + } + ss << "]"; + FML_DLOG(ERROR) << ss.str(); +#if !IMPELLER_ENABLE_VULKAN_VALIDATION_LAYERS && FML_OS_ANDROID + VALIDATION_LOG << "Attempting to use validation layers without " + "--enable-vulkan-validation-layers"; +#endif instance_info.pNext = &validation; } instance_info.setPEnabledLayerNames(enabled_layers_c); From 1afb9f4752b61671bfaafcd3c4d96d966f81d4c1 Mon Sep 17 00:00:00 2001 From: Aaron Clarke Date: Fri, 9 Jun 2023 14:14:29 -0700 Subject: [PATCH 2/6] dan feedback --- testing/scenario_app/android/app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/testing/scenario_app/android/app/build.gradle b/testing/scenario_app/android/app/build.gradle index 5f2a94523b996..74426aa07f3dc 100644 --- a/testing/scenario_app/android/app/build.gradle +++ b/testing/scenario_app/android/app/build.gradle @@ -6,7 +6,7 @@ android { abortOnError true checkAllWarnings true showAll true - warningsAsErrors true + warningsAsErrors false checkTestSources true textOutput 'stdout' htmlReport false @@ -18,7 +18,7 @@ android { // The others are irrelevant for a test application. disable 'UnpackedNativeCode','MissingApplicationIcon','GoogleAppIndexingApiWarning','GoogleAppIndexingWarning','GradleDependency','NewerVersionAvailable','Registered' } - buildToolsVersion = '33.0.0' + buildToolsVersion = '33.0.1' compileSdkVersion 33 compileOptions { sourceCompatibility JavaVersion.VERSION_11 From 384fef103f932ccb75c1c2f824a8ea5a18ac934c Mon Sep 17 00:00:00 2001 From: Aaron Clarke Date: Fri, 9 Jun 2023 14:26:11 -0700 Subject: [PATCH 3/6] reverted accidental commit --- testing/scenario_app/android/app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/testing/scenario_app/android/app/build.gradle b/testing/scenario_app/android/app/build.gradle index 74426aa07f3dc..5f2a94523b996 100644 --- a/testing/scenario_app/android/app/build.gradle +++ b/testing/scenario_app/android/app/build.gradle @@ -6,7 +6,7 @@ android { abortOnError true checkAllWarnings true showAll true - warningsAsErrors false + warningsAsErrors true checkTestSources true textOutput 'stdout' htmlReport false @@ -18,7 +18,7 @@ android { // The others are irrelevant for a test application. disable 'UnpackedNativeCode','MissingApplicationIcon','GoogleAppIndexingApiWarning','GoogleAppIndexingWarning','GradleDependency','NewerVersionAvailable','Registered' } - buildToolsVersion = '33.0.1' + buildToolsVersion = '33.0.0' compileSdkVersion 33 compileOptions { sourceCompatibility JavaVersion.VERSION_11 From 859ae2ce6c19fb461ec1075292ab3a748979b1f0 Mon Sep 17 00:00:00 2001 From: Aaron Clarke Date: Fri, 9 Jun 2023 14:38:48 -0700 Subject: [PATCH 4/6] dan feedback --- impeller/renderer/backend/vulkan/context_vk.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/impeller/renderer/backend/vulkan/context_vk.cc b/impeller/renderer/backend/vulkan/context_vk.cc index 1ff8ba101e5a0..b840451e6f874 100644 --- a/impeller/renderer/backend/vulkan/context_vk.cc +++ b/impeller/renderer/backend/vulkan/context_vk.cc @@ -192,8 +192,8 @@ void ContextVK::Setup(Settings settings) { ss << "]"; FML_DLOG(ERROR) << ss.str(); #if !IMPELLER_ENABLE_VULKAN_VALIDATION_LAYERS && FML_OS_ANDROID - VALIDATION_LOG << "Attempting to use validation layers without " - "--enable-vulkan-validation-layers"; + VALIDATION_LOG << "Vulkan validation layers found but the gn argument " + "`--enable-vulkan-validation-layers` is missing."; #endif instance_info.pNext = &validation; } From 1bdec1e7b86e5603757d6e8c8a377ad7e0fa0bae Mon Sep 17 00:00:00 2001 From: Aaron Clarke Date: Fri, 9 Jun 2023 14:56:27 -0700 Subject: [PATCH 5/6] switched to a defined check --- impeller/renderer/backend/vulkan/context_vk.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/impeller/renderer/backend/vulkan/context_vk.cc b/impeller/renderer/backend/vulkan/context_vk.cc index b840451e6f874..b266aefb9c5b2 100644 --- a/impeller/renderer/backend/vulkan/context_vk.cc +++ b/impeller/renderer/backend/vulkan/context_vk.cc @@ -191,7 +191,7 @@ void ContextVK::Setup(Settings settings) { } ss << "]"; FML_DLOG(ERROR) << ss.str(); -#if !IMPELLER_ENABLE_VULKAN_VALIDATION_LAYERS && FML_OS_ANDROID +#if !defined(IMPELLER_ENABLE_VULKAN_VALIDATION_LAYERS) && FML_OS_ANDROID VALIDATION_LOG << "Vulkan validation layers found but the gn argument " "`--enable-vulkan-validation-layers` is missing."; #endif From 205d48ffcdbf26368430b6b58dda6a716a8caa36 Mon Sep 17 00:00:00 2001 From: Aaron Clarke Date: Fri, 9 Jun 2023 15:11:00 -0700 Subject: [PATCH 6/6] switched to FML_LOG(ERROR) --- impeller/renderer/backend/vulkan/context_vk.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/impeller/renderer/backend/vulkan/context_vk.cc b/impeller/renderer/backend/vulkan/context_vk.cc index b266aefb9c5b2..d0e309f07e252 100644 --- a/impeller/renderer/backend/vulkan/context_vk.cc +++ b/impeller/renderer/backend/vulkan/context_vk.cc @@ -190,9 +190,9 @@ void ContextVK::Setup(Settings settings) { ss << vk::to_string(validation) << " "; } ss << "]"; - FML_DLOG(ERROR) << ss.str(); + FML_LOG(ERROR) << ss.str(); #if !defined(IMPELLER_ENABLE_VULKAN_VALIDATION_LAYERS) && FML_OS_ANDROID - VALIDATION_LOG << "Vulkan validation layers found but the gn argument " + FML_LOG(ERROR) << "Vulkan validation layers turned on but the gn argument " "`--enable-vulkan-validation-layers` is missing."; #endif instance_info.pNext = &validation;