XII Release 0.1.0
Loading...
Searching...
No Matches
xiiTextureHistoryPass Class Referencefinal

Copyright (c) Theophilus Eriata. All Rights Reserved. More...

#include <TextureHistoryPass.h>

Inheritance diagram for xiiTextureHistoryPass:
[legend]

Public Member Functions

xiiResult Build (xiiRenderPipelinePassContext &context) override
xiiResult BuildTemporalHistory (xiiRenderPipelinePassContext &context) override
void InvalidateTemporalHistory () override
 Clears view-local history after camera cuts and configuration changes.
Public Member Functions inherited from xiiRenderPipelinePass
virtual xiiResult Configure (const xiiVariantDictionary &properties)
xiiResult GetProperties (xiiVariantDictionary &out_properties) const
virtual void GetPins (xiiDynamicArray< xiiRenderPipelinePin > &out_pins) const
xiiResult InitializePinBindings (xiiArrayPtr< const xiiRenderPipelinePin > pins) const
xiiResult GetConfiguredPins (xiiDynamicArray< xiiRenderPipelinePin > &out_pins, xiiStringBuilder *out_error=nullptr) const
xiiResult GetConfiguredPins (xiiArrayPtr< const xiiRenderPipelinePin > declarations, xiiDynamicArray< xiiRenderPipelinePin > &out_pins, xiiStringBuilder *out_error=nullptr) const
 Apply the same authored contracts to declarations resolved by an external authoring context.
virtual xiiBitflags< xiiRenderPipelineDeviceFeature > GetRequiredDeviceFeatures () const
virtual xiiBitflags< xiiRenderExtractionCategory > GetExtractionRequirements () const
virtual xiiBitflags< xiiRenderPipelineFeature > GetRuntimeFeatures () const
virtual xiiResult ValidatePipeline (const xiiRenderPipelineResourceDescriptor &, xiiArrayPtr< const xiiUInt32 >, xiiUInt32, xiiStringBuilder *) const
Public Member Functions inherited from xiiReflectedClass
virtual const xiiRTTI * GetDynamicRTTI () const
bool IsInstanceOf (const xiiRTTI *pType) const
 Returns whether the type of this instance is of the given type or derived from it.
template<typename T>
XII_ALWAYS_INLINE bool IsInstanceOf () const
 Returns whether the type of this instance is of the given type or derived from it.

Public Attributes

xiiRenderPipelineTextureInputPin m_Input {xiiGALResourceFormat::Unknown, false, xiiGALBindFlags::ShaderResource, xiiGALResourceDimension::Undefined, 1}
xiiRenderPipelineTextureOutputPin m_Previous {xiiGALResourceFormat::Unknown, true, xiiGALBindFlags::ShaderResource, xiiGALResourceDimension::Undefined, 1, xiiRenderPipelinePinAccess::Read, true}
bool m_bAsyncCopy = true
 Large copies may use the transfer queue. Disable for small copies that would fragment graphics work.
Public Attributes inherited from xiiRenderPipelinePass
xiiVariantDictionary m_ParameterOverrides
 Authored, occurrence-local parameter overrides. Kept separate from compile-time pass properties.
xiiDynamicArray< xiiRenderPipelinePinConfiguration * > m_PinConfigurations
 Authoring-only owned objects. Runtime pass instances consume compiled pins instead.

Additional Inherited Members

Static Public Member Functions inherited from xiiNoBase
static const xiiRTTI * GetStaticRTTI ()

Detailed Description

Copyright (c) Theophilus Eriata. All Rights Reserved.

Retains supplied GPU texture contents as an explicit previous-frame graph resource. Writable storage is private to each pass occurrence; reuse waits for all frame consumers.

Member Function Documentation

◆ Build()

xiiResult xiiTextureHistoryPass::Build ( xiiRenderPipelinePassContext & context)
overridevirtual

Implements xiiRenderPipelinePass.

◆ BuildTemporalHistory()

xiiResult xiiTextureHistoryPass::BuildTemporalHistory ( xiiRenderPipelinePassContext & )
overridevirtual

Publish only previous-frame temporal outputs, without reading current-frame inputs. Optional history may be absent on the first frame. Promote it only after successful execution, and discard it in InvalidateTemporalHistory after a failed frame or camera cut.

Reimplemented from xiiRenderPipelinePass.

◆ InvalidateTemporalHistory()

void xiiTextureHistoryPass::InvalidateTemporalHistory ( )
overridevirtual

Clears view-local history after camera cuts and configuration changes.

Reimplemented from xiiRenderPipelinePass.


The documentation for this class was generated from the following files:
  • /home/runner/work/XII/XII/Source/Engine/GraphicsCore/Pipeline/Passes/Temporal/TextureHistoryPass.h
  • /home/runner/work/XII/XII/Source/Engine/GraphicsCore/Pipeline/Passes/Temporal/TextureHistoryPass.cpp