If you think that this tutorial may be of help to other, non-English speaking users, feel free to translate the text version below into other languages and distribute it (on Forums, blogs, social networks, emails, etc ...) .

VIDEOTUTORIAL DOWNLOAD - How to switch to Materials Legacy mode to manually assign Textures to Materials in Unity


The 3D model used in this tutorial:


Hello everyone!

In this tutorial I'm going to show you how to switch to the Materials Legacy mode in Unity, in order to manually assign the textures to the Material of an imported 3D model. This may be useful when you import an FBX 3D model in Unity, provided with its own Materials, but then you see that the Materials have no Textures and you can't drag and drop the Textures files in the Material.

I'm using an asset of mine, "Clinical Thermometer"; in this case, we have two Materials, one of them is a transparent one.

How to switch to Materials Legacy mode to manually assign Textures to Materials in Unity - 1

First of all, I drag the FBX file in the Project tab, so that it can be put in the current project.

I'm dragging the object in the 3D scene too, in order to take a look at the changes in real-time.

How to switch to Materials Legacy mode to manually assign Textures to Materials in Unity - 2

The object is made by two geometries and two Materials; in particular, the Materials will look grey, without any Texture.

Right now, we can't change the Materials' settings, because Unity imports the FBX files giving them the Materials available in the FBX file, as we can see in the Materials tab of the Inspector for the imported object: here, the "Material Creation Mode" is set on "Import (Legacy)", while "Location" is set on "Use Embedded Materials".

How to switch to Materials Legacy mode to manually assign Textures to Materials in Unity - 3

I then click on the "Use Embedded Materials" option (beside the "Location" label) and change it to "Use External Materials (Legacy)", then I click on "Apply" to apply the changes.

How to switch to Materials Legacy mode to manually assign Textures to Materials in Unity - 4

Unity will create a folder, called Materials, and will put in it the Materials of the objects; this time, however, we can assign them some Textures.

Now I can select the images files with the "Unity5-Metallic" prefix from the Textures folder of my asset and drag them in the Materials folder in the Project tab; in particular, I have to drag three images for each Material.

How to switch to Materials Legacy mode to manually assign Textures to Materials in Unity - 5

Setting the Textures for each Material is an easy task, because we just have to drag:

  • the textures with the AlbedoTransparency suffix in the Albedo slot of the Material;
  • the texture with the MetallicSmoothness suffix in the Metallic slot of the Material;
  • the texture with the Normal suffix in the Normal Map slot of the Material; in this last case, we'll have to click on the "Fix Now" button that will appear in the Material form, to mark the image as a Normal Map.

How to switch to Materials Legacy mode to manually assign Textures to Materials in Unity - 6

 

I'm working on the Prefab of the asset, in the Project window, so we can see the changes immediately in every instance of the Prefab, like the one I made by dragging the Prefab in the scene.

How to switch to Materials Legacy mode to manually assign Textures to Materials in Unity - 7

There's no need to do anything else to set a basic opaque Material; regarding the Materials with transparency, on the other hand, it is necessary to change the "Rendering Mode" parameter, on top of the Material Inspector form, from "Opaque" (which is the default value) to "Transparent".

How to switch to Materials Legacy mode to manually assign Textures to Materials in Unity - 8

How to switch to Materials Legacy mode to manually assign Textures to Materials in Unity - 9

Well, that's all for this tutorial! See you soon!