Class KHRDisplaySwapchain



  • public class KHRDisplaySwapchain
    extends java.lang.Object
    This extension provides an API to create a swapchain directly on a device's display without any underlying window system.
    • Field Detail

      • VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION

        public static final int VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION
        The extension specification version.
        See Also:
        Constant Field Values
      • VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME

        public static final java.lang.String VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME
        The extension name.
        See Also:
        Constant Field Values
      • VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR

        public static final int VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR
        VkStructureType
        See Also:
        Constant Field Values
      • VK_ERROR_INCOMPATIBLE_DISPLAY_KHR

        public static final int VK_ERROR_INCOMPATIBLE_DISPLAY_KHR
        The display used by a swapchain does not use the same presentable image layout, or is incompatible in a way that prevents sharing an image.
        See Also:
        Constant Field Values
    • Method Detail

      • vkCreateSharedSwapchainsKHR

        public static int vkCreateSharedSwapchainsKHR(VkDevice device,
                                                      VkSwapchainCreateInfoKHR.Buffer pCreateInfos,
                                                      VkAllocationCallbacks pAllocator,
                                                      java.nio.LongBuffer pSwapchains)
        Creates multiple swapchains that share presentable images.

        vkCreateSharedSwapchains is similar to CreateSwapchainKHR, except that it takes an array of VkSwapchainCreateInfoKHR structures, and returns an array of swapchain objects.

        The swapchain creation parameters that affect the properties and number of presentable images must match between all the swapchains. If the displays used by any of the swapchains do not use the same presentable image layout or are incompatible in a way that prevents sharing images, swapchain creation will fail with the result code ERROR_INCOMPATIBLE_DISPLAY_KHR. If any error occurs, no swapchains will be created. Images presented to multiple swapchains must be re-acquired from all of them before transitioning away from IMAGE_LAYOUT_PRESENT_SRC_KHR. After destroying one or more of the swapchains, the remaining swapchains and the presentable images can continue to be used.

        Valid Usage
        • device must be a valid VkDevice handle
        • pCreateInfos must be a pointer to an array of swapchainCount valid VkSwapchainCreateInfoKHR structures
        • If pAllocator is not NULL, pAllocator must be a pointer to a valid VkAllocationCallbacks structure
        • pSwapchains must be a pointer to an array of swapchainCount VkSwapchainKHR handles
        • swapchainCount must be greater than 0
        Host Synchronization
        • Host access to pCreateInfos[].surface must be externally synchronized
        • Host access to pCreateInfos[].oldSwapchain must be externally synchronized
        Parameters:
        device - the device to create the swapchains for
        pCreateInfos - a pointer to an array of VkSwapchainCreateInfoKHR structures specifying the parameters of the created swapchains
        pAllocator - controls host memory allocation
        pSwapchains - a pointer to an array of VkSwapchainKHR handles in which the created swapchain objects will be returned