Normals
Control mesh normals: flip winding, smooth or flatten shading, align direction, transfer, or set from a field.
What it does
Normals is the one node for fixing or reshaping how a mesh's surface normals behave. Each mode either rewrites winding order, orients or aligns the normal direction, softens or facets the shading, or replaces the normals entirely from another source: a vector field, or a second mesh.
Flip All and Fix Inconsistent work on winding order, which way each face faces. Reverse Normals and Make Double-Sided change how the surface is seen without touching winding. Point Outward, Point Toward Target, Align to Direction and Flatten steer where normals point. Smooth by Angle, Flat Shading and Smooth Shading control the softness of shading across edges. From Field and Transfer replace normals outright, from a vector field or from a source mesh.
When to use it
A mesh that looks inside-out, or lighting that looks inverted: Flip All or Reverse Normals.
Imported geometry with patchy, mixed-up winding: Fix Inconsistent.
A surface that should be visible from both sides: Make Double-Sided.
Normals that should point away from the mesh, toward a point, or along a fixed direction: Point Outward, Point Toward Target, Align to Direction.
A flat billboard look, made by zeroing one axis of the normal: Flatten.
Shading too faceted or too smooth, or hard edges missing: Smooth by Angle, Flat Shading, Smooth Shading.
Normals driven by a vector field, or copied from another mesh entirely: From Field or Transfer.
| Parameter | Type | Default |
|---|---|---|
geometry | OneOf([Collection]) | — |
mode | Number | 0 |
angle | Number | 30 |
target | Vec3 | (0, 0, 0) |
direction | Vec3 | (0, 1, 0) |
flatten_axis | Number | 2 |
field | OneOf([FieldOf(Vector)]) | — |
transfer_source | OneOf([CollectionOf(Geometry)]) | — |
strength | Number | 1 |
Gotchas
Smooth by Angle compares the angle between adjacent faces to the Angle parameter: edges sharper than this get a hard, faceted normal, edges below it get a smooth blend. Lower the angle to introduce more hard edges, raise it toward 180° to smooth almost everything.
Flatten zeroes out one axis of the normal (X, Y or Z) and renormalises the result. It can produce degenerate normals where the surface faces exactly along the flattened axis.
Point Toward Target and Align to Direction both animate cleanly: the target position and direction vector can be keyframed or driven, and the normals update every frame.
Worked example
Add a Normals node and wire in your mesh geometry.
Set Mode to Fix Inconsistent if the surface has patchy shading from mixed winding, or Flip All if the whole mesh reads inside-out.
Switch Mode to Smooth by Angle and dial the Angle threshold until hard edges such as a box corner stay crisp while curved surfaces stay smooth.
For a two-sided surface, a leaf, a flag, a sign, switch Mode to Make Double-Sided instead.
See also
Smooth · Bevel · Mirror · Geometry (meshes)