vkd3d: Enable VK_EXT_external_memory_host.
Needed for OpenExistingHeapFromAddress and friends. Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
This commit is contained in:
parent
b2b730ea8b
commit
95b6596d75
|
@ -92,6 +92,7 @@ static const struct vkd3d_optional_extension_info optional_device_extensions[] =
|
|||
VK_EXTENSION(EXT_TRANSFORM_FEEDBACK, EXT_transform_feedback),
|
||||
VK_EXTENSION(EXT_VERTEX_ATTRIBUTE_DIVISOR, EXT_vertex_attribute_divisor),
|
||||
VK_EXTENSION(EXT_EXTENDED_DYNAMIC_STATE, EXT_extended_dynamic_state),
|
||||
VK_EXTENSION(EXT_EXTERNAL_MEMORY_HOST, EXT_external_memory_host),
|
||||
/* AMD extensions */
|
||||
VK_EXTENSION(AMD_SHADER_CORE_PROPERTIES, AMD_shader_core_properties),
|
||||
VK_EXTENSION(AMD_SHADER_CORE_PROPERTIES_2, AMD_shader_core_properties2),
|
||||
|
@ -719,6 +720,7 @@ static void vkd3d_physical_device_info_init(struct vkd3d_physical_device_info *i
|
|||
VkPhysicalDeviceSubgroupSizeControlPropertiesEXT *subgroup_size_control_properties;
|
||||
VkPhysicalDeviceInlineUniformBlockPropertiesEXT *inline_uniform_block_properties;
|
||||
VkPhysicalDeviceExtendedDynamicStateFeaturesEXT *extended_dynamic_state_features;
|
||||
VkPhysicalDeviceExternalMemoryHostPropertiesEXT *external_memory_host_properties;
|
||||
VkPhysicalDeviceBufferDeviceAddressFeaturesKHR *buffer_device_address_features;
|
||||
VkPhysicalDeviceCustomBorderColorPropertiesEXT *custom_border_color_properties;
|
||||
VkPhysicalDeviceConditionalRenderingFeaturesEXT *conditional_rendering_features;
|
||||
|
@ -781,6 +783,7 @@ static void vkd3d_physical_device_info_init(struct vkd3d_physical_device_info *i
|
|||
robustness2_properties = &info->robustness2_properties;
|
||||
robustness2_features = &info->robustness2_features;
|
||||
extended_dynamic_state_features = &info->extended_dynamic_state_features;
|
||||
external_memory_host_properties = &info->external_memory_host_properties;
|
||||
|
||||
info->features2.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2;
|
||||
info->properties2.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2;
|
||||
|
@ -919,6 +922,12 @@ static void vkd3d_physical_device_info_init(struct vkd3d_physical_device_info *i
|
|||
vk_prepend_struct(&info->features2, extended_dynamic_state_features);
|
||||
}
|
||||
|
||||
if (vulkan_info->EXT_external_memory_host)
|
||||
{
|
||||
external_memory_host_properties->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT;
|
||||
vk_prepend_struct(&info->properties2, external_memory_host_properties);
|
||||
}
|
||||
|
||||
if (vulkan_info->AMD_shader_core_properties)
|
||||
{
|
||||
shader_core_properties->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD;
|
||||
|
|
|
@ -137,6 +137,7 @@ struct vkd3d_vulkan_info
|
|||
bool EXT_transform_feedback;
|
||||
bool EXT_vertex_attribute_divisor;
|
||||
bool EXT_extended_dynamic_state;
|
||||
bool EXT_external_memory_host;
|
||||
/* AMD device extensions */
|
||||
bool AMD_shader_core_properties;
|
||||
bool AMD_shader_core_properties2;
|
||||
|
@ -1677,6 +1678,7 @@ struct vkd3d_physical_device_info
|
|||
VkPhysicalDeviceShaderSMBuiltinsPropertiesNV shader_sm_builtins_properties;
|
||||
VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT sampler_filter_minmax_properties;
|
||||
VkPhysicalDeviceRobustness2PropertiesEXT robustness2_properties;
|
||||
VkPhysicalDeviceExternalMemoryHostPropertiesEXT external_memory_host_properties;
|
||||
|
||||
VkPhysicalDeviceProperties2KHR properties2;
|
||||
|
||||
|
|
|
@ -223,6 +223,9 @@ VK_DEVICE_EXT_PFN(vkCmdSetPrimitiveTopologyEXT)
|
|||
VK_DEVICE_EXT_PFN(vkCmdSetScissorWithCountEXT)
|
||||
VK_DEVICE_EXT_PFN(vkCmdSetViewportWithCountEXT)
|
||||
|
||||
/* VK_EXT_external_memory_host */
|
||||
VK_DEVICE_EXT_PFN(vkGetMemoryHostPointerPropertiesEXT)
|
||||
|
||||
/* VK_KHR_surface */
|
||||
VK_INSTANCE_EXT_PFN(vkGetPhysicalDeviceSurfacePresentModesKHR)
|
||||
VK_INSTANCE_EXT_PFN(vkGetPhysicalDeviceSurfaceSupportKHR)
|
||||
|
|
Loading…
Reference in New Issue