- Home /
FBX Workflow: 3DS=>Unity
What is the suggested workflow is for working with 3DS=>Unity via FBX files?
If I update the FBX file and reimport in Unity, it's not the same as deleting the re-adding the FBX in Unity.
Deleting and re-adding works as one would expect, but this means any changes I've made to the prefab have to be redone (split animations, loop settings, removing erroneous geos, etc) - all links are lost etc; so this isn't a feasible workflow.
The simplest case right now is changing a texture. If I change a texture, overwrite the FBX file, and reimport it in Unity; it doesn't get updated. However, if I create a new prefab from that FBX file; the textures are the updated ones in the new prefab created by Unity.
So generally, what is the suggested workflow here? Why doesn't overwriting FBX files work as one would expect?
Answer by Paulius-Liekis · May 25, 2011 at 08:59 AM
Texture changes are not expected to work. It's by design. The idea is once you import model Unity creates materials and it doesn't overwrite them afterwards. It's done that way, because we want to allow users to edit their materials in Unity (setup right shader and so on) and we don't want to overwrite all that work when mesh is changed.
Meshes and animations should change as expected by just overwriting the file.
Regarding prefabs it's a known problem (i.e. if you add additional objects to the file they do not appear in the prefab). We have plans to improve our prefab system and these problems should be fixed then.
So to summarize: you should be overwriting your FBX files and it should work. If something doesn't - we want to know.
But I want to change the materials I use in $$anonymous$$ax. How can I do this and expect them to update in Unity after I export to FBX and update that file in Unity? I am having this problem now and it is really frustrating.
Just thought I should add in here... as of 25/5/2014 build 4.3.4 FBX animations still do not update properly when overwritten. The workflow is $$anonymous$$dnumbing...
Any updates on this in the meantime?
Create a cube in Blender and export it as .blend or .fbx into your asset folder
In Unity, drag the imported cube into the hierarchy
$$anonymous$$ake a change, for example adding a Box Collider, and drag the hierarchy object into your asset prefab folder
Now if you make changes to the Blender file (changing dimensions for example), neither the prefab nor the hierarchy object is updated
If I do not create a prefab from the hierarchy object, the object is correctly updated. $$anonymous$$y understanding is that the hierarchy object keeps the reference to the blender file in this case. By making a prefab, the hierarchy object then references the prefab and not the blender file.
Answer by diggerjohn · Aug 03, 2012 at 09:22 PM
I am having the same trouble with materials. I want to update the materials through max. So how can I update the FBX and expect the materials to change as well as geometry?
Do not post questions as answers. There are comments for that.
Answer by diggerjohn · Aug 03, 2012 at 07:44 PM
I am having the same problem with materials. How can I make changes in materials in max and have it reflected in Unity through FBX updates?
Binaries and ASCII are fragile in complicated projects or when we make it complicated. I would plan the project properly before importing assets into unity which would establish smooth progress and pleasant workflow rather than having a go in hard ways.
$$anonymous$$y solution was to simply change the name of the $$anonymous$$aterial in $$anonymous$$ax. This forced Unity to recognize it when I copied in the new FBX into the Assets dir.
Answer by diggerjohn · Aug 06, 2012 at 02:54 PM
It is my goal to touch FBX content files as little as possible in Unity. It is imperative that the workflow for me be smooth and seamless into Unity from Max.
The simple solution. Change a Max material, change its name and Unity is forced to pick up the change when you introduce the new FBX.
Also, simply over-writing FBX files already in the Assets dir seems to sometimes be problematic. Particularly if you already have them under source control. I export them to a separate temp dir and then copy them into Assets. Seems to produce more consistent and desirable results.
Your answer
Follow this Question
Related Questions
Animation from 3dsMax to Unity 6 Answers
ASE Import or writing an ASE Importer 1 Answer
3DsMax Import Problem 0 Answers
How to make a player by 3dmax? 1 Answer
Custom Export and Import FBX Data 1 Answer