Table of Contents

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
IComponent
IReferencable
ICollectorHolder
ISceneRenderer
IRenderCollector
IGraphicsRenderer
IGraphicsRendererBase
IGraphicsRendererCore
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

IList<Canvas>

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

IcyConfiguration

Methods

DrawCore(RenderContext, RenderDrawContext)

protected override void DrawCore(RenderContext context, RenderDrawContext drawContext)

Parameters

context RenderContext
drawContext RenderDrawContext