Instances (экземпляры)

../../_images/modeling_geometry-nodes_instances.png

Три типа экземпляров.

В дополнение к хранению реальных данных, таких как сетка или кривая, геометрия может хранить экземпляры, которые сами по себе могут ссылаться на другую геометрию, объект или коллекцию. Цель создания экземпляров — позволить включить в результат гораздо больше геометрии, не дублируя фактические данные. Это связано с тем, что средство визуализации, такое как Cycles, может обрабатывать одни и те же данные геометрии во многих разных местах лучше, чем когда данные дублируются.

Каждый экземпляр отслеживает, какой геометрии он соответствует, и and a Transform. Экземпляры также могут хранить атрибут id, используемый для правильного размытия движения при движении экземпляров в анимации.

Основным узлом, используемым для создания экземпляров в узлах геометрии, является Узел Instance on Points.

Предупреждение

В настоящее время создание экземпляров из узлов геометрии нельзя смешивать с созданием экземпляров из панели Instancing в редакторе свойств.

Вложенный экземпляр

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

../../_images/modeling_geometry-nodes_instances-nested.png

A node group that creates nested instancing by chaining Instance on Points nodes.

Здесь вложенное создание экземпляров используется для распределения геометрии, которая содержит как сетку, так и экземпляры. Выходная геометрия содержит настоящую сетку и группу экземпляров. Каждый экземпляр содержит сетку сферы и множество экземпляров геометрии конуса.

../../_images/modeling_geometry-nodes_instances-nested-tree.png

Дерево экземпляров геометрии для приведённого выше примера.

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

Предупреждение

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

Обработка экземпляра

Almost all nodes that process geometry do so by processing each unique geometry in their input’s tree of instances separately. For example, if a Узел Subdivision Surface was placed at the end of the example above, it would only have to subdivide three meshes, rather than each instance of a mesh. Another important example is processing with the output of the Узел String to Curves (строка в кривые), where each unique character only has to be processed once.

Этот метод может значительно повысить производительность, но это означает, что результат операции будет одинаковым для каждого экземпляра определённой геометрии. Чтобы получить уникальные результаты для каждого экземпляра, можно использовать узел Узел Realize Instances.