On Wed Apr 10 18:00:40 2024 +0000, Giovanni Mascellani wrote:
Along something of the same lines as Gio's comment, is
VKD3D_SHADER_SPIRV_ENVIRONMENT_VULKAN_1_1 actually doing anything? We need VKD3D_SHADER_COMPILE_OPTION_FEATURE_WAVE_OPS anyway; should we just set the SPIRV version and Vulkan environment based on that? My understanding is that they're somewhat independent features: there might be differences between environments which we want to respect even if they're not captured by the features of the specific device we're using. If we're feeding the SPIR-V code to OpenGL vs Vulkan we might need to generate different code even if it's going to run on the same GPU (thus with the same capabilities). In abstract, at least; I don't know whether we already have an instance of that, but it makes sense for the API to be ready.
Sure, but we already have the GL vs Vulkan environment. Is there actually a meaningful difference between Vulkan 1.0 and 1.1 that's not going to end up being an extension or feature bit? And, if we don't know of one yet, do we need to add this extra API switch yet?