Найти в Дзене
Azverin Driving

Under The Hood: Пересмотрена грузовая система

Сегодня мы рады пригласить вас ещё раз заглянуть «под капот»! На этот раз мы представляем вам интервью с некоторыми членами нашей команды, которые работают над новой грузовой системой для ETS2 и ATS в грядущем обновлении 1.54. Итак, без лишних слов, мы позволим экспертам объяснить, что представляет собой эта новая система, и проведём вас за кулисы их работы!

По мере того, как наши игры продолжают расширяться, количество типов грузов и прицепов значительно выросло, что усложнило управление старой системой. Чтобы понять, почему потребовались изменения, стоит взглянуть на то, как работала предыдущая система.

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

Программист Саймон, также известный как 50keda, который работал над этой задачей с самого начала, объясняет это более подробно.

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

-2
-3
-4
-5

Смети, наш старший художник по автомобилям, объясняет, что эта проблема возникала в течение некоторого времени и нуждалась в решении. «Ситуация усложнялась с появлением в игре новых грузов и множества новых брендированных прицепов. Каждый груз был привязан ко всем прицепам этого типа, то есть, если у нас было 3 платформы, нам также нужны были 3 конкретные модели грузов — и у каждого варианта груза обычно было по две или три визуальные модели. Кроме того, у нас есть брендированные прицепы, поэтому количество комбинаций достигало огромных цифр. Передо мной стояла задача переделать трейлеры".

-6
-7
-8
-9

Наша цель состояла в том, чтобы упростить процесс подключения новых грузов и прицепов, устранив необходимость в ручном управлении их комбинациями, как объясняет Саймон здесь: «Мы могли бы добиться этого, если бы код автоматически объединял грузы и прицепы на основе упрощённых правил, а не создавал отдельные модели для каждого типа прицепа. Это означает, что для каждого груза будет определена собственная модель, методика погрузки и способ крепления. Хотя на первых порах этот подход может вызвать некоторые трудности и не быть идеальным, он закладывает основу для дальнейшего расширения и улучшения. Например, при программной загрузке груза, такого как поддон, вам нужно будет смоделировать только один поддон. Затем код определит правильное количество моделей и расположит их на прицепе в соответствии с выбранной методикой загрузки, — объясняет Смети.

Таким образом, самое большое преимущество новой системы заключается в том, что нашим 3D-художникам больше не нужно вручную создавать готовые пары «прицеп-груз». Вместо этого она динамически сопоставляет любой совместимый прицеп с любым совместимым грузом, процедурно определяет его размещение и генерирует правдоподобные элементы крепления, что значительно упрощает работу нашей команды по созданию транспортных средств.

Наш продюсер Карел координировал проект и играл ключевую роль в его реализации, помогая обеспечить его успешное завершение.

-10

«Когда я присоединился к команде разработчиков, мне было просто любопытно, как в новой системе будут обрабатываться деревянные брёвна, так как я в основном работал над связанной с этим функцией — динамической (раз)грузкой грузов. Однако, когда я осознал, какой объём работы требуется — заменить тысячи комбинаций грузов и прицепов всего несколькими сотнями «умных» — я взял на себя производственные обязанности, чтобы Саймон мог сосредоточиться в первую очередь на разработке. Это включало в себя оценку времени, планирование, отслеживание прогресса, привлечение большего количества 3D-дизайнеров и тестировщиков транспортных средств, составление графика выпуска и многое другое. И, конечно же, огромная благодарность нашей команде контроля качества, которая взяла на себя непростую задачу тестирования всех комбинаций и сообщения о бесчисленных проблемах, — делится с нами Карел.

Разумеется, нам также пришлось переработать модели грузов, чтобы они идеально сочетались с новой системой, которая автоматически сопоставляет грузы с прицепами. Эту задачу взял на себя Матей, наш дизайнер 3D-графики.

-11

«Вместо того, чтобы создавать шесть или более различных моделей грузов, я разработал одну версию и при необходимости разделил её на несколько вариантов для более разнообразных грузов, например, на две версии кондиционеров. После завершения работы над моделью я проверил, всё ли в порядке, и разместил специальные указатели, чтобы определить, как и где груз будет закреплён на прицепе. Затем система динамически распределяет груз в зависимости от его размера и веса, а также длины прицепа. Этот новый подход упрощает создание моделей грузов и позволяет разнообразить игру», — рассказывает нам Матей.

-12
-13

Пётр, ещё один 3D-дизайнер транспортных средств в нашей команде, работает над той же задачей — и, по его собственным словам, ему это нравится.

-14

«Я присоединился к проекту «Новая система грузоперевозок» в августе-сентябре и работал вместе со Сметой и Саймоном. Моя основная задача — тогда и сейчас — преобразовать существующие грузы в новую систему. Для меня это был захватывающий переход от 3D-моделирования к активной разработке новой игровой функции, которая показалась мне интересной и увлекательной», — говорит Петр.

-15
-16
-17
-18

Наш программист Макс сыграл ключевую роль в интеграции новой системы грузоперевозок в экономику игры, а также в решении других задач, о которых он рассказывает ниже.

-19

«Основная часть моей работы над новой системой грузоперевозок заключалась в её проектировании и подключении к остальной части игры. Автоматическое размещение и крепление независимых моделей грузов должно упростить любую работу по моделированию в будущем. Перекалибровка экономических данных гарантирует, что система будет работать со всеми существующими комбинациями грузов и прицепов. Остались некоторые проблемы, поэтому мы определённо планируем улучшения на следующий раз», — говорит Макс.

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

Саймон намекает, что этот проект может привести к появлению других возможностей для обеих наших игр. «На данный момент мы сосредоточены на переработке всех грузов и прицепов, чтобы они были совместимы с новой системой и выглядели визуально правдоподобно. При этом система грузов открывает бесчисленные возможности. Этот проект определённо будет интегрирован с динамической загрузкой (разгрузкой) грузов, и мы стремимся улучшить способ расчёта количества предметов, которые могут поместиться в прицеп. В настоящее время логика довольно проста и не будет точной в каждом случае, но она уже демонстрирует потенциал системы. При наличии воображения это может даже привести к некоторому уровню взаимодействия между игроками, но посмотрим, к чему это приведёт.

-20
-21

Мы надеемся, что вам понравился этот закулисный взгляд на новую грузовую систему с точки зрения наших коллег, которые работают над ней. Не забывайте следить за нашими обновлениями, подписавшись на нас в . YouTubeBluesky и InstagramFacebookTwitter. Мы также будем очень признательны, если вы подпишитесь на нашу рассылку, чтобы оставаться в курсе событий, даже если вы не можете следить за блогом или нашими социальными сетями. Увидимся в дороге!

Подготовлено и переведено Azverin Driving.