38 void setUsage(VkImageUsageFlags usage);
44 std::unique_ptr<API::Image>
build(VkResult* returnResult =
nullptr);
57 VkImageTiling
_tiling{VK_IMAGE_TILING_OPTIMAL};
58 VkImageUsageFlags
_usage{VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT};
std::set< VkFormat > _preferedFormats
const API::Device & _device
void setMipLevels(uint32_t mipLevels)
void setFeatureFlags(VkFormatFeatureFlags featureFlags)
void setExtent(VkExtent3D extent)
Image(const API::Device &device)
VkImageLayout _initialLayout
Image & operator=(const Image &)=delete
std::set< uint32_t > _queueFamilyIndices
void setTiling(VkImageTiling tiling)
VkFormatFeatureFlags _featureFlags
void setUsage(VkImageUsageFlags usage)
void setImageType(VkImageType imageType)
VkImageCreateFlags _createFlags
VkSampleCountFlagBits _sampleCount
void setQueueFamilyIndices(const std::set< uint32_t > &queueFamilyIndices)
void setSampleCount(VkSampleCountFlagBits sampleCount)
void setCreateFlags(VkImageCreateFlags createFlags)
void setPreferedFormats(const std::set< VkFormat > &preferedFormats)
void setExclusive(bool exclusive)
bool build(API::Image &instance, VkResult *returnResult=nullptr)
void setArrayLayers(uint32_t arrayLayers)