Bug assigning duplicated materials (same material, different name)

I found a bug where Cheetah fails to assign the correct material in the following circumstances: When an object is assigned a material and that material is duplicated, given a new name, and then dropped onto another object. The second object will not use the duplicated copy. Instead, it registers back to the original.

So, for instance, if I copy material “Blue” and rename the copy “New Blue” and drop “New Blue” onto the second object - that object instead is assigned the original “Blue” and not the copy.

One can rectify this situation by changing the material assigned to an object via the Materials drop down selector box. However, this “fix” will not retian the re-assignments during export. The interface may show the correct assignments but they will not be retained on export. Only the material on the object at the top of the object browser will be copied. This also occurs if you copy and paste the objects into a new cheetah document.

This error only appears to happen when the materials are duplicated and the duplicated copies are not changed in any way except for their name. If one changes the duplicated material’s color or some other parameter, this bug will not occur. Apparently, Cheetah fails to recognize a material’s discrete name; it only looks at the material’s parameters.

Having correct material assignments is very important when exporting objects for a work flow that includes Substance Painter or Octane Render. Often you want the same material on various parts of an object, but need to separate that part of the mesh when imported into those other programs. The easiest way to do that is simply renaming the duplicate materials.
In my case I wanted to keep the materials created in Cheetah for when I rendered my object in Cheetah, but also was preparing the object for texturing in Substance Painter for eventual export to glTF. But programs like Substance Painter (and Octane Render) organize an objects layers via material name. In the case of Substance Painter, it combines meshes with the same material name. Assigning a different material name allows one to keep those sections separated during importing and painting. Substance Painter will also combine the UV maps of objects with the same material name, causing overlapping UV’s (which can be undesirable).

While the solution to this is simply to assign materials with unique parameters in Cheetah to those objects one wants to keep separate during export, it is an additional step. Especially if one also wants to use the materials created in Cheetah to also render in Cheetah. Turning on and off different material assignments for export should not be necessary if Cheetah honored a materials unique name as well as its parameters.

It also took me a little while to figure out what was going on and why my objects were not being imported into Substance Painter correctly. I’m sure others have,or will, run into a similar problem when working with multiple applications where it is expected that a material’s name should be respected during the work flow.

frank beckmann

Well-known member
I´m under the impression you need to go the wish-list forum then as I don´t expect this a bug - otherwise "delete duplicate materials" won´t work correctly anymore.