RootRenderFeature Class
Namespace: Stride.RenderingAssembly: Stride.Rendering.dll
A top-level renderer that work on a specific kind of RenderObject, such as Mesh, Particle, Sprite, etc...
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() | ||
Constructors
RootRenderFeature()
protected RootRenderFeature()
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> |
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 |
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()