summaryrefslogtreecommitdiff
path: root/src/video_core/vulkan_common
diff options
context:
space:
mode:
authorGravatar Liam2022-12-02 17:04:28 -0500
committerGravatar Liam2022-12-04 10:55:13 -0500
commite44a804ec75457457db1b4c439e4e5488e8e2f8e (patch)
treea06c8730692e834bf604b41cb7197a51bf26982f /src/video_core/vulkan_common
parentvulkan_common: promote timeline semaphore usage to core (diff)
downloadyuzu-e44a804ec75457457db1b4c439e4e5488e8e2f8e.tar.gz
yuzu-e44a804ec75457457db1b4c439e4e5488e8e2f8e.tar.xz
yuzu-e44a804ec75457457db1b4c439e4e5488e8e2f8e.zip
vulkan_common: promote descriptor update template usage to core
Diffstat (limited to 'src/video_core/vulkan_common')
-rw-r--r--src/video_core/vulkan_common/vulkan_device.cpp1
-rw-r--r--src/video_core/vulkan_common/vulkan_wrapper.cpp20
-rw-r--r--src/video_core/vulkan_common/vulkan_wrapper.h20
3 files changed, 20 insertions, 21 deletions
diff --git a/src/video_core/vulkan_common/vulkan_device.cpp b/src/video_core/vulkan_common/vulkan_device.cpp
index f4c1bd979..72968a01c 100644
--- a/src/video_core/vulkan_common/vulkan_device.cpp
+++ b/src/video_core/vulkan_common/vulkan_device.cpp
@@ -80,7 +80,6 @@ constexpr std::array REQUIRED_EXTENSIONS{
80 80
81 // Core in 1.2, but required due to use of extension methods, 81 // Core in 1.2, but required due to use of extension methods,
82 // and well-supported by drivers 82 // and well-supported by drivers
83 VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME,
84 VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME, 83 VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME,
85#ifdef _WIN32 84#ifdef _WIN32
86 VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME, 85 VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME,
diff --git a/src/video_core/vulkan_common/vulkan_wrapper.cpp b/src/video_core/vulkan_common/vulkan_wrapper.cpp
index af79ffd61..f842524c4 100644
--- a/src/video_core/vulkan_common/vulkan_wrapper.cpp
+++ b/src/video_core/vulkan_common/vulkan_wrapper.cpp
@@ -130,7 +130,7 @@ void Load(VkDevice device, DeviceDispatch& dld) noexcept {
130 X(vkCreateComputePipelines); 130 X(vkCreateComputePipelines);
131 X(vkCreateDescriptorPool); 131 X(vkCreateDescriptorPool);
132 X(vkCreateDescriptorSetLayout); 132 X(vkCreateDescriptorSetLayout);
133 X(vkCreateDescriptorUpdateTemplateKHR); 133 X(vkCreateDescriptorUpdateTemplate);
134 X(vkCreateEvent); 134 X(vkCreateEvent);
135 X(vkCreateFence); 135 X(vkCreateFence);
136 X(vkCreateFramebuffer); 136 X(vkCreateFramebuffer);
@@ -149,7 +149,7 @@ void Load(VkDevice device, DeviceDispatch& dld) noexcept {
149 X(vkDestroyCommandPool); 149 X(vkDestroyCommandPool);
150 X(vkDestroyDescriptorPool); 150 X(vkDestroyDescriptorPool);
151 X(vkDestroyDescriptorSetLayout); 151 X(vkDestroyDescriptorSetLayout);
152 X(vkDestroyDescriptorUpdateTemplateKHR); 152 X(vkDestroyDescriptorUpdateTemplate);
153 X(vkDestroyEvent); 153 X(vkDestroyEvent);
154 X(vkDestroyFence); 154 X(vkDestroyFence);
155 X(vkDestroyFramebuffer); 155 X(vkDestroyFramebuffer);
@@ -188,7 +188,7 @@ void Load(VkDevice device, DeviceDispatch& dld) noexcept {
188 X(vkSetDebugUtilsObjectNameEXT); 188 X(vkSetDebugUtilsObjectNameEXT);
189 X(vkSetDebugUtilsObjectTagEXT); 189 X(vkSetDebugUtilsObjectTagEXT);
190 X(vkUnmapMemory); 190 X(vkUnmapMemory);
191 X(vkUpdateDescriptorSetWithTemplateKHR); 191 X(vkUpdateDescriptorSetWithTemplate);
192 X(vkUpdateDescriptorSets); 192 X(vkUpdateDescriptorSets);
193 X(vkWaitForFences); 193 X(vkWaitForFences);
194 X(vkWaitSemaphores); 194 X(vkWaitSemaphores);
@@ -366,9 +366,9 @@ void Destroy(VkDevice device, VkDescriptorSetLayout handle, const DeviceDispatch
366 dld.vkDestroyDescriptorSetLayout(device, handle, nullptr); 366 dld.vkDestroyDescriptorSetLayout(device, handle, nullptr);
367} 367}
368 368
369void Destroy(VkDevice device, VkDescriptorUpdateTemplateKHR handle, 369void Destroy(VkDevice device, VkDescriptorUpdateTemplate handle,
370 const DeviceDispatch& dld) noexcept { 370 const DeviceDispatch& dld) noexcept {
371 dld.vkDestroyDescriptorUpdateTemplateKHR(device, handle, nullptr); 371 dld.vkDestroyDescriptorUpdateTemplate(device, handle, nullptr);
372} 372}
373 373
374void Destroy(VkDevice device, VkDeviceMemory handle, const DeviceDispatch& dld) noexcept { 374void Destroy(VkDevice device, VkDeviceMemory handle, const DeviceDispatch& dld) noexcept {
@@ -744,11 +744,11 @@ CommandPool Device::CreateCommandPool(const VkCommandPoolCreateInfo& ci) const {
744 return CommandPool(object, handle, *dld); 744 return CommandPool(object, handle, *dld);
745} 745}
746 746
747DescriptorUpdateTemplateKHR Device::CreateDescriptorUpdateTemplateKHR( 747DescriptorUpdateTemplate Device::CreateDescriptorUpdateTemplate(
748 const VkDescriptorUpdateTemplateCreateInfoKHR& ci) const { 748 const VkDescriptorUpdateTemplateCreateInfo& ci) const {
749 VkDescriptorUpdateTemplateKHR object; 749 VkDescriptorUpdateTemplate object;
750 Check(dld->vkCreateDescriptorUpdateTemplateKHR(handle, &ci, nullptr, &object)); 750 Check(dld->vkCreateDescriptorUpdateTemplate(handle, &ci, nullptr, &object));
751 return DescriptorUpdateTemplateKHR(object, handle, *dld); 751 return DescriptorUpdateTemplate(object, handle, *dld);
752} 752}
753 753
754QueryPool Device::CreateQueryPool(const VkQueryPoolCreateInfo& ci) const { 754QueryPool Device::CreateQueryPool(const VkQueryPoolCreateInfo& ci) const {
diff --git a/src/video_core/vulkan_common/vulkan_wrapper.h b/src/video_core/vulkan_common/vulkan_wrapper.h
index fb6c59f60..101205386 100644
--- a/src/video_core/vulkan_common/vulkan_wrapper.h
+++ b/src/video_core/vulkan_common/vulkan_wrapper.h
@@ -247,7 +247,7 @@ struct DeviceDispatch : InstanceDispatch {
247 PFN_vkCreateComputePipelines vkCreateComputePipelines{}; 247 PFN_vkCreateComputePipelines vkCreateComputePipelines{};
248 PFN_vkCreateDescriptorPool vkCreateDescriptorPool{}; 248 PFN_vkCreateDescriptorPool vkCreateDescriptorPool{};
249 PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout{}; 249 PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout{};
250 PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR{}; 250 PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate{};
251 PFN_vkCreateEvent vkCreateEvent{}; 251 PFN_vkCreateEvent vkCreateEvent{};
252 PFN_vkCreateFence vkCreateFence{}; 252 PFN_vkCreateFence vkCreateFence{};
253 PFN_vkCreateFramebuffer vkCreateFramebuffer{}; 253 PFN_vkCreateFramebuffer vkCreateFramebuffer{};
@@ -266,7 +266,7 @@ struct DeviceDispatch : InstanceDispatch {
266 PFN_vkDestroyCommandPool vkDestroyCommandPool{}; 266 PFN_vkDestroyCommandPool vkDestroyCommandPool{};
267 PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool{}; 267 PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool{};
268 PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout{}; 268 PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout{};
269 PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR{}; 269 PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate{};
270 PFN_vkDestroyEvent vkDestroyEvent{}; 270 PFN_vkDestroyEvent vkDestroyEvent{};
271 PFN_vkDestroyFence vkDestroyFence{}; 271 PFN_vkDestroyFence vkDestroyFence{};
272 PFN_vkDestroyFramebuffer vkDestroyFramebuffer{}; 272 PFN_vkDestroyFramebuffer vkDestroyFramebuffer{};
@@ -305,7 +305,7 @@ struct DeviceDispatch : InstanceDispatch {
305 PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT{}; 305 PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT{};
306 PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT{}; 306 PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT{};
307 PFN_vkUnmapMemory vkUnmapMemory{}; 307 PFN_vkUnmapMemory vkUnmapMemory{};
308 PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR{}; 308 PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate{};
309 PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets{}; 309 PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets{};
310 PFN_vkWaitForFences vkWaitForFences{}; 310 PFN_vkWaitForFences vkWaitForFences{};
311 PFN_vkWaitSemaphores vkWaitSemaphores{}; 311 PFN_vkWaitSemaphores vkWaitSemaphores{};
@@ -327,7 +327,7 @@ void Destroy(VkDevice, VkBufferView, const DeviceDispatch&) noexcept;
327void Destroy(VkDevice, VkCommandPool, const DeviceDispatch&) noexcept; 327void Destroy(VkDevice, VkCommandPool, const DeviceDispatch&) noexcept;
328void Destroy(VkDevice, VkDescriptorPool, const DeviceDispatch&) noexcept; 328void Destroy(VkDevice, VkDescriptorPool, const DeviceDispatch&) noexcept;
329void Destroy(VkDevice, VkDescriptorSetLayout, const DeviceDispatch&) noexcept; 329void Destroy(VkDevice, VkDescriptorSetLayout, const DeviceDispatch&) noexcept;
330void Destroy(VkDevice, VkDescriptorUpdateTemplateKHR, const DeviceDispatch&) noexcept; 330void Destroy(VkDevice, VkDescriptorUpdateTemplate, const DeviceDispatch&) noexcept;
331void Destroy(VkDevice, VkDeviceMemory, const DeviceDispatch&) noexcept; 331void Destroy(VkDevice, VkDeviceMemory, const DeviceDispatch&) noexcept;
332void Destroy(VkDevice, VkEvent, const DeviceDispatch&) noexcept; 332void Destroy(VkDevice, VkEvent, const DeviceDispatch&) noexcept;
333void Destroy(VkDevice, VkFence, const DeviceDispatch&) noexcept; 333void Destroy(VkDevice, VkFence, const DeviceDispatch&) noexcept;
@@ -559,7 +559,7 @@ private:
559 559
560using DebugUtilsMessenger = Handle<VkDebugUtilsMessengerEXT, VkInstance, InstanceDispatch>; 560using DebugUtilsMessenger = Handle<VkDebugUtilsMessengerEXT, VkInstance, InstanceDispatch>;
561using DescriptorSetLayout = Handle<VkDescriptorSetLayout, VkDevice, DeviceDispatch>; 561using DescriptorSetLayout = Handle<VkDescriptorSetLayout, VkDevice, DeviceDispatch>;
562using DescriptorUpdateTemplateKHR = Handle<VkDescriptorUpdateTemplateKHR, VkDevice, DeviceDispatch>; 562using DescriptorUpdateTemplate = Handle<VkDescriptorUpdateTemplate, VkDevice, DeviceDispatch>;
563using Pipeline = Handle<VkPipeline, VkDevice, DeviceDispatch>; 563using Pipeline = Handle<VkPipeline, VkDevice, DeviceDispatch>;
564using PipelineLayout = Handle<VkPipelineLayout, VkDevice, DeviceDispatch>; 564using PipelineLayout = Handle<VkPipelineLayout, VkDevice, DeviceDispatch>;
565using QueryPool = Handle<VkQueryPool, VkDevice, DeviceDispatch>; 565using QueryPool = Handle<VkQueryPool, VkDevice, DeviceDispatch>;
@@ -840,8 +840,8 @@ public:
840 840
841 CommandPool CreateCommandPool(const VkCommandPoolCreateInfo& ci) const; 841 CommandPool CreateCommandPool(const VkCommandPoolCreateInfo& ci) const;
842 842
843 DescriptorUpdateTemplateKHR CreateDescriptorUpdateTemplateKHR( 843 DescriptorUpdateTemplate CreateDescriptorUpdateTemplate(
844 const VkDescriptorUpdateTemplateCreateInfoKHR& ci) const; 844 const VkDescriptorUpdateTemplateCreateInfo& ci) const;
845 845
846 QueryPool CreateQueryPool(const VkQueryPoolCreateInfo& ci) const; 846 QueryPool CreateQueryPool(const VkQueryPoolCreateInfo& ci) const;
847 847
@@ -869,9 +869,9 @@ public:
869 void UpdateDescriptorSets(Span<VkWriteDescriptorSet> writes, 869 void UpdateDescriptorSets(Span<VkWriteDescriptorSet> writes,
870 Span<VkCopyDescriptorSet> copies) const noexcept; 870 Span<VkCopyDescriptorSet> copies) const noexcept;
871 871
872 void UpdateDescriptorSet(VkDescriptorSet set, VkDescriptorUpdateTemplateKHR update_template, 872 void UpdateDescriptorSet(VkDescriptorSet set, VkDescriptorUpdateTemplate update_template,
873 const void* data) const noexcept { 873 const void* data) const noexcept {
874 dld->vkUpdateDescriptorSetWithTemplateKHR(handle, set, update_template, data); 874 dld->vkUpdateDescriptorSetWithTemplate(handle, set, update_template, data);
875 } 875 }
876 876
877 VkResult AcquireNextImageKHR(VkSwapchainKHR swapchain, u64 timeout, VkSemaphore semaphore, 877 VkResult AcquireNextImageKHR(VkSwapchainKHR swapchain, u64 timeout, VkSemaphore semaphore,
@@ -980,7 +980,7 @@ public:
980 dynamic_offsets.size(), dynamic_offsets.data()); 980 dynamic_offsets.size(), dynamic_offsets.data());
981 } 981 }
982 982
983 void PushDescriptorSetWithTemplateKHR(VkDescriptorUpdateTemplateKHR update_template, 983 void PushDescriptorSetWithTemplateKHR(VkDescriptorUpdateTemplate update_template,
984 VkPipelineLayout layout, u32 set, 984 VkPipelineLayout layout, u32 set,
985 const void* data) const noexcept { 985 const void* data) const noexcept {
986 dld->vkCmdPushDescriptorSetWithTemplateKHR(handle, update_template, layout, set, data); 986 dld->vkCmdPushDescriptorSetWithTemplateKHR(handle, update_template, layout, set, data);