{"id":4008,"url":"\/distributions\/4008\/click?bit=1&hash=3e0e24714242dbbafe0bc5f0070ccccc83480de788b38ffe56426b16d15d7a5e","title":"\u0423\u0437\u043d\u0430\u043b\u0438, \u0447\u0435\u0433\u043e \u0436\u0434\u0443\u0442 \u043e\u0442 \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u0430 \u043b\u044e\u0434\u0438 \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u0439","buttonText":"","imageUuid":"","isPaidAndBannersEnabled":false}

Небо Воров / Sky of Bricks / Hyperion

Разработка LEGO симулятора сражений на воздушных кораблях на Unreal Engine 5, или до чего может довести удаление любимого режима

Привет. Не так уж и давно, одна из лучших по моему мнению кооперативных игр, а именно Sea of Thieves убрала отличный режим - арену. У данного режима была куча проблем, и собственно, официальное письмо Rare излагает причину довольно чётко. Тем не менее режим был отличным для двух категорий игроков:

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

Увы и ах, режим не вернуть. Но благодаря этому меня и осенила прекрасная идея:

  1. Делаем тоже самое
  2. Но лучше
  3. В Лего стиле
  4. По сети
  5. Чтобы кирпичики разлетались вуууууууу
  6. На Unreal Engine 5

Кстати пятая версия выбрана не случайно, всё дело в технологии Nanite, которая просто необходима при сотнях кирпичиков с тяжёлой сеткой.

Возникает вопрос: куча кирпичиков, у каждого своя физика, сколько фпс будет? 30?

Всё верно, гордые 30 фпс на системе с RTX 3070 (правда laptop) и Ryzen 5800H.

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

А по скольку свободного времени у меня осталась с натяжкой неделя, я придумал отличную отмазу: это блюз... Ой, то есть это стоп моушен... Нет, даже the stop - motion. Помните кукольные мультфильмы? Там всё так дёргается немного. Так вот это оно. Не баг а фича. Лего фильм в реал-тайме.

Предлагаю два видео

Это пока чего я достиг за месяц изучая Unreal с (почти) нуля:

Демонстрация работы разрушаемости
Демонстрация работы сетевого режима

На одном компе сложно показывать игру за двоих, увы.

Голосуйте сыграли ли бы вы, и если есть идеи, пишите названия для игры! Я пока ничего не придумал. И я планирую возможно написать подробнее, про технологии, которые используются, вроде тоё же сетевой интерполяции, если алгоритмы DTF будут милостивы.

Сыграл бы с друзьями?
Да
Нет
Показать результаты
Переголосовать
Проголосовать
0
28 комментариев
Написать комментарий...
Skyimp

Пчел, я давно жду чё-нить с летающими кораблями, ещё блять с Небес Аркадии некоторые фанаты пилили что-то подобное...
В общем, удачи, жду, куда донатить ток скажи

Ответить
Развернуть ветку
Hy6oMeT .

Есть Gun Of Icarus. Но не знаю, живой ли он.

Ответить
Развернуть ветку
Hlebdalf White
Автор

Спасибо! Меня кстати вот тревожит вопрос, почему так мало игр в этом сеттинге, сколько же всего можно накрутить. И летучие острова, среди которых можно маневрировать, и облака, в которых можно скрываться. А ещё отличный отрыв для художников по освещению и дизайнеров вообще. Но свято место пусто не бывает ахахха, хотя мне прямо категорически не хватает навыков и учиться приходится на лету, но работаем. А игра планируется как open-source, что бы человека например 4 могли у себя на пк запустить сервер и друг с другом повоевать минут 5. На бОльшее я пока не расчитываю из-за нехватки времени

Ответить
Развернуть ветку
Ivan Novikov

Да было уже всё. Если не помните или не знаете, ищите Аллоды. Они отдельно игру делали про полёты на кораблях.
Очевидно что денег с этого они получали мало и закрыли проект

Ответить
Развернуть ветку
Hlebdalf White
Автор

Конечно *всё* было. Тут вопрос в процентном соотношении. Почему при мысли о летающих кораблях всплывает максимум игры 4, а при обычных - уже десятки? Причем коммерчески успешных. Я не верю, что сам сеттинг не прибыльный, просто его толком никто исследовать не хочет, лучше ремастеры ремастеров выпускать

Ответить
Развернуть ветку
Ivan Novikov

Именно. Все идут по наименьшему сопротивлению. В любом случае,если будешь браться за подобное, желаю удачи

Ответить
Развернуть ветку
Hlebdalf White
Автор

Спасибо 😊

Ответить
Развернуть ветку
RockRebel

Был такой Project nomads 2002 года

Ответить
Развернуть ветку
Skyimp

Он скорее Товер Дефенс )

Ответить
Развернуть ветку
Disly

Аллоды. Хехе ._.

Ответить
Развернуть ветку
WhatSapMisha

Крутой прогресс за месяц! А что насчёт авторских прав? Лего любят судится за свои кирпичики)

Ответить
Развернуть ветку
Денис Денисов

Патент на кирпичики уже истек в США, Канаде и ряде других стран. Но конкретные стоит перепроверять.

Ответить
Развернуть ветку
Hlebdalf White
Автор

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

Ответить
Развернуть ветку
Денис Денисов

