vulkan: Enable required descriptor indexing features ready for blindless texture tracking
Some checks failed
eden-build / source (pull_request) Has been skipped
eden-build / linux (pull_request) Failing after 12m49s
eden-build / android (pull_request) Failing after 11m39s
eden-license / license-header (pull_request_target) Failing after 26s
eden-build / windows (msvc) (pull_request) Successful in 29m20s
Some checks failed
eden-build / source (pull_request) Has been skipped
eden-build / linux (pull_request) Failing after 12m49s
eden-build / android (pull_request) Failing after 11m39s
eden-license / license-header (pull_request_target) Failing after 26s
eden-build / windows (msvc) (pull_request) Successful in 29m20s
This commit is contained in:
parent
3cc4e5b0dc
commit
4d53e51263
2 changed files with 19 additions and 1 deletions
|
@ -1092,7 +1092,16 @@ bool Device::GetSuitability(bool requires_swapchain) {
|
|||
#undef EXT_FEATURE
|
||||
#undef FEATURE
|
||||
|
||||
// Perform the feature test.
|
||||
if (extensions.descriptor_indexing) {
|
||||
features.descriptor_indexing.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT;
|
||||
features.descriptor_indexing.pNext = nullptr;
|
||||
features.descriptor_indexing.descriptorBindingVariableDescriptorCount = VK_TRUE;
|
||||
features.descriptor_indexing.runtimeDescriptorArray = VK_TRUE;
|
||||
features.descriptor_indexing.descriptorBindingPartiallyBound = VK_TRUE;
|
||||
SetNext(next, features.descriptor_indexing);
|
||||
}
|
||||
|
||||
// Perform the feature test.
|
||||
physical.GetFeatures2(features2);
|
||||
|
||||
// Base Vulkan 1.0 features are always valid regardless of instance version.
|
||||
|
|
|
@ -42,6 +42,7 @@ VK_DEFINE_HANDLE(VmaAllocator)
|
|||
#define FOR_EACH_VK_FEATURE_EXT(FEATURE) \
|
||||
FEATURE(EXT, CustomBorderColor, CUSTOM_BORDER_COLOR, custom_border_color) \
|
||||
FEATURE(EXT, DepthBiasControl, DEPTH_BIAS_CONTROL, depth_bias_control) \
|
||||
FEATURE(EXT, DescriptorIndexing, DESCRIPTOR_INDEXING, descriptor_indexing) \
|
||||
FEATURE(EXT, DepthClipControl, DEPTH_CLIP_CONTROL, depth_clip_control) \
|
||||
FEATURE(EXT, ExtendedDynamicState, EXTENDED_DYNAMIC_STATE, extended_dynamic_state) \
|
||||
FEATURE(EXT, ExtendedDynamicState2, EXTENDED_DYNAMIC_STATE_2, extended_dynamic_state2) \
|
||||
|
@ -100,6 +101,7 @@ VK_DEFINE_HANDLE(VmaAllocator)
|
|||
EXTENSION_NAME(VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME) \
|
||||
EXTENSION_NAME(VK_EXT_DEPTH_BIAS_CONTROL_EXTENSION_NAME) \
|
||||
EXTENSION_NAME(VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME) \
|
||||
EXTENSION_NAME(VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME) \
|
||||
EXTENSION_NAME(VK_EXT_EXTENDED_DYNAMIC_STATE_EXTENSION_NAME) \
|
||||
EXTENSION_NAME(VK_EXT_EXTENDED_DYNAMIC_STATE_2_EXTENSION_NAME) \
|
||||
EXTENSION_NAME(VK_EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME) \
|
||||
|
@ -154,6 +156,13 @@ VK_DEFINE_HANDLE(VmaAllocator)
|
|||
FEATURE_NAME(depth_bias_control, depthBiasControl) \
|
||||
FEATURE_NAME(depth_bias_control, leastRepresentableValueForceUnormRepresentation) \
|
||||
FEATURE_NAME(depth_bias_control, depthBiasExact) \
|
||||
FEATURE_NAME(descriptor_indexing, descriptorBindingPartiallyBound) \
|
||||
FEATURE_NAME(descriptor_indexing, descriptorBindingVariableDescriptorCount) \
|
||||
FEATURE_NAME(descriptor_indexing, runtimeDescriptorArray) \
|
||||
FEATURE_NAME(descriptor_indexing, descriptorBindingVariableDescriptorCount) \
|
||||
FEATURE_NAME(descriptor_indexing, shaderSampledImageArrayNonUniformIndexing) \
|
||||
FEATURE_NAME(descriptor_indexing, shaderStorageBufferArrayNonUniformIndexing) \
|
||||
FEATURE_NAME(descriptor_indexing, shaderStorageImageArrayNonUniformIndexing) \
|
||||
FEATURE_NAME(extended_dynamic_state, extendedDynamicState) \
|
||||
FEATURE_NAME(format_a4b4g4r4, formatA4B4G4R4) \
|
||||
FEATURE_NAME(index_type_uint8, indexTypeUint8) \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue