Привет всем спонсорам!
Это традиционный пост, в котором я подвожу итоги месяца. Правда, он выходит сразу после публикации нового ролика, так что мне по ходу повествования придётся давать дополнительные объяснения для новых спонсоров.
[Grim Wild]
Основным занятием марта всё-таки был монтаж видео, поэтому разработка проекта совершалась "набегами". У меня не было времени сесть за работу над ГВ основательно и сделать там какую-то объемную работу. Вместо этого приходилось заниматься мелкими задачами, которые не требовали долгого погружения в контекст.
Новые и обновлённые спрайты
Это графика именно для игры. А есть ещё тонна графики, сделанной только ради нового ролика. Её вы могли видеть в самом видео
Пешка игрока: цветопередача
Я основательно взялся за пешку игрока (это та камера, которой мы управляем) и исправил все старые проблемы, до которых уже давно не доходили руки.
Во-первых, у камеры всё это время была неправильная цветопередача. Разница в цвете здесь видна наглядно:
Обратите внимание на снеговика, его движок не пощадил (+текстура земли здесь старая)
Об этой проблеме я знал всегда, но исправлять её раньше не было смысла. Дело в том, что старые текстуры поверхности без насыщения контрастом выглядели слишком тускло. Сейчас, когда поверхности я обновил (об этом можно почитать в работе за февраль 2024), пришло время отключить всю пост-обработку цвета в движке. В шестом ролике все кат-сцены сделаны уже в новом "цветовом пространстве", и меня там почти всё устраивает.
Предполагается, что поверх базового цвета мы (я и мододелы) сможем накладывать какие-то свои эффекты. Например, уменьшение насыщенности в хмурые дождливые дни
Пешка игрока: камера
Второе изменение - это смена камеры с перспективной на орфографическую.
Перспективная - это, упрощённо говоря, камера для 3D. Она имеет угол обзора (Field of View) и связанные с ним искажения.
А орфографическая просто рендерит заданный участок сцены.
Плюсы новой камеры:
• 2D камера для 2D игры
• Очень плавный зум и движение (покажу его в видео про разбор шестой серии)
• Я могу вручную задавать область для рендера (например, если в кат-сцене мне нужно рисовать область ровно 16x9 клеток)
Почему же я до этого жил с 3D камерой? Потому что 2D камера в Unreal Engine всегда была проблемной, и только в недавних версиях движка это начали исправлять.
Информация для новых спонсоров
Новым спонсорам здесь я обязан сообщить, что в игре будет открытый мир. Обычные зрители об этом пока не знают, а на Бусти я рассказал про него в предыдущих результатах работы.
Все механики, связанные с открытым миром, зашифрованы названием Level-Agnostic ("независимые от уровня системы"). Сокращённо L-A.
Через пару серий этот "секрет" будет открыт всем зрителям.
Пешка игрока: движение
Одна из L-A систем - это движение игрока, которое должно позволять нам эффективно путешествовать по открытому миру и не создавать никаких ошибок в будущем.
Потенциальная проблема 1: если сделать поверхность планеты слишком большой, то при движении на далёкие расстояния у нас всё сломается. Это то, что происходит с персонажем и физикой в Minecraft на далёких землях.
Потенциальная проблема 2: планета круглая, так что в одну и ту же точку можно прийти, непрерывно двигаясь в одну сторону по оси X. Получается, что при классическом движении (когда по миру двигается камера игрока) где-то между чанками должен проходить шов, возвращающий нас на нулевые координаты.
Все эти проблемы решаются тем, что вместо камеры двигается мир вокруг нас, и чанк, в котором сейчас находится игрок, всегда встаёт в нулевые координаты.
Продемонстрировать это я пока не могу, потому что остальные L-A системы ещё не готовы (так что "чанки" пока не грузятся при движении). Главное, что в будущем у меня из-за больших значений ничего не сломается!
Самый древний баг в игре
К сожалению, самый древний баг в игре был исправлен. Да, именно "к сожалению". Он был в проекте уже почти 3 года и стал своего рода музейным экспонатом. Я к нему привык, но наступила пора с ним расстаться.
Суть бага: внутри одного и того же кадра логика игрока выполнялась движком раньше, чем обновление курсора. Получалось, что игрок каждый раз ссылался на данные о местоположении курсора, которые отставали на 1 кадр. Выглядело это примерно так:
Край коробки выделения всегда должен находиться под курсором, но в процессе быстрого движения видна разница (средний сегмент скриншота). Это кадры из шестой серии, так что интересующиеся могут посмотреть на баг в динамике (ссылка на таймкод)
Этот баг затрагивал и выделение, и поиск точки клика, и Drag Movement (движение с зажатой ПКМ), но теперь они полностью функциональны.
[Публичная деятельность]
Вышел шестой флагманский ролик на основном канале.
Сервер в Дискорде пробил отметку в 2000 участников.
А на YT канале теперь больше 25 000 подписчиков!
На Бусти я в начале этой недели запишу "Послевкусие" (подробный разбор). Если у вас есть какие-то вопросы - пишите, я могу рассмотреть их в том ролике.
Envision Video Editor
Как вы знаете, у меня сложились сложные отношения с продукцией компании Adobe. Мои ролики становятся всё более сложными, а идеи в голове давно превосходят возможности Premiere Pro или After Effects.
Для сложных сцен я хотел использовать программу Motion Canvas, где графика программируется на языке TypeScript [по сути, JavaScript].
Но делать это у меня не получилось. Во-первых, JS или TS я не изучал, так что ориентироваться в чужом языке мне было сложно. Во-вторых, импорт картинок и шрифтов через код, указывая путь к каждому отдельному файлу - это неэффективно. В-третьих, там всё равно не было нужного мне функционала.
Я давно хотел попробовать создавать сложную графику на Unreal Engine, и проблемы монтажа шестой серии (например, рендер 1.5 суток подряд) заставили меня сделать это уже сейчас.
Мои прошлые две попытки реализации этой системы приводили к провалам. В этот раз я пошёл совершенно другим путём, и у меня всё получилось!
Дело в том, что сделать графику в UE - это только половина работы. Анимации покадрово нужно как-то экспортировать, и именно этого я не мог добиться раньше.
Пока что об успехе судить рано. Я попробую использовать Envision Video Editor (EVE), как я его назвал, в монтаже седьмой серии. Если всё будет отлично, то ролики станут ещё красивее, а время на их создание уменьшится (да, именно уменьшится. Вот такой вот парадокс)
Вот тестовая сцена для седьмого ролика, сделанная в EVE:
В Premiere Pro такого не сделаешь!
И она процедурная!
UPD: вот анимированная версия
Обновление Boosty
Я обновил описание профиля, чтобы оно было более дружелюбным по отношению к новым участникам.
По заявкам спонсоров я добавил новый уровень подписки: Фантастическая поддержка.
Также я добавил пункт "Доступ ко второму этапу закрытого тестирования" для уровня "Огромной поддержки" и выше (300р). В Дискорде я об этом уже говорил, но если вы пропустили, то вот вся важная информация:
Сейчас Grim Wild находится на первом этапе закрытого тестирования. Я набрал себе в команду людей, мнению которых я могу доверять. Я вижу, что мы с ними разделяем общее видение проекта и имеем схожие точки зрения.
Первый этап заключается в тестировании самых базовых вещей. Например, правильная работа всех настроек, удобство управления камерой, отсутствие артефактов от сглаживания, удобство использования UI и стресс-тесты одних и тех же механик на ПК разной мощности.
Второй этап начнётся тогда, когда в игре можно будет тестировать игровой процесс. Именно туда я приглашу всех желающих людей с ролью "Команда поддержки" в Дискорде. Там же для тестирования есть отдельный форум, чат и новостной канал.
После второго этапа закрытого тестирования начнётся открытое тестирование (ранний доступ), доступное для всех игроков в Steam.
[Планы на апрель]
Очень важно полностью доделать систему статических спрайтов (новой отрисовки). Настолько важно, что других планов по разработке у меня нет (конечно, в течение месяца ко мне опять придёт какое-то вдохновение, и я дополнительно сделаю что-то внеплановое. Так уж работает мой мозг)
Напоминаю, что система статических спрайтов - это высокоэффективная отрисовка, которую я делаю для игры вместо использования Paper2D (плагина для движка, который мне не подходит)
По поводу следующего ролика: в апреле мне нужно написать сценарий и, думаю, даже сделать озвучку, чтобы в будущем тестировать создание сцен на EVE и понемногу "монтировать" их.
Спасибо за прочтение!