Page MenuHome

Weight Painting overlay is affected by the material color
Closed, InvalidPublic


System Information
Operating system: Linux
Graphics card: GeForce 1050

Blender Version
version: 2.80 (sub 44), branch: blender2.7, commit date: 2019-02-11 23:10,
hash: 036ec5cae4f7, type: Release build date: 2019-02-12, 00:32:25

Short description of error
Weight Painting renders in Green->Black colormap.

RGB = normal red-thru-blue weight colormap.
gb = green-to-black colormap.

Wire      Solid      LookDev    Rendered

Cycles: RGB RGB gb gb
eevee: RGB RGB gb gb
Workbench: RGB RGB --- RGB

The wireframe-mode is too dark to work with.
The "dithered" in all Solid-modes is too light to be useful.

Regarding the 4 combinations labelled "gb" (green-to-black) in the above table:
Sometime when toggling between modes, you can briefly see the rendering pass through the correct RGB colormap (for less than a second), before it is overlaid by the persistent green-to-black rendering.

On a semi-separate issue,
the LMB select mode for Weight-Paint(mesh) + Pose-Mode(armature) is broken / unworkable.

User Prefs » Keymap » Select_With » RIGHT
The original RMB-select workflow still works for Weight-Painting...

but then where to find the Context-Menu?

Exact steps for others to reproduce the error
see attached .blend file.

cycles Rendered:

eevee Solid:

eevee Rendered:

workbench Wire:

workbench Solid:

workbench Rendered:

Note: the Solid rendering appears more usable in these Thumbnails, than it actually is full-sized. View images full-sized to see how pale the colors are.

Event Timeline

here's that table formated a bit better...

RGB = normal red-thru-blue weight colormap.
gb = green-to-black colormap.

Sebastian Parborg (zeddb) lowered the priority of this task from 90 to 50.

You simply deactivate Show whole scene transparent (the button next to the Overlays menu) to get rid of the dithering in solid mode.

The reason for the missing colors in the other modes is because of the color of your hand material. It seems to act as a filter.
If the material is red, only red colors will show on the weight paint overlay and the same thing for blue and green too.
I would think that this is a bug as material color shouldn't affect the weight paint overlay when it has 100% opacity.

Sebastian Parborg (zeddb) renamed this task from Weight Painting renders in Green->Black colormap to Weight Painting overlay is affected by the material color.Feb 13 2019, 10:47 AM

Thanks for the solution to the dithering issue -- works great, looks great!

Re: the colormap issue (Green->Black).
Ok. I see what you're saying... so the material color is combined with a Multiply mix-mode or some such. I can work around that now that the dithering issue is resolved, but other new users will ask about this again.


@shannon zachow (shannonz) You can set the viewport color to be all-white and the lighting to be Flat. This will allow you to see your weights without being mixed any material colors or lighting.

@Brecht Van Lommel (brecht) @William Reynish (billreynish) So... do we consider this as just working by design or do we need to fix something?

I mean, it is working as designed I think. Weights are multiplied on top of the colors and lighting.

Perhaps ideally we should keep the lighting but discard the color, but that introduces some extra complexity here. Anyway, that it more of a design topic/future todo item.

As I see it it is working as designed, and users can already choose if they want to see colors and/or lighting.

Clément Foucault (fclem) changed the task status from Unknown Status to Invalid.Mar 22 2019, 2:56 PM

So after talking to @William Reynish (billreynish), we consider this working as intended. Overlays are meant to not be aware of what is underneath them.

@Clément Foucault (fclem) I agree that overlays should most likely disregard what is underneath them.

However, in this case it DOES take into account what is under them. I can have flat shading with single color and everything that is not pure white will mess up the weight paint overlay. Even with a opacity of 100% of the weight paint overlay.
I can't think of any circumstance where this would be the desired behavior.

The overlay should replace the color, not mix with it.

+1. Here's me trying to go from studio lighting textured viewport into weight painting on a face.

The real weights are revealed only after several mouse clicks, by going into flat shading, single color, make sure it's white.

And when I leave weight paint mode of course I'm greeted by this eye sore

And it will take me several clicks to go back to the shading mode of my preference.

Same issue with vertex painting. It should replace the shading, not mix! Or mix with a different blending mode, that lets the weights be visible regardless of what's underneath.