Почему игры так много весят
Перейти к содержимому

Почему игры так много весят

  • автор:

Почему игры занимают так много места

Почему игры занимают так много местаAssassin's Creed OriginsKilling Floor 2Titanfall StarTopia

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

Это бесконечный цикл. Можно тратить годы на компрессию, но ни у кого нет на это времени. Особенно, если этот вопрос встаёт незадолго до релиза. Стоит ли отложить выход игры на месяц ради того, чтобы уменьшить её размер на 20%? Вряд ли кто-то согласится на такое.

Том Форсайт, разработчик

Двухмерные и low-poly игры «весят» совсем немного и в 2018 году — Stardew Valley, например, занимает около 500 мегабайт. Но вот Forza Motorsport, например, требует около 100 гигабайт, и верхняя планка со временем будет только повышаться.

Мораль истории: покупайте акции интернет-провайдеров и производителей жёстких дисков.

Никакой оптимизации: почему современные игры занимают всё больше места на внутренней памяти

Никакой оптимизации: почему современные игры занимают всё больше места на внутренней памятиDestiny 2Dead or Alive 6<br />» /><img decoding=Hitman 2<br />» /></p>
<p>Этого можно было бы избежать, если бы разработчики не лишали игроков права выбора. Несжатое аудио и текстуры высокого качества можно сделать отдельными дополнениями для тех, кому действительно это нужно. А ещё можно дать игрокам право самим решать, хотят ли они устанавливать отдельные режимы, вроде мультиплеера, и косметические предметы.</p>
<p>Raycevick отметил, что пиратские версии игр нередко сжимаются до приемлемых размеров — например, нелицензионная Hitman 2 таким образом «похудела» со 136,8 гигабайт до 26,8. А значит, эту проблему можно с лёгкостью решить, если позволить игрокам скачивать лишь основной контент.</p>
<p>Блогер призывает игроков обращаться к разработчикам напрямую, чтобы этот способ стал стандартом в индустрии. Иначе размер игр так и будет увеличиваться без веских на то причин.</p>
<h2>Гигантомания: почему современные игры так много весят?</h2>
<p><img decoding=

Те времена, когда видеоигры умещались на дискетах, давно прошли: сегодня средний размер проекта категории AAA составляет уже как минимум 50 гигабайт, а некоторые тайтлы вплотную подобрались к отметке в 200 ГБ. С одной стороны, это вызвано стремительным развитием графических технологий, но в то же время немалую роль играет и банальная экономия на оптимизации. А ведь были времена, когда разработчики доблестно сражались буквально за каждый килобайт!

40 килобайт хватит всем

15 июля 1983 года на прилавках магазинов Японии появились миниатюрные красно-белые коробочки с надписью Family Computer на передней панели. Несмотря на громкое название, с настоящими ПК эти устройства не имели ничего общего: Famicom являлись не чем иным, как первыми полноценными игровыми консолями от компании Nintendo (если не считать Color TV Game 6, представлявшей собой клон Pong от Atari).

Оригинальная Nintendo Family Computer для японского рынка

Первый блин закономерно вышел комом: приставка не отличалась надежностью, став объектом критики из-за многочисленных аппаратных и программных сбоев. Однако, после исправления всех недочетов во второй ревизии, Famicom обрел статус самой популярной игровой консоли в Японии: к концу 1984 года было реализовано свыше 2,5 миллионов приставок, что по тем временам стало абсолютным рекордом. А уже в июне 1985 года в рамках Consumer Electronics Show (CES) Nintendo представила версию Famicom для Северной Америки: консоль сменила название на Nintendo Entertainment System, также претерпев серьезные визуальные изменения и получив модернизированную систему загрузки картриджа. Годом позже NES посетила и европейский рынок.

Так выглядела Nintendo Entertainment System. А какой вариант дизайна больше нравится вам?

