Making of "Акула-пират"

Всем привет меня зовут Алексей я являюсь АРТ-лидом и ведущим - художником в одном из подразделений Saber Interactive, а так же веду небольшой CG блог в группе VK и канал на youtube. Спасибо редакции рендер.ру за предоставленную возможность написать статью, надеюсь кому-то она окажется полезной. В рамках блога был запрос от аудитории сделать персонажа в программе 3DCoat. В результате чего появился этот бесплатный видео-курс и его сокращённая версия.

Задача стояла по возможности сделать персонажа полностью в программе 3DCoat. Курс предназначен для тех кто немного знаком с 3D моделированием и знает хотя бы основные понятия. Так что надеюсь что тут не надо рассказывать что такое вершины, грани и полигоны.

За основу был взят концепт–арт «TOART STUDIO» 2D-художника «Yoyo», а его основе мы и будем делать модель персонажа (Рис.1).

1.png

Рис.1


Процесс создания персонажа разделён на классические этапы:
1. Создание высокополигональной детализированной модели (high-poly) методом скульптинга.
2. Создание низкополигональной модели (low-poly) путём ретопологии high-poly.
3. Создание UV-развёртки на low-poly модели (UV-mapping)
4. Запекание карт нормалей (Bake Normalmap).
5. Создание текстур. (Texturing)
6. Создание композиции.

И так...Открываем 3DCoat переходим в комнату «Скульптинга». Первое, что сделаем это добавим референс-изображение для ориентира на формы и цвет персонажа (Рис.2). Для этого...

2.png

Рис.2

1. Открываем всплывающее окно «Цвет» (горячая клавиша англ. «B»), его лучше закрепить в углу просто перетащив на нужную вкладку.
2. Выбираем тип цвета «изображение».
3. Выбираем изображение из файла.

Можно воспользоваться бесплатной программой «PureRef» которая работает поверх всех окон. Так же референсное изображение можно добавить прямо во вьюпорт для конкретной оси (Рис. 3).

3.png

Рис. 3

Нажимаем на соответствующую иконку, выбираем ось (обычно изображение для оси Х). Настраиваем положение, масштаб и прозрачность для удобной работы (Рис. 4).

4.png

Рис. 4

После того как добавили референсное изображение можно переходить к созданию high-poly.

Создание high-poly
В 3DCoat есть два режима работы с объектами в комнате «Скульптинга» это поверхностный и воксельный, которые переключаются прямо на слое кликнув на соответствующую иконку в виде буквы «V» или «S» (Рис.5).

5.png

Рис.5

В основном для скульптинга на начальном этапе я использую воксельный режим «V» в котором можно не обращать внимания на сетку и спокойно работать с формами. В дальнейшем конечно при проработке и детализации поверхности можно перейти и в поверхностный режим «S», который работает быстрее. Также в поверхностный режим слой переходит при операции «Decimate».
Добавляем «болванку» в сцену на основе которой будем моделировать. Это может быть примитив типа сферы или чтобы немного ускорить процесс - заготовка персонажа (Рис.6).

Также при скульптинге персонажа вам пригодиться знание анатомии. Тут могу посоветовать хорошую книгу «Анатомия для 3D-художников. Курс для разработчиков персонажей компьютерной графики».

6.png

Рис. 6

Я использую более проработанную болванку которая у меня есть (Рис. 7). Для более уверенного скульптинга рекомендуется потренироваться в создании таких болванок.

7.png

Рис. 7

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

Primitive.png Примитивы «Primitive» - добавление различных примитивов в сцену.

Transform.pngТрансформировать «Transform» - перемещение, вращение и масштабирование объекта.

Move.png Сдвинуть «Move» - позволят смещать поверхность в сторону учитывая альфу пера.

Pose.png Манипулировать «Pose» - позволяет так же как и инструмент «трансформировать» перемещать, вращать и масштабирование часть объекта с помощью маски выделения, что позволяет плавно с помощью градиента изменить часть объекта.

Curves.png Кривые «Сurves» - Позволяет удобно создавать ремни, провода, цепи, верёвки и т.д.

