Строение полисетки#

Структура любой полисетки состоит из Вершин (Vertices), Рёбер (Edges) и Граней (Faces).

../../_images/modeling_meshes_structure_example.svg

Пример структуры полисетки.#

Vertices (вершины)#

Самой элементарной частью сетки является вершина (множественное число vertices), которая представляет собой одну точку или позицию в 3D-пространстве. Вершины представлены в 3D-окне просмотра в режиме редактирования в виде маленьких точек. Вершины объекта хранятся в виде массива координат.

Совет

Не принимайте за вершину объект origin. Она может выглядеть похоже, но она больше и не может быть выбрана.

../../_images/modeling_meshes_structure_cube-example.png

Вершина обозначена как «A»; точка начала координат объекта обозначена как «B».#

Edges (рёбра)#

Ребро всегда соединяет две вершины прямой линией. Рёбра выглядят как «проволока», когда вы смотрите на полисетку в каркасном (wireframe) режиме. Они обычно не видны при визуализации. Рёбра участвуют в построении граней.

Faces (грани)#

Грани образуют фактическую поверхность объекта. Они остаются видимыми при визуализации полисетки. Если область не содержит грани, то она будет прозрачной или отсутствовать на изображении при визуализации.

Грань образуется между тремя (треугольник), четырьмя (четырёхугольник) или большим числом (N-угольник) вершин с рёбрами на каждой стороне. Часто такие грани называют сокращенно tris, quads & n-gons.

Треугольники всегда образует плоскость и поэтому легко вычисляются. С другой стороны, четырёхугольники «более пластичные», что предпочтительно для анимации и при технике моделирования подразделением (subdivision modeling).

Normals#

В геометрии нормаль - это направление или линия, перпендикулярная чему-либо, обычно треугольнику или поверхности, но может быть и относительно линии, касательной к точке на кривой или касательной к плоскости в точке на поверхности.

Нормали помогают определить затенение сетки и многое другое.

../../_images/modeling_meshes_structure_viewport.png

Визуализация нормалей граней тора.#

На рисунке выше каждая синяя линия представляет собой нормаль к грани тора. Линии перпендикулярны грани, на которой они лежат. Визуализация может быть активирована в режиме редактирования на панели Mesh Display Viewport Overlays.

Shading (затенение)#

Нормали поверхности играют фундаментальную роль в определении того, как свет взаимодействует с 3D-объектами, и, таким образом, сильно влияют на затенение этих объектов. Нормали могут быть затенены гладкими или плоскими.

Когда в сетке используется плоское затенение (flat), грани рендерятся и отображаются равномерно. Обычно это желательно для объектов с плоской поверхностью, таких как куб или пирамида.

Когда сетка использует плавное затенение, нормали интерполируются через вершины полигональной сетки, чем можно добиться плавных переходов между соседними полигонами, что приводит к более реалистичному виду.

По умолчанию нормали граней имеют плоское затенение, однако это можно настроить как для всего объекта, так и для каждой грани.

Чтобы настроить затенение всего объекта, используйте:

  • Shade Smooth – Чтобы пометить весь объект, как сглаженный

  • Shade Smooth by Angle – Чтобы пометить части объекта как сглаженные

Чтобы вернуться к плоскому затенению, используйте Shade Flat

Затенение объектов также может быть настроено для каждой грани, ребра или вершины.

Custom Split Normals#

Custom Split Normals - это способ подстроить затенение, направив нормали в другие стороны, а не в те, которые вычисляются автоматически по умолчанию. В основном используется в разработке игр, где помогает компенсировать некоторые проблемы, возникающие при использовании низкополигональных объектов (наиболее распространённые примеры - низкополигональные деревья, кусты, трава и т. д., и „закруглённые“ углы).

Blender поддерживает пользовательские нормали на основе „smooth fan“, определяемого как набор соседних углов граней, имеющих одну и ту же вершину и «связанных» сглаженными гранями. Это означает, что вы можете задавать нормали на углы грани, на набор соседних углов грани или на вершину.

Совет

Вычисление Custom Split Normals может быть отключено для повышения производительности. Эту опцию можно найти в разделе Simplify Rendering Settings.

