Привет, уважаемый читатель! Это маленький сиквел к моему тексту про цитадель, который я публиковал тут несколько месяцев назад. На удивление, многим он вкатил, так что я решил, что если жизнь даёт тебе лимоны, то нужно давить лимонад. Далее нас ждёт немного аналитической работы и погружение под капот некоторых локаций Portal 2. Данный блог — это текстовая адаптация видео, которое будет прикреплено ниже (или просто текст сценария, по которому я читал текст для видео). Если вашему глазу милее текст, то вы его можете увидеть чуть ниже видео, но я рекомендую именно видеоформат.
После работы над прошлым видео у меня осталось небольшое количество материалов, о которых бы хотелось рассказать. Касаться они будут уже не Half-Life 2, а другой игры из той же вселенной, созданной на движке Source, а именно — Portal 2. Вообще, в играх существует не так уж и много вещей, которые можно измерить и представить их в реальности. В Half-Life 2 было только несколько элементов дизайна игры, которые хотелось проверить в реальности. Скажем, что это может быть «Цитадель и её высота», и разве что прототип реального места действия игры.
На этом вопросы по игре лично у меня заканчиваются. Другого такого бреда в моей голове больше не появляется. Высота цитадели — единственная вещь, которую хотелось бы проверить в реальности. Мир Half-Life выполнен с размахом, и раз уж он объединяет в себе и другие игры, то в них должно быть что-то такое же монструозное. И если для Half-Life 2 этой вещью является Цитадель, то для Portal 2 — это сам комплекс Aperture Science, в стенах которого разворачивается сюжет обеих игр серии.
На протяжении всей игры мы буквально как пушечное ядро летаем в огромных тестовых камерах, размер которых порой напоминают огромный стадион. Им нет конца и края. Это огромный, бесконечный город, который объединён в одно огромное здание. И тут парадоксально то, что несмотря на размах этих тестовых камер, в течении всей игры на нас почти незаметно давит это ужасающее чувство клаустрофобии. За очередной комнатой будет ещё одна комната. После каждой лифт будет опускать нас всё ниже и ниже. И при взгляде на окна, которые встречаются в этих комнатах можно заметить, что горит в них не свет солнца, а люминесцентной лампы. В течении всей первой части Portal нам не дают понять где мы находимся. Это абсолютно пустые помещения какой-то лаборатории, где единственное разумное создание, показывающее наличие интеллекта — это бесчувственный, лишённый любой человеческой эмпатии робот GLaDOS. Давно покинутое людьми, управляемое безумной машиной, испытательное поле для одного тебя. И я отчётливо помню тот самый момент, в самом конце игры, когда после уничтожения GLaDOS что-то нас подхватывает, поднимает в воздух и выбрасывает на улицу. Мы видим снаружи простую парковку, по которой разбросаны обломки, но нет ни одного здания на горизонте. Простая парковка посреди леса. Эта сцена сильно напоминает мне момент из Матрицы, когда Нео и Тринити на своём корабле на секунду воспаряют над облаками, и после момента радости солнечному свету падают обратно в тёмную бездну.
Также и в игре Portal после минутки просветления мы обратно возвращаемся к сдавливающим нас стенам, пролетаем между километрами коммуникаций комплекса куда-то в самую его глубь, чтобы узнать, что на самом деле «Cake isn’t a lie».
В этот момент игрок понимает, что всё это время мы находились глубоко под землёй. И мозг пытается просто навскидку представить и понять, как эти комнаты размерами со стадион поместились там под землёй? И насколько глубоко под землю простирается комплекс Aperture Science?
Тут не будет каких-то громких откровений как в прошлом, потому что этот вопрос поднимался на форумах не так часто, и на Reddit я его находил только в достаточно скромных тредах на десяток комментов максимум. Однако на вики по игре, как и в случае с Half-Life, написана чёткая цифра. Вот что о размерах пишут на одном из таких вики.
Центр обогащения чрезвычайно велик, даже по стандартам, установленным такими объектами, как Исследовательский комплекс Черная Меза, который по сравнению с ним ничтожен. Соляная шахта состоит из девяти вертикальных стволов глубиной не менее 4000 метров каждая и шириной в сотни метров. Внутри кавернозных шахт находится большое количество пространства, которое не используется Aperture, и установки часто подвешены над огромными обрывами, которые уходят глубоко в шахты. Между Центром обогащения и испытательными шахтами находится большой люк, который в открытом состоянии позволяет лифту соединять первоначальный объект с современным. Через этот соединительный люк протекает также система труб Mobility Gel. Современный объект поддерживается множеством больших пружин, вероятно, сетью сейсмических изоляторов, чтобы предотвратить воздействие нестабильности шахтных стволов на чувствительное исследовательское оборудование.
В реальном мире шахты и пещеры бывают разные. Это всегда прорытый искусственно или естественным путём тоннель под землёй, который в ширину обычно бывает не больше нескольких десятков метров. Каверна же — это большая полость под землёй. Они бывают разные, одни могут быть образованы соляными отложениями, другие подземными водоёмами. Если говорить о реальных подземных полостях, то известны и поистине огромные. В России, например, печально известен город Березняки, который год за годом продолжает проваливаться под землю. Там с советских времён разрабатывалось соленое месторождение, и по мере выработки полости освобождались. В некоторых местах эти полости могут иметь высоту до сотни метров. Только представьте, что на земле стоит девятиэтажка, а под ней пустое пространство глубиной в 27 таких же этажей. Вполне себе подходит как кандидат на место строительства лаборатории исследования природы порталов и человеческой стойкости. Ещё один пример — антарктическое подземное озеро «Восток», самое большое подводное озеро, которое на протяжении 15 миллионов лет было спрятано от окружающего мира трёх-киллометровым слоем льда. Глубина этого озера может доходить уже до 800 метров, что примерно сопоставимо с высотой самых высоких небоскрёбов. Также может быть, что каверна находится под ещё одним естественным углублением в земле, как например подземное озеро острова Оуи в Ирландии, которое находится на 50 метров ниже другого озера. В общем, кандидатов на застройку в нашей реальности достаточно много, но они так и не дотягивают до умопомрачительных 4000 метров.
Но даже будь у нас в распоряжении здание на глубине 4 километров, там было бы просто невозможно находится. Всё дело в крайне высокой температуре под землёй. Cчитается, что температура в ядре и мантии земли составляет в среднем 6000 и 4000 градусов по Цельсию соответственно. Эти температуры просто трудно представить, но и достигаются они в сотнях и тысячах километрах под землёй. Но даже не смотря на это, относительно не глубоко температура тоже очень высока. Например, максимальная температура была измерена и зафиксирована на глубине около 6000 метров и составила 274 градуса по Цельсию. Это примерно на 100 градусов выше той температуры, при которой вы запекаете мясо в духовке. Содержать здание на такой глубине скорее всего не очень реально, потому что физику не обманешь. Тепло — это энергия, которая не может просто так испарится.
К счастью, если конкретно измерить глубину залегания лаборатории Aperture Scienceв игре Portal 2, то можно в итоге узнать, могла бы она существовать в реальности или нет? Для этого как и в прошлый раз нам нужно декомпилировать архив с игровым контентом на нужной нам карте, открыть всё в Hammer Tools или Blender, и замерить всё линейкой. Ничего сложного.
Первый и самый очевидный способ: зная скорость и время падения мы можем высчитать пройденное расстояние. Объектом нашего исследования станет карта sp_a3_00. Сперва перейдём на требуемую локацию, и сразу же откроем консоль. Теперь введём команду, которая добавит нам к экрану информацию с нашими координатами, и также будет нам показывать информацию о скорости перемещения. Теперь нам нужно лишь засечь время, снять игру с паузы и дождаться падения. Проведя все требуемые расчёты мы получим требуемую цифру.
Вот незадача. Магическим образом счётчик скорости застыл на нуле. Нужно разобраться, почему счётчик показывает 0.
Вводим следующие команды в консоль:
r_drawclipbrushes — эта команда отображает на экране элемент, который называется Clip Brushes, или также его можно назвать «невидимой стеной». Это элемент, который поваляет создать невидимую структуру, благодаря которой решаются многие проблемы с левел дизайном любой игры и локации выполненной на движке Source. К примеру, чтобы игроки не застревали на выступах вдоль стен. Эти структуры прозрачны и незаметны. Они пропускают через себя рэгдолы, физические объекты, но не пропускают игрока и ботов. Абсолютно необходимый инструмент любого левел-дизайнера. И как видите, тут игрок окружён именно такой структурой. Видимо, он стоит на месте и просто не имеет физической способности передвигаться, даже со включенным параметром noclip.
Это меня заинтриговало, тут я решил разобраться в строении уровня. Учитывая что мы достаточно долго летим вниз, можно предположить, что этот уровень должен быть одним из самых больших в игре. Проверить это можно в одной из утили из набора модера для движка Source. Каждая карта из игры лежит в отдельной директории в виде отдельного файла. Когда мы переходим на новый уровень игра запрашивает файл с нужным названием и загружает именно ту локацию, которая нужна по игре. Сам файл представляет собой архив, в котором лежит информация о моделях, самом игровом поле, текстуры, анимации и ссылки на ресурсы, которые могут подтягиваться из sdk. Данная утилита может проверить этот файл на целостность и работоспособность. Грубо говоря она показывает, прогружается ли вся информация из этого архива или нет. Интересно тут то, что эта программа также показывает и размеры локации по осям X, Y и Z. Результаты отображаются в Hammer Unit-ах. Мы уже говорили о них в прошлом видео, если забыли, то советую пересмотреть.
Удивительно, но утила сообщает нам о том, что сама по себе локация крайне маленькая. Всего 13700 h/u в высоту. Это говорит нам о том, что уровень строится более интересным образом. Игрок находится в невидимой коробки, посреди маленькой комнаты с невидимыми стенами. Всё то, что находится в самой комнате — отрисовывается, а всё то, что за ней просто не отображается. Чтобы проверить так ли это — вернёмся в игру и введём ещё две команды.
mat_luxels 1 — эта команда отображает нам сетку на каждой модельке, которая появляется на уровне.
mat_leafvis 1 — эта команда отображает так называемые «Чанки», или условные блоки, в которых находится игрок и к которой прогружается тот или иной контент.
mat_luxels 1 и mat_leafvis 1
Сперва посмотрим на них. Как вы видите, там где находится игрок — появляется синий параллелепипед, а если выйти за его рамки, то начнёт отображаться соседний. Если на уровне в трубе мы будем действительно падать, то эти Чанки будут меняться. Теперь перейдём к следующей команде, которая отображает нам сетку на каждой модельке. Эта сетка поможет нам увидеть, прорисована ли труба изначально, или она появляется частями по мере того, как сама труба движется вверх через нас.
Присмотритесь, там в дали силуэт проступает.
И так, у нас есть только один гигантский Чанк, в котором, видимо, прогружается сама труба, и отрисовывается она только в небольшом поле вокруг нас. Новые элементы локации появляются немного вдалеке от нас. А это означает, что нам нужно просто декомпилировать карту, и посчитать размер этого огромного Чанка. Но об этом позже. Пока поразмышляем с какой скоростью может двигаться эта труба.
Любой опытный спидраннер или сёрфер из CSGO может чисто на вскидку сказать с какой скоростью движется окружение. Представим, что по ощущениям скорость будет около 1500 u/s. Если представить, что получится?
Считаем 1500 u/s * 75 секунд сцены. И мы получаем 112500 юнитов, а 16 юнитов равны 1 футу. Считаю 112500 юнитов делим на 16 и выходит 7031 футов, или 2143 метра. Оставим эту цифру в голове. Попробуем разобрать файл с картой.
Переходим в папку с игрой и открываем директорию, в которой лежат файлы самих локаций. Как мы помним, на уровне sp_a3_00есть огромный Чанк, в который и прогружается вся труба целиком. Конвертируем карту в уже привычный мне obj-файл и открываем его в Blender-е. Мы видим тут два огромных параллелепипеда.
Файл называется simpleworldmodel.mdl — 1) открыт в Blender, 2) открыт в Hammer World Craft
Файл называется simpleworldmodel.mdl — 1) открыт в Blender, 2) открыт в Hammer World Craft
Тот что поменьше — это, вероятно, место, где хранятся сегменты большой трубы. Как видно из информации, которую я нашёл в интернете — сегменты трубы прогружаются в отдельной зоне локации. И ещё есть длинная часть, которая вероятно и является местом, где эта труба и соединяется в одну целую конструкцию.
Единственное, что теперь нас отделяет от ответа на вопрос — это линейка из инструментария Blender-а. И теперь я могу уверенно заявить, что глубина научного комплекса Aperture Science составляет 2500 метров. Считая глубину навскидку я ошибся всего-то на несколько сот метров. А значит и эту информацию в википедии можно поправить. Я надеюсь вам было интересно узнать столь бесполезный, но очень интересный факт.
Ссылка на оригинальную статью: