I have exported out PNGs from Substance Designer for diffuse, normal, metallic, and roughness. On 4 of the 5 exports the roughness and metallic textures are unable to be read by Unity. I get this error:
What is weird is that when I open the texture in Photoshop and re-save the PNG, it still can’t be read by Unity. Also, some of the metallic/roughness textures are able to be read and they use the same materials and are the same size as the ones that can’t be read. Re-exporting the textures also doesn’t fix the issue.
I’m not sure whether the problem lies with Unity, Substance Designer, or both, and I’m not sure what else to try. Suggestions would be great. Thanks.
1 Like
If i remember correctly this happens if you pipe a grayscale value into a output texture, substance will create a PNG with only grayscale format. Unity does not like that. You have to pass the grayscale value through a ramp that will convert it into RGB value.
The more elegant way is to export the substance to unity and let unity handle it. Then it will be in the correct format.
2 Likes
Export to a .sbsar file and drag that into Unity
Did you by any chance export 16bit pngs? Unity wants 8bit png files.
I prefer to just use .tga and avoid possible .png compatibility & alpha issues. Any source control you might be using for your assets is going to be compressing them anyway, so .png doesn’t gain you much except some extra HDD space and headaches like above!
1 Like