Original size 1140x1600

Kitsunetsuki project: Экономим графику, графируем экономику…

47

Игра представляет собой мультиплеерный шутер от третьего лица в стиле аниме и сеттинге Sci-fi, Cyberpunk.

Геймплей основан на совмещении стрельбы с паркуром и уворотами, вдохновлен такими играми как S4 League и GunZ.

Разработка ведется на движке Panda3D, с собственным рендер пайплайном.

Loading...
Loading...

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

На одежде используется атлас складок в UV0(карта нормалей + карта затемнений), и по vertex color (A) определяется сила складок, от 0 до 1.

Таким образом, складки могут вращаться, меняться в размере и пропорциях в процессе создания развертки под любым углом и многократно использоваться повторно, швы же прячутся нулевым значением vertex color (A). В UV1 расположена карта цвета, и взаимодействует с vertex color (RGB), а также картой затемнений с UV0.

В нашем случае это решает проблему с ситуацией, когда программист со знанием Blender-а должен иметь способ делать одежду массово, быстро, и в одном стиле…

На окружении/обьектах-тримы, тайлы, декали мешаются с бэйкнутыми обьектами.

В данном случае эмиссив декалей находится в UV1 и представляет собой 4-х кадровый спрайт.

Отдельно расскажу про пайплайн работы с оружием:

На оружии в игре используется 2 материала: один предназначен для переиспользования различных частей (тримы, магазины, прицелы, эмиссивные части и прочее) В другом-находятся крупные части конкретного оружия. Поэтому, сначала планируется переиспользование.

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

Low-poly>High-poly

Floaters

Работа начинается с низкополигональной модели, которая затем доводится до высокополигональной. В процессе используется как банальный remesh так и методики subdivide, floaters.

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

На этапе текстурирования производится отрисовка карты затемнений и высветлений-она заменяет диффуз, поскольку шейдер использует vertex color (RGB) как базовый цвет, и перекрывает его двумя каналами: один через add и второй через multiply. Третий канал свободен для добавления карты эмиссива в случае необходимости. По умолчанию эмиссив задействует vertex color (RGB), а степень его влияния определяется vertex color (A)

Original size 2560x1440

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

Original size 3840x2160

Финальным штрихом, с помощью copy-paste геонод в Blender-е добавляются вертикальные градиенты в vertex color (RGB)

Original size 2560x1440
Kitsunetsuki project: Экономим графику, графируем экономику…
47