For anyone coming there through Google:
Having another UV set or essentially an additional Material ID will result in an extra draw call per frame.
@Tim_Hobson , please clarify + confirm that claim. That doesn’t make any sense . Here’s some more info :
The number of UV channels is irrelevant to the number of draw calls. In your example material, it would be completely absurd for that material to be split into separate draw calls. This is because every shader execution of your material requires the information from all 8 UV channels at once. In order to split that up, UE4 would have to analyse your material graph and determine that the first 4 and the last 4 could be split into separate draw calls and then combined in hardware using multiply blend mode on the deferred color buffer, which is only possible because your graph happens to multiply them together and only use the result for color. This split would also incur double the vertex and rasterisation cost for no reason. Most other materials would be impossible to split.
They (and you) may be confusing draw calls with texture samples, which is approximately proportional to number of texture sample nodes (not UV channels) multiplied by the number of pixels that are rendered. So yeah, you will incur a small additional cost by using another channel for a mask. That cost is not extra draw calls caused by extra UV coordinates, it is a small extra pixel shading time cost because it needs to sample another texture. But if you need a mask texture on your material, you will already incur the tiny performance penalty simply by sampling it at all, no matter where. Using an extra UV channel to map it to the mesh costs basically nothing.
So basically, yes, use your extra mask texture if you need it, it will cost a tiiiiny amount extra, but not nearly as much as an extra draw call.