Vertex Color Master

Not to worry, I’ve optimised the workflow a little bit and it does get done eventually. Lots of addons have a little C++ to get things done faster, maybe that might be the simplest way?

Since the data to be entered is the same for each element, I can imagine there must just be a way to iterate only once per object but I’m not a programmer really so who knows.

A way to randomise R, G, B and A separately would be nice for UE devs. I could just take three V maps and put them together but tactical laziness precludes that sort of behaviour.

I can definitely take a look at it, but I’m not sure when because I’ve got some other things to do and am feeling a bit lazy at the moment anyway. I imagine it can be sped up somewhat.

RGBA separation could probably be done fairly easily. What would your ideal set of options look like? Ditch HSV in favour of per channel randomisation, or are both useful?

I think all would be good, I can imagine needing any of them in a given situation. Perhaps hue should be an override to three saturation channels you set independently of eachother? Perhaps a checkbox could split them from a single saturation value.

Might be a bit tricky to get all the options to play nicely but I’d be glad to keep the current functionality as well. I’d value RGBA unique random per channel more but there might be someone out there who would prefer HSV for a different workflow.

I’m finding that when I use the A active channel button, it doesn’t actually paint into the alpha channel at all. I first have to isolate that channel and then commit the changes. Also, the alpha channel doesn’t seem to be visible at any time other than when i isolate it. Is there a way to get vertex alpha viewable in teh viewport in 2.8?

If you export from Blender, the alpha channel should be there. The reason you can’t see vertex color alpha is that it is not currently fully supported by Blender 2.8. However, there was a patch recently that adds a vertex color node, and I’m hoping vertex color alpha is supported in 2.81, although for now it looks like you will need to set up a material to use it.

I did a quick test with 2.81 alpha and found that while you can set up a material to render the vertex alpha, it’s no good for painting because the brush doesn’t support alpha, so when you paint it just sets alpha to 1. I could probably add a ‘quick preview’ function to Vertex Color Master so that you can quickly switch between the full material render in eevee or cycles and the vertex color overlay, but until the vertex paint tools in Blender are improved to support alpha, it won’t be a good experience for painting with alpha.

Connecting vertex alpha to the alpha node on the principled shader is also possible for the node setup, but it renders a bit differently, and I prefer this setup.

3 Likes

I released a new version of Vertex Color Master, which fixes some bugs and adds per channel island randomization and normals <> vertex color transfer.

Get the latest version here:
v0.84 for Blender 2.80+

4 Likes

Is there a way to add “layers” and adjust their opacity like in photoshop (it’s possible in 3dsmax)?
This would give a much precise control and easy tweaks until the very last steps before export.

1 Like

Could we get a feature where we put a gradient from Start to End based on selected edgeloops? The Linear gradient often doesnt do the trick since my meshes are not straight.

4 Likes

Oh yeah, that’d be great!

1 Like

This is a nice feature idea. I had a similar idea in the past but never really thought it through. I guess you’d want the option to orient the gradient along edge loops or rings.

I’ll have to give it a shot when I have some free time, although I’m not sure when that will be.

1 Like

Adding layers is a bit much work given how little I use the addon or Blender at the moment. For now, you can destructively blend using the blend functions to blend different vertex colour groups together.

@Rocksteady @Mr_Flamey You’ll both be glad to hear that Pablo Dobarro’s new Sculpt Colour will have layers, if I understand his posts right. No blending that I can see, but maybe he’ll add that too!
And given that it’s still called Vertex Colour, I assume this will even export out to fbx/gltf/whatever format you use for interchange.

1 Like

Yeah, I noticed Pablo’s awesome work with the sculpting tools has also gone into some vertex colour stuff, so I didn’t really want to spend too much time on VCM until I know what he’s planning. I may try the selection based gradient tool, if I can find some free time to do it, however.

1 Like

I baked diffuse texture to vertex color in 2.79b. The texture is basically red, green, blue and alpha. After baking to vertex colors, I exported mesh into UE4 and because I chose those distinct colors, vertex colors got imported into separate channels (R, G and B), except for alpha. In Blender and UE4, alpha looks “black” and when I enable alpha channel in UE4 for vertex colors (and disable RGB), I don’t see anything.

Is there a way to turn black vertex color into vertex color alpha using this add-on in Blender ? (so that R,G, B and A end up in separate channels in UE4)

Any idea if 2.82 got the vertex color improvements? I didn’t see mention of it.

I think Pablo Dobarro had a bunch of sculpt paint related changes, but they were held back. I don’t really want to work on this addon any more until I know more about what’s going on with vertex color.

2 Likes

@Mr_Flamey
So, since now even 2.83 is in feature freeze and contains no vertex color improvements whatsoever, can we consider the “embargo” lifted?

I’d like to ask for a new feature, or at least discuss it briefly.
My wish is to be able to recolor parts of a mesh based on their vertex color, so effectively I’d be using vertex color as a selection mask of sorts. I’d pick a color from the mesh in the viewport and then recolor only the vertices of that color using the fill operator.

Honestly, I’d code this myself if I could, but I seem to be unable to get a list of vertices in a mesh based on their vertex color. The indices of the vertices in the mesh data and the vertex color layer just don’t match up.

I understand what you are saying and this doesn’t sound like a particularly difficult thing to add. The reason that the vertices and colours don’t line up is that colours are stored in loop data, not vertex data (from what I recall, it’s been a while :slight_smile: )

Like I said before, I wanted to wait for Pablo to do his thing before I try to add more to this add-on, but I guess we don’t know when the big vertex paint/sculpt paint changes will come. I guess there is not much harm to add a smaller feature like what you are proposing, but I’m really busy with work, and am not sure if I can get around to it.

My biggest issue with the add-on at the moment is just how insanely slow it is. That’s something I might look at when the sculpt vertex colour patches start going in, as Pablo’s colour sculpting is massively faster than vertex paint, although this is probably mostly to do with using a more optimised and direct method of storing colour (1 colour/vert rather than using loop data).

1 Like