|
|
| AZ_CLASS_ALLOCATOR (Image, AZ::SystemAllocator, 0) |
| |
|
| AZ_RTTI (Image, "{39FFE66C-805A-41AD-9092-91327D51F64B}", Resource) |
| |
|
| AZ_RHI_MULTI_DEVICE_OBJECT_GETTER (Image) |
| |
| const ImageDescriptor & | GetDescriptor () const |
| |
|
Ptr< ImageView > | GetImageView (const ImageViewDescriptor &imageViewDescriptor) |
| | Returns the multi-device DeviceImageView.
|
| |
| void | GetSubresourceLayout (ImageSubresourceLayout &subresourceLayout, ImageAspectFlags aspectFlags=ImageAspectFlags::All) const |
| |
| HardwareQueueClassMask | GetSupportedQueueMask () const |
| |
| const ImageFrameAttachment * | GetFrameAttachment () const |
| |
| uint32_t | GetResidentMipLevel () const |
| |
|
bool | IsStreamable () const |
| | Returns whether the image has sub-resources which can be evicted from or streamed into the device memory.
|
| |
|
ImageAspectFlags | GetAspectFlags () const |
| | Returns the aspects that are included in the image.
|
| |
|
const HashValue64 | GetHash () const |
| | Get the hash associated with the passed image descriptor.
|
| |
| void | Shutdown () override final |
| | Shuts down the resource by detaching it from its parent pool.
|
| |
|
| AZ_RTTI (Resource, "{613AED98-48FD-4453-98F8-6956D2133489}", MultiDeviceObject) |
| |
|
| AZ_RHI_MULTI_DEVICE_OBJECT_GETTER (Resource) |
| |
|
bool | IsAttachment () const |
| | Returns whether the resource is currently an attachment on a frame graph.
|
| |
| const ResourcePool * | GetPool () const |
| |
|
ResourcePool * | GetPool () |
| |
| uint32_t | GetVersion () const |
| |
|
const FrameAttachment * | GetFrameAttachment () const |
| | Returns the frame attachment associated with this image (if it exists).
|
| |
| void | InvalidateViews () |
| |
|
bool | IsInResourceCache (const ImageViewDescriptor &imageViewDescriptor) |
| | Returns true if the ResourceView is in the cache.
|
| |
|
bool | IsInResourceCache (const BufferViewDescriptor &bufferViewDescriptor) |
| |
|
void | EraseResourceView (ResourceView *resourceView) const |
| |
|
| AZ_RTTI (MultiDeviceObject, "{17D34F71-944C-4AF5-9823-627474C4C0A6}", Object) |
| |
|
bool | IsInitialized () const |
| | Returns whether the device object is initialized.
|
| |
| AZ_FORCE_INLINE bool | IsDeviceSet (int deviceIndex) const |
| |
| MultiDevice::DeviceMask | GetDeviceMask () const |
| |
|
| AZ_RTTI (Object, "{E43378F1-2331-4173-94B8-990ED20E6003}") |
| |
|
void | SetName (const Name &name) |
| | Sets the name of the object.
|
| |
|
const Name & | GetName () const |
| | Returns the name set on the object by SetName.
|
| |
|
uint32_t | use_count () |
| | Returns the current use count of the object.
|
| |
|
|
virtual void | SetDescriptor (const ImageDescriptor &descriptor) |
| |
|
Ptr< ImageView > | GetResourceView (const ImageViewDescriptor &imageViewDescriptor) const |
| | Returns view based on the descriptor and keeps a raw pointer in a local cache.
|
| |
|
Ptr< BufferView > | GetResourceView (const BufferViewDescriptor &bufferViewDescriptor) const |
| |
|
void | Init (MultiDevice::DeviceMask deviceMask) |
| | The derived class should call this method to assign the device.
|
| |
|
template<typename T > |
| AZ_FORCE_INLINE void | IterateDevices (T callback) |
| | Helper method that will iterate over all selected devices and call the provided callback.
|
| |
| template<typename T , typename U > |
| AZ_FORCE_INLINE decltype(auto) | IterateObjects (U callback) |
| |
|
template<typename T , typename U > |
| AZ_FORCE_INLINE decltype(auto) | IterateObjects (U callback) const |
| |
|
template<typename T > |
| AZ_FORCE_INLINE Ptr< T > | GetDeviceObject (int deviceIndex) const |
| |
|
void | add_ref () const |
| |
| void | release () const |
| |
Image represents a collection of Image Subresources, where each subresource comprises a one to three dimensional grid of pixels. Images are divided into an array of mip-map chains. A mip map chain is a list of subresources, progressively halved on each axis, down to a 1x1 pixel base image. If an array is used, each array 'slice' is its own mip chain. All mip chains in an array share the same size.
Subresources are organized by a linear indexing scheme: mipSliceOffset + arraySliceOffset * arraySize. The total number of subresources is equal to mipLevels * arraySize. All subresources share the same pixel format.
- See also
- DeviceImageView on how to interpret contents of an image.