В Америке NES снискала не меньшую популярность, чем в Японии: изначально выпускать приставки планировали лишь в штате Нью-Йорк, однако первая партия в 50 тысяч консолей была распродана так быстро, что уже через три месяца NES стали продавать по всей территории США. Хотя уже в конце 80-х у Nintendo появился сильный конкурент в лице Sega с ее 16-битной Genesis/Mega Drive, NES оставалась мировым лидером по объемам продаж и в 90-х. И даже после выхода Super Nintendo Entertainment System консоль NES продолжили выпускать ограниченными партиями вплоть до октября 2003 года, а ее официальная поддержка прекратилась лишь в 2007 году, что с учетом стремительного развития индустрии является абсолютным рекордом. Согласно официальным данным, за всю историю консоли было продано около 60 900 000 устройств и свыше 500 миллионов картриджей к ним.

В чем же секрет популярности NES? Вы можете сказать: «Ну разумеется, в отличных играх» — и будете абсолютно правы. Вот только ни один тайтл, каким бы интересным и увлекательным он ни был, не заставит среднестатистического родителя подарить ребенку приставку (не забываем, что успех консоли определяется именно массовым рынком, а не востребованностью среди энтузиастов), если сам аппарат будет стоить баснословных денег. Чтобы уложиться в 200 долларов (цена игровой приставки на старте), инженерам Nintendo пришлось пойти на множество ухищрений и компромиссов. Однако участь самих разработчиков игр оказалась куда менее завидной: попробуйте-ка создать интересную игру, пускай и двухмерную, дистрибутив которой будет занимать не более 40 килобайт! А между тем именно такой объем памяти имели стандартные картриджи, цены на которые также было необходимо удерживать в разумных рамках.

Картридж для Nintendo Entertainment System изнутри

Каждый из них имел лишь два чипа памяти: один — на 8 килобайт, второй — на 32. Добавление дополнительных микросхем неизбежно привело бы к удорожанию картриджа и появлению «игр не для всех»: более технически продвинутых (ведь когда счет идет на килобайты, даже незначительное расширение памяти позволило бы не просто улучшить графику, но и существенно разнообразить геймплей) и, соответственно, куда более дорогих проектов, чего в Nintendo не хотели.

Именно поэтому Super Mario Bros. в свое время произвела настоящий фурор и даже попала в Книгу рекордов Гиннесса как самая продаваемая видеоигра в истории: разработчики Nintendo прекрасно знали все аппаратные ограничения платформы и сумели выжать максимум из доступных 40 КБ, создав платформер с 32 разнообразными уровнями, множеством секретов и комплексным (по сравнению с большинством конкурентов) геймплеем.

Рекламный постер Super Mario Bros. образца 1985 года

А в 2018 году их подвиг решили повторить разработчики инди-студии Morphcat Games. Они поставили перед собой весьма необычную и амбициозную задачу, задумав создать ретроплатформер, который учитывал бы все аппаратные ограничения оригинальной NES. Забегая вперед, скажем, что эксперимент удался: 1 мая 2019 года Micro Mages действительно вышла в релиз, причем любой желающий имеет возможность приобрести проект не только в цифре, но и в виде самого настоящего картриджа для Nintendo Entertainment System.

Коллекционная версия игры Micro Mages, выпущенной для NES в 2019 году

Игрушка получила 26 уникальных уровней в 8 мирах, заполненных секретами и разнообразными противниками, множество геймплейных механик и поддержку мультиплеера на четырех человек. Чтобы уместить все это великолепие в рамках 40 КБ, разработчикам пришлось приложить немало усилий. Вот несколько приемов, которые они использовали.

Доступная память картриджа распределялась следующим образом: 32 килобайта было выделено под логику игры и хранение данных, а оставшиеся 8 КБ предназначались для хранения графики. Из них 4 килобайта было зарезервировано под спрайты, а еще 4 — для отрисовки статических объектов. Сюрпризы начались уже на этапе создания протагониста.

Архитектура приставки накладывала следующие ограничения: 1 спрайт имеет размеры 8 × 8 пикселей и может использовать 3 оттенка. Сама же приставка может задействовать лишь четыре палитры одновременно и выводить в каждой строке изображения не более 8 спрайтов. Держим в голове, что в мультиплеере у нас будет четыре персонажа, которые должны друг от друга отличаться. И здесь возникают сразу две проблемы. Первая из них заключается в том, что при наличии в кадре противника раскрасить его не получится и антагонист останется черно-белым.

