Hello, I am currently developing with Unreal Engine 5.7.1. I am encountering an issue where a modular character intermittently flickers into a T-Pose during shot transitions (scene cuts) in the Sequencer, instead of playing the assigned animation sequence.
To be precise, when I describe it as a “T-Pose,” I mean that the character defaults to the base sequence defined in the Animation Blueprint (which happens to be a T-Pose), completely ignoring the AnimMontage data that should be playing. This happens intermittently during cutscene transitions.
I would appreciate any advice or insights into why this might be happening.
1. Issue Description
- During Sequencer shot transitions, the character occasionally renders in a T-Pose.
- The Animation Tracks in the Sequencer are set to “Restore State”.
- Crucial Observation: When the character renders in T-Pose, debugging confirms that both MontageInstances and ActiveMontagesMap in the character’s AnimInstance contain valid values. The data is there, but it is not being reflected in the final pose.
2. Character Setup
- Class: Inherits from ACharacter.
- Structure: Base Mesh (Body) + Attached Skeletal Meshes (Face, Arms, Feet, etc.).
- Tick Settings (Base Mesh):
- VisibilityBasedAnimTickOption: AlwaysTickPoseAndRefreshBones
- TickGroup: PrePhysics
- TickInterval: Forced to 0.0 when entering the cutscene (may vary outside cutscenes).
- Character Settings:
- CharacterEndPhysicsTickFunction.TickGroup = TG_EndPhysics
3. Bounds & Attachment Configuration
- Base Mesh (Body):
- bUseAttachParentBound: false
- bComponentUseFixedSkelBounds: false
- bSkipBoundsUpdateWhenInterpolating: true
- bUseBoundsFromLeaderPoseComponent: false
- Attached Meshes (Arms, Feet, etc. - except Face):
- bUseBoundsFromLeaderPoseComponent: true
- bUseAttachParentBound: true
- bComponentUseFixedSkelBounds: false
- bSkipBoundsUpdateWhenInterpolating: true
- Face Mesh (Specific Setup):
- Uses AnimBP with Copy Pose From Mesh node (copying from Base Mesh).
- bUseBoundsFromLeaderPoseComponent: false
- bUseAttachParentBound: false
- bComponentUseFixedSkelBounds: false
- bSkipBoundsUpdateWhenInterpolating: true
4. Attempted Solutions
- I tried changing the TickGroup of the configured meshes to TG_PostUpdateWork before entering the cutscene, but the issue persists.
Could this be related to the evaluation order between “Restore State” and the next shot, or perhaps a Tick dependency issue where the Montage data is valid but the pose evaluation skips the Montage slot for a frame?
Thanks.
[Attachment Removed]