Vertex Color Master

Why is this plugin not supported by blender core developers?, damn… It’s so good, thnx a lot. I’m using blender 2.8 and only the randomize islands (that sets a uniform color for all islands) and the brush setter are not working, the rest is working fine.

1 Like

The developer should submit this to be included in the official addons.

1 Like

Here’s a new release which adds a pie menu, some UI improvements and fixes all the annoying bugs with switching between draw and blur modes as well as some other things. I’ve also updated the documentation to reflect the current state of the add-on.

Vertex Color Master v0.81
Release information
Direct download

As usual, let me know if you find any bugs and I’ll try to get them fixed up asap. Suggestions are also welcome, although I can’t guarantee I will be able to implement anything!

I will be keeping the add-on free, but I am considering putting it on Gumroad and Blender Market for anyone who would like to make a contribution. There is also a donate button on the release information page linked above.


I’m following the development of Vertex Color Master with much interest. Would it be possible to add:

  1. Grow and shrink options, so you can expand or contract a painted area? That would be very helpful when painting black and white vertex color masks.

  2. Global blur and sharpen functions. This would also be very useful for painting vertex color black and white masks.

Thanks, and keep up the good work.

The addon isn’t really intended for working on high poly meshes and painting, but if people are using it that way I can look into features such as blur and sharpen (I was already thinking blur might be useful).

I don’t quite understand what you mean by grow and shrink. Do you mean a function that would expand an area of white painted on a black background for example? I think if I can get blur working, it would be easy to use a variation of remap to have the same effect as expand/contract (you can do this kind of thing in photoshop using blur and brightness/contrast).

Anyway, I’m sick of working on this today, so I’ll look into it the next time I feel up to it :slight_smile:

1 Like

Cool, thanks!

I’m predominantly working with high-res sculpted meshes and would love to see vertex painting in Blender become more like ZBrush polypainting (which is vertex painting). In ZBrush I use masking, expanding and contracting masks, and blurring and sharpening masks to determine areas to fill with black and white polypaint. Then I import the mesh into Blender and use the vertex channel as a mask to color or texture areas in a flexible way.

The drawback of this workflow is that you can only export one polypaint layer to a single vertex color channel, while it would be great to be able to paint multiple vertex color channels with varying masks for different areas, and blend them using MixRGB nodes.

When I try to do all vertex painting of masks in Blender, I quickly reach a point where more than about half a million polygons slow down the UI too much. Hopefully that will be improved in upcoming Blender 2.8 updates, but regardless of the slowdown, more vertex painting tools are very welcome.

You might want to have a look at the Mask Tools add-on, which offers very nice tools to expand / contract and blur / sharpen masks, which are probably also based on vertex colors.


Hello, thanks for this awesome addon.

I only have an issue with the Data Transfer - I don’t know how exactly it works when transfering from UVs to Vertex color. I only observe that it changes color when I move verticies across the UV space and only in certain color ranges - see the picture)


  • I am missig posibility to bake color data from Texture to Vertex color, which I currently need to do and dunno how in 2.8. I know that there is an addon for older Blender version (attached) but its not working for 2.8 :(. If somebody can make Texture to Vertex color bake for 2.8…it would be super mega awesome!!! (14.6 KB)

1 Like

Thank you for this addon @Mr_Flamey, this is really useful :slight_smile:

Just like @Hexaedre I’m using it for foliage and I’m having the exact same problem/request. If you find time, could you make Randomize Mesh Island Colors work just on one channel? For the time being I’m using the suggested workaround where you have to create a second color channel, randomize it and copy the values of just one channel.

I can look into features such as blur and sharpen (I was already thinking blur might be useful).

Blur would be absolutely incredible to have. I use this a lot for stuff like flags (all low poly) in Max. I will paint the whole flag black, paint the vertices that attach to a pole mesh white, then invert the selection and just blur it a ton. That way my vertices that are attachment points stay white and the rest of the flag blurs out from solid white as it get to the edge.

1 Like

In this particular case you can use the Linear Gradient, which gives the same result :slight_smile:

I added UV to vcol transfer for fun. I’m not sure it’s very useful though :smiley:
I have thought about doing a texture to uv color bake, but I thought this feature was supposed to be built into Blender, so I haven’t looked into it. I’ve also been a bit preoccupied with other things than 3D lately, so haven’t touched this addon, but if I get some time I’ll have a look at the script you linked and see if I can port some features from it.

1 Like

Glad you find the addon useful.

Single channel randomization shouldn’t be that difficult to implement, so if I get a bit of spare time tomorrow I will see if I can add it.

1 Like

You can already use the blur brush to blur, but I agree that a uniform blur accross the entire mesh would be useful for many purposes… not sure how easy it is to add though.

1 Like

I had a bit of time spare this morning, so I made a new release that fixes a minor bug and also allows random mesh island colors to work in isolate mode, so now you can randomise the colors of a single channel by first isolating it instead of using a work around.

Get the latest version here:
v0.82 for Blender 2.80


@Mr_Flamey This is awesome, I’ve been hunting for a Vertex Coloring addon for 2.8 for a while now. I was about to start learning how to write my own if I couldn’t find one…

Currently, I’m using a plugin for Maya that bakes ambient occlusion data to vertex colors. That’s the main thing I need from vertex editing: the ability to get an ambient occlusion effect with vertex color baking.

Is that something that’s a bit more complex? I’d love to chat about this sometime, maybe if it’s out of your scope of what you want for your addon I’d love to begin figuring it out.

Thanks again!

The dirty vertex colors is close… but not accurate enough to count as AO. So that got me wondering.

AO to vertex color used to be a feature of the Blender internal renderer, so it was easy to do quickly in Blender by just pressing a couple of buttons. There was also an add-on that did the same thing in python code for the 2.7x series.

I have no idea how to code AO baking feature, but it might not be so hard if I can find the add-on which had that feature and pop the code into Vertex Color Master. I was also hoping the feature would be added back to Blender, but it doesn’t look like it will make 2.80 if it’s not in already, so I might have a look and see if I can figure it out.

1 Like

I understand that it’s another burden. I definitely appreciate anything you do and already have done. I’m in the process of learning Python myself, and I’d love to help create this tool you’ve got going. Definitely in need of a tool like this that can edit and adjust vertex colours and channels well.

Actually @dreamak said that he made some parts of the old script working againg, but there is something missing in the 2.8 API about detecting what texture is assigned to the model…or something like that. So maybe you can share some knowlage @Mr_Flamey

But yeah it makes no sense to work on that if it’s gonna be added by the Blender core team…IF :slight_smile:

I was bored and wanted to have blur, so I wrote an operator to do this. It basically just wraps the smooth vertex weights function from weight paint mode, allowing it to remain quite fast. Now you needn’t leave vertex paint mode to apply a blur across the whole object :smiley:

Get the latest version here:
v0.83 for Blender 2.80