Улучшая ZEROAD: как один шейдер добавил визуального разнообразия толпе зомби

Всем привет!

Работая над своей игрой, я часто ищу простые, но эффективные способы её улучшить. Когда работаешь один, но не умеешь делать вообще всё, то приходится как-то выкручиваться..

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

Поэтому я написал простой шейдер замены цвета и применил его к спрайтам врагов. Вот как это работает: есть конфиг файл с таблицей цветовых пресетов. Когда создаётся враг, скрипт случайным образом выбирает набор цветов и передаёт его шейдеру, который затем заменяет исходные цвета в базовом спрайте на выбранный пресет. Результат можно увидеть на видео! Выглядит прилично?

Плюсы:

1. Не нужно рисовать и редактировать кучу изображений (экономия времени)

2. Экономия видеопамяти

Минусы:

1. Нужно вручную подбирать цвета и менеджить достаточно большой конфиг-файл

2. Общая картина всё равно может казаться однообразной (остались одинаковые формы врагов)

Кстати, демоверсия моей игры доступна на Steam! Можете поиграть и поделиться впечатлениями!

7
Начать дискуссию