Hey there,
masks from VRayMaterials connected to a VRayBlendMaterial render wrong when the blend amount is not 1 or 0. Please look at the attached images to see what is happening. One VRayMaterial is yellow, the other is pink and they are blended with a ramp. The mask switches from one to the other Multimatte ID at the position where the ramp value is 0. I would expect the mask to fade out according to the ramp.
This seems somewhat similar to the problem I had when attempting to connect a single output channel from a ramp to all three color inputs on the blend amount attribute of a blend material. Still haven’t had meaningful feedback on this.
A few observations, before I can draw any conclusions as to whether this is a bug or it is the expected behavior:
- if there was a gradient in the IDs - how would you select your material in post based on ID? You wouldn’t have one value or even values within a range, but rather a gradient between two values with interpolated values in between?
- it seems that the materialID render element will give you the result you would expect - you just need to set a color for the material ID attribute in each material’s extra V-Ray attributes section.
I would separate the R, G and B channel of the mask in post. I would expect each mask to reflect the visibility of the shader in the final render. So the red channel would be a gradient representing the visibility of the yell shader and the green channel would do so for the pink shader.
If I use the Material_ID instead of Multi_Matte render element, the resulting is correct. I would expect that the Multi_Matte would look identical to the Material_ID if the same colors are used (e.g. red and green). This is not the case.