Моделирование резного домика часть 2

Аватар пользователя Андрей Кныш

Я продолжаю серию уроков, посвященных моделированию резного домика. В этой части курса мы смоделируем черепичную кровлю нашего будущего домика. Работать будем в 3ds max 2010. Для тех, кто работает в более ранних версиях программы, некоторые настройки, инструменты и функции программы будут недоступны. Напомню, что данный курс предназначен для тех, кто хочет познать тонкости моделирования. Это не значит, что то, о чем мы будем говорить в данном курсе, является панацеей. Нет, ни в коей мере! Это всего лишь моя техника моделирования. Но на ее основе Вы запросто выработаете свою, не менее продуктивную.

Шаг 1.
Откройте файл сцены предыдущего урока.
Поместите объект Cherd_okno в центр мировых координат (если он у вас там не расположен, сделать это можно, кликнув правой кнопкой мыши на Select and Move и в выпавшем меню кликнуть правой кнопкой на слайдерах всех осей).
Подготовим поверхность для черепицы и удалим лишние полигоны.
Для этого выделим площадь полигонов, которые будут покрыты черепицей. Чтобы сделать это быстрее, используем ограничение по углу.
В режиме прямоугольного выделения, в окне проекции Left, удерживая клавишу Alt, снимем выделение с полигонов, образующих фронтальную рамку.
Шаг 2.
Методом клонирования отсоединим в отдельный объект выделенные полигоны, присвоим вновь образовавшемуся объекту имя Cherepica и скроем полученный объект.
Еще раз выделим ту же площадь полигонов на объекте Cherd_okno и применим инструмент Bevel с отрицательными значениями по направлению нормалей. Нажмем клавишу Delete, удалив при этом выделенные полигоны.
Шаг 3.
1. Удалим лишние полигоны на арке и поперечной балке.
2. Удалим еще часть полигонов на арке, чтобы их быстро выделить, выделите сначала два симметричных полигона в центре, затем используйте инструмент Grow Loop.
Шаг 4.
Сделаем видимым объект Cherepica, остальные объекты скроем. Выделим правые симметричные полигоны и удалим их. Для быстрого выделения нужных полигонов используйте инструмент выделения Half. Если выделится не правая, а левая половина, то используйте кнопку Invert Axis, что позволит инвертировать выделение. Затем нажмем кнопку Grow один раз, для того чтобы выделить еще один ряд полигонов. Удалим выделенные полигоны. Немного проредим сетку. Для этого вырежем три горизонтальных лупа. Равномерно распределим горизонтальные ребра по всей площади объекта. Для этого выделим три горизонтальных лупа и нажмем кнопочку Set Flow. Лупы равномерно распределятся между своими крайними «соседями».
Шаг 5.
Создадим дополнительные ребра. Для этого выделим все горизонтальные лупы и применим инструмент Connect.
В режиме редактирования ребер, активируйте инструмент Create, поочередно кликая на вершинах, создадим дополнительные ребра. После создания всех необходимых ребер, деактивируем инструмент, кликнув на объекте правой клавишей мыши.
Шаг 6.
Придадим объем черепице: Перейдем в режим редактирования полигонов, клавиша «4», выделим все полигоны – Ctrl+A, активируем инструмент Bevel, выставим высоту выдавливания на 2,5 см., величину скоса оставим равной нулю, тип – по направлению нормалей. Выдавятся все полигоны. Не применяя параметры и не закрывая инструмент, снимем выделение с тех полигонов, которые выдавливать не нужно. Для этого, удерживая клавишу Alt, поочередно кликнем на каждом не требующем выдавливания полигоне. Применим параметры, кликнув на кнопке Apply. Снимем выделение со следующего ряда черепицы (здесь удобно использовать прямоугольное выделение в окне Perspective, постепенно проворачивая объект), применим параметры и т.д., пока не выдавим всю черепицу.
Шаг 7.
Выделим вершины фронтальных полигонов и выровняем их в плоскости Z.
Выделим вершины правых полигонов и выровняем их в плоскости Х.
Удалим все тыльные, правые и часть фронтальных полигонов.
Так как часть вершин на верхнем ряду черепицы остались неслитыми, сольем их. Сделать это быстро можно выделив все вершины – Ctl+A и применив инструмент Weld с параметрами, как на картинке. Выйдем из режима редактирования подобъектов.
Шаг 8.
Сделаем видимым объект Cherd_okno и подгоним нашу черепицу к раме.
Для этого включим локальную систему координат и масштабируем черепицу, сначала по оси Y, затем немного по оси X.
Применим модификатор Symmetry, чтобы получить вторую половинку нашей черепичной кровли.
Конвертируем объект Cherepica в Editable Poly. Скроем объект Cherd_okno. Выделим противолежащие ребра и применим инструмент Bridge.
Путем масштабирования сместим два лупа ближе к средине.
Шаг 9.
Смоделируем конек.
Для этого выделим полигоны, образующие основание конька.
Чтобы сделать это быстро, выделим два крайних полигона, нажмем кнопочку Step Loop. Выделится диапазон полигонов между этими двумя полигонами.
Выдавим их на 3 см.
Нажмем кнопочку Grow один раз и отсоединим наш конек в отдельный элемент методом вырезания. (Как это делается мы рассматривали в предыдущей части курса).
Шаг 10.
Добавим один луп по центру будущего конька. Чтобы быстро добавить луп, необходимо выделить одно поперечное лупу ребро и нажать кнопочку Insert Loop.
Снимем выделение с фронтального ребра и приподнимем луп по оси Z.
Скроем элемент черепица, оставив видимым элемент конек.
Применим к центральному лупу Chamfer. Применим к двум боковым лупам Chamfer.
Шаг 11.
1. В режиме Loop Mode, с зажатым Ctrl, кликнем на двух близлежащих полигонах, выделится весь ряд полигонов. Деактивируем режим Loop Mode. С помощью Bevel выдавим ряд полигонов по направлению нормалей без скоса на высоту 2 см. (Инструмент Bevel рассматривался ранее).
2. Удалим два нижних полигона, образовавшихся после выдавливания.
3. Опустим два крайних ребра по оси Z так, чтобы они немного проваливались в элемент черепицы.
4. В режиме Loop Mode кликнем на одном из ребер лупа, выделится весь луп. Вырежем его.
5. Выделим луп, деактивируем режим Loop Mode и применим Chamfer.
Проделаем подобную операцию на каждый пятый ряд полигонов (целесообразнее выполнять каждую операцию сразу для всех рядов так, как мы это делали с черепицей).
Удалим тыльные полигоны. Назначим всем полигонам конька автоматическую группу сглаживания по группам с углом 80 градусов (подобную операцию мы проделывали в последнем шаге предыдущей части). Все, конек готов.
Шаг 12.
Начнем крыть черепицей нашу крышу:
1. В окне проекции Top создадим примитив Plane с параметрами как на картинке (размеры взяты не с потолка – ширина 23 см определяется шириной одного повторяющегося элемента черепицы, которую мы моделировали для чердачного окна, высота 33 см. – подобрана согласно золотому сечению), конвертируем его в Editable Poly и назовем Krovlya. Скроем все объекты, кроме объекта Krovlya.
2. Нарежем дополнительные ребра и с помощью Bevel придадим объем черепице так, как мы это делали в шагах 5 и 6. Удалим лишние полигоны. Скроем объект Krovlya.
Шаг 13.
Создадим лекало для нашей будущей крыши.
Для этого в окне проекции Top в центре мировых координат создадим объект Piramid и переименуем его в Lekalo.
Сделаем видимыми объекты Cherd_okno и Сherepica, сгруппируем их и назовем группу Cherd_okno.
В окне проекции Left выровняем Cherd_okno относительно нашей пирамиды таким образом, как показано на рисунке.
Примечание:
Если с размерами длины и ширины пирамиды все понятно, то высоту нам придется вычислять (если при таких размерах длины и ширины мы поставим высоту такую, как нам хочется, то черепица ляжет не очень красиво и места стыков скатов будут выглядеть ужасно).
Итак, чтобы черепица легла корректно, мы должны размножить на половине ската элементы черепицы пропорционально. Одним словом, если мы тайлим по ширине на пять элементов, то и по высоте мы тоже должны тайлить на пять элементов. Почему так? Да потому, что если вы внимательно посмотрите, то половинка нашего ската не что иное, как прямоугольный треугольник.
Давайте теперь представим все это в цифрах:
Мы имеем:
половину ширины крыши – 300 см.
ширину одного элемента черепицы – 23 см.
Вычислим, сколько элементов в ширину у нас будет располагаться на половинке ширины крыши:
300:23=13.04 округлим до 13, а 0.04 как раз для того, чтобы организовать стык скатов.
Вычислим высоту ската: 13*33=429
Теперь мы имеем все необходимое, чтобы вычислить высоту нашей пирамиды.
Используем теорему Пифагора а2 + в2 = с2, где у нас а=300, с=429:
3002 + ?2 = 4292
4292 - 3002 = 306.662
Прибавим наш остаток для стыка 0.04, получим 306.7 см. Это и есть высота нашей пирамиды.
Если же у нас определенная ширина и высота пирамиды, то тут для расчетов необходимо применить формулу пропорции.
Используя эти два вида расчета, можно покрыть черепицей любые формы прямолинейных крыш без каких либо искажений на местах стыка скатов.
Шаг 14.
Включим двухмерную привязку к ребрам и переместим наше окно выше, руководствуясь золотым сечением.
Выключим привязки, разгруппируем объект Cherd_okno и удалим полигоны на объекте Cherepica, которые находятся внутри объекта Lekalo. Скроем объекты Cherd_okno и Cherepica.
Шаг 15.
Сделаем видимым и выделим объект Krovlya, активируйте инструмент Align и кликните на объекте Lekalo в окне Top, выставьте параметры как на картинке. Нажмите кнопку Apply. Измените параметры и нажмите ОК.
Шаг 16.
Выровняем Рабочую опорную точку, для этого во вкладке Hierachy, в свитке Working Pivot, включим режим редактирования Рабочей опорной точки, активируем инструмент Align и во вьюпорту Left кликнем на объекте Lekalo, выставим параметры как на картинке.
Включим режим использования Рабочей опорной точки (Use Working Pivot), выделим объект Krovlya и повернем его по оси Х, ориентируясь на объект Lekalo (стрелочками показано, как должен располагаться объект после поворота).Чтобы позиционирование было более точным, кликните на Select and Rotate правой кнопкой мыши и в Absolute: World меняйте значения на против Х. Выключим режим использования Рабочей опорной точки и выйдем из вкладки Hierarchy.
Шаг 17.
Размножим элемент черепицы с помощью массива.
Для этого к объекту Krovlya применим массив с параметрами как на картинке.
Шаг 18.
Скроем объект Lekalo, выделим все элементы массива, конвертируем их в Editable Poly.
Кликнем на одном из элементов массива, тем самым выделив его и сняв выделение с остальных элементов. С помощью Attach From List соединим все элементы массива в один объект. Для этого, удерживая клавишу Shift, кликнем на соответствующей пиктограмме (выпадет окно Attach List), нажмем Ctrl+A, тем самым выделив все объекты в списке, нажмем кнопочку Attach.
Выделим все вершины и применим Weld.
Шаг 19.
Для объекта Krovlya сбросим локальные координаты согласно мировым.
Для этого используем утилиту Reset XForm.
Шаг 20.
Разместим опорную точку объекта Krovlya в его центре.
Это нам обеспечит точность управления гизмом модификаторов.
Шаг 21.
К объекту Krovlya применим модификатор Slice. Выровняем его гизмо таким образом, чтобы оно было перпендикулярно объекту Krovlya и делило его по диагонали. Для этого в окне проекции Perspective повернем гизмо модификатора по оси Х на 90 градусов, а по оси Y таким образом, чтобы гизмо делило наш скат по диагонали от нижнего правого угла к верхнему левому. Сместим гизмо по оси Х немного влево. Применим модификатор Symmetry. Перемещая его гизмо по оси Х, добиваемся корректного слияния двух половинок. Конвертируем объект в Editable Poly, выровняем опорную точку по центру объекта. Так как на стыке не все вершины сольются корректно, выделим все вершины и применим к ним Weld с параметром Weld Threshold, равным единице.
Один скат готов.
Шаг 22.
Сделаем видимым объект Lekalo.
Активируем Рабочую опорную точку и повернем полученный скат относительно лекала. Деактивируем Рабочую опорную точку.
Шаг 23.
1. Активируем привязки к углу.
2. Выберем локальную систему координат объекта Lekalo.
3. В окне проекции Top, удерживая Shift, повернем объект Krovlya на 90 градусов.
4. Укажем, что это копия объекта и нажмем ок.
С зажатым Shift повернем копию объекта Krovlya еще на 90 градусов. С полученной копией сделаем то же самое. Деактивируем привязки к углу. Скроем объект Lekalo. Выделим объект Krovlya и с помощью Attach присоединим объекты Krovlya01, Krovlya02, Krovlya03.
Скаты теперь образуют крышу.
Шаг 24.
Сделаем видимыми объекты Cherepica и Cherd_okno.
В окне проекции Perspective "залезем" во внутрь объекта Krovlya и удалим полигоны, которые находятся внутри объектов Cherepica и Cherd_okno.
С помощью Attach присоединим объект Cherepica к объекту Krovlya. Выровняем опорную точку объекта Krovlya по центру объекта. С помощью утилиты Reset XForm сбросим локальные координаты объекта согласно мировым. Конвертируем объект в Editable Poly.
В режиме редактирования элементов назначим полигонам каждого ската, полигонам черепицы чердачного окна и полигонам конька чердачного окна индивидуальные идентификаторы (ID). Например фронтальный скат - ID 1, левый скат - ID 2, тыльный скат - ID 3, правый скат - ID 4, черепица чердачного окна - ID 5, конек чердачного окна – ID 6.
Шаг 25.
Крыша практически готова, но черепица на скатах получилась слишком уж идеальная.
Давайте внесем немного хаоса в укладку черепицы на скатах.
Для этого в режиме редактирования элементов выделим все 4 ската и применим модификатор Noise.
Ну вот собственно и все. Так как в следующей части мы будем декорировать нашу крышу, я не стал делать стыки между скатами. Но если вам это необходимо, то сделать их Вы без труда сможете сами (пусть это будет вашим домашним заданием ). Подскажу лишь - чтобы сделать это быстро, можно в режиме Step Mode, выделив по одному лупу на близ лежащих скатах, применить Bridge. Макушку закрыть с помощью Cap в режиме редактирования Border.
Как я уже сказал выше, в следующей части курса мы будем декорировать крышу резными элементами орнамента. А пока жду вопросов, комментариев и критики относительно этой части курса.
© Кныш Андрей for 3dunion.ru
При частичной или полной перепечатке данного урока ссылка на www.3dunion.ru обязательна.

Вам понравилось? Поделитесь с друзьями используя кнопки ниже.

Комментарии

3
Аватар пользователя Баку
Спасибо огромное!
Аватар пользователя Андрей Кныш
Не за что, Вадим. Рад, что урок расширил Ваши знания.
Аватар пользователя Вадим
Очень полезная статья!!! Столько нового узнал, спасибО!

Добавить комментарий

 ooooo      ooo                                         .o         .o8  
`888b. `8' o888 "888
8 `88b. 8 oooooooo .ooooo oo ooo. .oo. 888 .oooo888
8 `88b. 8 d'""7d8P d88' `888 `888P"Y88b 888 d88' `888
8 `88b.8 .d8P' 888 888 888 888 888 888 888
8 `888 .d8P' .P 888 888 888 888 888 888 888
o8o `8 d8888888P `V8bod888 o888o o888o o888o `Y8bod88P"
888.
8P'
"
Введите код, который Вы видите на картинке выше.