Masking a layer by selecting specific Polygons

I’ve a single mesh(no submeshes and single material) in the viewport.I’ve been trying to mask a layer by selecting specific polygons in the mesh. Is it possible to mask by painting specific polygons ?


I love it if you guys had a feature like this. Especially with picking available in both the 2D and 3D viewport with options to pick by triangle, polygon, mesh and uv island. like substance painters polyfill tool.

It’s on our roadmap, but the issue with workflows like this is that it’s not scalable. That means if your mesh just changes slightly, the mask is garbage. It’s better to use scalable workflows that leverage MAT’s 3D volume tech so they can automatically reposition to different topologies independent of tesselation or size.

In this case I would recommend the “Mesh Volume Mask” so you can easily position your gizmo in the viewport. There are many primitives for masking you can choose from:

Another workflow that’s pretty neat is to use the “Mesh Projected Mask” then use projection mode “Decal” and remove the default image by pressing the small (X). This way you can also control the normal fall of and depth fade.


I get it. In most cases the mask will have to remade when the mesh changes. Sometimes, however, a quick and dirty solution can be very helpful. For instance for a one off, or when the full pipeline has not been laid out yet, or casually throwing new materials on an existing mesh.

I saw the mesh naming convention used in the live steam to create masks. I’ll have to try that out. That’s an approach I have never considered. It does require me to separate each material into its own object, which in turn will get its on matrix transforms which can weigh down a game engine. I suppose the meshes could be combined in instamat after the materials were created… Volumes are difficult because there are often not detailed enough select the portion of the mesh I want to get the material.


Most game engines support combining mesh buffers by material on import. So there should be no price paid at runtime as game-engines issue draw-calls by material!

But combining in MAT is also possible with the “clear submesh indices” node!

You can use multiple volume masks and combine them to do work in a “boolean” workflow where some masks multiply, add or remove! It’s really powerful once you get used to it!

With that being said, like @voidberg mentioned, it’s on our road map!

1 Like

Hi everyone!
@voidberg , a question to your direction if you can share some time:

Can we mix up the “Mesh Volume Mask” with hand painted transparency masks? (here I can imagine an upcoming mask by polyface) or handpaint mask. Basically two nod packs, one selecting by volume and the other is masking inside that volume.

EDIT: just read the replay of @AbstractBeing

1 Like

Yes, you can absolutely do that. MAT supports as many layer masks as you want and you can combine them like a “Mesh boolean” e.g. add, remove, multiply or any other way.

1 Like