Cutoff.png Отрезать «Cutoff» - отсекаем и удаляем всё лишнее с помощью лассо(круглое, квадратное, произвольное и д.р. ) менять тип лассо на горячую клавишу «E».

Layer.png Слой «Layer» - Выдавливание поверхности в отдельный слой из маски нарисованной на другом объекте, очень полезно при создании базовых форм одежды, доспехов и другой экипировки. Можно задать смещение и толщину выдавливания.

SClay.png Мазать «SClay» - относиться к поверхностным инструментам не учитывая объем и альфу пера, можно быстро накидывать массу и сглаживать Shift-ом.

Rapid.png Быстроскульпт / в новой версии «Оформить» «Rapid» - относиться к поверхностным инструментам не учитывая объем и альфу пера, можно быстро накидывать массу и сглаживать Shift-ом.

Pinch.png Сузить «Pinch» - относится к поверхностным инструментам не учитывая объем и альфу кисти, можно быстро сузить от края к центру пера.

Smooth.png Сглаживание «Smooth» - Сглаживание поверхности с помощью пера, но обычно я сглаживаю с помощью горячей клавиши «Shift».

Scrape.png Стесать «Scrape» - Позволяет стёсывать фаски и делать плоские деформации.

Spikes.png Шипы «Spikes» - Позволяет создавать шипы на поверхности.

Cloth.png Ткань «Cloth» - Позволяет делать симуляцию ткани и создавать складки.

И так, сначала создаем анатомическое тело персонажа. Пользуемся симметрией - горячая клавиша «S». При моделировании придерживаемся правила от общего к частному, сначала подгоняем общие формы под силуэт референса. Полезно следить за силуэтом нажав на горячую клавишу «8». Постепенно увеличиваем количество полигонов в слое нажав на иконку снизу в окне иерархии (Рис. 8).

8.png

Рис. 8

Так же можно создавать уровни детализации с помощью вкладки «Мультиразрешение» постепенно увеличивая количество полигонов нажав на кнопку «Вверх» и при необходимости спускаться обратно нажав на кнопку «Вниз» если захотите поменять общие формы (Рис. 9).

9.png

Рис. 9

В конечном итоге когда мы приходим к созданию мелкой детализации (царапины, сколы, вмятины и т.д.), количество полигонов в сетке становится достаточно большое. Для слабых компьютеров это может быть критично для плавной скорости работы. Поэтому после того как сделан финальный вид какого-то элемента модели, его следует закэшировать и из воксельного состояния перевести в поверхностный «S» с помощью операции Decimate. Операция Decimate позволяет сохранить детализацию на поверхности там где она есть, а полигоны сокращать там где это не играет особой роли на силуэт (Рис. 10). Базовые операции будут доступны и в закэшированом слое.

10.png

Рис. 10

Для этого в окне «Степень кэширования», 1-выбираем степень кэширования (кратное сокращение количества полигонов), 2-нажимаем применить, 3-воксельный слой станет поверхностным, 4-появится иконка в слое нажав на которую всегда можно откатить закэшированный слой в исходное состояние.
Используя различные связки данных инструментов создаём объекты обмундирования, меняем им форму, двигаем и размещаем на персонаже. Для удобства работы создаем слои в «Иерархии» логически группируем объекты когда слоёв становится много. При необходимости объединяем слои перетаскивая друг на друга с зажатым Shift-ом.

При создании цепей создаём низко-полигональные болванки на основе которых создаем цепи с помощью инструмента «Кривые» из которых создаем поверхностный слой и перекидываем его в комнату ретопологии через авторетопологию путём децимейта, с нулевым значением, чтобы потом не мучатся с ретопологией цепей.
Когда мы делаем скульптинг во вкладке «Иерархия», каждый элемент желательно называть уникальным именем это нам пригодиться при запекании. В результате скульптинга мы получаем высоко-полигональную модель персонажа «Акулы пирата» (Рис.11), а также много слоёв в «Иерархии».

11.png

Рис. 11

После того как сделали high-poly модель переходим в комнату ретопологии.

Создание low-poly
Мэш-объекты в комнате «Ретопологии» независимы от мэш-объектов во вкладке «Иерархия» комнаты «Скульптинга» и добавляются они во вкладку «Ретопо-группы» (Рис. 12).

12.png

Рис. 12

Если мы делаем модель для игры то задача создать более простую сетку для «ригинга» и последующей анимации. Для этого заново строим сетку используя инструменты построения вершин и полигонов. Про то как работать в комнате ретопологии и как использовать инструменты посмотрите подробное видео.

Делая ретопологию создаем слои с такими же именами как и во вкладке «Иерархия» в комнате «Скульптинга». Важно чтобы объект в комнате «Скульптинга» имел такой же объект с таким же именем в комнате «Ретопологии» в «Ретопо-группах». Так как объектов очень много, что-то может уйти из виду. Но мы можем автоматически проверить, что все имена и группы в «Иерархии» комнаты «Скульптинга» соответствуют названиям объектов в «Ретопо-группах».
Для этого заходим в меню «Запечь» (Bake) - «Проверить соответствие групп и объектов», если имена совпадают появиться всплывающее окно с надписью «Имена ретопологизированных групп и объектов соответствуют друг другу». Жмем – «ОК». Если имена не совпадают или во вкладке «Иерархия» скрыты слои, появиться всплывающее окно со списком ретопо-объектов, у которых нет соответствующих объектов в «Иерархии» комнаты «Скульптинга».
В результате ретопологии мы получаем такой результат (Рис.13). И большое количество объектов в «Ретопо-группах» аналогичное объектам во вкладке «Иерархия».

13.png

Рис. 13

Дальше можно переходить к созданию UV-развёртки.

Создание UV-развёртки
Далее для каждого элемента добавляем швы. Для этого в разделе «UV-развёртка» выбираем инструмент «Разрезы» и добавляем UV-швы в местах где это будет менее заметно. Зажав Shift можно создать шов с помощью витка рёбер.
Перед тем как разворачивать необходимо создать отдельные UV-развёртки, в последующем это будут отдельные материалы (Рис. 14). В данном случае для этого персонажа я сделал четыре UV-развёртки, Body (тело), Outfit_down (обмундирование до пояса), Outfit_top (обмундирование выше пояса) и отдельно оружие ANCHOR (якорь).

14.png

Рис. 14

1-Зайдя в «Настройки» можно указать интервал между островками и расстояние от края.
2- Далее выбрав нужные элементы и нужную развёртку нажимаем, «Развернуть».
3-Для последующей упаковки с сохранением ориентации UV-островков я использую инструмент «упаковать UV-2» (Рис. 15).

15.png

Рис. 15

При необходимости всегда можно переместить тот или иной островок на другую UV-развёрку выделив его и нажать «переместить» (Рис. 16).

16.png

Рис. 16

С помощью манипулятора в окне «UV-превью» можно проводить трансформации как с отдельными островками так и с группами, выделив нужные из них. При равномерном разрешении относительно друг друга, островки, обычно серого цвета, если мы увеличили островок, он краснеет, если уменьшили он синеет (так показана разница в размере текселя). Топологически одинаковые островки можно также накладывать друг на друга (выделили один островок нажали Ctr-C, выделили другой нажали Ctr-V) (Рис. 17).

17.png

Рис. 17

Про то как использовать UV-инструменты можете посмотреть подробное видео.

После того как мы всё упаковали как нам надо то можно применить симметрию, для симметричных элементов. Тогда островки симметричных объектов останутся друг на друге (для экономии текстурного пространства), если вы не планируете экономить в текстурах можно разворачивать всё уникально.

18.png

Рис. 18

Далее переходим к запеканию карт нормалей.

Запекание карт нормалей
Перед тем как запекать карты нормалей делаем предварительные настройки. Заходим в меню «Запечь(Bake)», далее «Параметры запекания» и настраиваем зону сканирования. Для просмотра зоны сканирования внутрь или наружу, меняем тот или иной чекбокс. Можно также пройтись кисточкой в конкретном месте и увеличить или уменьшить зону сканирования в конкретном месте. После того как настроили нажимаем «OK», теперь настройки сохранены (Рис. 19).

19.png

Рис. 19

