Создание римской шторы - Ретопология. Урок от Usco и gus_ann. Часть 2

14 Dec, 2014 Usco (3d modeling expert)

Usco:

Что же такое «ретопология» и с чем ее едят?

Ретопология - это изменение топологической сетки объекта, с сохранением по возможности его формы. Бывает нужно, чтобы сетка состояла исключительно из четырёхугольных полигонов, либо из треугольников – например для игр (где нужно использовать движение персонажей). "Ре-топология" - изменение топологии трехмерного объекта. Например, ретопологией можно назвать уменьшение плотности сетки, ну или вообще любое изменение edge loop flow. Форма объекта при этом меняется не сильно, а сетка из ребер изменяется так чтобы точнее апроксимировать объект. Частный случай - изменение топологии объекта так, чтобы остались только квадратные грани.

Импорт модели в 3ds Max

Открою 3Д макс.

Выберу в Меню категорию Импорт и в ней одноименный пункт Импорт:

Затем выберу файл с оптимизируемой моделью в формате obj и нажму Open. Появится окно выбора параметров импорта, поставлю галочки как указано на рисунке, нажму Import:

После импорта штора будет выделена автоматически:

Для ретопологии нам понадобится вторая штора в развернутом виде. Перед импортом второго варианта шторы нужно переименовать все элементы первой, чтобы не было совпадение имен. Выделю всё, и в основном меню Tools, выберу Rename Objects:


После этих действий, все элементы первой шторы будут названы следующим образом:


Далее немного сдвину основную штору, это нужно для того, чтобы при импорте второго варианта, не было наложения друг на друга, потому что она встанет на ее место:


Настрою показ статистики - количество полигонов. В окне перспективы нажму на плюс [+], и выберу ConfigureViewports...:


Далее перейду на вкладку Статистика, и в ней выделю пункты как показано на рисунке:


Импортирую второй (развернутый) вариант:

Примечание: Цвета при импорте могут отличаться.


Далее переименую новые элементы. Для примера назову их Шаблон. Вот что будет на данный момент:


Ретопология в 3ds Max

Рассмотрю швы на центральном элементе. Для образования одной из сладок понадобилось примерно 4 ребра, для другой 3:


Построю упрощенный вариант на его основе. Для этого скрою все остальные элементы:

Выберу привязку (Snaps Toggle) и настрою её:

Обведу простым сплайном весь элемент по кругу, «привязываясь» по крайним-угловым точкам:


Конвертирую в Поли (Convert to Editable Poly), разрежу пополам:


Добавлю рёбер ориентируясь по шаблону:

Примечание: В дальнейшем я буду использовать инструменты на панели Ribbon:


Эти ребра добавляются очень легко, если использовать Swift Loop:


Но, если с нижними и боковыми ребрами проблем не возникает, то как только я захочу построить строго горизонтальное ребро чуть выше, Swift Loop будет продолжать строить его «угловым», ровняясь по нижним ребрам, а не по верхним горизонтальным:


Чтобы это исправить я сделаю следующее.


1. Поставлю ребро в любом месте (оно будет выделено красным). Далее появится маркер в виде предполагаемого ребра для следующего построения. Он будет двигаться вместе с моим указателем мыши (обведен на рисунке зеленым кружком) - не обращаю пока на него внимания:


2. Зажму сочетание клавиш Ctrl+Alt (маркер на время исчезнет, останется только построенное ранее ребро). НЕ ОТПУСКАЯ Ctrl+Alt построю новое ребро - двигая мышкой старое. На месте где стояло старое ребро останется белый квадратик. Этот квадрат я могу как бы перемещать (за счет установки ребра в это место, и отпуская клавишу мыши . ОТПУСКАЕТСЯ ТОЛЬКО КЛАВИША МЫШИ - Ctrl+Alt ОСТАЕТСЯ ЗАЖАТЫМ). Далее мышкой двигаю ребро на нужное место. Смысл в том, что до квадратика будет «угловое» ребро, а после - «горизонтальное». Установлю ребро ориентируясь по шаблону. Остальные ребра построю без сочетания клавиш Ctrl+Alt. После построения основных ребер, режим Swift Loop выключу:


