3DSMax_short
.pdf6.11Weld - сварка вершин
«Как сделать симметричный сплайн?»
Ещё одна удобная в некоторых случаях команда называется Weld. Допустим, нам нужен симметричный сплайн. (Рис. 6-81) Мы рисуем одну половину, потом применяем зеркальное отображение (Tools/Mirror), ставим Copy, чтобы получить 2 одинаковых сплайна и теперь хотим, чтобы между ними не было разрывов.
Конечно, можно воспользоваться командой Connect, но эта команда добавляет сегмент между вершинами, а мы хотим просто объединить их. Во- первых, надо убедиться, что вершины находяться на одном сплайне. Если вы использовали Tools/Mirror, то у вас не один сплайн, а два. Поэтому выделяем один из них, в Modify в параметрах ищем команду присоединения Attach и щёлкаем по второму сплайну.
«У меня на сплайне есть 2 точки рядом. Их можно слить в одну?»
Выделяем сплайн на уровне вершин (Vertex), ищем в параметрах кнопку Weld. (Рис. 6-84) Рядом с кнопкой цифра. Это расстояние. Если там стоит 0.1, то это значит,
что при нажатии на кнопку Weld все Рис. 6-83
выделенные вершины, находящиеся друг к другу ближе, чем 0.1, сольются. Выделяем 2 вершины, которые хотим превратить в одну и нажимаем на Weld. Если они не соединились, значит, что они расположены друг от друга дальше, чем расстояние рядом с Weld. Ставим цифру рядом с Weld побольше (можете ввести действительно большое значение вроде 100.000, если вы выделили только 2 вершины, то это не важно) и снова жмём на Weld. Вершины сместились друг к другу и превратились в одну.
171
6.12Fuse – перемещение вершин в одну точку.
«А можно сварить вершины без ввода большого значения рядом с Weld?»
«Как поставить вершины точно в одну точку, но не объединяя их?»
Ещё есть удобная команда под названием Fuse (расположена чуть ниже Weld). (Рис. 6-85) Выделяем вершины, которые
хотим поставить в одно место и нажимаем на Fuse. Вершины переместились в одну точку.
Удобно использовать эту команду для сварки
вершин. Например, у нас есть 2 вершины, которые мы
Рис. 6-85
хотим объединить. Выделяем их, нажимаем на Fuse, потом на Weld (если мы сначала нажали на Fuse, вершины точно будут ближе, чем 0.1, и вводить большое значение рядом с Weld не потребуется). Вершины слились. Теперь мы можем легко получать симметричные сплайны. Просто после копирования и присоединения (Attach) выделяйте вершины, которые хотите слить и нажимайте Fuse и Weld. (Рис. 6-83)
172
7 Булевы операции (Boolean).
Рис. 7-2
Рис. 7-3
Применение булевых операций мы уже видели в главе о сплайнах. Посмотрим, как они работают для объёмных объектов. Создадим два пересекающихся объекта, например, Box и Sphere. (Рис. 7-2)
«Как из одного объекта вычесть
другой?»
Рис. 6-1
В панели создания объектов в выпадающем
меню вместо стандартных примитивов (Standard Primitives) выбираем Compound Objects (это можно перевести как «составные объекты», то есть
Рис. 7-6 |
Рис. 7-5 |
из |
Рис. 7-4 |
сделанные |
|||
нескольких более простых). |
|
|
|
173
Выделяем Box, в панели Compound Objects нажимаем на Boolean. (Рис. 7-3) Открывается меню объекта Boolean. Нажимаем на кнопку Pick Operand B и щёлкаем на сферу. (Рис. 6-1) Видим, что получился объект, полученный вычитанием сферы из объекта Box. (Рис. 7-5) Можно посмотреть параметры и здесь (в панели Create), а можно перейти в Modify. Попробуем понять, что мы сделали. В списке операндов (Operands) мы видим два названия объектов рядом с буквами A и B, а ниже мы видим выбранную операцию Subtraction (A-B), то есть вычитание А из В. (Рис. 7-4)
Объект, выбранный перед тем, как нажать на Boolean, будет операндом А, щёлкнув по кнопке Pick Operand B (взять операнд В), и по объекту, мы выбираем второй операнд.
Можно попробовать поменять Subtraction (A-B) на другой вариант.
«Я не тот объект выделил, когда Boolean нажал, можно ли сделать так, чтобы у меня не второй объект из первого вычитался, а наоборот?»
Поменяем Subtraction (A-B) на Subtraction (В-А).
Остался объект, полученный вычитанием первого операнда из второго. (Рис. 7-6)
Замечание. Если вам не нужны очень глубокие знания в 3D, то достаточно запомнить, что сначала надо выделить объект ИЗ которого вычитаем, потом нажать кнопку Pick Operand B и щёлкнуть по объекту,
который вычитаем. |
|
Посмотрим, на что ещё можно |
|
поменять Subtraction. Например, на |
|
Union (объединение). Казалось бы, |
|
объекты выглядят точно так же. (Рис. |
|
7-7) Но, если мы присмотримся к видам |
|
проекций, на которых показана сетка, то |
|
увидим, что теперь это один большой |
|
объект без всяких полигонов внутри. И, |
Рис. 7-7 |
174 |
|
наконец, полезная вещь Intersection – пересечение. Видим, что осталась только часть, где два объекта пересекались. (Рис. 7-8)
Рассмотрим несколько примеров, чтобы понять, зачем же нам нужен Boolean, потому что иногда без него просто невозможно обойтись.
7.1.2 Пример Окна в полукруглой стене.
Если нам нужны окна в квадратной стене, то их можно делать и с помощью
сплайнов, там удобнее редактировать толщину стен и легче поменять расположение окон в случае, когда нам что-то не понравилось. Но как сделать окна в полукруглой стене? На виде
сверху (Top) нарисуем изогнутую линию (Line) из панели сплайнов. Как всегда, не нужно делать много точек, достаточно 3- 4 Bezier или Smooth. В Modify выделяем линию на уровне Spline (чёрный «+» рядом с Line, выбираем там Spline), листаем параметры до кнопки Outline, нажимаем кнопку Outline, переводим курсор на линию, зажимаем левую
кнопку мыши и ведём курсор вверх или вниз (или вводим точное значение
толщины рядом с Outline и нажимаем на Enter).
Добавляем модификатор Extrude, увеличиваем параметр Amount. (Рис. 7-10) Получилась стенка. Теперь рисуем объекты Box на месте окон. Box’ы должны выступать из стены с обеих сторон. (Рис. 7-9)
Выделяем стенку, идём в панель Compound Objects, нажимаем Boolean, в Boolean нажимаем Pick Operand B, щёлкаем по одному из окон.
175
«Я хочу вычесть не один объект, но, когда я щёлкаю по второму объекту для вычитания, отверстие от первого объекта пропадает.»
«Как вычесть несколько объектов с помощью Boolean?»
В Boolean можно работать только с двумя объектами. Если вы хотите вычесть не один, а больше объектов (Рис. 7-11), то надо применить Boolean ещё раз. Для этого нужно:
Вариант 1 (медленнее, но нагляднее): чтобы в панели Create нажатая кнопка Boolean, подсвеченная жёлтым, отжалась. Можно нажать правую кнопку мыши в активном окне, можно выбрать один из инструментов, можно
перейти в Modify и обратно, главное, чтобы кнопка Boolean стала неактивной, после этого нажимаем на Boolean ещё раз, снова нажимаем Pick Operand B и щёлкаем по следующему объекту. (Рис. 7-12)
Вариант 2 (происходит то же самое, но не все это замечают): нажать на уже подсвеченный Boolean ещё раз (получается одно маленькое изменение – из списка операндов исчезает операнд B), потом на Pick Operand B и щёлкнуть по объекту.
Каждый раз, когда вы нажимаете на Boolean, создаётся ещё один «уровень» вычитания, нажимаете ещё раз – ещё «уровень», даже если вы ничего не вычитаете. Это примерно можно представить себе как добавление модификатора, в котором не менять параметры. То есть в списке он есть, но не влияет на объект. Только потом сложнее будет разбираться в этом длинном списке.
176
«У меня много объектов, которые я хочу вычесть, мне что, так каждый раз Boolean и применять?»
Есть ещё один способ вычитания нескольких объектов, но для этого надо представлять, что такое модификатор Edit Mesh. Если вы пока не знаете, что это такое, пропускайте упоминания об Edit Mesh. С помощью команды Attach надо объединить все объекты, которые мы хотим вычесть, потом применить Boolean, и вычесть из большого объекта все объединённые объекты.
Замечание. Если вам нужно вычесть очень много объектов из одного, лучше воспользоваться присоединением объектов Attach, а потом сделать Boolean один раз. Потому что иначе, во-первых, возможно появление “глюков” (“дырки” в объекте, полигоны не на своих местах), а, во-вторых, компьютер может “тормозить”, потому что при расчёте объекта программа каждый раз выполняет все вычитания заново. Я видел сцену, в которой Boolean последовательно применили раз 60. Полигонов в сцене было немного, но “тормоза” были ощутимые. После превращения объекта в обычную сетку (щелчок правой кнопкой на объект Convert To/ Convert To Editable Mesh) “тормоза” исчезли.
«Я случайно на Boolean нажал, у меня все параметры объекта исчезли, теперь в Modify только Boolean есть, хотя я ничего не вычитал.»
Замечание. После того, как вы выделили объект и нажали на Boolean, объект превратился в Boolean. Точнее, он превратился в операнд A, операнд В не определён. Например, у вас был выделен Box. Если вы захотите поменять число сегментов или размер сторон и зайдёте в Modify, то увидите там объект Boolean. Поэтому, если вы нажали на Boolean случайно, то надо делать отмену последнего действия.
«Я на Boolean нажал давно, отмена уже не работает, а в Modify только Boolean есть. Объект можно вернуть?»
Если отменять действие уже поздно, то заходите в Modify, в списке операторов есть только один объект рядом с буквой А. Щёлкаете по нему,
177
чтобы он подсветился, и нажимаете кнопку Extract Operand рядом. Появится копия объекта, но уже без Boolean. Теперь сам объект Boolean можно удалить, а копия (обычный объект) останется.
Вырезание одного объекта из другого – это понятный случай. Посмотрим один из примеров булевых операций, который, может быть, не совсем типичен, но, тем не менее, может оказаться полезным. Иногда нам может
потребоваться согнуть сплайн с Extrude, например, изогнуть текст. Посмотрим, как это использовать на практике.
7.1.3 Пример Выгнутый щит.
Во-первых, это почти плоский объект.
Плоские (или с небольшой толщиной)
Рис. 7-13
объекты неправильной формы чаще всего удобнее делать сплайнами. Создаём сплайн по форме щита (симметричный сплайн делаем стандартно – рисуем половину, потом Mirror, Attach, свариваем вершины с Weld). Добавляем модификатор Extrude. (Рис. 7-13) Добавляем модификатор Bend для изгиба. Но
при попытке согнуть объект видим странный
Рис. 7-14
«глюк». (Рис. 7-14)
«Я сделал сплайн, применил Extrude, добавил Bend, но при изгибе появляются какие-то странные глюки на поверхности объекта.»
На самом деле, всё закономерно, потому что гнётся не сам объект, а его сегменты, а при добавлении Extrude программа старается рисовать как можно меньше треугольников на поверхности. Если мы посмотрим на то, как на самом деле расположены сегменты, то поймём и причину «глюков».
178
Поверхность объекта состоит из длинных прямых треугольников. Рассмотрим два варианта того, как можно увеличить их количество.
Вариант 1. В модификаторе Extrude в группе параметров Capping
меняем Morph на Grid. (Рис. 7-15)
Но, если приглядется, то всё равно есть некоторые “глюки” по краям.
Рис. 7-15
К тому же мы не можем изменить частоту сетки. Поэтому попробуем другой путь.
Вариант 2. Метод «выкройки». Делаем Box, по длине и ширине
выходящий за размеры сплайна, по |
|
||
толщине равный будущему объекту. |
|
||
Ставим ему больше сегментов так, |
|
||
чтобы |
на виде получилась «сетка» |
|
|
(Рис. 7-16), сегменты по толщине |
|
||
оставляем 1. Это |
будет «заготовка», |
|
|
из которой мы вырежем объект. Во |
|
||
втором |
объекте, |
сделанном из |
Рис. 7-16 |
|
|
|
сплайна, в модификаторе Extrude в группе параметров Capping оставляем активным Morph, а параметр Amount увеличиваем, чтобы объект был
179
гораздо больше по толщине, чем Box. Располагаем его так, чтобы он проходил Box «насквозь». (Рис. 7-18) Выделяем Box, идём в Compound Objects, нажимаем кнопку Boolean, в Boolean нажимаем кнопку Pick Operand B, щёлкаем по фигурному объекту.
В параметрах Boolean выбираем пересечение Intersection. (Рис. 7-17)
Вот этот объект можно спокойно гнуть, его
поверхность состоит их прямоугольных сегментов.
Плюсы этого метода в том, что мы
сами можем выбирать степень сглаживания. В
любой момент можно выбрать Box, который мы использовали для Boolean и поменять количество сегментов или толщину.
«А можно изменить |
|
|
||
объект, который |
|
|
||
использовался для |
|
|
||
Boolean?» |
|
|
|
|
В параметрах Boolean в |
|
|
||
окошке Operands щёлкаем на |
|
|
||
один из операндов. Название |
|
|
||
подсвечивается синим цветом, |
|
|
||
а в стеке модификаторов под |
|
|
||
Boolean |
появляется |
название |
|
|
операнда |
(например, |
Box01), |
Рис. 7-19 |
|
(Рис. 7-20) щёлкаем по этому названию в стеке, |
|
|||
появляются стандартные параметры объекта. (Рис. |
Рис. 7-20 |
7-19) Если мы хотим сделать объект более сглаженным, то увеличиваем сегменты. (Рис. 7-21) Если хотим сделать толще, то изменяем один из
180