mirror of
https://github.com/libretro/RetroArch
synced 2025-02-04 21:40:02 +00:00
(Vulkan) Add descriptor set layout function callbacks
This commit is contained in:
parent
caed6c61cb
commit
83dc7db6c7
@ -1148,6 +1148,10 @@ bool vulkan_context_init(gfx_ctx_vulkan_data_t *vk,
|
|||||||
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, CmdBindDescriptorSets);
|
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, CmdBindDescriptorSets);
|
||||||
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, UpdateDescriptorSets);
|
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, UpdateDescriptorSets);
|
||||||
|
|
||||||
|
/* Descriptor Set Layout */
|
||||||
|
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, CreateDescriptorSetLayout);
|
||||||
|
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, DestroyDescriptorSetLayout);
|
||||||
|
|
||||||
/* Framebuffers */
|
/* Framebuffers */
|
||||||
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, CreateFramebuffer);
|
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, CreateFramebuffer);
|
||||||
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, DestroyFramebuffer);
|
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, DestroyFramebuffer);
|
||||||
@ -1170,6 +1174,7 @@ bool vulkan_context_init(gfx_ctx_vulkan_data_t *vk,
|
|||||||
|
|
||||||
/* Pipelines */
|
/* Pipelines */
|
||||||
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, CreatePipelineLayout);
|
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, CreatePipelineLayout);
|
||||||
|
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, DestroyPipelineLayout);
|
||||||
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, CreatePipelineCache);
|
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, CreatePipelineCache);
|
||||||
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, CmdBindPipeline);
|
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, CmdBindPipeline);
|
||||||
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, DestroyPipeline);
|
VK_GET_INSTANCE_PROC_ADDR(vk, vk->context.instance, DestroyPipeline);
|
||||||
|
@ -162,9 +162,14 @@ typedef struct vulkan_context
|
|||||||
|
|
||||||
/* Pipelines */
|
/* Pipelines */
|
||||||
PFN_vkCmdBindPipeline vkCmdBindPipeline;
|
PFN_vkCmdBindPipeline vkCmdBindPipeline;
|
||||||
PFN_vkCreatePipelineLayout vkCreatePipelineLayout;
|
|
||||||
PFN_vkCreatePipelineCache vkCreatePipelineCache;
|
|
||||||
PFN_vkDestroyPipeline vkDestroyPipeline;
|
PFN_vkDestroyPipeline vkDestroyPipeline;
|
||||||
|
|
||||||
|
/* Pipeline Layouts */
|
||||||
|
PFN_vkCreatePipelineLayout vkCreatePipelineLayout;
|
||||||
|
PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout;
|
||||||
|
|
||||||
|
/* Pipeline Cache */
|
||||||
|
PFN_vkCreatePipelineCache vkCreatePipelineCache;
|
||||||
|
|
||||||
/* Descriptor pools */
|
/* Descriptor pools */
|
||||||
PFN_vkCreateDescriptorPool vkCreateDescriptorPool;
|
PFN_vkCreateDescriptorPool vkCreateDescriptorPool;
|
||||||
@ -173,6 +178,10 @@ typedef struct vulkan_context
|
|||||||
PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets;
|
PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets;
|
||||||
PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets;
|
PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets;
|
||||||
|
|
||||||
|
/* Descriptor Set Layout */
|
||||||
|
PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout;
|
||||||
|
PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout;
|
||||||
|
|
||||||
/* Command Buffers */
|
/* Command Buffers */
|
||||||
PFN_vkCreateCommandPool vkCreateCommandPool;
|
PFN_vkCreateCommandPool vkCreateCommandPool;
|
||||||
PFN_vkDestroyCommandPool vkDestroyCommandPool;
|
PFN_vkDestroyCommandPool vkDestroyCommandPool;
|
||||||
|
@ -186,7 +186,7 @@ static void vulkan_init_pipeline_layout(
|
|||||||
set_layout_info.bindingCount = 2;
|
set_layout_info.bindingCount = 2;
|
||||||
set_layout_info.pBindings = bindings;
|
set_layout_info.pBindings = bindings;
|
||||||
|
|
||||||
vkCreateDescriptorSetLayout(vk->context->device,
|
VKFUNC(vkCreateDescriptorSetLayout)(vk->context->device,
|
||||||
&set_layout_info, NULL, &vk->pipelines.set_layout);
|
&set_layout_info, NULL, &vk->pipelines.set_layout);
|
||||||
|
|
||||||
layout_info.setLayoutCount = 1;
|
layout_info.setLayoutCount = 1;
|
||||||
@ -549,9 +549,9 @@ static void vulkan_deinit_pipeline_layout(
|
|||||||
struct vulkan_context_fp *vkcfp,
|
struct vulkan_context_fp *vkcfp,
|
||||||
vk_t *vk)
|
vk_t *vk)
|
||||||
{
|
{
|
||||||
vkDestroyPipelineLayout(vk->context->device,
|
VKFUNC(vkDestroyPipelineLayout)(vk->context->device,
|
||||||
vk->pipelines.layout, NULL);
|
vk->pipelines.layout, NULL);
|
||||||
vkDestroyDescriptorSetLayout(vk->context->device,
|
VKFUNC(vkDestroyDescriptorSetLayout)(vk->context->device,
|
||||||
vk->pipelines.set_layout, NULL);
|
vk->pipelines.set_layout, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user