Figured out a solution for me! Make sure to click “Use default sample rate”, or, specify your animation FPS as the sample rate. Then, select “animated time” when importing.
Okay so actually there are two things:
- Decide on your FPS. I chose 30.
- Make sure the number of frames in your animation divided by your FPS is an integer. E.g 1 frame / 30 FPS is a decimal.
- Make sure when you input your FPS/sample rate is set to what you intended.
This is a good workaround for many animations but it does cut off part of the animation. In my case this is unfortunately not a solution as it produces a very jarring jump in my animation loop.
A solution for this.
Tick of “Use Default Sample Rate”.
Set on “custom Sample rate” your import rate, 60 in my case.
Thanks for the reply, however in my case this didn’t work either.
The bug is now being tracked by epic games:
They are planning a fix for 5.1.0, but you can leave your vote on the link to let them know this is important to you.
Thanks for the info and for sending the bug report. Lets hope it’s fixed soon…
The whole frame deal got me thinking about a possible root cause and after I successfully imported my fbx animation, it makes some kind of sense. In Blender 3.3 LTS (It might work in other versions) I had to select the armature, make sure the right animation was loaded, zoom as close as possible in the timeline until I could see the scale at 1 frame per line and move the keyframes of the animation until it snaps to the nearest frame. Lucky for me I had a 60 frame animation but it worked. Also, the original animation had a frame poking outside the frame range. Could that be a cause? As far as I know if every frame is exactly lined at the frame mark, and not in between two marks, it would fix it.
I found a work around this problem, create a proyect with an older Version of Unreal (4.27) in this proyect import your character with all the animations that you need, then search in Windows explorer your Unreal4.7 proyect and Copy the file with your Character and all your imported animations, and then paste this file in the Unreal 5 proyect.
guess what!! the issue unsolved in 5.1 loooool
That is the real workaround (import in ue4 and migrate to ue5) for this engine bug. Hope that will be fixed soon. Thank you so much, you saved my day!
Hey, I was having the same problem but since I changed the blender file scene’s frame rate form 23.98 to 24, 30 or any natural number, the error stopped.
Anyway, I hope this gets solved soon.
I’m having the same problem.
No matter the settings, many of my animations are not being imported in 5.0.3.
It’s probably a bug.
Requirement: (Total frames - 1) / (Exported frame rate / Default frame rate 30) = Any integer
Example: Export Blender animation frames 1-401 (401 total frames) at 120 FPS will be successfully imported into UE5 with options “Export Time” and “Use Default Sample Rate” checked: (401 - 1) / ( 120 / 30 ) = 100 (integer)
Example: Export Blender animation frames 1-397 (397 total frames) at 120 FPS will be successfully imported into UE5 with options “Export Time” and “Use Default Sample Rate” checked: (397 - 1) / ( 120 / 30 ) = 99 (integer)
Yeah seems like it was pushed off to 5.2
I guess currently there is two solutions during FBX import:
- Set custom sample rate to your animation rate that differs from default 30
- Animation Length = Set Range; Frame Import Range = set actual range
This solved the issue for me but it is a real pain as messes up all my existing animations. It looks like as you say the total number of frames / fps has to be integer. If there is a fractional part then it fails to import.
Sounds incredibly dumb but hear me out.
-I duplicated the last frame in my animation to add a buffer frame
frames 0-13 (+1) a total of 14
-On export set the animation range from 0-14
(I used the Game Exporter in Maya then went under the Animation Clips tab I added a new clip)
-In UE I import the clip with a -1 on the Max range
FBX Import Settings
Animation Length = Set Range
Frame Import Range = Min=0 Max =13 (This = The animation clips length -1 )
Custom Sample Rate = 24 (In my case)
Snap to Closest Frame Boundary = False
This is pretty much the same as DufeRob’s solution but by adding the extra frame('s) at the end your animation should no longer be clipped in engine.
Import to Blender. Add rootbone and set FPS to 30. Export it. Import to Unreal 5.03 or 5.1, check orientations on the import panel.
There is a setting in 5.1 and it’s working for me. Thanks to a comment in a YouTube video from “Matthew Warner”.
“In the FBX Import Options, instead of manually adjusting the frame number, simply check Advanced > Snap to Closest Frame Boundary”