В этом туторе я расскажу вам, как правильно делать сложные
геометрические обьекты, пользуясь булеанами. Иногда бывает либо очень
сложно, либо почти невозможно слепить какой-нибудь обьект лишь из
примитивов. Для таких случаев удобно использовать булеаны, с помощью
которых можно сделать модель любой формы.
Для начала немного теории. Булеаны (от англ. Booleans) - это
комплексные обьекты, состоящие из двух взаимодействующих друг с другом
обьектов. Иначе говоря, булеаны получаются при комбинировании двух
мешей (meshes), в качестве которых могут быть примитивы и другие
обьекты, конвертенные в Editable Mesh. Невозможно комбинировать два булеана, но об этом немного позже.
Чтобы правильно понять терминологию булеанов, приведу несколько общих понятий. Булеан, как правило, состоит из Обьекта А (первоначальный обьект, на котром юзается Булеан), Обьекта В (второстепенный обьект, который добавляется к Булеану) и Области Соприкосновения или Оверлапинга
(Overlapping). Оверлапинг - это невидимое место соприкосновения мешей
обоих Обьектов А и В. на рисунке ниже показан Оверлапинг (выделен синим
цветом).
По принципу работы Булеаны делятся на следующие подвиды:
1.  Union - Из двух Обьектов составляется
один. Внешняя геометрия сохраняется, а Оверлапинг удаляется. Удобно для
комбинации множества мелких обьектов в один, чтобы потом не пришлось
возиться с целой кучей разных частей.
2.  Intersection - Сохраняется только Оверлапинг. Остальная часть обоих Обьектов удаляется. Противоположен Union'у.
3.  Subtraction - Самый нужный Булеан. Сохраняется
только Обьект А или В (по желанию юзера). Другой Обьект вместе с
Оверлапингом удаляется. Рекомендуется использовать такой Булеан для
моделирования дырок, впадин, вырезов и прочей геометрии.
4.  Cut - Бесполезный тип Булеана. Просто вырезает весь
Оверлапинг, а также целый меш внутри Обьекта, оставляя целыми только
внешние полигоны с нормалями, повернутыми наружу. То бишь опустошает
Обьект изнутри.
Для того, чтобы произвести Булеановую операцию, надо выбрать Обьект А и из списка Compounds выбрать Boolean Compound Object.
Затем в меню настройки Булеана предложат выбрать тип Булеана (описано
выше), и подобрать Обьект В (кнопка Pick Operand B). Остальные
параметры не так уж и важны и служат, в основном, для упрощения
визуализации Булеана.
Ниже показана схема производства дырок с помощью Subtraction-Булеана.
К первоначальному Обьекту А добавляем Булеан, а затем выбираем
Обьект В. Задаем типа Булеана Subtraction B-A, и получаем следующее:
Из скрина видно, что Обьект А и Оверлапинг были удалены. Получился
обьект с дыркой, который ни за что не удалось бы сделать из простых
примитивов.
Проблемы и способы их решения
Поскольку Булеаны в Максе глючат по-черному, их применение в
некоторых случаях оставляет желать лучшего. Хотя разработчики заверяют
нас, что в Максе начиная с версии 2,5 Булеаны используют совершенно
новый алгоритм, я им мало верю. Самая, пожалуй, распространенная и
неприятная проблема заключается в неправильном применении операции
Subtraction, когда вместо предполагаемого результата Булеан выдает нам
результат, аналогичный операции Cut - вырезанная изнутри меш. Проблема,
как мне кажется, часто возникает из-за того, что один из Обьектов
содержит хотя бы один отсутствующий полигон (так называемая брешь в
геометрии) или лишний вертекс. Для подсчета таких глюков с обьектами
надо пользоваться модификатором STL-Check. Чтобы устранить подобную ошибку с Subtraction-Булеанами, загоняйте в стек модификаторов модификатор Cap Holes
(закрывает прорехи в геометрии новыми полигонами) до или после
совершения Булеановых операций. Действует практически безатказно, за
исключением тех случаев, когда Cap Holes иногода (в редких случаях)
вероломно закупоривает сделанные нами дырки или вырезы. Поэтому
предпочтительнее добавлять этот модификатор до производства Булеана.
В самом начале я говорил, что комбинировать два Булеана в новый
Булеан физически невозможно. Однако если очень надо и без этого ничего
не получится, то попробуйте конвертить Булеан в меш (правый клик на
Булеана в стеке модификаторов => Convert to Editable Mesh). Тогда
все получится.
Удачи!
|