Open 3D Engine Atom Gem API Reference
23.05.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
|
#include <PassAttachmentReflect.h>
Public Member Functions | |
AZ_TYPE_INFO (PassSlot,"{35150886-D1E4-40CB-AF7B-C607E893CD03}") | |
RHI::ScopeAttachmentAccess | GetAttachmentAccess () const |
Returns the corresponding ScopeAttachmentAccess for this slot. | |
Static Public Member Functions | |
static void | Reflect (AZ::ReflectContext *context) |
Public Attributes | |
Name | m_name |
Name of the slot. | |
Name | m_shaderInputName = Name("AutoBind") |
Name | m_shaderImageDimensionsName |
uint16_t | m_shaderInputArrayIndex = 0 |
PassSlotType | m_slotType = PassSlotType::Uninitialized |
Whether slot is an input, output or inputOutput. | |
RHI::ScopeAttachmentUsage | m_scopeAttachmentUsage = RHI::ScopeAttachmentUsage::Uninitialized |
ScopeAttachmentUsage used when binding the slot's attachment with the RHI. | |
AZStd::shared_ptr < RHI::ImageViewDescriptor > | m_imageViewDesc = nullptr |
AZStd::shared_ptr < RHI::BufferViewDescriptor > | m_bufferViewDesc = nullptr |
RHI::AttachmentLoadStoreAction | m_loadStoreAction |
Load store action for the attachment used by this slot. | |
AZStd::vector< RHI::Format > | m_formatFallbacks |
List of formats to fallback to if the format specified in the view descriptor is not supported by the device. | |
A slot for a PassAttachment to be bound to a Pass. Specifies what kind of PassAttachments can be bound as well as how the Pass will use the attachment. PassSlots and PassConnections are used to initialize PassAttachmentBindings.
AZStd::shared_ptr<RHI::BufferViewDescriptor> AZ::RPI::PassSlot::m_bufferViewDesc = nullptr |
Optional buffer view descriptor to be applied to the slot. Note a PassSlot should have only a buffer or image view descriptor (or none at all, in which case a default is generated), but not both. If the user specifies both, the image descriptor will take precedence. If none is specified, we apply a default image or buffer view descriptor depending on attachment type.
AZStd::shared_ptr<RHI::ImageViewDescriptor> AZ::RPI::PassSlot::m_imageViewDesc = nullptr |
Optional image view descriptor to be applied to the slot. Note a PassSlot should have only a buffer or image view descriptor (or none at all, in which case a default is generated), but not both. If the user specifies both, the image descriptor will take precedence. If none is specified, we apply a default image or buffer view descriptor depending on attachment type.
Name AZ::RPI::PassSlot::m_shaderImageDimensionsName |
Name of the shader resource group constant (must be float4) to which the pass can automatically bind the following: X component = image width Y component = image height Z component = 1 / image width W component = 1 / image height
uint16_t AZ::RPI::PassSlot::m_shaderInputArrayIndex = 0 |
This is to specify an array index if the shader input is an array. e.g. Texture2DMS<float4> m_color[4];
Name AZ::RPI::PassSlot::m_shaderInputName = Name("AutoBind") |
Name of the shader resource group member this slot binds to. The keyword "AutoBind" (default value) means buffer and image indices will be auto calculated based on the order of the slots (note: for this to work the slot order must match the order of the ShaderResourceGroup members) The keyword "NoBind" means the slot will not bind it's attachment to the SRG