Группы нод (node groups)

../../../_images/interface_controls_nodes_groups_example.png

Пример группы нод.

Группировка нод позволяет упростить нодовое дерево, скрывая разветвлённость и повторно используемые функции. Группа нод визуально идентифицируется по зелёной строке заголовка.

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

В качестве примера предположим, что вы создали материал «дерево», который хотели бы использовать в разных цветах. Один из способов это сделать – продублировать всю связку нод для каждого цвета, но сохранение всех этих дубликатов будет утомительным, если позже вы решите изменить детализацию текстуры древесины. Вместо этого вы можете переместить ноды, генерирующие текстуру древесины, в нодовую группу. Затем каждый материал может повторно использовать эту группу нод и предоставлять собственный цвет в качестве входных данных. Любые изменения детализации текстуры нужно вносить только один раз – внутри группы нод.

Группы нод могут быть вложенными, то есть, внутри одной группы нод можно создать другую группу нод.

Примечание

Рекурсивные группы нод запрещены во избежание бесконечной рекурсии. Группа не может содержать саму себя, ни прямо, ни косвенно.

Совет

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

Ноды „Group Input“ и „Group Output“ используются для представления данных, поступающих в группу и исходящих из неё.

Нода „Group Input“ обеспечивает доступ к входным сокетам группы изнутри группы нод. Эти сокеты действуют как параметры, управляющие поведением группы извне. Вы можете подключать их к внутренним нодам для управления такими значениями, как коэффициенты, цвета или геометрические входные данные.

Примечание

Входные значения, не влияющие на вывод будут выделяться серым цветом.

Нода „Group Output“ определяет данные, передаваемые «из» группы нод. Доступны будут только те сокеты, которые вы подключаете к этой ноде в качестве выходов для самой группы.

Важно

Избегайте использования нод вывода, таких как Material Output или Composite, внутри нодовых групп. Их следует использовать на верхнем уровне дерева нод для повышения удобства повторного использования нодовых групп.

Используйте „Group Input“ для передачи данных из группы нод.

Использование

Управление входами/выходами

Вы можете добавлять, удалять и изменять порядок входных и выходных сокетов на панели „Group“ в боковой панели. Новые сокеты также можно создавать напрямую, перетаскивая соединение на пустой сокет в ноде „Group Input“ или „Group Output“ на другой сокет в нодовом редакторе.

Повторное использование нодовых групп

Ссылка

Меню:

Добавить ‣ Группа Add ‣ Group

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

Shift-A

Существующие группы нод можно разместить снова после их первоначального установления, будь то в том же дереве нод или в другом. Также возможно и импортировать группы нод из другого blend-файла, используя Файл ‣ Связать/Добавить File ‣ Link/Append.

Совет

При добавлении нодовой группы из другого blend-файла, Blender не делает различий между группами нод материалов и группами нод компо́зитинга. Во избежание путаницы рекомендуется придерживаться определённого соглашения об именовании, которое позволит вам различать эти два типа.

Свойства (properties)

Группа (group)

Ссылка

Панель:

Боковая панель ‣ Группа ‣ Группа Sidebar ‣ Group ‣ Group

../../../_images/interface_controls_nodes_groups_interface-group-panel.png

Панель «Группа».

Данная панель содержит свойства, относящиеся к группе нод, такие как её название и внешний вид.

Имя (name)

Имя ноды, отображаемое в заголовке.

Описание (description)

Сообщение отображается при наведении курсора на заголовок или в меню „Add“.

Цветовой тег (color tag)

Цветовой тег группы нод, влияющий на цвет заголовка.

Ширина ноды (node width)

Ширина для вновь создаваемых групповых нод.

(Установить ширину нодовой группы «по умолчанию»)

Установить ширину на основе родительской групповой ноды в текущем контексте

Использование (usage) Геометрические ноды (geometry nodes)

Данная панель видна только в редакторе геометрических нод.

Модификатор (modifier)

Группа нод предназначена для использования в качестве модификатора Geometry Nodes.

Инструмент (tool)

Группа нод предназначена для использования в качестве инструмента.

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

Совет

Если вы случайно отключите оба метода использования – группа нод больше не будет доступна через меню блока данных. Чтобы сделать её снова доступной, вы можете добавить её как ноду в другую группу нод (Добавить ‣ Группа Add ‣ Group), выделить эту ноду и нажать Tab, чтобы войти в неё. Оттуда вы можете снова включить один из методов использования.

Сокеты группы (group sockets)

Ссылка

Панель:

Боковая панель ‣ Группа ‣ Сокеты группы Sidebar ‣ Group ‣ Group Sockets

../../../_images/interface_controls_nodes_groups_interface-group_sockets_panel.png

Панель «Сокеты группы».

Данная панель используется для добавления, удаления, изменения порядка и редактирования элементов пользовательского интерфейса группы нод. Она определяет, – как сокеты будут отображаться в групповой ноде, и организует их для удобства использования.