Редактирование Custom Split Normals#

Справка

Режим:

Режим редактирования

Меню:

Mesh ‣ Normals

Горячая клавиша:

Alt-N

Существует ряд инструментов для редактирования пользовательских разделённых нормалей. Инструменты редактирования пользовательских нормалей сетки могут влиять на все нормали (по умолчанию) или только на выбранные. Чтобы выбрать пользовательскую нормаль, связанную с определённой вершиной и гранью:

  • Установите режим выбора элементов как Вершина, так и Грань (используйте Shift-LMB, чтобы включить второй).

  • Выберите одну или несколько вершин, затем выберите грань. Это можно повторить, чтобы выбрать больше вершин и других граней, и так далее. Легче всего увидеть эффект от этих инструментов, если включить опцию Edit Mode Overlays Display vertex-per-face normals as lines (отобразить нормали к граням в виде линий).

Импорт Custom Split Normals#

Некоторые инструменты, особенно используемые в CAD, склонны генерировать неправильную геометрию при преобразовании своих объектов в сетки (очень тонкие и длинные треугольники и т.д.). Автовычисление нормалей для такой геометрии часто даёт артефакты, поэтому важно иметь возможность импортировать и использовать нормали, сгенерированные самим CAD-инструментом.

Примечание

В настоящее время только Импорт FBX и Импорт Alembic способны импортировать пользовательские нормали.

Topology (Топология)#

Петли (Loops)#

../../_images/modeling_meshes_structure_edge-face-loops.png

Петли рёбер и граней.#

Петли рёбер (Edge) и граней (Face) - это наборы граней или ребёр, которые образуют непрерывные «петли», как показано на рис. Петли рёбер и граней..

На изображении выше циклическими являются петли, которые не прерываются полюсами (1 и 3). Они начинаются и заканчиваются в одной и той же вершине и делят модель на две части. Петли могут быть быстрым и мощным инструментом для работы с определёнными, непрерывными областями сетки и являются необходимым условием для анимации органических персонажей. Подробное описание того, как работать с петлями в Blender, см. в: Select Edge Loops (Выделение петли рёбер).

Примечание

Обратите внимание, что петли (2 и 4) не опоясывают модель полностью. Петля остановилась на так называемых полюсах, где возникла неоднозначность в выборе пути для продолжения построения петли. Полюс - это вершина (verticles) которая соединена тремя, пятью или большим числом рёбер. Соответственно вершина, соединённая одним, двумя или четырьмя рёбрами, не является полюсом.

Edge Loops (Петли рёбер)

Петли (1 и 2) на рисунке выше - петли рёбер. Они образуются соединением вершин, так что каждая из них в петле имеет ровно двух соседей, которые не принадлежат к петле и располагаются по обеим сторонам петли (за исключением начальной и конечной точек в случае с полюсами).

Петли рёбер - важная концепция, особенно в области моделирования живых существ и анимации персонажей. При правильном использовании, они позволяют вам создавать модели с относительно небольшим количеством вершин, которые выглядят очень естественно при использовании поверхностей для подразделения (subdivision) и очень хорошо деформируются в анимации.

Если посмотреть на рисунок Петли рёбер и граней. как на пример моделирования живого существа: петли рёбер следуют естественным контурам и линиям сгибов кожи и лежащих под ней мышц, более плотны в областях, которые деформируются, когда персонаж двигается, например, на плечах или коленях.

Более подробная информация о работе с петлями рёбер представлена в Выделение петлёй рёбер.

Петли граней (Face Loops)

Являются логическим продолжением петель рёбер (Edge Loops), в том что они состоят из граней между двумя петлями рёбер (Edge Loops), как показано на рисунке Петли рёбер и граней. петли (3 и 4). Обратите внимание, что у не замкнутой петли (4) грань, примыкающая к полюсам не включена в петлю граней (Face Loop).

Более подробная информация о работе с петлями граней представлена в Выделение петлёй граней.

Полюсы (Poles)#

Смотрите N-полюсы & E-полюсы.

Non-Manifold#

Смотрите Non-manifold.