Open 3D Engine Atom Gem API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::RPI::ImageSystem Class Referencefinal

Inherits AZ::RPI::ImageSystemInterface.

Public Member Functions

void Init (const ImageSystemDescriptor &desc)
 
void Shutdown ()
 
void Update () override
 
const Data::Instance< Image > & GetSystemImage (SystemImage systemImage) const override
 Returns a system image generated at runtime.
 
const Data::Instance< AttachmentImage > & GetSystemAttachmentImage (RHI::Format format) override
 
const Data::Instance< StreamingImagePool > & GetSystemStreamingPool () const override
 Returns the system streaming image pool.
 
const Data::Instance< AttachmentImagePool > & GetSystemAttachmentPool () const override
 Returns the system attachment image pool. Use this if you do not need a custom pool for your allocation.
 
const Data::Instance< StreamingImagePool > & GetStreamingPool () const override
 
bool RegisterAttachmentImage (AttachmentImage *attachmentImage) override
 
void UnregisterAttachmentImage (AttachmentImage *attachmentImage) override
 Unregister an attachment image (if it's was registered)
 
Data::Instance< AttachmentImageFindRegisteredAttachmentImage (const Name &uniqueName) const override
 
- Public Member Functions inherited from AZ::RPI::ImageSystemInterface
 AZ_RTTI (ImageSystemInterface, "{C05FE364-927F-4669-ADDA-5562E20D5DC1}")
 
 AZ_DISABLE_COPY_MOVE (ImageSystemInterface)
 
virtual const Data::Instance< Image > & GetSystemImage (SystemImage systemImage) const =0
 Returns a system image generated at runtime.
 
virtual const Data::Instance< AttachmentImage > & GetSystemAttachmentImage (RHI::Format format)=0
 
virtual const Data::Instance< StreamingImagePool > & GetSystemStreamingPool () const =0
 Returns the system streaming image pool.
 
virtual const Data::Instance< StreamingImagePool > & GetStreamingPool () const =0
 
virtual const Data::Instance< AttachmentImagePool > & GetSystemAttachmentPool () const =0
 Returns the system attachment image pool. Use this if you do not need a custom pool for your allocation.
 
virtual bool RegisterAttachmentImage (AttachmentImage *attachmentImage)=0
 
virtual void UnregisterAttachmentImage (AttachmentImage *attachmentImage)=0
 Unregister an attachment image (if it's was registered)
 
virtual Data::Instance< AttachmentImageFindRegisteredAttachmentImage (const Name &uniqueName) const =0
 
virtual void Update ()=0
 

Static Public Member Functions

static void Reflect (AZ::ReflectContext *context)
 
static void GetAssetHandlers (AssetHandlerPtrList &assetHandlers)
 
- Static Public Member Functions inherited from AZ::RPI::ImageSystemInterface
static ImageSystemInterfaceGet ()
 

Member Function Documentation

◆ FindRegisteredAttachmentImage()

Data::Instance< AttachmentImage > AZ::RPI::ImageSystem::FindRegisteredAttachmentImage ( const Name &  uniqueName) const
overridevirtual

Find an attachment image by its unique name (same as its attachment id) from registered attachment images. Note: only attachment image created with an unique name will be registered.

Implements AZ::RPI::ImageSystemInterface.

◆ GetStreamingPool()

const Data::Instance< StreamingImagePool > & AZ::RPI::ImageSystem::GetStreamingPool ( ) const
overridevirtual

O3DE_DEPRECATION_NOTICE(GHI-12058)

Deprecated:
use GetSystemStreamingPool()

Implements AZ::RPI::ImageSystemInterface.

◆ GetSystemAttachmentImage()

const Data::Instance< AttachmentImage > & AZ::RPI::ImageSystem::GetSystemAttachmentImage ( RHI::Format  format)
overridevirtual

Returns a system attachment image generated at runtime for the given format. Supports color, depth, and depth/stencil attachment images

Implements AZ::RPI::ImageSystemInterface.

◆ GetSystemAttachmentPool()

const Data::Instance< AttachmentImagePool > & AZ::RPI::ImageSystem::GetSystemAttachmentPool ( ) const
overridevirtual

Returns the system attachment image pool. Use this if you do not need a custom pool for your allocation.

Implements AZ::RPI::ImageSystemInterface.

◆ GetSystemImage()

const Data::Instance< Image > & AZ::RPI::ImageSystem::GetSystemImage ( SystemImage  systemImage) const
overridevirtual

Returns a system image generated at runtime.

Implements AZ::RPI::ImageSystemInterface.

◆ GetSystemStreamingPool()

const Data::Instance< StreamingImagePool > & AZ::RPI::ImageSystem::GetSystemStreamingPool ( ) const
overridevirtual

Returns the system streaming image pool.

Implements AZ::RPI::ImageSystemInterface.

◆ RegisterAttachmentImage()

bool AZ::RPI::ImageSystem::RegisterAttachmentImage ( AttachmentImage attachmentImage)
overridevirtual

Register an attachment image by its unique name (attachment id) Return false if the image was failed to register. It could be the image with same name was already registered. Note: this function is only intended to be used by AttachmentImage class Only attachment images created with an unique name will be registered

Implements AZ::RPI::ImageSystemInterface.

◆ UnregisterAttachmentImage()

void AZ::RPI::ImageSystem::UnregisterAttachmentImage ( AttachmentImage attachmentImage)
overridevirtual

Unregister an attachment image (if it's was registered)

Implements AZ::RPI::ImageSystemInterface.

◆ Update()

void AZ::RPI::ImageSystem::Update ( )
overridevirtual

Performs a streaming controller update tick, which will fetch / evict mips based on priority. This should be called once per frame. GPU uploads are performed during this call.

Implements AZ::RPI::ImageSystemInterface.


The documentation for this class was generated from the following file: