Первые шаги в Maya. Урок 7. Основы NURBS-моделирования. Часть 2
Фантастическая картина скалистого побережья
В прошлом уроке мы разобрались с тем, что представляют собой NURBS-примитивы, NURBS-кривые и NURBS-поверхности, а также ознакомились с основами NURBS-моделирования посредством операций Revolve, Bevel, Bevel Plus и Planar. В этом уроке мы продолжим изучать основы NURBS-моделирования, но рассмотрим уже другие, ранее не упоминавшиеся методы.
Выдавливание
Метод выдавливания позволяет строить поверхности на базе двух кривых: кривой-профиля и кривой-пути. Кривая-профиль представляет собой сечение требуемой поверхности, которое затем выдавливается вдоль кривой-пути (рис. 1). Поэтому данным способом удобно создавать такие объекты, как извилистые туннели, шланги для полива, пружины, строительные профили и т.п.
Рис. 1. Исходные кривые (слева) и полученная Extrude-поверхность
В качестве кривой-профиля может выступать как одна кривая, так и несколько объединенных в группу кривых, в качестве кривой-пути — только единственная кривая. Кривая профиля может быть открытой или закрытой, независимой или изопараметрической. Качество получаемой в итоге поверхности напрямую зависит от количества находящихся на кривых управляющих точек — при их недостатке возможно нежелательное скручивание поверхности. Для построения поверхностей данным методом необходимо выделить кривую-профиль, затем при нажатой клавише Shift — кривую-путь и применить команду Surfaces=>Extrude (Поверхности=>Выдавить).
Шланг
В качестве первого эксперимента попробуем смоделировать кусок поливочного шланга, свернутый спиралью. Создайте кривую по управляющим вершинам (команда Create=>CV Curve Tool) в форме спирали — это будет кривая-путь, а в качестве сечения возьмите обычную окружность (команда Create=>NURBS Primitives=>Circle) — рис. 2. Выделите окружность, затем при нажатой клавише Shift — кривую-путь и воспользуйтесь командой Surfaces=>Extrude (Поверхности=>Выдавить) — рис. 3. При необходимости в режиме редактирования вершин (F9) отрегулируйте положение отдельных управляющих вершин кривой-пути, назначьте объекту материал и визуализируйте сцену (рис. 4).
Рис. 2. Исходные кривые
Рис. 3. Появление объекта, полученного в ходе операции Extrude
Рис. 4. Шланг
Кровельный лист
Попробуем создать кровельный лист, взяв в качестве кривой-профиля кривую, созданную инструментом CV Curve Tool, а в качестве кривой-пути — отрезок прямой, полученный инструментом EP Curve Tool, предварительно установив для параметра Curve Degree вариант 1 Linear (рис. 5). Выделите кривую, а затем при нажатой клавише Shift — отрезок прямой и создайте Extrude-объект (рис. 6), который после назначения материала может выглядеть примерно так, как показано на рис. 7.
Рис. 5. Исходные кривые
Рис. 6. Появление объекта, полученного в ходе операции Extrude
Рис. 7. Кровельный лист
Лофтинг
Лофтинг (Lofting) — один из наиболее распространенных методов моделирования объектов, позволяющий моделировать поверхности на базе специально построенных кривых или изопарм. Loft-объекты строятся путем формирования оболочки по опорным сечениям, расставляемым вдоль некоторой заданной траектории, — оболочка как бы натягивается на сечения вдоль указанного пути, в результате чего получается трехмерная модель. По сути лофтинг очень похож на метод Extrude, но, в отличие от него, позволяет использовать различные профили вдоль пути, что обеспечивает более гибкое управление формой поверхности.
Данный метод моделирования в наибольшей степени подходит для тех моделей, форма которых может быть охарактеризована некоторым набором поперечных сечений (рис. 8), — роль сечений в таком случае будут играть кривые. Кроме того, лофтинг удобен для закрытия некоторых фрагментов модели (рис. 9), а также для связывания отдельных поверхностей в единое целое (рис. 10). Тогда построение лофт-объектов производится на базе изопараметрических кривых, принадлежащих данным поверхностям, и, возможно, дополнительно созданных обычных кривых, а результатом является оболочка, края которой совмещены с изопармами поверхностей.
Рис. 8. Исходные кривые (слева) и полученная лофт-поверхность
Рис. 9. Поверхность с выделенными изопармами (слева) и результат закрытия ее фрагмента посредством связывания лофтингом
Рис. 10. Связываемые поверхности с выделенными изопармами (слева) и результат их связывания методом лофтинга
В основе любого лофт-объекта всегда лежат две или более кривых (в том числе изопараметрических), а траектория определяется программой автоматически в зависимости от положения кривых друг относительно друга, причем ее направление зависит от порядка их выделения. В случае использования нескольких кривых-сечений при лофтинге они размещаются вдоль пути в соответствии с тем, как были расположены. Если базовые кривые имеют одинаковое число интервалов (параметр Number of Spans), то итоговый лофт-объект будет иметь то же самое число интервалов, в противном случае — только 4. Число интервалов совпадает с числом вертикальных изопарм и не регулируется через параметры. Количество горизонтальных изопарм задается параметром Sections Spans и может изменяться в окне каналов Channel Box уже после проведения лофтинга. За построение лофт-объектов отвечает команда Surfaces=>Loft (Поверхности=>Лофтинг).
Незаточенный карандаш
Пожалуй, самая простая лофтинговая модель — обычный незаточенный карандаш, представляющий собой лофтинг шестиугольника по линейному пути. Для создания шестиугольника щелкните на квадратике справа от команды Create=>NURBS Primitives=>Circle (Создать=>NURBS-примитивы=>Окружность) и в окне параметров установите для параметра Degree вариант Linear (вместо Cubic, применяемого для криволинейных контуров) и задайте количество отрезков ломаной в параметре Number of Spans равным 6 (рис. 11). Сделайте копию шестиугольника и переместите ее вверх по оси Y (рис. 12). Последовательно выделите первый, а затем при нажатой клавише Shift — второй шестиугольник и примените команду Surfaces=>Loft (Поверхности=>Лофтинг) с параметрами как на рис. 13 — результат представлен на рис. 14.
Рис. 11. Настройка параметров в окне NURBS Circle Options
Рис. 12. Исходные формы для loft-объекта
Рис. 13. Настройка параметров для проведения лофтинга
Рис. 14. Созданный лофт-объект
Видно, что длина карандаша явно недостаточна, что несложно исправить, так как любую из кривых, используемую при моделировании лофт-объекта, можно перемещать и деформировать после его создания. Поэтому выделите один из исходных шестиугольников в окне Outliner (Структура) и переместите требуемым образом (рис. 15). Есть и еще одна проблема — торцы у созданного лофт-объекта не закрыты. Для их закрытия придется создать плоские поверхности шестиугольной формы на базе одного из задействованных при лофтинге шестиугольников. Выделите шестиугольник и примените команду Surfaces=>Planar (Поверхности=>Планарный), а затем, учитывая, что торца два, сделайте копию полученной плоской поверхности. Установите торцы на место (рис. 16) и назначьте материалы объектам сцены, окончательный вид которой представлен на рис. 17.
Рис. 15. Результат перемещения одного из шестиугольников
Рис. 16. Размещение плоских поверхностей
Рис. 17. Незаточенный карандаш
Ваза
Попробуем создать многогранную вазу как лофт-объект на базе четырех 16-угольников разного размера. Сформируйте первый 16-угольник, применив команду Create=>NURBS Primitives=>Circle (Создать=>NURBS-примитивы=>Окружность) с параметрами как на рис. 18. Сделайте три его копии, разместите их строго друг под другом и скорректируйте размеры 16-угольников путем масштабирования (рис. 19). Последовательно снизу вверх выделите все четыре элемента и создайте лофт-объект, установив для параметра Degree в окне Loft Options вариант Linear, так как ваза задумана многогранной (рис. 20). Выделите все элементы полученного объекта (лофт-объект и четыре 16-угольника) в окне Outliner (Структура) и сделайте несколько его копий. Измените положение и/или размеры 16-угольников первой копии так, чтобы получилась ваза другой формы, аналогично преобразуйте остальные копии, а по окончании назначьте всем объектам сцены подходящие материалы. Вид сцены с несколькими разными вазами представлен на рис. 21.
Рис. 18. Настройка параметров в окне NURBS Circle Options
Рис. 19. Исходные элементы loft-объекта
Рис. 20. Лофт-объект
Рис. 21. Сцена с вазами