最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

vulkan - Device doesn't have PIPELINE_EXTENSION_NAME even though rayTracingPipeline is supported - Stack Overflow

programmeradmin1浏览0评论

When I give pointers to extension structs to be filled in when I call vkGetPhysicalDeviceFeatures, the rayTracingPipeline flag is 1, meaning it should be supported, and pretty all the flags in VkPhysicalDeviceRayTracingPipelineFeaturesKHR are set to 1. However when I create the logical device I get the validation error:

pCreateInfo->pNext includes a pointer to a VkPhysicalDeviceRayTracingPipelineFeaturesKHR, but when creating VkDevice, the parent extension (VK_KHR_ray_tracing_pipeline) was not included in ppEnabledExtensionNames.

So fair enough, it sounds like I have to enable the VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME in the enabled extensions list when creating the logical device. So I do that, but then I get:

Vulkan validation layer callback: loader_validate_device_extensions: Device extension VK_KHR_ray_tracing_pipeline not supported by selected physical device or enabled layers.

Vulkan validation layer callback: vkCreateDevice: Failed to validate extensions in list

When I check for the extension name with vkEnumerateDeviceExtensionProperties it's not in the list. I am using an Radeon RX570.

When I give pointers to extension structs to be filled in when I call vkGetPhysicalDeviceFeatures, the rayTracingPipeline flag is 1, meaning it should be supported, and pretty all the flags in VkPhysicalDeviceRayTracingPipelineFeaturesKHR are set to 1. However when I create the logical device I get the validation error:

pCreateInfo->pNext includes a pointer to a VkPhysicalDeviceRayTracingPipelineFeaturesKHR, but when creating VkDevice, the parent extension (VK_KHR_ray_tracing_pipeline) was not included in ppEnabledExtensionNames.

So fair enough, it sounds like I have to enable the VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME in the enabled extensions list when creating the logical device. So I do that, but then I get:

Vulkan validation layer callback: loader_validate_device_extensions: Device extension VK_KHR_ray_tracing_pipeline not supported by selected physical device or enabled layers.

Vulkan validation layer callback: vkCreateDevice: Failed to validate extensions in list

When I check for the extension name with vkEnumerateDeviceExtensionProperties it's not in the list. I am using an Radeon RX570.

Share Improve this question asked Mar 30 at 5:10 ZebrafishZebrafish 14.8k3 gold badges66 silver badges152 bronze badges
Add a comment  | 

1 Answer 1

Reset to default 1

The RX 570 does not support hardware accelerated ray tracing. Querying features for extensions not supported by an implementation is undefined behaviour. That's exactly what the validation error is trying to tell you.

发布评论

评论列表(0)

  1. 暂无评论