Class Image¶
Defined in File image.h
Inheritance Relationships¶
Base Type¶
public portal::renderer::RendererResource(Class RendererResource)
Derived Type¶
public portal::renderer::vulkan::VulkanImage(Class VulkanImage)
Class Documentation¶
-
class Image : public portal::renderer::RendererResource¶
Abstract image interface for GPU textures and render targets.
Provides dimension queries, data transfer, mipmap support, and per-layer view creation. Concrete implementations (VulkanImage) handle actual GPU allocation.
Subclassed by portal::renderer::vulkan::VulkanImage
Public Functions
-
virtual void resize(size_t width, size_t height) = 0¶
Resizes image (recreates GPU allocation)
-
virtual void reallocate() = 0¶
Reallocates image with current properties.
-
virtual void release() = 0¶
Releases GPU resources.
-
virtual size_t get_width() const = 0¶
Gets image width.
-
virtual size_t get_height() const = 0¶
Gets image height.
-
virtual glm::uvec2 get_size() const = 0¶
Gets image size as 2D vector.
-
virtual bool has_mip() const = 0¶
Checks if image has mipmaps.
-
virtual float get_aspect_ratio() const = 0¶
Gets aspect ratio (width/height)
-
virtual const image::Properties &get_prop() const = 0¶
Gets image properties.
-
virtual void create_per_layer_image_view() = 0¶
Creates per-layer image views for array/cube textures.
-
virtual void resize(size_t width, size_t height) = 0¶