RenderSurface类增加CreateVBO/IBO/SSBO/INBO等函数,并和UBO使用同样的宏定义创建函数

This commit is contained in:
HuYingzhuo 2019-04-11 23:02:38 +08:00
parent 919d2cb14e
commit 113d3472d9

View File

@ -36,10 +36,15 @@ public:
Buffer * CreateBuffer(VkBufferUsageFlags buf_usage,VkDeviceSize size,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE);
Buffer * CreateUBO(VkDeviceSize size,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE)
{
return CreateBuffer(VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT,size,sharing_mode);
}
#define CREATE_BUFFER_OBJECT(LargeName,type) Buffer *Create##LargeName(VkDeviceSize size,VkSharingMode sharing_mode=VK_SHARING_MODE_EXCLUSIVE){return CreateBuffer(VK_BUFFER_USAGE_##type##_BUFFER_BIT,size,sharing_mode);}
CREATE_BUFFER_OBJECT(UBO,UNIFORM)
CREATE_BUFFER_OBJECT(VBO,VERTEX)
CREATE_BUFFER_OBJECT(IBO,INDEX)
CREATE_BUFFER_OBJECT(SSBO,STORAGE)
CREATE_BUFFER_OBJECT(INBO,INDIRECT)
#undef CREATE_BUFFER_OBJECT
CommandBuffer * CreateCommandBuffer ();
};//class RenderSurface