パスワードを忘れた? アカウント作成
11529813 story
ゲーム

MS、プレイヤーの操作を予測してレイテンシを削減するクラウドゲーミング向け遅延解消技術を発表 33

ストーリー by hylom
クラウドゲームはより普及するか 部門より
あるAnonymous Coward 曰く、

Microsoft Researchが、クラウドゲーミングサービスにおける遅延問題を解決する技術「DeLorean」を発表した(ITmedia)。

クラウドゲーミングでは、サーバー側でグラフィックスのレンダリングを含む全ての処理を行い、その結果をビデオストリーミングしてプレイヤーに送信するという仕組みを取っている。そのため、プレイヤーが入力を送信してからそれを反映した画面を受信するまでに遅延が発生する。この遅延は少なくないため、クラウドゲーミングでアクション性の高いゲームを配信するのは難しいと言われている。

DeLoreanではプレイヤーからの入力を予測し、複数のレスポンス候補を事前に送ることで遅延を短縮するという。予測は過去のプレイヤーのデータを集めたデータベースと、そのプレイヤーのデータを分析して行うとのこと。この技術を、アクション性の高いFPSゲーム「Doom 3」や「Fable 3」でテストしたところ、250msのレイテンシがある環境でも快適にゲームをプレイできたという。

なお、実用化については言及されていない。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by 90 (35300) on 2014年08月29日 13時46分 (#2666148) 日記

    Xbox OneはMS Azureの枠が確保してあって、背景やAIの行動なんかを用意させて流せるという話だった。
    それに使うのかな…

  • by Anonymous Coward on 2014年08月29日 13時52分 (#2666154)

    例えば、mパターンをnフレームまで先に投機的に実行すると一般化すると、

    ・ゲームの内部状態は、入力が確定しているkフレーム目までは確定
    ・k+1フレーム目から、k+nフレーム目まで、それぞれ最もありそうなm個の入力候補に対して投機実行
    ・k+nフレーム目の候補として、m^n個の状態をレンダリング、クライアントに送る
    ・クライアントは受け取ったものの内、最も実際の入力に近いk+nフレーム目候補画像を表示
    ・そうこうしているうちに、k+1フレーム目の実際の入力がサーバに届くので、サーバ上でk+1フレーム目も確定

    となり、多くの遅延を消したい場合はnを増やし、入力に対する違和感を消したい場合はmを増やすことで、
    原理的にはいくらでもユーザビリティを上げられますね。
    まあ、帯域がエラいことになりますけど。

    一部の画像は似たり寄ったりになるだろうから、差分で圧縮するとか、
    カメラワークはユーザのnフレーム前の入力にのみ依存するように設計すると、背景が同様の画像になるから差分圧縮が効きやすくなるとか、
    他にもゲームデザイン上の工夫の余地もいろいろあって面白そうです。

    突き詰めると、プリンスオブペルシャみたいなことになるんでしょうね。
    キャラにディズニーアニメ的に「自然」な動作をさせようとすると、
    あらゆる動作に、大げさな予備動作と動作後の拘束時間を入れざるを得ないことを逆手にとって、
    「もったりした操作感のアクションゲーム」を追求すると言う面白い落としどころでした。

    • by Anonymous Coward

      たしか初代のPSOがスティックの入力に対する移動量(歩数)を大きくとることで通信遅延と移動の同期のバランスをとっていたかと。
      当時は回線が細いのでそうやってモーション一つ一つをもっさりにする事で拘束時間を増やし、遅延を感じさせない(遅延が発生しても破綻し辛い)ゲームデザインになってました。

  • by Anonymous Coward on 2014年08月29日 13時18分 (#2666131)

    ネットワークゲームでは昔から普通に行われてきましたが、、

    • by baldmage (45440) on 2014年08月29日 18時16分 (#2666350) 日記

      邪悪なM$(笑)がやることに新規性などあるはずがない(ドヤァ

      という主張でしょうか

      親コメント
    • by Anonymous Coward

      具体的にどんなゲームで?

      一般的な(プレイヤー個人差の無い)操作予測でれば簡単に実装できることもあって、レースゲーム等で採用されていたと思うけど、
      (目の前に壁があればハンドルを切るといったように、殆どのプレイヤーは同じように動くから)
      格闘ゲームみたいに、入力に個人差がある駆け引きゲームでは使えなかった。

      個々のプレイヤーの過去入力に基づいた入力先行予測は記憶に無い。

    • by Anonymous Coward

      具体的にタイトルとやってる予測処理内容を挙げてみてください

  • by Anonymous Coward on 2014年08月29日 13時20分 (#2666134)

    フェイントで一瞬誘った後で別の方向へ移動した場合などはどうなるんだろうか?
    遅延が小さい場合は問題にならないだろうけど、遅延の大きい場合は実際の入力との間に齟齬が生じてワープする?

    • by Anonymous Coward

      繰り返しにより学習されて、意外とスキルの向上として認識されたりして。

    • by Anonymous Coward

      初心者の場合は元とするデータないので問題なさそう

      熟練者の場合でもフェイク含めて
      行動趣向を取れればまぁ大丈夫そう

      問題はニュービー明けくらいから上級未満かな
      自分自身でさえ予測不能な動きを
      システムが事前に見切ってくれるんだろうか
      むしろ誤った見切りがシステムアシストなフェイクになって
      対熟練者に好都合になるかもですね

      いいことずくめな気もしなくもないかもない

      # システムアシストつかったニュービー○イプが横行しそう

    • by Anonymous Coward

      フェイントを行うという行為そのものが予測されているから大丈夫。
      予測が外れたら後追い修正でワープするのは既存のゲームと同じだと思う。

    • by Anonymous Coward

      制作者の意図しない操作をしましたので強制終了します。

  • by Anonymous Coward on 2014年08月29日 13時27分 (#2666136)

    数倍になるって事ですよね?
    わずかな遅延短縮のために。

    • by Anonymous Coward

      1.21ジゴワットの電力が必要になったって構わないさ!

      DeLoreanだけに

    • by Anonymous Coward
      スループットを上げるとレイテンシが下がる(逆も同じ)のはネットワークの一般法則だから、通常のチューニングの一環でしかないでしょ。
    • by Anonymous Coward

      遅延は、タイムマシンでも使わないと物理的に消し得ないものなので、擬似的に解消できる可能性があるならなんだって許されるんですよ。

  • by Anonymous Coward on 2014年08月29日 14時15分 (#2666169)

    ゲーミング専用の IX をメーカーが用意してくれ。
    クラッカーとウイルスとワームの巣窟と化すかもしれんが。

  • 対戦相手の操作はどうやっても遅延無しに知ることは出来ないからなぁ。

    それに、アナログ式のジョイスティックなど、次の可能性が無数にあるようなコントローラを使うゲームでは、
    次の瞬間のために用意すべきシナリオの分岐が膨大になりすぎて実用的な帯域に収まらないかと思うんだけど、
    そこらへんDoom3やFable3はどうやってしのいだんだろう。

    • by Anonymous Coward

      全員分の全パターンの組み合わせを投機実行するんですよ(無謀。
      …と思ったけど、確かに、完全な解決は原理的に不可能ですね。

      「弾を撃つ絶好のチャンスと判定されたが、実際のユーザの入力はちょっと遅れた」と言うような場面を想定したとして。
      まず、「弾を撃つ」という未来が投機実行され、敵はそれを見て避ける動作を開始、
      次の瞬間、ユーザが弾を発射、敵はそのタイミングから避け始めたのでは間に合わなかったはずの所、
      間違った未来予想に基づいてすでに避け始めていたから、結果として弾を避けきれた、とすると。

      敵がコンピュータの場合は、「今の表示は嘘だったからごめん

      • by Anonymous Coward

        ん? Frostbiteベースになった後のBattlefieldの話かな?

    • by Anonymous Coward

      > 対戦相手の操作はどうやっても遅延無しに知ることは出来ないからなぁ。

      自分と相手の全ての取りうる操作の組み合わせを予測すれば...

      • by Anonymous Coward

        自分側の操作はローカルマシンは即座に知ることが出来るから、送られてきた投機的実行の結果から「正解」を選べるの。
        対して、対戦相手の「正解」は実際に相手から操作の情報が届くまで知りようが無いでしょ。

        すべての可能性を計算してデータを用意しておいたところで、その中からどれを選んで表示すればいいのか、
        相手から遅延して届くデータが来るまで判らないわけ。

      • by Anonymous Coward

        間違った予測結果に従ってプレイをしてしまう可能性があるので無理です。
        結果、後出しジャンケンのようなシチュエーションが発生し得ます。

        プレイヤーvs.COMの場合はCOM側が折れて、COM側だけが操作をやり直すことで、(どっちが有利かによらず)後出しを解消できますが、
        プレイヤーvs.プレイヤーでは調停が不可能です。

        • by Anonymous Coward

          今回の場合、あくまで複数の結果の画面イメージを先に転送しておいて、後から、どの結果であるかのデータが届いてから出力処理をする方式だから、後出しジャンケンにはならない。画面に表示されるのは、結果が確定した後になる。
          結果が届く前に、先に画面出力することで高速化するような従来の方法とは違う。

          もちろん、2者間の入力が同時に処理されるわけでは無いので、厳密にはズレが発生するだろうし、
          現実的には、帯域節約なんかも考慮して従来の方法とハイブリッドに実装することになるだろうけど。

          • by Anonymous Coward

            それ、相手側との整合が取れなくなるでしょ。
            同じ時間に両方が操作したとしても、こちら側では自分の操作の方が早くゲームに反映され、相手側では相手の操作のほうが早くゲームに反映される。

            • by Anonymous Coward

              それ普通にネトゲじゃ良くある展開じゃないですか
              だからホスト有利云々、みたいな話もある訳で
              避けたはずの弾に当たってた、的な

              • by Anonymous Coward

                だから、ネットワーク対戦タイプのゲームでは、MSが提唱している方法を使っても遅延を解決することは出来ないと言う話。
                わかった?

  • by Anonymous Coward on 2014年08月29日 15時17分 (#2666214)

    炎のコマには対応してますか?

    • by Anonymous Coward

      ムーンサルトりには対応しております。
      炎のコマについては来春対応予定となっております。

  • by Anonymous Coward on 2014年08月29日 16時27分 (#2666255)

    遠隔操縦の無人攻撃機に応用できそうだな...

    • by Anonymous Coward

      えっ? 投機的に爆弾を落としちゃうとか?

    • by Anonymous Coward

      低周波で暴走してBABEL BABEL BABELってなるんですよね。

typodupeerror

ソースを見ろ -- ある4桁UID

読み込み中...