Как Among Us устроена за кадром

Разглядываем детали простой, но в прямом смысле многослойной игры.

Сделанная на движке Unity Among Us — игра технически очень незамысловатая: она двухмерная, с простейшими анимациями, а самые детализированные элементы здешних персонажей — их маски да кепочки. Однако и у неё за кадром можно найти интересные детали.

Блогер Shesez в новом выпуске своей рубрики Boundary Break показал, насколько Among Us на самом деле многослойна, а мы пересказываем вам.

Первым делом блогер отметил, что пусть в игре есть только двухмерные объекты, она на самом деле трёхмерная: предметы, персонажи и детали интерфейса расположены на разных плоскостях и на разном расстоянии друг от друга.

Это можно увидеть уже в заставке, где на первом слое расположен интерфейс, на втором — персонажи (половина которых летает за пределами экрана), а на третьем — фон со звёздами.

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

Чёрный квадрат в верхней части карты — это, конечно, не тень от «экрана смерти», а эффект, до которого мы ещё доберёмся.

Ещё здесь видно, что персонажи находятся не у стола, как во время голосования, а там, где они стояли до его начала
Ещё здесь видно, что персонажи находятся не у стола, как во время голосования, а там, где они стояли до его начала

Точно так же дела обстоят и на второй карте: тут персонаж сначала летит на фоне облаков, а потом падает за черноту, которая на деле, конечно, представляет собой ещё один слой.

Как Among Us устроена за кадром

На третьей карте горы и слои лавы тоже отделены друг от друга, а всплеск от выброшенного тела вообще находится сильно впереди.

Как Among Us устроена за кадром

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

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

Нет ничего удивительного в том, что одежда — это тоже другой слой, просто он плотно «состыкуется» с моделькой персонажа, как видно на первом из скриншотов ниже. А вот на экране кастомизации штаны по какой-то причине отделены от персонажа, в отличие от кепочки. Палитра и интерфейс тоже разбросаны в пространстве.

Вот как выглядит комната ожидания с открытым экраном кастомизации: здесь видно, что почти все элементы — от меню до настроек игры — находятся очень далеко друг от друга.

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

На ролике ниже видно, что она ещё и «сдвигает» местоположение объектов на несколько пикселей.

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

Ещё здесь видно, что под определённым углом у персонажа пропадает текстурка со штанами

Блогера удивило, насколько многослойна система камер на первой карте: отдельно находятся даже помехи на экранчике справа, что уж говорить о столике с мышкой и клавиатурой. По молдингу, который обрамляет помещение с реактором, хорошо видно, насколько далеко экран с камерами расположен от остальной карты.

Как Among Us устроена за кадром

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

Внутрь корабля, который стоит на второй карте, нельзя залететь даже призраку — всё потому, что это двухмерный объект, причём тот же, что служит фоном для комнаты ожидания. Она-то и нарисована на обратной стороне корабля. Логично.

А вот как в отдалении выглядят вторая и третья карты. Можно оценить, насколько они огромны: корабль по размеру не дотягивает даже до столовой на второй карте, что уж говорить о теплице и огромном Y-образном коридоре.

145145
28 комментариев

Не могу понять, почему таким явным лейтмотивом идет упоминание того, что игра многослойная...
Ну да, движок юнити так устроен, там 2д на самом деле 3д, а слои - это просто разная координата спрайтов по Z.
И да, в сцене любой 2д игры на юнити можно переключиться на 3д и полетать между слоями. И то, что между ними есть расстояние, - ну, это норм, можно сделать любое расстояние, ортография все сплющит в любом случае. Так устоено в юнити.
Или тут что-то другое и я что-то не понимаю/не знаю?

36
Ответить

Всё так. Я так понял, материал для тех, кто не знаком с движком.

20
Ответить

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

А еще то что в юнити так все устроено тоже странно. И какой нибудь кодер 16 битных игор из 90х офигел бы от расточительности.

2
Ответить

Зумеры переоткрыли ZIndex.

Ответить

Статьи в стиле "Как устроено за кадром" делают люди, которые вообще ничего не понимают в технической части игр. Это не в обиду им - смотреть такие ролики и статьи все еще интересно. Просто не нужно задумываться над описанием

Ответить

Ну и как с тобой теперь играть, когда ты буквально знаешь все вдоль и поперек

16
Ответить

А ты приходи вечером и узнаешь!

7
Ответить