mirror of
https://github.com/4sval/FModel.git
synced 2026-06-22 16:00:17 -05:00
Fix SaveCachedPose chaining: exclude other SaveCachedPose from upstream collection in Pass 3
Co-authored-by: LoogLong <86428208+LoogLong@users.noreply.github.com>
This commit is contained in:
parent
87cb948dfb
commit
cc03da7bb1
|
|
@ -235,6 +235,8 @@ public class AnimGraphViewModel
|
|||
// SaveCachedPose can only exist in animation blueprint layers (defined by _Root nodes).
|
||||
// Determine the correct _Root layer by tracing downstream UseCachedPose consumers
|
||||
// back through the state machine hierarchy to their parent animation blueprint layer.
|
||||
// Each SaveCachedPose's upstream chain excludes other SaveCachedPose nodes so that
|
||||
// chained SaveCachedPose → UseCachedPose → SaveCachedPose are independently placed.
|
||||
if (primaryGraphLayer != null)
|
||||
{
|
||||
var unassignedSavePoseNodes = vm.Nodes
|
||||
|
|
@ -250,7 +252,8 @@ public class AnimGraphViewModel
|
|||
{
|
||||
if (!assigned.Add(saveNode)) continue;
|
||||
var targetLayer = FindOwnerRootLayer(saveNode, vm, lookups) ?? primaryGraphLayer;
|
||||
var inputChain = CollectUpstream(saveNode, upstreamOf, assigned);
|
||||
var inputChain = CollectUpstream(saveNode, upstreamOf, assigned,
|
||||
excludeNode: IsSaveCachedPoseNode);
|
||||
targetLayer.Nodes.AddRange(inputChain);
|
||||
affectedLayers.Add(targetLayer);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user