Vulkan: Update VMA to 3.3.0

This commit is contained in:
Rémi Verschelde 2025-12-16 14:59:16 +01:00
parent d2ed1773fc
commit 805c9d4b18
No known key found for this signature in database
GPG key ID: C3336907360768E1
6 changed files with 1286 additions and 428 deletions

View file

@ -630,7 +630,7 @@ License: Apache-2.0
Files: thirdparty/vulkan/vk_mem_alloc.h
Comment: Vulkan Memory Allocator
Copyright: 2017-2024, Advanced Micro Devices, Inc.
Copyright: 2017-2025, Advanced Micro Devices, Inc.
License: Expat
Files: thirdparty/wayland/*

View file

@ -31,6 +31,10 @@ elif env["platform"] == "windows":
env.AppendUnique(CPPDEFINES=["VK_USE_PLATFORM_WIN32_KHR"])
# Build Vulkan memory allocator and volk
# We don't use it for now, and it depends on Windows APIs.
env.AppendUnique(CPPDEFINES=["VMA_EXTERNAL_MEMORY_WIN32=0"])
env_thirdparty_vma = env.Clone()
env_thirdparty_vma.disable_warnings()
thirdparty_sources_vma = [thirdparty_dir + "/vk_mem_alloc.cpp"]

View file

@ -1163,7 +1163,7 @@ Files extracted from upstream source:
SDK release: https://github.com/KhronosGroup/Vulkan-Utility-Libraries/blob/main/include/vulkan/vk_enum_string_helper.h
`vk_mem_alloc.h` is taken from https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator
Version: 3.1.0 (009ecd192c1289c7529bff248a16cfe896254816, 2024)
Version: 3.3.0 (1d8f600fd424278486eade7ed3e877c99f0846b1, 2025)
`vk_mem_alloc.cpp` is a Godot file and should be preserved on updates.
Patches:

View file

@ -1,8 +1,8 @@
diff --git a/thirdparty/vulkan/vk_mem_alloc.h b/thirdparty/vulkan/vk_mem_alloc.h
index 2307325d4e..ecb84094b9 100644
index 8df03649b5..42ba704beb 100644
--- a/thirdparty/vulkan/vk_mem_alloc.h
+++ b/thirdparty/vulkan/vk_mem_alloc.h
@@ -122,12 +122,12 @@ for user-defined purpose without allocating any real GPU memory.
@@ -123,15 +123,12 @@ for user-defined purpose without allocating any real GPU memory.
See documentation chapter: \ref statistics.
*/
@ -12,7 +12,10 @@ index 2307325d4e..ecb84094b9 100644
extern "C" {
#endif
-#if !defined(VULKAN_H_)
-#include <vulkan/vulkan.h>
-#endif
-
#if !defined(VMA_VULKAN_VERSION)
#if defined(VK_VERSION_1_3)
#if defined(VK_VERSION_1_4)
#define VMA_VULKAN_VERSION 1004000

View file

@ -1,8 +1,8 @@
diff --git a/thirdparty/vulkan/vk_mem_alloc.h b/thirdparty/vulkan/vk_mem_alloc.h
index ecb84094b9..c436209896 100644
index 42ba704beb..ef158a8e57 100644
--- a/thirdparty/vulkan/vk_mem_alloc.h
+++ b/thirdparty/vulkan/vk_mem_alloc.h
@@ -1713,6 +1713,19 @@ VMA_CALL_PRE void VMA_CALL_POST vmaCalculateStatistics(
@@ -1794,6 +1794,19 @@ VMA_CALL_PRE void VMA_CALL_POST vmaCalculateStatistics(
VmaAllocator VMA_NOT_NULL allocator,
VmaTotalStatistics* VMA_NOT_NULL pStats);
@ -22,7 +22,7 @@ index ecb84094b9..c436209896 100644
/** \brief Retrieves information about current memory usage and budget for all memory heaps.
\param allocator
@@ -14912,6 +14925,26 @@ VMA_CALL_PRE void VMA_CALL_POST vmaCalculateStatistics(
@@ -15297,6 +15310,26 @@ VMA_CALL_PRE void VMA_CALL_POST vmaCalculateStatistics(
allocator->CalculateStatistics(pStats);
}

File diff suppressed because it is too large Load diff