Class IcyUISceneRenderer
- Namespace
- Icy.Stride.Configuration
- Assembly
- IcyUI.Stride.dll
A SceneRendererBase that draws every Canvas in Canvases as a screen-space overlay, wired into Stride's GraphicsCompositor pipeline.
public class IcyUISceneRenderer : SceneRendererBase, IComponent, IReferencable, ICollectorHolder, ISceneRenderer, IRenderCollector, IGraphicsRenderer, IGraphicsRendererBase, IGraphicsRendererCore, IDisposable
- Inheritance
-
IcyUISceneRenderer
- Implements
-
IComponentIReferencableICollectorHolderISceneRendererIRenderCollectorIGraphicsRendererIGraphicsRendererBaseIGraphicsRendererCore
- Inherited Members
- Extension Methods
Remarks
Unlike MonoGame (a simple Game.Draw() override is enough there), Stride's SpriteBatch.Begin
needs a frame-scoped GraphicsContext, which is only available from within the
compositor's own draw callback - so drawing lives here as a dedicated render stage, added into the
compositor's renderer graph by UseIcyUI(IGame), rather
than piggybacking on a Stride.Games.GameSystemBase the way StrideIcyHost (input
pumping) does.
Properties
Canvases
Gets the canvases drawn by this render stage, in order, every frame.
[DataMemberIgnore]
public IList<Canvas> Canvases { get; }
Property Value
Remarks
Not part of Stride's scene-asset serialization system (there is no Stride serializer for Canvas, and there shouldn't need to be one) - populated by app code at runtime.
Configuration
Gets or sets the configuration whose RenderContext this render stage refreshes with the current frame's GraphicsContext before drawing.
[DataMemberIgnore]
public IcyConfiguration? Configuration { get; set; }
Property Value
Methods
DrawCore(RenderContext, RenderDrawContext)
protected override void DrawCore(RenderContext context, RenderDrawContext drawContext)
Parameters
contextRenderContextdrawContextRenderDrawContext