Впрочем, решается она довольно просто: одну и ту же палитру можно использовать повторно. Так как дизайн у противника и героев отличается, такой компромисс не будет бросаться в глаза.

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

В прошлом с этим справлялись так: спрайты отрисовывались поочередно на большой скорости, в результате в каждой строке можно было разместить множество динамических объектов. В случае с CRT-телевизорами такой подход был оправдан, но если вы будете играть на жидкокристаллическом дисплее, используя эмулятор NES, мерцание будет слишком хорошо заметно. Чтобы этого не допустить, пришлось пожертвовать детализацией: теперь для отрисовки каждого персонажа и рядовых противников стал использоваться лишь 1 спрайт.

Такой подход позволил существенно сэкономить доступный объем памяти и добавить множество разнообразных анимаций протагонистов.

Но самые сильные монстры просто обязаны быть большими, страшными и хорошо анимированными. Если использовать современный подход, когда каждый метаспрайт (отрисовывает босса целиком) представляет собой один кадр анимации, места в памяти едва хватит даже для одного такого чудовища.

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

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

В итоге для отрисовки макушки можно обойтись 4 спрайтами вместо 16.

Аналогичным образом можно оптимизировать отрисовку глаз и рта.

Теперь босс занимает всего 21 спрайт и остается еще много места для других чудовищ и динамических объектов. Экономия на лицо, в прямом и переносном смысле.

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

Теперь тайлсет стал значительно меньше, а на хранение данных для одной сцены (экрана) достаточно 60 байт. Совсем немного с первого взгляда, но из-за ограниченных возможностей NES даже этого было недостаточно. С учетом всего вышесказанного напрашивается логичное решение — отразить уровень относительно вертикальной оси и сэкономить 50% памяти. Но тогда пострадает геймдизайн.

Симметрия бросается в глаза, к тому же нижний зал оказывается замурован и игрок не сможет выбраться из такого подземелья. И здесь разработчики нашли оригинальный выход. Индекс каждого блока занимает 1 байт, а всего таких элементов у нас 96. В программировании отсчет начинается с нуля, поэтому индекс последнего блока будет равен 95, что в двоичной системе счисления равно 1011111. В этом числе всего 7 цифр (битов), но в байте их 8.

Один свободный бит можно использовать для того, чтобы сдвинуть тот или иной ряд по горизонтали относительно всех остальных.

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

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

Именно такие остроумные приемы и помогали разработчикам создавать увлекательные видеоигры несколько десятилетий назад.

Оптимизация? Нет, не слышал

Время шло, мощности игровых консолей и персональных компьютеров росли, но, несмотря на это, разработчикам приходилось демонстрировать чудеса изобретательности. Вспомним Legacy of Kain: Soul Reaver. Здесь наш протагонист — не человек, а Похититель Душ: существо, способное свободно перемещаться между материальным и духовным мирами. Астрал, хотя и является отражением мира живых, заметно от него отличается (это важная часть геймплея, так как преграды в реальности можно преодолеть, в нужный момент переместившись в астрал, и наоборот) и населен уникальными монстрами.

Официальный арт Legacy of Kain: Soul Reaver

Для обеспечения плавного перехода между реальностью и астралом (а игровой мир при этом меняется буквально на глазах игрока) в памяти консоли должны были одновременно присутствовать две версии одной локации. Если бы игра была камерной или разделенной на несколько уровней, с этим не возникло бы никаких проблем, но две копии бесшовного мира PlayStation были не под силу: приставка несла на борту 2 МБ оперативной памяти и 1 МБ VRAM. Здесь разработчикам пришлось прибегнуть к механизму фоновой загрузки. Хотя игрок этого и не замечает, на самом деле никакого открытого мира в Soul Reaver нет: бескрайние просторы Ностгота собраны из множества обособленных локаций, подгрузка которых происходит прямо во время игры — например, в тот момент, когда Разиель следует по тайным коридорам или пробирается через пещеры в горах.

Когда Разиель зайдет в пещеру на заднем плане, текущая локация выгрузится из памяти консоли и начнет загружаться новая

