Class RootRenderFeature
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
- Inheritance
-
RootRenderFeature
- Implements
- Derived
- Inherited Members
- Extension Methods
Constructors
RootRenderFeature()
protected RootRenderFeature()
Fields
RenderData
public RenderDataHolder RenderData
Field Value
RenderObjects
List of RenderObject initialized with this root render feature.
public List<RenderObject> RenderObjects
Field Value
Properties
Index
public int Index { get; }
Property Value
ObjectNodeReferences
Object nodes to process this frame.
public ConcurrentCollector<ObjectNodeReference> ObjectNodeReferences { get; }
Property Value
RenderNodes
List of render nodes for this specific root render feature.
public ConcurrentCollector<RenderNode> RenderNodes { get; }
Property Value
RenderStageSelectors
Overrides that allow defining which render stages are enabled for a specific RenderObject.
[DataMember]
public FastTrackingCollection<RenderStageSelector> RenderStageSelectors { get; }
Property Value
SortKey
Sort key used during rendering.
public byte SortKey { get; protected set; }
Property Value
SupportedRenderObjectType
Gets the type of render object supported by this RootRenderFeature.
public abstract Type SupportedRenderObjectType { get; }
Property Value
Methods
ComputeDataArrayExpectedSize(DataType)
protected virtual int ComputeDataArrayExpectedSize(DataType type)
Parameters
type
DataType
Returns
CreateViewObjectNode(RenderView, RenderObject)
Creates a view object node during Extract phase.
public ViewObjectNodeReference CreateViewObjectNode(RenderView view, RenderObject renderObject)
Parameters
view
RenderViewrenderObject
RenderObject
Returns
- ViewObjectNodeReference
The view object node reference.
GetObjectNode(ObjectNodeReference)
Gets the object node from its reference.
public ObjectNode GetObjectNode(ObjectNodeReference reference)
Parameters
reference
ObjectNodeReference
Returns
- ObjectNode
The object node.
GetRenderNode(RenderNodeReference)
Gets the render node from its reference.
public RenderNode GetRenderNode(RenderNodeReference reference)
Parameters
reference
RenderNodeReference
Returns
- RenderNode
The render node.
GetViewObjectNode(ViewObjectNodeReference)
Gets the view object node from its reference.
public ViewObjectNode GetViewObjectNode(ViewObjectNodeReference reference)
Parameters
reference
ViewObjectNodeReference
Returns
- ViewObjectNode
The view object node.
OnAddRenderObject(RenderObject)
Called when a render object is added.
protected virtual void OnAddRenderObject(RenderObject renderObject)
Parameters
renderObject
RenderObject
OnRemoveRenderObject(RenderObject)
Called when a render object is removed.
protected virtual void OnRemoveRenderObject(RenderObject renderObject)
Parameters
renderObject
RenderObjectThe render object.
PrepareDataArrays()
public void PrepareDataArrays()
Reset()
public virtual void Reset()
Unload()
public override void Unload()