oRazeD / VertexColorsPlus

Vertex Colors Plus is a Blender 4+ add-on for easily applying vertex color.
24 stars 0 forks source link

I hope the results can be displayed independently for the RGB channel #1

Open i-iooi-i opened 3 weeks ago

i-iooi-i commented 3 weeks ago

image image image image

Hi there, thank you for developing the plugin, it's really great and the efficiency has improved a lot. ❤️ I am also using MAYA for my work. But I'm having a problem when Blender draws the vertex colors.
It doesn't seem to be able to show my paintings with a separate RGB channel,

image

This is a bit of a distraction for the work that requires precise painting, and when the three channels are mixed, I'm not sure if the area painted by one channel is as expected.

Do you want to add the function of drawing or displaying a single channel in the future? Thanks again! ❤️❤️

oRazeD commented 3 weeks ago

Hey @i-iooi-i! I don't think I want to support this in the tool, but let me help you get into a comfortable spot.

I made an example .blend file with a node group for displaying the separate RGB channels of your color attribute (or any 3float).

image

To use this, all you have to do is:

  1. Append or link the node group from this file to your own project
  2. Create a material on the object you're working on (if one doesn't already exist)
  3. Add the new node group to the material
  4. Plug in a Color Attribute node and plug in the output socket of the channel you'd like to visualize
  5. Head to Material Preview / Rendered viewport

DD link: https://drive.google.com/file/d/1IpSi0-pjpm2fGfgygRyOsLj1uDBocZjL/view?usp=sharing

i-iooi-i commented 2 weeks ago

Hey @i-iooi-i! I don't think I want to support this in the tool, but let me help you get into a comfortable spot.

I made an example .blend file with a node group for displaying the separate RGB channels of your color attribute (or any 3float).

image

To use this, all you have to do is:

  1. Append or link the node group from this file to your own project
  2. Create a material on the object you're working on (if one doesn't already exist)
  3. Add the new node group to the material
  4. Plug in a Color Attribute node and plug in the output socket of the channel you'd like to visualize
  5. Head to Material Preview / Rendered viewport

DD link: https://drive.google.com/file/d/1IpSi0-pjpm2fGfgygRyOsLj1uDBocZjL/view?usp=sharing

Thank you very much for the solution, but the problem is still there, and you will get the wrong result in the process of painting. Let me elaborate further.

i-iooi-i commented 2 weeks ago

https://github.com/user-attachments/assets/ad39688c-24b1-46a4-8f48-3c3fa2a26c83

I think the exact way to do this is to paint in different channels, no matter what color you use, and you're going to get accurate information in RGB.

i-iooi-i commented 2 weeks ago

https://github.com/user-attachments/assets/e76fec8a-d415-4d09-8edc-840419a8de51

The problem with Blender is that when I paint with different colors in the R channel, I get "inaccurate" results.

oRazeD commented 2 weeks ago

Does the Maya version of this also prevent colors from other channels from being applied?

i-iooi-i commented 2 weeks ago

Does the Maya version of this also prevent colors from other channels from being applied?

https://github.com/user-attachments/assets/c6eabfd4-46b0-4a03-ad15-ec7564f15c1d Yes, the principle is the same between MAYA and PS. It's just that I can't do anything like that in Blender, and I can't even find one of these plugins. 🙈🙈🙈

oRazeD commented 2 weeks ago

This is something I could do in some capacity, but the one method I'm thinking of would only work on mesh selections in Edit Mode. I don't modify any of the Vertex Paint Mode functionality currently and I would suspect it to be a little bit difficult. If only being able to do it in Edit Mode doesn't seem good enough I probably wouldn't bother adding it.

One other question, do you have any specific use cases for this? I understand that it functions like Photoshop RGB masking layers functionality but how is this concept generally being applied in vertex color workflows in the real world? Thank you very much for these visual examples, they've helped a ton.

i-iooi-i commented 2 weeks ago

This is something I could do in some capacity, but the one method I'm thinking of would only work on mesh selections in Edit Mode. I don't modify any of the Vertex Paint Mode functionality currently and I would suspect it to be a little bit difficult. If only being able to do it in Edit Mode doesn't seem good enough I probably wouldn't bother adding it.

One other question, do you have any specific use cases for this? I understand that it functions like Photoshop RGB masking layers functionality but how is this concept generally being applied in vertex color workflows in the real world? Thank you very much for these visual examples, they've helped a ton.

https://github.com/user-attachments/assets/670cd8e3-420a-450e-bcc6-ee417b0f140b

https://github.com/user-attachments/assets/a7ec7b3f-c2b0-4dc1-bd6a-bbae2a0d16ac

Vertex painting is commonly used in the game industry, as shown in the video, through different RGB channels, to control the three effects of skirt shaking, note jumping, and white rain. Each layer is painted separately to ensure that each color channel is correct.

Thank you so much for the plugin, I've been using it lately as well, been great, it makes up for some of Blender's shortcomings in vertex painting. 😊💕

oRazeD commented 1 week ago

Hey @i-iooi-i, thank you for the visual examples. I investigated further, and I'm not sure if I can build something close enough to the experience you expect here. I've added it to my feature requests list with the extra information you've provided, so I can keep it in mind for future development pushes.

In any case, one workaround approach I found to mock your desired workflow was to utilize the Customizable Palette with its default R G B color presets and the color apply option set to Set Color. This option will set the color in both Edit Mode and Vertex Paint Mode:

image

You could then change the value without applying to other color channels on accident:

QHMCIoK5LO

I also took the liberty of updating the Blend file I sent previously with options for each color channel in grayscale:

image

I hope this helps! You lose the ability to select literally any color, but you still manage to keep the colors separated and the ability to view the individual channels in grayscale.