avatar
«Fallout shelter» Беседка в Стиме раздавала пару лет назад, я и взял. Поиграл немного, ничего особенного.
avatar
и потом использовать буфферизацию для загрузки готовых результатов в стадию, для того чтобы получать вывод на экран еще быстрее. Если я правильно понял тебя.

Повторю, что это все мои предположения и я могу ошибаться. А то у меня какое-то плохое чувство:)
avatar
Окей, пусть запускают несколько «инстанций» (хоть и сомнительно лично для меня — больно высокие технологии для 2020). Это меняет только то, что от лага отнимается время, необходимое на обработку действия, потому что оно, типа, уже обсчитано и вот вам готовый результат.
avatar
хотя в разных источниках описывают по разному. Не знаю где правда:)
avatar
ну я вообще говорил про предсказание движений, а не про гугл стадию и стриминг:). Если бы они где-то выложили больше инфы по «Negative latency», то я бы ее нашел и скинул:). Но в общем, как я понял, они запускают несколько «инстанций» с разными готовыми результатами. И после твоего нажатия сразу возвращают тебе один из готовых результатов. Но инфы мало, как я говорил уже.
avatar
В локально расположенных данных новые кадры придумывать легко, как и в старые кадры тоже легко возвращаться. У машины времени, что призвана компенсировать сетевые проблемы пользователя, довольно хорошо получается как фантазировать на тему будущих состояний мира вокруг игрока, так и плавно перестраиваться с фантазий на слегка измененную действительность невовремя подоспевших данных с сервера.
Но все это возможно только потому, что машина времени оперирует данными игровой сессии, а не картинкой.

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

Такие технологии, как в T[mesh]ft или Песках времени, реализовать не так просто даже тогда, когда у тебя есть полный контроль данных, от которых зависит картинка.
Пойдет ли кто из разработчиков на такие титанические переделки своего проекта ради выпуска в среде Stadia?

Но, скорее всего, Stadia не имеет своей машины времени и не обременяет разработчиков большими изменениями в их проектах, ограничиваясь только профилированием под конфигурацию сервера.
avatar
Погоди. О каком «client-side-prediction» может идти речь, если суть стримингового сервиса в том, что клиента нет? :)
avatar
Нет, минуточку. Если ты уже нажал — никакого предсказания нет.

Гугл знает, что ты бежишь по полю и ему нужно отправить тебе какую-то картинку. Если дожидаться каждого приехавшего нажатия, то время отклика на любое действие логично начинает равняться, как я уже писал, RTT + время на обработку у гугла. И вот тогда получается то, что мы видим в на первой видюшке из заметки.
avatar
не очень понимаю как нажатие клавиши «прыжок» и мое решение присесть связанно). Ну я нажал уже «прыжок». В момент нажатия клавиши делается предсказание со стороны клиента, что игрок прыгнет, а не сядет.

Ну и когнитивный диссонанс и сетевые игры неразрывно связаны). Например, можно заметить иногда как чей-то персонаж идет в одном направлении, а потом его резко переносит назад или еще что-то. Вот это и есть предсказание наверное)
avatar
Попробовать предсказать можно, но будет неудобно, если к тебе приедет картинка с прыжком, а ты в этот момент решил не прыгать, а присесть или развернуться. Некоторый конгитивный диссонанс возникнет :)
avatar
не очень понимаю почему нельзя предсказать. Нажал игрок на кнопку «Прыжок», в чистом поле, и что тут нельзя предсказать? Игрок прыгнет. Я предсказал:). Так и клиент предсказывает.
avatar
avatar
Предсказать нельзя. Можно только добиться, чтобы время отклика (несмотря на то, что сделать его меньше, чем у локального ПК — физически невозможно, и именно к этому заявлению у меня в основном претензия) не воспринималось игроком как субьективно неприемлемое. Решить эту проблему глобально невозможно иначе, как расположив свои мощности достаточно близко к клиентам — и то, поскольку маршрутизация и стабильность каналов в интернете зачастую непредсказуемы, гарантировать определённый уровень сервиса проблематично.
avatar
Так, погоди, что «нормально»? :) Вот персонаж стоит. Не делает ничего. Вот игрок решает нажать на кнопку, чтобы его персонаж подпрыгнул. Как и что тут можно «предсказать»? :)
avatar
Я когда-то кидал ссылки по этому вопросу в дискорд). Сейчас лень опять искать, но это нормально и используется в сетевых играх.
avatar
Разрешат, конечно же, и краску, и обои вырвиглазные купить на вкладке магазина за какие-нибудь «Аэтерниумы» по 500 руб. за 10 штук…
Безумно надеюсь, правда, что ошибаюсь)
avatar
Понятия не имею :) Поэтому мне и интересно, как такое может быть — при условии, что в случае с ПК у нас, условно, пять метров провода, а со Стадией — сотни и тысячи километров.
avatar
У меня был простой подход: я хотел посмотреть на сервис в действии. Вот поискал и дал ссылки. Я могу чего-то не понимать, но тут вопрос — в трансляции, ссылку на которую я дал в тексте, игрок в произвольных местах жмёт пробел, чтобы подпрыгнуть, и отклик там практически мгновенный. Как можно отправлять картинку раньше, чем происходит нажатие кнопки, если это нажатие происходит в произвольных местах?
avatar
Не так быстро. Digital Foundry проведи детальное тестирование, включая соединение на скорости 200 Mbps и даже 15 Mbps. Их вердикт — средняя задержка на Google Stadia сравнима с Xbox One X, который подключён к монитору напрямую, примерно на 60% больше, чем у ПК, выдающего 30 FPS, и в два раза больше, чем у ПК с 60 FPS.
Я извиняюсь — а есть где-нибудь в текстовом виде подробно описанная методика тестирования? Звучит для меня неправдоподобно. Скорее всего, дело в той самой хитрости, про которую уже не раз говорили — что гугл хитрит и что-то за вас делает там у себя, локально, отправляя картинку раньше, чем до него доедет ваше нажатие кнопки.

Реальность такова, что Google Stadia интересна своей технологией. Да, для неё нужен высокоскоростной интернет, но если он есть, в остальном всё работает.
И снова извиняюсь, но реальность такова, что нет никакого «высокоскоростного интернета», способного повлиять на отзывчивость потокового гейминга. Есть только длина проводов и оптоволокна до дата-центра гугла и (опционально) задержки на сетевом оборудовании на пути + потери пакетов. Но основную лепту вносит всё-таки конечная скорость распространения сигнала по медному кабелю и скорость света в оптоволокне.

Да, пропускная способность важна, чтобы на изображении не появлялись артефакты — но к времени отклика это отношения не имеет.

И никакой интернет по скорости отклика не сравнится с банальным HDMI-кабелем. В соответствии с законами физики.
avatar
Тут фишка в том, что это исключительно PvP-квесты. Вернее, квесты, в которых нужно двигаться с включённым PvP-флагом.