MS、プレイヤーの操作を予測してレイテンシを削減するクラウドゲーミング向け遅延解消技術を発表 33
ストーリー by hylom
クラウドゲームはより普及するか 部門より
クラウドゲームはより普及するか 部門より
あるAnonymous Coward 曰く、
Microsoft Researchが、クラウドゲーミングサービスにおける遅延問題を解決する技術「DeLorean」を発表した(ITmedia)。
クラウドゲーミングでは、サーバー側でグラフィックスのレンダリングを含む全ての処理を行い、その結果をビデオストリーミングしてプレイヤーに送信するという仕組みを取っている。そのため、プレイヤーが入力を送信してからそれを反映した画面を受信するまでに遅延が発生する。この遅延は少なくないため、クラウドゲーミングでアクション性の高いゲームを配信するのは難しいと言われている。
DeLoreanではプレイヤーからの入力を予測し、複数のレスポンス候補を事前に送ることで遅延を短縮するという。予測は過去のプレイヤーのデータを集めたデータベースと、そのプレイヤーのデータを分析して行うとのこと。この技術を、アクション性の高いFPSゲーム「Doom 3」や「Fable 3」でテストしたところ、250msのレイテンシがある環境でも快適にゲームをプレイできたという。
なお、実用化については言及されていない。
何に使うんだろう (スコア:2)
Xbox OneはMS Azureの枠が確保してあって、背景やAIの行動なんかを用意させて流せるという話だった。
それに使うのかな…
何往復ぐらい誤魔化せるんだろう (スコア:1)
例えば、mパターンをnフレームまで先に投機的に実行すると一般化すると、
・ゲームの内部状態は、入力が確定しているkフレーム目までは確定
・k+1フレーム目から、k+nフレーム目まで、それぞれ最もありそうなm個の入力候補に対して投機実行
・k+nフレーム目の候補として、m^n個の状態をレンダリング、クライアントに送る
・クライアントは受け取ったものの内、最も実際の入力に近いk+nフレーム目候補画像を表示
・そうこうしているうちに、k+1フレーム目の実際の入力がサーバに届くので、サーバ上でk+1フレーム目も確定
となり、多くの遅延を消したい場合はnを増やし、入力に対する違和感を消したい場合はmを増やすことで、
原理的にはいくらでもユーザビリティを上げられますね。
まあ、帯域がエラいことになりますけど。
一部の画像は似たり寄ったりになるだろうから、差分で圧縮するとか、
カメラワークはユーザのnフレーム前の入力にのみ依存するように設計すると、背景が同様の画像になるから差分圧縮が効きやすくなるとか、
他にもゲームデザイン上の工夫の余地もいろいろあって面白そうです。
突き詰めると、プリンスオブペルシャみたいなことになるんでしょうね。
キャラにディズニーアニメ的に「自然」な動作をさせようとすると、
あらゆる動作に、大げさな予備動作と動作後の拘束時間を入れざるを得ないことを逆手にとって、
「もったりした操作感のアクションゲーム」を追求すると言う面白い落としどころでした。
Re: (スコア:0)
たしか初代のPSOがスティックの入力に対する移動量(歩数)を大きくとることで通信遅延と移動の同期のバランスをとっていたかと。
当時は回線が細いのでそうやってモーション一つ一つをもっさりにする事で拘束時間を増やし、遅延を感じさせない(遅延が発生しても破綻し辛い)ゲームデザインになってました。
えっ (スコア:0)
ネットワークゲームでは昔から普通に行われてきましたが、、
Re:えっ (スコア:2)
邪悪なM$(笑)がやることに新規性などあるはずがない(ドヤァ
という主張でしょうか
Re: (スコア:0)
具体的にどんなゲームで?
一般的な(プレイヤー個人差の無い)操作予測でれば簡単に実装できることもあって、レースゲーム等で採用されていたと思うけど、
(目の前に壁があればハンドルを切るといったように、殆どのプレイヤーは同じように動くから)
格闘ゲームみたいに、入力に個人差がある駆け引きゲームでは使えなかった。
個々のプレイヤーの過去入力に基づいた入力先行予測は記憶に無い。
Re: (スコア:0)
具体的にタイトルとやってる予測処理内容を挙げてみてください
フェイント (スコア:0)
フェイントで一瞬誘った後で別の方向へ移動した場合などはどうなるんだろうか?
遅延が小さい場合は問題にならないだろうけど、遅延の大きい場合は実際の入力との間に齟齬が生じてワープする?
Re: (スコア:0)
繰り返しにより学習されて、意外とスキルの向上として認識されたりして。
Re: (スコア:0)
初心者の場合は元とするデータないので問題なさそう
熟練者の場合でもフェイク含めて
行動趣向を取れればまぁ大丈夫そう
問題はニュービー明けくらいから上級未満かな
自分自身でさえ予測不能な動きを
システムが事前に見切ってくれるんだろうか
むしろ誤った見切りがシステムアシストなフェイクになって
対熟練者に好都合になるかもですね
いいことずくめな気もしなくもないかもない
# システムアシストつかったニュービー○イプが横行しそう
Re: (スコア:0)
フェイントを行うという行為そのものが予測されているから大丈夫。
予測が外れたら後追い修正でワープするのは既存のゲームと同じだと思う。
Re: (スコア:0)
制作者の意図しない操作をしましたので強制終了します。
帯域消費が (スコア:0)
数倍になるって事ですよね?
わずかな遅延短縮のために。
Re: (スコア:0)
1.21ジゴワットの電力が必要になったって構わないさ!
DeLoreanだけに
Re: (スコア:0)
Re: (スコア:0)
遅延は、タイムマシンでも使わないと物理的に消し得ないものなので、擬似的に解消できる可能性があるならなんだって許されるんですよ。
Re: (スコア:0)
量子通信使おうぜ。
しかたないにゃー、もう。 (スコア:0)
ゲーミング専用の IX をメーカーが用意してくれ。
クラッカーとウイルスとワームの巣窟と化すかもしれんが。
ネットワーク対戦タイプのゲームには使えないんじゃない? (スコア:0)
対戦相手の操作はどうやっても遅延無しに知ることは出来ないからなぁ。
それに、アナログ式のジョイスティックなど、次の可能性が無数にあるようなコントローラを使うゲームでは、
次の瞬間のために用意すべきシナリオの分岐が膨大になりすぎて実用的な帯域に収まらないかと思うんだけど、
そこらへんDoom3やFable3はどうやってしのいだんだろう。
Re: (スコア:0)
全員分の全パターンの組み合わせを投機実行するんですよ(無謀。
…と思ったけど、確かに、完全な解決は原理的に不可能ですね。
「弾を撃つ絶好のチャンスと判定されたが、実際のユーザの入力はちょっと遅れた」と言うような場面を想定したとして。
まず、「弾を撃つ」という未来が投機実行され、敵はそれを見て避ける動作を開始、
次の瞬間、ユーザが弾を発射、敵はそのタイミングから避け始めたのでは間に合わなかったはずの所、
間違った未来予想に基づいてすでに避け始めていたから、結果として弾を避けきれた、とすると。
敵がコンピュータの場合は、「今の表示は嘘だったからごめん
Re: (スコア:0)
ん? Frostbiteベースになった後のBattlefieldの話かな?
Re: (スコア:0)
> 対戦相手の操作はどうやっても遅延無しに知ることは出来ないからなぁ。
自分と相手の全ての取りうる操作の組み合わせを予測すれば...
Re: (スコア:0)
自分側の操作はローカルマシンは即座に知ることが出来るから、送られてきた投機的実行の結果から「正解」を選べるの。
対して、対戦相手の「正解」は実際に相手から操作の情報が届くまで知りようが無いでしょ。
すべての可能性を計算してデータを用意しておいたところで、その中からどれを選んで表示すればいいのか、
相手から遅延して届くデータが来るまで判らないわけ。
Re: (スコア:0)
間違った予測結果に従ってプレイをしてしまう可能性があるので無理です。
結果、後出しジャンケンのようなシチュエーションが発生し得ます。
プレイヤーvs.COMの場合はCOM側が折れて、COM側だけが操作をやり直すことで、(どっちが有利かによらず)後出しを解消できますが、
プレイヤーvs.プレイヤーでは調停が不可能です。
Re: (スコア:0)
今回の場合、あくまで複数の結果の画面イメージを先に転送しておいて、後から、どの結果であるかのデータが届いてから出力処理をする方式だから、後出しジャンケンにはならない。画面に表示されるのは、結果が確定した後になる。
結果が届く前に、先に画面出力することで高速化するような従来の方法とは違う。
もちろん、2者間の入力が同時に処理されるわけでは無いので、厳密にはズレが発生するだろうし、
現実的には、帯域節約なんかも考慮して従来の方法とハイブリッドに実装することになるだろうけど。
Re: (スコア:0)
それ、相手側との整合が取れなくなるでしょ。
同じ時間に両方が操作したとしても、こちら側では自分の操作の方が早くゲームに反映され、相手側では相手の操作のほうが早くゲームに反映される。
Re: (スコア:0)
それ普通にネトゲじゃ良くある展開じゃないですか
だからホスト有利云々、みたいな話もある訳で
避けたはずの弾に当たってた、的な
Re: (スコア:0)
だから、ネットワーク対戦タイプのゲームでは、MSが提唱している方法を使っても遅延を解決することは出来ないと言う話。
わかった?
これって (スコア:0)
炎のコマには対応してますか?
Re: (スコア:0)
ムーンサルトりには対応しております。
炎のコマについては来春対応予定となっております。
無人機に応用できるな (スコア:0)
遠隔操縦の無人攻撃機に応用できそうだな...
Re: (スコア:0)
えっ? 投機的に爆弾を落としちゃうとか?
Re: (スコア:0)
低周波で暴走してBABEL BABEL BABELってなるんですよね。