Phase 5 step 2
All checks were successful
CI / React UI Build (push) Successful in 10s
CI / Native Windows Build And Tests (push) Successful in 2m39s
CI / Windows Release Package (push) Successful in 2m54s

This commit is contained in:
Aiden
2026-05-11 18:56:39 +10:00
parent 77590f4a62
commit 7740fe209c
5 changed files with 103 additions and 56 deletions

View File

@@ -1,24 +1,26 @@
#include "RenderStateComposer.h"
RenderStateCompositionResult RenderStateComposer::BuildFrameState(const RenderStateCompositionInput& input) const
RenderStateCompositionResult RenderStateComposer::BuildFrameState(const LayeredRenderStateInput& input) const
{
RenderStateCompositionResult result;
if (!input.baseLayerStates)
const std::vector<RuntimeRenderState>* layerStates =
input.committedLiveLayerStates ? input.committedLiveLayerStates : input.basePersistedLayerStates;
if (!layerStates)
return result;
result.layerStates = *input.baseLayerStates;
result.layerStates = *layerStates;
result.hasLayerStates = !result.layerStates.empty();
if (input.liveState)
if (input.transientAutomationOverlay)
{
RuntimeLiveStateApplyOptions options;
options.allowCommit = input.allowLiveCommits;
options.smoothing = input.liveSmoothing;
options.commitDelay = input.liveCommitDelay;
options.allowCommit = input.allowTransientAutomationCommits;
options.smoothing = input.transientAutomationSmoothing;
options.commitDelay = input.transientAutomationCommitDelay;
options.now = input.now;
input.liveState->ApplyToLayerStates(
input.transientAutomationOverlay->ApplyToLayerStates(
result.layerStates,
options,
input.collectLiveCommitRequests ? &result.commitRequests : nullptr);
input.collectTransientAutomationCommitRequests ? &result.commitRequests : nullptr);
}
return result;
}