Exporting to Unity - materials not displaying properly

Hope this is the right place. I’ve been trying to get this crossbow model into Unity for several hours. The model goes in just fine and even the animation will carry over (sometimes). However after trying many different methods and doing countless google searches I can not figure out a way of getting my shader materials to display properly in Unity.

I’ve got two materials on this object. A wood material and a metal material. Neither one appears properly in Unity. I just end up with a crossbow shaded with two very flat base colours.

From my google searches I can see there does seem to be a lot of others who’ve had the same problem over the years but I can’t find a working solution anywhere. Does anybody have any advice for me?

Crossbow3.fbx (226.0 KB)

How about selecting the Adobe Shader for your materials inside Unity (in case you don’t do that already) ? I assume you want to use PBR maps. Make sure when you use the OpenGL Normal map to divide the value by half. I never had issues on importing my mats over to unity from Blender, one just has to keep in mind that every material needs to be set up correctly… it won’t take Blender’s shader node set-up

If I’m looking in the right place I don’t appear to have the Adobe Shader available for selection. This is what I’m currently seeing in Unity. I’ve got the crossbow in there and I’ve extracted the materials to a sub-folder in assets. As image shows the materials are just black and white.

In Blender I’ve UV unwrapped the mesh into two separate UVs - one for the wood parts, one for the metal parts. Got a separate node tree for each material with the UV Map node at the start of each tree. I had read that materials won’t carry over if you’ve just assigned them from materials panel without doing UVs

My first time trying to use Unity for anything btw so I’m still in the process of learning where everything is.

Oops! I meant to say Autodesk… try this shader instead.

Just tried. Still no luck :frowning: There’s something wrong with the way my materials or my UVs are done in Blender but I cannot figure out what it is (fairly new to Blender too). The materials are obviously on there and assigned to the right parts of the mesh but they are just appearing as flat base colours with none of the textures or other features on them. Assuming that the problem is in the way my textures are done in Blender do you have any ideas what could cause this to happen? They just don’t seem to be exporting properly.

Is it possible this is the problem?

Make sure your textures are either sourced from your Unity Project or copy them into a folder called textures inside your Unity Project.

https://docs.unity3d.com/Manual/HOWTO-exportFBX.html#Prepare

I have sort of come to this conclusion myself too. I now have two materials which I made from some imported maps. However I created those in substance painter instead. They still need a little work as the lighting was vastly different in SP but at least I’ve got something on there now! :slight_smile:

I’ve read so many things saying that Blender’s node system just doesn’t export well to Unity (and many other places). Also read in many places that FBX exports can’t even include texture info. I’m not sure how true any of that is. Considering it took me a total of 15 minutes to learn how to get a texture on there with substance painter I’ll probably stick to using that in future for all my texturing needs. It’s quite easy to use too. Blender is great but as someone who’s learning as I go I’m finding the materials/texturing in Blender to be pretty difficult to grasp at times.

Thanks for the responses :slight_smile: