MeshRenderFeature Class
Namespace: Stride.RenderingAssembly: Stride.Rendering.dll
Renders RenderMesh.
public class MeshRenderFeature : RootEffectRenderFeature, IComponent, IReferencable, ICollectorHolder, IGraphicsRendererCore, IDisposable
Name | Description | |
---|---|---|
Fields | ||
RenderFeatures | Lists of sub render features that can be applied on RenderMesh. |
|
Properties | ||
SupportedRenderObjectType | Gets the type of render object supported by this RootRenderFeature. |
|
Methods | ||
Collect() | Performs pipeline initialization, enumerates views and populates visibility groups. |
|
Destroy() | ||
Draw(RenderDrawContext, RenderView, RenderViewStage) | Performs GPU updates and/or drawing, everytime a render view changes. |
|
Draw(RenderDrawContext, RenderView, RenderViewStage, Int32, Int32) | Performs GPU updates and/or draw. |
|
Extract() | Extract data from entities, should be as fast as possible to not block simulation loop. It should be mostly copies, and the actual processing should be part of Prepare(). |
|
Flush(RenderDrawContext) | Releases temporary resources and cleans the state. Should be called once after all Draw(RenderDrawContext, RenderView, RenderViewStage) calls have finished. |
|
InitializeCore() | Initializes this instance. Query for specific cbuffer (either new one, like PerMaterial, or parts of an existing one, like PerObject=>Skinning) |
|
Prepare(RenderDrawContext) | Performs most of the work (computation and resource preparation). Later game simulation might be running during that step. |
|
PrepareEffectPermutationsImpl(RenderDrawContext) | Actual implementation of PrepareEffectPermutations(RenderDrawContext). |
|
ProcessPipelineState(RenderContext, RenderNodeReference, ref RenderNode, RenderObject, PipelineStateDescription) |
Fields
RenderFeatures
Lists of sub render features that can be applied on RenderMesh.
[DataMember]
public TrackingCollection<SubRenderFeature> RenderFeatures
Field Value
Type | Description |
---|---|
TrackingCollection<SubRenderFeature> |
Properties
SupportedRenderObjectType
Gets the type of render object supported by this RootRenderFeature.
public override Type SupportedRenderObjectType { get; }
Property Value
Type | Description |
---|---|
System.Type |
Overrides
| Improve this Doc View SourceMethods
Collect()
Performs pipeline initialization, enumerates views and populates visibility groups.
public override void Collect()
Overrides
Destroy()
protected override void Destroy()
Overrides
Draw(RenderDrawContext, RenderView, RenderViewStage)
Performs GPU updates and/or drawing, everytime a render view changes.
public override void Draw(RenderDrawContext context, RenderView renderView, RenderViewStage renderViewStage)
Parameters
Type | Name | Description |
---|---|---|
RenderDrawContext | context | |
RenderView | renderView | |
RenderViewStage | renderViewStage |
Overrides
Draw(RenderDrawContext, RenderView, RenderViewStage, Int32, Int32)
Performs GPU updates and/or draw.
public override void Draw(RenderDrawContext context, RenderView renderView, RenderViewStage renderViewStage, int startIndex, int endIndex)
Parameters
Type | Name | Description |
---|---|---|
RenderDrawContext | context | |
RenderView | renderView | |
RenderViewStage | renderViewStage | |
System.Int32 | startIndex | |
System.Int32 | endIndex |
Overrides
Extract()
Extract data from entities, should be as fast as possible to not block simulation loop. It should be mostly copies, and the actual processing should be part of Prepare().
public override void Extract()
Overrides
Flush(RenderDrawContext)
Releases temporary resources and cleans the state. Should be called once after all Draw(RenderDrawContext, RenderView, RenderViewStage) calls have finished.
public override void Flush(RenderDrawContext context)
Parameters
Type | Name | Description |
---|---|---|
RenderDrawContext | context |
Overrides
InitializeCore()
Initializes this instance. Query for specific cbuffer (either new one, like PerMaterial, or parts of an existing one, like PerObject=>Skinning)
protected override void InitializeCore()
Overrides
Prepare(RenderDrawContext)
Performs most of the work (computation and resource preparation). Later game simulation might be running during that step.
public override void Prepare(RenderDrawContext context)
Parameters
Type | Name | Description |
---|---|---|
RenderDrawContext | context |
Overrides
PrepareEffectPermutationsImpl(RenderDrawContext)
Actual implementation of PrepareEffectPermutations(RenderDrawContext).
public override void PrepareEffectPermutationsImpl(RenderDrawContext context)
Parameters
Type | Name | Description |
---|---|---|
RenderDrawContext | context |
Overrides
ProcessPipelineState(RenderContext, RenderNodeReference, ref RenderNode, RenderObject, PipelineStateDescription)
protected override void ProcessPipelineState(RenderContext context, RenderNodeReference renderNodeReference, ref RenderNode renderNode, RenderObject renderObject, PipelineStateDescription pipelineState)
Parameters
Type | Name | Description |
---|---|---|
RenderContext | context | |
RenderNodeReference | renderNodeReference | |
RenderNode | renderNode | |
RenderObject | renderObject | |
PipelineStateDescription | pipelineState |