How to Use Vertex Colors from Objects Exported from Blender 4.5 in Unity 6 | Tutorial

Опубликовано: 06 Октябрь 2025
на канале: Francesco Milanese
35
1

Hello everyone! In this short tutorial, we’ll see how to use the Vertex Colors of objects exported from Blender 4.5 in Unity 6. The objects I’m showing in the video don’t have any Textures, and in fact, they don’t even have a basic Material. However, they do have Vertex Colors, defined using Blender’s Vertex Painting tools. These colors are visible in the 3D Viewport in Solid mode by changing the Object Color from Material to Attribute in the Viewport Shading menu.

When Vertex Colors are defined in Vertex Paint mode, Blender creates an Attribute for the object, which you can find in the Object Data tab. By default, the Domain of this Attribute is set to Face Corner, while the Data Type is Byte Color. These settings work perfectly for our purposes.

I export all the objects in FBX format. It’s not necessary to set the Copy mode with Embedded Textures, because as I mentioned earlier, there are no Materials or Textures, only color information associated with the geometry through the Attribute.

In Unity, the first step is to import the FBX file into the Project, then open the Material tab in the Inspector. In this tab, I change the Material Creation Mode to Standard Legacy and apply the changes. This will generate an empty Material for the prefab of the imported model.

The Material to be assigned to this model must be created with a custom Shader, so in the Project I create a new Shader Graph, selecting URP Lit because the project uses the Universal Render Pipeline. I rename the new asset to Vertex Color Shader Graph. As you can see, this new asset already contains a Material inside it.

I double-click the Shader Graph asset to open it in the dedicated window. Inside this window, I add a Vertex Color node and connect it directly to the Base Color input of the Fragment. Shortly after, the Shader’s Main Preview updates.

Be careful, though, because the Shader Graph changes are not yet applied, and simply saving the project is not enough! To apply the changes to the Scene Graph, you must click the save button at the top left of the window. As you can see, Unity takes a few seconds to actually apply the changes.

At this point, I select the imported object in the Project and, in the Material tab of the Inspector, I drag the Material from the Shader Graph I just edited and apply the changes. Already in the model preview, in the Inspector, we can see that the objects now have the Vertex Colors exactly as we defined them in Blender.

By creating instances of the 3D model in the current scene, we get the models with the colors as intended. So, if you want to build prototypes or if your project is meant to have a stylized look, there’s no need to create Materials or Textures in Blender. You can simply define Vertex Colors and use them in Unity as I’ve just shown.

That’s it for this video! If you found it useful, you can thank me with a Like and by subscribing to the channel! Don’t forget to turn on notifications so you won’t miss the next tutorials. See you soon!