VK_KHR_WIN32_SURFACE_EXTENSION_NAME未定义,在Vulkan代码中 [英] VK_KHR_WIN32_SURFACE_EXTENSION_NAME undefined, in Vulkan code
问题描述
我试图写一个简单的基于vulkan的应用程序,但是当试图添加表面扩展到已启用的扩展列表,如下:
I'm attempting to write a simple vulkan based application, but when trying to add the surface extension to the list of enabled extensions, like so:
enabledExtensions.push_back( VK_KHR_SURFACE_EXTENSION_NAME );
#if defined (_WIN32)
enabledExtensions.push_back( VK_KHR_WIN32_SURFACE_EXTENSION_NAME );
#else
enabledExtensions.push_back( VK_KHR_XCB_SURFACE_EXTENSION_NAME );
#endif
Visual studio抱怨 VK_KHR_WIN32_SURFACE_EXTENSION_NAME
未定义。
Visual studio complains that VK_KHR_WIN32_SURFACE_EXTENSION_NAME
is undefined.
当我右键单击它并转到定义,它打开vulkan.h。检查 VK_USE_PLATFORM_WIN32_KHR
我发现这也是未定义,这阻止了 VK_KHR_WIN32_SURFACE_EXTENSION_NAME
的定义。
When I right click it and go to definition, it opens vulkan.h. Upon inspection of VK_USE_PLATFORM_WIN32_KHR
I find this to be also undefined, which prevents the definition of VK_KHR_WIN32_SURFACE_EXTENSION_NAME
. Could someone explain how to fix this?
推荐答案
事实证明,我在项目设置中缺少一些预处理指令: / p>
As it turns out, I was missing some preprocessor directives in the project settings:
VK_PROTOTYPES
VK_USE_PLATFORM_WIN32_KHR
我希望这个信息帮助任何有同样问题的人。
I hope this info helps out anyone who has the same problem.
这篇关于VK_KHR_WIN32_SURFACE_EXTENSION_NAME未定义,在Vulkan代码中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!