|
|
| Image2DArray (const glm::uvec2 &extent, uint32_t arrayLayers, VkFormat format=VK_FORMAT_R8G8B8A8_UNORM, VkImageLayout layout=VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, VkImageUsageFlags usage=VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT|VK_IMAGE_USAGE_STORAGE_BIT, VkFilter filter=VK_FILTER_LINEAR, VkSamplerAddressMode addressMode=VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE, bool anisotropic=false, bool mipmap=false) |
| |
|
| Image2DArray (std::unique_ptr< Bitmap > &&bitmap, uint32_t arrayLayers, VkFormat format=VK_FORMAT_R8G8B8A8_UNORM, VkImageLayout layout=VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, VkImageUsageFlags usage=VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT|VK_IMAGE_USAGE_STORAGE_BIT, VkFilter filter=VK_FILTER_LINEAR, VkSamplerAddressMode addressMode=VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE, bool anisotropic=false, bool mipmap=false) |
| |
|
void | SetPixels (const Bitmap &bitmap, uint32_t arrayLayer) |
| |
|
bool | IsAnisotropic () const noexcept |
| |
|
bool | IsMipmap () const noexcept |
| |
| | Image (VkFilter filter, VkSamplerAddressMode addressMode, VkSampleCountFlagBits samples, VkImageLayout layout, VkImageUsageFlags usage, VkFormat format, uint32_t mipLevels, uint32_t arrayLayers, const VkExtent3D &extent) |
| |
| WriteDescriptorSet | GetWriteDescriptor (uint32_t binding, VkDescriptorType descriptorType, const std::optional< OffsetSize > &offsetSize) const override |
| |
| std::unique_ptr< Bitmap > | GetBitmap (uint32_t mipLevel=0, uint32_t arrayLayer=0) const |
| |
|
const VkExtent3D & | GetExtent () const |
| |
|
glm::uvec2 | GetSize () const |
| |
|
VkFormat | GetFormat () const |
| |
|
VkSampleCountFlagBits | GetSamples () const |
| |
|
VkImageUsageFlags | GetUsage () const |
| |
|
uint32_t | GetMipLevels () const |
| |
|
uint32_t | GetArrayLevels () const |
| |
|
VkFilter | GetFilter () const |
| |
|
VkSamplerAddressMode | GetAddressMode () const |
| |
|
VkImageLayout | GetLayout () const |
| |
|
const VkImage & | GetImage () |
| |
|
const VkDeviceMemory & | GetMemory () |
| |
|
const VkSampler & | GetSampler () const |
| |
|
const VkImageView & | GetView () const |
| |
|
|
static VkDescriptorSetLayoutBinding | GetDescriptorSetLayout (uint32_t binding, VkDescriptorType descriptorType, VkShaderStageFlags stage, uint32_t count) |
| |
|
static uint32_t | GetMipLevels (const VkExtent3D &extent) |
| |
| static VkFormat | FindSupportedFormat (const std::vector< VkFormat > &candidates, VkImageTiling tiling, VkFormatFeatureFlags features) |
| |
| static bool | HasDepth (VkFormat format) |
| |
| static bool | HasStencil (VkFormat format) |
| |
|
static void | CreateImage (VkImage &image, VkDeviceMemory &memory, const VkExtent3D &extent, VkFormat format, VkSampleCountFlagBits samples, VkImageTiling tiling, VkImageUsageFlags usage, VkMemoryPropertyFlags properties, uint32_t mipLevels, uint32_t arrayLayers, VkImageType type) |
| |
|
static void | CreateImageSampler (VkSampler &sampler, VkFilter filter, VkSamplerAddressMode addressMode, bool anisotropic, uint32_t mipLevels) |
| |
|
static void | CreateImageView (const VkImage &image, VkImageView &imageView, VkImageViewType type, VkFormat format, VkImageAspectFlags imageAspect, uint32_t mipLevels, uint32_t baseMipLevel, uint32_t layerCount, uint32_t baseArrayLayer) |
| |
|
static void | CreateMipmaps (const VkImage &image, const VkExtent3D &extent, VkFormat format, VkImageLayout dstImageLayout, uint32_t mipLevels, uint32_t baseArrayLayer, uint32_t layerCount) |
| |
|
static void | TransitionImageLayout (const VkImage &image, VkFormat format, VkImageLayout srcImageLayout, VkImageLayout dstImageLayout, VkImageAspectFlags imageAspect, uint32_t mipLevels, uint32_t baseMipLevel, uint32_t layerCount, uint32_t baseArrayLayer) |
| |
|
static void | InsertImageMemoryBarrier (const CommandBuffer &commandBuffer, const VkImage &image, VkAccessFlags srcAccessMask, VkAccessFlags dstAccessMask, VkImageLayout oldImageLayout, VkImageLayout newImageLayout, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkImageAspectFlags imageAspect, uint32_t mipLevels, uint32_t baseMipLevel, uint32_t layerCount, uint32_t baseArrayLayer) |
| |
|
static void | CopyBufferToImage (const VkBuffer &buffer, const VkImage &image, const VkExtent3D &extent, uint32_t layerCount, uint32_t baseArrayLayer) |
| |
|
static bool | CopyImage (const VkImage &srcImage, VkImage &dstImage, VkDeviceMemory &dstImageMemory, VkFormat srcFormat, const VkExtent3D &extent, VkImageLayout srcImageLayout, uint32_t mipLevel, uint32_t arrayLayer) |
| |
|
VkExtent3D | m_Extent |
| |
|
VkSampleCountFlagBits | m_Samples |
| |
|
VkImageUsageFlags | m_Usage |
| |
|
VkFormat | m_Format = VK_FORMAT_UNDEFINED |
| |
|
uint32_t | m_MIPLevels = 0 |
| |
|
uint32_t | m_ArrayLayers |
| |
|
VkFilter | m_Filter |
| |
|
VkSamplerAddressMode | m_AddressMode |
| |
|
VkImageLayout | m_Layout |
| |
|
VkImage | m_Image = VK_NULL_HANDLE |
| |
|
VkDeviceMemory | m_Memory = VK_NULL_HANDLE |
| |
|
VkSampler | m_Sampler = VK_NULL_HANDLE |
| |
|
VkImageView | m_View = VK_NULL_HANDLE |
| |