Добавлю дополнительных рёбер для швов используя RingMode и Connect Edges, согласно плану:


Открою все скрытые ранее элементы:

Теперь у меня есть:
А - основная штора
Б - шаблон
В - оптимизированная (я её отодвинул от шаблона - чтоб было видно для примера)


Далее я сложу шаблон Б по форме оригинала А. За это отвечает модификатор Morpher:


После этого я сделаю так, чтобы оптимизированная В штора тоже повторяла контуры шаблона Б. Для этого нужен модификатор Skin Wrap. После применения смотрю на счетчик процентов, он должен дойти 100% и «исчезнуть»:


Вы спросите: - А почему нельзя сразу применить Morpher на оптимизированную В?

Дело в том, что Morpher реагирует на количество совпадающих точек. Если точек не одинаковое количество то работать не будет, но и это еще не всё, он будет перемещать точки на то место, где стоят «оригинальные» точки у родительского объекта. Другими словами — если есть квадрат и треугольник, и оба с одинаковым количеством точек, то применив Morpher на треугольник, он будет стремиться превратить треугольник в квадрат, «растягивая» точки.

Теперь необходимо сделать правильную раскладку на центральный элемент шторы. Для этого создам VrayMtl в слот diffuse положу карту Checker:

На оптимизированную штору B назначу созданный материал, а также накину модификатор UVWMap, тип Planar, размер по высоте и ширине одинаковый:

Далее «сложу» штору. Для этого нужно подкрутить в Morpher значение с 0 до 100:


Вот что получилось:

Теперь сделаю оптимизированные боковины. Для этого возьму простой Plane и построю по контуру оригинала с привязкой, настрою значения количества ребер по вертикали. Остальные ребра добавлю с помощью Connect Edges, ориентируясь на центральную часть:


Сделаю копию, и передвину её с привязкой на другую боковину:


Займусь нижними элементами. Для начала построю сплайн из Линии, конвертирую в Editable Poly:


Ребра буду добавлять только в те места, где есть сильное «смятие» ткани у оригинала:


Ребра буду добавлять только в те места, где есть сильное «смятие» ткани у оригинала.

После того как сделаю 1й элемент, остальным сделаю его копии и отражу их по горизонтали и вертикали. Передвигать буду с привязкой. Далее назначу каждому элементу модификатор Morpher и Skin Wrap как делал с центральным элементом:


Подкручу все нужные значения в Morpher до 100.

Не забудем применить модификатор UVWMap, тип Planar для всех частей шторы:

Сравню с оригиналом:


Количество полигонов до, и после «ретопологии»:


Все «оптимизированные» элементы с модификатором Skin Wrap переконвертирую в Editable Poly, остальное удалю. Штору выровняю по центру координат. Cохранюсь.

Штора готова.

Примечание: Программа MarvelousDesigner 4 (именно эта версия) имеет дополнительную возможность построения квадратной сетки. Для этого необходимо выделить все составляющие шторы, зайти в PropertyEditor и в подменю Misc выбрать тип сетки Quad:

Но если посмотреть на созданную сетку внимательней, то можно увидеть, что она построена немного криво и содержит незначительное количество треугольников, хотя и уменьшает количество полигонов сетки по сравнению с изначальной – полностью треугольной:

gus_ann:

Ретопология шторы в Zbrush

Рассмотрим еще один вариант ретопологии шторы в программе ZBrush4R6. Будем использовать именно эту версию программы, т.к. только в ней появился замечательный инструмент ZRemesher.

Откроем ZBrush. При открытии программа будет иметь такой вид:

Уберем всплывающее меню Light Box:

Следующий шаг – импорт шторы в ZBrush.

Нажмем на кнопку Import, выберем нашу штору в формате obj, нажмем на Открыть:

При этом мы увидим, как модель появилась в списке импортируемых объектов:

Встанем в основное окно программы и потянем мышкой, зажав левую кнопку – штора появится в программе:

Нажмем на кнопку редактирования Edit, чтобы была возможность редактировать модель:

