KhronosGroup / KhronosGroup/Vulkan-Docs

Ambiguity about whether VkExternalMemoryImageCreateInfo and VkExternalMemoryBufferCreateInfo are needed when exporting memory

Open
#867 4 comments 0 reactions 1 assignee Claimed by @cubanismo View on GitHub
Dominant language
JavaScript
Stars
3.3k
Forks
549
Avg merge
5d 5h
Merged PRs (30d)
2

Description

Current docs say:

> To define a set of external memory handle types that may be used as backing store for an image, add a VkExternalMemoryImageCreateInfo structure to the pNext chain of the VkImageCreateInfo structure.

and
>To define a set of external memory handle types that may be used as backing store for a buffer, add a VkExternalMemoryBufferCreateInfo structure to the pNext chain of the VkBufferCreateInfo structure.

That sounds like you only use them when creating an image or buffer over imported external memory.

However, in the discussion for `VK_EXT_image_drm_format_modifier`, when talking about exporting an image with format information, we read:
>The application creates the image by chaining VkImageDrmFormatModifierListCreateInfoEXT and VkExternalMemoryImageCreateInfo onto VkImageCreateInfo. The protocol and APIs by which the application will share the image with external consumers will likely determine the value of VkExternalMemoryImageCreateInfo::handleTypes.

So. Is the extension doc wrong? Is it describing that in the specific situation when using `VkImageDrmFormatModifierListCreateInfoEXT` you need to chain a `VkExternalMemoryImageCreateInfo`? or is it reflecting that you actually need `VkExternalMemoryImageCreateInfo` for any image being created for exporting?

Thanks.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.