Для создания радиальных массивов – расположения объектов по круговому контуру, обычно используют модификатор Array. Однако такой массив можно легко сделать в Blender при помощи Geometry Nodes.
Добавим в сцену объект, который нужно размножить по круговому контуру, например, Сюзанну (shift + a – Mesh – Monkey). Назначим ему модификатор Geometry Nodes и создадим начальное дерево нод, нажав на кнопку “New”.
Для начала добавим кривую в форме круга (shift + a – Curve – Primitives – Curve Circle), по точкам которой мы в дальнейшем будем размещать инстансы меша. В параметре Resolution установим количество будущих объектов, размещенных по кругу, например, 5.
Для того чтобы в каждой точке кривой разместить инстанс Сюзанны, добавим нод Instance on Points (shift + a – Instances – Instance on Points). Соединим его вход Points с выходом Curve нода Curve Circle, а вход Instance с выходом Geometry нода Geometry Input, который отвечает за начальную геометрию меша.
Как мы видим, теперь в каждой точке кривой размещается инстанс начального меша. Его масштаб можно подкорректировать, изменяя значение в поле Scale нода Instance on Points.
Меш размещен по кругу, однако его направление взгляда осталось прежним.
Сориентировать меш так, чтобы он смотрел в центр круга можно при помощи нода Align Euler to Vector (shift + a – Utilities – Rotation – Align Euler to Vector). Этот нод позволяет повернуть одну из осей объекта так, чтобы она смотрела вдоль задающей оси.
Нам нужно повернуть Сюзанну так, чтобы ее направление взгляда – ось Y, смотрела вдоль нормали к нашей направляющей круговой кривой.
Нормаль к кривой мы можем получить при помощи нода Curve to Points (shift + a – Curve – Operators – Curve to Points). Добавим этот нод в дерево сразу за нодом Curve Circle.
Обратите внимание на то, что в параметре Count нужно выставить то же самое значение, которое мы выставляли в параметре Resolution нода Curve Circle – 5, чтобы не образовывались дополнительные точки.
В построении радиального массива ничего не изменилось, однако теперь мы можем считать нормаль к кривой с выхода Normal нода Curve to Points.
Соединим этот выход со входом Vector нода Align Euler to Vector, а выход Rotation этого нода соединим со входом Rotation нода Instance on Points.
В параметрах нода Align Euler to Vector укажем для применения ось Y.
Теперь все Сюзанны “смотрят” так, как нам требуется.