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()