15 static std::shared_ptr<Fling::Texture>
Create(
Guid t_ID);
FORCEINLINE INT32 GetChannels() const
Definition: Texture.h:22
UINT32 m_Width
Width of this image.
Definition: Texture.h:68
VkSampler m_TextureSampler
Definition: Texture.h:84
stbi_uc * GetPixelData() const
Get the Pixel Data object.
Definition: Texture.h:42
FORCEINLINE UINT32 GetMipLevels() const
Definition: Texture.h:23
UINT32 m_Height
Height of this image.
Definition: Texture.h:71
VkFormat m_Format
Definition: Texture.h:94
void Release()
Release the Vulkan resources of this image.
Definition: Texture.cpp:272
UINT64 GetImageSize() const
Get the Image Size object (width * height * 4) Multiply by 4 because the pixel is laid out row by row...
Definition: Texture.h:35
void CreateTextureSampler()
Definition: Texture.cpp:239
uint64_t UINT64
Definition: FlingTypes.h:14
virtual ~Texture()
Definition: Texture.cpp:312
FORCEINLINE VkDescriptorImageInfo * GetDescriptorInfo()
Definition: Texture.h:28
VkDeviceMemory m_VkMemory
The Vulkan memory resource for this image.
Definition: Texture.h:87
FORCEINLINE const VkSampler & GetSampler() const
Definition: Texture.h:27
Base class that represents a loaded resource in the engine.
Definition: Resource.h:11
FORCEINLINE const VkImageView & GetVkImageView() const
Definition: Texture.h:26
An image represents a 2D file that has data about each pixel in the image.
Definition: Texture.h:11
FORCEINLINE const VkFormat & GetVkImageFormat() const
Definition: Texture.h:29
VkImageView m_ImageView
The view of this image for the swap chain.
Definition: Texture.h:82
void CopyBufferToImage(VkBuffer t_Buffer)
Definition: Texture.cpp:195
void CreateImageView()
Create a Image View object that is needed to sample this image from the swap chain.
Definition: Texture.cpp:228
int32_t INT32
Definition: FlingTypes.h:18
VkDescriptorImageInfo m_ImageInfo
Definition: Texture.h:89
INT32 m_Channels
The color channels of this image.
Definition: Texture.h:76
FORCEINLINE UINT32 GetHeight() const
Definition: Texture.h:21
UINT32 m_MipLevels
Definition: Texture.h:73
void GenerateMipMaps(VkFormat imageFormat)
Definition: Texture.cpp:97
entt::hashed_string Guid
Definition: FlingTypes.h:26
VkImage m_vVkImage
The Vulkan image data.
Definition: Texture.h:79
FORCEINLINE UINT32 GetWidth() const
Definition: Texture.h:20
static std::shared_ptr< Fling::Texture > Create(Guid t_ID)
Definition: Texture.cpp:19
Texture(Guid t_ID)
Definition: Texture.cpp:24
void LoadVulkanImage()
Loads the Vulkan resources needed for this image.
Definition: Texture.cpp:39
FORCEINLINE const VkImage & GetVkImage() const
Definition: Texture.h:25
stbi_uc * m_PixelData
Pixel data of image.
Definition: Texture.h:92
uint32_t UINT32
Definition: FlingTypes.h:13