diff --git a/example/Vulkan/RenderSurface.h b/example/Vulkan/RenderSurface.h index a00a8045..5a1ffc33 100644 --- a/example/Vulkan/RenderSurface.h +++ b/example/Vulkan/RenderSurface.h @@ -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