When updating a model with custom collision, UE4 (4.10.4) experiences weird buggy issues. Preface: I’m using Perforce source control in Unreal, the assets are checkout and writable. I’m using Maya 2016 and the 2014 FBX Exporter.
The model (when imported for the first time) appears correctly. The collision geometry is hidden and properly aligned:
The model now has a secondary element with the “WorldGridMaterial” applied to it. Attempting to remove this causes a fatal crash in editor. This only happens when reexporting the model once it’s been imported into UE4.
Another issue occurs when reexporting that causes the collision geo to scale by 0.1:
If I export the exact same model as a different name…UE4 imports it with all the correct settings. I’ve deleted the asset from within UE4, removed it from the file system, verified in Maya that the FBX export does in fact have all the properly named geometry and collision. However, it seems like UE4 has some sort of internal cache that’s remembering the original imported file and when updating the file and won’t accept the file changes and/or causes buggy issues.
That is some weird bug. But in fact I had some issues with mesh caching many times, even locally without using source control.
That may happen especially with skinned meshes. You should see how bad this problem is in Unity3d hehe.
Anyway, you should report it as a bug here: https://answers.unrealengine.com/index.html since it looks like a serious problem with source control.
In short, by default Simplygon imports FBX objects with custom collision as 1 LOD. If you re-export the object again, Simplygon will only update the collision information and not the visible geometry. There are two methods to work around this issue. The 1[SUP]st[/SUP] is to click “Force Build” and the 2[SUP]nd[/SUP] is to enable at least 1 more LOD on the object. Enabling another LOD on the object will automatically update the asset on re-importing into UE4. So…in short, with 1 LOD you have to manually force the rebuild. With 2 or more LODs, Simplygon will automatically refresh the asset on re-import.