Я писал диплом на тему вынесения функций программы на процессор внешнего устройства, это хоть и другие цели преследовало, но работало на самом деле.
Не знаю как про количество серверов, но облачные вычисления в играх - это маркетинг, это просто реакция защиты на то, что PS4 получилась мощнее.
парень с teamxbox конечно много написал, но это лишь притягивание за уши и чистая теоретика (а про физику, одежду и волосы - так откровенный булщит), из всего того что он написал - реально реализовать только AI на стороне облака, но едва ли это целесообразно.
Я конечно такой же огромный пост писать не буду, но все же напишу некоторую информацию, для тех кто хочет знать реальность.
1. Пропускной способностью памяти в консолях производители мерились не просто так, скорость передачи информации для графических и сложных физических риалтайм вычислений очень важна, скорость интернета тут будет как минимум на несколько порядков ниже,а задержки намного выше. Задержки у всех разные, скорость интернета тоже - это добавляет еще миллион проблем тем, кто захочет что-то сделать.
2. Статичные вещи и так считают заранее, когда известны начальные данные - зачем считать каждый раз в облаке? Уже давно все сложное освещение и физику с большим количеством элементов считают еще геймдевы на своих серверах, а потом делают анимацию или статичные тени, которые будут замечательно выглядеть.
3. Никто не будет рендерить анимацию уровня CG в облаке (с динамическими начальными данными, которые например определяет игрок), а потом передавать на консоль... зачем? в облаке стоят не волшебные процессоры, а обычные серверные. Зарендерить высокодетализированную сцену, с кучей физических частиц - это займет время, и много времени. Спросите любого 3D аниматора сколько у него даже без симуляции физики рендерится сцена в несколько минут - он ответит, что дохрена. будет ли быстрее это в облаке? да будет, вот только сколько процессоров придется выделить, чтобы это все зарендерилось за ... например 10 секунд? 100? 1000? а если игроков будет несколько сотен тысяч онлайн? что-то у кого-то треснет. Все зависит от сцены конечно, но если она простая - то её и переносить в облако нету смысла.
4. Игровых движков много, все они отличаются, что-то универсальное сделать не получится, onlive решает эту проблему радикально - все работает на обычном железе, а пользователь играет в интерактивный стрим.
5. Синхронизация, все что нужно считать риалтайм - нужно синхронизировать, для чего например не достаточно процессора xbox one? ну... например реалистичную симуляцию воды, это тысячи отдельных частиц... ну хорошо, отправили вы данные в облако, оно "быстро" там все посчитало и отослало обратно... а теперь прикиньте тот путь которая прошла отдельная частица, тот объем данных который занимает этот путь... и умножите на количество частиц, ну давайте представим, что мы все ахеренно и без задержек упаковали и получилось 10МБ данных... ну и сколько такой объем будет передаваться например на скорости интернета 3Мбит/с? около 26 секунд, ахеренный делей такой получился... совсем риалтайм.
6. Есть ли алгоритмы которые можно вычислить полностью в облаке, а передать малое количество данных? да, есть AI, всю внутреннюю логику AI можно посчитать в облаке, а на консоль передать лишь путь и конечную точку. Вот только смысла особого нету, AI не настолько ресурсоемкий, а если его очень много - то и данных для синхронизации будет слишком много... хотите посчитать весь AI (например большого открытого мира) в облаке, а передавать результаты когда игрок будет рядом? ну да, можно так сделать... только вот смысл? едва ли эту супер симуляцию кто-то заметит, а ресурсов (умножай сразу на сотни тысяч игроков) нужно будет просто немереное количество.
6. Не нужно забывать, что и графика и многая физика сейчас считается на GPU, у меня есть резонные основания сомневаться в наличии еще и GPU в облаках майкрософт, а ведь производительность даже самых топовых CPU во многих задачах (связанных с тем же освещением, тенями) будет намного медленнее.
Итог: если данных мало, их проще посчитать на консоле, если данных много - то будет большая задержка при их передаче через сеть.
А теперь возьмите и представте себя на месте геймдевелопера, вы и с лагами в мультиплеере на полтора игрока еле разобрались, а вам говорят: слуушай, а не хочешь ли ты, взять и решить пару задач, которых ты в жизни не решал, потратить на это нереально количество времени, при этом ты будешь крайне сильно технически ограничен, а если будут лаги - игроки тебе яица оторвут (консоли же, "уровень качества", "вставил@играй"). Думаю ответ любого адекватного человека итак предсказуем? при этом можно потратить ресурсы на саму игру, будь то доработка мультиплеера, графики или физики... да чего угодно - и профита гораздо больше будет.
так что, разные фичи по типу синхронизации сейвов и прочего - легко, остальное - из области фантастики, при этом не нужно забывать - что облачные вычисления это дорого, это не просто хранилище - а именно процессоры, которые очень любят жрать ватты, а насколько мне известно мать тереза в майкрософт не работает, даже производительность 300 тысяч серверов - растечется по огромной геймбазе тонким блинчиком, проще будет выносить лишние вычисления не в облако, а на вашу мобилку))
на месте геймдевелопера, я бы добавил майнинг биткоинов в облако майкрософту)) просто море для маркетинга: "пока вы играете в новый каллофдуте, облака майкрософта будут считать битконы на оплату корма бездомным собакам"