Grindstone Game Engine v0.2.0
An open source game engine and toolkit.
Loading...
Searching...
No Matches
Grindstone::GraphicsAPI::Vulkan::Image Class Reference
Inheritance diagram for Grindstone::GraphicsAPI::Vulkan::Image:
Grindstone::GraphicsAPI::Image

Public Member Functions

 Image (VkImage image, VkFormat format, const char *debugName)
 Image (const CreateInfo &createInfo)
void Create ()
virtual VkImage GetImage () const
virtual VkImageView GetImageView () const
uint32_t GetWidth () const
uint32_t GetHeight () const
uint32_t GetDepth () const
uint32_t GetMipLevels () const
uint32_t GetArrayLayers () const
VkImageAspectFlags GetAspect () const
void UpdateNativeImage (VkImage image, VkImageView imageView, VkFormat format)
virtual void GenerateMipmaps (VkCommandBuffer cmd, VkImage image)
virtual void Resize (uint32_t width, uint32_t height) override
virtual void UploadData (const char *data, uint64_t dataSize) override
virtual void UploadDataRegions (void *buffer, size_t bufferSize, ImageRegion *regions, uint32_t regionCount) override
virtual void * MapMemory (uint64_t dataSize=MAPPED_MEMORY_ENTIRE_BUFFER, uint64_t dataOffset=0) override
virtual void UnmapMemory () override
virtual Grindstone::Buffer ReadbackMemory () override
Public Member Functions inherited from Grindstone::GraphicsAPI::Image
 Image (const Image &)=default
 Image (Image &&) noexcept=default
Image & operator= (const Image &)=default
Image & operator= (Image &&) noexcept=default
 Image (uint32_t width, uint32_t height, uint32_t depth, uint32_t mipLevels, uint32_t arrayLayers, uint64_t maxImageSize, GraphicsAPI::ImageDimension imageDimension, GraphicsAPI::Format format, Grindstone::Containers::BitsetFlags< GraphicsAPI::ImageUsageFlags > imageUsage, GraphicsAPI::MemoryUsage memoryUsage=GraphicsAPI::MemoryUsage::GPUOnly)
bool IsCubemap () const
uint32_t GetWidth () const
uint32_t GetHeight () const
uint32_t GetDepth () const
uint32_t GetMipLevels () const
uint32_t GetArrayLayers () const
uint64_t GetMaxImageSize () const
GraphicsAPI::ImageDimension GetImageDimension () const
GraphicsAPI::Format GetFormat () const
Grindstone::Containers::BitsetFlags< GraphicsAPI::ImageUsageFlags > GetImageUsage () const
GraphicsAPI::MemoryUsage GetMemoryUsage () const

Additional Inherited Members

Static Public Attributes inherited from Grindstone::GraphicsAPI::Image
static const uint64_t MAPPED_MEMORY_ENTIRE_BUFFER = UINT64_MAX
Protected Attributes inherited from Grindstone::GraphicsAPI::Image
uint32_t width
uint32_t height
uint32_t depth
uint32_t mipLevels
uint32_t arrayLayers
uint64_t maxImageSize
GraphicsAPI::ImageDimension imageDimension
GraphicsAPI::Format format
Grindstone::Containers::BitsetFlags< GraphicsAPI::ImageUsageFlags > imageUsage
GraphicsAPI::MemoryUsage memoryUsage = GraphicsAPI::MemoryUsage::GPUOnly

Member Function Documentation

◆ MapMemory()

void * Grindstone::GraphicsAPI::Vulkan::Image::MapMemory ( uint64_t dataSize = MAPPED_MEMORY_ENTIRE_BUFFER,
uint64_t dataOffset = 0 )
overridevirtual

◆ ReadbackMemory()

Grindstone::Buffer Grindstone::GraphicsAPI::Vulkan::Image::ReadbackMemory ( )
overridevirtual

◆ Resize()

void Grindstone::GraphicsAPI::Vulkan::Image::Resize ( uint32_t width,
uint32_t height )
overridevirtual

◆ UnmapMemory()

void Grindstone::GraphicsAPI::Vulkan::Image::UnmapMemory ( )
overridevirtual

◆ UploadData()

void Grindstone::GraphicsAPI::Vulkan::Image::UploadData ( const char * data,
uint64_t dataSize )
overridevirtual

◆ UploadDataRegions()

void Grindstone::GraphicsAPI::Vulkan::Image::UploadDataRegions ( void * buffer,
size_t bufferSize,
ImageRegion * regions,
uint32_t regionCount )
overridevirtual

The documentation for this class was generated from the following files:
  • /github/workspace/plugins/Grindstone.RHI.Vulkan/include/VulkanImage.hpp
  • /github/workspace/plugins/Grindstone.RHI.Vulkan/source/VulkanImage.cpp