Бои в воздухе - штука достаточно нишевая. Скорее всего остальной геймплей будет больше определять аудиторию, а воздушное пространство просто как часть сеттинга. Сам играл в Guns of Icarus Online - рекомендую глянуть его для референсов.

У инди две извечные проблемы: либо делают мега-проект, который не по силу даже многим крупным студиям, либо игру с основным режимом по сети. Обе статистически обречены на поражение.
Проблема сетевых игр в недостаточной аудитории. Все видят, как в ААА рубятся миллионы игроков с дневными онлайнами по 50-100к, но не видят сотен миллионов баксов, затраченных на их привлечение. Релиз игры, заходишь в лобби - и не можешь набрать 5 человек для запуска матча. Так они и умирают. "Но ведь Sea of Thieves!..." - лез из каждого утюга перед запуском. Там в разработку также вложили меньшую часть бюджета.
Далее - поддержка серверов, наполнение контентом. Крупные студии могут выпускать регулярно, инди - нет.
Я бы порекомендовал все-таки сделать ориентацию на PvE с полноценной историей, а уже в качестве бонуса - PvP. Потянешь ли - это уже другой вопрос. Если игрокам будет чем заняться в офлайне, какое-то количество для онлайна наскребется.

https://store.steampowered.com/app/209080/Guns_of_Icarus_Online/

Ответить
Развернуть ветку
Василий Пубкин

Ещё была Worlds Adrift.

Ответить
Развернуть ветку
Hlebdalf White
Автор

Спасибо за комментарий и референс! Я абсолютно согласен с вами насчёт двух проблем. Тут дело в том, что проект я делаю для души, он не коммерческий и таким не планировался) Поэтому я спокойно его пилю, и пока вижу две концепции развития:

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

В любом случае не страшно, выходить на рынок и не планировалось, это просто пет проджект для души и, мб, портфолио

Ответить
Развернуть ветку
Денис Денисов

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

Ответить
Развернуть ветку
alexone

есть в данном жанре вроде как Guns of Iccarus Alliance, ток повреждения не по кирпичикам.

Ответить
Развернуть ветку
Winderol Asper

Выглядит в перспективе интересно, но мне кажется из-за лего сеттинга игра будет не особо популярна и интересна. Да и пилить ее до +-играбельного состояния еще очень долго...

Ответить
Развернуть ветку
Данил Свечков

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

Ответить
Развернуть ветку
R3.D1.V0.N3
Это пока чего я достиг за месяц изучая Unreal с (почти) нуля

на видео смотрю время записи 4 утра ) неплохо освоился за месяц!

Ответить
Развернуть ветку
Hlebdalf White
Автор

Да, так и живём ахахахах

Ответить
Развернуть ветку
Karapys_Mor

Напомнило старую игру на роблоксе
https://www.roblox.com/games/5310452/Galleons-v7-4

Ответить
Развернуть ветку
Митрий Крещенский

Идея классная! Но у нее очень высокая сложность реализации. В первую очередь из-за того, что Nanite должен использоваться для других задач. Например, для отображения в сцене большого количества статичных объектов с высокой полигонозацией. Это технология нужна только для уменьшения проблем с настройкой LOD'ов объектов.

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

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

Ну и 30 фпс на 5800h звучит как не очень играбельный вариант.

Ну это просто мои мысли) Сам сейчас делаю что-то типа Minecraft на UE5, хочу опробовать Lumen.

Успехов в разработке!!!

Ответить
Развернуть ветку
Hlebdalf White
Автор

Спасибо, тоже желаю успехов в разработке! По нанинту: он мне нужен совсем не для отрисовки корабля, хотя он и рабоатет с подвижными компонентами static mesh, но его применение и вправду здесь мало применимо (ух сказанул то как). Нанит мне нужен для отрисовки массивных объектов типа летучих островов. На такой объект, который полностью состоит из лего кубиков может потребоваться пара десятков миллионов треугольников, а ещё я планирую делать облака тоже из кирпичиков. Для этого нужен нанит, но это пока на перспективу.

Насчёт физики - чистая правда, но я сейчас ввёл несколько оптимизаций, которые повысили фпс до 60 (упор по прежнему в cpu) - это переход на инстансы. Теперь каждый кирпичик у корабля не отдельный static mesh, а всего лишь instance, и по сути не является самостоятельным объектом. Когда ядро прилетает в корабль, оно получает все инстансы, получает их трансформы, потом их удаляет, создает полноценные static меши на их месте и включает им физику. Работает должен признаться уже не так эффектно, но прирост 100% коллосальный имхо. В итоге физика симулирует ровно то, что нужно, а именно 15 - 20 кирпичиков за выстрел.

В общем оптимизации вводятся, оптимизации пилятся, но 60 фпс конечно тоже не сахар. Работаем дальше

Ответить
Развернуть ветку
Hlebdalf White
Автор

UPD: Соврал, если отрубить Lumen то будет ~80 кадров, когда добью сотню можно будет успокоиться

Ответить
Развернуть ветку
Денис Кадыков

Интересно, но вот только не понятно почему Анрил и видюха? Такой графон плюс физику тянет телефон купленный за 10 тыс рублей, три года на зад.

Ответить
Развернуть ветку
Слава Пухликов

Прикольно на самом деле, я так понимаю райзен с бОльшим количеством ядер тут будет актуальнее? или все же свои плюсы/минусы есть?

Ответить
Развернуть ветку
Читать все 28 комментариев
null