Почему современные игры так много весят?
Многие уже и не помнят, но когда-то игра могла уместиться на одной дискете. С годами размер видеоигр начал постепенно увеличиваться. Современные ААА-тайтлы занимают не менее 40 ГБ на жестком диске вашего ПК или консоли. При этом есть множество игр, которые вообще раздувает до невероятных 100-200 ГБ.
Когда-то разработчики старались делать оптимизацию своего проекта на высшем уровне качества и буквально заставляли его весить меньше. Те времена прошли, и сегодня игры могут заниматься сотни гигабайт, а создатели даже не думают, что далеко не у всех есть столько свободного места. В этой статье разберемся, почему игры весят так много и из-за чего это произошло.
Минутка истории
Летом 1983 года на японский рынок выходит консоль Famicom от Nintendo и практически сразу делает настоящий фурор. Все хотят заполучить эту приставку. С годами ее популярность разрастается до такой степени, что Famicom начинает появляться в других странах. За все время существования консоли было продано более 60 млн копий и около 400 млн картриджей к ней. Приставка от Nintendo в те времена стала востребованной не только за счет потрясающих игр, но еще и приемлемого ценника в $200. Чтобы достичь такой цены, пришлось идти на массу ухищрений, и одним из них была разработка игр, которые занимают минимальное количество памяти. Тогда отличные игры удавалось разместить на картридже с объемом всего в 40 килобайт!
Картриджи для Famicom были устроены таким образом, что один чип предлагал 32 килобайта свободного места, а второй 8 килобайт. Соответственно, данные игры разбивали на две части: одна отводилась под графику, другая под все остальное. Например, Super Mario Bros стал легендарным проектом не только за счет своего качества, а еще и потому что это самая продвинутая игра для приставок того времени, которая выжала из 40 доступных килобайт все соки.
В конце прошлого века разработчики видеоигр по-настоящему старались. У них было ограничение по размеру игры, приходилось делать все что угодно лишь бы в него уложиться. Так начали появляться различные уловки со спрайтами главных героев и противников, новые подходы к моделированию окружения, сокращение количества уровней и многое другое. Но время шло, начали появляться новые технологии, а разработчикам надоело так сильно запариваться над созданием видеоигр. В связи с этим они начали «раздуваться» в десятки раз!
И так сойдет…
Когда вышла PlayStation 1, игры начали весить уже гораздо больше 40 килобайт. Технологии не стояли на месте, и геймеры получали потрясающие, на то время, проекты с большими локациями, приятной графикой и новыми геймплейными механиками. Тем не менее разработчикам все равно приходилось выдумывать всякие уловки, чтобы их детище адекватно работало на старых ПК и консолях середины 90-х. Это было связано с тем, что определенные ограничения по размеру игры и ее возможностям все равно оставались. Например, на борту PlayStation 1 было 2 МБ оперативки и 1 МБ видеопамяти, а разработчики уже начали замахиваться на открытый мир в играх, естественно, с таким железом это было не реально.
Яркий пример фокусов в процессе разработки – это псевдооткрытый мир в Legacy of Kain: Soul Reaver. Там игрокам лишь казалось, что они путешествуют по огромному фантастическому миру. На самом деле создатели использовали фоновую загрузку. То есть весь открытый мир был сшит из отдельных локаций. Когда главный герой переходил из одной в другую, то предыдущая попросту пропадала. Просто переход сделали так, чтобы загрузку локации игроки не увидели. Подобный прием использовали в Silent Hill. Если вы думали, что туманный город в этой игре – это задумка сценаристов, то спешим вас разочаровать. Туманом разработчики прикрыли подгружаемые на ходу локации и целые объекты.
Подобным грешили и в середине 2000-х, некоторые инди-студии даже сегодня используют подобные приемы, лишь бы их игра не стала весить сотню гигабайт, а то вряд ли кто-то захочет забивать столько памяти ради сомнительного проекта от неизвестных разработчиков. Например, подгрузка в реальном времени происходит в Mass Effect, когда главный герой катается на лифте, а в серии Resident Evil она срабатывает, как только вы зайдете в очередную комнату. Игры начали весить больше, разработчики все еще продолжали их хоть как-то оптимизировать, но со временем им это надоело.
Да кто такой этот ваш рейтрейсинг?
Одной из самых важных причин, из-за которой игры начали занимать больше места на жестком диске, стала графика. Новые технологии позволили разработчикам добиться желаемого реализма в видеоиграх, к которому они шли десятилетиями. Причем в борьбе за улучшение графики постепенно стало плевать на оптимизацию. Главное сделать игру красивой, а вот как она будет работать и сколько будет весить, это уже никого не волнует. Чего только стоит Crysis, который вышел в 2007 году и выглядел просто потрясающе. К сожалению, насладиться красотами проекта от Crytek первое время никто не мог, потому что старые видеокарты попросту не тянули картинку игру на максимальных настройках. Дошло до того, что разработчики выпустили издание Crysis вместе с новой видеокартой, которая давала возможность наконец-то увидеть все их труды. Уже позже более мощные видюхи начали появляться на рынке.
Самые дорогие коллекционные издания игр в истории
То же самое получилось и с новомодным рейтрейсингом, который не поддерживают старые видеокарты. Например, данную технологию в своем проекте решили использовать создатели Metro:Exodus, но они прекрасно понимали, что если использовать только ее, то про хорошие продажи игры можно забыть. Они решили вместе с рейтрейсингом использовать и старую технологию растеризации. В итоге владельцы более слабых видеокарт все равно смогли поиграть, хоть и картинка была хуже. А теперь только представьте во сколько раз раздулся размер игры из-за того, что создатели впихнули в нее сразу 2 серьезные технологии? Это десятки лишних гигабайт.
В будущем подобных примеров, скорее всего, станет гораздо меньше, потому что разработчики по очереди заявляют, что постепенно откажутся от старых технологий. Дело в том, что добиться более качественной графики в игре вполне реально, используя один лишь рейтрейсинг, и, как говорят создатели игр, им гораздо проще работать с ним, чем сидеть и выжимать последние соки из старых технологий. Получается, что будущие игры будут весить еще больше, потому что разрабы тупо забьют на оптимизацию и будут использовать современные технологии по полной программе.
С консолями все тоже не так просто. Апгрейдить их, конечно же, не придется, но есть вероятность, что новые версии приставок будут выходить чаще. Если появление PlayStation 4 Pro и Xbox One X в текущем поколении было приятной неожиданностью, то в следующем и будущих поколениях, из-за лени разработчиков, нас с большой вероятностью ждет несколько версий консолей, которые будут выходить с разницей в 3-4 года. Причем мы будем вынуждены их покупать, иначе про новые игры придется забыть.
На ринг выходят тяжеловесы
Настало время разобрать самые «раздутые» проекты современности, которые не стесняются жестоко пожирать свободное место на ваших жестких дисках. Рейтинг «тяжеловесов» выглядит следующим образом:
-
– 175 ГБ;
- Middle-earth: Shadow of War – 105 ГБ;
– 101 ГБ; - Quantum Break – 76,5 ГБ;
– 76 ГБ;
– 66 ГБ.
– 148 ГБ;
– 136 ГБ;
– 113 ГБ;
– 112 ГБ;
Этот ТОП наглядно демонстрирует, что конвейеру под названием Call of Duty плевать на ваши жесткие диски, и через несколько лет играть придется только в шутер от Infinity Ward, просто для других игр не хватит места. А еще разработчики напрочь забыли, что такое оптимизация, из-за чего размер каждой новой части CoD растет словно на дрожжах даже без видимых изменений в графике.
10 видеоигр с абсолютно безумными установочными размерами
С другой стороны, мы имеем Gears 5, которая является самой масштабной игрой в серии и предлагает потрясающую графику, но весит в 2 раза меньше предыдущей Gears of War 4. Вот где разработчики действительно старались и приложили максимум усилий для качественной оптимизации.
Отдельно можно отметить Red Dead Redemption 2, которая весит почти в 2 раза больше предыдущего проекта от Rockstar – GTA V, но в ней и контента вдвое больше. Огромный открытый мир, сногсшибательная графика и просто море контента, который другим «тяжеловесам» из списка и не снился. Это идеальный пример того, за счет чего игры должны весить много, и в подобных ситуациях 100 ГБ на жестком диске можно выделить с удовольствием.
Будущее уже не изменить
За 40 лет видеоигры проделали огромный путь от пиксельных бродилок до кинематографичных симуляторов с открытым миром, и не удивительно, что сегодня им пришлось покинуть старые картриджи. Тем не менее увеличение в размерах связано не только с использованием новых технологий во время разработки, а еще и с невероятной ленью разработчиков.
Популярные студии продолжают забивать на оптимизацию и уверены в том, что их проект в любом случае купят. Каждую новую часть Call of Duty или Need For Speed на рынке раскупают как горячие пирожки, при этом часто новинка, кроме сеттинга, практически ничем не отличается от предыдущей. Соответственно, крупные разработчики продолжают пихать в свои проекты самые крутые технологии вообще без оптимизации, а потом возвращаются в свои дорогущие дома и просто ждут продаж.
5 лучших недорогих SSD на начало 2020 года
Лишь изредка случается так, что именитые разработчики получают оплеуху от геймеров, когда закрывают глаза на качество проекта. Яркий пример Warcraft III: Reforged, который вышел ужасным, и от провала его не спас даже статус «легендарной» стратегии всех времен. Таких примеров, когда разработчиков наказывают из-за отсутствия оптимизации и гигантских размеров проекта, хотелось бы видеть больше.
Будущее уже не изменить, с каждым годом игры начнут весить еще больше, но самое главное, что далеко не все проекты заслуживают того количества памяти, которое они требуют. Что вы думаете по поводу тяжеловесных игр, и до каких размеров могут раздуть будущие проекты? Пишите в комментариях.
Гигантомания: почему современные игры так много весят?
Те времена, когда видеоигры умещались на дискетах, давно прошли: сегодня средний размер проекта категории 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 самых тяжелых игр выглядит следующим образом.
- Call Of Duty: Modern Warfare — 175 ГБ
- Final Fantasy XV — 148 ГБ
- Gears of War 4 — 136 ГБ
- Call of Duty: Black Ops 3 — 113 ГБ
- Red Dead Redemption 2 — 112 ГБ
- Middle-earth: Shadow of War — 105 ГБ
- Call of Duty: Infinite Warfare — 101 ГБ
- Quantum Break — 76,5 ГБ
- Grand Theft Auto V — 76 ГБ
- Gears 5 — 66 ГБ
К Red Dead Redemption 2 вряд ли можно предъявлять какие-либо претензии. Огромный мир, превосходная графика и куча контента. С учетом фирменной проработки мелочей от Rockstar это закономерно требует немалого дискового пространства.
В то же время объем Call of Duty растет постоянно, хотя особых графических изысков в играх серии попросту нет, как и открытого мира. С какой стати в таком случае линейный шутер умудрился «располнеть» до 175 ГБ? Если учесть скорость, с которой выпускаются новые части, ответ становится очевидным: Activision попросту не оставляет разработчикам времени на оптимизацию.
Бакенбарды капитана Прайса с каждым годом обходятся геймерам все дороже
Эти цифры говорят о том, что потребность во вместительном накопителе становится более чем очевидной. Но что насчет производительности? Быть может, удастся обойтись обычным HDD? Увы, нет.
В таблице ниже приведены данные о потреблении оперативной памяти и VRAM наиболее прожорливыми играми, вышедшими за последние годы (измерения проводились на ультранастройках при разрешении 4K).
Почему игры занимают все больше места?
Список игр, которые вскоре легко будут занимать более 100 Гб, безостановочно растет.
Помните, всего лишь месяц назад я писал, что технология HDD умерла для меня? Некоторые из последних игр очень стараются заставить меня пересмотреть эту точку зрения. Как только я подумал, что 1 Тб памяти будет более чем достаточно, а про 2 Тб даже говорить не приходилось, сразу же появилось (или стало известно о скором выходе) несколько игр, размер которых превысит 100 Гб. Конечно же, мне не нужно устанавливать на ПК все имеющиеся у меня игры, но мне нравится держать некоторую коллекцию для разнообразных тестов и всякого такого. Но я впал в изумление, когда увидел Red Dead Redemption 2, готовую поглотить 150 Гб, и Call of Duty: Modern Warfare, на которую в конечном итоге, судя по тому, что известно, может понадобиться 175 Гб.
Что за полнейший бред творится с размером игр?! Индустрия внезапно перепрыгнула с 50 Гб, считающихся огромными, до почти трехкратного превышения! Я помню, когда целые игровые миры могли содержаться всего лишь на одной дискете — ну, может, на коллекции дискет. Не важно. Дело в том, что, если бы мы все еще работали в дистрибуции с физическими носителями, мы смотрели бы на игры, которые требовали бы по 20 DVD, 250 CD или, если хотите, 121 500 3,5-дюймовых дискет). Разумеется, речь идет про версию с «высокой плотностью» размером в 1,44 Мб, а не о более ранней в 720 Кб.
Я решил немного покопаться, потому что, хоть простой ответ заключается в том, что в игры теперь включают больше текстур, видео, аудио, карт и других файлов, это, на самом деле, объясняет далеко не все. Я заострил внимание на первой позиции в этом списке, потому что информация о текстурах была наиболее доступной. Я помню довольно много текстур-паков высокого разрешения, выпущенных за последние пару лет. Что я действительно хотел узнать, так это то, почему текстуры с более высоким разрешением занимают настолько больше места.
Позвольте мне начать с простого примера — размеры файлов для относительно скромной текстуры разрешением 2048×2048 пикселей (2K-текстуры, если так привычнее). Если вы хотите сохранить такую текстуру без какого-либо сжатия, это будет означать 32-битное значение для каждого пикселя: RGBA (красный, зеленый, синий и альфа-канал — это такое техническое название для степени прозрачности). Всего получается около 4,2 миллиона пикселей и, как мы упомянули выше, 4 байта на пиксель, что в итоге выдает нам хороший файл размером около 16 Мб. А теперь подумайте обо всех моделях и текстурах в некоторых наиболее крупных играх с открытым миром. Если бы на каждой поверхности использовалась несжатая 2K-текстура, даже при размере игры в 150 Гб осталось бы место лишь для 9600 уникальных текстур.
Ладно, это на самом деле не выглядит слишком печально, но помните, что речь шла о 2K-текстурах. А что, если игра хочет использовать 4K-текстуры разрешением 4096×4096? Это увеличит размер файла в четыре раза и, как следствие, сократит число уникальных текстур до одной четвертой: 2400 текстур для 150 Гб или всего 800 текстур в игре на 50 Гб. Этого даже близко не достаточно для современной игры со множеством различных локаций, так что дело обстоит иначе.
Но позвольте мне вернуться к тому моменту, где я говорил о сжатии. Почему текстуры должны храниться без сжатия? Конечно, это может привести к несколько более высокому качеству изображения, но размеры файлов в итоге окажутся огромными (относительно). Любой, кто знаком с цифровыми изображениями, вероятно, думает, что файлы форматов JPEG или PNG подошли бы лучше, и если мы говорим про размеры файлов — они будут правы. Это как положить мусор в уплотнитель: JPEG высокого качества (но с потерей данных, то есть в нем все равно будут артефакты сжатия) может сократить размер файла примерно до 2 Мб или сильнее (соответственно, с более низким качеством изображения) — до 1 Мб или даже до 0,5 Мб. Если попробовать PNG, то его сжатие без потерь обычно может уменьшить размер файла вдвое.
Проблема заключается в том, что оба этих алгоритма являются в достаточной мере переменными и сложными. Вашему компьютеру может потребоваться всего лишь доля секунды, чтобы открыть и обработать изображение формата JPEG, но что, если ему потребуется обработать тысячи таких изображений? Время загрузки игры возрастет непомерно, так что геймеры вряд ли обрадуются.
Поприветствуем алгоритм DirectX Texture Compression, также известный как DXTC (или его ранняя версия — S3TC, названная в честь ныне уже несуществующей компании S3 Graphics, которая создала его еще в конце 90-х). Официально S3TC стал поддерживаться в DirectX с версии 6.0, выпущенной в 1998 году. Позже его переименовали в DXTC, развив его до пяти различных режимов работы. Я не буду углубляться в детали низкого уровня, но если вкратце, DXTC — это алгоритм фиксированного сжатия изображений. Это означает, что в отличие от JPEG и PNG, здесь легко с точностью определить, насколько большими будут конечные файлы, а также проще создать аппаратное обеспечение для ускорения обработки изображений. По сути, все современные видеокарты, начиная с 2000 года, имеют аппаратную поддержку S3TC/DXTC.
Для игр, использующих DXTC, наиболее распространенными режимами работы являются степени сжатия 6:1 или 4:1. Это означает, что игра может хранить в четыре-шесть раз больше изображений в том же объеме. Unreal Engine и Unity Engine тоже поддерживают DXTC, наряду с другими форматами файлов, и, хотя я уверен, что есть исключения, мне кажется, что большинство игр в настоящее время используют для своих текстур именно DXTC. И, естественно, не все текстуры, используемые в игре, должны иметь одинаковое разрешение, поэтому маленькие объекты, которые могут занимать всего несколько сотен пикселей экранного пространства, не будут храниться в виде массивной 2К- или 4К-текстуры.
Есть еще одна вещь: MIP-текстурирование. «MIP» происходит от латинской фразы «multum in parvo», означающей «много вещей в маленьком пространстве» (да, я тоже не знал об этом, пока не написал эту статью — спасибо, Википедия!). MIP-текстурирование существует с начала 80-х годов и широко используется в графических приложениях. Краткий итог: не каждую текстуру нужно постоянно хранить в полном разрешении. Предварительно рассчитав текстуры с более низким разрешением, можно оптимизировать требования к памяти и пропускной способности.
В конечном итоге каждая DXTC-текстура сохраняет мипмапы одной и той же текстуры интервалами в половину разрешения, практически до нуля – до размера в 1×1 пиксель. Если вы работаете с 2K-текстурой, вам нужно предварительно рассчитать 11 дополнительных файлов: 1024×1024, 512×512, 256×256, 128×128, 64×64, 32×32, 16×16, 8×8, 4×4, 2×2 и 1×1. Unreal Engine даже предоставляет эти полезные сведения в своей документации с указанием окончательных размеров файлов.
Теперь мы можем, по крайней мере, получить разумное представление о том, сколько места потребуется игре, основываясь на количестве используемых текстур и их размере. Расчет начинается с количества уникальных текстур, и для простоты я собираюсь игнорировать тот факт, что не все текстуры имеют одинаковый размер. Я думаю, можно сказать, что для любой достаточно сложной игры со множеством локаций счет будет идти на тысячи текстур. Давайте просто попробуем 10000 в качестве удобного круглого числа.
Если исходить из размеров файлов, указанных Unreal Engine, то для 1К-текстур (стандартные текстуры «высокого качества») игре потребуется 13,3 Гб. Увеличьте разрешение хотя бы до 2K, и это приведет к скачку до 53,3 Гб. А если вам нужны новейшие и самые лучшие 4К-текстуры, вам придется подготовить 223,7 Гб. Упс! И это мы говорим только про текстуры. В играх также присутствует много аудиофайлов, особенно если учесть их полную озвучку (например, опять же, Call of Duty и Red Dead Redemption 2). Добавьте к рассмотрению файлы геометрии и разные видео, и в итоге любая современная игра, которая использует текстуры в разрешении 4K, окажется довольно массивной.
Очевидно, что нет однозначного подхода относительно того, как игры хранят свои текстуры, не говоря уже об аудио и видео файлах. Тем не менее, в целом, большая часть проблемы разрастания размера последних игр, похоже, произрастает именно из текстурирования. Преимущество состоит в том, что мы больше не получаем в играх повторяющиеся текстуры, и все выглядит намного более реалистичным. Оглядитесь назад в прошлое на такие игры, как оригинальный Half-Life или Deus Ex, — не заметить улучшение качества изображения невозможно. Я с нетерпением жду возможности посмотреть на закат в Red Dead Redemption 2, любуясь графикой — и будьте вы прокляты, 150 Гб!
Но текстуры с более высоким разрешением, несомненно, подвержены уменьшению заметного прибавления в качестве, особенно при более низких разрешениях. Переключитесь с ультры на текстуры с высоким качеством (с 4K до 2K или с 2K до 1K), и изменения часто даже трудно будет заметить, особенно на 1080p-мониторе. Это потому, что высококачественные текстуры обычно используются только на небольшой части экрана. В конце концов, по понятиям, стена с 2K-текстурой должна выглядеть лучше, чем та же стена с 1K-текстурой, но отойдите подальше, и игровой движок, вероятно, заменит 2K-текстуру аналогом с более низким на одну ступень разрешением, и вы этого даже не заметите.
Это хорошая новость, потому что я, безусловно, совсем не жду игр, пытающихся использовать текстуры с разрешением 8K, которые еще в четыре раза увеличат их размер. Возможно, когда-нибудь в будущем мы все будем использовать 8K-дисплеи, и это встанет в разряд нормального, но, надеюсь, к тому времени у нас также будут доступные SSD-накопители емкостью в десятки терабайт. Или так, или кто-нибудь умный изобретет более эффективный алгоритм сжатия текстур. Я могу на это только надеяться.
Гигантомания: почему современные игры так много весят?
Те времена, когда видеоигры умещались на дискетах, давно прошли: сегодня средний размер проекта категории AAA составляет уже как минимум 50 гигабайт, а некоторые тайтлы вплотную подобрались к отметке в 200 ГБ. С одной стороны, это вызвано стремительным развитием графических технологий, но в то же время немалую роль играет и банальная экономия на оптимизации. А ведь были времена, когда разработчики доблестно сражались буквально за каждый килобайт!
40 килобайт хватит всем
15 июля 1983 года на прилавках магазинов Японии появились миниатюрные красно-белые коробочки с надписью Family Computer на передней панели. Несмотря на громкое название, с настоящими ПК эти устройства не имели ничего общего: Famicom являлись не чем иным, как первыми игровыми консолями компании Nintendo, ранее занимавшейся исключительно созданием игровых автоматов.
Оригинальная 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 пикселей и может использовать 4 оттенка. Сама же приставка может задействовать лишь четыре палитры одновременно и выводить в каждой строке изображения не более 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 самых тяжелых игр выглядит следующим образом.
- Call Of Duty: Modern Warfare — 175 ГБ
- Final Fantasy XV — 148 ГБ
- Gears of War 4 — 136 ГБ
- Call of Duty: Black Ops 3 — 113 ГБ
- Red Dead Redemption 2 — 112 ГБ
- Middle-earth: Shadow of War — 105 ГБ
- Call of Duty: Infinite Warfare — 101 ГБ
- Quantum Break — 76,5 ГБ
- Grand Theft Auto V — 76 ГБ
- Gears 5 — 66 ГБ
Цифры очень показательны: сразу становится очевидным, кто учится на собственных ошибках и хоть иногда задумывается о геймерах, а кто — нет. Gears 5 стала самой масштабной и технологически совершенной игрой в серии, однако весит вдвое меньше по сравнению с четвертой частью и при этом демонстрирует отменную картинку. Оказывается, если поработать над оптимизацией, можно добиться впечатляющих результатов.
К Red Dead Redemption 2 вряд ли можно предъявлять какие-либо претензии. Огромный мир, превосходная графика и куча контента. С учетом фирменной проработки мелочей от Rockstar это закономерно требует немалого дискового пространства.
В то же время объем Call of Duty растет постоянно, хотя особых графических изысков в играх серии попросту нет, как и открытого мира. С какой стати в таком случае линейный шутер умудрился «располнеть» до 175 ГБ? Если учесть скорость, с которой выпускаются новые части, ответ становится очевидным: Activision попросту не оставляет разработчикам времени на оптимизацию.
Бакенбарды капитана Прайса с каждым годом обходятся геймерам все дороже
Эти цифры говорят о том, что потребность во вместительном накопителе становится более чем очевидной. Но что насчет производительности? Быть может, удастся обойтись обычным HDD? Увы, нет.
В таблице ниже приведены данные о потреблении оперативной памяти и VRAM наиболее прожорливыми играми, вышедшими за последние годы (измерения проводились на ультранастройках при разрешении 4K).