Может быть вы застали времена, когда игру можно было принести на нескольких дискетах? Увы, они давно канули в Лету. Если раньше самые сложные проекты с открытым миром и обилием контента весили несколько десятков гигабайт, то сегодня даже линейные шутеры могут занимать больше 150 Гб, а минимальный размер трипл A проекта вряд ли будет меньше 50 Гб. И это может быть серьезной проблемой для активных геймеров. А также для тех, у кого медленный интернет. Ведь загрузка таких объемов может занять немало времени. Сегодня мы разберемся: почему так происходит и можно ли с этим что-то поделать.
Больше не нужны физические носители
В эпоху до повсеместного распространения широкополосного интернета разработчики игр были ограничены максимальным размером своих проектов. Игры должны были помещаться на адекватное количество CD, а затем DVD-дисков, обычно не превышая четырех штук. Blu-ray диски и устройства для их чтения не успели широко распространиться из-за быстрого развития интернета и удешевления флеш-накопителей.
С переходом от игр на DVD играм к загружаемым из Сети, разработчики поняли, что можно экономить на сокращении размера билда, поскольку не было необходимости ограничивать размер проекта физическими носителями. Это привело к появлению игр объемом 50, 100, 150 и даже 200 гигабайт. В то время как раньше RPG с огромными игровыми мирами, такими как The Elder Scrolls III: Morrowind или Gothic 2, умещались на одном-двух дисках, зачастую CD, а не DVD.
Что же там так много весит?
Звук
Значительную долю занимают звуковые файлы. Они должны быть высокого качества, и если игра поддерживает форматы объемного звука, размер файлов существенно увеличивается. В современных играх присутствует огромное количество звуковых эффектов, диалогов и музыкальных композиций, что добавляет немало много данных к общему объему билда.
В сюжетных играх, особенно в RPG, озвучка часто занимает до 10-20 гигабайт. Более агрессивные алгоритмы сжатия могли бы уменьшить этот объем, поскольку большинство игроков вряд ли заметят ухудшение качества аудио на 1-5%. Бывают казусы, как, например с Titanfall. Она занимала 48 гигабайт в основном из-за почти не сжатого звука.
Некоторые репакеры предлагают возможность скачать игру в меньшем объеме за счет того, что из нее будут вырезаны все варианты озвучки, кроме выбранного. Но и некоторые разработчики также не заставляют игроков иметь у себя на компьютере сразу все варианты озвучки, позволяя менять локализацию в Steam, а не в настройках игры.
Текстуры
Еще одна причина большого размера игр — это текстуры и модели, которые требуют значительного места для хранения. Разработчики редко делают свои проекты модульными, что могло бы сократить объем скачиваемых данных. Например, если игрок не планирует использовать разрешение 4K и играет на низких настройках в FullHD, ему не нужны текстуры высокого разрешения. Если бы модульность была предусмотрена на уровне современных игровых движков, игроки с менее мощными компьютерами могли бы скачивать гораздо меньшие объемы данных – 50-100 гигабайт вместо 200 и 25-40 гигабайт вместо 80.
Дубли
Разработчики консольных AAA-проектов часто сталкиваются с необходимостью дублирования игровых ресурсов в архивах по нескольку раз, чтобы сократить время доступа к ним. Эта проблема была особенно актуальна до появления SSD в приставках и ПК, но тем не менее, чрезмерное дублирование ресурсов остается распространенным и сейчас. Дублирование помогает ускорить доступ к необходимым данным, но приводит к значительному увеличению размера игры.
Вдобавок к этому, разработчики нередко оставляют в игровых архивах неиспользуемые модели, текстуры, аудио и другие ресурсы. Это создает дополнительные объемы данных, которые могли бы быть удалены. Такие остатки часто становятся предметом исследований игроков, которые находят вырезанный контент и недоделки в играх. Удаление этих ненужных ресурсов могло бы сократить общий вес проекта на 1-2% и даже до 20-30% в некоторых случаях, но лишило бы энтузиастов возможности поковыряться в кухне разработчиков.
Донатный шмот
В онлайновых проектах, киберспортивных сессионках и играх-сервисах, объем билда сильно увеличивается из-за донатных скинов и предметов. Даже если игрок не купил их, все равно все модели и текстуры донатных предметов хранится в клиенте игры, занимая десятки гигабайтов.
Сделать что-то с этим трудно, поскольку разработчики получают значительную прибыль от продажи таких предметов. Теоретически, можно было бы сделать так, чтобы модели и текстуры для донатных вещей скачивали только те, кто их покупает. Но тогда только они бы могли их видеть и больше никто из других соигроков. А это очевидно снизит количество людей, вкладывающих деньги в игру, что невыгодно для студий.
Нежелание оптимизировать игры
Одна из причин неадекватного увеличения размеров современных игр заключается в банальном нежелании разработчиков заниматься оптимизацией игры в этой сфере. Часто создатели крупных проектов находятся под давлением издателей, которые требуют выпустить игру как можно быстрее. В результате об оптимизации приходится лишь мечтать. На тщательное удаление незадействованных ресурсов из игровых архивов просто не остается времени, а после релиза — тем паче. Игра уже вышла, и возвращаться к оптимизации никто не собирается. Исключения случаются, но крайне редко.
Эта проблема не ограничивается только видеоиграми. Программное обеспечение в целом также страдает от нерационального использования всевозможных библиотек и фреймворков. Программы, которые могли бы занимать сотни килобайт, в итоге занимают сотни мегабайт. В мире видеоигр происходит нечто похожее. Если можно сделать что-то проще и потратив меньше усилий, то, несмотря на увеличение объема игры и возможные тормоза, большинство разработчиков выберет именно этот путь.
Можно ли сжимать ресурсы?
Одна из основных причин, почему невозможно просто сжимать все данные в игре, заключается в текстурах. Сильное сжатие текстур даже на время скачивания требует значительных ресурсов для перекодировки изображений. Этот процесс чрезвычайно ресурсоемкий и сложный.
Несмотря на это, разработчики продолжают искать способы экономить место на жестком диске. Программист Том Форсайт, работавший над играми для ПК, Dreamcast и Xbox в девяностые и начале двухтысячных, создавал специальные программы для уменьшения размера игр. Одной из таких утилит была программа, которая сравнивала сжатые и несжатые текстуры, определяя, какие из них можно перекодировать, а какие лучше оставить без изменений. Форсайт также искал дубликаты среди текстур, а во время работы над StarTopia даже создал собственный аудиоформат за неделю до релиза игры.
Но в современных условиях, когда разработчикам не нужно умещать игры на CD-диски, поэтому они не идут на такие радикальные меры для уменьшения размеров игр. Этот процесс требует времени, которого у студий часто не хватает. Стоит ли откладывать выпуск игры на месяц, чтобы уменьшить её размер на 10-20%? Вряд ли кто-то согласится на это.
Что же делать игрокам?
У игроков, к сожалению, не так много способов повлиять на разработчиков и издателей. Один из вариантов — информационные кампании, а другой — просто не покупать игру. Если игра плохо оптимизирована или занимает чрезмерно много места, ее можно не покупать, а, например, качать на торренте. Из принципа. Информационные кампании можно вести на официальных форумах игр, в соцсетях и на тематических ресурсах. В распространении информации о некачественных играх помогают петиции, о которых любят писать журналисты.
Тем не менее, несмотря на все неудобства и жалобы пользователей вряд ли в ближайшие годы ситуация изменится к лучшему. Скорее всего, игры будут продолжать расти в объеме. Это связано с постоянным стремлением разработчиков улучшать графику, добавлять новые функции и увеличивать масштаб игровых миров. В будущем, вероятно, игры будут занимать еще больше места и пользователям придется приспосабливаться к этим реалиям, покупая больше пространства для хранения и повышая скорость интернет-соединения.
А что вы думаете по этому поводу? Пишите в комментарии!
Если статья была интересна — ставьте лайк! И не забывайте подписываться на Техничку! Впереди еще много интересного!