|
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.
|
Inherits AZ::RPI::ComputePass.
Public Member Functions | |
| AZ_RTTI (AZ::Render::TaaPass,"{AB3BD4EA-33D7-477F-82B4-21DDFB517499}", Base) | |
| AZ_CLASS_ALLOCATOR (TaaPass, SystemAllocator) | |
Public Member Functions inherited from AZ::RPI::ComputePass | |
| AZ_RTTI (ComputePass,"{61464A74-BD35-4954-AB27-492644EA6C2A}", RenderPass) | |
| AZ_CLASS_ALLOCATOR (ComputePass, SystemAllocator) | |
| void | SetTargetThreadCounts (uint32_t targetThreadCountX, uint32_t targetThreadCountY, uint32_t targetThreadCountZ) |
| Sets the target total number of threads to dispatch in each dimension. | |
|
Data::Instance < ShaderResourceGroup > | GetShaderResourceGroup () const |
| Returns the shader resource group. | |
| Data::Instance< Shader > | GetShader () const |
| Return the shader. | |
Public Member Functions inherited from AZ::RPI::RenderPass | |
| AZ_RTTI (RenderPass,"{9441D114-60FD-487B-B2B7-0FBBC8A96FC2}", Pass) | |
| AZ_CLASS_ALLOCATOR (RenderPass, SystemAllocator) | |
| RHI::RenderAttachmentConfiguration | GetRenderAttachmentConfiguration () const |
| RHI::MultisampleState | GetMultisampleState () const |
| Get MultisampleState of this pass from its output attachments. | |
|
Data::Instance < ShaderResourceGroup > | GetShaderResourceGroup () |
| Returns a pointer to the Pass ShaderResourceGroup. | |
| const PipelineViewTag & | GetPipelineViewTag () const override |
| Check if the pass is associated to a view. If pass has a pipeline view tag, the rpi view assigned to this view tag will have pass's draw list tag. | |
| ViewPtr | GetView () const |
| void | BindSrg (const RHI::ShaderResourceGroup *srg) |
Public Member Functions inherited from AZ::RPI::Pass | |
| AZ_RTTI (Pass,"{EA34FF66-631D-433B-B449-71F5647E7BB5}", AZStd::intrusive_base) | |
| AZ_CLASS_ALLOCATOR (Pass, SystemAllocator) | |
| const Name & | GetName () const |
| Returns the name of the pass (example: Bloom) | |
| const Name & | GetPathName () const |
| Return the path name of the pass (example: Root.SwapChain.Bloom) | |
| uint32_t | GetTreeDepth () const |
| Returns the depth of this pass in the tree hierarchy (Root depth is 0) | |
| uint32_t | GetParentChildIndex () const |
| Returns the index in the parent's array of children that this pass occupies (used for sorting passes) | |
| uint32_t | GetInputCount () const |
| Returns the number of input attachment bindings. | |
| uint32_t | GetInputOutputCount () const |
| Returns the number of input/output attachment bindings. | |
| uint32_t | GetOutputCount () const |
| Returns the number of output attachment bindings. | |
| const PassTemplate * | GetPassTemplate () const |
| void | SetEnabled (bool enabled) |
| virtual bool | IsEnabled () const |
| bool | HasDrawListTag () const |
| bool | HasPipelineViewTag () const |
| PassAttachmentBinding * | FindAttachmentBinding (const Name &slotName) |
| PassAttachmentBindingListView | GetAttachmentBindings () const |
| Return the set of attachment bindings. | |
| ParentPass * | AsParent () |
| Casts the pass to a parent pass if valid, else returns nullptr. | |
| const ParentPass * | AsParent () const |
| bool | IsRootPass () const |
| Returns whether the pass is the root pass. | |
| PassTree * | GetPassTree () const |
| Returns the PassTree from the pass's RenderPipeline (or nullptr if there isn't one) | |
| void | QueueForBuildAndInitialization () |
| Queues the pass to have Build() and Initialize() called by the PassSystem on frame update. | |
| void | QueueForRemoval () |
| Queues the pass to have RemoveFromParent() called by the PassSystem on frame update. | |
| void | QueueForInitialization () |
| Queues the pass to have Initialize() called by the PassSystem on frame update. | |
| void | AddAttachmentBinding (PassAttachmentBinding attachmentBinding) |
| Adds an attachment binding to the list of this Pass' attachment bindings. | |
| PassAttachmentBinding & | GetInputBinding (uint32_t index) |
| PassAttachmentBinding & | GetInputOutputBinding (uint32_t index) |
| PassAttachmentBinding & | GetOutputBinding (uint32_t index) |
| void | AttachBufferToSlot (AZStd::string_view slot, Data::Instance< Buffer > buffer) |
| void | AttachBufferToSlot (const Name &slot, Data::Instance< Buffer > buffer) |
| void | AttachImageToSlot (const Name &slot, Data::Instance< AttachmentImage > image) |
| virtual void | GetPipelineViewTags (PipelineViewTags &outTags) const |
| Collect all different view tags from this pass. | |
| virtual void | GetViewDrawListInfo (RHI::DrawListMask &outDrawListMask, PassesByDrawList &outPassesByDrawList, const PipelineViewTag &viewTag) const |
| Adds this pass' DrawListTags to the outDrawListMask. | |
| virtual RHI::DrawListTag | GetDrawListTag () const |
| Check if the pass has a DrawListTag. Pass' DrawListTag can be used to filter draw items. | |
| virtual void | SortDrawList (RHI::DrawList &drawList) const |
| Function used by views to sort draw lists. Can be overridden so passes can provide custom sort functionality. | |
| virtual void | SetRenderPipeline (RenderPipeline *pipeline) |
| Set render pipeline this pass belongs to. | |
| RenderPipeline * | GetRenderPipeline () const |
| Scene * | GetScene () const |
| virtual void | Validate (PassValidationResults &validationResults) |
| virtual void | DebugPrint () const |
| Prints the pass. | |
| TimestampResult | GetLatestTimestampResult () const |
| Return the latest Timestamp result of this pass. | |
| PipelineStatisticsResult | GetLatestPipelineStatisticsResult () const |
| Return the latest PipelineStatistic result of this pass. | |
| virtual void | SetTimestampQueryEnabled (bool enable) |
| Enables/Disables Timestamp queries for this pass. | |
| virtual void | SetPipelineStatisticsQueryEnabled (bool enable) |
| Enables/Disables PipelineStatistics queries for this pass. | |
| bool | ReadbackAttachment (AZStd::shared_ptr< AttachmentReadback > readback, uint32_t readbackIndex, const Name &slotName, PassAttachmentReadbackOption option=PassAttachmentReadbackOption::Output) |
| bool | IsTimestampQueryEnabled () const |
| Returns whether the Timestamp queries is enabled/disabled for this pass. | |
| bool | IsPipelineStatisticsQueryEnabled () const |
| Returns whether the PipelineStatistics queries is enabled/disabled for this pass. | |
| void | PrintIndent (AZStd::string &stringOutput, uint32_t indent) const |
| Helper function to print spaces to indent the pass. | |
| void | PrintPassName (AZStd::string &stringOutput, uint32_t indent=0) const |
| Prints the name of the pass. | |
| void | DebugPrintBinding (AZStd::string &stringOutput, const PassAttachmentBinding &binding) const |
| Prints the attachment binding at the given index. | |
| void | DebugPrintBindingAndConnection (AZStd::string &stringOutput, uint8_t bindingIndex) const |
| Prints the attachment binding at the given index and its connection. | |
| void | PrintErrors () const |
| Prints the pass name and all the errors accumulated during build and setup. | |
| void | PrintWarnings () const |
| Prints the pass name and all the warnings accumulated during build and setup. | |
| void | PrintMessages (const AZStd::vector< AZStd::string > &messages) const |
| Helper function to print an array of messages (like errors or warnings) for a pass. | |
| void | PrintBindingsWithoutAttachments (uint32_t slotTypeMask) const |
| Prints the pass and all the list of inputs and input/outputs that are missing an attachment. | |
| ParentPass * | GetParent () const |
| Returns pointer to the parent pass. | |
| PassState | GetPassState () const |
| void | UpdateConnectedBindings () |
| void | UpdateConnectedInputBindings () |
| void | UpdateConnectedOutputBindings () |
Public Member Functions inherited from AZ::RHI::ScopeProducer | |
| ScopeProducer (const ScopeId &scopeId) | |
| const ScopeId & | GetScopeId () const |
| const Scope * | GetScope () const |
Static Public Member Functions | |
| static RPI::Ptr< TaaPass > | Create (const RPI::PassDescriptor &descriptor) |
| Creates a TaaPass. | |
Static Public Member Functions inherited from AZ::RPI::ComputePass | |
| static Ptr< ComputePass > | Create (const PassDescriptor &descriptor) |
| Creates a ComputePass. | |
Additional Inherited Members | |
Public Types inherited from AZ::RPI::Pass | |
| using | ChildPassIndex = RHI::Handle< uint32_t, class ChildPass > |
Protected Member Functions inherited from AZ::RPI::ComputePass | |
| ComputePass (const PassDescriptor &descriptor, AZ::Name supervariant=AZ::Name("")) | |
| void | CompileResources (const RHI::FrameGraphCompileContext &context) override |
| void | MatchDimensionsToOutput () |
| void | OnShaderReinitialized (const Shader &shader) override |
| void | OnShaderAssetReinitialized (const Data::Asset< ShaderAsset > &shaderAsset) override |
| void | OnShaderVariantReinitialized (const ShaderVariant &shaderVariant) override |
| void | LoadShader (AZ::Name supervariant=AZ::Name("")) |
Protected Member Functions inherited from AZ::RPI::RenderPass | |
| RenderPass (const PassDescriptor &descriptor) | |
| void | SetupFrameGraphDependencies (RHI::FrameGraphInterface frameGraph) override |
| void | BuildCommandList (const RHI::FrameGraphExecuteContext &context) final |
| void | DeclareAttachmentsToFrameGraph (RHI::FrameGraphInterface frameGraph) const |
| void | DeclarePassDependenciesToFrameGraph (RHI::FrameGraphInterface frameGraph) const |
| void | BindPassSrg (const RHI::FrameGraphCompileContext &context, Data::Instance< ShaderResourceGroup > &shaderResourceGroup) |
| void | CollectSrgs () |
| void | ResetSrgs () |
| void | SetSrgsForDraw (RHI::CommandList *commandList) |
| void | SetSrgsForDispatch (RHI::CommandList *commandList) |
| void | SetPipelineViewTag (const PipelineViewTag &viewTag) |
| void | AddScopeQueryToFrameGraph (RHI::FrameGraphInterface frameGraph) |
Protected Member Functions inherited from AZ::RPI::Pass | |
| Pass (const PassDescriptor &descriptor) | |
| PassDescriptor | GetPassDescriptor () const |
| void | ImportAttachments (RHI::FrameGraphAttachmentInterface attachmentDatabase) |
| Ptr< Pass > | FindAdjacentPass (const Name &passName) |
| const PassAttachmentBinding * | FindAttachmentBinding (const Name &slotName) const |
| Ptr< PassAttachment > | FindOwnedAttachment (const Name &attachmentName) const |
| Ptr< PassAttachment > | FindAttachment (const Name &slotName) const |
| const PassAttachmentBinding * | FindAdjacentBinding (const PassAttachmentRef &attachmentRef, const char *attachmentSourceTypeDebugName="attachment") |
| void | ProcessConnection (const PassConnection &connection, uint32_t slotTypeMask=0xFFFFFFFF) |
| void | LogError (AZStd::string &&message) |
| void | LogWarning (AZStd::string &&message) |
| void | Reset () |
| void | Build (bool calledFromPassSystem=false) |
| void | Initialize () |
| void | OnInitializationFinished () |
| void | FrameBegin (FramePrepareParams params) |
| void | FrameEnd () |
| void | UpdateReadbackAttachment (FramePrepareParams params, bool beforeAddScopes) |
| void | UpdateAttachmentCopy (FramePrepareParams params) |
Protected Member Functions inherited from AZ::RHI::ScopeProducer | |
| ScopeProducer () | |
| void | SetHardwareQueueClass (HardwareQueueClass hardwareQueueClass) |
| void | SetScopeId (const ScopeId &scopeId) |
| void | InitScope (const ScopeId &scopeId, HardwareQueueClass hardwareQueueClass=HardwareQueueClass::Graphics) |
Protected Attributes inherited from AZ::RPI::ComputePass | |
| Data::Instance< Shader > | m_shader = nullptr |
|
Data::Instance < RPI::ShaderResourceGroup > | m_drawSrg = nullptr |
| RHI::DispatchItem | m_dispatchItem |
| bool | m_isFullscreenPass = false |
| PassDescriptor | m_passDescriptor |
Protected Attributes inherited from AZ::RPI::RenderPass | |
|
Data::Instance < ShaderResourceGroup > | m_shaderResourceGroup = nullptr |
| RHI::HardwareQueueClass | m_hardwareQueueClass = RHI::HardwareQueueClass::Graphics |
Protected Attributes inherited from AZ::RPI::Pass | |
| const Name | PassNameThis {"This"} |
| const Name | PassNameParent {"Parent"} |
| const Name | PipelineKeyword {"Pipeline"} |
| const Name | PipelineGlobalKeyword {"PipelineGlobal"} |
|
AZStd::fixed_vector < PassAttachmentBinding, PassAttachmentBindingCountMax > | m_attachmentBindings |
|
AZStd::vector< Ptr < PassAttachment > > | m_ownedAttachments |
| AZStd::vector< Pass * > | m_executeBeforePasses |
| AZStd::vector< Pass * > | m_executeAfterPasses |
| RenderPipeline * | m_pipeline = nullptr |
|
AZStd::shared_ptr< const PassTemplate > | m_template = nullptr |
| PassRequest | m_request |
| ParentPass * | m_parent = nullptr |
| struct { | |
| union { | |
| struct { | |
| uint64_t m_createdByPassRequest: 1 | |
| uint64_t m_enabled: 1 | |
| uint64_t m_parentEnabled: 1 | |
| uint64_t m_alreadyCreatedChildren: 1 | |
| uint64_t m_createChildren: 1 | |
| uint64_t m_partOfHierarchy: 1 | |
| uint64_t m_hasDrawListTag: 1 | |
| uint64_t m_hasPipelineViewTag: 1 | |
| uint64_t m_timestampQueryEnabled: 1 | |
| uint64_t m_pipelineStatisticsQueryEnabled: 1 | |
| uint64_t m_isPipelineRoot: 1 | |
| uint64_t m_containsGlobalReference: 1 | |
| } | |
| uint64_t m_allFlags = 0 | |
| } | |
| } | m_flags |
| AZStd::vector< AZStd::string > | m_errorMessages |
| AZStd::vector< AZStd::string > | m_warningMessages |
| uint32_t | m_errors = 0 |
| uint32_t | m_warnings = 0 |
| RHI::DrawListSortType | m_drawListSortType = RHI::DrawListSortType::KeyThenDepth |
|
AZStd::shared_ptr < AttachmentReadback > | m_attachmentReadback |
| PassAttachmentReadbackOption | m_readbackOption |
|
AZStd::weak_ptr < ImageAttachmentCopy > | m_attachmentCopy |
| AZStd::shared_ptr< PassData > | m_passData = nullptr |
| Optional data used during pass initialization. | |
Static Protected Attributes inherited from AZ::RPI::Pass | |
| static const size_t | MessageLogLimit = 256 |