В том или ином виде этот прием применялся в других играх (выходивших и до, и после) зачастую куда менее изящно: вспомним знаменитые двери в Resident Evil или лифты в первом Mass Effect. Иногда необходимость в оптимизации порождала оригинальные художественные приемы, как это было в случае с Silent Hill: туманный город-призрак стал именно таким, поскольку разработчикам было необходимо снизить дальность прорисовки на открытых пространствах.

В тумане Silent Hill прятались не только монстры, но и подгружаемые «на ходу» объекты

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

Геймеры со стажем наверняка помнят, какое неизгладимое впечатление производил Crysis. Этот фантастический боевик неплохо выглядит даже по современным меркам.

Спустя 13 лет Crysis почти не устарел с технической точки зрения

А теперь признайтесь, только честно: были ли после Crysis игры, которые произвели на вас такой же вау-эффект? Не глубиной геймплея, не сюжетом, не отдельными фишками, вроде лицевой анимации в L.A. Noire или физики огня в Alone in the Dark, а именно превосходной картинкой? Почти наверняка нет. Конечно, если сравнивать детище Crytek с любым современным AAA-проектом, в глаза будут бросаться более четкие текстуры, более точное освещение, большее количество полигонов, большая дальность прорисовки. Но так ли уж нужны визуальные улучшения, если теперь, для того чтобы с комфортом поиграть в AAA-релиз при стабильном фреймрейте, не обойтись без топовой машины, мощность которой будет избыточна даже для многих профессиональных задач? На этот вопрос каждый ответит сам. Единственное, что можно утверждать с полной уверенностью, — это нужно крупным издателям игр.

Поговорка «Встречают по одежке» в полной мере применима и к видеоиграм: чем красивее графика, тем проще заинтересовать массового потребителя. Если же целевая аудитория не заметит качество эмуляции шерсти на хвосте собаки главного героя или генерируемый в реальном времени дымок от сигареты, отъедающие этак 70% вычислительных мощностей ПК, об этом всегда можно рассказать во время рекламной кампании: не просто же так на маркетинг уходит добрая половина бюджета AAA-игр. Красные и зеленые шильдики на заставочных экранах тоже появляются не просто так: коллаборация с производителем видеочипов требует внедрения новейших графических технологий, способных подвигнуть геймера на покупку очередного «Титана 100500».

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

Разница не так уж и очевидна: если присмотреться, то можно заметить, что при включенном RTX персонажи в центре кадра освещены хуже, нежели солдаты, стоящие ближе к окнам. Так оно и должно быть в жизни, а значит, рейтрейсинг реально работает. Вот только даже на RTX 2080 Ti (а это, на минуточку, топовая видеокарта) включение данной опции вызывает просадки FPS вплоть до 45 кадров в секунду при средних значениях в 72. Причем в большинстве других сцен разницы не видно вообще.

В 4A Games уже поспешили заявить, что откажутся от старых технологий и следующая игра франшизы будет использовать для расчета освещения исключительно трассировку лучей, ведь это существенно упростит разработку. Растеризация выводит объекты по очереди, один за другим, между ними не существует никакой связи, поэтому, чтобы освещение, отражения и тени выглядели естественными, художникам и дизайнерам приходится прилагать немало усилий. В случае с RTX все объекты сцены изначально связаны: луч света отражается от одного предмета, попадает на другой, перенимая его цвет и отражаясь вновь, и так далее. Это позволяет не просто сделать освещение более реалистичным, но и существенно упростить работу над каждой сценой.

Конечно, прогресс не стоит на месте, и вполне возможно, что к релизу следующей части разработчикам удастся добиться действительно фотореалистичного изображения и даже видеокарты среднего ценового сегмента смогут выдавать стабильный FPS с включенным RTX. Но пока, в свете минимальной разницы между «было» и «стало» и из-за необходимости в топовой карте, которая захлебывается от «волшебных лучей», вся эта ситуация выглядит примерно так: «Вы, уважаемые игроки, заплатите больше, чтобы мы работали меньше». Хотя Сильван Троттье, выступивший в роли продюсера Assassin’s Creed 4: Black Flag, которая имела серьезнейшие технические проблемы на релизе, высказался на этот счет еще в 2013 году, заявив следующее:

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

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

Сколько вешать в гигабайтах?