Для отображения сетки модели нажмем инструмент Poly F:

Если взять инструмент поворота Rotate и повернуть штору изнаночной стороной, то мы увидим, что с изнанки, там, где нет так называемой двойной геометрии (односторонняя плоскость по сути), плоскость шторы пропадает из видимости:

Чтобы отображение геометрии срабатывало в любом случае, нажмем кнопку отображения нормалей Display PropertiesDouble:

Для ретопологии пойдем в меню GeometryZRemesher:

В ZRemesher нажмем следующие кнопки – Freeze Border (заморозка границ объекта, нужен для того, чтобы при ретопологии штора не потеряла своих основных форм). Далее нажмем кнопку ZRemesher:

ZBrush начнет просчет ретопологии, о чем будет говорить строка просчета в верхней строчке программы:

Дождитесь окончания просчета, после чего вы увидите, как сетка шторы изменилась:

Если для Ваших целей сетка получилась мелкой, то можно при ретопологии изменять параметр Target Poligon Count, чем он меньше, тем крупнее сетка. А также можно воспользоваться кнопками Half (половина от исходника), Same (тоже количество) и т.д.:

В данном случае я использовала значение Target Poligon Count равным 30.

ZBrush – не хороший человек, не сохраняет развертку на модели при импорте формата obj. (При экспорте из Marvelous Designer наша штора имела развертку).

Поэтому придется ее сделать.

Пойдем в Zplugin – UV Master:

Выключим симметрию Symmetry и включим Unwrap:

Нажмите Check Seams (проверить швы), а также кнопку Flatten (посмотреть развертку):

Для выхода из окна развертки нажмите галочку UnFlatten:

Далее необходимо экспортировать штору в формат obj:

Импортируем штору в Макс, посчитаем количество полигонов:

Посмотрим как же ZBrush развернул штору.

Для этого я использую карту, похожую на карту Checker, но имеющую направление:

Положу ее в слот diffuse cтандартного VRayMtl и назначу материал на штору:

Увижу, что ZBrush (нехорошим человеком это уже не назвать!) сделал развертку под углом. Чтобы поправить положение я выделю все элементы шторы, назначу на них модификатор Unwrap UVW, открою окно развертки и поверну элементы шторы как мне надо:

Проверю как развертка лежит на модели

Опять - 25! Цифры смотрят не в ту сторону:

Зайду в Unwrap UVW и отзеркалю все элементы по горизонтали:

Ну наконец получилось!

Примечание: Операция по объединению частей шторы в единый Поли объект требуется в любом случае, вне зависимости от того, каким способом была произведена ретопология модели.

Применю к основной ткани один материал:

А ко всем боковинкам другой:

Выделю все элементы, преобразую их в Editable Poly:

Зайду в Editable Poly любого элемента, нажму на кнопку Attach (присоединить) и прощелкаю все оставшиеся элементы:

При присоединении элементов выскочит такое окно. Поставьте параметры как на скриншоте ниже:

После объединения всех элементов в единую поли возьмем материал шторы пипеткой и увидим, что он превратился в Multi/Sub-Object:

В этом уроке мы рассмотрели несколько вариантов ретопологии модели, на примере шторы. Каждый из них может быть использован Вами в зависимости от конкретной ситуации и стоящей перед Вами задачи.

Как говорится – Свой вариант выбери сам!

Создание римской шторы - Marvelous Designer. Урок от gus_ann. Часть 1

Создание римской шторы - Ретопология. Урок от Usco и gus_ann. Часть 2

Создание римской шторы - Визуализация в оконном проеме. Урок от gus_ann. Часть 3


27 Dec, 2014 Андрей
27 Dec, 2014 # Re: Создание римской шторы - Ретопология. Урок от Usco и gus_ann. Часть 2
Спасибо большое за урок, пользуюсь брашем обычно!Первый урок по этой теме тоже сильно помог!

Комментировать

Имя:  


Анти-спам (отметьте пункты, с которыми Вы согласны, и уберите отметку, с которыми - нет)
Да, я спам-бот.
Да, я человек.
Правила Пользования Сайтом

RenderStuff © 2008