Mask error with VRayBlendMtl

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.

I also have attached a Maya file for examination.

Windows 10
V-Ray 4.12.01
Maya 2018.6

Cheers, Florian



MaskError.zip (5.23 KB)

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.

Hey Alex,

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.

Cheers, Florian

We can certainly look into why this is behaving like this with MultiMatte, but I hope that in the meantime you can use the MaterialID as a workaround.