I’ve been trying to export a mesh in obj format and found that the mtl files only have textures written when the Blender material uses the PrincipledBSDF shader. For my current scenario, the objects can only have a diffuse texture so I used the DiffuseBSDF shader instead - it keeps the material panel clean and I don’t have to set specular colour to 0 for each one to stop it being shiny.
I could change all my materials to Principled but there are a lot of them, and I’d have to reassign the diffuse texture to each one, so I’d rather not go through that.
Line 37 of export_obj.py:
mat_wrap = node_shader_utils.PrincipledBSDFWrapper(mat) if mat else None
My understanding of python isn’t quite enough for me to suggest a way to support other material types. I also understand that it might not be possible to support all shader types, but I think a couple of basic ones should be supported.