19 const Device & device,
23 VkSampleCountFlagBits numSamples,
26 VkImageUsageFlags usage,
27 VkMemoryPropertyFlags properties,
29 VkDeviceMemory & memory
34 const Device & device,
36 VkImageAspectFlags aspectFlags,
39 VkImageView & imageView
53 std::filesystem::path imageFile,
55 VkSampleCountFlagBits
msaaSamples = VK_SAMPLE_COUNT_1_BIT
66 VkSampleCountFlagBits
msaaSamples = VK_SAMPLE_COUNT_1_BIT
77 std::vector<std::byte> pixels,
78 VkSampleCountFlagBits
msaaSamples = VK_SAMPLE_COUNT_1_BIT
90 void bind(
unsigned unit) {}
99 std::vector<std::byte> pixels
118 VkImageLayout oldLayout,
119 VkImageLayout newLayout
133 std::vector<std::byte> pixels,
Type
Definition texture.h:21
const VkDevice & getVkDevice() const
Definition device.h:24
Definition vkTexture.h:43
const Device & device
Definition vkTexture.h:104
void copyBufferToImage(const Command &command, Buffer &buffer, uint32_t width, uint32_t height)
Definition vkTexture.cpp:261
~vkTexture()
Definition vkTexture.h:83
void uploadImage(const Command &command, std::vector< std::byte > pixels, VkFormat format, uint32_t width, uint32_t height, uint32_t channels)
Definition vkTexture.cpp:303
VkFormat format
Definition vkTexture.h:110
void replace(const Command &command, uint32_t width, uint32_t height, uint32_t channels, VkFormat format, std::vector< std::byte > pixels)
Definition vkTexture.cpp:373
uint32_t width
Definition vkTexture.h:111
void transitionImageLayout(const Command &command, VkFormat format, VkImageLayout oldLayout, VkImageLayout newLayout)
Definition vkTexture.cpp:198
VkSampleCountFlagBits msaaSamples
Definition vkTexture.h:112
const VkImageView & getVkImageView() const
Definition vkTexture.h:81
VkImage image
Definition vkTexture.h:106
VkDeviceMemory imageMemory
Definition vkTexture.h:108
void bind(unsigned unit)
Definition vkTexture.h:90
uint32_t channels
Definition vkTexture.h:111
VkImageView imageView
Definition vkTexture.h:107
uint32_t height
Definition vkTexture.h:111
void createImage(const Device &device, uint32_t width, uint32_t height, uint32_t mipLevels, VkSampleCountFlagBits numSamples, VkFormat format, VkImageTiling tiling, VkImageUsageFlags usage, VkMemoryPropertyFlags properties, VkImage &image, VkDeviceMemory &memory)
Definition vkTexture.cpp:115
void createImageView(const Device &device, VkFormat format, VkImageAspectFlags aspectFlags, uint32_t mipLevels, VkImage &image, VkImageView &imageView)
Definition vkTexture.cpp:171