Урок представляет собой реинкарнацию подобного урока 4-х летней давности, там из одного готового модуля(пуговицы) клонировали все остальные, важно другое – принципы те же, только в этот раз я постараюсь максимально упростить урок, и сделать акцент на ходе построения. В уроке применяются базовые принципы полигонального моделирования по имеющимся фотографиям, в основном располагая стандартными средствами 3ds max.
!CAUTION!: Вы уже должны ориентироваться в интерфейсе 3ds max, знать инструментарий и базовые функции Editable Poly.
В начале скажу важную вещь, чем дольше вы будете на этапе lowpoly , добиваясь правильных пропорций и формы, тем проще будет в конце с детализацией.
Перед тем как что либо моделировать нужно проанализировать этапность работы, для этого нужно визуально разбить обьект на логичные составляющие, смотрим на нашем примере:
будем ориентироваться на 4 части, из которых "состоит" обьект:
нижняя
боковая
подушки
и самая для нас важная часть – обивка с пуговицами.
Чаще всего фотографии среднего качества в 2-3 ракурсах это максимум чем располагаешь, если повезет будут еще и габаритные размеры, у нас они есть 2450х1000х800. Создаем бокс заданных размеров (1000мм глубина).
Снимаем сплайны с бокса (с фронтальной и боковой частей) через функцию Create Shape From Selection в Editable Poly, они и будут служить для габаритных ориентиров.
Cтроим замкнутый сплайн по форме.Определяем каким образом нам нужно расположить точки, для этого внимательно изучаем имеющиеся фотографии и выясняем что идут 3 ряда пуговиц на спинке и четвертый ряд сверху на подлокотниках.
Точек не должно быть много, их должно быть ровно столько, сколько нам нужно для качественной low-poly болванки.
Обратите внимание на 4 показанных точки, это те самые по которым пойдут выше названые 4 ряда пуговиц.
Для того что бы правильно рассчитать их положение нужно определить высоту сидения(от пола) она ~ 450 мм(поставьте себе вспомогательные габаритные боксы).
Зная высоту располагаем первую (1) точку ровно так, чтобы она была чуть выше подушки.
Рекомендую несколько раз перепроверить положение точек, потом на болванке редактировать их уже будет сложнее.
Прогоняем сплайн-форму по рельсе(сплайну), проще это сделать модификатором Sweep, можно обычным Loft‘ ом, моделируем естественно только симметричную половину модели.
Cut‘ом дорезаем торцевую часть (можно обьединить точки Connect‘ом)
Далее подставим несколько габаритных боксов вместо подушек и основы дивана.
Обязательно включаем глазомер, 4 ребра по которым потом пойдут ряды пуговиц должны располагаться так как нам нужно, если уже сейчас вы видите что промахнулись с пропорциями – лучше поправить сразу.
Выделяем полигоны которые нам нужны для мягкой части.
С зажатым Shift ‘ом смещаем полигоны для того чтобы скопировать, указываем что копируем в отдельный обьект.
Закрываем "дно": выделяем ребра, зажимаем Shift, тянем и Weld ‘им открытые вершины.
Модификатор Shell наружу, ставим Straighten Corners в настройках для правильных углов.
Толщина мягкой части ~ соответствует толщине основы подлокотника.
Смотрим на результат после настройки Shell ‘а
Конвертируем в Editable Poly , и начинаем работать с формой болванки, пока на уровне вершин.
Дальше я насчитал 6 радов пуговиц, которые находится на боковом подлокотнике, для нарезки ребер используем Slice Plane (режем полигоны).
Должна получится однородная сетка, с фиксированным шагом.
Сейчас нужно сделать тестовый Extrude вершин, для того чтобы убедится что пуговицы с заданным шагом будут располагаться правильно.
Глубина и ширина Extrud ‘а пока не важна.
Применяем MeshSmooth
Пуговицы "сели" , если положение нас устраивает делаем отмену и дорезаем болванку с таким же шагом.
( после разреза одного ровного сечения, остальные проще дорезать Сonnect ‘ом. )
Сейчас нужно доработать угол, делаем Сonnect промежуточных ребер, после чего немного выравниваем вновь образовавшиеся ребра, нужен правильный поворот формы.
Так это выглядит.
Сейчас нужно сделать тестовый Extrude вершин, и еще раз убедится что пуговицы с заданным шагом будут располагаться правильно.
Немного поработаем с торцевой частью.
Ring ребру.
после чего Connect.
Незабываем что пока нам нужно лишь немного уточнить форму. В конце видно что должен показать MeshSmooth.
Еще раз посмотрим как это выглядит с подушками и основой дивана.
Улучшаем форму торцевой части подлокотника, нельзя допускать скопления полигонов в одном месте, нужно добиться однородности сетки.
Качество болванки должно быть идеальным, с правильно рассчитанным положением ребер по поверхности где пройдут пуговицы.
Для того что бы продолжать резать стежки, и в целом усложнять форму нужно убедится что нету косяков.
С одной вершины(пуговицы) будут выходить по 8 ребер, начинаем резать диагонали, можно воспользоваться Cut ‘ом или Connect ‘ом.
Выбираем все вершины относящиеся к пуговицам, Extrude, глубину и ширину выдавливания нужно путем экспериментов подобрать самостоятельно.
Первое выдавливание нажимаем OK.
Для того чтобы избавится от выделения вновь созданных вершин нажимаем Shrink, должны остаться выделенными только по одной вершине внутри.
Делаем второй Extrude, глубину и ширину выдавливания нужно путем экспериментов подобрать самостоятельно.
Опять избавляемся от выделения вновь созданных вершин, и делаем Chamfer всех вершин внутри, получившаяся величина окружности и будет пуговицей, проверяйте визуально ее размер по фотографиям.
Теперь нужно определится с топологией сетки, которая дала бы лучшее сглаживание между стежками.
Справа на картинке показан вроде бы очевидный прием, но это лишь пример того как делать не нужно.
Режем окружность вокруг пуговиц так как показано, использую Cut.
Так выглядит сетка на данном этапе.
Чтобы упростить дальше процесс нарезания окружностей, я использую нестандартный модификатор
AsimmetricScaleChamfer, скачать и ознакомится с ним можно
тут, думаю по названию понятно чем он полезен.
В дальнейшем я буду активно использовать
AsimmetricScaleChamfer для создания стяжек, швов и складок.
В данном случае AsimmetricScaleChamfer оказался полезен тем что мы оставили на месте внутренние ребра, новые же отодвинули образовав новую окружность.
Остается обьединит Weld ‘ом вершины между пуговицами.
Так это должно выглядеть в конце процедуры.
Обратите внимание на сетку, казалось бы она состоит исключительно из 4-х угольников, при этом есть вершины из которой выходит аж 8 ребер, это не позволит правильно сгладить сетку.
Доработаем боковую и заднюю часть дивана, нужно избавится от треугольников.
Вернемся к проблеме 8-ми лучевых вершин, есть как минимум еще 2 способа решить эту задачу, я выбрал путь построения пятиугольников, сейчас они меня устраивают так как закольцованы от пуговицы к пуговице.
( применяйте и смотрите на MeshSmooth )
Так как на подлокотнике пуговицы заканчиваются, нужно проконтролировать корректное завершение сетки. Добавляем и редактируем ребра все той же связкой Connect + Cut.
Незабываем про бока.
Пришло время настроить Symmetry, и посмотреть как все смотрится в целом.
После настройки Symmetry, можем его просто отключить и продолжать работать с половиной. Смотрим что готово на этом этапе, и тестовое сглаживание.
Делаем Dеtach полигонов предназначенных для пуговиц, в отдельный обьект.
Выделяем ребра относящиеся к стежкам.
Применяем модификатор AsimmetricScaleChamfer, чтобы стежки выглядели правдоподобней нужно их утопить по локали, см. настройки.
Несложными манипуляциями со Scale подгоняем отверстия под пуговицы.
Создаем обьем пуговиц – Bevel Polygons, поcле чего закрываем открытые ребра в оббивке и снова Bevel Polygons.
Смотрим итог со сглаживанием.
Дальше работаем с обьемом стежек, выделяем по ребру внутри – Loop. Применяем AsimmetricScaleChamfer, настройки вы уже должны уметь подбирать.
Смотрим на результат и сглаживание.
AsimmetricScaleChamfer сильно упрощает создание сложных складок, тем не менее не всегда можно добиться желаемого в один проход (ведь модификатор мы можем применить только 1 раз, после чего нужно колапсить стек). Сейчас нам дополнительно понадобиться обычный Chamfer.
Смотрим что нам дала такая детализация.
Пока оставим мягкую часть, позже к ней еще вернемся.
Перейдем к основе подлокотника, дополнительный Bevel Polygons а также Chamfer для жесткости углов.
Занимаемся основой дивана, тут нужно нарезать 12 пуговиц.
Если мягкая часть не вызвала больших проблем, думаю тут уже можно действовать свободно, вариантов масса, тем не менее использую Extrude Vertices для пуговиц, Chamfer Edges для жесткости углов и Slice Plane.
Дальше смотрим на MeshSmooth и действуем по ситуации.
Двигая ребра придаем больше мягкости.
По методу описанному для мягкой части, нарезаем стежки в два прохода, сначала AsimmetricScaleChamfer, и еще раз Chamfer.
Приводя в более аккуратный вид, можно сделать Weld или Сollapse лишних вершин.
Также настроим Symmetry для основы дивана.
Логично доходим к подушкам, абсолютно базовые действия, максимально простая сетка.
Остановимся на lowpoly подушках, дальше их можно дорабатывать, основываясь на базе знаний, которую вы уже получили.
Занимаемся декором торцевой части подлокотника.
Нам нужен будет сплайн-путь по которому можно размножить обьекты, повесим поверх стека модификатор Edit Poly (над MeshSmooth), в нем воспользуемся функцией Create Shape, преобразовав выделенные ребра по кругу в замкнутый сплайн.
Теперь можно удалить модификатор Edit Poly, и работать со сплайном.
Создаем сферу с минимумом необходимых полигонов, применяем Scale, заднюю невидимую часть можно удалить.
Привязываем сферу к сплайну через контроллер Path Constraint, после чего идем в Tools -> Snapshot, тут ставим галку Range, метод копированияInstance, количество копий подбирается индивидуально.
Не забываем загруппировать все элементы.
Вернемся к основной мягкой части, нужно сделать косметическую доработку, секрет тут заключается в поэтапном применении итераций сглаживания. Перед тем как начать, нужно убедится что еще редактируемая на первом уровне модель полностью готова, так как после сглаживания уже не будет возможности вернутся на первый уровень.
К примеру я обнаружил что не сделаны торцевые стежки, я их просто пропустил, конвертировать рано. Направляющие под них у нас есть, все та же процедура с AsimmetricScaleChamfer.
Тоже самое со второй чуть ниже.
Ну и с третьей в низу.
Теперь стежки удачно закончены, будьте внимательны.
За компанию уточняю шов подушки – Extrude Edges.
Основная мягкая часть полностью готова перейти в более многополигональное состояние.
Для этого применяем MeshSmooth с 1-й итерацией и обратно конвертируем в Editable Poly.
Для тех кто не понял, 1 итерация дала нам в 4-ро больше полигонов а значит и столько же дополнительных ребер, по которым мы теперь можем резать множественные складки.
Начнем с подлокотника. Способ с применением AsimmetricScaleChamfer и дополнительно Chamfer ‘ом в силе. ПараметрыAsimmetricScaleChamfer‘ а указаны.
После этого нужно правильно закончить складку, используем Target Weld и ручное смещение вершин на конце складок.
MeshSmooth показывает не плохой результат, продолжаем с остальными.
Такой же доработке подвергаем напряженные участки вокруг пуговиц, до сих пор работаем только с половиной модели, не составит труда на каждую или через одну пуговицу рандомно добавить по 2-3 складки с разной длинной. Использую AsimmetricScaleChamfer в один проход, после чегоCollapse окончаний.