如何从C中的X11窗口获取Vulkan上下文?

时间:2017-04-17 05:32:09

标签: c x11 vulkan

我正在尝试在Linux中创建Vulkan应用程序。如何从原始X11窗口获取Vulkan上下文,不涉及Qt或GTK。

谢谢:)

1 个答案:

答案 0 :(得分:4)

如果您已经拥有X11窗口,则需要定义VK_USE_PLATFORM_XLIB_KHR并使用vkCreateXlibSurfaceKHR从中创建与Vulkan兼容的表面,或者如果您想使用XCB,请使用{{1 }并定义vkCreateXcbSurfaceKHR

另请注意,您需要在实例创建时提供适当的表面扩展。 VK_USE_PLATFORM_XCB_KHRVK_KHR_XLIB_SURFACE_EXTENSION_NAME

然后在交换链创建时提供该表面(假设您的应用程序执行了一些可见的输出)。

请参阅the WSI chapter of the spec for details