Недавно компания Bethesda Softworks представила набор технологий для ускорения потоковых игр под общим названием Orion — он может использоваться как в функциях вроде потокового вещания Steam, так и в облачных сервисах типа Google Stadia. Роберт Даффи (Robert Duffy) и Джеймс Альтман (James Altman) из издательства рассказали журналистам Gamesindustry кое-какие подробности о своём новом SDK.
По сути, Orion — это группа программных технологий, которые Bethesda собрала в единый пакет разработки программного обеспечения. Компания утверждает, что, внедрив эти методы в любой игровой движок, разработчики могут значительно снизить задержки и требования к пропускной способности сетевого соединения, а также повысить производительность серверных систем в режиме потокового исполнения. Orion является продуктом команды разработки движка id Tech из Далласа и Франкфурта, причём Альтман говорит, что работа над потоковой технологией ведётся студией id Software уже много лет.
Есть две основные проблемы для практического воплощения концепции потоковой передачи игр: задержки ввода и вычислительная производительность. Сейчас компании, работающие над потоковыми технологиями, рассматривают проблему задержек как аппаратную, пытаясь преодолеть её путём создания инфраструктуры, уменьшающей расстояние между клиентами и облачными серверами или создавая аппаратные блоки кодирования и сжатия видео для уменьшения требований к пропускной способности. Проблема в том, что такого рода оптимизации начинаются лишь после того, как игра, запущенная на удалённом сервере, уже отрисовала конечный кадр.
«Мы считали, что сможем добиться значительной экономии и заметных улучшений игрового окружения, начав наши оптимизации с возможно более раннего этапа, то есть решая проблему на уровне игрового движка», — отметил Альтман. Он подчеркнул, что сейчас потоковые службы требуют от пользователей наличия минимальной полосы пропускания в 25 Мбит/с для удовлетворительного качества, хотя в среднем в США домохозяйствам доступно соединение только в 18 Мбит/с.
Кроме того, облачные игры требуют больших вычислительных мощностей потому, что помимо рендеринга необходимо максимально быстрое и эффективное сжатие видеопотока — в масштабах потоковых служб новой волны это довольно серьёзно.
Директор по технологиям id Software Роберт Даффи, будучи в Роквилле (штат Мэриленд), продемонстрировал журналистам преимущества Orion на примере особой версии Doom (2016). Шутер воспроизводился на MacBook в потоковом режиме в разрешении 1080p, исполняясь при этом в центре обработки данных в штате Огайо. По его словам, при использовании данной технологии задержки становятся заметны в случае связки клавиатуры и мыши, но при использовании контроллера через одну-две минуты игрок уже перестаёт ощущать запаздывания.
Господин Даффи показал работу Doom 2016 при активации одной из ключевых оптимизаций Orion и без неё. В результате использование метода уменьшает видеопоток с 27–35 Мбит/с до 20–23 Мбит/с, время рендеринга облачного ГП — с 1,3 мс до 1 мс на кадр, а время кодирования — с 5,7 мс на кадр до 4,3 мс на кадр. Это может показаться скромной прибавкой, но для игры, исполняемой на частоте в 60 кадров/с подобная разница может оказаться принципиальной (не говоря уже о снижении требований к провайдеру).
Согласно внутренним выкладкам Bethesda, использование Orion по сравнению с полным отключением оптимизаций во время 10-минутного теста позволило снизить среднюю пропускную способность с 23,43 Мбит/с до 13,67 Мбит/с. Аналогичным образом, по словам компании, на значение до 30 % уменьшается время кодирования видео. Вдобавок нагрузка на ГП снижается с 60–64 % до 55 %, а загрузка видеопроцессора — с 17,5 % до 15 %. Эта небольшая экономия позволяет облачным серверам существенно снижать затраты на электроэнергию.
Какие же методы предлагают использовать специалисты id Software для оптимизации видеопотока? Например, в большинстве современных игр применяется такой эффект постобработки, как эмуляция зернистости плёнки, позволяющей визуально повысить детализацию изображения и добавить кинематографичности. Алгоритмам кодирования видео сложно и затратно их обрабатывать, так что идея состоит в том, чтобы отключить эти эффекты на уровне движка, осуществить потоковую передачу изображения, а затем на клиентском устройстве пользователя применить постобработку.
Это только одна часть Orion SDK, но, по словам Альтмана, она оказывает положительное влияние почти на любую современную игру высокого класса. Некоторые из других методов включают элементы прогнозирования. Господин Даффи приводит пример взрывов: игра оптимизирует процесс кодирования в таких случаях, создавая быстрее новые ключевые кадры. Этот метод сам по себе не приводит к слишком сильной экономии, но из таких мелочей складывается общий эффект.
Orion находится в активной разработке и в настоящее время включает четыре запатентованные технологии, ещё две на подходе и на ряд других уже поданы патентные заявки. «Работая над этими патентами и реализуя их, мы находим новые способы, которые, по нашему мнению, могут реально улучшить потоковую передачу игр и сделать окружение лучше для потребителей», — отметил Роберт Даффи, предположив, что в перспективе Orion может включать в себя 12–20 различных процессов и методов. Джеймс Альтман добавил: «Существуют оптимизации, которые пойдут на пользу любой игре, любому игровому движку, особенно самым сложным проектам. Но даже простые игры получат преимущества от Orion».
Использование сторонних технологий не всегда проходит гладко, но разработчики отмечают, что в случае с Orion всё рассчитано на максимально простую интеграцию. Некоторые из методов требуют более глубокого внедрения в игровой код, но всё же их включение не требует месяцев трудозатрат и в общем цикле разработки не будет особенно ощущаться.
Потоковые технологии давно будоражат умы игроделов. И хотя на протяжении лет они не были достаточно успешными для массового распространения, Роберт Даффи полагает, что в перспективе именно потоковые службы станут доминировать в игровой индустрии: этот процесс уже прошли фильмы и музыка. Он сулит ряд преимуществ: играть можно сразу, не дожидаясь скачивания и установки; не нужно думать о заплатках и обновлениях; проблема читеров тоже уходит. Нельзя забывать и о преимуществах издателей: проблемы пиратства при таком подходе просто не будет. Впрочем, относительно времени вытеснения традиционных методов дистрибуции игр господин Даффи не сказал ничего определённого.
Напомним: в рамках дальнейшего ознакомления с технологией Bethesda Softworks пригласила желающих зарегистрироваться в клубе Doom Slayers для участия в тестировании потокового режима Doom (2016), которое пройдёт в этом году. Приглашения поучаствовать в тесте будут разосланы некоторым из зарегистрировавшихся. Первые проверки будут производиться на устройствах Apple с платформой не старее iOS 11, однако позже состоятся тесты на ПК и Android.