1

我是 Vulkan 的新手,最近开始学习 .

我面临问题,在运行时vkCreateDevice()失败,VkPhysicalDeviceFeatures何时启用

VkPhysicalDeviceFeatures 功能 {}; features.wideLines = VK_TRUE; 错误 - [mvk-error] VK_ERROR_FEATURE_NOT_PRESENT: vkCmdSetLineWidth(): 当前设备不支持宽线

当 features.wideLines = VK_FALSE; vkCreateDevice() 创建成功,但我无法使用 - vkCmdSetLineWidth (command_buffer, line_width) 修改 LineWidth;这给了我

error- [mvk-error] VK_ERROR_FEATURE_NOT_PRESENT: vkCmdSetLineWidth(): 当前设备不支持宽线。

这是一些细节-

MacOS - 10.14 (Mojave) 显卡 - 显卡 - 英特尔 UHD 显卡 630 1536 MB LunarG Vulkan 实例版本:1.2.154 注意 - 当 features.wideLines = 时,Windows 上相同版本的“LunarG Vulkan 实例版本:1.2.154”工作正常VK_TRUE; 并且能够使用 vkCmdSetLineWidth (command_buffer, line_width);此处提到的 VulkanInfo 的一些细节与 WideLines 功能相关 -

VkPhysicalDevice特点:

geometryShader       = false
wideLines            = false
lineWidthRange: count =  2
        1
        1
lineWidthGranularity = 1
strictLines          = false

我在 Vulkan 文档/谷歌上进行了一些搜索,但找不到任何报告类似问题的人。任何帮助,将不胜感激。

4

1 回答 1

1

正如您在其他地方被告知的那样,Metal 不支持宽线,因此 MoltenVK(Vulkan over Metal)也不支持宽线。您将不得不使用多边形手动渲染宽线。

于 2020-10-16T05:15:45.800 回答