Так как мы ранее проверили соответствие имён объектов «Иерархии» и «Ретопо-группы» при запекании каждый объект будет запекаться без влияния на него соседнего объекта который с ним пересекается. Это надо чтобы избежать артефактов пересечения объектов при запекании карт нормалей.
Далее можно переходить к запеканию. В меню «Запечь»(Bake) выбираем пункт «Запечь с картой нормалей». Откроется окно с зоной сканирования, что мы уже предварительно настроили, поэтому жмём «ОК». После запекания объекты попадают в комнату рисования в качестве новых меш-объектов. Нам открывается окно импорта для попиксельного рисования (Рис.20). Тут мы можем перед запеканием карт нормалей выставить необходимое разрешение будущих материалов для каждой UV-развёртки. Мне, для комфортной работы, достаточно 2к, но можно было объединить и в одну UV-развёртку и запечь всё в 4к. Остальные настройки оставляем по умолчанию и жмём «ОК».

20.png

Рис.20

После того как карты нормалей запекутся, нас перекинет в комнату «Рисования», где мы увидим нашу модель, текстурный слой «Normalmap» и другие текстурные слои соответствующие отдельным объектам. Их можно удалить выбрав слой и нажав иконку «корзина» внизу вкладки «Слои». Мэш объекты в комнате «Рисования» находятся во вкладке «Объекты» (Рис.21).

21.png

Рис.21

Более подробно про запекание карт нормалей и других текстурных карт можно посмотреть соответствующее видео.

Далее Переходим к дальнейшему текстурированию.

Текстурирование
После того как удали все слои (или объединили), которые создались по именам объектов, создаём внизу слой Basecolor1 и заливаем базовым цветом согласно референс-изображению (Рис.2). Используем для этого инструмент «Заливка» и «Кисть». Как работают те или иные инструменты в комнате рисования можете посмотреть видео с 3Dcoat (TIP №66 ) по 3Dcoat (TIP №76 ), расписывать работу каждого инструмента очень долго.
Для отображения канала цвета нажимаем горячую клавишу «2» на клавиатуре. В итоге нижний слой с базовыми цветами получаем такой (Рис.22):

22.png

Рис.22

Далее для ускорения текстурирования запечём освещение из комнаты рендеринга DirectLightMap в канал цвета (Рис. 23).

23.png

Рис. 23

Предварительно в комнате рендеринга выставляем равномерное освещение с мягкими тенями. Далее запекаем DirectLightMap, выбираем в списке «Освещение из комнаты рендеринга» (Рис. 24) .

24.png

Рис. 24

Создастся новый слой с картой «DirectLightMap»,

25.png

Рис. 25

Она добавит объёма нашему слою «BaseColor1», для этого её надо перевести в режим «Multiply». Можно дублировать слой «DirectLightMap» и объединить с «BaseColor1». Для этого правой кнопкой щёлкнем по слою «DirectLightMap» и выберем «Применить блэндинг», вся цветовая информация которая есть ниже запечётся в слой «DirectLightMap», и он изменит режим наложения на «Стандартное». Переименуем слой в «Basecolor2(Directlight)».

26.png

Рис. 26

Далее можно добавить детализации за счёт карты нормалей. Для этого дублируем текстурный слой «Normalmap», переводим его в режим наложения «Стандартный», после чего заходим в меню «Текстуры», далее «Регулировка», потом «Оттенок/насыщенность/яркость» (Рис. 27).

27.png

Рис. 27

Откроется окно регулировки (Рис. 28). Ставим галочку в чекбоксе «Предварительный просмотр» и убавляем «Насыщенность» до нуля.

28.png

Рис. 28

После чего можно с помощь регулировки контрастности и яркости данного слоя, можно добиться более чёткой детализации и перевести слой в режим наложения «Multiply», применив блендинг к данному слою. Таким образом получим больше детализации в канале цвета. Переименуем слой в Basecolor3 (Normal) (Рис. 29).

29.png

Рис. 29

Далее запекаем блики и отражения на металле в канал цвета. Включим отображения всех каналов нажав горячую клавишу «5» на клавиатуре. Отключим канал «Глубины» и «Цвета» оставим только канал «отражающей способности». Для этого создадим отдельный слой на который будем добавлять информацию в два канала, в канал металличности и шероховатости. Выбрав инструмент «Заливка» регулируя шероховатость и металличность, заливаем объекты адекватными значениями (Рис. 30) (примерные значения для металлических объектов металличность-100%, шероховатость-30%).

30.png

Рис. 30

1-Выбираем подходящую желательно черно-белую панораму, чтоб не влияли другие цвета на объект. Выставляем нужные блики вращая влево - вправо панораму зажав «Shift» + левая кнопка мыши в свободном месте вьюпорта или на соответствующую иконку-2 (Рис. 31).

Чтобы адекватно запечь блики тут почему-то надо выставить максимальный свет вращая вправо наведя курсор мыши на иконку -3, но после запекания надо обратно выставить 100.

31.png

Рис. 31

Перед запеканием во вкладке «объекты», скрываем все объекты кроме металлических. Далее Переходим в меню запекания (Рис.23) и выбираем «Свет и отражения» (Рис. 32).

32.png

Рис. 32

В результате запекания создастся новый слой «LightandReflection». Объединяем его с копией слоя Basecolor3(Normal) и переименуем в Basecolor4(Reflect) (Рис. 33).

33.png

Рис. 33

Далее для ускорения текстурирования нам так же может понадобится ещё несколько текстурных карт, которые мы запекаем с помощью инструмента запекания, это карты «Глобальное освещение» (AmbientOcclusion), «Карта толщины» (ThicknessMap), «Карта впадин» (кривизны) (CavityMap(RGB)), «Карта кривизны на основе освещения» (LBCurvature) (Рис. 34).

34.png

Рис. 34

Их хорошо применять с различными режимами заливки. Про режимы заливки можно посмотреть видео.

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

Все манипуляции я рекомендую делать в отдельных слоях и уже потом сливать их в один когда вас устроит результат.

35.png

Рис. 35

Создадим новый слой Basecolor5(HandPaint), в него постепенно по мере обрисовки модели, будем сливать новые слои. С помощью инструментов «Кисть», «Пипетки» (горячая клавиша «V») и «Выбора цвета» (горячая клавиша англ. «B»), дорисовываем детализацию (татуировку , шрамы , блики, царапины и т.д.) учитывая референс-изображение. В итоге обрисовки модели получаем такой слой Basecolor5(HandPaint) (Рис. 36).

36.png

Рис. 36

Примерно по тому же принципу, делался якорь (Рис.37), но тут я сначала в комнате «Моделинга» делал ретопо-основу, добавляя жёсткие грани сглаживал всё «сабдивом» и перекидывал в комнату «Скульптинга» через меню «Геометрия» - «Ретопо-меш -> Скульпт меш», потом добавлял детализации, и дальше уже дорабатывал Low-poly, разворачивал, запекал и текстурировал.

37.png

Рис. 37

После того как текстуры готовы экспортируем их через меню «Файл» - «Экспорт объектов и текстур». Выбираем путь к папке куда будем экспортировать, формат текстур, типы текстур (в данном случае это карта цвета и карта нормали). Жмем Экспорт.
Для создания композиции по такому же принципу сделал несколько пропсов с сокровищами (Рис. 38).

38.png

Рис. 38

Создание композиции
Так как ригинг как таковой отсутствует в 3DCoat и расставлять объекты в комнате рисования невозможно. Обходной путь это двигать полигоны в комнате «Трансформ» или через комнату «Ретопологии», двигать полигоны и перезапекать объекты в комнате «Рисования», что конечно долго и не удобно.

Модель и текстуры после экспорта из 3DCoat я импортирую в программу Cinema4D и уже там делаю ригинг, выставляю персонажа в позу и расставляю пропсы. В итоге получилась такая композиция (Рис. 39).

39.png

Рис. 39

Возможно при написании статьи я упустил какие-то моменты но весь подробный процесс с комментариями есть в плейлисте. Данная статья это скорее компас в каком направлении следует двигаться при работе в 3DCoat.

Спасибо за прочтение! Надеюсь статья кому-нибудь окажется полезной. Занимайтесь компьютерной графикой и мирного неба вам над головой!

750 0 850 5
1
2024-07-17
Thank you, great and clear
RENDER.RU