public virtual void OnWindowsSizeChanged(UInt32 width, UInt32 height) { var RHICtx = EngineNS.CEngine.Instance.RenderContext; WindowWidth = width; WindowHeight = height; WindowsSizeChanged_UIProcess(width, height); RenderPolicy?.OnResize(RHICtx, RenderPolicy.SwapChain, width, height); }
public virtual void TickRender() { Stat?.TickRender(); if (GameState != enGameState.Initialized) { return; } RenderPolicy?.TickRender(RenderPolicy.SwapChain); }
public virtual void TickSync() { Stat?.TickSync(); if (GameState != enGameState.Initialized) { return; } RenderPolicy?.TickSync(); GameCamera?.SwapBuffer(); }
protected virtual void OnGameCommitRender(CCommandList cmd) { var RHICtx = EngineNS.CEngine.Instance.RenderContext; if (World == null || RenderPolicy == null) { return; } this.World.CheckVisible(cmd, GameCamera); RenderPolicy.TickLogic(GameCamera.SceneView, RHICtx); }
public virtual void Cleanup() { if (GameCamera != null) { GameCamera.Cleanup(); GameCamera = null; } if (RenderPolicy != null) { RenderPolicy.Cleanup(); RenderPolicy = null; } }
protected override bool ShouldRender() => RenderPolicy.ShouldRender();
public static RenderPolicyBase Factory(RenderPolicy policy, IPlot component) => policy switch {