Stride

OPEN / CLOSE
  • Features
  • Blog
  • Documentation
  • Community
(icon) Download

  • Discord
  • Facebook
  • Twitter
  • YouTube

LANGUAGE

OPEN / CLOSE
  • English
  • 日本語
    Show / Hide Table of Contents

    RootRenderFeature Class

    Namespace: Stride.Rendering
    Assembly: Stride.Rendering.dll

    A top-level renderer that work on a specific kind of RenderObject, such as Mesh, Particle, Sprite, etc...

    System.Object → DisposeBase → ComponentBase → RenderFeature → RootRenderFeature
    Derived from RootRenderFeature: BackgroundRenderFeature RootEffectRenderFeature SpriteRenderFeature UIRenderFeature

    public abstract class RootRenderFeature : RenderFeature, IComponent, IReferencable, ICollectorHolder, IGraphicsRendererCore, IDisposable
    Name Description
    Constructors
    RootRenderFeature()
    Fields
    RenderData
    RenderObjects

    List of RenderObject initialized with this root render feature.

    Properties
    Index
    ObjectNodeReferences

    Object nodes to process this frame.

    RenderNodes

    List of render nodes for this specific root render feature.

    RenderStageSelectors

    Overrides that allow defining which render stages are enabled for a specific RenderObject.

    SortKey

    Sort key used during rendering.

    SupportedRenderObjectType

    Gets the type of render object supported by this RootRenderFeature.

    Methods
    ComputeDataArrayExpectedSize(DataType)
    CreateViewObjectNode(RenderView, RenderObject)

    Creates a view object node during Extract phase.

    GetObjectNode(ObjectNodeReference)

    Gets the object node from its reference.

    GetRenderNode(RenderNodeReference)

    Gets the render node from its reference.

    GetViewObjectNode(ViewObjectNodeReference)

    Gets the view object node from its reference.

    OnAddRenderObject(RenderObject)

    Called when a render object is added.

    OnRemoveRenderObject(RenderObject)

    Called when a render object is removed.

    PrepareDataArrays()
    Reset()
    Unload()
    | Improve this Doc View Source

    Constructors


    RootRenderFeature()

    protected RootRenderFeature()
    | Improve this Doc View Source

    Fields


    RenderData

    public RenderDataHolder RenderData
    Field Value
    Type Description
    RenderDataHolder

    RenderObjects

    List of RenderObject initialized with this root render feature.

    public List<RenderObject> RenderObjects
    Field Value
    Type Description
    System.Collections.Generic.List<RenderObject>
    | Improve this Doc View Source

    Properties


    Index

    public int Index { get; }
    Property Value
    Type Description
    System.Int32

    ObjectNodeReferences

    Object nodes to process this frame.

    public ConcurrentCollector<ObjectNodeReference> ObjectNodeReferences { get; }
    Property Value
    Type Description
    ConcurrentCollector<ObjectNodeReference>

    RenderNodes

    List of render nodes for this specific root render feature.

    public ConcurrentCollector<RenderNode> RenderNodes { get; }
    Property Value
    Type Description
    ConcurrentCollector<RenderNode>

    RenderStageSelectors

    Overrides that allow defining which render stages are enabled for a specific RenderObject.

    [DataMember]
    public FastTrackingCollection<RenderStageSelector> RenderStageSelectors { get; }
    Property Value
    Type Description
    FastTrackingCollection<RenderStageSelector>

    SortKey

    Sort key used during rendering.

    public byte SortKey { get; protected set; }
    Property Value
    Type Description
    System.Byte

    SupportedRenderObjectType

    Gets the type of render object supported by this RootRenderFeature.

    public abstract Type SupportedRenderObjectType { get; }
    Property Value
    Type Description
    System.Type
    | Improve this Doc View Source

    Methods


    ComputeDataArrayExpectedSize(DataType)

    protected virtual int ComputeDataArrayExpectedSize(DataType type)
    Parameters
    Type Name Description
    DataType type
    Returns
    Type Description
    System.Int32

    CreateViewObjectNode(RenderView, RenderObject)

    Creates a view object node during Extract phase.

    public ViewObjectNodeReference CreateViewObjectNode(RenderView view, RenderObject renderObject)
    Parameters
    Type Name Description
    RenderView view
    RenderObject renderObject
    Returns
    Type Description
    ViewObjectNodeReference

    The view object node reference.


    GetObjectNode(ObjectNodeReference)

    Gets the object node from its reference.

    public ObjectNode GetObjectNode(ObjectNodeReference reference)
    Parameters
    Type Name Description
    ObjectNodeReference reference
    Returns
    Type Description
    ObjectNode

    The object node.


    GetRenderNode(RenderNodeReference)

    Gets the render node from its reference.

    public RenderNode GetRenderNode(RenderNodeReference reference)
    Parameters
    Type Name Description
    RenderNodeReference reference
    Returns
    Type Description
    RenderNode

    The render node.


    GetViewObjectNode(ViewObjectNodeReference)

    Gets the view object node from its reference.

    public ViewObjectNode GetViewObjectNode(ViewObjectNodeReference reference)
    Parameters
    Type Name Description
    ViewObjectNodeReference reference
    Returns
    Type Description
    ViewObjectNode

    The view object node.


    OnAddRenderObject(RenderObject)

    Called when a render object is added.

    protected virtual void OnAddRenderObject(RenderObject renderObject)
    Parameters
    Type Name Description
    RenderObject renderObject

    OnRemoveRenderObject(RenderObject)

    Called when a render object is removed.

    protected virtual void OnRemoveRenderObject(RenderObject renderObject)
    Parameters
    Type Name Description
    RenderObject renderObject

    The render object.


    PrepareDataArrays()

    public void PrepareDataArrays()

    Reset()

    public virtual void Reset()

    Unload()

    public override void Unload()
    Overrides
    RenderFeature.Unload()

    Inherited Members

    RenderFeature.Context
    RenderFeature.RenderSystem
    RenderFeature.Initialized
    RenderFeature.Enabled
    RenderFeature.Initialize(RenderContext)
    RenderFeature.Destroy()
    RenderFeature.InitializeCore()
    RenderFeature.Collect()
    RenderFeature.Extract()
    RenderFeature.PrepareEffectPermutations(RenderDrawContext)
    RenderFeature.Prepare(RenderDrawContext)
    RenderFeature.Draw(RenderDrawContext, RenderView, RenderViewStage)
    RenderFeature.Draw(RenderDrawContext, RenderView, RenderViewStage, Int32, Int32)
    RenderFeature.Flush(RenderDrawContext)
    RenderFeature.OnRenderSystemChanged()
    ComponentBase.Tags
    ComponentBase.Name
    ComponentBase.ICollectorHolder.Collector
    ComponentBase.OnNameChanged()
    ComponentBase.ToString()
    DisposeBase.Dispose()
    DisposeBase.IsDisposed
    DisposeBase.IReferencable.ReferenceCount
    DisposeBase.IReferencable.AddReference()
    DisposeBase.IReferencable.Release()
    DisposeBase.OnAddReference()
    DisposeBase.OnReleaseReference()

    Extension Methods

    ComponentBaseExtensions.DisposeBy<T>(T, ICollectorHolder)
    ComponentBaseExtensions.RemoveDisposeBy<T>(T, ICollectorHolder)
    • Improve this Doc
    • View Source
    In This Article

    Back to top

    Copyright © 2019-2021 .NET Foundation and Contributors
    Supported by the .NET Foundation