Iclone8 Mocap Anim length normal on Unity if compared to Blender version when exporting with dif fps

Hey guys, I got a few raw animations on iclone8 recorded with mocap tech, when you export from iclone8 there is an option to export with different frame rates for the fps (60, 30, 25, 24, 12), when you export with less frame rate you expect the lnegth of the animation to change, and thats seen on the files when you inport them to blender after exporting from iclone8 with less fps, (a anim with 60 fps if exported with 30 fps will have half length duration), thats what we expect, but this same exported file out of iclone8 with less fps will have the same length duration on unity besides in unity it shows it has less frames but the length dont change, if the anim originally had 5 min of length, it will be exact of the original in unity regardless the fps! This is good bc we can save storage exporting the anim with less fps, but will be bad for future polishment and touches on blender since it will reduce the length on blender but not in unity. My question here is, is that normal? what causes this behaviour, is there a way to export it this way in order to save storage on size of the anim files and make it a workable file in blender considering on blender it will have less length and therefore less speed than whats shown on unity? Also is there any further possible problems in this pipeline? Thank you !

What file format is the animation exported in? Maybe that file format has a duration in seconds, which Blender doesn’t read? If that was the case, I would think to import all the animations in Blender and then re-export them from there, that way you can have a common, modifiable basis for all of them.

The format is FBX, my goal is to have a file storage optmization (reduce the size in megabytes of the anim file) and have workable file that I can use on blender and export to unity stills. The current problem are, when I export the FBX out of Iclone8 to Blender target FBX, and Import this exported files to Blender, they reduce the length in fps of the animation and ofc also the length in seconds, but when I import this same file it has the same length in seconds of the original, which for me is good bc I may have a smaller file in storage but its bad bc I cant work with a time changed animation on blender to do other minor polishment matters. Im also concirned if htis approach may holds future problems my inexperience in iclone8 arent seeing.

The fbx format is somewhat problematic with Blender. It’s owned by Autodesk, so its implementation in Blender isn’t fully complete and compatible and never will be. For this reason, I’m not sure anything can be done on Blender’s side here, Blender just doesn’t have lots of settings to work with fbx.

I am not familiar with Iclone8 and Unity, do they have animation import settings that Blender doesn’t have?

If the animation has a different speed, why not just scale the animation curves? Go to the curve editor, select everything, set the cursor to frame 1, then scale on the x axis. This should make it possible to easily change the speed of an animation. You can even type in a number, if you want to exactly double the length of the curves (S → X → 2 on the keyboard).

Maybe it would also be possible to change the speed after importing in Unity if needed?




If this doesn’t do it, maybe there would be a way to either:

  • Use an other file format?
  • Reduce the curves’ complexity, clean the useless keyframes, without touching the framerate?
  • Is it necessary to reduce the file like this? I am not familiar with Unity, but I do work in Unreal, and it does optimize and compress animations when they are imported to reduce their size. Does Unity have a similar feature?
1 Like

I tested, and worked smoothly for the scaling and working pipeline, thank you!

1 Like