Page MenuHome

Smoothing of highly subdivided model results in artifacts in render
Closed, ArchivedPublic

Description

Tested to r52649, affecting both BI and Cycles, but in the attached file Cycles is the chosen engine. Press F12 and you should see artifacts on the surface of the model. Change to Flat shading in the Toolshelf and render again - artifacts will be gone. Change back to Smooth and reduce subdivision in the modifier properties down to 3 - artifacts also gone.

This is a very old problem, so apologies if it's already on a todo somewhere, but it does look like a bug to me. Hoping for a fix for 2.65, but understood if no can do.

Thanks!

Event Timeline

It's not a rendering problem really, if you set the subdivision surface modifier to 4 levels in the viewport the same problems are shown. It's because the bevel modifier has a bevel width that is bigger than the polygons, which creates bad geometry.

Any idea for a workaround? I tried separating the subdivision to 2 levels before bevel and 2 after, but the bevel interferes, you don't get the same smooth shape. For the last project I just used Flat shading, but then it was a real pain carefully selecting and blurring areas in the render that weren't smooth.

I guess if this is too difficult to fix then the only real solution is to employ a different modelling style, not subdivided cage. Bummer!

Thanks anyway! :-)

I'm not sure what to suggest. The new bevel tool has support for multiple segments, which gives better result when used in front of a subdivision surface modifier. The bevel modifier will be upgraded to this at some point but I'm not sure when.

I just tried it and it doesn't seem to work well. If I apply the subdiv at 1 or 2, the bevel tool (Ctrl-B) creates new loops adjacent to the existing ones, so it won't subdivide well again. There's no angle control. A work in progress I guess... 2.49 Bevel works similarly, but at least it's a great deal faster.

Then I tried subdiv at 1, and using the bevel modifier rather than tool, to obtain angle control, and subdiv again after - artifacts are even worse. Applying subdiv, and then bevel reveals the problem - lots of duplicated faces (was this recently fixed?).

So the method that works: apply subdiv at 1 or 2, bevel modifier with high angles, say 89, apply that, remove doubles, then subdivide to taste. Quite a few steps for the unwary to discover...

If the whole "edge crease and modifier stack" workflow is to keep the control cage simple and easy to adjust, then we're back to square one and it's better to use loop cuts. The result is the same - a mesh too dense for easy changing, must use lattice or other modifiers for reshaping.

Oh well, whatever you guys can do to improve this would be great.

I'm not sure why you're trying to do bevel after the subdivision surface modifier, as far as I know that's not going to give reliable results. I'm not sure how other modeling apps handle this, but I think tools like bevel will not be smart enough to handle the case where the bevel with is bigger than the face. For that adjacent edges would need to be affected as well, which gets tricky in general.

If you use the bevel tool with e.g. 5 segments, and then have a subdivision surface modifier after that, it seems to give good results? Now if the bevel modifier supported this, it seems like a reasonable setup to me. But maybe there's something I'm missing.

Anyway, this discussion is beyond the bug tracker, it's more mesh modeling tools design, as far as I can tell the tools and modifiers are working as they were intended.

Brecht Van Lommel (brecht) changed the task status from Unknown Status to Archived.Dec 6 2012, 4:45 PM

Sorry Brecht, just to be clear... Bevel tool and modifier are both basically incompatible with subdiv in Blender and can only be made to work if applied to an already subdivided mesh. If you try what you suggested, applying 5 segment bevel to the sharp corners of the mesh before a subdiv modifier is put on it, you should see the problem in the corner of the cage where subdiv will make it round, it doesn't look right. (The issue is the five edge "star" vertex, where bevel quite rightly creates a triangle, and spoils the fun for subdiv.) On the other hand, applying bevel after subdiv we encounter the problems as discussed above. I'm happy to leave it at that as I found a solution, stated above.

One thing that might help though: I see you're dealing with the bug 33425. It seems to me that bug and my discovery of duplicated faces left by the bevel modifier are one and the same thing. Because I can reproduce the same problem as described there, but when I remove doubles, the "missing" faces appear and all seems well. Just thought I'd mention that because if this gets fixed then there will be one less step to perform in the procedure that does produce good results.

Done, thank you!