Update collada/fbx model preserving assigned textures

Hello,
I am working on an architectural model using a collada file from revit. I have created complex materials on playcanvas using textures, normal maps, reflections, etc. and replaced the embeeded materials manually with ones created on playcanvas, Afterwards, I found some errors in the geometry and need to update the model but all the materials were resetted to the embedded ones again.
This already happened to me several times.
Is there any way to update the model and mantain the assigned materials?


before

Thanks in advanced

1 Like


after updating the model

There is an importer setting you can uncheck to address this
Go to settings and open the asset tasks drop down and uncheck overwrite materials

2 Likes

It was already unchecked (also tried with overwrite textures unchecked with same results).
The problem is that i have created materials separately. If I modify the embedded materials of the collada file and unpdate the model it works, but not with my materials. It is because the ID of the materials is different. Every mesh is linked to the original material ID and my materials have a different ID.
So, the problem is not solved.

Have you tried using the Entity Materials as seen here? [SOLVED] How to duplicate models?

Hi yaustar, tha worked for materials but it seems that the order of the meshes is not the same on every export.
It recognized the applied materials but not the order.
Below an image to explain what happend…

That’s pretty painful :(. Are the meshinstances named in the source model asset? Giving them distinct names may help the mapping?

If the export changes the model names and order that will cause issues for sure, was assuming you were exporting the same models everytime.
Not sure if any engine can really cope with that. the best thing would be to name the objects and make sure they are exported with the same textures every time and then modify the texture in the editor, not in your app.

Thanks yaustar and Mike,
Unfortunately naming the objects in advance is not working because collada files group meshes by material and in that case the names are lost. Collada files name the meshes using a range (0,1,2,3…) so it is a matter of ordering the exported meshes and it is completely related with the source modeling software.
I have made tests exporting collada files with Revit and Rhino. If you modify the model but have the same amount of meshes (i mean if the modifications are about changing texture mappings or sizes of the volumes but not adding elements), Revit will export the meshes with the same name and order and the entity materials work fine. On Rhino, every modification you make to the model will affect the order of the exported meshes.