History

avutil/vulkan: automatically enable shader device address usage bit

We require this internally when using descriptor buffers, so it makes sense to enable it internally, also.

Niklas Haas committed 1 year ago

Commit 0a4cdf81 parent c2521c01 file · +10 −0Browse files

Unified · Split

libavutil/vulkan.c+10−0
@@ -989,6 +989,16 @@ int ff_vk_create_buf(FFVulkanContext *s, FFVkBuffer *buf, size_t size, · 988 unmodified lines
989989 int use_ded_mem;
990990 FFVulkanFunctions *vk = &s->vkfn;
991991
992+ /* Buffer usage flags corresponding to buffer descriptor types */
993+ const VkBufferUsageFlags desc_usage =
994+ VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT |
995+ VK_BUFFER_USAGE_STORAGE_BUFFER_BIT |
996+ VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT |
997+ VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT;
998+
999+ if ((s->extensions & FF_VK_EXT_DESCRIPTOR_BUFFER) && (usage & desc_usage))
1000+ usage |= VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT;
1001+
9921002 VkBufferCreateInfo buf_spawn = {
9931003 .sType = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO,
9941004 .pNext = pNext,

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t