Доступные типы элементов включают:

  • Входы: Определить входные сокеты для группы нод.

  • Выходы: Определить сокеты вывода для группы нод.

  • Панели:

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

  • Переключатель панелей:

    Добавляет логический тип флажка (/) в заголовок панели, позволяя управлять её содержимым. Данная опция доступна только при выборе панели в списке элементов интерфейса.

    У переключателей панелей есть собственные параметры в подпанели „Panel Toggle“. Обратите внимание, что переключаемые сокеты не отображаются в списке интерфейса напрямую – вместо этого панели с переключателями отображают логический значок сокета рядом с их именем. Чтобы переключаемый сокет снова стал видимым, его необходимо отсоединить от панели.

    Примечание

    Переключатель панелей не отключает и не затемняет сокеты автоматически. Чтобы визуально и функционально отключать сокеты, используйте ноду „Switch“ или аналогичную логику и вручную отсоедините сокет.

Список элементов интерфейса

Поле «список», отображающий все входные/выходные сокеты и панели. Каждый элемент можно переименовывать и настраивать индивидуально. Имя отображается в пользовательском интерфейсе ноды.

Специальные настройки ()

Дублировать элемент (duplicate item)

Дублирует выделенный сокет или панель.

Сделать переключателем панелей (make panel toggle)

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

Описание (description)

Сообщение, отображаемое при наведении курсора на свойства сокета.

По умолчанию (default)

Значение, которое будет использоваться, когда к сокету ничего не подключено.

Минимум, Максимум (min, max)

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

Измерения (dimensions) Тип сокета: Вектор (vector)

Задаёт количество компонентов для векторного сокета: „2“, „3“ или „4“. Изменение измерения влияет на то, как сокет будет отображаться в интерфейсе и как через него будут передаваться данные.

  • 2D: Показывает и использует только компоненты X и Y.

  • 3D: Включает компоненты X, Y и Z.

  • 4D: Включает компоненты X, Y, Z и W.

Расширенно (expanded) Тип сокета: Меню (menu)

Отображает меню в развёрнутом виде, одновременно показывая все доступные опции.

В нодовых редакторах отображается только расширенное меню, без метки. В панелях модификаторов и операторов, – метка отображается.

Закрыто по умолчанию (closed by default) Панели

Панель закрыта по умолчанию на новых нодах.

Геометрические ноды (geometry nodes)

Вход по умолчанию (default input)

Вход для использования, когда сокет не подключён. Требуется, чтобы была включена настройка „Hide Value“.

Скрыть значение (hide value)

Скрыть значение сокета, даже если сокет не подключён.

Скрыть в модификаторе (hide in modifier)

Не показывать входное значение в интерфейсе модификатора Geometry Nodes. Это позволяет использовать входные данные в контексте группы нод, но не в качестве входных данных модификатора.

Эта опция доступна только для геометрических нод и только для входных сокетов.

Тип структуры (structure type)

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

Авто (auto):

Автоматически определять подходящий тип конструкции на основе способа использования сокета.

Одиночный (single):

Разрешить ввод только единого значения, а не полей.

Анимация (animation)

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

Для получения дополнительной информации см. раздел «Ручное назначение действий и слотов».

Создать группу (make group)

Ссылка

Меню:

Нода ‣ Создать группу Node ‣ Make Group

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

Ctrl-G

Создаёт новую группу нод, содержащую все выделенные ноды.

Ноды „Group Input“ и „Group Output“ будут созданы для представления соединений с невыделенными нодами вне группы. Входы будут направлены на „Group Input“, а выходы – на „Group Output“.

При группировке одной ноды, – результирующая группа нод будет:

  • Сохранять интерфейс исходной ноды, включая панели и значения по умолчанию.

  • Наследовать имя исходной ноды.

При группировке нескольких нод, – группа создаётся с входными и выходными сокетами, сгенерированными из соединений. В этом случае используется общее имя, например, «NodeGroup», «NodeGroup.001» и т. д..

Вставить в группу (insert into group)

Ссылка

Меню:

Нода ‣ Вставить в группу Node ‣ Insert Into Group

Перемещает выделенные ноды в активную группу нод. Для использования, – сделайте выделение набора нод, заканчивающееся нодой целевой группы, затем выполните операцию, тем самым перемещая выделенные ноды в эту группу. Перемещённые ноды собираются в отдельную группу, чтобы сохранить контекст соединения, имея собственные входные и выходные ноды. Существующие ноды ввода и вывода группы обновляются новыми сокетами, если таковые имеются, из новых нод. Группу нод необходимо отредактировать, чтобы она содержала одну ноду „Group Input“ и одну ноду „Group Output“.

Редактировать группу (edit group)

Ссылка

Меню:

Нода ‣ Редактировать группу Node ‣ Edit Group

Колонтитул:

Перейти к родительскому дереву нод Go to Parent Node Tree

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

Tab, Ctrl-Tab

Выделив группу нод, нажмите Tab, чтобы перейти в неё и просмотреть её содержимое. Нажмите Tab ещё раз (или Ctrl-Tab), чтобы выйти из группы и вернуться к её родительскому элементу, которым может быть дерево нод верхнего уровня или другая группа нод. Вы можете обратиться к навигационной цепочке в верхнем левом углу нодового редактора, чтобы увидеть, где вы находитесь по иерархии.

../../../_images/render_cycles_optimizations_reducing-noise_glass-group.png

Пример раскрытой группы нод.

Разгруппировать (ungroup)

Ссылка

Меню:

Нода ‣ Разгруппировать Node ‣ Ungroup

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

Ctrl-Alt-G

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

Отделить (separate) P

Отделить выделенные ноды из нодовой группы.

Копировать (copy)

Копировать родительское дерево нод, не затрагивая группу.

Переместить (move)

Переместить в родительское дерево нод, удалив из группы.