Вчера был опубликован новый патент от Valve, который (помимо прочего) может позволить функцию “мгновенного запуска игры” для игр, загружаемых из Steam. Спасибо Павлу Джундику из SteamDB за находку в Twitter.
Патент был подан еще в марте 2020 года разработчиком Пьером-Лу Гриффе, который активно участвует в Linux-работе Valve (с Proton и Steam Deck), но опубликован он был только вчера. Цель этой технологии не только в том, чтобы позволить людям гораздо быстрее входить в игры, но и в том, что она может быть использована для освобождения дискового пространства. Как отмечается в описании:
Клиентские машины, на которых запущены исполняемые файлы видеоигр, могут использовать компонент прокси файловой системы, который настроен на отслеживание операций чтения, выполняемых исполняемым файлом игры во время игровой сессии, генерирование данных доступа на основе отслеженных операций чтения и сообщение данных доступа удаленной системе. Такой подход к телеметрии позволяет удаленной системе собирать данные доступа, сообщаемые несколькими клиентскими машинами, каталогизировать данные доступа в соответствии с конфигурацией клиентской системы и анализировать данные доступа для создания данных, которые могут использоваться клиентскими машинами для реализации различных игровых функций, включая, без ограничений, “мгновенную игру” в видеоигры, отбрасывание неиспользуемых блоков игровых данных для освобождения ресурсов локальной памяти и/или локальную предварительную выборку игровых данных для уменьшения задержки во время игрового процесса.
Кое-что из этого действительно похоже на то, как работает нынешняя система предварительного кэширования шейдеров: она собирает данные с нескольких машин, чтобы затем раздать шейдеры другим людям, когда они загружают игру. На самом деле, это может быть отчасти то, что говорится о предварительной выборке игровых данных, но, похоже, это идет дальше, сбрасывая некоторые элементы в оперативную память для еще более быстрого доступа.
Что касается функции “мгновенного запуска игр”, то в других Steam установках она вроде как есть, когда вы можете нажать кнопку “играть” до того, как завершится полная загрузка, и это звучит похоже. В системе, которую предлагает Valve, разработчикам, похоже, не придется менять свой код, поскольку функции будут встроены в клиент Steam и способ загрузки игр, причем он будет предсказывать, что вам понадобится в первую очередь с точки зрения данных, полученных от других пользователей.
Более подробную информацию о патенте смотрите в полном тексте.