28 lines
628 B
C++
28 lines
628 B
C++
#include"RenderSurface.h"
|
|
|
|
VK_NAMESPACE_BEGIN
|
|
|
|
CommandBuffer *RenderSurface::CreateCommandBuffer()
|
|
{
|
|
if(!rsa->cmd_pool)
|
|
return(nullptr);
|
|
|
|
VkCommandBufferAllocateInfo cmd={};
|
|
cmd.sType=VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO;
|
|
cmd.pNext=nullptr;
|
|
cmd.commandPool=rsa->cmd_pool;
|
|
cmd.level=VK_COMMAND_BUFFER_LEVEL_PRIMARY;
|
|
cmd.commandBufferCount=1;
|
|
|
|
VkCommandBuffer cmd_buf;
|
|
|
|
VkResult res=vkAllocateCommandBuffers(rsa->device,&cmd,&cmd_buf);
|
|
|
|
if(res!=VK_SUCCESS)
|
|
return(nullptr);
|
|
|
|
return(new CommandBuffer(rsa->device,rsa->cmd_pool,cmd_buf));
|
|
}
|
|
|
|
VK_NAMESPACE_END
|