Кривые Безье в Blender

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

Кривые Безье, а также кривые и поверхности NURBS (non-uniform rational B-spline – неоднородный рациональный B-сплайн) – примеры того, как математика может использоваться в компьютерной графике. В Blender различные исходные варианты таких кривых и поверхностей добавляются на сцену как и любые другие объекты: с помощью меню Add | Добавить (Shift + A).

Изменение формы кривых происходит через так называемые контрольные точки (узлы, вершины). В случае Безье они лежат непосредственно на кривой, у Nurbs находятся на обрамляющем контролирующем кривую многоугольнике.

Кривые в режиме редактирования при снятом выделении: вверху – NURBS, внизу – Безье

Если точки Nurbs имеет смысл только перемещать (G), то кривая Безье будет изменяться от любой трансформации ее узлов: перемещения, поворота, изменения размера. Отрезки между точками называются сегментами. Непосредственно сегмент выделить нельзя, но можно выделить две определяющие его точки и тогда получится, что вы будете как бы изменять сегмент.

"Перемещение сегмента" вдоль оси Y (GY)
"Поворот сегмента" по оси Z (RZ)

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

Влияние длины "усиков" на сглаженность вершины и выпуклость сегмента

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

Если выбрать вариант Automatic | Автоматический, то ручки примут такую длину и направление, которое обеспечит наибольшее сглаживание. Но как только вы начнете их перемещать, они изменят цвет, что будет означать переключение на тип Aligned | С выравниванием.

Вариант Vector | Вектор, наоборот, создает углы, направляя ручки соседних узлов друг к другу вдоль прямой. При правке векторного направления происходит автоматическое переключение на Free | Свободный, когда ручки одной вершины становятся независимыми друг от друга.

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

Для наращивания кривой Безье сегментами с того или иного конца можно выделить крайнюю вершину, зажать Ctrl и кликать правой кнопкой мыши в места, где должны располагаться новые вершины.

Примерно то же самое обеспечивает Curve Pen на панели инструментов при условии, что предварительно был выделен конец открытой кривой. Однако в отличие от предыдущего варианта здесь можно сразу править вершину: после нажима левой кнопки мыши не отпускать ее и потянуть. При этом будут изменяться рукоятки и как следствие сегмент.

Вариант экструдирования Extrude to Cursor | Экструдировать к курсору тоже добавляет вершины при кликах левой кнопкой мыши, но без возможности по ходу действия растягивать рукоятки. Также для кривой Безье работает выдавливание с помощью клавиши E. Здесь сразу после нажатия E создается вершина, после чего вы устанавливаете ее в нужное место. Во многих случаях это удобнее, так как виден сегмент и его изменение при перемещении точки еще до того, как он будет зафиксирован.

Инструмент Draw | Рисовать позволяет рисовать кривую от руки и имеет множество настроек на вкладке Tool | Инструмент боковой панели (N).

Обратите внимание, что добавлять кривой новые сегменты в большинстве случаев лучше, когда 3D-сцена находится в виде сверху.

В Blender существуют понятия открытой кривой и закрытой (замкнутой, циклической). В первом случае подразумевается, что концы кривой не соединены между собой, во втором – соединены, то есть у кривой нет начала и конца. Чтобы открытую кривую сделать циклической, надо в режиме редактирования выделить один из ее концов и нажать Alt + C. После этого появится дополнительный сегмент, который соединит "разорванные" концы. Повторное нажатие Alt + C удаляет этот сегмент и делает кривую снова открытой.

Другой способ такого переключения находится на панели Active Spline | Активный сплайн вкладки Data редактора свойств. В этом случае не обязательно как находится в режиме редактирования, так и выделять вершину.

Окружность Безье до и после снятия цикличности

Помимо открытости/закрытости кривые классифицируются на двумерные и трехмерные – 2D и 3D. В случае двумерной кривой никакая ее точка не может находиться за пределами локальной плоскости XY. В случае трехмерной может, но не обязательно.

При рендере (F12) кривые Безье не видны. Если на базе кривой создается какой-либо объект, то его "материализация" выполняется с помощью настроек панели Data редактора свойств. Так здесь можно экструдировать плоскость вдоль спинальной оси кривой (не путать с экструдированием вершин, которое описывалось ранее). Выдавливание происходит вдоль локальной оси Z.

С помощью параметра Depth | Глубина на вложенной панели Bevel | Фаска можно добавить ленте объем. Как он будет добавлен, зависит от значения Fill Mode | Режим заполнения на панели Shape | Форма.

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

Радиус правой вершины равен 1, центральной 0, левой 0.5

Параметр Tilt | Наклон подразумевает скручивание нормалей (перпендикуляров к отрезку) около контрольной точки.

Наклон правой точки составляет -90°, средней -45°, левой 0°

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

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

Разная высота выдавливания вдоль кривой настраивается не только с помощью радиусов вершин. В дополнение к этому или вместо этого (в зависимости от значения Taper Radius) можно использовать Taper Object | Объект сужения – открытую кривую, разница в положении точек которой по оси Y будет определять высоту экструзии частей первой кривой, а их разнос по оси X – плавность переходов.

В Blender можно настроить не только высоту выдавливания, но и его форму, то есть вместо обычной плоскости, которая появляется при экструзии вдоль кривой, будет появляться что-то более сложное. В этом случае изгибы выдавливаемой плоскости настраиваются с помощью второй кривой, которая может быть как открытой, так и закрытой. Она указывается в качестве объекта на вкладке Object | Объект панели Bevel | Фаска.

Практическая работа

Создайте подобие суживающегося и расширяющегося туннеля или трубы.

Курс с инструкционными картами к части практических работ:
pdf-версия


Введение в Blender. Курс




Все разделы сайта