3ds Max 2008 для дизайна интерьеров
Шрифт:
Подведите указатель мыши к нижней кривой в окне проекции Front (Вид спереди) и, когда кривая приобретет синий цвет, щелкните на ней левой кнопкой мыши. Затем подведите указатель ко второй кривой и, когда она окрасится в синий цвет, щелкните на ней левой кнопкой мыши. Чтобы закончить построение, щелкните правой кнопкой мыши. Получилась модель простой шторы (рис. 6.8).
Рис. 6.8. Готовая модель шторы
Для практического закрепления теоретического материала выполните упражнение «Упражнение 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).
Рис. 6.9. Свиток Surface Approximation (Разбиение поверхности)
В данном свитке можно указать степень разбиения поверхности (область Tessellation Presets (Образцы разбиения)), метод разбиения (область Tesselation Method (Метод разбиения)) и стиль разбиения (эти настройки задаются в окне, которое появляется при нажатии кнопки Advanced Parameters (Дополнительные параметры)).
Поверхность готова, осталось только сделать из нее ткань с драпировками.
Обратите внимание: чтобы можно было зачислить поверхность в коллекцию тканей (для использования модуля reactor), к поверхности обязательно нужно применить модификатор reactor Cloth (reactor ткань).
В случае создания ткани, лежащей на поверхности, например скатерти, помимо самой скатерти должен быть построен еще один объект, который будет играть роль стола, например Вох (Параллелепипед). Чтобы можно было воспользоваться модулем имитации динамики reactor, данный объект должен быть занесен в коллекцию твердых тел 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 (Избегать самопересечения).
Рис. 6.10. Свиток Properties (Свойства) настроек утилиты reactor
Для запуска утилиты 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.
Рис. 6.11. Модель скатерти
Для практического закрепления теоретического материала выполните упражнение «Упражнение 2. Покрывало» из раздела «Практика» данной главы.
Используя модуль reactor, можно создавать не только ткани, падающие на неподвижный объект, но и другие драпированные поверхности, например свисающую ткань. Если переключиться на вкладку Modify (Редактирование) командной панели, то в стеке модификаторов слева от названия модификатора reactor Cloth (reactor ткань) можно увидеть плюсик, соответственно, у данного модификатора есть дерево подобъектов. Раскройте его, щелкнув на плюсике. В дереве подобъектов переключитесь на уровень редактирования Vertex (Вершина). Находясь на этом уровне, можно зафиксировать вершины или привязать их к твердым телам. В случае фиксирования вершин можно получить, например, висящее полотенце. Чтобы зафиксировать несколько вершин, следует их выделить и в свитке Constraints (Ограничители) нажать кнопку Fix Vertices (Фиксировать вершины) (рис. 6.12).
Рис. 6.12. Свиток Constraints (Ограничители)
Для практического закрепления теоретического материала выполните упражнение «Упражнение 3. Шарф» из раздела «Практика» данной главы.
Если привязать вершины к твердым телам, можно создать красиво драпированную занавеску. Правда, прежде чем привязывать вершины, необходимо создать объекты, имитирующие, например, карниз и колечки-крепления. После создания получившиеся объекты, следует занести в коллекцию твердых тел, выполнив команду меню reactor -> Create Object -> Rigid Body Collection (reactor -> Создать объект -> Коллекция твердых тел). Поверхность, имитирующая занавеску, создается так же, как скатерть, с той лишь разницей, что она должна располагаться вертикально, то есть строить ее следует в окне проекции Front (Вид спереди). После создания не забудьте назначить поверхности модификатор reactor Cloth (reactor ткань). Занесите поверхность в коллекцию тканей, выполнив команду меню reactor -> Create Object -> Cloth Collection (reactor -> Создать объект -> Коллекция тканей). На данном этапе сцена может выглядеть так, как показано на рис. 6.13.