Class RenderEffect
Instantiation of an Effect for a given EffectObjectNodeReference.
public class RenderEffect
- Inheritance
-
objectRenderEffect
- Extension Methods
Constructors
RenderEffect(EffectSelector)
public RenderEffect(EffectSelector effectSelector)
Parameters
effectSelectorEffectSelector
Fields
Effect
public Effect Effect
Field Value
EffectSelector
public readonly EffectSelector EffectSelector
Field Value
EffectValidator
Validates if effect needs to be compiled or recompiled.
public EffectValidator EffectValidator
Field Value
FallbackParameterUpdater
public EffectParameterUpdater FallbackParameterUpdater
Field Value
FallbackParameters
public ParameterCollection FallbackParameters
Field Value
- ParameterCollection
IsReflectionUpdateRequired
public bool IsReflectionUpdateRequired
Field Value
PendingEffect
Pending effect being compiled.
public Task<Effect> PendingEffect
Field Value
PipelineState
Compiled pipeline state for Stride.Rendering.RenderEffect.pipelineStateOutput. Fast path for the common case where the effect is only drawn into a single output format.
public PipelineState PipelineState
Field Value
Reflection
public RenderEffectReflection Reflection
Field Value
RetryTime
Describes when to try again after a previous error (UTC).
public DateTime RetryTime
Field Value
State
Describes what state the effect is in (compiling, error, etc..)
public RenderEffectState State
Field Value
WritesDepth
True if the pipeline writes depth (DepthBufferWriteEnable) or stencil (StencilWriteMask != 0). Captured from the PipelineStateDescription when the PipelineState is first built, used by RenderSystem.Draw to auto-detect a stage's depth access mode before worker fan-out.
public bool WritesDepth
Field Value
Properties
LastFrameUsed
public int LastFrameUsed { get; }
Property Value
Methods
ClearFallbackParameters()
public void ClearFallbackParameters()
GetPipelineState(in RenderOutputDescription)
Gets the pipeline state cached for output, or null if none was built yet.
public PipelineState GetPipelineState(in RenderOutputDescription output)
Parameters
outputRenderOutputDescription
Returns
InvalidatePipelineState()
Invalidates all cached pipeline states (e.g. after the effect is recompiled or its input layout changes).
public void InvalidatePipelineState()
IsUsedDuringThisFrame(RenderSystem)
public bool IsUsedDuringThisFrame(RenderSystem renderSystem)
Parameters
renderSystemRenderSystem
Returns
MarkAsUsed(RenderSystem)
Mark effect as used during this frame.
public bool MarkAsUsed(RenderSystem renderSystem)
Parameters
renderSystemRenderSystem
Returns
- bool
True if state changed (object was not mark as used during this frame until now), otherwise false.
SetPipelineState(in RenderOutputDescription, PipelineState)
Caches pipelineState for output, so the same effect
drawn into views with different target formats keeps a matching pipeline state per format.
public void SetPipelineState(in RenderOutputDescription output, PipelineState pipelineState)
Parameters
outputRenderOutputDescriptionpipelineStatePipelineState