Атрибуты
Атрибут — это общий термин для описания данных, хранящихся для каждого элемента в блоке данных геометрии. Например, каждая вершина может иметь связанное с ней число или вектор. Атрибуты можно изменить, подключив значение к узлу Group Output, но также многие узлы могут изменять значения определённых атрибутов.
Примечание
Типы данных атрибутов и домены преобразуются неявно, где это возможно, точно так же, как порты узлов.
Именованные атрибуты
Именованные атрибуты создаются и используются в других областях Blender, таких как шейдеры, рисование и UV-маппинг. На панели модификатора именованный атрибут можно использовать для ввода, щёлкнув значок слева от кнопки значения. Строковый ввод позволяет вам искать и выбирать существующие атрибуты из входной геометрии модификатора.
Поиск по атрибуту даёт немного контекста о каждом атрибуте. Слева от меню отображается домен атрибута, за которым следует имя атрибута. Справа от меню отображается тип данных атрибута.
Анонимные атрибуты
Анонимный атрибут — это набор общих данных, хранящихся в геометрии, у которой нет имени. Обычно атрибуты, отображаемые в интерфейсе Blender, имеют имена. Однако в узлах геометрии атрибуты можно передавать с помощью портов узла. В этих случаях создается выходное поле Attribute Field, которое используется узлами для поиска данных атрибутов во входной геометрии.
Анонимные атрибуты по-прежнему сохраняются в геометрии, как и другие атрибуты, и даже автоматически интерполируются, когда геометрия изменяется с другими узлами, за исключением нескольких случаев. Таким образом, если ссылка на узел все еще доступна, атрибут, на который она ссылается, тоже будет доступен. Однако анонимные атрибуты не могут быть связаны с совершенно отдельной геометрией, которая не была создана из их источника. Для переноса атрибутов между отдельными геометриями можно использовать Узел Transfer Attribute.
Типы данных атрибута
Тип атрибута — это тип данных, хранящихся в каждом элементе.
- Boolean (Логический)
Значение True (правда) или false (ложь)
- Integer
32-битное целое (integer)
- 8-Bit Integer
Smaller integer with a range from -128 to 127
- Float
Значение с плавающей запятой (float)
- Vector
3D вектор со значениями с плавающей запятой
- 2D Vector
2D vector with floating-point values
- Color
RGBA color with 32-bit floating-point values
- Byte Color
RGBA color with 8-bit positive integer values
Вышеприведенный список составлен в порядке от наименее к наиболее «сложному» (целое число может содержать больше данных, чем логическое, поэтому оно более сложное). При соединении отдельных геометрий предпочтительнее использовать более сложный тип данных, если есть совпадающие имена. Это особенно важно при соединении геометрии с именованными атрибутами с помощью Узел Join Geometry
Домены атрибутов
Домен атрибута относится к типу элемента геометрии, которому соответствует атрибут. Знание домена атрибута важно, потому что оно определяет, как его можно интерполировать и использовать в узлах и затенении. Вы можете использовать Редактор электронных таблиц для определения доменов атрибутов.
Point атрибуты связаны с отдельными местоположениями в пространстве с позицией:
Вершины сетки
Точки облака точек
Контрольные точки кривой
Edge атрибуты домена связаны с рёбрами сетки.
Face атрибуты связаны с гранями сетки.
Face Corner атрибуты домена связаны с углами граней сетки. Примером может служить атрибут UV-карты .
Spline атрибуты домена связаны с группой связанных контрольных точек кривой.
Instance атрибуты домена существуют в экземплярах (Instances (экземпляры)) геометрии. Их можно использовать для хранения различных значений копий геометрических данных. Атрибуты домена экземпляра поддерживаются только в узлах геометрии.
Атрибуты автоматически интерполируются на другие домены. Например, когда Узел Position (положение) подключен к входу узла Узел Set Material (установить материал), значения интерполируются из домена Point (точка) в домен Face (грань). Обычно преобразования доменов используют простые средние значения для значений, но атрибуты логического типа данных имеют специальные правила для интерполяции:
Логическая интерполяция домена
Из |
В |
Преобразование |
---|---|---|
Point (точка) |
Edge (Ребро) |
Ребро выбрано, если были выбраны обе его вершины. |
Point (точка) |
Face (Грань) |
Грань выбрана, если все её вершины также были выбраны. |
Point (точка) |
Corner (угол) |
Значение каждого угла — это просто копия значения в его вершине. |
Point (точка) |
Spline |
Сплайн считается выбранным, если были выбраны все его контрольные точки. |
Edge (Ребро) |
Point (точка) |
Вершина выбрана, если было выбрано любое связанное ребро. |
Edge (Ребро) |
Face (Грань) |
Грань выбрана, если выбраны все её ребра |
Edge (Ребро) |
Corner (угол) |
Угол выбран, если были выбраны два его соседних ребра. |
Face (Грань) |
Point (точка) |
Вершина выбрана, если была выбрана любая из соединённых граней. |
Face (Грань) |
Edge (Ребро) |
Ребро выбирается, если была выбрана какая-либо соединённая грань. |
Face (Грань) |
Corner (угол) |
Значение каждого угла — это просто копия значения на его лицевой грани. |
Corner (угол) |
Point (точка) |
Вершина выбрана, если были выбраны все соединённые углы граней и она не является свободной вершиной. |
Corner (угол) |
Edge (Ребро) |
Ребро выбрано, если были выбраны все углы на соседних гранях. |
Corner (угол) |
Face (Грань) |
Грань выбрана, если были выбраны все её углы. |
Spline |
Point (точка) |
Значение каждой точки является просто копией соответствующего значения сплайна. |
Встроенные атрибуты
Встроенные атрибуты существуют всегда и не могут быть удалены. Их тип данных и домен не могут быть изменены.
Name (имя) |
Type |
Domain |
Примечания |
---|---|---|---|
|
Vector |
Point |
Встроенный атрибут, описывающий расположение вершин или точек в локальном пространстве геометрии. Любой узел, который изменяет расположение точек, изменит этот атрибут, как и узлы Transform и Set Position. |
|
Float |
Point |
Встроенный атрибут облака точек, используемый для установки размера точек в окне просмотра. Также встроен в кривые, где он управляет размером каждой контрольной точки кривой при преобразовании в сетку или для других операций. |
|
Integer |
Point |
Создается с помощью Узел Distribute Points on Faces для обеспечения стабильности при изменении формы входной сетки и используется в экземплярах для создания размытия движения. Ожидается, что значения будут большими, без порядка. Этот атрибут используется узлами, генерирующими случайность, такими как Узел Random Value. В отличие от других встроенных атрибутов, этот атрибут не является обязательным и может быть удалён. |
|
Integer |
Face |
Используется для указания слота материала для каждой грани в сетке. |
|
Float |
Edge |
Атрибут Edge, используемый модификатором Subdivision Surface. Значения ограничены диапазоном от 0 до 1. |
|
Boolean |
Face |
Атрибут, определяющий, должна ли грань иметь плавное затенение в окне просмотра или при рендеринге. |
|
Integer |
Spline |
Определяет количество оцениваемых точек между двумя контрольными точками сплайна. Только сплайны NURBS и Безье имеют этот атрибут, для полисплайнов значение всегда равно единице. |
|
Boolean |
Spline |
Определяет, есть ли у сплайна сегмент, соединяющий его первую и последнюю контрольные точки. |
|
Vector |
Point |
Описывает расположение левой ручки контрольной точки кривой со стороны начала кривой. Существует только тогда, когда кривая содержит сплайн Безье. |
|
Vector |
Point |
Описывает расположение правой ручки контрольной точки кривой со стороны конца кривой. Существует только тогда, когда кривая содержит сплайн Безье. |
Соглашения именования
Эти атрибуты не существуют по умолчанию, но неявно используются некоторыми частями Blender. Тип данных этих атрибутов можно изменить, как и любой атрибут, кроме встроенных атрибутов. Однако Blender может ожидать, что атрибуты будут иметь определённый тип.
Name (имя) |
Type |
Примечания |
---|---|---|
|
Vector |
Используется для создания размытия движения при рендеринге анимации. |
Пользовательские атрибуты
Vertex groups, UV maps and Color Attributes are available as attributes in geometry nodes. They are referred to by their name. Naming collisions (e.g. a vertex group and a UV map with the same name) should be avoided. If there is a naming collision, only one of the attributes is accessible in geometry nodes.
Атрибуты с любым другим именем также могут быть созданы узлами, когда это имя используется впервые.
Обратите внимание, что узлы геометрии не всегда производят, например, группы вершин, если используется такой узел, как Join Geometry. Точно так же, если тип данных атрибута группы вершин изменён с исходного типа «Float», атрибут больше не будет группой вершин.
Оператор преобразования атрибутов
Этот оператор, расположенный на панели Attributes редактора свойств, может изменить домен или тип данных атрибута.
Из-за постоянного развития в области атрибутов многие области Blender еще не могут работать с общими атрибутами (идентифицируемыми по имени, хранящимися в любом домене с любым типом данных), используемыми узлами геометрии. Это делает этот оператор важным обходным решением в некоторых случаях, когда существующие инструменты должны использоваться с данными, сгенерированными из узлов геометрии.
- Mode
- Generic
Interpolate and convert the attribute between the domains and data types described on this page.
- UV Map
Создание слоя term:UV Map, редактируемый в UV редакторе. В противном случае они были бы представлены атрибутом 2D-вектора в домене углов грани.
- Vertex Group (группа вершин)
Создание Группы вершин из атрибута, который соответствует атрибуту с плавающей запятой в домене точек.
Примечание
Этот оператор работает только с исходными данными объекта, не включая результаты модификаторов, поэтому любые атрибуты, добавленные или изменённые узлами геометрии, не будут затронуты. Чтобы изменить тип атрибута, сгенерированного процедурно, необходимо применять модификаторы.