Move the ordinary shadow-scene drain out of the conditional spatial reconciler and into an explicit final update-frame commit phase. This publishes deltas after streaming, network, teleport, camera, and conditional reconciles even while world simulation is quiesced. Release gate: 3,733 App tests / 3 skips; 8,217 complete-solution tests / 5 skips. Co-Authored-By: OpenAI Codex <codex@openai.com>
18 lines
574 B
C#
18 lines
574 B
C#
using AcDream.App.Rendering.Scene;
|
|
|
|
namespace AcDream.App.Update;
|
|
|
|
/// <summary>
|
|
/// Publishes every render-projection delta at the final update/render
|
|
/// boundary, after streaming, network, teleport, and camera-owned spatial
|
|
/// mutations have completed.
|
|
/// </summary>
|
|
internal sealed class RenderSceneUpdateCommitPhase : IUpdateFrameCommitPhase
|
|
{
|
|
private readonly RenderSceneShadowRuntime? _shadow;
|
|
|
|
public RenderSceneUpdateCommitPhase(RenderSceneShadowRuntime? shadow) =>
|
|
_shadow = shadow;
|
|
|
|
public void Commit() => _shadow?.DrainUpdateBoundary();
|
|
}
|