I currently am trying to get my character to climb up a ledge. At the moment I have him grab onto the ledge, then i want him to climb up. I have a animation that has the root move in the animation, when i preview it, it moves, then enabling root motion makes him animate on the spot, which is correct. But when i play the game, the animation plays on the spot, and he does not move.
View collisions so you can see your capsule. Its possible that the capsule is hitting the wall and then not moving further.
I’m converting to gif atm the bound just touches the wall, and the root goes straight up, then once at level with the ledge moves across. So if the collision did indeed follow the root, which its not, then it would go around the ledge.
][1]
doesnt look like its moving the capsule. add a debug event like input key “k” for example that plays the animation and see if the capsule moves then. easier to establish if animation issue or not
The capsule doesn’t move
did you set your anim blueprint to use root motion? we now know its animation related. either root motion is not extracted because the root itself was not animated or you simply didnt set the settings to make use of it.
I’ve definitely got them both checked, I’ve spent 1 and a half days trying to get this to work, I’ve enabled “Root motion from montages only” in edit defaults, and I’m using a montage, and I’ve enabled root motion in the animation.
is movement mode set to fly?
It is, goes to fly when he climbs then to walk, i’ve changed it to none and walk all of which do not work
can you post a screenshot of your bone hierarchy… is your root a root at 0,0,0 or did you use the hips as the root?
Looking at your last animated gif, root motion is not functioning for some reason or the character would never exit the capsule and the capsule would “hop” up with the character. When you preview the animsequence in Persona, does the animation change when root motion is selected/deselected?
(For instance, a running animation using root motion would appear to run in place when root motion is selected. Deselecting root motion for a running animation utilizing root motion would cause the character to run off the screen.)
Yeah so like i said i had originally had it wrong, and re did the animation, and so when i didn’t tick it, it was climbing up and moving up, then when i ticked root motion it moved on the spot, so i thought yay its working. But then in the game it moved on the spot. The capsule never moves with it
In the animation software (blender) the root bone is at the base of the character (his feet) which in blender is 0,0,0. When i put it in unreal, it is also at the base of his feet
Adding my $0.02 on top of the above…just going to go through the checklist I use. (Sounds like you did a few of these already, but just posting everything in one place.)
-
First, verify the animation is using
root motion in Persona. You’ll want to check
this in the sequence itself (“Anim
Asset Details” tab). Check root
motion on, and for now set “Root
Motion Root Lock” to zero. -
Next thing would be to verify the
root is importing/animating ok in
Unreal. Open up the animation in Persona, and in
the viewport where it is playing
click on “Show” at the top, then
check “Show root motion”. If root
motion it properly setup on the anim,
the little guy should play his climb
up, then climb up again, higher and
higher etc. -
Next, go into the Character’s
Blueprint and go into the Component
view. In the Components list, make
sure the character “Mesh (Inherited)”
is set to your character’s skeletal
mesh. Set “Mesh (Inherited)” to use
Animation Mode: Blueprint, and point
it to your Animation BP. -
Next would be to verify the Anim BP
is setup ok. In the ABP’s “Anim
Preview Editor” go into the “Edit
Defaults” rollout. For now just set
“Root motion mode” to “Root motion
from everything”. -
Next, in the Character’s BP, you’ll
need to turn a bunch of things off
before you enable the animation to
play. All these nodes are probably
overkill, but it should help debug:
“Set Collision Enabled” to No
Collision, “Set Movement Mode” to
Flying, “Set Enable Gravity” to
false.
In order:
-
I can’t set it to zero because the
scale is big, so when i set it to
zero, he becomes tiny and then in the
game he just disappears, or goes real
tiny. -
There’s no “Show root motion” option
in the show drop down, only “Process
Root Motion” which does nothing that
i can see. -
That’s all done.
-
Also done that.
-
Changing the collision and gravity
doesn’t change anything, i’ve got it
to flying already.
Sounds like you’re doing everything right -hard to troubleshoot at this point without the file itself. If you want, you can send the project as a zip file in a private message to me through our :
However, I likely won’t be able to get to it until at least Monday of next week. If you are not worried about sharing your asset, you can also simply post the file here, if small enough, or provide a dropbox link (or similar) in which case a community member might be able to look at it sooner and provide a solution.
The first two points sounds like possible culprits.
What is the scale of the root bone in Blender on the mesh? What is the scale of the root bone in in Blender on the animation?
(Feel free to post the animation FBX file too, that would help a lot)
Hi Zeploc,
Since you have not responded in a few days, I am closing this post as answered for tracking purposes. However, if you are still experiencing an issue with root motion from an FBX file generated from Blender, please send the requested file and we will take a closer look.
Thanks,
.
Hi. i found this post from i assume the same tutorial video that op was following. and i have exactly the same issue as above. I followed the steps scrolling down and still no luck. the only variation i can see from the answers ops given is that setting root motion to zero in my case lays the character on its side. not sure why but its an issue ive seen before. dont think its the problem in my case but could be wrong… something to do with orientation from mixamo skelaten.
is anyone from this post still around and able to help me solve this ?