За последние несколько лет размеры дистрибутивов игр выросли до неимоверных значений. Если раньше самые навороченные проекты с открытым миром и кучей контента весили от силы несколько десятков гигабайт, то сегодня даже линейный шутер может спокойно «скушать» 150–200 ГБ дискового пространства, и даже не поморщиться. На сегодняшний день топ-10 самых тяжелых игр выглядит следующим образом.

  1. Call Of Duty: Modern Warfare — 175 ГБ
  2. Final Fantasy XV — 148 ГБ
  3. Gears of War 4 — 136 ГБ
  4. Call of Duty: Black Ops 3 — 113 ГБ
  5. Red Dead Redemption 2 — 112 ГБ
  6. Middle-earth: Shadow of War — 105 ГБ
  7. Call of Duty: Infinite Warfare — 101 ГБ
  8. Quantum Break — 76,5 ГБ
  9. Grand Theft Auto V — 76 ГБ
  10. Gears 5 — 66 ГБ

К Red Dead Redemption 2 вряд ли можно предъявлять какие-либо претензии. Огромный мир, превосходная графика и куча контента. С учетом фирменной проработки мелочей от Rockstar это закономерно требует немалого дискового пространства.

В то же время объем Call of Duty растет постоянно, хотя особых графических изысков в играх серии попросту нет, как и открытого мира. С какой стати в таком случае линейный шутер умудрился «располнеть» до 175 ГБ? Если учесть скорость, с которой выпускаются новые части, ответ становится очевидным: Activision попросту не оставляет разработчикам времени на оптимизацию.

Бакенбарды капитана Прайса с каждым годом обходятся геймерам все дороже

Эти цифры говорят о том, что потребность во вместительном накопителе становится более чем очевидной. Но что насчет производительности? Быть может, удастся обойтись обычным HDD? Увы, нет.

В таблице ниже приведены данные о потреблении оперативной памяти и VRAM наиболее прожорливыми играми, вышедшими за последние годы (измерения проводились на ультранастройках при разрешении 4K).

Игра

Потребление RAM, ГБ

Потребление VRAM, ГБ

Assassin’s Creed: Odyssey

Почему игры так много весят

© Valve Corporation. Все права защищены. Все торговые марки являются собственностью соответствующих владельцев в США и других странах. Политика конфиденциальности | Правовая информация | Соглашение подписчика Steam | Возврат средств

Установить Steam
Все обсуждения > Форумы Steam > Русскоязычный Форум > Подробности темы
24 апр. 2021 в 10:55
!STEAM много весит!
У меня папка со стимом весит 200ГБ.
Кто знает , вдруг есть какие ни будь ненужные файлы?
Сообщения 1 – 9 из 9
24 апр. 2021 в 10:56
игры
моды
резервные копии и все другое
24 апр. 2021 в 10:58
Автор сообщения: tmwichy
игры
моды
резервные копии и все другое

Полностью согласен
25 апр. 2021 в 4:03

Ещё могут «затеряться» на диске остатки недокачанных игр в каталоге steamapps\downloading\
А вообще сам стим-клиент без игр весит около 10 Гб плюс-минус в зависимости от количества игр (и содержит около 100 тысяч файликов. ). Оптимизация по-вальвовски.

25 апр. 2021 в 9:26
Автор сообщения: Howl at the Moon

А вообще сам стим-клиент без игр весит около 10 Гб плюс-минус в зависимости от количества игр (и содержит около 100 тысяч файликов. ). Оптимизация по-вальвовски.

Откуда 10 ГБ? У меня с моей библиотекой в 6к+ игр клиент Steam весит 4,2 ГБ (51700 файлов) из которых 3,08 ГБ (32820 файлов) это папка /librarycache с картинками для всех игр библиотеки. Т.е. сам клиент без этих картинок занимает всего 1,12 ГБ (18880 файлов).
В среднем, как я заметил, картинки для одной игры занимают 0,5 МБ, так что чтобы Steam клиент начал весить 10 ГБ со всеми картинками для библиотеки, папка /librarycache должна весить почти 9 ГБ, а это около 18 тысяч игр в библиотеке должно быть.
А у ТС всего 6 игр, так что у него папка /librarycache вообще несколько мегабайт всего должна занимать, плюс сам клиент Steam чуть более 1 ГБ.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *