В разработке
ZAVTRA
PC
Пост-советский выживач: рейдеры, узкоколейка, пыльные бури
Услуга
MetaByte разрабатывает игры на Unreal Engine — прежде всего для ПК и Steam: сетевой мультиплеер, оптимизация кадра, сборка релизных билдов и публикация.
Unreal выигрывает там, где нужны высокое качество картинки и сетевой мультиплеер из коробки, а Unity — там, где нужны мобильные платформы, лёгкая сборка и быстрая итерация.
Разница не в том, что один движок мощнее. У Unreal сильнее рендер и встроенная модель репликации: авторитетный сервер, репликация переменных и удалённые вызовы — часть каркаса, а не библиотека, которую надо выбирать. Для сетевого шутера это экономит месяцы.
Плата за это — вес сборки, время компиляции и порог входа в C++. На мобильных, где важны размер приложения и работа на недорогих устройствах, Unity почти всегда практичнее.
Мы не выбираем движок из симпатии. На разборе задачи мы называем движок и объясняем причину — и если выбор очевиден в сторону Unity, скажем это, хотя эта страница про Unreal.
На практике верна смесь: логика геймплея и прототипы быстрее живут в Blueprints, а всё, что выполняется часто или обязано быть детерминированным, переносится в C++.
Крайности одинаково дороги. Проект целиком на Blueprints упирается в производительность и становится нечитаемым при слиянии веток — визуальные графы плохо переживают одновременную работу нескольких человек. Проект целиком на C++ теряет главное преимущество Unreal: скорость, с которой дизайнер сам проверяет идею.
Мы держим границу явной: C++ — каркас, системы и всё сетевое; Blueprints — настройка поведения поверх этого каркаса.
Честный сетевой бой строится на авторитетном сервере с предсказанием на клиенте и компенсацией задержки: сервер восстанавливает положение целей на момент выстрела и решает, было ли попадание.
Без компенсации задержки игрок при пинге 100 мс стреляет туда, где противник был десятую долю секунды назад, и промахивается по видимой цели. С ней — попадает, но появляется вторая проблема: «меня убили за укрытием», потому что сервер отмотал время назад. Этот компромисс не устраняется, а настраивается: предел отматывания ограничивается, а метка времени клиента проверяется на правдоподобие, иначе она становится инструментом читера.
Именно этот узел мы решали в SANDSTRIKE, где вид сверху и десятки одновременных целей делают любую нечестность заметной сразу.
Две игры из четырёх открываются по ссылке прямо сейчас — это и есть проверка.
В разработке
PC
Пост-советский выживач: рейдеры, узкоколейка, пыльные бури
В разработке · страница в Steam открыта
Steam · PC
Top-down мультиплеерный шутер в постчеловеческой пустыне
Выпущена
Google Play · Android
Наполеоновская стратегия реального времени
Играется прямо сейчас
Web
Браузерная мультиплеерная монополия на 2–6 игроков
MetaByte работает на актуальной версии Unreal Engine 5 и при необходимости продолжает проект на той версии, на которой он начат.
Перевод живого проекта на новую версию движка — отдельная работа с собственными рисками, и делать её посреди производства без причины не стоит.
Да, ко-разработка на Unreal — рабочий формат: мы берём участок внутри вашего репозитория и вашего процесса.
Консольные порты требуют участия в программах разработчиков платформ, и мы обсуждаем их отдельно, исходя из того, кто из сторон является лицензированным разработчиком.
Разберём концепт или существующий проект и вернёмся с составом работ, сроком и оценкой. Отвечаем в течение рабочего дня, работаем по московскому времени.