[Closed] FBXExporterSetParam and Compressing FBX animtion data
We are heading into alpha and the leads have suddenly identified our skinned mesh animations as “too big”
Or pipeline is 3DS Max -> FBX ->unity. Animation data is baked into the deformation bones form Ik rigs.
Unity Rigs are Generic not Humanoid. Each character has Separate skinned mesh and animations combined by code into a single FBX
I’ve looked at unity’s compression settings and gotten a small win choosing “optimal” over “keyframe reduction” on the Import settings.
I’ve been asked to find approaches to optimize the FBX data before it gets to unity.
In Max Script, I’m using FBXExporterSetParam “FilterKeyReducer” True
but there are many key reduction options on the exporter dialog that have no parameter documented
Has anyone had success goingdeeper into FBX optimizing in MXS?
are there any 3rd party FBX animation compressing utilities out there?
and finally: I am intuitively rather skeptical that pre-optimizing an FBX before unity will gain anything over unity’s own internal compression. It’s likely to use the same approach as other methods.
Hi I’m also working with max and unity animations so, and on the last project had similar issues with animation sizes,
Each animations size is hugely dependat on the number of bones in the skin and the complexity of the animation, is it possible to reduce the skeleton somehow if some bones are not being used so much? It’s really not an easy task but it is possible to script this reduction depending on the complexity of your skeleton/rig.
It’s also possible in unity to reduce the precision on the position in the key frame reduction, rotation is the most important for most skeletons, or reduce the rotation precision as well if you still need more memory
The big one for us was removing all the unused keys from scale and position channels in max before the unity optimisation. Saved mb’s of memory
here's the weird part: unity is not optimizing the linear baked position keys. Check out this screen shot of the Unity animation editor.
That FBX_spine_d_neck bone has no positional movement at all yet unity’s own algorithms ignore this and leave every baked key in place. In other places, where there is curve data on position keys, it optimizes fine. I wonder if it’s a bug.