#ifndef _RENDER_BUFFER_H_ #define _RENDER_BUFFER_H_ #include struct renderer; struct buffer { VkBuffer buffer; VkDeviceMemory memory; }; VkResult buffer_create(struct renderer *ren, VkDeviceSize size, VkBufferUsageFlags usage, VkMemoryPropertyFlags props, struct buffer *buf); void buffer_destroy(struct renderer *ren, struct buffer *buf); VkResult create_image(struct renderer *ren, VkExtent2D extent, uint32_t mip_level, VkFormat format, VkImageTiling tiling, VkImageUsageFlags usage, VkMemoryPropertyFlags props, VkImage *img, VkDeviceMemory *memory); VkResult create_image_view(VkDevice gpu, VkImage image, VkFormat format, VkImageAspectFlags flags, VkImageView *view); #endif