- Home /
Blender to Unity - which export format is best?
Hi guys, I am rigging a fairly complex character in Blender, with separate deformation bones, FK bones, IK bones and some mechanism bones. Basically, dropping the .blend file into Unity's Asset folder seems to work like a charm (Blender 2.66, Unity 4.1.2). All 'actions' are recognized as animations, all deformations work (so far).
However, Unity doesn't seem to be able to 'bake' blender animations onto the deformation bones (the 'Bake Animations' checkbox is greyed out). Given that my rig is complex, and has to work on mobile platforms, I therefore wonder if I should use COLLADA or FBX export instead. Does anyone have experience with this? Are there best practices? Is there a performance penalty for not baking animations? Is rig complexity an issue at all or am I worrying too much?
Thanks for sharing any tips. /W
Answer by Linus · Apr 17, 2013 at 09:31 AM
If .blend throw a fit, use FBX
When using .blend files Unity actually opens the file in Blender and export it out as FBX.
Just remember to keep the original Blender file safe, as importing FBX into Blender is very tricky, if not impossible.
http://forum.unity3d.com/threads/173183-Blender-model-import-Fbx-or-blend
Eric5h5: Importing a .blend is the same as importing .fbx, since Unity doesn't really import .blend, it just makes Blender open in the background and export .fbx. Using .blend means you can just save the file and it will be usable in Unity, instead of having to go through the export process manually and keeping two separate files (since you can't import .fbx into Blender).
Thanks for the link to the forum thread, hadn't seen it. That answers my question: best to use FBX directly and configure it manually than to rely on an automatic, unconfigurable import within Unity.
Just wanted to add, when Importing with .blend - the model rotates -90 degrees on the x axis because Z axis in Blender is Y axis in Unity etc. This normally doesn't matter, but I had an issue with Tidy Tile $$anonymous$$apper and this.
Important to mention too that when importing .fbx, the scale in Unity is set to 100 in all axes. When importing .blend, the scale is set to 1. (the model looks the same in Unity, but the scale property is different).
Use this to prevent: http://i.imgur.com/TFnbEIG.jpg
I have that set in 1 as well, but then in Unity objects show with scale of 100 (they are the right size though).
Answer by HmoudMO · Apr 17, 2013 at 09:51 AM
Hey there, Have you tried Autodesk FBX Exporter? http://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Import-Export/Autodesk_FBX
I've been using this exporter for my blender models, which really ease up the pain from Blender exporting. It exports your models to an FBX file, which is fully supported with Unity.
Hope that helps! :)