From 2e0c238cc6bccb52f21edc7d56c4f460fef8fe44 Mon Sep 17 00:00:00 2001 From: Mathias Agopian Date: Wed, 1 Feb 2023 12:05:21 -0800 Subject: [PATCH] We now require Vulkan 1.1 for the vulkan backend --- filament/backend/src/vulkan/VulkanConstants.h | 2 +- libs/filamat/src/GLSLPostProcessor.cpp | 2 +- libs/filamat/src/sca/GLSLTools.cpp | 4 ++-- libs/matdbg/src/DebugServer.cpp | 2 +- libs/matdbg/src/ShaderExtractor.cpp | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/filament/backend/src/vulkan/VulkanConstants.h b/filament/backend/src/vulkan/VulkanConstants.h index 55e62e3841..7692366fd3 100644 --- a/filament/backend/src/vulkan/VulkanConstants.h +++ b/filament/backend/src/vulkan/VulkanConstants.h @@ -57,7 +57,7 @@ constexpr struct VkAllocationCallbacks* VKALLOC = nullptr; constexpr static const int VK_REQUIRED_VERSION_MAJOR = 1; -constexpr static const int VK_REQUIRED_VERSION_MINOR = 0; +constexpr static const int VK_REQUIRED_VERSION_MINOR = 1; // Maximum number of VkCommandBuffer handles managed simultaneously by VulkanCommands. // diff --git a/libs/filamat/src/GLSLPostProcessor.cpp b/libs/filamat/src/GLSLPostProcessor.cpp index 3782f6251f..63e57f5ac5 100644 --- a/libs/filamat/src/GLSLPostProcessor.cpp +++ b/libs/filamat/src/GLSLPostProcessor.cpp @@ -524,7 +524,7 @@ void GLSLPostProcessor::fullOptimization(const TShader& tShader, std::shared_ptr GLSLPostProcessor::createOptimizer( MaterialBuilder::Optimization optimization, Config const& config) { - auto optimizer = std::make_shared(SPV_ENV_UNIVERSAL_1_0); + auto optimizer = std::make_shared(SPV_ENV_UNIVERSAL_1_3); optimizer->SetMessageConsumer([](spv_message_level_t level, const char* source, const spv_position_t& position, const char* message) { diff --git a/libs/filamat/src/sca/GLSLTools.cpp b/libs/filamat/src/sca/GLSLTools.cpp index 45c5765f83..b7ac7815da 100644 --- a/libs/filamat/src/sca/GLSLTools.cpp +++ b/libs/filamat/src/sca/GLSLTools.cpp @@ -429,13 +429,13 @@ void GLSLTools::prepareShaderParser(MaterialBuilder::TargetApi targetApi, case MaterialBuilderBase::TargetApi::VULKAN: case MaterialBuilderBase::TargetApi::METAL: shader.setEnvInput(EShSourceGlsl, stage, EShClientVulkan, version); - shader.setEnvClient(EShClientVulkan, EShTargetVulkan_1_0); + shader.setEnvClient(EShClientVulkan, EShTargetVulkan_1_1); break; case MaterialBuilderBase::TargetApi::ALL: // can't happen break; } - shader.setEnvTarget(EShTargetSpv, EShTargetSpv_1_0); + shader.setEnvTarget(EShTargetSpv, EShTargetSpv_1_3); } } diff --git a/libs/matdbg/src/DebugServer.cpp b/libs/matdbg/src/DebugServer.cpp index 032fe5473b..f3449bffe4 100644 --- a/libs/matdbg/src/DebugServer.cpp +++ b/libs/matdbg/src/DebugServer.cpp @@ -70,7 +70,7 @@ static const std::string_view kErrorHeader = "Connection: close\r\n\r\n"; static void spirvToAsm(struct mg_connection *conn, const uint32_t* spirv, size_t size) { - auto context = spvContextCreate(SPV_ENV_UNIVERSAL_1_0); + auto context = spvContextCreate(SPV_ENV_UNIVERSAL_1_3); spv_text text = nullptr; const uint32_t options = SPV_BINARY_TO_TEXT_OPTION_INDENT | SPV_BINARY_TO_TEXT_OPTION_FRIENDLY_NAMES; diff --git a/libs/matdbg/src/ShaderExtractor.cpp b/libs/matdbg/src/ShaderExtractor.cpp index 3954dfd28c..b463a8e344 100644 --- a/libs/matdbg/src/ShaderExtractor.cpp +++ b/libs/matdbg/src/ShaderExtractor.cpp @@ -114,7 +114,7 @@ CString ShaderExtractor::spirvToGLSL(ShaderModel shaderModel, const uint32_t* da // but please do not submit. We prefer to use the syntax that the standalone "spirv-dis" tool // uses, which lets us easily generate test cases for the spirv-cross project. CString ShaderExtractor::spirvToText(const uint32_t* begin, size_t wordCount) { - spv_context context = spvContextCreate(SPV_ENV_UNIVERSAL_1_0); + spv_context context = spvContextCreate(SPV_ENV_UNIVERSAL_1_3); if (SPV_SUCCESS != spvValidateBinary(context, begin, wordCount, nullptr)) { spvContextDestroy(context); return CString("Validation failure.");