Assigned Materials Distorted by Subsurface Modifier

Hi, I created this tower and assigned materials to some poly’s. Looks great except when I add the subsurface modifier to it and it distorts the materials. I want the black lines to remain thin as in the left image. How would I do this?

Q. Anyone know how to assign materials to an object while using a subsurface modifier so it doesn’t distort/stretch the materials?

I guess it will stretch your material anyway. You can just add loop cuts on both sides of every black circle part from the image on the right and move it as close to the edge as possible. That way black-material area should thigten

Ok, thanks. I tried that and some of the black shapes towards the top stretched more than the ones at the bottom so it was inconsistent looking. :frowning: I guess I may have to re-create this using a cylinder so it works. Thanks for the help.

If anyone else has a solution please let me know.

You’ll want to add edge loops similar to the ones in the image. These are called “supporting edge loops”.

In an attempt to smooth out your mesh, the subdivision surface modifier “stretches” areas lacking detail. In order to control where your mesh gets stretched, you’ll want to add a couple edge loops here and there. You might also want to sharpen the top of your silo by supporting its edges.

You can also try “Mark Sharp” or “Mean Crease” in Edit Mode to prevent Subsurf Modifier from affecting your edge loops …


Rhen, thank you. I tried edge loops but it still stretched the material, but I will try again. Thank you. :slight_smile:

Ruwo, that is exactly what I was looking for. So I will try this. I guess the Edge Split Modifier is non-destructive too. :slight_smile:

EdgeSplit is not necessary, “mark sharp” makes edges sharp regardless of the presence of an edgesplit modifier on the object. In fact I would advise against adding one because it’ll actually split your mesh along those edges, and that can have adverse effects depending on what comes next (displace, skinning…). “Edge crease” is the best solution for your case, I would say.

1 Like

Once you add supporting edge loops, you need to unwrap the model again

Hi, thanks for that.

  1. I cannot find the “mark sharp” option anywhere. Can you please post an image of where to find it.

  2. Also, are you talking about “mean crease” ? I tried it and it produced weird results. What am I missing?

“mean crease” set to 0.8

Mark sharp can be found in the edge menu (ctrl+e), or the right-click menu, or the viewport menus (everything can be found in the viewport menus actually, I recommend you scan them regularly).

That’s what creasing does - it forces the smoothing algorithm to stick to edges instead of smoothing them out - you should experiment on a more complex (organic) model to understand how it works.

I recommended this because your shape was a straight cylinder - it won’t work as well if it’s not. In that case, I recommend the universal solution : support edge loops (what @Rhen said). You don’t have to add them from edit mode, you can use a bevel modifier for that. Add some bevel weight to them (you can go up to 1) and in the bevel modifier choose “weight”.


Hadriscus, thank you for the explanation. One of these solutions will work fine. Thanks :slight_smile: