Главная цель этой презентации — показать техническую часть проекта, решения и шаги, принятые по созданию моделей, текстур и сцены.
Этап I. Блокинг

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

Продолжаем работать над созданием простой геометрии, которую будем в будущем усложнять и детализировать. Один из интересных элементов — гусеницы танка. По сути, они состоят из определенного кол-ва одинаковых звеньев, что упрощает создание модели. Делаем одно звено, добавляем модификатор array и curve с предварительным созданием кривой примерно нужной формы и у нас уже есть требующийся результат. Немного «добиваем» форму кривой и модель готова.
После этого добавляем оставшиеся мелкие объекты и переходим к детализации и хай-полькам.
Этап II. Детализация и создание high-polly объектов.

В данном проекте высокополигональных объектов много не будет, ведь это просто не нужно. Единственные объекты, нуждающиеся в предварительной запечке хай-полей это дуло, колеса и гладкие люки. Накидываем subdivision, настраиваем грани и качество модификатора и радуемся качественным моделям. Создаем копию полученных хай-полей и упрощаем геометрию через модификаторы/аддоны для получения лоу-поли объектов, на которые потом будут запекаться хай-поли.

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


Заканчиваем работу над деталями и наслаждаемся финальным результатом модели.
Этап III. UV и текстуринг.

Разделяем объекты на группы для упрощения работы над текстурами и создания разверток. Учитываем размер объектов, их расположение и какие текстуры будем на них накладывать.

Создаем UV развертки. С учетом размера объекта, его видимости, важности и количества объектов в текстурной группе подбираем размер uv холста и выставляем размер самих разверток. В зависимости от объекта и его развертки можно применить автоматическую паковку (но не автосоздание развертки т. к. это искажает относительность размеров), либо можно нарезать объекты вручную. В этом проекте я использовал исключительно автоматический вариант с последующей ручной правкой, ведь все объекты получились достаточно простой формы, а текстуры не будут сильно сложными.
Переходим к созданию текстур.


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


Этап IV. Подготовка сцены и рендер.
Выставляем свет, настройки камеры, добавляем все объекты и накидываем на них текстурные карты. Выставляем кадр и «фотографируем» результат.




Ландшафт и окружение
В качестве окружения решил сделать небольшую лесостепную местность.

Создаем плоскость подходящего размера, усложняем сетку и в режиме скульптинга создаем неравномерность ландшафта. Добавляем низину для модели танка и делаем простые следы от гусениц. После этого создаем низкополигональную копию. Запекать текстурные карты хай-поли на этот раз я не стал, так как объект очень крупный и на это требуется большое кол-во ресурсов и кроме того в таком масштабе это не имеет большого смысла (в этом конкретно проекте).

Для создания растительности изначально планировал использовать аддон gscatter, но с учетом масштабов сцены пришлось от этого отказаться, т. к. библиотека аддона предлагает исключительно высокополигональные модели, что я не могу позволить (во имя оптимизации). По итогу трава создавалась через создание частиц волос с привязкой к модели травы (получена из бесплатной библиотеки ассетов). Точно так же поступил с кустами.

Деревья планировал сделать через аддон sapling tree gen, но и от этого отказался по техническим причинам. В итоге просто нашел пару качественных бесплатных моделей деревьев (не горжусь, но что ж поделать) и добавил их на сцену.
При всех попытках оптимизации геометрии, предварительная сцена получилась все равно нагруженной и состояла из 7.5 миллионов полигонов.
Текстуринг и подготовка сцены проходили по точно такому же пайплайну и после этих этапов все было готово к финальному рендеру.






