CPU3D.com3D Max3D-моделирование → Знакомство с технологией NURBS моделирования

Знакомство с технологией NURBS моделирования

все инструменты

Сегодня я покажу еще одну технику создания моделей с помощью кривых. Начнем, как обычно, с небольшой теории, сначала рассмотрим NURBS-кривые, потом перейдем к NURBS-поверхностям. Далее попробуем сделать с помощью NURBS-кривых какую-нибудь модель. Ну и в завершающей части наложим на созданные объекты материалы.
Начнем с теории…

Сначала расшифруем аббревиатуру NURBS. NURBS – это Non-Uniform Rational B-Spline или по-русски неоднородные рациональные B-сплайны. NURBS-кривые обладают одной особенностью: они всегда имеют гладкую форму. В 3d max есть два вида NURBS-кривых: P-кривые и CV-кривые.

P-кривые (point curves) – такие кривые задаются вершинами, лежащими непосредственно на самой кривой. По сути они похожи на обычные сплайны.

CV-кривые (control vertices curves) – форма таких кривых задается управляющими вершинами, лежащих на вспомогательной кривой (на рисунке желтого цвета).

Чтобы создать одну их этих кривых, надо на вкладке Create перейти на вкладку Shape, затем в выпадающем списке выбрать NURBS Curves и нажать на одну из кнопок в зависимости от вида кривой:

Если убрать галку рядом с Start New Shape, то вы продолжите создавать выделенную кривую.

В отличии отличие от обычных сплайнов NURBS-кривые можно создавать сразу в нескольких окнах проекции, создавая сразу не плоскую и объемную кривую. Правда надо признать, что, чтобы создать этим способом что-то действительно сложное, надо обладать очень хорошим пространственным мышлением или сделать не одну попытку создания. Гораздо легче, как и в случае с обычными сплайнами, изменять некую созданную наспех заготовку.

NURBS-поверхности формируются из NURBS-кривых и, так же как кривые, могут быть двух типов: P-поверхности (point surfaces) и CV-поверхности (control vertices surfaces). Как не сложно догадаться эти типы отличаются, друг от друга тем же, чем отличаются два вида кривых.

Есть несколько способов создания NURBS-поверхности.

Можно создать прямоугольный кусок NURBS-поверхности на вкладке Create (Create->Geometry->NURBS Surfaces):

Можно преобразовать в NURBS-поверхность созданный каким-то другим способом объект. Для этого надо щелкнуть правой кнопкой мыши по объекту и выбрать в появившемся меню Convert To:->Convert to NURBS.

Ну и наконец, можно создать поверхность путем объединения нескольких NURBS-кривых. Именно этим способом мы и будем пользоваться в практической части урока.

Если вы создадите NURBS-кривую или поверхность, и перейдете на вкладку Modify, то откроется панель с инструментами NURBS

Если панель не открылась, то ее можно открыть, нажав кнопку NURBS Creation Toolbox:

Эта панелька состоит из разделов для управления вершинами (Points), кривыми (Curves) и поверхностями (Surfaces). Наибольший интерес для нас представляют инструменты управления поверхностями, поэтому рассмотрим некоторые из них.

Create CV Surface, Create Point Surface:

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

Create Blend Surface:

Создает плавный переход между двумя поверхностями:

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

Create Mirror Surface:

Отражает поверхность.

Create Extrude Surface:

Выдавливает поверхность из кривой. Например, из такой кривой:

Можно выдавить такую поверхность:

Create Lathe Surface:

Создает поверхность вращения, подобно модификатору Lathe из урока №3

Create Cap Surface:
Создает поверхности ограниченной некоторой замкнутой кривой. Например, для созданной чуть выше поверхности можно создать такую крышку:

Create U Loft Surface:

Создает поверхность U-лофтинга из набора параллельных сечений, расположенных перпендикулярно продольной оси будущего объекта. Подробнее об этом инструменте будет рассказано в практической части.

Create UV Loft Surface:

Создает поверхность UV-лофтинга из двух групп разомкнутых NURBS-кривых. При этом должно выполняться два правила:
- кривые из одной группы должны лежать вдоль одной из осей создаваемого тела и быть параллельными друг другу;
- концы кривых из одной группы должны располагаться на крайних кривых, входящих в другую группу.
Например, имеем две группы кривых (выделенные и не выделенные):

На основе этих кривых получаем поверхность:

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

В заключение этой теоретической части следует прояснить еще кое-что:
NURBS-поверхности всегда имеют гладкую форму. Поэтому наиболее логично их применение для моделирования объектов сглаженной формы, не имеющих острых краев.
Реализация NURBS-моделирования в 3d max всегда вызывала много критики, уж больно он «глючный». Но все же иногда объект можно быстрее и качественнее создать именно с помощью NURBS (надеюсь, скоро вы в этом убедитесь), поэтому замалчивать про этот способ моделирования неправильно.
Создание мыльницы

Я потратил безумно много времени, чтобы придумать, какой объект моделировать в этой части. Уже почти отчаялся найти необходимое сочетание простоты создания и максимально возможного количества применяемых инструментов. И вдруг однажды в ванной мой взгляд упал на мыльницу, и я понял, что ничего лучше придумать все равно не получится, поэтому сегодня мы будем моделировать мыльницу :)

