- PVSM.RU - https://www.pvsm.ru -
Всем привет, я разработчик игр на Unreal Engine 5, долгое время я занимался изучением игрового движка, созданием плагинов на FAB и теперь готов показать вам свой проект!
Для начала я расскажу немного о игре, а затем о технологиях которые я использовал, чтобы получить прирост производительности и более интересный геймплей.
Врывайтесь в хаотичный и веселый Low Poly мир «Field of Enemies»! Это казуальный экшен-рогалик с видом сверху, где вас ждут бесконечные орды врагов, от неповоротливых зомби до продвинутых роботов. Ваша цель проста — продержаться как можно дольше, окружив себя настоящим адом из монстров, и вписать своё имя в историю таблицы лидеров!
Сражайтесь в одиночку или объединяйтесь с друзьями — кооператив до 4 игроков превратит выживание в невероятно весёлое и сумасшедшее побоище!
Видео:
Я — разработчик-одиночка, и «Field of Enemies» — это мой проект всей души, который я создаю полностью один. Как вы понимаете, привлечь внимание к инди-игре невероятно сложно.
Если вам нравится то, что вы видите, лучший способ поддержать меня на данном этапе — добавить игру в список желаний в Steam. Это невероятно сильно помогает с продвижением через алгоритмы платформы и позволяет большему количеству людей узнать об игре. Ваша поддержка для меня бесценна!
Добавить «Field of Enemies» в список желаний в Steam:
Пока мой основной проект в разработке, хочу поделиться с вами другим своим творением! Это Farm Again — игра, которую я создал всего за 7 дней для EpicGames MegaJam. Это был безумный челлендж, и я горжусь результатом! Очень надеюсь на победу в джэме, но даже если не займу первое место, буду безумно рад, если вы просто оцените игру. Она полностью бесплатна — попробуйте прямо сейчас!
Сыграть в Farm Again (бесплатно):
Какие трудности были во время разработки и какими методами я их решал:
Большое количество AI
Как многие разработчики уже знают, в Unreal Engine есть проблема с производительностью при большом количестве AI на сцене. Для своих проектов мне пришлось уйти дальше от обычных стандартных методов, поэтому я написал собственный плагин (XAI), который использует технологию MassEntity (или entity component system). Так же в совокупности с асинхронной физикой, которая относительно недавно появилась в Unreal Engine - у меня получился довольно таки хороший прирост производительности! Но и это не всё, я подумал, что можно уменьшать тикрейт анимаций, если AI находится вне поля зрения игрока, для этого я использовал Significance Manager и собственные математические расчёты. Теперь, чем дальше AI от игрока или если находится за камерой, то его тикрейт анимаций плавно уменьшается. Всё это вместе - даёт превосходный FPS, а так же решает проблему с репликацией, так как в Unreal Engine 5.6 починили репликацию асинхронной физики! Плюсом ко всему, мои AI используют физику - а значит их можно расталкивать игроком во время движения, что так же делает геймплей более приятным.
Niagara Data Channel: Как умно экономить на эффектах
Представьте: ваш игрок отстреливается из пулемета. Каждая пуля — это частицы дыма, искры, вспышка. По старинке, на каждую пулю движок создавал бы новый, отдельный эффект при попадании. 100 пуль = 100 эффектов. Компьютер начинает плакать.
А теперь смотрите, как это делает Niagara Data Channel! Он словно умный менеджер, который не создает новую "бумажку" на каждый выстрел, а просто добавляет новую строчку в общий список.
Было: 10 попаданий = 10 отдельных эффектов с 10 частицами.
Стало: 10 попаданий = 1 общий эффект, внутри которого летают все 10 частиц.
Вместо сотен тяжелых эффектов у вас работает одна легкая система, но с кучей частиц. Производительность взлетает до небес!
У этой системы есть свои недостатки, но если знать где и как её применять, то проблем не будет.
Character? Не, не слышал. Как я сделал свой сетевой мультиплеер без лагов
Признаюсь, я давно в сложных отношениях с дефолтным Pawn и Character. Для своего проекта я решил сделать всё по-своему: выкинул это добро и собрал кастомную систему движения на асинхронной физике.
Но главный фокус — в моём плагине MotionReplicator. Он не просто пересылает данные, а занимается настоящей магией — экстраполяцией. Вот как это работает:
Твой клиент сам решает, где ты находишься, и рассылает всем свои координаты.
Другие игроки получают эти данные, смотрят на свой пинг и твой, и не просто ставят твою копию в точку, а предсказывают, где ты будешь через мгновение.
Твоя копия на их экране плавно и незаметно подстраивается под это предсказанное положение.
Результат? Персонажи двигаются так плавно, что кажется, будто игра идёт по LAN, даже если у кого-то не самый лучший интернет. Лаги просто растворяются в воздухе!
Конечно, это лишь верхушка айсберга проблем, с которыми я столкнулся. Но именно эти решения стали самыми значимыми для производительности и геймплея!
Работа в полном разгаре, и впереди ещё много улучшений. Следите за обновлениями — совсем скоро проект появится в продаже, и вы сможете опробовать всё это сами!
Спасибо за внимание! Я открыт для любой обратной связи, поэтому, пожалуйста, не стесняйтесь делиться своими мыслями или советами в комментариях.
Мой Discord сервер:
Автор: dex1ed
Источник [4]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/c-3/436125
Ссылки в тексте:
[1] store.steampowered.com: https://store.steampowered.com/app/3648340/Field_of_Enemies/
[2] itch.io: https://itch.io/jam/2025-epic-megajam/rate/3964691
[3] discord.com: https://discord.com/invite/ewZ3WcdetV
[4] Источник: https://habr.com/ru/articles/964718/?utm_source=habrahabr&utm_medium=rss&utm_campaign=964718
Нажмите здесь для печати.