-
-
Notifications
You must be signed in to change notification settings - Fork 22.7k
Vulkan: Update all components to Vulkan SDK 1.4.313.0 #107773
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
86f9d62
to
a7995eb
Compare
a7995eb
to
d8b1c70
Compare
drivers/vulkan/SCsub
Outdated
# We don't use it for now, and it depends on Windows APIs. | ||
env_thirdparty_vma.AppendUnique(CPPDEFINES=["VMA_EXTERNAL_MEMORY_WIN32=0"]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I disabled this to solve these build errors:
Error: D:\a\godot\godot\thirdparty\vulkan\vk_mem_alloc.h(6217): error C2039: 'CloseHandle': is not a member of '`global namespace''
Error: D:\a\godot\godot\thirdparty\vulkan\vk_mem_alloc.h(6217): error C3861: 'CloseHandle': identifier not found
Error: D:\a\godot\godot\thirdparty\vulkan\vk_mem_alloc.h(6267): error C2039: 'GetCurrentProcess': is not a member of '`global namespace''
Error: D:\a\godot\godot\thirdparty\vulkan\vk_mem_alloc.h(6267): error C3861: 'GetCurrentProcess': identifier not found
Error: D:\a\godot\godot\thirdparty\vulkan\vk_mem_alloc.h(6269): error C2039: 'DuplicateHandle': is not a member of '`global namespace''
Error: D:\a\godot\godot\thirdparty\vulkan\vk_mem_alloc.h(6269): error C2065: 'FALSE': undeclared identifier
Error: D:\a\godot\godot\thirdparty\vulkan\vk_mem_alloc.h(6269): error C2065: 'DUPLICATE_SAME_ACCESS': undeclared identifier
Error: D:\a\godot\godot\thirdparty\vulkan\vk_mem_alloc.h(6269): error C3861: 'DuplicateHandle': identifier not found
AFAIK we don't use this extension, it's just automatically picked up as present in the Vulkan headers. It was added in VMA 3.2.0: https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator/blob/master/CHANGELOG.md#320-2024-12-30
If we want to use it, we can likely solve the issues by including windows.h
( 😿 ) or a narrower Win32 header.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Metal fix looks good to me, as noted, @akien-mga added an additional case
to handle a new enum variant. We can ignore the variant, as it is specifically for this extension, which Godot doesn't use. If that were to change, we'd need to update this code
Updates: - Vulkan headers - volk - glslang - spirv-reflect - spirv-cross - vk_mem_alloc 3.3.0
d8b1c70
to
f0d244b
Compare
BTW, I noticed this in Lines 43 to 49 in 48f361a
The Android note is likely obsolete now that we're using NDK r28, we might want to reconsider. |
I'm getting a lot of pipeline errors with this PR when running tps-demo using Vulkan on macOS (but the demo seems to be running fine).
|
I'm getting the same errors as @bruvzg spammed super fast, to the point that I can't seem to operate the editor built from this PR. At least I think it's due to the error spam and not some lower-level issue, but I'm not sure But if I use an editor compiled from |
I won't have time to debug the pipeline errors as I'm going on leave :D If we'd still like to do this update for 4.5 (or whichever SDK comes next, they've been tagging versions weekly for a month now, I expect one will soon be promoted to SDK), someone else will have to take over. |
Needs to be tested on all platforms where we support Vulkan, but also D3D12 and Metal for SPIR-V.
Our last sync was a year ago so this is long overdue, and thus would be good to include in 4.5.
Updated: