В 3ds max встроено несколько средств выполнения морфинга. Вы можете создать составной объект Morph или же воспользоваться модификатором Morph. Эти два способа морфинга несколько отличаются, но результат их применения одинаков.
Объект Morph может включать несколько целевых объектов, но сам он создается только один раз. Каждый целевой объект может иметь несколько ключей морфинга, с помощью которых им и управляют. Например, допустимо выполнить морфинг объекта (изменить его форму), а затем вернуться к оригинальному, используя всего лишь пару ключей морфинга.
Модификатор Morph может быть применен к объекту несколько раз. К этому же объекту затем применимы и другие модификаторы. Управление ими осуществляется с помощью стека модификаторов. Параметры модификатора Morph позволяют добиться лучших результатов морфинга, поскольку с их помощью, например, можно управлять каналами или же выполнять морфинг материала, примененного к объекту.
Более детальную информацию по модификатору Morph можно найти в главе 24, "Основы анимации". |
Для достижения оптимальных результатов применяйте модификатор Morph к объекту Morph.
Кнопка Bevel (Скос) предназначена для скашивания острых углов и ребер сечений. Как указывалось выше, диалоговое окно Bevel Deformation (Деформация скоса) содержит только
одну красную линию, которая отображает величину скоса (напомним, что величина скоса определяет относительный размер сечения). По умолчанию эта величина равна нулю. Положительные значения увеличивают скос, что приводит к уменьшению размеров сечения, отрицательные дают противоположный эффект.
Помимо величины скашивания, в диалоговом окне Bevel Deformation можно указать и его тип: Normal Bevel (Обыкновенное скашивание), Adaptive (Linear) (Адаптивное линейное) или Adaptive (Cubic) (Адаптивное кубическое). Тип скашивания выбирается с помощью дополнительных кнопок в правом верхнем углу окна (табл. 16.3).
Кнопка Fit (Подгонка) предназначена для редактирования формы опорного сечения. В диалоговом окне Fit Deformation (Деформация подгонки), показанном на рис. 16.27, деформация сечения по оси X, как обычно, отображается красной линией, а по оси Y — зеленой. По умолчанию относительный масштаб сечения по обеим осям равен 100%. Значения больше 100 увеличивают масштаб сечения, а меньше 100 — уменьшают.
Кнопка Scale (Масштабирование) позволяет изменить относительный размер опорного сечения в любой точке сплайнового пути. Графическое окно Scale Deformation содержит две линии — красную и зеленую. Красная линия отображает деформацию по оси X, а зеленая — по оси Y. По умолчанию относительный масштаб обеих кривых равен 100%. Увеличение этого значения приводит к увеличению относительных размеров некоторой части объекта, а уменьшение имеет противоположный эффект.
В результате деформации Teeter (Сгибание) опорное сечение разворачивается относительно своих локальных осей координат таким образом, что его края наклоняются к пути сильнее, чем ранее (таким образом, объект "изгибается"). Результат выполнения деформации Teeter аналогичен действию параметра Contour.
Диалоговое окно Teeter Deformation (Деформация сгибания) содержит две линии — красную и зеленую. Красная линия отображает поворот сечения по оси X, а зеленая — по оси Y. По умолчанию изгиб обеих линий равен нулю. При положительных значениях поворот сечений происходит против часовой стрелки, при отрицательных — по часовой стрелке.
Эта деформация поворачивает одно опорное сечение относительно других, в результате чего объект словно перекручивается вдоль своей оси. Кнопка Twist (Скручивание) действует аналогично параметру Banking, с одним лишь отличием: она позволяет управлять перекручиванием объекта вручную.
Диалоговое окно Twist Deformation (Деформация скручивания) содержит только одну красную линию, определяющую значение угла поворота. По умолчанию перекручивание линии равно 0. Положительные значения приводят к перекручиванию объекта против часовой стрелки, а отрицательные — к перекручиванию по часовой стрелке.
В части III описываются различные типы моделирования, в том числе формы, каркасы, многоугольники, куски Безье и объекты типа NURBS. Субкатегория составных объектов (Compound Objects) включает дополнительные типы объектов, которые до этого не рассматривались. Из настоящей главы вы узнаете, что все эти типы объектов открывают принципиально новые возможности в моделировании. Среди доступных функций стоит упомянуть, например, объекты типа Boolean, рассеивание одних объектов по поверхности другого и создание опорного поперечного сечения маршрута сплайна.
Как уже отмечалось, после щелчка на любой из пяти кнопок панели Deformations появляется соответствующее диалоговое окно. Все окна имеют одинаковое строение и содержат аналогичные элементы управления. Например, линии на графиках соответст-
вуют длине сплайна-пути. В качестве примера рассмотрим диалоговое окно Scale Deformation (Масштабирование деформации), изображенное на рис. 16.24.
После выбора кнопки Loft на экране появляется разворачивающаяся панель Creation Method (Метод создания), в верхней части которой расположены две кнопки: Get Path (Выбрать сечение) и Get Shape (Выбрать путь). Эти кнопки предназначены соответственно для выбора сплайн-пути и сплайн-сечения. Чтобы построить объект на основе опорных сечений, выделите одну из сплайновых форм, щелкните на кнопке Loft, а затем на одной из кнопок — Get Path или Get Shape. Если вы щелкнули на кнопке Get Shape, выделенный ранее сплайн будет использован в качестве сплайна-пути, а следующий — в качестве сплайн-сечения. Если же вы щелкнете на кнопке Get Path, все произойдет наоборот: выделенный ранее сплайн станет сплайном-сечением, а выделенный вслед за ним будет использован в качестве пути.
Не все сплайновые формы могут быть использованы для построения объектов на основе опорных сечений (даже несмотря на изменение формы курсора, что обычно говорит о доступности сплайна). Например, сплайн, созданный с помощью кнопки Donut (Кольцо), нельзя использовать в качестве пути. |
Помимо всего прочего, при создании объекта на основе опорных сечений с помощью переключателей, расположенных под кнопками Get Path и Get Shape, можно указать следующее: необходимо удалить исходные сплайны (переключатель Move), оставить их (переключатель Сору) или же оставить, сохранив связь между ними и объектом (переключатель Instance). Эта связь означает, что при изменении параметров исходных сплайнов объект, созданный на их основе, изменяется автоматически.
При создании объектов на основе опорных сечений учитывается порядок вершин. Построение объекта начинается с первой вершины сплайн-пути.
Чтобы определить порядок нумерации вершин сплайна, преобразуйте его в редактируемый сплайн (Editable Spline), перейдите в режим редактирования на уровне вершин и установите флажок Show Vertex Numbers (Показать номера вершин) разворачивающейся панели Selection (Выделение). |
Разворачивающаяся панель Path Parameters (Параметры пути), показанная на рис. 16.22, позволяет вставить несколько новых опорных сечений разного размера в различных точках сплайн-пуги. Параметр Path (Положение) определяет относительное или абсолютное расстояние от первой вершины сплайн-пути до точки, в которой будет вставлено новое сечение. При установленном переключателе Percentage (В процентах) расстояние до точки вставки измеряется в процентах от всей длины пути, а при установленном переключателе Distance (Расстояние) величина, указанная в поле Path, является абсолютным расстоянием от первой вершины пути до точки вставки. Параметр Snap (Шаг) при установленном флажке On (Включить привязку к шагу) определяет шаг, с которым изменяется расстояние между точками вставки. И наконец, переключатель Path Steps (Шаги пути) позволяет вставлять новые сечения в точках, которые разбивают сегменты сплайна на шаги интерполяции (не путайте с шагом, указанным в поле Snap). В этом случае в поле Path указывается не расстояние, а номер точки, в которой следует вставить сечение (первой вершине сплайна соответствует значение 0). Общее количество шагов указывается в квадратных скобках справа от поля Path. Напомним, что количество шагов, на которые разбит сплайн, зависит от его сложности.
Разворачивающаяся панель Skin Parameters содержит целый ряд параметров для управления оболочкой объекта. Например, можно указать, необходимо ли добавлять к объекту основания (параметры Cap Start и/или Cap End). Переключатели Morph (Морфируемые) и Grid (Сетка) определяют тип оснований. Тип оснований объекта влияет на результат применения модификаторов.
Кроме того, с помощью панели Skin Parameters можно настраивать внешний вид оболочки объекта. Для этого предусмотрено несколько параметров.
Shape Steps (Шаги формы) и Path Steps (Шаги пути). Задают количество шагов, на которые разбиваются соответственно сегменты каждого опорного сечения и сегменты сплайн-пути. При установленном флажке Optimize Path (Оптимизировать путь) сегменты сплайн-пути, образующие прямую линию, не учитываются. Optimize Shapes (Оптимизировать формы) и Optimize Path (Оптимизировать путь). Уменьшают сложность объекта путем удаления ненужных ребер или вершин. Adaptive Path Steps (Адаптивное количество шагов). Автоматически определяет количество шагов интерполяции, необходимое для сплайн-пути. Contour (Контур). Определяет положение сплайн-сечений относительно сплайн-пути. Если этот флажок установлен, сплайн-сечения всегда остаются перпендикулярными сплайн-пути. Если же флажок снят, все сечения располагаются параллельно первому, независимо от пути. Banking (Поворот сечений). Разворачивает сечения при изгибах пути. Constant Cross-Section (Постоянное поперечное сечение). Изменяет масштаб сечений таким образом, чтобы толщина объекта оставалась постоянной. Если этот флажок снят, при поворотах пути поверхность объекта будет "защемляться". Linear Interpolation (Линейная интерполяция). При установленном флажке опорные сечения разных размеров соединяются между собой прямыми линиями. Если же он снят, сечения соединяются сглаженными кривыми, и переход от сечения к сечению получается более плавным. Flip Normals (Изменить направление нормалей). Исправляет ошибки, связанные с направлением нормалей. Неправильное направление нормалей— одна из наиболее распространенных проблем, возникающих при построении объектов на основе опорных сечений. Quad Sides (Четырехугольные участки). При установленном флажке опорные сечения с одинаковым количеством сторон соединяются не треугольными, как обычно, а четырехугольными гранями. Transform Degrade (He отображать оболочку при редактировании). Скрывает оболочку объекта при перемещении и повороте его субобъектов. Это облегчает наблюдение за процессом их трансформации.И наконец, параметры группы Display (Отображение) позволяют управлять отображением оболочки в окнах проекции. Оболочка объекта при установленном флажке Skin (Оболочка) отображается во всех окнах проекции (независимо от положения флажка Skin in Shaded), а при установленном флажке Skin in Shaded (Оболочка в окнах с затенением) — только в тех окнах, в которых используется затенение (например, в окне проекции Perspective).
При использовании булевых операций можно получить неожиданный результат, поэтому, подготавливая объекты к применению этих операций, помните следующее.
Старайтесь не использовать каркасы с длинными и тонкими многоугольными гранями. Все грани должны иметь приблизительно одинаковую ширину и высоту (с коэффициентом не более 4:1). Избегайте кривых линий, которые чаще всего являются основным источником проблем. При использовании кривых старайтесь сделать так, чтобы они не пересекались, или же минимизируйте всевозможные искривления. Связанные объекты, даже если они и не пересекаются, могут служить источником проблем. Попробуйте применить модификатор XForm (раскрывающийся список Modifier List вкладки Modify) для связывания всех трансформаций в одну. Затем сверните стек модификаторов и преобразуйте объекты в редактируемые каркасы (Editable Mesh). Таким образом вы удалите влияние любого модификатора. Проверьте, чтобы у ваших объектов не было отверстий, перекрывающихся граней и несвязанных вершин. Оценить объект по описанным критериям можно, либо воспользовавшись модификатором STL-Check, либо просмотрев все стороны объекта в окне проекции при активном параметре Smooth Shading. Проверьте, чтобы все нормали объектов были согласованы. Для управления нормалями используйте модификатор Normal. Также вам может помочь параметр Show Normals (Показать нормали). Сворачивание стека после применения булевых операций устраняет зависимость от предыдущих типов объектов.Для создания объектов на основе опорных сечений используются двухмерные сплайны: один, обычно разомкнутый, в качестве пути и несколько замкнутых в качестве сечений. Сечения могут быть разными, а форма объекта может постоянно изменяться. Опорные сечения вовсе не должны иметь одинаковое количество вершин, к тому же их расположение порой вызывает самые причудливые деформации — в общем, предоставляется полная свобода действий.
Средства Surface Tools подробно рассматриваются в главе 14, "Моделирование с помощью кусков Безье". |
Группа средств Surface Tools объединяет модификаторы CrossSection (Поперечное сечение) и Surface (Поверхность). Принципы работы этих модификаторов напоминают создание объектов на основе опорных сечений. Вначале с помощью модификатора CrossSection несколько сплайновых форм соединяются прямыми линиями, образуя "каркас" объекта, а затем с помощью модификатора Surface на этот каркас натягивается оболочка.
Несмотря на внешнее сходство, процессы моделирования на основе опорных сечений и с помощью средств Surface Tools имеют различия, причем весьма существенные.
Во-первых, модификатор CrossSection соединяет сечения в порядке их выделения. Неправильный порядок сечений может привести к появлению довольно странных конструкций. Между тем для объекта на основе опорных сечений порядок выделения роли не играет.
Во-вторых, применение средств Surface Tools предоставляет больше контроля над созданными поверхностями. В частности, к объектам, созданным таким способом, добавлять новые "ветки" и "части тела" не составляет никакого труда, в то время как для объектов на основе опорных сечений это весьма проблематично.
Ну и, наконец, небольшой совет: объекты на основе опорных сечений больше подходят для моделирования искусственных объектов с относительно постоянными сечениями, а средства Surface Tools — для моделирования органических, т.е. "природных", поверхностей.
Данная операция подобна действию модификатора Slice (Срез), только вместо контейнера используется другой объект. Операция Cut применяется только к объекту Operand А. Эта операция имеет несколько параметров: Refine (Очистить), Split (Разделить), Remove Inside (Удалить внутренний) и Remove Outside (Удалить внешний).
При установке переключателя Refine к выделенному объекту добавляются новые грани, созданные с помощью пересечения с объектом Operand В. Установка переключателя Split приводит к тому, что каркасный объект разделяется на несколько элементов.
С помощью переключателей Remove Inside и Remove Outside удаляются внешние или внутренние части. Эти два параметра работают аналогично операциям Subtraction и Intersection, за исключением того, что операция Cut оставляет "дыры" в базовой геометрии.
Эта операция создает объект из пересечения двух объектов. При этом порядок выделения объектов, как и для операции Union, не играет никакой роли.
Данная операция вычитает перекрывающуюся часть одного объекта из другого. При этом существенную роль играет порядок выделения объектов. Дело в том, что вычитание объекта А из В — это не то же самое, что вычитание объекта В из А.
С помощью этой операции два объекта соединяются в один. Для соединения объектов выделите один из них и щелкните на кнопке Boolean (Булевы операции). В разворачивающейся панели Parameters (Параметры) имя выделенного объекта будет отображаться в поле Operands (Операнды) в виде объекта А. В разворачивающейся панели Pick Boolean (Выбор объектов для булевых операций) щелкните на кнопке Pick Operand В (Выбрать операнд В) и выделите второй объект в окне проекции. (В качестве операнда В может выступать копия (Сору), экземпляр (Instance), ссылка (Reference) либо перемещение или удаление объекта (Move).) Для применения операции Union установите одноименный переключатель в группе Operation (Операция).
Таблица 16.1. Кнопки разворачивающейся панели Path Parameters
Таблица 16.2. Кнопки диалоговых окон Deformation
|
При использовании деформаций Twist и Bevel некоторые кнопки диалоговых окон Deformation становятся недоступными. Связано это с тем, что в данных случаях графические окна содержат не две, как обычно, а только одну кривую деформации. |
Таблица 16.3. Кнопки диалогового окна Bevel Deformation
Таблица 16.4. Кнопки диалогового окна Fit Deformation
В группе Operation (Операция) находятся два переключателя — Cookie Cutter (Формочка для печенья) и Merge (Объединить). С помощью первого переключателя вырезается фигура из поверхности каркаса, а с помощью второго сплайн и каркас объединяются. Для выбора вырезанной области (внутренней или внешней) применяют параметр Invert (Инвертировать).
Как и при использовании булевых операций, с помощью параметра Cookie Cutter можно удалить часть каркаса, но он вместо объема, определяемого каркасным объектом, включает в работу область, определяемую сплайном. С помощью параметра Merge можно указать области для выделения. На рис. 16.7 показан объект ShapeMerge с установленным переключателем Cookie Cutter.
После создания объекта на основе опорных сечений во вкладке Modify появляется разворачивающаяся панель Deformations (Деформации). Эта панель содержит пять кнопок, позволяющих изменять размер сечений (Scale), перекручивать (Twist) и сгибать (Teeter) объекты, скашивать их углы (Bevel) и подгонять форму (Fit). Щелчок на любой из этих кнопок вызывает появление диалогового окна со специальными линиями и управляющими точками, предназначенными для управления деформацией. Кроме того, справа от каждой кнопки находится переключатель, разрешающий или отменяющий ее действие.
Объект-источник может быть дублирован. На рис. 16.12 показан примитив Cylinder, распределенный 500 раз по сферическому объекту. В данном случае в разворачивающейся панели Scatter Objects (Распределенные объекты) установлен флажок Perpendicular (Перпендикуляр) и переключатель Even (Равномерно) в группе Distribute Using (Распределить с помощью).
Для выделения распределяемого объекта щелкните на кнопке Pick Distribution Object (Выделить распределяемый объект) одноименной разворачивающейся панели и в окне проекции выделите необходимый объект (перед этим проверьте, чтобы в группе Distribution (Распределение) разворачивающейся панели Scatter Objects был установлен переключатель Use Distribution Object (Использовать распределяемый объект)). Распределяемый объект может быть определен как копия (Сору), экземпляр (Instance), ссылка (Reference) или же вообще удален (Move).
В группе Distribution Object Parameters (Параметры распределяемого объекта) находится несколько элементов управления, которые используются для настройки распределяемого объекта. С помощью флажка Perpendicular объекты-источники располагаются перпендикулярно распределяемому объекту. Если этот флажок снят, то положение объектов-источников определяется ими самими. Например, на рис. 16.13 показан тот же объект, что и на рис. 16.12, но с различными параметрами.
В разворачивающейся панели Color By Elevation (Цвет уровней высот), показанной на рис. 16.9, приведены минимальный (Minimum Elev.) и максимальный (Maximum Elev.) уровни. Ниже, в поле Reference Elev (Нулевой уровень), можно ввести значение, которое будет приниматься за "уровень моря". После щелчка на кнопке Create Defaults (Сделать по умолчанию) автоматически создается несколько разных цветовых зон. В группе Color Zone (Цвет зоны) можно изменить (Modify Zone), добавить (Add Zone) или удалить (Delete Zone) новую зону.
Чтобы получить доступ к цветовой зоне, просто выберите ее из списка (группа Zone by Base Elevation). Изменить цвет зоны можно, выделив ее и щелкнув на образце цвета Base Color. Возможные варианты цветовых установок: Blend to Color Above (Смешать с указанным цветом) и Solid to Top of Zone (Окрасить поверхность зоны в сплошной цвет).
Как упоминалось выше в этой главе, исходные сплайны, на основе которых создан объект Loft, можно редактировать. Любые изменения исходных сплайнов автоматически будут перенесены на связанный с ними объект. Для выделения исходных сплайнов рекомендуем воспользоваться кнопкой Select by Name (Выделить по имени). Напомним, что изменить сплайн можно либо путем изменения его параметров, либо преобразованием в редактируемый сплайн.
Выделив объект на основе опорных сечений, можно отредактировать его субобъекты. Эта операция выполняется с помощью вкладки Modify (Модифицировать). К субобъектам объекта на основе опорных сечений относятся путь (Path) и форма (Shape). При выборе типа субобъекта Path появляется разворачивающаяся панель Path Commands (Команды для пути) с единственной кнопкой Put (Ввести). Щелчок на этой кнопке открывает диалоговое окно Put To Scene (Ввести в сцену), в котором сплайновому пути можно присвоить имя и скопировать его как обыкновенную копию (переключатель Сору) или как экземпляр (переключатель Instance). Напомним, что переключатель Instance сохраняет связь между новым экземпляром пути и исходным объектом. При редактировании экземпляра исходный объект изменяется автоматически.
Выбор типа субобъекта Shape сопровождается появлением разворачивающейся панели Shape Commands (Команды для формы). Кроме кнопки Put, эта панель содержит несколько дополнительных параметров. Параметр Path Level (Уровень пути) определяет точку пути, в которой находится сечение. Щелчок на кнопке Compare (Сравнить) открывает одноименное диалоговое окно, которое рассматривается далее в главе. Кнопка Reset (Сброс) возвращает форму в ее исходное состояние (до поворотов и масштабирования), а кнопка Delete (Удалить), как и положено, просто-напросто ее удаляет.
Если объект на основе опорных сечений содержит всего одну форму, то удалить ее нельзя. |
Кроме этого, разворачивающаяся панель Shape Commands содержит шесть кнопок для выравнивания формы по центру (кнопка Center), по левому краю (кнопка Left), по правому краю (кнопка Right), по нижнему краю (кнопка Bottom), по верхнему краю (кнопка Тор) и по умолчанию (кнопка Default). Форма выравнивается относительно локальных координат объекта. При выравнивании с помощью кнопок Left и Right форма перемещается по оси X, а при использовании кнопок Тор и Bottom происходит перемещение формы по оси Y.
Каждый объект Morph может иметь несколько целевых объектов, которые можно выделить с помощью кнопки Pick Target. Порядок расположения целевых объектов в списке Morph Targets определяет порядок выполнения операции морфинга. Для удаления целевого объекта выделите его в списке Morph Targets и щелкните на кнопке Delete Morph Target (Удалить целевой объект морфинга). В поле Morph Target Name (Имя целевого объекта морфинга) можно изменить имя целевого объекта.
Чтобы убедиться в одинаковом количестве вершин базового и целевого объектов, создайте копию одного объекта и модифицируйте его в целевой. Старайтесь не использовать такие модификаторы, как Tessellate или Optimize, которые изменяют число вершин. |
В разделе Wrapper Parameters (Параметры обертки) расположено два поля: Default Projection Distance (Расстояние проецирования по умолчанию), в котором определяется величина смещения объекта-обертки, если он не пересекается с оборачиваемым объектом, и Standoff Distance (Расстояние между объектами), в котором определяется расстояние между объектом-оберткой и оборачиваемым объектом. При установке флажка Use Selected Vertices (Использовать выделенные вершины) перемещаются только выделенные вершины.
Рис. 16.5. На поверхности объекта лица создан шрам с помощью сетки лоскутка
С помощью параметра Merge можно создать точную грань объекта, которая может использоваться с объектом Connect. |
В группе Output Sub-Mesh Selection (Вывод выделенных частей каркаса) (параметры None (Нет), Face (Грань), Edge (Ребро) и Vertex (Вершина)) можно указать выделенные элементы, попадающие в стек для дополнительных модификаций.
Чтобы видеть обратные стороны граней, щелкните на объекте правой кнопкой. Из появившегося квадменю выберите команду Properties (Свойства). Затем в появившемся диалоговом окне Object Properties (Свойства объекта) снимите флажок Backface Cull (Отсекать обратные стороны). |
Рис. 16.8. С помощью объекта ShapeMerge внутренние части выдавленных букв исчезли
В главе 17, "Создание систем частиц и управление ими", находится более подробная информация по работе с системами частиц. |
В разворачивающейся панели Scatter Objects находится несколько параметров, с помощью которых можно управлять объектом-источником. В группе Source Object Parameters (Параметры объекта-источника) в поле Duplicates (Копии) вводится число копий объекта-источника. Также можно ввести значения параметров Base Scale (Базовый масштаб) и Vertex Chaos (Хаос вершин). Параметр Base Scale определяет масштабный коэффициент всех новых создаваемых объектов-источников. С помощью параметра Vertex Chaos определяется случайное распределение вершин объекта.
В поле Animation Offset (Смещение анимации) устанавливается число кадров между появлением новых объектов.
Обратите внимание, что объекты Scatter (как объект-источник, так и распределяемый объект) одного цвета. Чтобы использовать различные цвета для каждого из этих двух объектов, воспользуйтесь типом материала Multi/Sub-Object. |
Флажок Use Selected Faces Only (Использовать только выделенные грани) позволяет выделять грани с расположенными дубликатами. К выделенным граням (Selected Faces) относятся те, которые находятся в стеке модификаторов, в иерархии модификатора Mesh Select.
В группе Distribution Object Parameters расположены следующие переключатели: Area (Область), Even (Равномерно), Skip N (Пропустить N), Random Faces (Случайные грани), Along Edges (Вдоль ребер), All Vertices (Все вершины), All Edge Midpoints (Все средние точки ребер), All Face Centers (Все центры граней) и Volume (Объем). С помощью этих переключателей устанавливается способ распределения объектов. Переключатель Area равномерно распределяет объекты по всей поверхности, в то время как параметр Even помещает дубликаты на каждой второй грани. Переключатель Skip N позволяет указать количество пропускаемых граней перед размещением объекта. Переключатели Random Faces и Along Edges случайным образом располагают объекты на поверхности распределяемого объекта. При установке любого из переключателей — All Vertices (Все вершины), All Edge Midpoints (Все средние точки ребер) или All Face Centers (Все середины граней) — игнорируется значение Duplicates, указывающее на число копий. При этом копия помещается в каждой вершине, середине ребра или грани соответственно. Объект Scatter с различными параметрами группы Distribution Object Parameters показан на рис. 16.14.
Все параметры, описываемые до сих пор, размещали копию на поверхности объекта, в то время как параметр Volume (Объем) управляет размещением объектов непосредственно внутри распределяемого объекта.
Рис. 16.15. Этот виртуальный террариум создан с помощью объекта Scatter
В разворачивающейся панели Parameters находится список всех операндов или объектов, используемых в соединении. Удаление элементов этого списка осуществляется с помощью кнопки Delete Operand (Удалить операнд). Кнопка Extract Operand (Выделить операнд) помогает отделить выделенный объект-операнд от объекта Connect.
В группе Interpolation (Интерполяция) в поле Segments (Сегментов) определяется число сегментов, используемых для создания соединяющего моста, а в поле Tension (Натяжение) определяется степень кривизны, которая используется для сглаживания соединяющего моста.
В группе Smoothing (Сглаживание) находятся параметры сглаживания граней моста (флажок Bridge) и мест соединения моста с оригинальными объектами (параметр Ends).
В 3ds max, в отличие от программ автоматизированного проектирования, булевы операции применяются только к поверхностям объектов. Так что, если поверхности двух объектов не перекрываются, применение одной из описанных операций не приведет к желаемому эффекту. |
Все булевы операции помещаются в стек. Это позволяет в любой момент вернуться к ранее проделанной операции и изменить ее параметры.
Булевы операции применимы и к формам посредством булевых операторов, которые предусмотрены в разворачивающейся панели Geometry для редактируемых каркасов (Editable Mesh). Эти двухмерные булевы операторы рассматриваются в главе 12, "Работа со сплайновыми формами". |
Точка, в которой будет вставлено новое сечение, в окне проекции отображается в виде небольшого желтого крестика. Помимо перечисленных, разворачивающаяся панель Path Parameters содержит еще три кнопки, действие которых описано в табл. 16.1.
Перетаскивание линии в окне проекции вызывает соответствующую деформацию объекта. Кроме того, при необходимости в любое место линии можно вставить управляющую точку одного из трех типов: Corner (Угловая), Bezier-Smooth (Сглаженная Безье) и Bezier-Corner (Угловая Безье). Как обычно, точки Безье снабжены касательными векторами с маркерами на концах, что позволяет управлять кривизной линии. Чтобы изменить тип управляющей точки, выделите ее и щелкните правой кнопкой мыши. Затем выберите необходимый тип из контекстного меню. Обратите внимание, что первая и последняя вершины сплайна-пути должны быть типа Corner или Bezier-Corner.
Переместить управляющую точку можно, выделив и перетащив ее или же введя ее новые координаты в поля, расположенные в нижней части диалогового окна.
Основные кнопки диалоговых окон Deformation описаны в табл. 16.2.
Помимо всего прочего, диалоговое окно Fit Deformation содержит 10 кнопок, предназначенных для редактирования формы сечений. Действие этих кнопок описано в табл. 16.4.
Для выравнивания форм в диалоговом окне Compare используются кнопки, рассмотренные в предыдущем разделе. Еще раз напомним о том, что первая вершина формы обозначается квадратиком. Если первые вершины сечений не выровнять правильно (т.е. не поместить одну поверх другой), ребра объекта будут перекручены. Управлять масштабом отображения форм в диалоговом окне Compare можно с помощью уже знакомых кнопок Zoom Extents, Pan, Zoom и Zoom Region.
Выровнять первые вершины этих сплайнов можно следующим образом: выделите исходное сечение-квадрат (или создайте экземпляр сечения с помощью кнопки Put) и щелкните на кнопке Edit Spline. В режиме редактирования ребер с помощью кнопки Subdivide разбейте правое ребро квадрата новой вершиной, а затем перейдите в режим редактирования вершин, выделите новую вершину и щелкните на кнопке Make First. Новая вершина квадрата станет первой, и перекручивание исчезнет.
Рис. 16.29. Шторы, созданные с помощью объектов на основе опорных сечений
Модель справа, впрочем, тоже не лишена изъянов. Посмотрев внимательнее, вы сможете заметить небольшое "вздутие" у основания ручки. Это вызвано поворотом каркаса при выравнивании вершин окружности и прямоугольника. Как видите, каждый метод имеет свои преимущества и недостатки.
Как уже отмечалось, щелчок на кнопке Compare открывает диалоговое окно Compare (Сравнение). В этом окне выбранные формы помещаются одна поверх другой, что позволяет сопоставить их и проверить выравнивание первых вершин. Формы для сравнения выбираются с помощью кнопки Pick Shape (Выбор формы), расположенной в левом верхнем углу диалогового окна. Справа от нее находится кнопка Delete Shape (Удалить форму), предназначенная для удаления формы из диалогового окна. На рис. 16.28 показано диалоговое окно Compare из предыдущего примера с двумя сечениями колонны. Обратите внимание на первые вершины этих форм. Разница в их расположении и привела к странному перекручиванию колонны в верхней и нижней частях.
После выделения целевого объекта в списке Morph Targets можно переместить бегунок Time Slider на определенный кадр и назначить ключ морфинга, щелкнув на кнопке Create Morph Key (Создать ключ морфинга), расположенной в нижней части разворачивающейся панели Current Targets. Таким образом определяется число кадров, используемых для интерполяции промежуточных положений объектов морфинга.
Если предполагается существенное искажение объектов, выберите достаточно большое число кадров для выполнения морфинга. Это позволит сгладить интерполяцию. |
Если целевой объект выделяется не на нулевом кадре, ключи морфинга создаются автоматически.
При перекрытии двух объектов к ним применяют различные булевы операции в целях создания нового уникального объекта. К булевым операциям относятся следующие: Union (Объединение), Subtraction (Исключение), Intersection (Пересечение) и Cut (Вырезание). С помощью операции Union два объекта соединяются в один. При использовании операции Substraction перекрывающиеся части одного объекта "вычитаются" из другого. При выполнении операции Intersection остаются только перекрывающиеся части двух объектов. Операция Cut подобна Intersection, но здесь остаются только вырезанные части объектов. Результаты применения булевых операций показаны на рис. 16.20.
Эти типы объектов используются для выдавливания одного объекта на поверхности другого. Это удобно для добавления объекту геометрических деталей, например стежков на бейсбольном мяче.
Модифицируемый объект называют оберткой (wrapper), а другой объект — оборачиваемым (wrap-to). Оба объекта должны быть каркасами или же объектами, которые могут быть преобразованы в каркасы.
Существует еще один способ выдавливания одного объекта на поверхности другого — искривление пространства Conform; об этом более подробно речь идет в главе 26, "Использование искривлений пространства". |
Для создания объекта Conform выделите объект-обертку, активизируйте вкладку Create, из раскрывающегося списка субкатегорий выберите элемент Compound Objects и щелкните на кнопке Conform. Для выделения оборачиваемого объекта щелкните на кнопке Pick Wrap-To Object (Выбор оборачиваемого объекта) в одноименной разворачивающейся панели, установите один из переключателей — Copy, Instance, Reference или Move — и выделите необходимый объект в одном из окон проекций.
В качестве объекта-обертки и оборачиваемого объекта не могут выступать формы и сплайны. |
Выделенные объект-обертка и оборачиваемый объект появляются в списке Objects (Объекты) в разворачивающейся панели Parameters, представленной на рис. 16.3. Имена объектов можно изменить в полях Wrapper Name (Имя объекта-обертки) и Wrap-To Object Name (Имя оборачиваемого объекта).
Этот объект наилучшим образом подходит для построения "моста" между двумя отдельными объектами. Каждый из этих объектов должен иметь открытые грани либо отверстия, определяющие места соединения.
Для использования данного объекта удалите грань объектов, преобразованных в редактируемый каркас (Editable Mesh), таким образом указывая отверстия, находящиеся друг против друга. Во вкладке Create из раскрывающегося списка субкатегорий выберите элемент Compound Objects. Щелкните на кнопке Connect, а затем на кнопке Pick Operand (Выбор операнда) и выделите другой объект. Объект Connect будет создан в виде дополнительных граней, соединяющих два отверстия выбранных объектов.
С помощью составного объекта Mesher можно преобразовывать объекты в каркасы непосредственно в процессе анимации. Это удобно в работе, например, с системами частиц. После преобразования объекта в объект каркасного типа к нему можно применять такие модификаторы, как Optimize, UVW Map и т.п., что до этого не представлялось возможным.
Еще одним преимуществом объекта Mesher является то, что к одному такому объекту можно применить несколько сложных модификаторов, после чего привязать его к определенной части системы частиц (вместо применения модификаторов ко всем составляющим системы).
Разворачивающаяся панель Parameters объекта Mesher включает кнопку Pick Object (Выделить объект). Если щелкнуть на этой кнопке и затем выделить объект в окне проекции, он станет экземпляром объекта Mesher. Эта операция не удаляет оригинальный объект, и экземпляр Mesher выравнивается с учетом системы координат оригинального объекта Mesher. Обратите внимание на то, что на кнопке появляется имя объекта. Чтобы сменить объект, достаточно еще раз щелкнуть на кнопке и выделить новый.
После удаления оригинального объекта экземпляр Mesher тоже исчезнет. При необходимости визуализировать только экземпляр выделите оригинальный объект и скройте его с помощью команды Tools>Display Floater (Сервис>Панель Floater). |
В поле Time Offset (Временной сдвиг) вводят либо количество предшествующих кадров (величина может быть и отрицательной), либо количество предыдущих кадров анимации оригинального объекта. При установке флажка Build Only at Render Time (Создавать только при визуализации) экземпляр Mesher не выводится в окне проекции, но отображается в итоговой визуализированной анимации. С помощью кнопки Update можно вручную обновить экземпляр Mesher после изменения значений параметров объекта-оригинала.
В экземпляре системы частиц, созданном с помощью объекта Mesher, генератор системы с течением времени становится более тонким и длинным. Это, в свою очередь, может повлечь за собой трудности с применением некоторых модификаторов. Чтобы предотвратить подобные проблемы, выберите другой генератор частиц, не изменяющийся со временем. Для этого достаточно установить флажок Custom Bounding Box (Пользовательский генератор частиц), щелкнуть на кнопке Pick Bounding Box (Выбрать генератор частиц), затем в окне проекции выделить нужный объект. В качестве генератора может выступить и оригинальный объект. Если выделен объект Mesher, то в окне проекции генератор частиц окрашивается в оранжевый цвет. Угловые координаты пользовательского генератора показаны непосредственно под кнопкой Pick Bounding Box.
На рис. 16.11 справа изображена система частиц Super Spray, а слева— ее экземпляр Mesher с примененным модификатором Bend.
Эти объекты используются для создания анимации морфинга с помощью интерполяции вершин одного объекта в вершины другого. Оригинальный объект называется базовым (base), а второй объект — целевым (target). Эти два объекта должны иметь одинаковое число вершин. Один базовый объект может быть преобразован в несколько целевых.
Чтобы осуществить морфинг базового объекта в целевой, выделите базовый объект и откройте вкладку Create. Из списка субкатегорий выберите Compound Objects и щелкните на кнопке Morph (Морфинг). Затем в разворачивающейся панели Pick Targets (рис. 16.1) щелкните на кнопке Pick Target (Выбрать целевой объект) и выделите целевой объект в одном из окон проекций. Указатель мыши примет форму знака "плюс", как только вы поместите его на доступные для этой операции объекты. Объекты с другим количеством вершин в этом случае выделить нельзя. Переключатели Copy, Instance, Reference и Move определяют дальнейшие действия с объектом. (При установке переключателя Move удаляется оригинальный выделенный объект.) Целевой объект отображается в списке Morph Targets (Целевые объекты морфинга) в разворачивающейся панели Current Targets (Текущие целевые объекты).
Метод создания объектов на основе опорных сечений заимствован из судостроения. Еще в глубокой древности для построения корпусов парусных суден кожу или другой материал натягивали на каркасы поперечных сечений, расставленных вдоль киля.
Для построения объекта на основе опорных сечений необходимо наличие, как минимум, двух сплайновых форм: сплайн-пути, вдоль которого происходит расстановка опорных сечений, и сплайн-сечения. После создания соответствующих сплайновых форм перейдите во вкладку Create (Создать), щелкните на кнопке Geometry (Геометрия) и из раскрывающегося списка субкатегорий объектов выберите Compound Objects (Составные объекты). Объектам на основе опорных сечений соответствует кнопка Loft (Объекты на основе сечений), доступная при наличии в окне проекции двух или более сплайнов.
Эти объекты позволяют разместить множество копий объекта в сцене или в определенной области. Размещаемый объект называют источником (source), а область — распределяемым (distribution) объектом.
С помощью систем частиц, обсуждаемых в главе 17, "Создание систем частиц и управление ими", можно также создать множество одинаковых объектов. Но больший контроль над процессом размещения можно получить лишь с помощью объекта Scatter. |
Для создания объекта Scatter активизируйте вкладку Create, из раскрывающегося списка субкатегорий выберите элемент Compound Objects и щелкните на кнопке Scatter. Выделенный объект становится источником, а с помощью элементов управления разворачивающейся панели Pick Distribution Object (Выбор распределяемого объекта) можно выбрать распределяемый объект.
В разворачивающейся панели Scatter Object (Объекты распределения) расположен список, в котором перечислены источники и распределяемые объекты. С помощью полей Source Name (Имя источника) и Distribution Name (Имя распределяемого) объекты можно переименовать. Кнопка Extract Operand (Извлечь операнд) становится доступной только во вкладке Modify и позволяет выбрать операнд из списка и создать его копию (Сору) или экземпляр (Instance).
С помощью данного типа объектов можно создавать сплайновые формы (подобные формочкам для печенья), используемые для выдавливания части каркасного объекта. Кнопка для создания объектов ShapeMerge доступна лишь в том случае, если в сцене есть каркасный и сплайновый объекты. Для использования этого объекта выделите каркасный объект, щелкните на кнопке Pick Shape (Выбрать форму) разворачивающейся панели Pick Operand (Выбор операнда) и выделите сплайновую форму. Сплайновая форма может быть ссылкой (Reference), экземпляром (Instance) или копией (Сору). Кроме этого оригинальную сплайновую форму можно просто удалить (переключатель Move).
Сплайновая форма всегда ограничена направлением отрицательной оси Z. Вращая и позиционируя сплайн перед выделением, можно применить его к разным сторонам объекта. Кроме того, к одному каркасному объекту можно применить несколько сплайновых форм.
В списке разворачивающейся панели Parameters (рис. 16.6) отображается каждый каркасный и сплайновый объекты. В поле Name их можно переименовать. С помощью кнопки Extract Operand (Вычесть операнд) можно отделить любой объект, сделав его экземпляром (переключатель Instance) или копией (переключатель Сору).
Используя данный объект, можно создавать ландшафты из сплайнов, представленных контурами уровней высот. Эти сплайновые контуры могут быть созданы в 3ds max или же импортированы, например из формата . DWG программы AutoCAD. Если такие сплайны созданы в 3ds max, то проверьте, чтобы они были соединены в один объект. Все сплайны должны быть закрытыми.
Сначала создайте сплайны, представляющие различные уровни ландшафта, выделите эти сплайны и щелкните на кнопке Terrain. С помощью кнопки Pick Operand одноименной разворачивающейся панели можно добавить дополнительные сплайны к объекту Terrain. После этого все выделенные сплайны становятся операндами и отображаются в списке Operands разворачивающейся панели Parameters.
В группе Form (Форма) можно выбрать форму ландшафта: Graded Surface (Градуированная поверхность), Graded Solid (Градуированное сплошное тело) и Layered Solid (Сплошное тело из слоев). При установке переключателя Graded Surface отображается сетка поверхности сверху контуров сплайнов; при установке переключателя Graded Solid объект помещается вниз контуров сплайнов; а при установке переключателя Layered Solid каждый контур отображается в виде плоской области, напоминающей террасу.
В группе Display (Отображение) можно выбрать один из трех видов отображения: каркас (переключатель Terrain (Ландшафт)), линии (переключатель Contour (Контуры)) или и каркас и линии (переключатель Both (Оба)). Способ обновления объекта Terrain выбирается с помощью переключателей группы Update (Обновление).
В разворачивающейся панели Simplification (Упрощение) можно выбрать разрешение объекта Terrain, установив число вершин по вертикали и горизонтали (все вершины, половина или четверть).
Субкатегория Compound Objects (Составные объекты) включает несколько уникальных типов объектов. Доступ к ним можно получить, щелкнув на кнопке Geometry (Геометрия) во вкладке Create (Создать) и выбрав из раскрывающегося списка субкатегорий элемент Compound Objects (Составные объекты). Все типы объектов этой субкатегории создаются с помощью кнопок, отображаемых в верхней части вкладки Create. В 3ds max представлено несколько типов составных объектов.
Morph (Морфинговые). Данный тип состоит из двух и более объектов с одинаковым числом вершин. Эти вершины интерполируются от одного объекта к другому в нескольких кадрах. Conform (Соответствующие). Объекты этого типа окружают вершины одного объекта в другом. Используются для имитации эффекта морфинга между объектами с различным числом вершин. ShapeMerge (Слитые). Тип, позволяющий соединить сплайн с каркасным объектом или вычесть область сплайна из каркасного объекта. Terrain (Ландшафтный). Из контуров высот создаются ландшафты подобно топографическим картам. Mesher (Смешивающие). По мере следования кадров системы частиц преобразуются в объекты каркасного типа, что позволяет применять к системам частиц модификаторы. Scatter (Распределенные). Располагает исходные объекты в сцене случайным образом. Состоит из объекта-источника и распределяемого объекта, который указывает на объем или поверхность распределения. Connect (Соединяющиеся). Соединяет два объекта с открытыми гранями с помощью создания "моста" между отверстиями. При этом создаются дополнительные грани. Boolean (Булевы). Создает объект с помощью булевых операций (Union (Объединение), Subtraction (Исключение), Intersection (Пересечение) и Cut (Вырезание)) из одного или нескольких перекрывающихся объектов. Loft (Опорные сечения). К этому типу принадлежат объекты, созданные на основе форм опорных сечений.Разворачивающаяся панель Transforms (Трансформации) используется для определения границ трансформации объектов-дубликатов. Например, если значение параметра Z в группе Rotation (Поворот) установить равным 90°, то каждый новый дубликат будет поворачиваться случайным образом вокруг оси Z на угол, лежащий в пределах от -90 до 90°.
Эти трансформации могут использоваться распределяемым объектом, если в группе Distribution разворачивающейся панели Scatter Objects установлен переключатель Use Transforms Only (Использовать только трансформации). При установке флажка Use Maximum Range (Использовать максимальный диапазон) значения всех трех осей одинаковы. Если же воспользоваться флажком Lock Aspect Ratio, объект-источник установит относительные размеры, что приведет к неоднородному масштабированию.
Когда в 3ds max импортируется текст в кривых, как правило, в нем встречаются буквы, содержащие формы внутри других форм. Например, если перевести в кривые букву р, она будет состоять из внешнего контура буквы и контура окружности, ограничивающей "внутреннюю" часть. При преобразовании подобного текста в объект каркасного типа выдавятся и внешний и внутренний контуры, поэтому текст окажется нечитабельным. Составные объекты ShapeMerge помогут избежать подобной проблемы.
Использование объекта ShapeMerge проиллюстрируем на примере логотипа компании Bugs Head Software Logo (данный логотип был импортирован в 3ds max в одном из упражнений главы 3, "Работа с файлами").
Чтобы с помощью объекта ShapeMerge предохранить от выдавливания "внутренние" части букв логотипа, выполните ряд действий.
В папке Chapter Example Files на прилагаемом компакт-диске найдите файл Chap 16.zip, распакуйте его и откройте файл Bugs Head Software logo.max. Этот файл несколько отличается от того, с которым вы имели дело в главе 3, "Работа с файлами". В данном примере рот жука преобразован в замкнутый сплайн, а все формы выдавлены. Снимите выделение со всех выделенных объектов. Затем удерживая нажатой клавишу <Ctrl> выделите внутренние сплайны буквы В, которая образует левый глаз жука. Активизируйте плавающую панель Display Floater, выбрав команду Tools>Display Floater (Сервис>Панель Floater). В группе Hide (Скрыть) щелкните на кнопке Selected (Выделенное), это позволит скрыть внутренние контуры буквы. Снова выделите голову жука. Активизируйте вкладку Create, в раскрывающемся списке субкатегорий объектов выберите Compound Objects (Составные объекты) и щелкните на кнопке ShapeMerge. В группе Operation разворачивающейся панели Parameters (Операция) установите переключатель Cookie Cutter (Вырезать на объекте) и щелкните на кнопке Pick Shape (Указать форму) разворачивающейся панели Pick Operand. Выделите рот жука и буквы, заменяющие его нос и глаза. Затем снова щелкните на кнопке Pick Shape для выхода из этого режима. Щелкните мышью в окне проекции, чтобы снять выделение с головы жука. В названии логотипа выделите букву В и снова щелкните на кнопке ShapeMerge. В группе Operation (Операция) установите переключатель Cookie Cutter, щелкните на кнопке Pick Shape и выделите внутренние сплайны буквы. Затем щелкните на кнопке Select Object, чтобы выйти из режима ShapeMerge. Подобную операцию повторите для каждой буквы, содержащей внутренние сплайны: g, e, a, d, о, а и е. Снова откройте плавающую панель Display Floater. В группе Unhide (Показать) щелкните на кнопке Аll (Все), чтобы вновь отобразить внутренние части буквы В, образующей левый глаз жука. Удерживая нажатой клавишу <Ctrl>, выделите оба сплайна и выберите команду Modifiers>Mesh Editing>Extrude. В поле Amount введите значение 0,2.Готовый логотип изображен на рис. 16.8. Обратите внимание, что внутренние части букв исчезли.
Чтобы лучше понять разницу между созданием объектов на основе опорных сечений и применением средств Surface Tools, попробуем смоделировать насадку для пылесоса сначала одним, а потом и другим способом. Для построения насадки будут использованы одни и те же сечения. Тем не менее результаты будут разными (и вы в этом вскоре убедитесь).
Чтобы смоделировать насадку для пылесоса с помощью объектов на основе опорных сечений и средств Surface Tools, выполните ряд действий.
В папке Chapter Example Files на прилагаемом компакт-диске найдите файл Chap 16 . zip, распакуйте его и откройте файл Vacuum hose attachment .max. В файле содержится несколько круглых и прямоугольных форм, обозначающих поперечные сечения насадки пылесоса. Сначала создадим объект на основе опорных сечений. Выделите вертикальную часть фигуры слева (Line0l). Затем на панели Create щелкните на кнопке Geometry и из раскрывающегося списка субкатегорий выберите элемент Compound Objects (Составные объекты). Щелкните на кнопке Loft, затем на кнопке Get Shape разворачивающейся панели Creation Method (Метод создания) и, наконец, в окне проекции щелкните на верхнем круге. В разворачивающейся панели Path Parameters (Параметры пути) установите флажок On и в поле Snap (Привязка) введите 10.0. В поле Path введите 60, щелкните на кнопке Get Shape (Выбрать форму) и выделите второй круг. Затем в поле Path введите 80, щелкните на кнопке Get Shape и выделите меньший прямоугольник. И наконец, в поле Path введите значение 100, щелкните на кнопке Get Shape и выделите нижний прямоугольник. Теперь все объекты связаны и их можно выравнивать. Откройте вкладку Modify, в стеке модификаторов щелкните на знаке "+" слева от элемента Loft и выберите субобъект Shape. В окне проекции щелкните на созданной форме, затем на кнопке Center разворачивающейся панели Shape Commands. Повторите эту операцию для каждой формы. Для использования инструментов Surface Tools обратимся к формам справа. Выделите формы (все они присоединены к одному объекту типа Editable Spline), затем выберите Modifiers>Patch/Spline Editing>Cross Section, чтобы применить к формам модификатор CrossSection. Все формы окажутся связанными между собой. Затем с помощью команды Modifiers>Patch/Spline EditingoSurface наложите на объединенные формы поверхность.Готовые насадки изображены на рис. 16.30 (справа — объект на основе опорных сечений, слева — результат применения средств Surface Tools). Обратите внимание, что насадка слева достаточно перекручена, поскольку в процессе построения объекта на основе опорных сечений автоматически произошло выравнивание вершин разных сечений. Исправить такой недостаток можно с помощью деформаций.
В качестве примера создания объекта на основе опорных сечений разного размера попробуем смоделировать вешалку, нижняя перекладина которой будет иметь ребристые выступы, позволяющие избежать соскальзывания одежды.
Для создания вешалки выполните ряд действий.
В папке Chapter Example Files на прилагаемом компакт-диске найдите файл Chap 16.zip, распакуйте его и откройте файл Lofted slip-proof hanger.max. В файле содержится сплайн контура вешалки и две простейшие формы. Во вкладке Create щелкните на кнопке Geometry и выберите Compound Objects из раскрывающегося списка субкатегорий. Затем выделите сплайн-вешалку и щелкните на кнопке Loft. В разворачивающейся панели Creation Method щелкните на кнопке Get Shape, установите переключатель Сору и выделите маленькую окружность. Вешалка превратится в трехмерный объект с круговым поперечным сечением. В разворачивающейся панели Path Parameters установите переключатель Path Steps. Появится диалоговое окно с предупреждением, что данная операция может изменить положение форм. Щелкните на кнопке ОК. Увеличивайте значение параметра Path до тех пор, пока маленький желтый крестик, обозначающий точку вставки сечения, не переместится к началу нижней перекладины вешалки (в нашем примере это значение равно 53). Снова щелкните на кнопке Get Shape, а затем на маленькой окружности. Это позволит сохранить круговое сечение вешалки в промежутке от точки 0 до точки 53. Увеличьте на единицу значение поля Path (таким образом, оно станет равным 54). Щелкните на кнопке Get Shape, а затем на звезде. Сечение оставшейся части вешалки (от точки 54 и до конца) приобретет форму звезды. Снова увеличивайте значение поля Path, пока желтый крестик не появится в одном шаге от конца нижней перекладины вешалки (в нашем примере это точка 60). Снова щелкните на кнопке Get Shape, а затем на звезде — эта часть вешалки будет закончена.
Чтобы некоторая часть объекта имела постоянное сечение, это сечение следует вставить не только в начале части, но и в ее конце. В противном случае при вставке сечения другой формы поверхность объекта искривится и будет представлять собой переход от одного сечения к другому. |
Готовая вешалка изображена на рис. 16.23.
При работе над сценами межгалактических путешествий мне не раз приходилось сталкиваться с разнообразными моделями инопланетян. Один из них был чем-то рассержен, и выражение его лица менялось в соответствии с его эмоциональным состоянием. В этом упражнении с помощью составного объекта Morph я покажу, как это происходило.
Для морфинга головы инопланетянина выполните следующее.
В папке Chapter Example Files на прилагаемом компакт-диске найдите файл Chap 16.zip, распакуйте его и откройте файл Morphing alien head.max. В файле содержится модель головы инопланетянина, созданная с помощью примитивов. Глаза и рот этого существа анимированы с помощью ключей. Активизируйте вкладку Create, щелкните на кнопке Geometry и из раскрывающегося списка субкатегорий выберите элемент Compound Objects (Составные объекты). Выделите объект модели, который называется Alien helmet start, и щелкните на кнопке Morph. В разворачивающейся панели Pick Targets установите переключатель Move (Переместить) и щелкните на кнопке Pick Target. Затем щелкните на объекте Alien helmet. Для выбора этого объекта можно воспользоваться диалоговым окном Select Objects (<H>) (в действительности Alien helmet — это единственный объект, который в данном случае можно выбрать). Чтобы выйти из этого режима, щелкните на кнопке Pick Target еще раз. В списке разворачивающейся панели Current Targets выберите элемент M_Alien helmet start и щелкните на кнопке Create Morph Key (Создать ключ морфинга). Перетащите бегунок Time Slider (расположен под окнами проекций) на сотый кадр, выберите из списка элемент M_Alien helmet и щелкните на кнопке Create Morph Key еще раз. Для просмотра морфинга щелкните на кнопке Play Animation (Воспроизвести анимацию), которая расположена в правом нижнем углу окна 3ds max.На рис. 16.2 показаны некоторые состояния созданного объекта Morph.
Вы когда-нибудь в детстве собирали в спичечный коробок жучков, стрекоз и других мелких насекомых? А может быть, у вас был свой террариум в трехлитровой банке? В этом примере попробуем с помощью описанного выше объекта Scatter наловить паучков в коробочку. Для этого выполните ряд действий.
В папке Chapter Example Files на прилагаемом компакт-диске найдите файл Chap 16. zip, распакуйте его и откройте файл Scatter box of spiders.max. В файле содержатся каркасы коробки и паука. Выделив паука, активизируйте вкладку Create, из раскрывающегося списка субкатегорий выберите элемент Compound Object и щелкните на кнопке Scatter. Щелкните на кнопке Pick Distribution Object одноименной разворачивающейся панели, затем на коробке. Установите переключатель Move. В поле Duplicates (группа Source Object Parameters) разворачивающейся панели Scatter Objects введите значение 60. В группе Distribution Object Parameters установите переключатели Perpendicular и Even. Паучки "разбредутся" по поверхности коробки.Окончательный вид "виртуального террариума" показан на рис. 16.15. Обратите внимание, что коробка и все паучки одного цвета (они же являются частью одного объекта).
Попробуем скомбинировать несколько типов составных объектов, чтобы получить необычные эффекты. В приведенном упражнении с помощью объекта Scatter нам предстоит "рассадить" деревья на острове, который был создан ранее, с помощью объекта Terrain.
Для добавления деревьев выполните ряд действий.
В папке Chapter Example Files на прилагаемом компакт-диске найдите файл Chap 16.zip, распакуйте его и откройте файл Island terrain with trees .max. В файле содержится тот самый образец рельефа, который был смоделирован ранее, но с добавленным к нему деревом. Выделив дерево, из раскрывающегося списка субкатегорий вкладки Create выберите элемент Compound Object и щелкните на кнопке Scatter. Щелкните на кнопке Pick Distribution Object и выделите остров. В поле Duplicates введите значение 100 и снимите флажок Perpendicular. Теперь все деревья выпрямились. Установите переключатель Random Faces. Деревья станут гуще на холмах, где число граней выше.На рис. 16.17 показан остров, засаженный деревьями.
Чтобы попрактиковаться в работе с объектами Conform, добавим на лицо боевого генерала страшный шрам. При использовании объекта Conform такая деталь, как шрам, может быть каркасным объектом и прекрасно накладываться на исходные контуры лица.
Итак, чтобы с помощью объекта Conform создать шрам на лице, выполните ряд действий.
В папке Chapter Example Files на прилагаемом компакт-диске найдите файл Chap 16 . zip, распакуйте его и откройте файл General's scar.max. В файле находится каркас лица генерала, разработанный компанией Viewpoint Datalabs, и сбоку от него каркас шрама. Щелкните на кнопке Select and Move (Выделить и переместить) основной панели инструментов. Выделите шрам и поместите его сверху и перед каркасом лица. Откройте вкладку Create и щелкните на кнопке Geometry. Из раскрывающегося списка субкатегорий выберите элемент Compound Objects и, не снимая выделения со шрама, щелкните на кнопке Conform. Щелкните на кнопке Pick Wrap-To Object, затем на каркасе лица. Выберите переключатель Move. Установите флажок Use Active Viewport разворачивающейся панели Parameters и убедитесь, что активным в настоящий момент является окно проекции Front. В поле Standoff Distance (раздел Wrapper Parameters) введите значение 0,03.На рис. 16.5 продемонстрирован результат "пластической операции" в увеличенном до размеров экрана окне проекции Perspective.
С помощью параметра Vertex Chaos можно хаотично расположить вершины объекта. За счет этого воссоздаются такие естественные явления, как обвивающая ствол листва. В приведенном ниже примере с помощью параметра Vertex Chaos смоделируем лианы, густо обвивающие поверхность объекта.
Чтобы покрыть поверхность объекта лианами, выполните следующее.
В папке Chapter Example Files на прилагаемом компакт-диске найдите файл Chap 16.zip, распакуйте его и откройте файл Jungle vines.max. В файле содержится простейший цилиндр и небольшая сфера темно-зеленого цвета. Выделив сферу, во вкладке Create из раскрывающегося списка субкатегорий выберите элемент Compound Objects и щелкните на кнопке Scatter. Щелкните на кнопке Pick Distribution Object и выделите цилиндр, установив переключатель Move. В поле Duplicates разворачивающейся панели Scatter Objects введите значение 500, а в поле Vertex Chaos — значение 5 (при необходимости значение Duplicates можно уменьшить).На рис. 16.16 показана полученная растительность.
С помощью операции Subtraction попробуем создать виртуальный бревенчатый домик охотника в глухой тайге. Для этого выполните описанные ниже действия.
Вданном упражнении речь идет о трансформации объектов и работе с диалоговым окном Array. Сведения по этим вопросам можно найти в главе 9, "Трансформация объектов". |
Если вы не выделите объект, а просто щелкнете на кнопке Pick Operand В, то потеряете результат предыдущей операции. |
На рис. 16.21 — охотничий домик, готовый принять первых посетителей.
В данном примере попробуем создать остров. С помощью объекта Terrain и его параметров достаточно просто построить линию раздела суши и моря.
Итак, для создания островного ландшафта выполните ряд действий.
Во вкладке Create щелкните на кнопке категории Shapes, а затем на кнопке Ellipse (Эллипс). В окне проекции Тор создайте несколько эллипсов разного размера. Первый эллипс должен быть самым большим, все последующие — меньшего размера. В окне проекции Left выделите и переместите эллипсы таким образом, чтобы самый большой оказался внизу, а самый маленький — вверху. Расположив два эллипса на одном уровне создайте две небольшие возвышенности. Во вкладке Create щелкните на кнопке Geometry, а затем из раскрывающегося списка субкатегорий выберите элемент Compound Objects. Выделите все эллипсы, воспользовавшись командой Edit>Select All (<Ctrl+A>) и щелкните на кнопке Terrain. Эллипсы автоматически объединятся. Таким образом, мы получим каркас острова. В поле Reference Elev разворачивающейся панели Color by Elevation введите значение 5 и щелкните на кнопке Create Defaults. Как результат, цветовые зоны острова будут сгенерированы автоматически. Цветовые значения для каждой зоны выводятся в списке разворачивающейся панели Color by Elevation. При выборе из этого списка какого-либо значения соответствующий цвет будет отображен в образце (Base Color). Последовательно выберите в списке значения каждой зоны и установите флажок Zones to Blend the Color Above, за исключением зоны светло-голубого цвета. За счет этого получим четкий разрыв между морем и береговой линией.На рис. 16.10 представлен окончательный вид островного ландшафта. На нем явно не хватает нескольких виртуальных деревьев, которые будут добавлены немного позже с помощью объекта Scatter.
Оптимальное использование объекта Connect состоит в соединении двух симметричных копий объекта, например частей стола или моста. В этом упражнении с помощью объекта Connect будет создана парковая скамья из двух крайних заготовок.
Чтобы соединить два конца парковой скамьи, необходимо выполнить следующее.
В папке Chapter Example Files на прилагаемом компакт-диске найдите файл Chap 16. zip, распакуйте его и откройте файл Park Bench.max. В файле содержатся симметричные заготовки скамьи. Каждая из них была создана путем выдавливания сплайновой формы и объекта ShapeMerge, с помощью которого создавались отверстия. Для создания и вращения симметричного клона использовалось средство Mirror. Выделите один конец парковой скамьи, активизируйте вкладку Create, из раскрывающегося списка субкатегорий выберите элемент Compound Objects и щелкните на кнопке Connect. Щелкните на кнопке Pick Operand одноименной разворачивающейся панели, установите переключатель Move и щелкните на противоположном конце скамьи. Два конца скамьи окажутся соединенными. В группе Smoothing разворачивающейся панели Parameters установите переключатель Bridge, чтобы сгладить сиденье скамьи.На рис. 16.19 показана полученная парковая скамья.
Внутреннее убранство квартиры — это задача профессиональных архитекторов и дизайнеров, а вот смоделировать шторы и нам под силу. Для этого воспользуемся объектами на основе опорных сечений.
Чтобы создать шторы, выполните ряд действий.
В папке Chapter Example Files на прилагаемом компакт-диске найдите файл Chap 16. zip, распакуйте его и откройте файл Lofted drapes .max. В файле вы найдете два сплайна, которыми можно воспользоваться для создания сечения. Во вкладке Create щелкните на кнопке Geometry и из раскрывающегося списка субобъектов выберите элемент Compound Objects. Выделите прямую линию сплайна и щелкните на кнопке Loft. В разворачивающейся панели Creation Method щелкните на кнопке Get Shape, затем на другом сплайне, который будет играть роль поперечного сечения. Откройте вкладку Modify, в разворачивающейся панели Skin Parameters снимите флажки Contour и Banking. В разворачивающейся панели Deformations щелкните на любой кнопке, чтобы изменить форму штор, например так, как показано на рис. 16.29.Разворачивающаяся панель Surface Parameters доступна для всех объектов на основе опорных сечений. Приступим к изучению ее содержимого. Параметры Smooth Length (Сглаживание по длине) и Smooth Width (Сглаживание по ширине) определяют способ сглаживания поверхности объекта. Параметры группы Mapping (Проецирование карт текстур) предназначены для задания координат текстуры на поверхности объекта. С их помощью вы можете указать, сколько раз карту текстуры необходимо повторить вдоль длины объекта (параметр Length Repeat) и вдоль периметра поперечного сечения (параметр Width Repeat). С помощью параметра Normalize (Нормализовать) можно применить карту текстуры к поверхности объекта равномерно (когда флажок установлен) или пропорционально, в зависимости от расположения вершин (когда флажок снят). Параметр Generate Material IDs (Задать идентификаторы материала) автоматически назначает идентификаторы материала частям объекта, а при установленном флажке Use Shape IDs (Использовать идентификаторы форм) в качестве идентификаторов материала используются идентификаторы, ранее назначенные исходным сплайновым формам. И наконец, с помощью группы Output (Выход) можно указать, будет построенный объект куском Безье (Patch) или объектом каркасного типа (Mesh).
При использовании большого числа дубликатов обновление окон проекций существенно замедляется. Для увеличения скорости обновления установите переключатель Proxy (Заместитель) в разворачивающейся панели Display (Отображение). При этом каждый дубликат заменяется специальным "проволочным" объектом. Если, например, с помощью средства Scatter созданы прогуливающиеся по обочине люди, можно воспользоваться переключателем Proxy, чтобы в окне проекции вместо деталей человеческого каркаса выводились только элементарные цилиндры.
Существует еще один способ увеличения скорости обновления— использование параметра Display (Отображать). В это поле введите значение (в процентах), которое является частью общего числа дубликатов. Теперь в окне проекции будут отображаться не все объекты-дубликаты, а их часть. На вид окончательной визуализации этот параметр не влияет.
С помощью флажка Hide Distribution Object (Скрыть распределяемый объект) можно скрыть объект, что также увеличит скорость обновления изображения. Параметр Seed (Случайное начальное число) задает случайность отображения объектов.
В разворачивающейся панели Parameters находится раздел Vertex Projection Direction (Направление проецирования вершин). При установке переключателя Use Active Viewport (Использовать активное окно проекции) вершины будут проецироваться на основе текущего активного окна проекции. Если активизируется другое окно проекции, то с помощью кнопки Recalculate Projection (Пересчитать направление) можно изменить направление проецирования.
Для выбора направления проецирования можно воспользоваться локальной осью Z любого объекта сцены. С помощью кнопки Pick Z-Axis Object (Выбрать ось Z объекта) можно выбрать такой объект, после чего его имя будет отображено ниже кнопки Pick Z-Axis Object. При вращении "направляющего" объекта изменяется и направление проецирования вершин.
В разделе Vertex Projection Direction находятся также следующие параметры проецирования: Along Vertex Normal (Среди вершин нормали), Towards Wrapper Center (К центру объекта-обертки), Towards Wrapper Pivot (К опорной точке объекта-обертки), Towards Wrap-To Center (К центру оборачиваемого объекта) и Towards Wrap-To Pivot (К опорной точке оборачиваемого объекта). При установке переключателя Along Vertex Normal направление проецирования противоположно направлению нормалей объекта-обертки. Остальные переключатели указывают направление проецирования к центру или опорной точке объекта-обертки либо оборачиваемого объекта. На рис. 16.4 показан результат проецирования при установленном переключателе Along Vertex Normal.
С помощью разворачивающейся панели Load/Save Presets (Загрузить/Сохранить параметры) можно сохранить, загрузить или удалить различные ранее определенные параметры. Сохраненные параметры можно впоследствии применить к другому объекту-источнику.
Если в объектах существует несколько отверстий, то Connect попытается их "залатать". Этот объект можно также использовать для соединения одного объекта с несколькими.
Объект Connect не совсем корректно работает с объектами NURBS.
На рис. 16.18 показан обычный объект Connect без активизации параметров сглаживания.