Merge pull request #11209 from ameerj/subgroup_size_control
vulkan_device: Fix VK_EXT_subgroup_size_control detection
This commit is contained in:
commit
369fcadf08
|
@ -963,7 +963,7 @@ bool Device::GetSuitability(bool requires_swapchain) {
|
||||||
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR;
|
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR;
|
||||||
SetNext(next, properties.push_descriptor);
|
SetNext(next, properties.push_descriptor);
|
||||||
}
|
}
|
||||||
if (extensions.subgroup_size_control) {
|
if (extensions.subgroup_size_control || features.subgroup_size_control.subgroupSizeControl) {
|
||||||
properties.subgroup_size_control.sType =
|
properties.subgroup_size_control.sType =
|
||||||
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES;
|
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES;
|
||||||
SetNext(next, properties.subgroup_size_control);
|
SetNext(next, properties.subgroup_size_control);
|
||||||
|
|
|
@ -20,7 +20,6 @@ VK_DEFINE_HANDLE(VmaAllocator)
|
||||||
// Vulkan version in the macro describes the minimum version required for feature availability.
|
// Vulkan version in the macro describes the minimum version required for feature availability.
|
||||||
// If the Vulkan version is lower than the required version, the named extension is required.
|
// If the Vulkan version is lower than the required version, the named extension is required.
|
||||||
#define FOR_EACH_VK_FEATURE_1_1(FEATURE) \
|
#define FOR_EACH_VK_FEATURE_1_1(FEATURE) \
|
||||||
FEATURE(EXT, SubgroupSizeControl, SUBGROUP_SIZE_CONTROL, subgroup_size_control) \
|
|
||||||
FEATURE(KHR, 16BitStorage, 16BIT_STORAGE, bit16_storage) \
|
FEATURE(KHR, 16BitStorage, 16BIT_STORAGE, bit16_storage) \
|
||||||
FEATURE(KHR, ShaderAtomicInt64, SHADER_ATOMIC_INT64, shader_atomic_int64) \
|
FEATURE(KHR, ShaderAtomicInt64, SHADER_ATOMIC_INT64, shader_atomic_int64) \
|
||||||
FEATURE(KHR, ShaderDrawParameters, SHADER_DRAW_PARAMETERS, shader_draw_parameters) \
|
FEATURE(KHR, ShaderDrawParameters, SHADER_DRAW_PARAMETERS, shader_draw_parameters) \
|
||||||
|
@ -36,7 +35,8 @@ VK_DEFINE_HANDLE(VmaAllocator)
|
||||||
|
|
||||||
#define FOR_EACH_VK_FEATURE_1_3(FEATURE) \
|
#define FOR_EACH_VK_FEATURE_1_3(FEATURE) \
|
||||||
FEATURE(EXT, ShaderDemoteToHelperInvocation, SHADER_DEMOTE_TO_HELPER_INVOCATION, \
|
FEATURE(EXT, ShaderDemoteToHelperInvocation, SHADER_DEMOTE_TO_HELPER_INVOCATION, \
|
||||||
shader_demote_to_helper_invocation)
|
shader_demote_to_helper_invocation) \
|
||||||
|
FEATURE(EXT, SubgroupSizeControl, SUBGROUP_SIZE_CONTROL, subgroup_size_control)
|
||||||
|
|
||||||
// Define all features which may be used by the implementation and require an extension here.
|
// Define all features which may be used by the implementation and require an extension here.
|
||||||
#define FOR_EACH_VK_FEATURE_EXT(FEATURE) \
|
#define FOR_EACH_VK_FEATURE_EXT(FEATURE) \
|
||||||
|
|
Reference in New Issue