If a Character has active root motion while walking (animation root motion OR a Root Motion Source), and this root motion causes vertical motion that "lifts off", it's possible for the Character to be put into a different movement mode.
By default, this is MOVE_Falling but in customized projects, this could be another mode instead.
The problem is that the detection of whether to switch or not is conditional on IsFalling(). I believe it should instead be more narrowly conditional on (MovementMode != MOVE_Walking) so that the appropriate Phys****** function is always used.
It would be good to also scan CMC code for similar instances. At a glance, there is at least one other case in PhysWalking and one in PhysNavWalking
From UDN: [Link Removed]
See description first.
Easiest way may be to use a vertical root motion source with a customized CMC that overrides ApplyRootMotionToVelocity. For testing, simply hacking on CMC is probably OK.
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-205480 in the post.
0 |
Component | UE - Gameplay - Player Movement |
---|---|
Affects Versions | 5.2, 5.3 |
Target Fix | 5.4 |
Created | Jan 31, 2024 |
---|---|
Resolved | Feb 6, 2024 |
Updated | Mar 25, 2024 |