2
$\begingroup$

I tried to model a simple keypad, I got this model after using a boolean modifier on an array of cylinders and a cube:

enter image description here

The face of the cube had way too much edges and as suggested here Cutting hole into a face with a line loop? I used limited dissolve and got this:

enter image description here

What would be a good way not to get the rendering artifacts on the plane?

EDIT:

The face normals look like that:

enter image description here

$\endgroup$
1

4 Answers 4

2
$\begingroup$

Along with using Shade Flat, you can still smooth shade your model and use an Edge split modifier. See How to smooth shade an object while retaining hard edges? for more info. If your model is faceted or not exactly flat, using shade flat will keep the hard edges but smoothing and using this modifier can get around that.

$\endgroup$
2
$\begingroup$

The problem was solved by setting Shading to flat in the Object Tools Panel T

enter image description here

$\endgroup$
1
  • $\begingroup$ This will mask the issue, but not solve the problem. If that's all you need, then it might be fine. $\endgroup$
    – Matt
    Commented Jan 8, 2014 at 21:08
2
$\begingroup$

Note that you can also set specific faces to flat shading while keeping others smooth shaded.

Simply select the face(s) you want to shade smooth/flat and press the appropriate shading button in Tool shelf > Mesh Tools > Shading:

enter image description here

This is useful in case you don't want to use the edge split modifier.

$\endgroup$
0
$\begingroup$

EDIT: Based on the comment (and the update) it seems like pinching is much more likely than backward normals. Oddly shaped polygons can be difficult to render in OpenGL, but they often look okay when fully rendered (per-pixel shading, versus vertex shading).

The artifacts are actually unrelated to the question about holes in faces. The artifacts are a consequence of surface normals that aren't all facing the same direction. In the 3D viewport, tab into edit mode and press n to open the settings panel. There's a section in that panel marked "View," where you can turn on "Draw Normals" (there are two buttons, one for vertex and one for face, you want face normals). This will make blue lines that show the direction each face normal is pointing. They need to all point the same direction. If you find a normal pointing the wrong direction, select that face (face select mode is easiest), press ctrl-f, and select "Flip Normals." Repeat this process with each incorrect face until all the faces have normals that are pointing the same direction.

Incidentally, if you have a fully enclosed mesh, then in edit mode you can select Mesh->Normals->Recalculate Outside to solve this problem all at once. But the mesh you've displayed doesn't look like it's enclosed. (A sphere or a cube would be fully enclosed, and a plane is not. If there were a hole in the sphere or cube, it would not be fully enclosed, and it would be difficult for Blender to be certain which side was "outside" and which side was "inside").

As for the "best" method for putting holes in a plane, that really depends on what you're doing. The method you're using here is a common one, and if the artifacts are the only problem, then it is probably "best."

$\endgroup$
2
  • 2
    $\begingroup$ I hardly think it's a normals issue after running a limited dissolve, more than likely pinching issues and the smooth shading is highlighting this. $\endgroup$
    – iKlsR
    Commented Jan 8, 2014 at 19:22
  • $\begingroup$ Ah, that's a good point. My thought was that the dissolve built some polys and just got them backward, but the pinching makes more sense. $\endgroup$
    – Matt
    Commented Jan 8, 2014 at 21:06

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .