Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Интерфейс 3ds max1.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
4.07 Mб
Скачать

142 Глава 6. Текстильная

(Панель инструментов для работы с NURBS) . Появившаяся панель

(рис. 6.6) разделена на три области:

_ Points (Точки) — предназначена для работы с вершинами;

_ Curves (Кривые) — позволяет работать с кривыми;

_ Surfaces (Поверхность) — предназначена для создания и редактирования

поверхности.

При работе с NURBS_кривыми очень легко можно создавать плавные из_

гибы, характерные для тканей. Но при этом непросто нарисовать угловатый

объект с прямолинейными сегментами. Чтобы создать прямую линию,

нужно четыре раза щелкнуть левой кнопкой мыши в точке, где пройдет сег_

мент.

Для построения простой шторы мы и воспользуемся возможностью NURBS_

кривых без труда создавать округлые формы.

Рис. 6.6

Панель

инструментов для

работы с NURBS-

кривыми

Удобнее всего построить такой объект с помощью лофтинга, причем лофтинга для NURBS_

кривых. При этом нужно учитывать следующее:

_ в создании лофтинга с помощью NURBS_кривых участвуют только сечения, которые рас_

ставляются вручную, то есть такого объекта, как путь, не существует;

_ все сечения лофтинга должны быть подобъектами одного объекта.

Выполнить данные условия в нашем случае просто. Мы имеем проекцию шторы на горизон_

тальную плоскость (то есть, например, кривую Point Curve (Точечная кривая)). Раскроем дерево

подобъектов и перейдем на уровень редактирования Curve (Кривая). Выделим кривую в окне

проекции Front (Вид спереди) инструментом Select and Move (Выделить и переместить) и, удержи_

вая нажатой клавишу Shift, переместим ее по оси Y вверх для получения копии. В появившемся

при этом окне нажмем кнопку OK (рис. 6.7).

Оба условия выполнены. Во_первых, поскольку мы работали на уровне подобъекта, и кривая, и ее

копия сразу же являются подобъектами одного объекта. Во_вторых, получившееся расстояние

между двумя кривыми — длина шторы, то есть мы имеем два сечения. Можно создавать объект

Loft (Лофтинг). Для этого воспользуемся панелью инструментов для работы с NURBS_кривыми.

Переключитесь на уровень объекта, щелкнув в стеке модификаторов на строке NURBS Curve

(NURBS_кривая). Если панели NURBS нет на экране, нажмите в свитке General (Общие) кнопку

NURBS Creation Toolbox (Панель инструментов для работы с NURBS). На панели инструментов

NURBS в области Surfaces (Поверхность) выберите инструмент Create U Loft Surface (Создать поверх_

ность поперечного лофтинга) . Подведите указатель мыши к нижней кривой в окне проек_

ции Front (Вид спереди) и, когда кривая приобретет синий цвет, щелкните на ней левой кнопкой

мыши. Затем подведите указатель ко второй кривой и, когда она окрасится в синий цвет, щелк_

ните на ней левой кнопкой мыши. Чтобы закончить построение, щелкните правой кнопкой

мыши. Получилась модель простой шторы (рис. 6.8).

Текстильная 143

Рис. 6.7

Копия кривой

Рис. 6.8

Готовая модель шторы

144 Глава 6. Текстильная

Для практического закрепления теоретического материала выполните упражнение «Упражне_

ние 1. Римская штора» из раздела «Практика» данной главы.

Для создания более сложных моделей придется работать с NURBS_поверхностями и модулем

просчета динамики reactor.

Модуль reactor создан для имитации в трехмерных сценах динамики, основанной на законах

физики. Модуль reactor поддерживает твердую (Rigid) и мягкую (Soft) кинематику тела (Body

Dynamics), имитацию ткани (Cloth Simulation) и жидкости (Fluid Simulation).

NURBS_поверхности — это трехмерные объекты, и, следовательно, инструменты для их созда_

ния находятся в категории Geometry (Геометрия) вкладки Create (Создание) командной пане_

ли. Подкатегория называется NURBS Surfaces (NURBS_поверхности).

В свитке Object Type (Тип объекта) представлено два типа поверхностей: Point Surf (Точечная по_

верхность) и CV Surf (Поверхность с управляющими вершинами). Строятся поверхности так же,

как стандартный примитив Plane (Плоскость), и имеют два параметра: Length (Длина) и Width (Ши_

рина). Параметры, указывающие количество сегментов, называются Length Points (Количество

точек по длине) и Width Points (Количество точек по ширине) для точечных поверхностей, а для

поверхностей с управляющими вершинами параметры называются Length CVs (Количество

управляющих вершин по длине) и Width CVs (Количество управляющих

вершин по ширине).

Мы строим поверхности типа NURBS, чтобы получить драпированную

поверхность, имитирующую ткань. Для получения качественных драпи_

ровок существует достаточно простое требование: поверхность, имитиру_

ющая драпированную, должна иметь большое количество сегментов. Уве_

личить количество сегментов NURBS_поверхности достаточно просто.

Для этого предназначен свиток Surface Approximation (Разбиение поверхнос_

ти) (рис. 6.9).

В данном свитке можно указать степень разбиения поверхности (область

Tessellation Presets (Образцы разбиения)), метод разбиения (область Tesselation

Method (Метод разбиения)) и стиль разбиения (эти настройки задаются

в окне, которое появляется при нажатии кнопки Advanced Parameters (Допол_

нительные параметры)).

Поверхность готова, осталось только сделать из нее ткань с драпировками.

Обратите внимание: чтобы можно было зачислить поверхность в коллек_

цию тканей (для использования модуля reactor), к поверхности обязатель_

но нужно применить модификатор reactor Cloth (reactor ткань).

В случае создания ткани, лежащей на поверхности, например скатерти,

помимо самой скатерти должен быть построен еще один объект, который

будет играть роль стола, например Вох (Параллелепипед). Чтобы можно

было воспользоваться модулем имитации динамики reactor, данный объект

Рис. 6.9

Свиток Surface

Approximation

(Разбиение

поверхности)

Текстильная 145

должен быть занесен в коллекцию твердых тел Rigid Body Collection (Коллекция твердых тел). Для

этого следует выполнить команду меню reactor_Create Object_Rigid Body Collection (reactor_Создать

объект_Коллекция твердых тел).

ВНИМАНИЕ

Чтобы модуль reactor сработал корректно, обязательно нужно проверить

настройки единиц измерения. В данном случае лучше выбрать метрические.

Кроме того, так как, по нашей задумке, скатерть должна упасть на стол, ее

(то есть NURBS-поверхность) нужно расположить на небольшом расстоянии

над столом (то есть над объектом Вох (Параллелепипед)).

Мы указали принадлежность построенных объектов к модулю расчета ди_

намики, однако совершенно непонятно, как будет действовать reactor. Вдруг

он решит, что не скатерть должна падать на стол, а стол на скатерть? При

использовании модуля reactor действует простой принцип: динамичным

признается объект, обладающий массой. Масса указывается в килограммах.

Ее можно задать в свитке Properties (Свойства) настроек модификатора reactor

Cloth (reactor ткань) командной панели (рис. 6.10). Кроме того, в этом же

свитке можно задать силу трения (Friction), относительную плотность (Rel

Density), сопротивление воздуха (Air Resistance). Чтобы края скатерти при просче_

те динамики не пересекались, следует установить флажок Avoid Self-Intersections

(Избегать самопересечения).

Для запуска утилиты reactor на командной панели нужно активизировать

вкладку Utilities (Сервис) и нажать одноименную reactor. Для нас представ_

ляют интерес два свитка: Preview&Animation (Просмотр и анимация) и Havok

World (Мировой двигатель). Начнем со второго. Прежде всего в области

Gravity (Гравитация) следует указать силу притяжения, иначе наша скатерть

улетит в космос. Притяжение — абсолютно реальная физическая величина

и составляет –980 см. Это значение вводим в счетчик Z. Далее в области World

Scale (Мировой масштаб) надо указать, что 1 Unit = 100см в 3ds Мax. Почти все

готово. Осталось только поменять одно значение в свитке Preview&Animation

(Просмотр и анимация). В счетчик Substaps/Key (Подшаги/ключи) введите

значение от 30 до 40. Чтобы посмотреть результат, надо просчитать имита_

цию динамики. Для этого в свитке Preview & Animation (Просмотр и анимация)

нажмите кнопку Create Animation (Создать анимацию). В появившемся диало_

говом окне подтвердите начало просчета, щелкнув на кнопке OK. Начнется

просчет имитации, ход которого будет отображаться индикатором в нижней

части окна. После окончания, чтобы просмотреть полученную анимацию,

нажмите кнопку Play Animation (Воспроизвести анимацию) в нижней части

окна 3ds Max . Результат работы представлен на рис. 6.11.

Для практического закрепления теоретического материала выполните упраж_

нение «Упражнение 2. Покрывало» из раздела «Практика» данной главы.

Рис. 6.10

Свиток Properties

(Свойства)

настроек утилиты

reactor