14 explicit Image(
Guid t_ID,
void* t_Data =
nullptr);
An image represents a 2D file that has data about each pixel in the image.
Definition: Image.h:11
void CopyBufferToImage(VkBuffer t_Buffer)
Definition: Image.cpp:80
UINT32 m_Width
Width of this image.
Definition: Image.h:54
VkSampler m_TextureSampler
Definition: Image.h:68
uint64_t UINT64
Definition: FlingTypes.h:11
Base class that represents a loaded resource in the engine.
Definition: Resource.h:11
void CreateTextureSampler()
Definition: Image.cpp:123
virtual ~Image()
Definition: Image.cpp:189
VkDeviceMemory m_VkMemory
The Vulkan memory resource for this image.
Definition: Image.h:71
FORCEINLINE const VkImage & GetVkImage() const
Definition: Image.h:21
UINT64 GetImageSize() const
Get the Image Size object (width * height * 4) Multiply by 4 because the pixel is laid out row by row...
Definition: Image.h:30
INT32 m_Channels
The color channels of this image.
Definition: Image.h:60
VkImage m_vVkImage
The Vulkan image data.
Definition: Image.h:63
FORCEINLINE INT32 GetChannels() const
Definition: Image.h:19
int32_t INT32
Definition: FlingTypes.h:15
void Release()
Release the Vulkan resources of this image.
Definition: Image.cpp:155
FORCEINLINE UINT32 GetHeight() const
Definition: Image.h:18
FORCEINLINE const VkSampler & GetSampler() const
Definition: Image.h:23
entt::hashed_string Guid
Definition: FlingTypes.h:21
VkImageView m_ImageView
The view of this image for the swap chain.
Definition: Image.h:66
void CreateImageView()
Create a Image View object that is needed to sample this image from the swap chain.
Definition: Image.cpp:113
FORCEINLINE const VkImageView & GetVkImageView() const
Definition: Image.h:22
UINT32 m_Height
Height of this image.
Definition: Image.h:57
void LoadVulkanImage()
Loads the Vulkan resources needed for this image.
Definition: Image.cpp:27
uint32_t UINT32
Definition: FlingTypes.h:10
Image(Guid t_ID, void *t_Data=nullptr)
Definition: Image.cpp:16
FORCEINLINE UINT32 GetWidth() const
Definition: Image.h:17