summaryrefslogtreecommitdiffstats
path: root/src/video_core/vulkan_common/vulkan_wrapper.h
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2022-02-09 15:39:40 +0100
committerFernando Sahmkow <fsahmkow27@gmail.com>2023-01-01 22:43:57 +0100
commit0f89828073a541eaa2cfd985483f839bd2f97b74 (patch)
tree3e26c71678e17ca97ec744a884f5ecb9ae2b6c5e /src/video_core/vulkan_common/vulkan_wrapper.h
parentMacroHLE: Add MultidrawIndirect HLE Macro. (diff)
downloadyuzu-0f89828073a541eaa2cfd985483f839bd2f97b74.tar
yuzu-0f89828073a541eaa2cfd985483f839bd2f97b74.tar.gz
yuzu-0f89828073a541eaa2cfd985483f839bd2f97b74.tar.bz2
yuzu-0f89828073a541eaa2cfd985483f839bd2f97b74.tar.lz
yuzu-0f89828073a541eaa2cfd985483f839bd2f97b74.tar.xz
yuzu-0f89828073a541eaa2cfd985483f839bd2f97b74.tar.zst
yuzu-0f89828073a541eaa2cfd985483f839bd2f97b74.zip
Diffstat (limited to '')
-rw-r--r--src/video_core/vulkan_common/vulkan_wrapper.h24
1 files changed, 18 insertions, 6 deletions
diff --git a/src/video_core/vulkan_common/vulkan_wrapper.h b/src/video_core/vulkan_common/vulkan_wrapper.h
index 9bd158dce..493a48573 100644
--- a/src/video_core/vulkan_common/vulkan_wrapper.h
+++ b/src/video_core/vulkan_common/vulkan_wrapper.h
@@ -213,8 +213,10 @@ struct DeviceDispatch : InstanceDispatch {
PFN_vkCmdDispatch vkCmdDispatch{};
PFN_vkCmdDraw vkCmdDraw{};
PFN_vkCmdDrawIndexed vkCmdDrawIndexed{};
- PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount{};
- PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount{};
+ PFN_vkCmdDrawIndirect vkCmdDrawIndirect{};
+ PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect{};
+ PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR{};
+ PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR{};
PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT{};
PFN_vkCmdEndQuery vkCmdEndQuery{};
PFN_vkCmdEndRenderPass vkCmdEndRenderPass{};
@@ -1021,17 +1023,27 @@ public:
first_instance);
}
+ void DrawIndirect(VkBuffer src_buffer, VkDeviceSize src_offset, u32 draw_count,
+ u32 stride) const noexcept {
+ dld->vkCmdDrawIndirect(handle, src_buffer, src_offset, draw_count, stride);
+ }
+
+ void DrawIndexedIndirect(VkBuffer src_buffer, VkDeviceSize src_offset, u32 draw_count,
+ u32 stride) const noexcept {
+ dld->vkCmdDrawIndexedIndirect(handle, src_buffer, src_offset, draw_count, stride);
+ }
+
void DrawIndirectCount(VkBuffer src_buffer, VkDeviceSize src_offset, VkBuffer count_buffer,
VkDeviceSize count_offset, u32 draw_count, u32 stride) const noexcept {
- dld->vkCmdDrawIndirectCount(handle, src_buffer, src_offset, count_buffer, count_offset,
- draw_count, stride);
+ dld->vkCmdDrawIndirectCountKHR(handle, src_buffer, src_offset, count_buffer, count_offset,
+ draw_count, stride);
}
void DrawIndexedIndirectCount(VkBuffer src_buffer, VkDeviceSize src_offset,
VkBuffer count_buffer, VkDeviceSize count_offset, u32 draw_count,
u32 stride) const noexcept {
- dld->vkCmdDrawIndexedIndirectCount(handle, src_buffer, src_offset, count_buffer,
- count_offset, draw_count, stride);
+ dld->vkCmdDrawIndexedIndirectCountKHR(handle, src_buffer, src_offset, count_buffer,
+ count_offset, draw_count, stride);
}
void ClearAttachments(Span<VkClearAttachment> attachments,