You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
rust-gpu compiling for any spirv-unknown-vulkan1.X target should not implicitly emit OpCapability VulkanMemoryModel in the resulting spv, instead one would need to call SpirvBuilder.capability(Capability::VulkanMemoryModel) to enable the VulkanMemoryModel explicitly.
This implicit enabling of that Capability can get in the way of 1:1 porting of glsl shaders to rust-gpu, as it also requires changes to the CPU code to enable the VulkanMemoryModel device feature. Switching to target spirv-unknown-spv1.X does remove the implicit capability from the shader, but it is disencouraged as it also "disables a bunch of rules in spirv-val".
Expected Behaviour
rust-gpu compiling for any
spirv-unknown-vulkan1.X
target should not implicitly emitOpCapability VulkanMemoryModel
in the resulting spv, instead one would need to callSpirvBuilder.capability(Capability::VulkanMemoryModel)
to enable theVulkanMemoryModel
explicitly.This implicit enabling of that Capability can get in the way of 1:1 porting of glsl shaders to rust-gpu, as it also requires changes to the CPU code to enable the VulkanMemoryModel device feature. Switching to target
spirv-unknown-spv1.X
does remove the implicit capability from the shader, but it is disencouraged as it also "disables a bunch of rules inspirv-val
".Example & Steps To Reproduce
git clone
https://github.com/Firestar99/rust-gpu-vulkano-example.gitexample/build.rs
changeTARGET
fromspirv-unknown-spv1.3
tospirv-unknown-vulkan1.2
(or any other vulkan version)cargo run
to see it fail when changes of 2. are appliedSystem Info
The text was updated successfully, but these errors were encountered: