217: WARNING: undefined label: 'bpy.ops.mesh.loop_multi_select' 249: WARNING: undefined label: 'bpy.ops.mesh.loop_multi_select'
Note the preview is not accurate and warnings may not indicate real issues.
With meshes, everything is built from three basic structures: vertices, edges and faces.
The most elementary part of a mesh is the vertex (vertices plural) which is a single point or position in 3D space. Vertices are represented in the 3D Viewport in Edit Mode as small dots. The vertices of an object are stored as an array of coordinates.
Do not mistake the object origin for a vertex. It may look similar, but it is bigger and cannot be selected.
An edge always connects two vertices by a straight line. The edges are the “wires” you see when you look at a mesh in wireframe view. They are usually invisible on the rendered image. They are used to construct faces.
Faces are used to build the actual surface of the object. They are what you see when you render the mesh. If this area does not contain a face, it will simply be transparent or nonexistent in the rendered image.
A face is defined as the area between either three (triangles), four (quadrangles) or more (n-gons) vertices, with an edge on every side. The faces are often abbreviated to tris, quads & n-gons.
Triangles are always flat and therefore easy to calculate. On the other hand, quadrangles “deform well” and are therefore preferred for animation and subdivision modeling.
In geometry, a normal is a direction or line that is perpendicular to something, typically a triangle or surface but can also be relative to a line, a tangent line for a point on a curve, or a tangent plane for a point on a surface.
In the figure above, each blue line represents the normal for a face on the torus. The lines are each perpendicular to the face on which they lie. The visualization can be activated, in Edit Mode, in the Mesh Display Viewport Overlays panel.
Properties ‣ Object Data ‣ Normals
- Auto Smooth
Edges where an angle between the faces is smaller than specified in the Angle field will be smoothed, when shading of these parts of the mesh is set to smooth. This is an easier way to combine smooth and sharp edges.
Advanced Smooth Shading & Sharp Edges
By default in Blender, with basic normal computing behavior, a sharp edge is always defined as an edge being either non-manifold, or having at least one of its faces defined as flat.
Enabling the Auto Smooth setting adds an extra parameter to define a sharp edge, the Angle threshold between two neighbor faces, above which the edge will always be considered as sharp.
Auto Smooth also enables Custom Split Normals handling, which can be either defined (and edited) as a mesh data layer, or generated on the fly by modifiers. In any case, when a mesh gets custom normals, they always supersede the default ones computed by Auto Smooth.
Sharp edges may still be used by the custom normals modifiers to compute their normals, depending on their settings.
Custom Split Normals
Custom Split Normals is a way to tweak/fake shading by pointing normals towards other directions than the default, auto-computed ones. It is mostly used in game development, where it helps counterbalance some issues generated by low-poly objects (the most common examples are low-poly trees, bushes, grass, etc. and the ‘rounded’ corners).
Blender supports custom normals on a ‘smooth fan’ base, defined as a set of neighbor face corners sharing the same vertex and ‘linked’ by smooth edges. This means you can have normals per face corners, per a set of neighbor face corners, or per vertex.
Enabling Custom Split Normals
Mesh ‣ Normals ‣ Split
Enables custom split normals. Also, any of the custom normal editing tools (see below) will, as a convenience, enable custom normals if they are not already enabled.
This has the side effect of enabling Auto Smooth, as that is necessary to use custom normals. Once you have custom normals, the angle threshold of the Auto Smooth behavior is disabled – all non-sharp-tagged edges will be considered as smooth, disregarding the angle between their faces.
Editing Custom Split Normals
Mesh ‣ Normals
There are a number of tools for editing custom split normals. The custom normal mesh edit tools can affect all normals (the default), or only selected ones. To select a custom normal associated with a particular vertex and face:
Make the element selection mode both Vertex and Face (use Shift-LMB to enable the second one).
Select one or more vertices, then select a face. This can be repeated to select more vertices and a different face and so on. It is easiest to see the effect of these tools if you turn on the Edit Mode Overlays option Display vertex-per-face normals as lines.
Importing Custom Split Normals
Some tools, particularly those used in CAD, tend to generate irregular geometry when tessellating their objects into meshes (very thin and long triangles, etc.). Auto-computed normals on such geometry often gives bad artifacts, so it is important to be able to import and use the normals as generated by the CAD tool itself.
Edge and face loops are sets of faces or edges that form continuous “loops” as shown in Fig. Fig mesh topo loop.
In the image above, loops that do not end in poles are cyclic (1 and 3). They start and end at the same vertex and divide the model into two partitions. Loops can be a quick and powerful tool to work with specific, continuous regions of a mesh and are a prerequisite for organic character animation. For a detailed description of how to work with loops in Blender, see: bpy.ops.mesh.loop_multi_select.
Note that loops (2 and 4) do not go around the whole model. Loops stop at so-called poles because there is no unique way to continue a loop from a pole. Poles are vertices that are connected to either three, five, or more edges. Accordingly, vertices connected to exactly one, two or four edges are not poles.
Loops (1 and 2) in Fig. Fig mesh topo loop are edge loops. They connect vertices so that each one on the loop has exactly two neighbors that are not on the loop and placed on both sides of the loop (except the start and end vertex in case of poles).
Edge loops are an important concept especially in organic (subsurface) modeling and character animation. When used correctly, they allow you to build models with relatively few vertices that look very natural when used as subdivision surfaces and deform very well in animation.
Take Fig. Fig mesh topo loop in organic modeling as an example: the edge loops follow the natural contours and deformation lines of the skin and the underlying muscles. The loops are denser in areas that deform more when the character moves, for example at the shoulders or knees.
Further details on working with edge loops can be found in bpy.ops.mesh.loop_multi_select.
These are a logical extension of edge loops in that they consist of the faces between two edge loops, as shown in loops (3 and 4) in Fig. Fig mesh topo loop. Note that for non-circular loops (4) the faces containing the poles are not included in a face loop.
Further details on working with face loops can be found in Face Loop Selection.
See N-poles & E-poles.