Создание открытых пространств и растительности в Unreal Engine 4

Рисовые поля и детализация деревьев.

Художник по окружению из Ubisoft Руди Ламотт (Rudy Lamotte) рассказал сайту 80.lv о создании открытого пространства и растительности в Unreal Engine 4. С разрешения главного редактора портала Кирилла Токарева мы публикуем главное из материала.

Создание открытых пространств и растительности в Unreal Engine 4

По словам Ламотта, вдохновение для создания окружения он черпает как из реального мира, так и из игр. В этом конкретном случае его вдохновила Ghost of Tsushima, поэтому он решил попробовать сделать открытое пространство на Unreal Engine 4, хоть и знал, что столкнётся с некоторыми трудностями. Для референсов Ламотт искал в Google фотографии рисовых полей в Японии.

Создание открытых пространств и растительности в Unreal Engine 4

Обычно при работе над окружением художник использует world machine, но в этот ландшафт был создан при помощи сайта Terrain Party. С него Ламотт взял спутниковые данные рисовых полей у города Тиба. Поверх карты из Google он наложил маску, созданную в Photoshop. Рисовые поля были помещены с помощью Houdini. Затем художник импортировал карты высот в Unreal Engine 4.

Создание открытых пространств и растительности в Unreal Engine 4

Растительность

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

Создание открытых пространств и растительности в Unreal Engine 4

Конечно, должны быть очевидные исключения в виде деревьев, которые не так густы, как остальные. У Ламотта было три разных типа крон и стволов. Их комбинаций вполне хватило. Всё зависит от проекта и того, как вы хотите, чтобы он выглядело в итоге. Кроме того, можно сделать динамические формы деревьев, как на правом изображении.

Создание открытых пространств и растительности в Unreal Engine 4

В SpeedTree можно добавить расширение ствола к его низу. Это очень важно, потому что так деревья будут выглядеть реалистичнее.

Создание открытых пространств и растительности в Unreal Engine 4
Создание открытых пространств и растительности в Unreal Engine 4

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

В зависимости от того, над какой игрой вы работаете, вам нужно найти баланс и сделать особо детальными те места, куда будет смотреть игрок.

Создание открытых пространств и растительности в Unreal Engine 4

Уровень детализации в деревьях Ламотта не превышает 10 тысяч. Однако если нужно выделить какие-то из них, то LOD можно и поднять, но надо помнить, что в большинстве случаев, чем меньше — тем лучше.

Для lod0 деревья Ламотта имеют 9995 tris, а для lod1 он делит это число на два и так далее. Замаскировать низкий уровень детализации деревьев вдалеке можно с помощью листвы. Таким образом, сохраняется объём крон. В противном случае, некоторые деревья будут иметь исчезающие ветки и дыры в кронах.

Создание открытых пространств и растительности в Unreal Engine 4

Вот так выглядит подменю LOD для листвы. Здесь вы можете снижать количество листвы вместе с уменьшением уровня детализации. Size Scale позволяет увеличивать размер оставшихся листьев, благодаря чему сохраняется объём крон. В строке Keep вы можете указать, сколько листьев должно остаться.

Создание открытых пространств и растительности в Unreal Engine 4

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

В зависимости от того, какое дерево вы создаёте, вам нужно найти текстуры для листьев. Вы можете либо использовать фотографии, либо создать собственные с помощью 3ds Max, ZBrush или любой другой программы. Экспортируйте созданный высокополигональный меш в SpeedTree и распространите на несколько веток. На основе полученного результата нужно создать атлас, а затем сделать из него низкополигональный меш с помощью любого 3D-редактора.

Создание открытых пространств и растительности в Unreal Engine 4

Постпобработка

Для побочной растительности вроде травы вы можете задать дистанцию, на которой она пропадает. В режиме Foliage в Unreal Engine 4 вам нужно щёлкнуть на статичный меш, который вы разместили, чтобы открыть подменю Instance Setting.

Тени отключены при LOD ½ потому что это снижает производительность
Тени отключены при LOD ½ потому что это снижает производительность

Ламотт использует направленный свет и skylight. Кроме того, на сцене присутствуют Height fog и Atmospheric fog. Для небесного света можно включить HDRI для более реалистичного освещения.

Создание открытых пространств и растительности в Unreal Engine 4
4848
16 комментариев

А такое есть на ваших рисовых полях?!

16
Ответить

На счет симметричных ассетов деревьев - спорно. Я наоборот замечаю что все они одинаковые и нет никакой уникальности и интереса. Даже тень они будут отбрасывать почти одинаковую. А уникальная тень хорошо смотрится на стенах различных построек.

Обычно в асимметричных деревьях при расстановке делают случайный поворот/наклон/масштаб чтобы игрок не замечал их одинаковости.

В Unity из коробки есть продвинутый редактор деревьев который позволяет генерировать уникальные деревья с возможностью тонкой настройки. Можно создать свое дерево буквально до листочка. Это позволяет избежать одинаковых копий растительности. По поводу UE не скажу, не работал с ним, наверняка и там есть что-то подобное.

10
Ответить

Меня настораживает такой контент.

Геймдев на DTF рискует стать сборником переводов нескольких профильных сайтов.

Контент сам по себе классный - это бесспорно.

Нос вот все эти переводы ИМХО для не самых далеких людей, которые в 2018 (!) в англ не смогли.

5
Ответить

Геймдев на DTF после перепокупки изначально был сборником переводов нескольких профильных сайтов.fixed

8
Ответить

Зачем знать англ в 2к18, когда есть переводчик?

2
Ответить

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

2
Ответить

Вас и без меня заминусят ._.

Ответить