Material ID's broken in 4.14?

Hey,

When I import an .FBX file into 4.14 the material ID order doesn’t match with what was set to it inside 3DSmax. The exact same model works fine as it should in 4.13.2. The image below should hopefully show clearly what I’m referring to. I believe this is a bug inside the new 4.14? Please check it out, it’s a quite important one. Perhaps I’m doing something wrong? I also miss the “isolate” and “highlight” options in 4.14?

I don’t think they are exactly broken. Maybe it is caused by addition of slot names for materials?

Hi ,

Thank you for submitting a bug report. I have reproduced this issue and logged a report for it here: Unreal Engine Issues and Bug Tracker (UE-38750)

You can track the report’s status as the issue is reviewed by our development staff. Please be aware that this issue may not be prioritized or fixed soon.

Cheers,

Hi ,
I looked into the issue, and here is my thought. Doing an import cannot warrant the order of the material array, except if you use the skinxx workflow in 4.13.

In 4.14 the skinxx workflow was removed and replaced by the material slot name workflow. Now, when you re-import, the order will stay the same as after the initial 4.14 import, if you kept the same material names in your DCC (Max Maya Blender…). The index though is not as relevant as before, since now the material can be accessed using a user given name.

This is more robust since the runtime (blueprint or code) can use that name to retrieve the mesh material, without any dependency to the mesh topology (number of section, nbr of lods, …).

Also in 4.14, the isolate and highlight feature are locate in the LOD category under sections combo box.

,

for the replies and the Jira ticket, I’m glad you were able to reproduce it! Hopefully it gets fixed asap as I feel it’s quite important.

Hey,

So the Jira tocket now says “By Design”. I really can’t fathom this is not going to get a fix? So basically if you set up a nice clean pipeline between your 3D app and UE4, where you set up material ID’s in Max, you’ll have to re-order them again in UE4? This seems backwards rather than forwards? Why the sudden change, it has worked like this for decades? You’re adding more work for something that wasn’t broken? Or am I really not getting this update, how do you maintain a clean pipeline now between your modelling app and UE4 if you are never sure what material ID will be assigned where after exporting/importing?

,
-wes

I’m not working with max. More of a blender guy. But I think it is safe to assume that this change was made to improve cleanness of the pipeline, rather than break it. Before, order of material IDs could change after edit on the mesh. Now it is independent, because it is mapped to slot(material name), and will stay consistent on mesh re-exports.

Hi Ed.
I’m using the 4.14.3 version and have the same problem as did. My material IDs get all mixed up. Also when importing a mesh with 8 material IDs (.fbx format from 3ds max) even if I check the “import materials” and “import textures”, the materials and textures get imported, but the details tab of the object viewer only shows 2 material slots. The bug is marked as fixed in the report you linked to.
,
Andrej

Hey Perso89,

The only import issue that I am aware of regarding incorrect material assignment that still occurs in 4.14 is this: Unreal Engine Issues and Bug Tracker (UE-40814)

First, if you feel you have a legitimate issue please make a new AnswerHub post. Once you have made the new post would you mind posting a comment here linking to the page.

In the post could you provide a test asset that reproduces the issue? We haven’t experienced the issues you are describing on our end.

The reason we need a new post is to keep individual issues separate especially if one has already been resolved. Also, the number of generated material slots being incorrect is a unique issue that deserves its own post.

Cheers,

Hi, We have the exact same problem in 4.14.3 and it is stopping us from finishing an architectural visualisation project we are supposed to deliver to our client.
ID’s are all over the place. We can’t drag and drop materials on our meshes without them being applied on the wrong elements and this is driving us crazy.
Also the code we are using to change materials in real time is now working on the wrong ID’s and so is no longer working properly.
I posted about it on the answerhub but got no response.

Our meshes are coming from 3ds Max 2017 and are in .fbx.

I replied to your post. It would be best to move the investigation there, here is a link for those who are interested: Drag an drop material to object ID not working anymore - Rendering - Epic Developer Community Forums

To anyone having this issue. We have developed a plugin able to fix the discrepancy between LOD sections and ID’s. It works on both the actors in the scene and the source assets and it preserves the materials already assigned on the wrong ID’s.
While Epic fixes the issue you can contact me if you are in need of the plugin to fix an already corrupted project.

This bug still occurs for me in 4.15. I have a set of assets that have 4 sections each, 4 material IDs, but they all import differently, and even if I change the sections to point to the correct element, it resets on re-import. So now I have to do this manually, for every import, every time. Its a HUGE timesink and drives me crazy. I work from modo.

Hey Snefer,

We have already verified that the issue in this post has been verified and fixed any continuation of this issue is treated as a separate issue so I’m going to need you to create a new post. Feel free to comment here with a link to the new post and we can continue there.

Hello, where I can get this plugin? Sincerely Janek