If we connect a virtual texture to the opacity mask output of a material the material will fail to compile. This is expected.

However if the opacity mask uses a regular texture connected via SetMaterialAttributes and GetMaterialAttributes nodes and any virtual texture is connected to other properties in the SetMaterialAttibutes then we still see a compile error.

It seems that the compilation validation logic is checking all texture samples connected to MakeMaterialAttributes instead of just the ones connected through the OpacityMask pin.

Steps to Reproduce

In a project where Virtual Textures are enabled, create a material like below.
[Link Removed]

Note that the texture connected to the BaseColor pin is a virtual texture, but the one connected to the OpacityMask pin is a regular texture.
Observe the material compilation error: "Sampling a virtual texture is currently not supported when connected to the Opacity Mask material attribute."
The expected behavior is for the material to compile.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-161492 in the post.

Login to Vote

ComponentUE - Rendering Architecture
Affects Versions5.0.3
Target Fix5.1
Fix Commit21483679
Main Commit21483679
CreatedAug 19, 2022
ResolvedAug 22, 2022
UpdatedSep 10, 2022