Software: Maya 2024.2, scene with a referenced rig using Animation Layers
Summary
An Animation Layer blend node (animBlendNodeAdditiveRotation) spontaneously became connected to itself — its own output attribute wired back into one of its own input attributes — instead of the correct animCurve node. This creates a dependency cycle:
Warning: Cycle on '<namespace>:<ctrl>_rotate_AnimLayer1.inputAZ' may not evaluate as expected. (Use 'cycleCheck -e off' to disable this warning.)
Reproduction context
-
Referenced rig + Animation Layers.
-
The scene had previously gone through a Merge Layers operation, leaving both an
AnimLayer1curve set and aMerged_Layercurve set — both normally connected simultaneously in a known-good version of the scene (verified: both sets feedInput AandInput Bon the same blend node in parallel). -
Autosave taken shortly before the final save showed no cycle — all
inputA*attributes were correctly connected. -
After a normal File > Save and reopening the file,
outputX/Y/Zon the node were connected directly back toinputAX/AY/AZon itself, and theMerged_LayeranimCurve nodes that used to feedInput Awere left completely disconnected/orphaned. -
No manual node editing, no Undo, nothing unusual done by the animator between autosave and the final save.
-
Diagnosis
mel
listConnections -p 1 -s 1 -d 0 "<namespace>:<ctrl>_rotate_AnimLayer1.inputAZ"; // Result: <namespace>:<ctrl>_rotate_AnimLayer1.outputZSame self-loop pattern confirmed on X, Y and Z simultaneously.
Fix applied
-
Disconnected the self-loop on all three axes.
-
Identified the orphaned
Merged_LayeranimCurve nodes by comparing against a known-good backup. -
Reconnected each orphaned curve’s
.outputback to the correspondinginputA*. -
Verified playback matched the reference scene, then re-saved.
Known prior report (different version)
Matches a bug independently documented by technical animator Michael Howard in 2018 against Maya 2017: referenced-rig files with animation layers randomly save invalid connectAttr calls causing the layer node to connect to itself, and the bug only shows up after the file is reopened. Source: https://hoorayfor3d.com/2018/07/animation-layer-bug-in-maya/
Why does this happen — what I actually know vs. don’t
Honestly, I don’t have a confirmed root cause, and I want to flag that clearly so this doesn’t read as more certain than it is:
-
What’s consistent across both my case (2024.2) and the 2017 report: referenced rig + Animation Layers + something that leaves multiple curve sets around (in my case, a prior Merge Layers). Both cases show the same symptom — self-loop only appears after save/reopen, not during the live session.
-
What’s plausible but unconfirmed: the bug likely lives in how Maya serializes/deserializes animBlendNode connections when reference edits and merged-layer leftovers are both present — reopening a file rebuilds connections from stored edits, and something in that resolution step seems to occasionally wire a node’s own output back into its own input instead of the correct external source. I have no evidence this is specific to Parallel Evaluation — that was my own earlier speculation, not something I can back up.
-
What I can’t explain: why it’s intermittent rather than 100% reproducible, and whether it’s specifically triggered by the Merge Layers leftovers or would also happen without them.
Questions for the community
-
Has this reproduced reliably for anyone, i.e., found the exact trigger?
-
Any confirmation this still exists in 2024.2 specifically (my case) vs. being fixed and re-introduced across versions?
-
Does cleaning up orphaned Merge Layer curves right after merging (rather than leaving both sets in the scene) prevent this?
-
Any known relationship to reference edits resolution order on file load?
-