Skip to content

Vulkan: Update all components to Vulkan SDK 1.4.335.0#114075

Merged
Repiteo merged 3 commits into
godotengine:masterfrom
akien-mga:vulkan-sdk-1.4.335.0
Feb 4, 2026
Merged

Vulkan: Update all components to Vulkan SDK 1.4.335.0#114075
Repiteo merged 3 commits into
godotengine:masterfrom
akien-mga:vulkan-sdk-1.4.335.0

Conversation

@akien-mga
Copy link
Copy Markdown
Member

@akien-mga akien-mga commented Dec 16, 2025

Needs to be tested on all platforms where we support Vulkan, but also D3D12 and Metal for SPIR-V.
Our last sync was almost 2 years ago so this is long overdue, and thus would be good to include in 4.6.

Updated:

  • vulkan headers
  • volk
  • glslang
  • spirv-headers
  • spirv-cross
  • spirv-reflect
  • vk_mem_alloc 3.3.0

TODO:

Supersedes #107773.

Comment thread .gitignore
Comment on lines +158 to +160
# GNU patch
*.orig
*.rej
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm tired of having to manually delete .orig and .rej files generated by GNU patch (one had managed to slip through in this PR at first), so I'm gitignoring them. I don't expect it to conflict with legit file extensions we'd want to version.

@akien-mga akien-mga force-pushed the vulkan-sdk-1.4.335.0 branch from 95c0785 to dc5f635 Compare December 16, 2025 13:40
@akien-mga
Copy link
Copy Markdown
Member Author

SPIRV-Reflect now also updated to 1.4.335.0 with the upstream specialization constant support thanks to @DarioSamo!

@akien-mga
Copy link
Copy Markdown
Member Author

I added the VulkanMemoryAllocator update to 3.3.0 in the end, so we can test everything at once.
If you run into issues testing this PR, please try a local revert of the VMA update to see if that solves it.

@akien-mga akien-mga marked this pull request as ready for review December 16, 2025 15:45
@akien-mga akien-mga requested a review from a team as a code owner December 16, 2025 15:45
Copy link
Copy Markdown
Member

@Calinou Calinou left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested locally on several demo projects (Linux + NVIDIA), this causes reflection probe rendering to break on the 3D platformer demo. It appears as pure black and this error is printed every time a reflection probe is rendered:

ERROR: This render pipeline requires (4) bytes of push constant data, supplied: (16)
   at: draw_list_set_push_constant (./servers/rendering/rendering_device.cpp:4951)
ERROR: The shader in this pipeline requires a push constant to be set before drawing, but it's not present.
   at: draw_list_draw (./servers/rendering/rendering_device.cpp:4984)

This occurs on both Forward+ and Mobile. The issue happens with the first commit only (no VMA update), or when both commits are applied.

@akien-mga
Copy link
Copy Markdown
Member Author

Added a fix by @DarioSamo that should solve the issues @Calinou documented.

There might be more similar cases that will warrant extensive testing, so we decided to postpone this to 4.7. It should still be tested well (can be done now) and merged early in the dev phase, so we have time to be confident that it doesn't create regressions before 4.7 beta.

Copy link
Copy Markdown
Member

@Calinou Calinou left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Works great now 🙂

I've also tested it on several other demos like the TPS demo, as well as baking lightmaps.

Copy link
Copy Markdown
Contributor

@AR-DEV-1 AR-DEV-1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Works as expected on Linux (Zorin OS 18) when using the Forward+/Mobile renderers (Vulkan).

@blueskythlikesclouds
Copy link
Copy Markdown
Member

What happened to the push constant padding changes? Are they not required now?

@akien-mga
Copy link
Copy Markdown
Member Author

akien-mga commented Feb 3, 2026

I amended them in the commit, so they should be there.

Edit: No I messed up, I forgot to pull in my local branch before rebasing. I'll fix it up.

@akien-mga akien-mga force-pushed the vulkan-sdk-1.4.335.0 branch from 188b9ed to 83a367f Compare February 3, 2026 09:19
@akien-mga
Copy link
Copy Markdown
Member Author

I restored the VMA update and the structure padding fix.

Copy link
Copy Markdown
Member

@bruvzg bruvzg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested on macOS and iOS, with aforementioned octmap_downsampler_raster.glsl padding patch applied it seems to be working fine.

akien-mga and others added 2 commits February 4, 2026 11:22
VulkanMemoryAllocator not updated as it's not versioned together with the SDK, and it
often requires more work.

SPIRV-Reflect: Fix reflection code and remove Godot's SC parsing patch.

Co-authored-by: Dario <dariosamo@gmail.com>
Comment thread servers/rendering/renderer_rd/shaders/effects/screen_space_reflection.glsl Outdated
@akien-mga akien-mga force-pushed the vulkan-sdk-1.4.335.0 branch from cb22d38 to 8df17cf Compare February 4, 2026 11:10
Co-authored-by: Skyth <19259897+blueskythlikesclouds@users.noreply.github.com>
@akien-mga akien-mga force-pushed the vulkan-sdk-1.4.335.0 branch from 8df17cf to 703b3f3 Compare February 4, 2026 11:12
Copy link
Copy Markdown
Member

@blueskythlikesclouds blueskythlikesclouds left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me!

A concern I have is that the glslang update may affect people using RD with GLSL in their games if they don't have proper padding in their push constants. The error is easy to fix and the log is pretty clear, though.

@Repiteo Repiteo merged commit cb04441 into godotengine:master Feb 4, 2026
20 checks passed
@Repiteo
Copy link
Copy Markdown
Contributor

Repiteo commented Feb 4, 2026

Thanks!

rivie13 pushed a commit to rivie13/Phoenix-Agentic-Engine that referenced this pull request Feb 16, 2026
…35.0

Vulkan: Update all components to Vulkan SDK 1.4.335.0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants