Стилизуем природу в 3D: растительность, анимация, шейдеры

Драгос Матковски разобрал пайплайн своей стилизованной трехмерной среды для Unity.

Стилизуем природу в 3D: растительность, анимация, шейдеры

Румынский 3D-художник Драгос Матковски создает стилизованное окружение и делится ассетами в Unity Asset Store. В этой статье он рассказывает о рабочих и мыслительных процессах при создании проекта The Illustrated Nature.

Что такое The Illustrated Nature?

Это трехмерная среда, созданная Драгосом Матковски для тех, кто хочет рассказать историю в красивом и живописном мире, но не может построить его самостоятельно.

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

The Illustrated Nature состоит из серии стилизованных моделей растительности, шейдеров, эффектов и сценариев, объединенных в полноценную сцену со звуками и музыкой. Такая подача показывает ее полезность и привлекательность.

Стилизуем природу в 3D: растительность, анимация, шейдеры

Каждый кадр — отдельное произведение

По словам художника, все началось с эксперимента, в котором он объединил мазки цифровой кисти с трехмерной геометрией. Драгос Матковски стремился создать сцену, похожую на цифровую картину. Он не пытался достичь реализма, а искал живописный 3D-вид. В этой работе каждый фрейм — словно настоящий рисунок.

Изучение картин позволило мне лучше понять, как формы, цвета, освещение и композиция взаимодействуют друг с другом для создания красивого изображения. Постепенно это материализовалось в проекте The Illustrated Nature, где я сосредоточился на объединении двух близких моему сердцу миров: цифровой живописи и 3D-графики.

Ассеты

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

Стилизуем природу в 3D: растительность, анимация, шейдеры

Моделинг деревьев

Для листвы Драгос Матковски смоделировал простую пересекающуюся сетку из трех четырехугольников, которые удерживают текстуру листа. Он распределил ее по бóльшей поверхности, напоминающей объем листьев на ветке.

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

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

Ствол и ветви моделируются с помощью сплайнов.

Чтобы подготовить к анимации вершины, Драгос Матковски окрасил альфа-канал цветов вершин градиентом сверху вниз и использовал это для управления силой изгиба ассетов по оси Y. Затем использовал зеленый канал, чтобы нарисовать ветви, листья и придать им фоновое движение с бóльшим шумом.

Стилизуем природу в 3D: растительность, анимация, шейдеры

Текстурирование

Все текстуры The Illustrated Nature абстрактные. Это сделано намеренно. Текстура одного листа — это несколько мазков кистью, разбросанных по площади случайным образом. Другая текстура аналогичным образом формирует квадрат, а иглы сосны — это потертые линии.

Для растительности я использую белые текстуры с альфа-каналом, сжатые до размера 256х256 px. Все цвета в сцене контролируются через свойство цвета материалов. Это позволило легко изменить цвет ассетов и сделало процесс раскрашивания сцены более похожим на реальное рисование.

Анимация

Для растительности художник использовал два типа анимации: vertex [последовательность ключевых кадров представляет собой серию измененных позиций вершин полигональной сетки] и с помощью UV-развертки. Обе работают на уровне шейдеров.

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

Стилизуем природу в 3D: растительность, анимация, шейдеры

По мнению дизайнера, добавление UV-анимации на листьях «продало» проект и сделало его привлекательным для использования.

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

Окружающая среда

Стилизуем природу в 3D: растительность, анимация, шейдеры

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

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

Для размещения практически всех ассетов сцены Драгос Матковски использовал Prefab scattering tool, а также Prefab Painter 2. Все модели растительности имеют LOD [Level of Detail — разные уровни детализации в зависимости от удаления от камеры], что упростило размещение объектов в разных частях мира.

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

Пример движения воды. Слева реальная съемка, справа — анимация.

Звуки и музыка

Модель окружающей среды была бы неполная без звукового сопровождения.

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

Драгос Матковски записал пение птиц, брызги воды, ветер и звук шагов по разным поверхностям. Для очистки он использовал Adobe Auditio. Также он использовал музыку с Soundcloud.

Шейдеры

Стилизуем природу в 3D: растительность, анимация, шейдеры

Художник хотел стилизовать и выдвинуть цвета сцены за пределы реализма. Он использовал Amplify Shader Editor, чтобы создать все шейдеры и настроить их под свои нужды. В анимации воды и тумана использовались шейдеры Colored Fog и Colored Water.

Шейдер Colored Water

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

Стилизуем природу в 3D: растительность, анимация, шейдеры

Шейдер Colored Fog

Этот шейдер Драгос Матковски создал для изменения тумана по умолчанию. Он имеет 3 цветовых свойства, которые можно использовать для управления цветом и плотностью тумана вблизи и вдали от камеры.

Инструменты, включенные в The Illustrated Nature

Окружающая среда включает в себя несколько небольших скриптов, которые улучшают работу над проектом в целом [пользователь получает их при покупке ассетов].

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

Скрипт Wind Manager

Нужен для управления анимацией ветра глобально в сцене.

Скрипт Color Manager

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

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

Что дальше?

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

Официальный сайт Драгоса Матковски: www.artkovski.com.

Facebook @artkovski.

Twitter @matkovskid.

Статью перевела Юлия Хлебко, автор в Smirnov School. За помощь с переводом благодарим автора курса «Основы Blender» Алексея Щербакова.

100100
10 комментариев

Комментарий недоступен

2
Ответить

Комментарий недоступен

Ответить

Комментарий недоступен

2
Ответить

Я по таким мирам в VR гулял, красиво.
Полежать в траве, в тени дерева было круто :)

1
Ответить

Было - удаляйте
@Владимир Семыкин ты уже присылал

Ответить

В самом начале отмечен источник, а в конце статьи мы отметили, что это наш перевод)
Мы не заметили, что такой перевод уже есть, за что горячо просим прощения♡ Но мы честно сами перевели и подготовили эту статью) Нам очень жаль, что мы не можем выполнить Вашу просьбу 🙂

Ответить