И так начнем с создания вспомогательной линии. Желательно создать ее в виде NURBS-кривой (любого типа), чтобы понять как они создаются. Но это не принципиально и можно использовать обычный сплайн, ибо прямого участия в моделировании эта линия принимать все равно не будет. Я же использовал CV-кривую:

Теперь сделайте копию этой кривой и поверните ее на 90 грудсов вокруг оси Z:

Далее передвиньте этоту кривую чуть в сторону:

Таким образом мы создали как бы ограничивающие кривые будущей мыльницы. Теперь перейдите на вид сверху и создайте P-кривую в виде овала:

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

В результате получится овал, который скорее всего у вас будет располагается вот так:

Необходимо поднять этот овал до пересечения с вспомогательными кривыми:

Теперь сделайте копию этого овала и опустите его вниз:

Далее используя инструмент масштабирования (Select and Uniform Scale) промасштабируйте овал по оси X до пересечения c одной из вспомогательных кривых:

А потом промасштабируйте овал до пересечения c другой вспомогательной кривой:

Сделайте еще несколько копий этого овала и промасштабируйте их указанным способом:

А потом еще несколько, с пересечением внутренней поверхности мыльницы:

В результате должно получиться нечто такое:

Теперь необходимо соединить все созданные кривые. Для этого выделите одну из кривых, на вкладке Modify в свитке General найдите кнопку Attach:

Нажмите эту кнопку и прокликайте все остальные кривые. В результате они все объединятся в один объект.

Далее мы создадим на основе этих кривых поверхность с помощью инструмента U-Loft. Выделите кривые, перейдите на вкладку Modify на панели NURBS инструментов, нажмите кнопку Create U Loft Surface:
И начинайте щелкать на каждую кривую по порядку, начиная с самой нижней и заканчивая внутренними кривыми. В конце создания нажмите правую кнопку мыши.
Если в процессе создания вы случайнее перепутали последовательность следования кривых, то их поменять можно на панели справа. Возможно, полученная поверхность получится черной, в этом случае надо поставить галку рядом с Flip Normals:

Если все стало нормально, то нажмите еще раз правую кнопку чтобы зафиксировать результат. Должно получиться примерно вот так:

Можно спрятать обе вспомогательных кривых, они больше не нужны. Для этого выделите их, щелкните по ним правой кнопкой мыши и выберете Hide Selection.

Далее необходимо заделать дырки в нашей мыльнице, для этого выберите инструмент Create Cap Surface:

И щелкните по кривой, которое образует днище, а затее по кривой внутри мыльницы:
Если полученная поверхность будет черной, то поставьте галку рядом с Flip Normals:

Теперь создадим закругление на дне мыльнице, для этого используйте инструмент Create Fillet Surface:

Затем щелкните сначала по боковой поверхности мыльницы, а затем по днищу. Сразу после этого необходимо поставить две галки рядом с Trim Surface. После этого могут исчезнуть одна или обе плоскости, в этом случае надо поставить галку рядом с Flip Trim. Далее необходимо увеличить значение радиуса фаски:

Щелкните правой кнопкой мыши, чтобы зафиксировать результат:

Некоторые сплайны могут быть конвертированы в NURBS-кривые, главное, чтобы в их составе не было вершин типа Corner и Bezier Corner. Также в NURBS-кривые могут быть преобразованы четыре стандартных сплайна: Circle, Ellipse, Arc и Star. Именно этим условием мы сейчас воспользуемся, создайте на виде сверху эллипс с помощью сплайна Ellipse:

Затем поверните этот эллипс на градусов 25-30:

Сделайте копию эллипса и увеличьте параметр Length (или Width) на вкладке Modify, чтобы увеличить размер эллипса:

Сделайте еще несколько копий:

Теперь выделите нашу мыльницу и с помощью кнопки Attach, присоедините эти эллипсы к ней. Далее перейдите в режим редактирования кривых:

Выделите все эллипсы:

И поднимете их над поверхностью мыльницы:

Вернитесь в вид сверху. Выберете инструмент Create Vector Projected Curve:

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

Далее активизируем инструмент Create a Multicurve Trimmed Surface:

С помощью этого инструмента создаются отверстия в NURBS-поверхностях. Кликните по поверхности мыльницы рядом с будущем отверстием, а затем по элипсу-проекции на этой поверхности. Если после этого исчезло не то, что должно было исчезнуть, то поставьте галку рядом с Flip Trim:

В результате должно получиться отверстие:

Описанным способом сделайте остальные отверстия:

Теперь выделите первоначальные эллипсы и опустите их немного ниже уровня отверстий:

С помощью уже знакомого нам Create U Loft Surface создайте поверхность внутри отверстий:

И последний завершающий штрих – создание фаски тем же методом, что и фаска на днище мыльницы (с помощью Create Fillet Surface):

На этом создание геометрии мыльницы можно считать законченным:

Создание материала мыльницы

Создадим простенький материал для мыльницы. Мыльница пластмассовая, блестит, возможно, может немного отражать. Можете сами подобрать характеристики, чтобы в той или иной степени отражает эти характеристики, у меня же получилось вот так:

Обратите внимание на галку рядом с 2-Sided, она позволяет накладывать (и отображать при ренедере ) материал на обеих сторонах объекта. В свитке Maps я добавил и карту Raytrace у Reflection со значением 20, чтобы создать небольшое отражение на поверхности:



Источник: http://3d-box.ru