(57)【要約】ゲーム支援方法が開示される。ゲームアプリケーションのプレーヤの複数のゲームプレイに関連する情報が、ネットワークを介してバックエンドサーバで受信される。ゲームアプリケーションをプレイする第１のプレーヤから、第１のプレーヤの第１のゲームプレイに関するクエリーが受信される。第１のプレーヤの第１のゲームプレイの現行ゲームコンテキストが、情報から特定される。複数のゲームプレイに関連する情報に基づいて、クエリーに対する応答及び現行ゲームコンテキストが生成される。第１のプレーヤのデバイスに、応答が返信される。【選択図】図３Ａ
2021518197.tif 000002
【特許請求の範囲】
【請求項１】
ゲーム支援の提供方法であって、
ゲームアプリケーションのプレーヤの複数のゲームプレイに関連する情報を、ネットワークを介してバックエンドサーバで受信し、
前記ゲームアプリケーションをプレイする第１のプレーヤから、前記第１のプレーヤの第１のゲームプレイに関するクエリーを受信し、
前記第１のゲームプレイの現行ゲームコンテキストを特定し、
前記複数のゲームプレイに関連する前記情報に基づいて、クエリーに対する応答、及び前記現行ゲームコンテキストを生成し、
前記第１のプレーヤのデバイスに前記応答を送信する、方法。
【請求項２】
応答の生成では、
前記クエリーを解釈し、
前記解釈されたクエリー及び前記現行ゲームコンテキストを、前記ゲームアプリケーションの複数のモデル化された応答のうちの１つである前記応答に、マッチングさせるように構成されたディープラーニングエンジンに対し、前記ゲームアプリケーションの前記解釈されたクエリー及び前記現行ゲームコンテキストを、入力として提供する、
請求項１に記載の方法。
【請求項３】
前記クエリーを解釈して、前記解釈したクエリー及び前記現行ゲームコンテキストを前記応答にマッチングさせるように構成されたサードパーティの人工知能エンジンに、前記クエリー及び前記現行ゲームコンテキストを送信する、
請求項２に記載の方法。
【請求項４】
前記クエリーを、音声である第１の形式から、テキストである第２の形式に変換する、
請求項２に記載の方法。
【請求項５】
前記クエリーは、音声、テキスト、及び映像のうちの少なくとも１つを含む形式で提示される、
請求項１に記載の方法。
【請求項６】
前記応答は、音声、テキスト、及び映像のうちの少なくとも１つを含む形式で提示される、
請求項１に記載の方法。
【請求項７】
前記デバイスは、コンパニオンモバイルデバイスを備え、前記ゲームプレイは、ディスプレイに提示される、
請求項１に記載の方法。
【請求項８】
前記デバイスは、前記第１のゲームプレイと前記応答とを提示するように構成されたディスプレイを備える、
請求項１に記載の方法。
【請求項９】
支援を得るために、前記第１のプレーヤにエキスパートを割り当て、
前記エキスパートが前記第１のプレーヤを支援できるようにするために、前記第１のプレーヤの前記デバイスと、前記エキスパートのデバイスとの通信セッションを生成する、
請求項１に記載の方法。
【請求項１０】
前記情報は、ゲームコンテキストデータ及びグローバルコンテキストデータを含む、
請求項１に記載の方法。
【請求項１１】
前記ゲームコンテキストデータは、ゲーム状態データ及び（ＯＳ）レベルデータを含む、
請求項１０に記載の方法。
【請求項１２】
ゲーム状態データは、
キャラクタ、
キャラクタの種族またはタイプ、
前記ゲームプレイの第１のキャラクタの現行のクエスト、
前記ゲームプレイの前記第１のキャラクタの次のクエスト、
ゲーム環境内の前記ゲームプレイの場所、
前記ゲーム環境をプレイするゲームのレベル、
アセット、
ロードアウト、及び
前記第１のキャラクタのスキルセット、のうちの少なくとも１つを含む、
請求項１１に記載の方法。
【請求項１３】
前記ＯＳレベルデータは、
ゲーム入力、
コントローラ入力、及び
コントローラ入力のタイムスタンプのうちの少なくとも１つを含む、
請求項１１に記載の方法。
【請求項１４】
前記グローバルコンテキストデータは、
プレーヤプロファイルデータ、
前記第１のプレーヤのプレイスタイル、
前記第１のプレーヤのスキルレベル、
前記第１のプレーヤが、現在、前記ゲームアプリケーションをプレイしているか否か、
前記第１のプレーヤがオンラインか否か、
前記ゲームアプリケーションのタイトル、
前記第１のプレーヤがプレイしている共同プレーヤ、
入力コントローラの作動頻度、及び
前記第１のプレーヤの友達のうちの少なくとも１つを含む、
請求項１０に記載の方法。
【請求項１５】
ゲーム支援を提供するためのコンピュータプログラムを格納する非一時的コンピュータ可読媒体であって、
ゲームアプリケーションのプレーヤの複数のゲームプレイに関連する情報を、ネットワークを介してバックエンドサーバで受信するためのプログラム命令と、
前記ゲームアプリケーションをプレイする第１のプレーヤから、前記第１のプレーヤの第１のゲームプレイに関するクエリーを受信するためのプログラム命令と、
前記第１のゲームプレイの現行ゲームコンテキストを特定するためのプログラム命令と、
前記複数のゲームプレイに関連する前記情報に基づいて、クエリーに対する応答、及び前記現行ゲームコンテキストを生成するためのプログラム命令と、
前記第１のプレーヤのデバイスに前記応答を送信するためのプログラム命令とを含む、
コンピュータ可読媒体。
【請求項１６】
応答を生成するためのプログラム命令は、
前記クエリーを解釈するためのプログラム命令と、
前記解釈されたクエリー及び前記現行ゲームコンテキストを、前記ゲームアプリケーションの複数のモデル化された応答のうちの１つである前記応答に、マッチングさせるように構成されたディープラーニングエンジンに対し、前記ゲームアプリケーションの前記解釈されたクエリー及び前記現行ゲームコンテキストを、入力として提供するためのプログラム命令とを含む、
請求項１５に記載のコンピュータ可読媒体。
【請求項１７】
前記クエリーを解釈して、前記解釈したクエリー及び前記現行ゲームコンテキストを前記応答にマッチングさせるように構成されたサードパーティの人工知能エンジンに、前記クエリー及び前記現行ゲームコンテキストを送信するためのプログラム命令をさらに含む、
請求項１６に記載のコンピュータ可読媒体。
【請求項１８】
前記クエリーを、音声である第１の形式から、テキストである第２の形式に変換するためのプログラム命令をさらに含む、
請求項１６に記載のコンピュータ可読媒体。
【請求項１９】
プロセッサと、メモリとを含むコンピュータシステムであって、
前記メモリは、前記プロセッサに接続され、命令を格納しており、前記命令は、前記コンピュータシステムにより実行されると、ゲーム支援を提供する方法を前記コンピュータシステムに実行させ、前記方法では、
ゲームアプリケーションのプレーヤの複数のゲームプレイに関連する情報を、ネットワークを介してバックエンドサーバで受信し、
前記ゲームアプリケーションをプレイする第１のプレーヤから、前記第１のプレーヤの第１のゲームプレイに関するクエリーを受信し、
前記第１のゲームプレイの現行ゲームコンテキストを特定し、
前記複数のゲームプレイに関連する前記情報に基づいて、クエリーに対する応答、及び前記現行ゲームコンテキストを生成し、
前記第１のプレーヤのデバイスに前記応答を送信する、
コンピュータシステム。
【請求項２０】
前記方法での応答の生成では、
前記クエリーを解釈し、
前記解釈されたクエリー及び前記現行ゲームコンテキストを、前記ゲームアプリケーションの複数のモデル化された応答のうちの１つである前記応答に、マッチングさせるように構成されたディープラーニングエンジンに対し、前記ゲームアプリケーションの前記解釈されたクエリー及び前記現行ゲームコンテキストを、入力として提供する、
請求項１９に記載のコンピュータシステム。
【請求項２１】
前記方法ではさらに、
前記クエリーを解釈して、前記解釈したクエリー及び前記現行ゲームコンテキストを前記応答にマッチングさせるように構成されたサードパーティの人工知能エンジンに、前記クエリー及び前記現行ゲームコンテキストを送信する、
請求項２０に記載のコンピュータシステム。
【請求項２２】
前記方法ではさらに、
前記クエリーを、音声である第１の形式から、テキストである第２の形式に変換する、
請求項２０に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ゲームアプリケーションに関する。とりわけ、本開示は、ゲームアプリケーションに関するユーザのクエリーに応答して、ゲーム支援を提供する方法及びシステムを説明する。
【背景技術】
【０００２】
ビデオゲームは、処理能力が高くなるほど、より複雑で大規模となる。ただし、ビデオゲームがより複雑になると、ビデオゲームを進める及び／または完了することは、ユーザにとってますます困難となり得る。例えば、ビデオゲームは、より拡張的となり、ユーザが使用できる数百万、さらには数兆もの利用可能オプションを含むことがある。よって、ユーザは、これらの利用可能なオプションのそれぞれを試すことすら、またはこれらのオプションのうちどれが使用可能であるかを理解することすら、不可能であろう。他の事例では、ユーザは、ビデオゲーム内で、進めるまたは解決することが不可能に思われる箇所に到達することがある。これはユーザにかなり頻繁に起こり、ユーザはその難しさまたはゲームを進められないことからゲームに次第に不満を募らせ、最終的にビデオゲームを辞めてしまう。例えば、ビデオゲームのゲームプレイにおいて、ユーザが、ゲームプレイを進めるために、明らかな出入口を通ってゲーム世界の別の部分に到達しようと試みていることがある。例示では、ユーザは、出入口として機能する滝を通る必要があり得るが、通過を試みるのに利用可能なオプションを全て使い果たしたようである。しかし、解決策は利用可能であり、知っていれば単純である場合でも（例えば安定させる岩を持ち上げて滝を通り抜ける）、何らかの理由で、ユーザは正しい通路または操作シーケンスを見つけて入り込むことができない。何時間も無駄に時間が過ぎた後、ユーザは、前進する方法を見つけることができないため、ついにはゲームを辞めてしまい得る。
【０００３】
本開示の実施形態はこのような背景の下になされたものである。
【発明の概要】
【０００４】
本開示の実施形態は、ゲームアプリケーションに関連するプレーヤのクエリー、あるいは問い合わせに応答してゲーム支援を提供することに関し、応答は、プレーヤのデバイスに提供され、当デバイスはユーザのゲームプレイを表示していてもしていなくてもよく、応答は、ユーザのゲームプレイ中に支援を提供し得、応答は、ユーザのいずれのゲームプレイからも独立して支援を提供し得る。本開示のいくつかの発明実施形態が、以下に説明される。
【０００５】
一実施形態において、ゲーム支援を提供する方法が開示される。この方法では、ゲームアプリケーションのプレーヤの複数のゲームプレイに関連する情報を、ネットワークを介してバックエンドサーバで受信する。この方法では、ゲームアプリケーションをプレイする第１のプレーヤから、第１のプレーヤの第１のゲームプレイに関するクエリーを受信する。この方法では、情報から、第１のゲームプレイの現行ゲームコンテキストを特定することを含む。この方法では、複数のゲームプレイに関連する情報に基づいて、クエリーに対する応答、及び現行ゲームコンテキストを生成する。例えば、現行ゲームコンテキストが与えられた場合、クエリーを応答にマッチングさせるように構成されたディープラーニングエンジンにより、応答は生成され得る。この方法では、第１のプレーヤのデバイスに応答を送信する。
【０００６】
別の実施形態において、ゲーム支援を提供するためのコンピュータプログラムを格納する非一時的コンピュータ可読媒体が開示される。コンピュータ可読媒体は、ゲームアプリケーションのプレーヤの複数のゲームプレイに関連する情報を、ネットワークを介してバックエンドサーバで受信するためのプログラム命令を含む。コンピュータ可読媒体は、ゲームアプリケーションをプレイする第１のプレーヤから、第１のプレーヤの第１のゲームプレイに関するクエリーを受信するためのプログラム命令を含む。コンピュータ可読媒体は、情報から、第１のゲームプレイの現行ゲームコンテキストを特定するためのプログラム命令を含む。コンピュータ可読媒体は、複数のゲームプレイに関連する情報に基づいて、クエリーに対する応答及び現行ゲームコンテキストを生成するためのプログラム命令を含む。例えば、現行ゲームコンテキストが与えられた場合、クエリーを応答にマッチングさせるように構成されたディープラーニングエンジンにより、応答は生成され得る。コンピュータ可読媒体は、第１のプレーヤのデバイスに応答を送信するためのプログラム命令を含む。
【０００７】
さらに別の実施形態において、プロセッサと、プロセッサに接続されたメモリとを有するコンピュータシステムが開示され、メモリは命令を格納しており、当命令は、コンピュータシステムにより実行されると、ゲーム支援を提供する方法をコンピュータシステムに実行させる。方法は、ゲームアプリケーションのプレーヤの複数のゲームプレイに関連する情報を、ネットワークを介してバックエンドサーバで受信することを含む。方法は、ゲームアプリケーションをプレイする第１のプレーヤから、第１のプレーヤの第１のゲームプレイに関するクエリーを受信することを含む。方法は、情報から、第１のゲームプレイの現行ゲームコンテキストを特定することを含む。方法は、複数のゲームプレイに関連する情報に基づいて、クエリーに対する応答、及び現行ゲームコンテキストを生成することを含む。例えば、現行ゲームコンテキストが与えられた場合、クエリーを応答にマッチングさせるように構成されたディープラーニングエンジンにより、応答は生成され得る。方法は、第１のプレーヤのデバイスに応答を送信することを含む。
【０００８】
本開示の他の態様は、本開示の原理の実施例として示される添付図面と併せて、下記の発明を実施するための形態から、明らかになるであろう。
【０００９】
本開示は、添付図面と併せて、以下の説明を参照することにより、最も良く理解されるであろう。
【図面の簡単な説明】
【００１０】
【図１Ａ】本開示の一実施形態による、ローカルコンピューティングデバイス上で、またはクラウドゲームネットワークを介して実行できるゲームアプリケーションをプレイするプレーヤのゲームプレイ中に、ゲーム支援を提供するシステムを示す。
【図１Ｂ】本開示の一実施形態による、ローカルコンピューティングデバイス上で、またはクラウドゲームネットワークを介して実行できるゲームアプリケーションをプレイするプレーヤのゲームプレイ中に、ゲームコントローラで受信されたユーザの口頭でのクエリーに応答して、ゲーム支援を提供するシステムを示す。
【図１Ｃ】本開示の一実施形態による、ＨＭＤでＶＲシーンを視聴する１人以上のユーザのサッカード運動のモデルを構築するために使用される例示的なニューラルネットワークを示す。
【図２Ａ】本開示の一実施形態による、ゲームアプリケーションをプレイするプレーヤのゲームプレイ中に、ゲーム支援を提供するシステムを示す。
【図２Ｂ】本開示の一実施形態による、プレーヤのローカルで実行されるゲームアプリケーションをプレイするプレーヤのゲームプレイ中に、ゲーム支援を提供するシステムを示す。
【図２Ｃ】本開示の一実施形態による、クラウドゲームネットワークを介して実行されるゲームアプリケーションをプレイするプレーヤのゲームプレイ中に、ゲーム支援を提供するシステムを示す。
【図３Ａ】本開示の一実施形態による、ローカルコンピューティングデバイス上で、またはクラウドゲームネットワークを介して実行できるゲームアプリケーションをプレイするプレーヤのゲームプレイ中に、ユーザとゲーム支援を提供するバックエンドサーバとの間のデータの流れを例示するデータフロー図を示す。
【図３Ｂ】本開示の一実施形態による、ゲームアプリケーションをプレイするプレーヤのゲームプレイ、並びにゲームコンテキストデータ及びグローバルコンテキストデータを含む情報の定期的な収集を示す。
【図３Ｃ】本開示の一実施形態による、ローカルコンピューティングデバイス上で、またはクラウドゲームネットワークを介して実行できるゲームアプリケーションをプレイするプレーヤのゲームプレイ中に、ゲーム支援を提供する方法のステップを示すフロー図である。
【図３Ｄ】本開示の一実施形態による、通信セッションを介してプレーヤをエキスパートに接続することにより、ゲームアプリケーションをプレイするプレーヤのゲームプレイ中に、リアルタイムの支援を提供する方法のステップを示すフロー図である。
【図３Ｅ】本開示の一実施形態による、通信セッションを介してプレーヤをエキスパートに接続することにより、ゲームアプリケーションをプレイするプレーヤのゲームプレイ中に、リアルタイムの支援を提供するシステムまたは方法におけるデータの流れを示すデータフロー図である。
【図４Ａ】本開示の一実施形態による、ローカルゲーム機またはクラウドゲームネットワーク上で実行されるゲームアプリケーションをプレイするプレーヤに、ゲーム支援を提供するように構成されたコンパニオンモバイルデバイスのホームページ画面を示す。
【図４Ｂ】本開示の一実施形態による、ゲーム支援を提供するように構成された図４Ａのコンパニオンモバイルデバイス上のクイック検索ボタンの選択、及びクイック検索ボタンのクエリーに応答して提供された情報を、モバイルデバイスとは別個のディスプレイに提示することを例示する。
【図４Ｃ】本開示の一実施形態による、ゲーム支援を提供するように構成された図４Ａのコンパニオンモバイルデバイスと、ゲームアプリケーションをプレイするプレーヤのゲームプレイを提示し、かつ要求された情報のためにプレーヤをモバイルデバイスへ誘導するディスプレイとの、インタラクションを示す。
【図４Ｄ】本開示の一実施形態による、現在ゲームアプリケーションをプレイしていないが、サポートを求めてバックエンドサーバにゲームアプリケーションに関するクエリーを提示することができるユーザに、ゲーム支援を提供するように構成されたコンパニオンモバイルデバイスを示す。
【図４Ｅ】本開示の一実施形態による、プレーヤのゲームプレイをサポートして、ユーザにゲーム支援を提供するように構成されたコンパニオンモバイルデバイス１１を示す。
【図５Ａ】本開示の一実施形態による、別個のディスプレイに提示されるゲームアプリケーションのゲームプレイに関連したゲーム支援を行うコンパニオンモバイルデバイスの使用を示す。
【図５Ｂ】本開示の一実施形態による、別個のディスプレイに提示されるゲームアプリケーションのゲームプレイに関連したゲーム支援を行うコンパニオンモバイルデバイスの使用を示す。
【図６Ａ】本開示の一実施形態による、別個のディスプレイに提示されるゲームアプリケーションのゲームプレイに関連したゲーム支援を行うコンパニオンモバイルデバイスを使用した、クエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図６Ｂ】本開示の一実施形態による、別個のディスプレイに提示されるゲームアプリケーションのゲームプレイに関連したゲーム支援を行うコンパニオンモバイルデバイスを使用した、クエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図６Ｃ】本開示の一実施形態による、別個のディスプレイに提示されるゲームアプリケーションのゲームプレイに関連したゲーム支援を行うコンパニオンモバイルデバイスを使用した、クエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図６Ｄ】本開示の一実施形態による、別個のディスプレイに提示されるゲームアプリケーションのゲームプレイに関連したゲーム支援を行うコンパニオンモバイルデバイスを使用した、クエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図６Ｅ】本開示の一実施形態による、別個のディスプレイに提示されるゲームアプリケーションのゲームプレイに関連したゲーム支援を行うコンパニオンモバイルデバイスを使用した、クエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図６Ｆ】本開示の一実施形態による、別個のディスプレイに提示されるゲームアプリケーションのゲームプレイに関連したゲーム支援を行うコンパニオンモバイルデバイスを使用した、クエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図６Ｇ】本開示の一実施形態による、別個のディスプレイに提示されるゲームアプリケーションのゲームプレイに関連したゲーム支援を行うコンパニオンモバイルデバイスを使用した、クエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図７】本開示の一実施形態による、別個のディスプレイに提示されるゲームアプリケーションのプレーヤのゲームプレイに関連したゲーム支援を行うコンパニオンモバイルデバイスの使用を示し、通信セッションを介してプレーヤをエキスパートに接続するためのオプションが提示される。
【図８Ａ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びアセットを取得するためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図８Ｂ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びアセットを取得するためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図８Ｃ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びアセットを取得するためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図８Ｄ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びアセットを取得するためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図８Ｅ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びアセットを取得するためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図８Ｆ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びアセットを取得するためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図８Ｇ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びアセットを取得するためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図９Ａ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及び敵を倒すためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図９Ｂ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及び敵を倒すためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図９Ｃ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及び敵を倒すためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図１０Ａ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びオブジェクトまたは場所を見つけるためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図１０Ｂ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びオブジェクトまたは場所を見つけるためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図１０Ｃ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びオブジェクトまたは場所を見つけるためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図１０Ｄ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びオブジェクトまたは場所を見つけるためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図１１Ａ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びタスク（例えばＴｕｌｌｉｕｓ将軍に会う）を達成するための要件などの一次目的及び二次目的を有する、クエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図１１Ｂ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びタスク（例えばＴｕｌｌｉｕｓ将軍に会う）を達成するための要件などの一次目的及び二次目的を有する、クエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図１２Ａ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びタスクを達成する方法を学ぶためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図１２Ｂ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びタスクを達成する方法を学ぶためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図１２Ｃ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びタスクを達成する方法を学ぶためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図１３Ａ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びゲームアプリケーションに関する何か（例えば敵方戦闘員に関する情報）を理解するためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図１３Ｂ】本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びゲームアプリケーションに関する何か（例えば敵方戦闘員に関する情報）を理解するためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
【図１４】本開示の様々な実施形態の態様を実行するために使用することができる例示的なデバイスの構成要素を示す。
【図１５】本開示の一実施形態による、ヘッドマウントディスプレイの構成要素を示す図である。
【図１６】本開示の様々な実施形態による、ゲームシステムのブロック図である。
【発明を実施するための形態】
【００１１】
以下の発明を実施するための形態は、例示目的で多数の具体的な詳細を含むが、当業者であれば、以下の詳細に対する多数の変形及び変更が本開示の範囲内であることを理解するであろう。従って、後述の本開示の態様は、発明を実施するための形態に続く特許請求の範囲の普遍性を失うことなく、かつ特許請求の範囲に制限を課すことなく、明記される。
【００１２】
概して、本開示の様々な実施形態は、プレーヤによるゲームアプリケーションのゲームプレイ中に、またはそれとは無関係に、ゲーム支援を提供するシステム及び方法を説明する。例えば、プレーヤがゲームアプリケーションの一部で行き詰った場合、プレーヤは、問い合わせ、つまりクエリーを通して、バックエンドゲーム支援サーバにヘルプを求めることができる。クエリーは、音声、テキスト、映像などを含む任意の形式、または形式の組み合わせであり得る。ゲーム支援サーバは、クエリーが提示された現行ゲームコンテキストに基づいて、クエリーをモデル化された応答にマッチングさせるように構成される。マッチングは、ディープラーニングエンジンにより行われ、例えば、ゲーム支援サーバにより、またはディープラーニングを含むように人工知能（ＡＩ）を提供するサードパーティにより、行われる。
応答は、音声、テキスト、映像などを含む任意の形式、または形式の組み合わせで、ユーザに提示され得る。このようにして、プレーヤのゲーム体験は向上する。ゲームアプリケーションのゲームプレイ中、プレーヤは、いつでも、いかなる理由でも、クエリーを生成してもよい。プレーヤは、キャラクタ情報、戦略情報、ゲームアプリケーションの全体的な人気など、ゲームアプリケーションのある側面に関するさらなる情報の取得、クラウドゲームサービスを介してマルチプレーヤ形式で友達とプレイする時間のスケジューリング、同じゲームアプリケーションまたは別のゲームアプリケーションをプレイするソーシャルネットワークの友達に関する情報の取得（例えば友達がプレイするゲームアプリケーションの発見、そのゲームアプリケーションに関する情報の取得、そのゲームアプリケーションに関する購入情報の取得など）、ゲームアプリケーションでプレーヤが前進することを妨げるある障害を克服する方法に関する情報の取得などを、所望し得る。
その結果、プレーヤは、ゲームアプリケーションでより没入型の体験をし、よって、プレーヤは、ゲームアプリケーションをそのままプレイするだけでなく、言わば、ゲームプレイと同時に提示される情報（例えば音声、テキスト、映像など）、及び／またはプレーヤに心理的サポート及び情報サポートを提供するように構成された自動ゲームアシスタント（例えばゲームバトラー／ナビゲータ）とのゲームプレイ中の継続的な会話により、自分のゲームプレイを向上させることができる。さらに、ゲーム機の役割は、クエリーに応答する目的で情報モデルを構築するために、より完全でより豊富な情報一式を提供することに関して拡張されている。つまり、ゲームアプリケーション及び／またはプレーヤに関するコンテキスト情報を特定するために、プレーヤのゲームプレイ中に、低レベルのオペレーティングシステム（ＯＳ）情報がゲーム機から配信され得る。
すなわち、使用されているゲームプレイに関する情報だけでなく、プレイに関連する情報も、１つ以上のクエリーに応答する目的でコンテキスト情報を満たすために使用される。ＯＳレベル情報には、ボタンシーケンス、ボタン作動速度、プレイ速度、プレーヤがプレイしている日時、プレーヤがプレイしている時間の長さ、プレーヤがプレイしているゲームなどが含まれ得る。また、ゲーム機は、ゲーム支援機能を１つ以上のデバイスに分散することができる。例えば、応答モデリング及びクエリー応答マッチングは、ゲーム機ではなく、バックエンドゲーム支援サーバにより行われる。さらに、ゲーム機は、ゲーム支援サーバにより配信された応答を、プレーヤに提示するために１つ以上の他のデバイスに配布することができる。
例えば、応答は、現行のゲームプレイと同時にディスプレイに提供されてもよく、または応答は、ゲームプレイを提示するディスプレイと連携して作動するコンパニオンデバイス（例えば携帯電話）に提供されてもよく、またはゲームプレイの音声とは無関係に応答を提供するための別個の専用スピーカセット（例えばスタンドアロン型、ゲームコントローラ上設置型など）を通して提供されてもよい。このようにして、音声無混合、映像無混合、または最小限の映像混合などであるため、ゲームアプリケーションのゲームプレイへの干渉は、最小限に抑えられる。
【００１３】
様々な実施形態に関する上記の概要的理解と共に、ここで実施形態の例示的な詳細が、様々な図面を参照して説明される。
【００１４】
本明細書全体を通して、「ゲームアプリケーション」への言及は、入力コマンドの実行を通して指示される任意の種類のインタラクティブアプリケーションを表すことを意味する。単なる例示としては、インタラクティブアプリケーションには、ゲーム、ワード処理、映像処理、ビデオゲーム処理などのアプリケーションが含まれる。さらに、ビデオゲーム及びゲームアプリケーションという用語は、置換可能である。
【００１５】
図１Ａは、本開示の一実施形態による、ローカルコンピューティングデバイス１００上で、またはクラウドゲームネットワーク（明瞭にするために図示せず）を介して実行できるゲームアプリケーションをプレイするプレーヤ５のゲームプレイ中に、ゲーム支援を提供するシステム１００Ａを示す。ゲーム支援は、プレーヤ５がゲームアプリケーション内のオブジェクトに関する情報を求める時、またはゲームアプリケーション内の障害を克服するのに支援を要求する時など、ゲームプレイと併せて提供され得る。別の実施形態では、プレーヤはゲームプレイの全くない環境（例えば仕事場、タクシー乗車中、公共交通機関の使用中など）にいるが、ゲームアプリケーションに関して、またはゲーム環境全般に関してクエリーを行うことに興味がある時など、ゲーム支援は、ゲームプレイとは無関係に提供され得る。
【００１６】
具体的には、図１Ａに示されるように、ゲームアプリケーションは、プレーヤ５のクライアントデバイス１００のローカルで実行され得る、あるいはクラウドゲームネットワークまたはゲームクラウドシステムのバックエンドゲームサーバ（図示せず）で作動するバックエンドゲーム実行エンジンにて実行され得る。
【００１７】
さらに、クライアントデバイス１００は、システム１００Ａのバックエンドでゲーム支援サーバ１４０のフロントエンドとして機能する。具体的には、クライアントデバイス１００は、クライアントゲーム支援モジュール１２０を含み、これは、後述されるように、プレーヤ５からクエリーを受信し、バックエンドゲーム支援サーバ１４０の協力により、これらのクエリーに対する応答をプレーヤ５に配信するように構成される。クライアントデバイス１００のユーザインターフェース１１０は、クエリー（例えばテキスト）を受信し、応答（例えば音声、映像など）を提示することにより、クライアントゲーム支援モジュール１２０をサポートする。
【００１８】
また、ゲーム支援モジュール１２０は、クライアント自動音声認識（ＡＳＲ）エンジン１２５と協働して、任意でクエリーを第１の形式から第２の形式に変換する。例えば、クエリーは、プレーヤ５から音声形態で入力され得、ＡＳＲエンジン１２５は、音声クエリーを、下流デバイスが処理するのに（例えば分析、転送などに）より適したテキスト形式に変換するように構成される。ＡＳＲエンジン１２５はまた、テキストで受信された応答を音声でブロードキャストできるように、テキストを音声に変換するようにも構成され得る。
【００１９】
クライアントデバイス１００は、インターネットなどのネットワーク１５０を介してゲームアプリケーションへのアクセスを要求し、ゲーム実行エンジン１１１またはバックエンドゲームサーバ２０５（図２参照）により実行されるビデオゲームまたはゲームアプリケーションのインスタンスをレンダリングして、レンダリングされたインスタンス（例えば音声及び映像）を、プレーヤ５に対応付けられたディスプレイデバイス１２及び／またはヘッドマウントディスプレイ（ＨＭＤ）１０２に配信するように構成される。
例えば、プレーヤ５は、クライアントデバイス１００を介して、クラウドゲーム用ゲームプロセッサ２０１上で実行されるゲームアプリケーションのインスタンスとインタラクションを行い得る。図示されるように、ゲーム実行エンジン１１１は、前述のように、ゲームアプリケーションをローカルで実行するように構成される。クライアントデバイス１００は、ゲームコントローラ６、タブレットコンピュータ１１、キーボードなどの様々な種類の入力デバイスからの入力、及びビデオカメラ、マウス、タッチパッドなどにより取り込まれたジェスチャを、受信し得る。
クライアントデバイス１００は、メモリとプロセッサモジュールとを少なくとも有する任意の種類のコンピューティングデバイスであり得、ネットワーク１５０を介してゲームサーバ２０５に接続することができる。クライアントデバイス１００のいくつかの例として、パーソナルコンピュータ（ＰＣ）、ゲーム機、ホームシアターデバイス、汎用コンピュータ、モバイルコンピューティングデバイス、タブレット、電話、または、ゲームサーバ２０５とインタラクトしてビデオゲームのインスタンスを実行することができる任意の他の種類のコンピューティングデバイスが、挙げられる。実施形態では、ＨＭＤ１０２は、クライアントデバイス１００の機能を実行するように構成され得る。
【００２０】
クライアントデバイス１００は、プレーヤ５とのインターフェースとして機能するローカルクエリーエージェント１１５とインタラクトし得る。例えば、クエリーエージェント１１５は、プレーヤ５からの音声を受信及び／または記録するように構成されたマイクロフォン１３１を含む。このようにして、プレーヤ５により提示された口頭でのクエリー１８１が、クエリーエージェント１１５を通して、システム１００Ａに入力され得る。一実施形態では、クエリーエージェント１１５は、クエリー１８１を、全く変換せずに同じ形式で、クライアントデバイス１００のクライアントゲーム支援モジュール１２０に渡す。別の実施形態では、クライアントデバイス１００は、ＡＳＲエンジン１４１Ｃも含んで、クエリーを第１の形式から第２の形式に変換し（例えば音声からテキストに、テキストから音声に、など）、次いで第２の形式のクエリー１８１を、クライアントゲーム支援モジュール１２０に配信する。
【００２１】
別の実施形態では、クエリー１８１は、別の通信経路を介して提示され得る。例えば、クエリーは、テキストまたは映像の形態であり得、モバイルデバイス１１またはディスプレイ１２を介して（例えばキーボードなどを介して）、あるいはＨＭＤ１０２のインターフェースを介して、受信され得る。クエリー１８１は、直接（例えばモバイルデバイス１１から）、またはユーザインターフェース１１０を介して、クライアントデバイスに配信され得る。別の実施形態では、クエリー１８１’が、モバイルデバイス１１（または別の種類のデバイス）から、ネットワーク１５０を介してゲーム支援サーバ１４０に直接配信される。同様に、応答１９５’が、モバイルデバイスまたは任意の他のデバイスに直接返信される。
【００２２】
特定の形式（例えば第１または第２、テキストまたは音声の形式）のクエリー１８１が、クライアントゲーム支援モジュール１２０から、ネットワーク１５０を介して、クエリーに応答してプレーヤ５にゲーム支援を提供するように構成されたバックエンドゲーム支援サーバ１００Ａに、配信される。ゲーム支援サーバ１４０は、クエリー１８１を１つの形式から別の形式に変換するように任意で構成されたＡＳＲエンジン１４１Ｂを含む。
例えば、ＡＳＲエンジン１４１Ｂは、クエリーを音声からテキストに変換する（例えばディープラーニングエンジンを使用して音声認識を実行する）、またはテキストから音声に変換することができる。ゲーム支援サーバ１４０、またはゲーム支援サーバ１４０の下流を含む、プレーヤ５のクエリー１８１がたどる経路に沿った任意の箇所で、変換は実行されてもよいことに、留意することが重要である。いくつかの実施形態では、ＡＳＲエンジンはかなりの量のリソース（例えばディープラーニングエンジンを含む）を要し得ることから、ＡＳＲエンジンは、ゲーム支援サーバ１４０、またはＡＳＲを実行する別のサードパーティサーバに、配置され得る。
【００２３】
さらに、ゲーム支援サーバ１４０は、クエリー１８１に関連するゲームコンテキストを少なくとも提供するように構成された予備コンテキスト分析器１４５を含む。ゲームコンテキストデータ（低レベルＯＳコンテキストデータを含む）と、グローバルコンテキストデータ（例えばユーザプロファイル関連情報）とを含むコンテキストデータ１８４が、クライアントデバイス１００から（例えばゲーム実行エンジン１１１により部分的に生成される）、ゲーム支援サーバ１４０に配信される。予備コンテキスト分析器１４５は、クエリー１８１に関連する現行コンテキスト１８７（例えば現行ゲームコンテキスト）を特定し得る。
例えば、予備コンテキスト分析器１４５は、クエリー１８１が第１のゲームアプリケーションに関連して提示されることを特定し得る。ゲームプレイ内でプレーヤが関与しているシーンまたはレベルなど、追加のコンテキストが特定され得る。このようにして、クエリーにはコンテキストが与えられ、コンテキストから応答がマッチングまたは生成され得る。例えば、第１のゲームアプリケーション及び第２のゲームアプリケーションは通常、同じ障害（例えば山壁を登る）を有し得、追加コンテキスト抜きの一般的なクエリー（この壁を登る方法）には、クエリーは間違ったゲームアプリケーション用であるため不適切であるという応答が返され得る。しかし、適切な現行コンテキスト１８７を伴うクエリーには、好適な応答が返される。
【００２４】
一実施形態では、応答１９５は、ＡＳＲエンジン１４１Ａと、自然言語処理（ＮＬＰ）エンジン１４２と、マシンまたはディープラーニングエンジン１９０とを含むサードパーティ人工知能（ＡＩ）プロセッサ１６０により生成される。具体的には、クエリー１８１及び現行コンテキスト１８７が、ゲーム支援サーバ１４０からＡＩプロセッサ１６０に配信される。クエリー１８１がＡＩプロセッサ１６０による処理に適した正しい形式に変換されていない場合には、ＡＳＲエンジン１４１Ａは、音声認識技術を使用するなどして、適切な変換（例えば音声／発話からテキストになど）を行うことが可能である。別の実施形態では、応答１９５は、ＮＬＰエンジン及びディープラーニングエンジンを同様に含むゲーム支援サーバ１４０により、生成される。
【００２５】
さらに、クエリー１８１が適切な形式（例えばテキスト）に変換されると、ＮＬＰエンジン１４２は、クエリーの性質を解釈するように、またはプレーヤ５が要求（リクエスト）するもの（例えばクエリーのコンテンツ）を理解するように、構成される。例えば、ＮＬＰエンジンは、テキスト形態のクエリーを、ディープラーニングエンジンを使用して分析し、クエリーの意味を特定し得る。このようにして、解釈されたクエリーに対する適切な応答が、後述されるように、所与の現行コンテキスト１８７に関して、ＡＩプロセッサ１６０によりマッチングまたは生成され得る。
【００２６】
具体的には、プレーヤ５、並びにゲームアプリケーションをプレイする他のプレーヤから収集されたコンテキスト情報に基づいて、所与の現行コンテキスト１８７のクエリー１８１に直接答える事前に生成された応答１９５が、プレーヤ５に提示され得る。事前に生成された応答１９５は、ディープラーニングエンジン１９０により学習された、この特定のクエリー１８１または類似のクエリーに対するモデル化された応答であり得る。よって、ディープラーニングエンジン１９０は、クエリー１８１を、好適なモデル化された応答１９５にマッチングさせるように構成される。具体的には、ディープラーニングエンジン１９０は、クエリーに対する応答を提供するために、解釈されたクエリーを、応答モデルまたはクエリー／応答モデルにマッチングさせるように構成される。一実施形態では、クエリーにマッチングする応答（例えばテキスト、音声、映像など）がない場合には、１つ以上の最も近くマッチングしたモデルに基づいて、新たな応答が生成され得る。
【００２７】
よって、ディープラーニングエンジン１９０は、応答１９５をゲーム支援サーバ１４０に返す。応答１９５は、適切な形式であり得る。例えば、応答１９５は、テキストなどの第１の形式であり得る。プレーヤ５への返信中のある箇所で、応答１９５は、プレーヤ５に適切な形式に変換され得る。一実施態様では、応答１９５は、ある箇所でテキストから音声に変換される（例えば、ＡＩプロセッサ１６０のＡＳＲエンジン１４１Ａにて、ゲーム支援サーバ１４０のＡＳＲエンジン１４１Ｂにて、クライアントデバイス１００のＡＳＲエンジン１２５にて、またはローカルクエリーエージェント１１５のＡＳＲエンジン１４１Ｃにて）。このようにして、ローカルクエリーエージェントのスピーカ１３２は、プレーヤ５に応答１９５をブロードキャストすることができる。別の実施態様では、応答１９５は、テキスト形式でクライアントデバイス１００に返され、ディスプレイ１２、モバイルデバイス１１、ＨＭＤ１０２など、プレーヤ５とインターフェースする好適なデバイスへと渡される。応答を、ディスプレイを介して、または別の好適なデバイスを介して、映像で提示するなど、さらに別の実施形態もサポートされる。
【００２８】
図１Ｂは、本開示の一実施形態による、ローカルコンピューティングデバイス上で、またはクラウドゲームネットワークを介して実行できるゲームアプリケーションをプレイするプレーヤのゲームプレイ中に、ゲームコントローラで受信されたユーザの口頭でのクエリーに応答して、ゲーム支援を提供するシステム１００Ｂを示す。システム１００Ｂの機能は、コントローラ６がローカルクエリーエージェントとして構成されていることを除けば、図１Ａのシステム１００Ａにより実行される機能と同じである。具体的には、クライアントデバイス１００は、プレーヤ５とのインターフェースとして機能するコントローラ６とインタラクトし得る。例えば、コントローラ６は、プレーヤ５からの音声を受信及び／または記録するように構成されたマイクロフォン１３１’を含む（例えばクエリー１８１を受信するため）。コントローラ６は、クエリーを第１の形式から第２の形式に（例えば音声からテキストに、テキストから音声に、など）任意で変換するように構成されたＡＳＲエンジン１４１Ｃ’を含み得る。さらに、コントローラ６は、プレーヤ５のために応答１９５をブロードキャストするように構成されたスピーカ１３２’を含む。
【００２９】
図１Ｃは、本開示の一実施形態による、ゲームアプリケーションのコンテキスト情報及び該当するクエリーに基づいて、応答モデル及び／またはクエリー／応答モデルを構築するために使用される例示的なニューラルネットワークを示す。具体的には、ＡＩプロセッサ１６０内のディープラーニングまたはマシンラーニングエンジン１９０は、例えば、コンテキストデータ、クエリー、及び基本応答に関する情報を入力として受信するように構成される。ディープラーニングエンジン１９０は、ディープラーニングアルゴリズム、強化学習、または他の人工知能ベースのアルゴリズムを含む人工知能を利用して、応答モデル及び／またはクエリー／応答モデルを構築する。すなわち、ラーニング及び／またはモデリング段階の間、ディープラーニングエンジン１９０は入力データを使用して、１つ以上のクエリーに応答するために使用できる応答モデル及び／またはクエリー／応答モデルを作成する。いくつかの実施形態では、ディープラーニングエンジン１９０はまた、ＡＳＲ及びＮＬＰ処理を行うように構成される。
【００３０】
具体的には、ニューラルネットワーク１９０は、該当するユーザの応答、行動、態度、所望、及び／またはニーズを特定するためにデータ集合を分析する自動分析ツールの一例を表す。異なる種類のニューラルネットワーク１９０が可能である。一例では、ニューラルネットワーク１９０は、ディープラーニングに対応する。従って、ディープニューラルネットワーク、畳み込みニューラルネットワーク、及び／または教師ありもしくは教師なしのトレーニングを使用したリカレントニューラルネットワークが、実施され得る。別の例では、ニューラルネットワーク１９０は、強化学習に対応したディープラーニングネットワークを含む。例えば、ニューラルネットワーク１９０は、強化学習アルゴリズムに対応するマルコフ決定プロセス（ＭＤＰ）としてセットアップされる。
【００３１】
一般に、ニューラルネットワーク１９０は、人工ニューラルネットワークなどの相互接続されたノードのネットワークを表す。各ノードは、データからある情報を学習する。相互接続を介して、ノード間で知識を交換することができる。ニューラルネットワーク１９０への入力により、ノードの集合が活性化される。次に、このノードの集合は、他のノードを活性化し、これにより入力に関する知識が伝播される。この活性化プロセスは、出力が提供されるまで、他のノードにわたって繰り返される。
【００３２】
図示されるように、ニューラルネットワーク１９０は、ノードの階層を含む。最下位階層に、入力層１９１が存在する。入力層１９１は、入力ノードの集合を含む。例えば、これらの入力ノードのそれぞれは、該当サッカードを起こしている被験ユーザ／対象（例えば目の方向（オリエンテーション）データ）の監視中に、アクチュエータを介して能動的に収集された、またはセンサにより受動的に収集されたローカルデータ１１５に、マッピングされる。
【００３３】
最上位階層には、出力層１９３が存在する。出力層１９３は、出力ノードの集合を含む。出力ノードは、応答（例えば所与のコンテキストなど）の情報に関連する決定（例えば予測）を表す。よって、出力ノードは、該当するコンテキストが与えられた場合、クエリーを特定の応答にマッチングさせ得る。
【００３４】
ディープラーニングエンジン１９０が、好適な応答モデル及び／またはクエリー／応答モデルを繰り返し特定するのに使用するパラメータを改良及び／または修正するために、これらの結果は、以前のインタラクション及び被験対象の監視から得られた所定の本来の結果と比較され得る。すなわち、ニューラルネットワーク１９０内のノードは、パラメータを改良する時に、モデルのような決定を行うために使用できるモデルのパラメータを学習する。このようにして、所与のクエリーは、これまで改良されたモデル化された応答、場合によっては新たにモデル化された応答に、対応付けられ得る。
【００３５】
具体的には、隠れ層１９２が、入力層１９１と出力層１９３との間に存在する。隠れ層１９２は、「Ｎ」個の隠れ層を含み、「Ｎ」は、１以上の整数である。次に、隠れ層のそれぞれはまた、隠れノードの集合を含む。入力ノードは、隠れノードと相互接続されている。同様に、隠れノードは、出力ノードと相互接続されているため、入力ノードは、出力ノードと直接相互接続されていない。複数の隠れ層が存在する場合、入力ノードは、最下位の隠れ層の隠れノードと相互接続される。次に、これらの隠れノードは、次の隠れ層の隠れノードと相互接続され、以下同様に続く。次の最上位の隠れ層の隠れノードは、出力ノードと相互接続される。相互接続は、２つのノードを接続する。相互接続は、学習することができる数値の重みを有し、ニューラルネットワーク１９０を入力に適応させて、学習可能にする。
【００３６】
通常、隠れ層１９２により、入力ノードに関する知識は、出力ノードに該当する全てのタスク間で共有されることが可能となる。このようにするため、一実施態様では、隠れ層１９２を介して、入力ノードに変換ｆが適用される。一例では、変換ｆは、非線形である。例えば線形整流器関数ｆ（ｘ）＝ｍａｘ（０，ｘ）を含む、様々な非線形変換ｆが利用可能である。
【００３７】
ニューラルネットワーク１９０はまた、最適解を見つけるためにコスト関数ｃを使用する。コスト関数は、所与の入力ｘに関してｆ（ｘ）と定義されたニューラルネットワーク１９０により出力される予測と、グラウンドトゥルースまたはターゲット値ｙ（例えば見込まれる結果）との偏差を測定する。最適解は、最適解のコストよりコストの低い解がない状況を表す。コスト関数の一例として、グラウンドトゥルースラベルが利用可能なデータの場合、予測とグラウンドトゥルースとの平均二乗誤差が挙げられる。ラーニングプロセス中に、ニューラルネットワーク１９０は、誤差逆伝播アルゴリズムを使用して、様々な最適化方法を採用し、コスト関数を最小化するモデルパラメータ（例えば隠れ層１９２内のノード間の相互接続の重み）を学習し得る。このような最適化方法の一例として、確率的勾配降下法が挙げられる。
【００３８】
一例では、ニューラルネットワーク１９０のトレーニングデータ集合は、同じデータドメインに由来し得る。例えば、ニューラルネットワーク１９０は、所与の入力または入力データの集合に基づく類似するクエリーのパターン及び／または特性を学習するように訓練される。例えば、データドメインには、所与のゲームコンテキストのゲームアプリケーション内の特定シーンに関連するクエリーが含まれる。別の例では、トレーニングデータ集合は、ベースライン以外の入力データを含むように、異なるデータドメインに由来する。よって、ニューラルネットワーク１９０は、他のデータドメインを使用してクエリーを認識し得る、またはこれらのデータドメインに基づいて、所与のクエリーに対する応答モデルを生成するように構成され得る。
【００３９】
図２Ａは、本開示の一実施形態による、ゲームアプリケーションをプレイするプレーヤのゲームプレイ中に、ゲーム支援を提供するシステム１０を示す。例えば、ゲームプレイをサポートするように構成されたユーザインターフェースを介して（例えばコンパニオンデバイス、携帯電話、またはスピーカ、コントローラスピーカなどを介して）、支援は提供され得る。本開示の一実施形態によれば、ゲームアプリケーションは、ローカルコンピューティングデバイス上で、またはクラウドゲームネットワークを介して、実行することができる。
【００４０】
図２Ａに示されるように、ゲームアプリケーションは、プレーヤ５のクライアントデバイス１００のローカルで実行され得る、あるいはクラウドゲームネットワークまたはゲームクラウドシステムのバックエンドゲームサーバ２０５で作動するバックエンドゲーム実行エンジン２１１にて実行され得る。ゲーム実行エンジン２１１は、ゲームサーバ２０５の多数のゲームプロセッサ２０１のうちの１つの中で作動し得る。いずれの場合でも、クラウドゲームネットワークは、クエリーに対する応答を提供することにより、プレーヤにゲーム支援を提供するように構成される。例えば、ゲームサーバ２０５及び／またはゲームプロセッサ２０１は、プレーヤ５にゲーム支援を提供するように構成されたゲーム支援サーバ１４０を含み得、及び前述のようなＡＩプロセッサ１６０’を含み得る。いくつかの実施形態では、ＡＩは、サードパーティ（例えば図１Ａ〜１ＢのＡＩプロセッサ１６０）により実行される。
【００４１】
一実施態様では、クライアントデバイス１００のユーザインターフェース１１０は、ゲーム支援の提供をサポートし得、これにより、プレーヤは、ユーザインターフェース１１０を介してクエリーを提示し、ユーザインターフェース１１０に提供される応答とインタラクトすること（例えば見る、聞く、提示することなど）ができる。別の実施形態では、ユーザインターフェースは、前述のように、モバイルデバイス（例えば電話）またはスピーカなどの別のデバイスに設けられる。さらに、ゲームアプリケーションは、シングルプレーヤモードまたはマルチプレーヤモードで実行され得、本発明の実施形態は、両動作モードに対しマルチプレーヤ機能の強化（例えば支援、通信など）を提供する。
【００４２】
いくつかの実施形態では、クラウドゲームネットワークは、ホストマシンのハイパーバイザ上で作動する複数の仮想マシン（ＶＭ）を含み得、１つ以上の仮想マシンは、シングルプレーヤまたはマルチプレーヤのビデオゲームをサポートする際、ホストのハイパーバイザが使用可能なハードウェアリソースを利用して、ゲームプロセッサモジュール２０１を実行するように構成される。別の実施形態では、クラウドゲームネットワークは、複数のユーザに対応する複数のローカルコンピューティングデバイスをサポートするように構成され、各ローカルコンピューティングデバイスは、シングルプレーヤまたはマルチプレーヤのビデオゲーム内などのビデオゲームのインスタンスを実行し得る。
例えば、マルチプレーヤモードで、ビデオゲームがローカルで実行されている間、同時にクラウドゲームネットワークは、各ローカルコンピューティングデバイスから情報（例えばゲーム状態データ）を受信し、その情報をローカルコンピューティングデバイスのうちの１つ以上にわたり適宜配布し、これにより、各ユーザは、マルチプレーヤビデオゲームのゲーム環境内で他のユーザとインタラクトすることができる（例えばビデオゲーム内の該当キャラクタを通して）。このようにして、クラウドゲームネットワークは、マルチプレーヤゲーム環境内のユーザそれぞれのゲームプレイを調整し、組み合わせる。
【００４３】
図示されるように、システム１０は、複数のインタラクティブゲームアプリケーションへのアクセスを提供するゲームプロセッサモジュール２０１を実行するゲームサーバ２０５を含む。ゲームサーバ２０５は、クラウド内で利用可能な任意の種類のサーバコンピューティングデバイスであり得、前述のような１つ以上のホスト上で実行される１つ以上の仮想マシンとして構成され得る。例えば、ゲームサーバ２０５は、ゲームプロセッサ２０１をサポートする仮想マシンを管理し得る。ゲームサーバ２０５はまた、追加のサービス及び／またはコンテンツをユーザ５に提供するように構成される。
例えば、ゲームサーバ２０５は、該当するゲームアプリケーションをプレイしている、または現在プレイしていないがゲームアプリケーションに関連する情報に興味があるプレーヤ５に、ゲーム支援を提供するように構成可能である。支援は、クエリーに対する応答の形態であり得る。いくつかの実施形態では、所与のクエリーにマッチングする応答がない場合、ゲームサーバは、ゲームアプリケーションをプレイするプレーヤを、通信セッションを介してエキスパートに接続して、リアルタイムの支援を提供するように構成可能であり、ゲームサーバは、支援要求を受信し、プレーヤを好適なエキスパートにマッチングさせ、ヘルプセッションコントローラ２２０を介するなどして、プレーヤのゲームプレイ中にプレーヤをエキスパートにリアルタイムで接続するヘルプセッションを確立するように構成される。
【００４４】
クライアントデバイス１００は、インターネットなどのネットワーク１５０を介してゲームアプリケーションへのアクセスをリクエスト、つまり要求するように、並びに、ゲームサーバ２０５により実行され、ユーザ５に対応付けられたディスプレイデバイス１２及び／またはヘッドマウントディスプレイ（ＨＭＤ）１０２に配信されるビデオゲームまたはゲームアプリケーションのインスタンスをレンダリングするように、構成される。例えば、ユーザ５は、クライアントデバイス１００を介して、ゲームプロセッサ２０１上で実行されるゲームアプリケーションのインスタンスとインタラクションを行い得る。クライアントデバイス１００はまた、前述のように、ゲームアプリケーションをローカルで実行するように構成されたゲーム実行エンジン１１１を含み得る。
クライアントデバイス１００は、ゲームコントローラ６、タブレットコンピュータ１１、キーボードなどの様々な種類の入力デバイスからの入力、及びビデオカメラ、マウス、タッチパッドなどにより取り込まれたジェスチャを、受信し得る。クライアントデバイス１００は、メモリとプロセッサモジュールとを少なくとも有する任意の種類のコンピューティングデバイスであり得、ネットワーク１５０を介してゲームサーバ２０５に接続することができる。クライアントデバイス１００のいくつかの例として、パーソナルコンピュータ（ＰＣ）、ゲーム機、ホームシアターデバイス、汎用コンピュータ、モバイルコンピューティングデバイス、タブレット、電話、または、ゲームサーバ２０５とインタラクトしてビデオゲームのインスタンスを実行することができる任意の他の種類のコンピューティングデバイスが、挙げられる。実施形態では、ＨＭＤ１０２は、クライアントデバイス１００の機能を実行するように構成され得る。
【００４５】
クライアントデバイス１００は、レンダリングされた画像を受信するように、及びレンダリングされた画像をディスプレイ１２及び／またはＨＭＤ１０２に表示するように、構成される。例えば、ネットワーク１５０を介して、レンダリングされた画像は、ユーザ５に対応付けられたゲームサーバ２０５のゲーム実行エンジン２１１上で実行されるゲームアプリケーションのインスタンスにより配信され得る。別の例では、ローカルゲーム処理を通して、レンダリングされた画像は、ローカルゲーム実行エンジン１１１により配信され得る。いずれの場合も、クライアントデバイス１００は、ゲームプレイを駆動するために使用される入力コマンドを介するなどして、ユーザ５のゲームプレイに対応付けられた実行エンジン２１１または１１１とインタラクトするように構成される。
【００４６】
さらに、クライアントデバイス１００は、ゲームサーバ２０５とインタラクトして、ゲームアプリケーションをプレイしている時のユーザ５のゲームプレイの１つ以上のゲームコンテキスト（例えば低レベルＯＳコンテキスト）、及びグローバルコンテキストデータを取り込み、格納するように構成される。各ゲームコンテキストには、ゲームプレイに関連する情報（例えばゲーム状態、ユーザ情報など）が含まれ、ハードウェア操作に関連する低レベルＯＳ情報（例えば作動したボタン、作動速度、ゲームプレイの時間など）が含まれ得る。より具体的には、ゲームサーバ２０５のゲームプロセッサ２０１は、ゲームアプリケーションをプレイしている時のユーザ５のゲームプレイのゲーム及び／またはＯＳレベルコンテキストを、生成及び／または受信するように構成される。
さらに、グローバルコンテキストデータも収集され、通常、ユーザプロファイルデータに関連付けられる（例えば、プレーヤがゲームアプリケーションをプレイする時間の長さ、プレーヤがゲームアプリケーションを最後にプレイした日時、プレーヤが支援を要求する頻度、他のプレーヤと比較した時のプレーヤのスキルレベルなど）。
別の実施態様では、ＯＳレベルコンテキストを含むゲームコンテキスト、及びグローバルコンテキストは、クライアントデバイス１００上のローカルゲーム実行エンジン１１１により生成されて出力され、ネットワーク１５０を介してゲームプロセッサ２０１へ配信され得る。さらに、ＯＳレベルコンテキストを含むゲームコンテキスト、及びグローバルコンテキストは、クラウドネットワークのゲームプロセッサ２０１内のゲーム実行エンジン２１１により、ゲームコンテキスト生成器２２２を介するなどして、生成され得る。ＯＳレベルコンテキストを含むゲームコンテキスト、及びグローバルコンテキストは、クライアントデバイス１００にローカルに格納され得、及び／またはゲームサーバ２０５のコンテキストプロファイルデータベース２４２に格納され得る。
【００４７】
具体的には、各ゲームコンテキストは、ゲームプレイに関連するメタデータ及び／または情報を含む。ゲームコンテキストは、レベルの途中など、ゲームアプリケーションのプレイ進行中の様々な箇所で、取り込まれ得る。例示すると、ゲームコンテキストは、ゲームアプリケーション内でプレーヤ（例えばプレーヤのキャラクタ）がいた場所、ゲームアプリケーション内でプレーヤがいる場所、プレーヤが行ったこと、プレーヤまたはキャラクタが蓄積したアセット及びスキル、プレーヤに提示されたクエストまたはタスク、及びゲームアプリケーション内でプレーヤが行こうとしている場所を、特定するのに役立ち得る。
さらに、各ゲームコンテキスト内のメタデータ及び情報は、クエリーを応答にマッチングさせる場合など、プレーヤのゲームプレイに関連したサポートを提供し得、及び／または提供するために分析され得、ゲームプレイは、クエリーに関連する特定のコンテキストを有し、マッチングした応答は、ディープラーニングを通じて特定されたため、クエリーに回答するのに最適である。具体的には、ゲームコンテキストに基づいて、クライアントデバイス１００は、ゲームサーバ２０５とインタラクトして、クエリーに対応付けられた応答を表示することができるユーザインターフェースを表示して、プレーヤのゲームプレイ中に、またはいずれのゲームプレイとも無関係に、ゲーム支援を提供するように構成される。いくつかの実施形態では、応答は、別個のデバイス（例えば、スピーカ）を介して提供される。
【００４８】
より具体的には、ゲームコンテキストはまた、その箇所でのゲームの状態を定義するゲーム状態データを含む。例えば、ゲーム状態データには、ゲームキャラクタ、ゲームオブジェクト、ゲームオブジェクト属性、ゲーム属性、ゲームオブジェクト状態、グラフィックオーバーレイ、プレーヤ５のゲームプレイのゲーム世界におけるキャラクタの位置、ゲームプレイのシーンまたはゲーム環境、ゲームアプリケーションのレベル、キャラクタのアセット（例えば武器、道具、爆弾など）、キャラクタのタイプまたは種族（例えば魔術師、兵士など）、プレーヤに提示された現在のクエスト及び／またはタスク、ロードアウト、キャラクタのスキルセット、ゲームレベル、キャラクタ属性、キャラクタの位置、残存ライフ数、利用可能ライフの可能総数、鎧、トロフィー、タイムカウンタ値、及び他のアセット情報などが含まれ得る。
このようにして、ゲーム状態データにより、ビデオゲーム内の該当箇所に存在していたゲーム環境の生成が可能となる。ゲーム状態データにはまた、ＣＰＵ、ＧＰＵ、及びメモリの状態、レジスタ値、プログラムカウンタ値、プログラム可能ＤＭＡ状態、ＤＭＡのバッファされたデータ、音声チップ状態、ＣＤ‐ＲＯＭ状態など、ゲームプレイをレンダリングするために使用されるあらゆるデバイスの状態が含まれ得る。ゲーム状態データには、作動したボタン、作動速度、プレイされたゲームアプリケーション、及び他のハードウェア関連データなどの低レベルＯＳデータが含まれ得る。ゲーム状態データは、ゲーム状態データベース２４５に格納される。
【００４９】
また、ゲームコンテキストには、プレーヤに関するユーザ及び／またはプレーヤ情報が含まれ得る。通常、ユーザ／プレーヤ保存データには、ビデオゲームを該当プレーヤ用にパーソナライズする情報が含まれる。これには、プレーヤのキャラクタに対応付けられた情報が含まれるため、ビデオゲームは、そのプレーヤに特有であり得るキャラクタ（例えば形状、種族、外観、衣服、兵器など）でレンダリングされる。このようにして、ユーザ／プレーヤ保存データにより、該当プレーヤのゲームプレイのキャラクタを生成することが可能となり、キャラクタは、ゲームコンテキストに対応付けられたゲームアプリケーション内の箇所に対応した状態を有する。
【００５０】
一実施態様では、ゲームコンテキストは、スナップショット情報に関連し、スナップショット情報は、該当スナップショットに対応付けられたビデオゲーム内のある箇所からビデオゲームのインスタンスを開始させることを可能にする情報を提供する。プレーヤのゲームプレイ中に取り込まれ格納された特定のスナップショットへのアクセスにより、前述のゲームコンテキストに関連するゲーム状態及び場合によってはユーザ情報など、スナップショット内の情報を使用して、ゲームアプリケーションの別のインスタンスを実行することが可能となる。
例えば、別のユーザは、スナップショットに対応付けられたゲームプレイの並列バージョンへ、ジャンプすることができる。スナップショットの作成及び使用に関する詳論は、“Ｍｅｔｈｏｄ  Ａｎｄ  Ｓｙｓｔｅｍ  Ｆｏｒ  Ｓａｖｉｎｇ  Ａ  Ｓｎａｐｓｈｏｔ  ｏｆ  Ｇａｍｅ  Ｐｌａｙ  Ａｎｄ  Ｕｓｅｄ  Ｔｏ  Ｂｅｇｉｎ  Ｌａｔｅｒ  Ｅｘｅｃｕｔｉｏｎ  Ｏｆ  Ｔｈｅ  Ｇａｍｅ  Ｐｌａｙ  Ｂｙ  Ａｎｙ  Ｕｓｅｒ  Ａｓ  Ｅｘｅｃｕｔｅｄ  Ｏｎ  Ａ  Ｇａｍｅ  Ｃｌｏｕｄ  Ｓｙｓｔｅｍ”と題する米国特許出願第１５／４１１，４２１号内で提供され、その全体は参照により組み込まれるものとする。
【００５１】
一実施態様では、スナップショットは、その箇所でレンダリングされたシーンのスナップショット画像を含む。スナップショット画像は、スナップショット画像データベース２４６に格納される。スナップショット画像は、サムネイル形式で時系列で提示され得、スナップショットは、時系列で示されるようにビデオゲームを通してユーザが進行する該当箇所におけるユーザのゲームプレイの様々なビューを提供する。スナップショット生成器２１２は、ゲームプレイ中にスナップショットを生成するように構成され得る。
【００５２】
さらに別の実施形態では、コンテキストデータには、グローバルコンテキストデータが含まれる。例えば、グローバルコンテキストデータには、プレーヤのスキルまたは能力、プレーヤがヘルプを求める全体的意向、プレーヤがゲームアプリケーションをプレイする新近性、ゲームをプレイする時にユーザ５が選択するゲームの難易度などが含まれ得る。ユーザ／プレーヤ保存データはまた、例えばプレーヤ５を識別するユーザプロファイルデータを含み得る。ユーザ／プレーヤ保存データは、データベース２４１またはプレーヤプロファイルデータベース２４３に格納される。
【００５３】
さらに、該当プレーヤに関する情報を含むプレーヤプロファイルが生成され、プロファイルデータベース２４３に格納され得る。プロファイル情報には、名前、年齢、居住地、アカウント情報、ゲームコンテキストからのユーザ関連情報（例えばデータベース２４１に格納されたユーザ保存データ）などが含まれ得る。プレーヤ／エキスパートゲームプロファイル生成器２２１は、プレーヤプロファイルを作成し管理するように構成される。
【００５４】
前出のように、ゲームプロセッサ２０１は、プレーヤにゲーム支援を提供するように構成されたゲーム支援サーバ１４０を含み得る。具体的には、ゲーム支援サーバ１４０は、クエリーを受信し、任意でクエリーを好適な形式に変換し、クエリーをＡＩエンジン（例えばＡＳＲエンジン、ＮＬＰエンジン、及びディープラーニングエンジンを含む）に送信して、クエリーを好適なモデル化された応答にマッチングさせる。例えば、プレーヤが障害物を通過する（例えば壁を登る）のにヘルプを要求すると、ゲーム支援サーバ１４０は、前述のように、そのシステム内でクエリーを処理する（例えばローカルＡＩプロセッサ１６０’を介してローカルに）、またはクエリーを処理のためにサードパーティＡＩプロセッサ１６０に送信する。モデル化された応答がマッチングすると、その応答は、例えばディスプレイまたはスピーカなどへさらに配布するために、クライアントデバイス１００に返される。
いくつかの実施形態では、ゲーム支援は、表示及びインタラクションのためにデバイス１１（例えばタブレット）に配信され得、デバイス１１は、ユーザ５とのインタラクションのためにゲームアプリケーションを実行する及び／または実行をサポートするように構成されたクライアントデバイス１００（コンパニオンデバイス）とは別個であってもよい。例えば、ゲーム支援を配信するために、第１の通信チャネルは、ゲームサーバ２０５とクライアントデバイス１００との間に確立され得、別個の第２の通信チャネルは、ゲームサーバ２０５とデバイス１１との間に確立され得る。モデル化された応答及び／またはモデル化されたクエリー／応答は、ディープラーニングを介して生成されると、データベース２４７に格納され得る。
【００５５】
図２Ｂは、プレーヤのクエリー（例えばテキスト、音声、映像など）を好適な応答（例えばテキスト、音声、映像など）にマッチングさせるように構成されたバックエンドサーバのゲーム支援サーバ１４０を使用して、ゲームアプリケーションをプレイするプレーヤのゲームプレイ中にまたはゲームプレイ外で、プレーヤにゲーム支援を提供するシステム２０６Ｂを示す。図２Ｂに示されるように、ゲームアプリケーションは、該当プレーヤのローカルで実行されており、バックエンドサーバサポート（例えばゲームサーバ２０５を介してアクセス可能）は、ヘルプセッションの確立及び管理を実施し得る。一実施形態では、システム２０６Ｂは、図２Ａのシステム１０と連携して作動して、前述のように、ゲームクラウドシステム２１０でクエリーに対する応答を提供することにより、プレーヤにゲーム支援を提供する。ここで図面を参照すると、同様の参照番号は、同一の、または対応する部分を示す。
【００５６】
図２Ｂに示されるように、複数のプレーヤ２１５（例えばプレーヤ５Ａ、プレーヤ５Ｂ、・・・、プレーヤ５Ｎ）は、複数のゲームアプリケーションをプレイしており、ゲームアプリケーションのそれぞれは、該当ユーザの該当クライアントデバイス１００（例えばゲーム機）でローカルに実行される。システム２０６Ｂは、ある期間を通してなど、１つ以上の時点で、複数のプレーヤ２１５によるゲームプレイをサポートする。さらに、複数のプレーヤ２１５のそれぞれは、前述のようにゲーム支援を提供する情報を受信するように構成された前出のデバイス１１または他のデバイス（例えばスピーカ）に、アクセスすることができる。クライアントデバイス１００のそれぞれは、該当ゲームアプリケーションをローカルで実行する点で、同様に構成され得る。例えば、プレーヤ５Ａは、該当クライアントデバイス１００上で第１のゲームアプリケーションをプレイしていてもよく、第１のゲームアプリケーションのインスタンスは、該当ゲーム作品実行エンジン１１１により実行される。
第１のゲームアプリケーションを実施するゲームロジック１２６Ａ（例えば実行可能コード）は、該当クライアントデバイス１００に格納され、第１のゲームアプリケーションを実行するために使用される。例示として、ゲームロジックは、該当クライアントデバイス１００に、ポータブルメディア（例えばフラッシュドライブ、コンパクトディスクなど）を介して、またはネットワークを介して配信され得る（例えばインターネット１５０を介してゲームプロバイダからダウンロードされ得る）。さらに、プレーヤ５Ｂは、該当クライアントデバイス１００上で第２のゲームアプリケーションをプレイしており、第２のゲームアプリケーションのインスタンスは、該当ゲーム作品実行エンジン１１１により実行される。
第２のゲームアプリケーションは、プレーヤ５Ａのために実行されている第１のゲームアプリケーションと同一であり得る、または異なるゲームアプリケーションであり得る。第２のゲームアプリケーションを実施するゲームロジック１２６Ｂ（例えば実行可能コード）は、前述のように該当クライアントデバイス１００に格納され、第２のゲームアプリケーションを実行するために使用される。さらに、プレーヤ５Ｎは、該当クライアントデバイス１００上の第Ｎのゲームアプリケーションをプレイしており、第Ｎのゲームアプリケーションのインスタンスは、該当ゲーム作品実行エンジン１１１により実行される。第Ｎのゲームアプリケーションは、第１もしくは第２のゲームアプリケーションと同一であり得る、または全く異なるゲームアプリケーションであり得る。第３のゲームアプリケーションを実施するゲームロジック１２６Ｎ（例えば実行可能コード）は、前述のように該当クライアントデバイス１００に格納され、第Ｎのゲームアプリケーションを実行するために使用される。
【００５７】
前述のように、クライアントデバイス１００のそれぞれは、ゲームコントローラ、タブレットコンピュータ、キーボードなどの様々な種類の入力デバイスからの入力、及びビデオカメラ、マウス、タッチパッドなどにより取り込まれたジェスチャを、受信し得る。クライアントデバイス１００は、メモリとプロセッサモジュールとを少なくとも有する任意の種類のコンピューティングデバイスであり得、ネットワーク１５０を介してゲームサーバ２０５に接続することができる。
また、該当プレーヤのクライアントデバイス１００は、ローカルまたはリモートで作動するゲーム作品実行エンジン１１１により実行されるレンダリングされた画像を生成するように、及びレンダリングされた画像をディスプレイに表示するように、構成される。例えば、レンダリングされた画像は、プレーヤ５Ａのクライアントデバイス１００上で実行される第１のゲームアプリケーションのインスタンスに対応付けられ得る。例えば、該当クライアントデバイス１００は、ゲームプレイを駆動するために使用される入力コマンドを介するなどして、該当プレーヤのゲームプレイを実施するためにローカルまたはリモートで実行される該当ゲームアプリケーションのインスタンスと、インタラクトするように構成される。
【００５８】
一実施形態では、クライアントデバイス１００は、ゲームアプリケーションをプレイする該当プレーヤのために、シングルプレーヤモードで作動している。
【００５９】
別の実施形態では、複数のクライアントデバイス１００は、特定のゲームアプリケーションをそれぞれプレイする該当プレーヤのために、マルチプレーヤモードで作動している。この場合、ゲームサーバを介したバックエンドサーバサポートは、マルチプレーヤ処理エンジン１１９を介するなどして、マルチプレーヤ機能を提供し得る。具体的には、マルチプレーヤ処理エンジン１１９は、特定のゲームアプリケーションのマルチプレーヤゲームセッションを制御するように構成される。例えば、マルチプレーヤ処理エンジン１１９は、マルチプレーヤゲームセッションに参加しているユーザ及び／またはプレーヤのそれぞれと通信セッションを確立し維持するように構成されたマルチプレーヤセッションコントローラ１１６と、通信する。このように、マルチプレーヤセッションコントローラ１１６に制御されることにより、セッション内のプレーヤは相互に通信することができる。
【００６０】
さらに、マルチプレーヤ処理エンジン１１９は、各ユーザの該当ゲーム環境内でユーザ間のインタラクションを可能にするために、マルチプレーヤロジック１１８と通信する。具体的には、状態共有モジュール１１７は、マルチプレーヤゲームセッションにおいてユーザそれぞれの状態を管理するように構成される。例えば、状態データは、特定箇所における該当ユーザの（ゲームアプリケーションの）ゲームプレイの状態を定義するゲーム状態データを含み得る。例えば、ゲーム状態データには、ゲームキャラクタ、ゲームオブジェクト、ゲームオブジェクト属性、ゲーム属性、ゲームオブジェクト状態、グラフィックオーバーレイなどが含まれ得る。このようにして、ゲーム状態データにより、ゲームアプリケーション内の該当箇所に存在するゲーム環境の生成が可能となる。
ゲーム状態データにはまた、ＣＰＵ、ＧＰＵ、及びメモリの状態、レジスタ値、プログラムカウンタ値、プログラム可能ＤＭＡ状態、ＤＭＡのバッファされたデータ、音声チップ状態、ＣＤ‐ＲＯＭ状態など、ゲームプレイをレンダリングするために使用されるあらゆるデバイスの状態が含まれ得る。ゲーム状態データはまた、ビデオゲームをその箇所から実行するために、実行可能コードのどの部分をロードする必要があるかを特定し得る。ゲーム状態データは、図２Ａのデータベース２４０に格納され得、状態共有モジュール１１７によりアクセス可能である。
【００６１】
さらに、状態データは、該当プレーヤのビデオゲームをカスタマイズする情報を含むユーザ保存データを含み得る。これには、ユーザがプレイするキャラクタに対応付けられた情報が含まれるため、ビデオゲームは、そのユーザに特有であり得るキャラクタ（例えば位置、形状、外観、衣服、兵器など）でレンダリングされる。このようにして、ユーザ保存データにより、該当ユーザのゲームプレイ用のキャラクタを生成することが可能となり、キャラクタは、該当ユーザが現在体験しているゲームアプリケーション内の箇所に対応する状態を有する。例えば、ユーザ保存データは、ゲームをプレイする時に該当ユーザが選択したゲーム難易度、ゲームレベル、キャラクタ属性、キャラクタ位置、残存ライフ数、利用可能ライフの可能総数、鎧、トロフィー、タイムカウンタ値などを含み得る。ユーザ保存データはまた、例えば該当プレーヤを識別するユーザプロファイルデータを含み得る。ユーザ保存データは、データベース２４０に格納され得る。
【００６２】
このようにして、状態共有データ１１７及びマルチプレーヤロジック１１８を用いるマルチプレーヤ処理エンジン１１９は、マルチプレーヤゲームセッションに参加するユーザのゲーム環境のそれぞれに、オブジェクト及びキャラクタをオーバーレイ／挿入することができる。例えば、第１のユーザのキャラクタは、第２のユーザのゲーム環境にオーバーレイ／挿入される。これにより、各自それぞれのゲーム環境（例えば画面に表示される）を介して、マルチプレーヤゲームセッション内のユーザ間のインタラクションが可能となる。
【００６３】
本開示の一実施形態によれば、後述されるように、ゲームサーバ２０５を介したバックエンドサーバサポートは、プレーヤのクエリーにマッチングした応答を提供するなど、該当プレーヤのゲームプレイをサポートする支援を提供し得る。例えば、ゲーム支援サーバ１４０は、ゲームサーバ２０５と協力してゲーム支援を提供するように構成される。具体的には、ゲーム支援サーバ１４０は、前述のように、ＡＩプロセッサ１６０と連携して作動し、ディープラーニングエンジンを使用してクエリーを応答にマッチングさせる。例えば、ＡＩプロセッサ１６０は、任意でクエリーを使用に適した形式に変換するように構成されたＡＳＲエンジン１４１Ａと、クエリーを解釈するように構成されたＮＬＰエンジンとを含む。さらに、ディープラーニングエンジン１９０は、クエリーを、ディープラーニングエンジンを介して以前に学習されたモデル化応答にマッチングさせるように構成される。
【００６４】
図２Ｃは、本開示の一実施形態による、クラウドゲームネットワークを介して実行されるゲームアプリケーションをプレイするプレーヤのゲームプレイ中に、ゲーム支援を提供するシステム２０６Ｃを示す。図示されるように、本開示の一実施形態によれば、システム２０６Ｃは、クラウドゲームネットワークを介して実行されるゲームアプリケーションをプレイする複数のユーザ２１５（例えばプレーヤ５Ｌ、５Ｍ、・・・、５Ｚ）に、ゲーム制御を提供する。いくつかの実施形態では、クラウドゲームネットワークは、ホストマシンのハイパーバイザ上で作動する複数の仮想マシン（ＶＭ）を含むゲームクラウドシステム２１０であり得、１つ以上の仮想マシンは、ホストのハイパーバイザが使用可能なハードウェアリソースを利用してゲームプロセッサモジュールを実行するように構成される。一実施形態では、システム２０６Ｃは、図２Ａのシステム１０と連携して作動して、クエリーに関連したゲーム支援を提供する。ここで図面を参照すると、同様の参照番号は、同一の、または対応する部分を示す。
【００６５】
図示されるように、ゲームクラウドシステム２１０は、複数のインタラクティブビデオゲームまたはゲームアプリケーションへのアクセスを提供するゲームサーバ２０５を含む。ゲームサーバ２０５は、クラウド内で利用可能な任意の種類のサーバコンピューティングデバイスであり得、１つ以上のホスト上で実行される１つ以上の仮想マシンとして構成され得る。例えば、ゲームサーバ２０５は、ユーザのゲームアプリケーションのインスタンスをインスタンス化するゲームプロセッサをサポートする仮想マシンを管理し得る。よって、複数の仮想マシンに対応付けられたゲームサーバ２０５の複数のゲームプロセッサは、複数のユーザ２１５のゲームプレイに対応付けられたゲームアプリケーションの複数のインスタンスを実行するように構成される。このようにして、バックエンドサーバサポートは、複数の該当ユーザに対し、複数のゲームアプリケーションのゲームプレイのメディア（例えば映像、音声など）のストリーミングを提供する。
【００６６】
複数のユーザ２１５は、ネットワーク１５０を介してゲームクラウドシステム２１０にアクセスし、プレーヤ（例えばプレーヤ５Ｌ、５Ｍ、・・・、５Ｚ）は、該当クライアントデバイス１００’を介してネットワーク１５０にアクセスし、クライアントデバイス１００’は、図１Ａ〜図１Ｂ及び図２Ａ〜図２Ｂのクライアントデバイス１００（例えばゲーム実行エンジン１１１などを含む）と同様に構成され得、または計算機能を提供する（例えばゲーム実行エンジン２１１を含む）バックエンドサーバとのインターフェースを提供するシンクライアントとして構成され得る。
さらに、複数のプレーヤ２１５のそれぞれは、前述のように、１つ以上のクエリーに回答するゲーム支援（例えば応答）を提示するように構成された前出のデバイス１１または任意の他のデバイス（例えばスピーカ）に、アクセスすることができる。具体的には、該当プレーヤ５Ｌのクライアントデバイス１００’は、インターネットなどのネットワーク１５０を介してゲームアプリケーションへのアクセスを要求するように、並びに、ゲームサーバ２０５により実行され、該当プレーヤ５Ｌに対応付けられたディスプレイデバイスに配信されるゲームアプリケーション（例えばビデオゲーム）のインスタンスをレンダリングするように、構成される。
例えば、プレーヤ５Ｌは、クライアントデバイス１００’を介して、ゲームサーバ２０５のゲームプロセッサ上で実行されるゲームアプリケーションのインスタンスとインタラクションを行い得る。より具体的には、ゲームアプリケーションのインスタンスは、ゲーム作品実行エンジン２１１により実行される。ゲームアプリケーションを実施するゲームロジック（例えば実行可能コード）は、前述のデータストア２４０を介して格納されアクセス可能であり、ゲームアプリケーションを実行するために使用される。ゲーム作品処理エンジン２１１は、図示されるように、複数のゲームロジック１７７を使用して、複数のゲームアプリケーションをサポートすることができる。
【００６７】
前述のように、クライアントデバイス１００’は、ゲームコントローラ、タブレットコンピュータ、キーボードなどの様々な種類の入力デバイスからの入力、及びビデオカメラ、マウス、タッチパッドなどにより取り込まれたジェスチャを受信し得る。クライアントデバイス１００’は、メモリとプロセッサモジュールとを少なくとも有する任意の種類のコンピューティングデバイスであり得、ネットワーク１５０を介してゲームサーバ２０５に接続することができる。また、該当プレーヤのクライアントデバイス１００’は、ローカルまたはリモートで作動するゲーム作品実行エンジン２１１により実行されるレンダリングされた画像を生成するように、及びレンダリングされた画像をディスプレイに表示するように、構成される。例えば、レンダリングされた画像は、プレーヤ５Ｌのクライアントデバイス１００’上で実行される第１のゲームアプリケーションのインスタンスに対応付けられ得る。例えば、該当クライアントデバイス１００’は、ゲームプレイを駆動するために使用される入力コマンドを介するなどして、該当プレーヤのゲームプレイを実施するためにローカルまたはリモートで実行される該当ゲームアプリケーションのインスタンスと、インタラクトするように構成される。
【００６８】
別の実施形態では、前述のマルチプレーヤ処理エンジン１１９が、ゲームアプリケーションのマルチプレーヤゲームセッションの制御を提供する。具体的には、マルチプレーヤ処理エンジン１１９がマルチプレーヤゲームセッションを管理している時、マルチプレーヤセッションコントローラ１１６は、マルチプレーヤセッション内のユーザ及び／またはプレーヤのそれぞれと通信セッションを確立し維持するように構成される。このように、マルチプレーヤセッションコントローラ１１６に制御されることにより、セッション内のプレーヤは相互に通信することができる。
【００６９】
さらに、マルチプレーヤ処理エンジン１１９は、各プレーヤの該当ゲーム環境内でプレーヤ間のインタラクションを可能にするために、マルチプレーヤロジック１１８と通信する。具体的には、状態共有モジュール１１７は、マルチプレーヤゲームセッション内のプレーヤそれぞれの状態を管理するように構成される。例えば、状態データは、前述のように、特定箇所における該当プレーヤ５Ｌの（ゲームアプリケーションの）ゲームプレイ状態を定義するゲーム状態データを含み得る。さらに、状態データは、前述のように、該当プレーヤのビデオゲームをカスタマイズする情報を含むユーザ／プレーヤ保存データを含み得る。
例えば、状態データは、ユーザのキャラクタに対応付けられた情報を含むため、ビデオゲームは、そのユーザに特有であり得るキャラクタ（例えば形状、外観、衣服、兵器類など）でレンダリングされる。このようにして、状態共有データ１１７及びマルチプレーヤロジック１１８を用いるマルチプレーヤ処理エンジン１１９は、マルチプレーヤゲームセッションに参加するユーザのゲーム環境のそれぞれに、オブジェクト及びキャラクタをオーバーレイ／挿入することができる。これにより、各自それぞれのゲーム環境（例えば画面に表示される）を介して、マルチプレーヤゲームセッション内のユーザ間のインタラクションが可能となる。
【００７０】
さらに、本開示の一実施形態によれば、後述されるように、ゲームサーバ２０５を介したバックエンドサーバサポートは、プレーヤのクエリーにマッチングした応答を提供するなど、該当プレーヤのゲームプレイをサポートする支援を提供し得る。例えば、ゲーム支援サーバ１４０は、ゲームサーバ２０５と協力してゲーム支援を提供するように構成される。具体的には、ゲーム支援サーバ１４０は、前述のように、ＡＩプロセッサ１６０と連携して作動し、ディープラーニングエンジンを使用してクエリーを応答にマッチングさせる。例えば、ＡＩプロセッサ１６０は、任意でクエリーを使用に適した形式に変換するように構成されたＡＳＲエンジン１４１Ａと、クエリーを解釈するように構成されたＮＬＰエンジンとを含む。さらに、ディープラーニングエンジン１９０は、クエリーを、ディープラーニングエンジンを介して以前に学習されたモデル化応答にマッチングさせるように構成される。
【００７１】
図３Ａは、本開示の一実施形態による、ローカルコンピューティングデバイス上で、またはクラウドゲームネットワークを介して実行できるゲームアプリケーションをプレイするプレーヤのゲームプレイ中に、ユーザとゲーム支援を提供するバックエンドサーバとの間のデータの流れを例示するデータフロー図を示す。
【００７２】
図示されるように、複数のプレーヤのゲームプレイから収集されるコンテキスト情報３０５は、クエリーに対して新たに生成した応答、またはクエリーにマッチングした応答を提供するために使用され得る。前述のように、収集されたコンテキスト情報３０５は、ゲームコンテキストデータ３１５及びグローバルコンテキストデータ３１０を含み得る。コンテキストデータ３０５は、クエリー１８２と共にゲーム支援サーバ１４０に配信される。
【００７３】
ゲームコンテキストデータ３１５は、前述のように、ゲームの状態を定義するゲーム状態データ、プレーヤに関するユーザ／プレーヤ情報、及びシステムレベルデータ（例えばＯＳデータ）など、ゲームプレイに関連するメタデータ及び／または情報を含み得る。例えば、ゲーム状態データは、ビデオゲームまたはゲームアプリケーション内の該当箇所に存在したゲーム環境（例えば、ゲームオブジェクト、オブジェクト属性、グラフィックオーバーレイ、ゲームキャラクタ、シーン／ゲーム環境、ゲーム経路情報、比率情報−殺害率他−、キャラクタ位置情報、タスク達成の正確度、比率、または速度など）の生成を可能にする情報を含む。
さらに、ゲームコンテキストデータは、該当プレーヤのビデオゲームをカスタマイズする情報を含むユーザ／プレーヤ情報を含み得る（例えばユーザカスタマイズ用のキャラクタアセット−形状、種族、外観、衣服、兵器など）。ゲームコンテキストデータには、コントローラ入力データ、コントローラ入力作動速度、ゲーム入力が作動した回数、ユーザにより引き起こされたコントローラの動き、ゲーム機が使用された回数及びその目的−ゲーム、インターネット、ストリーミングなど−、ゲームとは無関係の他の動作など、システムレベルデータ（例えばＯＳデータ）が含まれ得る。グローバルコンテキストデータ３１０には、プレーヤの全体的なゲームスキル、ゲームコントローラスキル及び操作特性、ユーザがゲームをプレイする頻度、ゲーム機が提供するゲーム及び／または他の機能のためにユーザがゲーム機を起動させ使用する頻度、ビデオゲームがプレイされた日時、該当ゲームプレイの継続時間など、ユーザのユーザプロファイルデータが含まれ得る。
【００７４】
コンテキストデータ３０５は、モデル化された応答を生成するために、及びクエリーを対応する応答にマッチングさせるために、ＡＩプロセッサ１６０によりアクセス可能なデータベース３４０Ｂに収集される。図示されるように、データベース３４０Ｂは、ユーザ／プレーヤそれぞれのユーザデータ及び統計を含む。例えば、データベース３４０Ｂは、ゲーム１〜Ｎのそれぞれに関して、ユーザ１に関連する情報を含む。データベース３４０Ｂはまた、他のユーザに関連する情報も含む。さらに、データベース３４０Ａは、ゲームアプリケーション１〜Ｎそれぞれのモデル化された応答を含む。
【００７５】
支援を要求するプレーヤ及び同じゲームアプリケーションをプレイする他のプレーヤから収集されたコンテキスト情報（例えばゲームコンテキストデータ及びグローバルコンテキストデータ）の履歴３１７に基づいて、ディープラーニングプロセスを介するなどして、ゲームアプリケーションに関連する１つ以上のクエリー、またはゲームに関する他の一般的な質問に答えるモデル化された応答が、生成され得る。具体的には、各ゲームアプリケーションは、自身のモデル化された応答の集合を有する。このようにして、一般的なクエリー（山壁を登る方法）は、現行コンテキストデータ３０５Ａが与えられた場合、好適な応答にマッチングされ得る。これにより、例えば、同様に障害物として山壁を構える別のゲームアプリケーションに関する応答ではなく、該当のゲームアプリケーションに関する応答に、クエリーはマッチングされ得る。
【００７６】
その後、プレーヤによりクエリー１８２が提示されると、所与の現行コンテキストデータ３０５Ａに関して、事前に生成されたまたはモデル化された応答３１９が、要求プレーヤに提示され得る。一実施形態では、クエリーに対処している間、ゲームプレイは、中断認識ボックス３２０に示されるように、中断される。データコレクタは、現行コンテキストデータ３０５Ａ及びクエリー１８２（例えば山壁の登り方）を収集して、ゲーム支援サーバ１４０に配信するように構成される。
【００７７】
さらに、ヘルプを要求するプレーヤには、ヘルプ要求に直接答える新たにモデル化された応答（テキスト、音声、映像など）が提示され得る。例えば、要求またはクエリーは、ユーザにより第１の形式（例えばテキスト、音声、映像など）で提示され得、ヘルプを提供するサーバが理解できる形式に変換される。一実施態様では、クエリーは、音声形式で提示され、ゲーム支援サーバが理解可能なテキスト形式に変換される（例えば音声認識技術を使用して）。形式が変換された要求／クエリーは、次いで、クエリーの性質（例えばヘルプクエリーの内容）を理解するために解釈される。
【００７８】
ＡＩプロセッサ１６０により適用される人工知能（ＡＩ）を使用して、解釈されたクエリー及び現行コンテキストデータ３０５Ａは、事前に生成されたコンテンツ（記録されたヘルプセッション、テキスト回答、音声回答、映像回答など）にマッチングされ得る。ＡＩプロセッサ１６０は、クエリーに対する応答を提供するために、クエリーを、応答モデル及び／またはクエリー／応答モデルにマッチングさせるのに使用されるマシンラーニングまたはディープラーニングエンジン１９０を含む。
一実施形態では、モデル化された応答は、テキスト、音声、映像などの特定の形式で提供される。さらに、別の実施形態では、事前に生成されたまたはモデル化された応答は、別のユーザとエキスパートとの記録されたヘルプセッション（例えば音声及び映像記録）であり得、エキスパートは、要求で提供された同じまたは関連するヘルプクエリーに対し、支援を提供する。事前に生成された応答は、同じまたは関連するヘルプクエリーに関して別のユーザに支援を提供するために以前生成された事前生成応答（例えばテキスト、音声、映像など）であり得る。事前に生成された応答がどれも利用できない場合、ＡＩを使用して、１つ以上の最も近いマッチングしたモデルに部分的に基づいて、クエリーに対し新たにモデル化された応答（例えばテキスト回答、音声回答、映像回答など）が生成され得る。
【００７９】
さらに、事前に生成された応答または新たに生成された応答がどれも利用できない場合、本開示の実施形態は、ヘルプを要求するユーザ／プレーヤに、リアルタイム支援（例えばエキスパートとのライブヘルプセッション）を提供する。
【００８０】
図３Ｂは、本開示の一実施形態による、ゲームアプリケーションをプレイするプレーヤのゲームプレイ、並びにゲームコンテキストデータ及びグローバルコンテキストデータを含むコンテキストデータの定期的な収集を示す。前述のように、コンテキストデータを使用して、バックエンドゲーム支援サーバを介して実施されるように、ゲームプレイ中にプレーヤが提示する１つ以上のクエリーに対し応答を提供する。
【００８１】
具体的には、プレーヤの現行セッションは、ゲームアプリケーションを通したゲームプレイの進捗状況を示すタイムライン３５０で示される。タイムライン３５０は、セッションの開始点３０１と、セッションの終了点３０２とを含む。セッション中に、プレーヤのキャラクタにより、様々な動作及びタスクが実行される。
【００８２】
さらに、コンテキストデータは、タイムライン３５０で示されるように、セッション全体にわたって収集される。一実施形態では、コンテキストデータは、定期的に収集され、及び／またはゲームプレイ中の重要な時点で収集される。例えば、グローバルコンテキストデータ３１０Ａ〜３１０Ｎは、タイムライン３５０中の様々な時点で収集され、グローバルコンテキストデータは、前述のように、ユーザのユーザプロファイルデータと、ユーザに対応付けられた他のメトリックデータとを含み得る。さらに、ゲームコンテキストデータ３１５Ａ〜３１５Ｎが、タイムライン３５０中の様々な時点で収集され、ゲームコンテキストデータは、前述のように、ゲームの状態を定義するゲーム状態データ、プレーヤに関するユーザ／プレーヤ情報、及びシステムレベルデータ（例えばＯＳデータ）など、ゲームプレイに関連するメタデータ及び／または情報を含み得る。
【００８３】
図３Ｂに示されるように、プレーヤは、ゲームプレイ中に繰り返しループ３７０を経験しており、プレーヤは、ゲームアプリケーション内の特定の箇所または障害を越えて（例えばミニボスまたはボスを倒すなど）進むことができない。例えば、スクリーンショット３６０では、プレーヤは、レベル３の終わりでボスを倒すことができず、スクリーンショット３６０は、ＳＯＮＹ  Ｉｎｔｅｒａｃｔｉｖｅ  Ｅｎｔｅｒｔａｉｎｍｅｎｔ社発行のＧｏｄ  ｏｆ  ＷａｒというゲームアプリケーションのＫｒａｔｏｓと巨大サイズのボスとのインタラクションを示し得る。Ｇｏｄ  ｏｆ  Ｗａｒゲームアプリケーション内では、Ｋｒａｔｏｓはギリシャ神話のスパルタの戦士であり、戦争の神Ａｒｅｓを殺害する任務を負う。プレーヤは、何度も試みた後、「ボスを倒す方法」を尋ねるクエリー３７４を作成し、次にこれは、前述のように、バックエンドゲーム支援サーバへ配信される。クエリー３７４と共に、適用可能なコンテキストデータも配信され、少なくともディープラーニングエンジンの適用により、クエリー３７４を好適な応答３７５にマッチングさせる目的で、少なくともゲームコンテキストがゲーム支援サーバに提供される。
【００８４】
例えば、応答３７５は、ボスを倒すための鍵は、「ハンマーブローシーケンス」を実行することであると、示し得る。さらに、プレーヤがシーケンスを理解するのを助けるために、応答３７５は、コントローラ入力のシーケンス（例えば右ボタン、左ボタン、Ａボタン、Ａボタン、Ｏボタン、Ｘボタンなど）を含み得る。応答は、音声、テキスト、映像などの１つ以上の形式で提供され得る。一実施態様では、ハンマーブローシーケンスの実行方法を視覚的に示す説明映像を通じて、コントローラ入力のシーケンスが提供され得る。さらに、ゴーストハンドが提示され得、ゴーストハンドが、シーケンス内のボタンまたはアクチュエータのそれぞれと、どのようにインタラクトするかを示す。
【００８５】
プレーヤが応答３７５で提供された指示及び／またはヒントに従ってボスを倒した後、プレーヤは、ループ３７０から解放され、ゲームプレイタイムライン３５０の尾部３７１に示されるように、ゲームプレイの進行を進めることができる。例えば、レベル３の終わりでボスを倒した後、プレーヤはレベル４に進むことができる。
【００８６】
ネットワークを介して通信するゲーム支援サーバ及びクライアントデバイスの様々なモジュールの詳細な説明と共に、本開示の一実施形態による、ローカルコンピュータデバイス上で、またはクラウドゲームネットワークを介して実行できるゲームアプリケーションの該当プレーヤのゲームプレイをサポートするゲーム支援を提供する方法が、図３Ｃのフロー図３００Ｃに関連してここで説明される。フロー図３００Ｃは、ディープラーニングエンジンを介してクエリーを応答にマッチングさせるためにゲーム支援サーバ側で引き起こされる動作のプロセス及びデータの流れを示す。応答は、ゲームアプリケーションをプレイするプレーヤのゲームプレイを表示する別のデバイスとは別個であり得るプレーヤのデバイスに送信され得る、またはゲームプレイを表示するデバイスに送信され得る。具体的には、フロー図３００Ｃの方法は、少なくとも部分的に図１Ａ〜図１Ｂ及び図２Ａ〜図２Ｃのゲーム支援サーバ１４０により、実行され得る。
【００８７】
３８０にて、方法は、ゲームアプリケーションのプレーヤの複数のゲームプレイに関連する情報を、ネットワークを介してバックエンドサーバで受信することを含む。情報には、前述のように、グローバルコンテキストデータ及びゲームコンテキストデータなどのコンテキストデータが含まれ得る。
【００８８】
例えば、グローバルコンテキストデータは、ユーザのユーザプロファイルデータと、ユーザに対応付けられた他のメトリックデータとを含み得る。例示として、グローバルコンテキストデータは、プレーヤプロファイルデータ、プレーヤのプレイスタイル、プレーヤのスキルレベル、プレーヤが現在ゲームアプリケーションをプレイしているか否か、プレーヤがオンラインか否か、ゲームアプリケーションのタイトル、プレーヤがプレイしている協働プレーヤ、入力コントローラ作動の頻度、プレーヤの友達などを、含み得る。
【００８９】
さらに、ゲームコンテキストデータは、ゲームの状態を定義するゲーム状態データ、プレーヤに関するユーザ／プレーヤ情報、及びシステムレベルデータ（例えばＯＳデータ）など、ゲームプレイに関連するメタデータ及び／または情報を含み得る。例えば、ゲーム状態情報は、キャラクタ情報（例えばタイプ、種族など）、ゲームアプリケーション、キャラクタのいる位置、プレイしているレベル、ゲームオブジェクト、ゲームオブジェクト属性、ゲーム属性、ゲームオブジェクトの状態、グラフィックオーバーレイ、キャラクタアセット（例えば衣服、兵器など）、ロードアウト、キャラクタのスキルセット、ゲーム環境／世界内のキャラクタの地理的位置、ゲームプレイで第１のキャラクタに提示された現在のクエスト及び／またはタスク、ゲームプレイロードアウトでの第１のキャラクタの次のクエスト、ゲーム環境内のゲームプレイの位置などを含むように、該当箇所でのゲームプレイの状態を定義し得る。
さらに、ゲームコンテキストデータは、ＯＳレベルデータを含み得、ＯＳレベルデータは、ゲーム入力、コントローラ入力、コントローラ入力のタイムスタンプなどを含み得る。ゲーム状態データは、該当プレーヤのビデオゲームをカスタマイズする情報を含み得るユーザ／プレーヤ情報を含み得、これには、例えば、プレーヤのスキルまたは能力、プレーヤがヘルプを求める全体的意向、プレーヤがゲームアプリケーションをプレイする新近性、ゲームをプレイする時にユーザ５が選択するゲームの難易度、ゲームレベル、キャラクタ属性、キャラクタの位置、残存ライフ数、利用可能ライフの可能総数、鎧、トロフィー、タイムカウンタ値、及び他のアセット情報などが挙げられる。通常、ゲーム状態データにより、ゲームプレイ内の該当箇所に存在していたゲーム環境の生成が可能となる。
【００９０】
３８２にて、方法は、ゲームアプリケーションをプレイするプレーヤから、プレーヤのゲームプレイに関するクエリーを受信することを含む。例えば、クエリーは、障害に取り組む方法をプレーヤに教える情報、プレーヤが遭遇したゲーム環境に関する一般情報、ゲームキャラクタに関する情報、ゲームアプリケーションをプレイする友達に関する情報、ゲームアプリケーションに関する情報、他のプレーヤと比べたプレーヤのプレイの程度などを、要求し得る。
【００９１】
いくつかの実施形態では、クエリーは、処理に適切な形式に変換される。例えば、クエリーは、第１の形式から第２の形式に変換される。一実施形態では、クエリーは、音声形式、テキスト形式、映像形式のうちの１つで提示されるが、他の形式も対応可能である。一実施態様では、第１の形式は音声であり、第２の形式はテキストであり、よって、クエリーは、プレーヤによりマイクロフォンシステム（例えばスタンドアロントランシーバ）を介して提示され得、音声形式で送信される。このようにして、前述のように、ＮＰＬエンジンを使用するなどして、テキスト形式のクエリーを解釈して、クエリーのコンテンツが特定され得る。
【００９２】
３８４にて、方法は、ゲームプレイの現行ゲームコンテキストを特定することを含む。コンテキストデータは、ゲームプレイ中に継続的に収集され、グローバルコンテキストデータとゲームコンテキストデータとを含む。現行ゲームコンテキストは、コンテキストデータから特定され、クエリーを好適な応答にマッチングさせるのに使用され得る。具体的には、３８６にて、方法は、複数のゲームプレイに関連する情報に基づいて、クエリーに対する応答、及び現行ゲームコンテキストを生成することを含む。例えば、現行ゲームコンテキストは、ゲームアプリケーションのタイトル、プレーヤが遭遇した現行シーンまたはゲーム環境などを含む。このようにして、クエリーが尋ねている内容、及びそのクエリーに対する最良な応答方法をより良く理解するために、一般的なクエリー（例えばボスの殺し方）には、ゲームコンテキストが提供され得る。例示として、クエリーに答えられないこともあり得るが、特定のゲームアプリケーション、及びレベル、及びそのレベルのどのボスであるかというコンテキストがあれば、ボスの弱点を示す好適な応答をプレーヤに返すことができる。
【００９３】
一実施形態では、ゲームアプリケーションの解釈されたクエリー及び現行ゲームコンテキストは、解釈されたクエリー及び現行ゲームコンテキストを応答にマッチングさせるように構成されたディープラーニングエンジンに、入力として提供される。ディープラーニングエンジンは、複数のモデル化された応答及び／またはクエリー／応答を生成するために、前もってクエリー及び応答で訓練されており、マッチングした応答は、ゲームアプリケーションのモデル化された応答のうちの１つである。一実施形態では、ディープラーニングエンジンは、サードパーティのＡＩエンジンの一部である。よって、クエリー及び現行ゲームコンテキストは、サードパーティＡＩエンジンに配信され、サードパーティＡＩエンジンは、任意でクエリーを解釈して、解釈したクエリー及び現行ゲームコンテキストを応答にマッチングさせるように構成され得る。
【００９４】
３８８にて、方法は、プレーヤのデバイスに応答を送信することを含む。一実施形態では、デバイスは、ゲームプレイを提示するディスプレイとは別個のコンパニオンモバイルデバイスを含み得る。例えば、コンパニオンデバイスは、クエリーを受信してバックエンドゲーム支援サーバに配信するため、及び応答を受信してプレーヤに提示するために使用され得る携帯電話であり得る。また、コンパニオンデバイスは、スタンドアロンスピーカであってもよい。例えば、コンパニオンデバイスは、音声提示、テキスト提示、及び／または映像提示を含み得る。別の実施形態では、デバイスは、応答及びゲームプレイを同時に表示するディスプレイであり得る。
【００９５】
一実施形態では、どの応答もマッチングに利用できない場合、ゲーム支援サーバは、プレーヤにリアルタイム（例えばライブ）のヘルプを提供することができるエキスパートを見つけ得る。具体的には、現行ゲームコンテキストが、エキスパートに分類されている他のプレーヤのゲームコンテキストに、マッチングし得る。コンテキスト（例えばグローバルコンテキスト及び／またはゲームコンテキスト）に基づいて、最近ゲームアプリケーションを同じようにプレイした（例えばクエリーのボスを殺すために同じ兵器を用いた）エキスパートが、クエリーの現行ゲームコンテキストにマッチングし得る。例えば、プレーヤ（ヘルプを要求する）の現行ゲームコンテキストは、複数のエキスパート履歴ゲームコンテキストと比較され、エキスパートがプレーヤにどの程度密接にマッチングするかが確認され得る。
一実施形態では、マッチングは、ディープラーニングエンジンを介して行われ得る。すなわち、比較により、各エキスパートのゲームプレイが、第１のプレーヤのゲームプレイと、どの程度密接にマッチングするかが特定される。エキスパートは、最高マッチング評価、可用性、ヘルプ必要通知のブロードキャストに対するエキスパートの応答の速さなどを含む、様々な要素に基づいて選出され得る。プレーヤが同意した場合に、エキスパートはプレーヤに支援を提供するために、通信セッションを介して、プレーヤ及びエキスパートのデバイス間で、エキスパートはプレーヤと接続される。
【００９６】
図３Ｄは、本開示の一実施形態による、通信セッションを介してプレーヤをエキスパートに接続することにより、ゲームアプリケーションをプレイするプレーヤのゲームプレイ中に、リアルタイムの支援を提供する方法のステップを示すフロー図である。ヘルプセッションは、ゲームアプリケーションをプレイするプレーヤのゲームプレイを表示する別のデバイスとは別個であり得るプレーヤのデバイスに送信され得る。
【００９７】
いくつかの実施形態では、ユーザからのヘルプ要求に応じて、ユーザがエキスパートにマッチングされる前に、複数のプレーヤ及び／またはエキスパートのゲームプレイから収集されたコンテキスト情報を使用して、新たに生成された応答または再び生成された応答が提供され得る。収集されたコンテキスト情報は、前述のように、ゲームの状態を定義するゲーム状態データ、プレーヤに関するユーザ／プレーヤ情報、及びシステムレベルデータ（例えばＯＳデータ）など、ゲームプレイに関連するメタデータ及び／または情報を含み得る。例えば、ゲーム状態データは、ビデオゲームまたはゲームアプリケーション内の該当箇所に存在したゲーム環境（例えば、ゲームオブジェクト、オブジェクト属性、グラフィックオーバーレイ、ゲームキャラクタ、シーン／ゲーム環境、ゲーム経路情報、比率情報−殺害率他−、キャラクタ位置情報、タスク達成の正確度、比率、または速度など）の生成を可能にする情報を含む。
ユーザ／プレーヤ情報は、該当プレーヤのビデオゲームをパーソナライズする情報を含む（例えばユーザカスタマイズ用のキャラクタアセット−形状、種族、外観、衣服、兵器など）。ユーザ／プレーヤ情報はまた、プレーヤの全体的なゲームスキル、ゲームコントローラスキル及び操作特性、ユーザがゲームをプレイする頻度、ゲーム機が提供するゲーム及び／または他の機能のためにユーザがゲーム機を起動させ使用する頻度、など、ユーザのユーザプロファイルデータが含まれ得る。また、システムレベルデータ（例えばＯＳデータ）は、コントローラ入力データ、コントローラ入力作動速度、ビデオゲームがプレイされた日時、該当ゲームプレイの継続時間、ゲーム入力が作動した回数、ユーザにより引き起こされたコントローラの動き、ゲーム機が使用された回数及びその目的−ゲーム、インターネット、ストリーミングなど−、ゲームとは無関係の他の動作などを含む。
【００９８】
ヘルプを要求するユーザ／プレーヤ及びビデオゲームをプレイする他のユーザから収集したコンテキスト情報に基づいて、ヘルプの要求に直接応答する事前に生成された応答が、ユーザ／プレーヤに提示され得る。事前に生成された応答は、別のユーザとエキスパートとの記録されたヘルプセッション（例えば音声及び映像記録）であり得、エキスパートは、要求で提供された同じまたは関連するヘルプクエリーに対し、支援を提供する。事前に生成された応答は、要求で提供された同じまたは関連するヘルプクエリーに関して別のユーザに支援を提供するために以前生成された事前生成応答（例えばテキスト、音声、映像など）であり得る。さらに、ヘルプを要求するユーザ／プレーヤには、ヘルプ要求に直接答える新たに生成された応答（テキスト、音声、映像など）が提示され得る。
例えば、要求またはクエリーは、ユーザにより第１の形式（例えばテキスト、音声、映像など）で提示され得、ヘルプを提供するサーバが理解できる形式に変換される。一実施態様では、要求は、音声形式で提示され、ヘルプサーバが理解可能なテキスト形式に変換される（例えば音声認識技術を使用して）。形式が変換された要求／クエリーは、次いで、クエリーの性質（例えばヘルプクエリーの内容）を理解するために解釈される。解釈されたクエリーを事前に生成された応答にマッチングさせるために、人工知能が使用され得る。
【００９９】
応答が何も生成されない場合には、図３Ｄの方法が実施される。具体的には、３９０にて、方法は、ゲームアプリケーションの複数のプレーヤの複数のゲームプレイに関連する情報を、ネットワークを介してバックエンドサーバで受信することを含む。プレーヤは、現在ゲームアプリケーションをプレイしている状態であり得る、またはゲームアプリケーションをプレイしたことがあり得る。いくつかの実施形態では、情報は、ゲームプレイを含む。いくつかの実施形態では、情報は、ゲーム状態データなどのゲームプレイに関連して生成されたメタデータ及び／または情報を含む。例えば、情報は、前述のように、ゲーム状態情報及びユーザ／プレーヤ保存情報を含み得る。情報は、スナップショット情報を含み得、スナップショット情報は、該当スナップショットに対応付けられたビデオゲーム内のある箇所からビデオゲームのインスタンスの開始を実行することを可能にする情報を提供し得る。
例えば、ゲーム状態情報は、キャラクタ情報（例えばタイプ、種族など）、ゲームアプリケーション、キャラクタのいる位置、プレイしているレベル、キャラクタのアセット、ゲームオブジェクト、ゲームオブジェクト属性、ゲーム属性、ゲームオブジェクトの状態、グラフィックオーバーレイ、キャラクタのスキルセット、ゲーム環境／世界内のキャラクタの地理的位置、プレーヤに提示された現在のクエスト及び／またはタスク、ロードアウトなどを含むように、該当箇所でのゲームプレイの状態を定義し得る。ゲーム状態データにより、ゲームプレイ内の該当箇所に存在していたゲーム環境の生成が可能となる。さらに、プレーヤに関するユーザ／プレーヤ情報は、該当プレーヤのビデオゲームをカスタマイズする情報を含み得、これには、例えば、プレーヤのスキルまたは能力、プレーヤがヘルプを求める全体的意向、プレーヤがゲームアプリケーションをプレイする新近性、ゲームをプレイする時にユーザ５が選択するゲームの難易度、ゲームレベル、キャラクタ属性、キャラクタの位置、残存ライフ数、利用可能ライフの可能総数、鎧、トロフィー、タイムカウンタ値、及び他のアセット情報などが挙げられる。
【０１００】
３９１にて、方法は、情報から、第１のプレーヤの第１のゲームプレイの現行ゲームコンテキストを特定することを含む。第１のゲームコンテキストは、第１のプレーヤのゲームプレイの現行状態に関連する。具体的には、第１のプレーヤの現行ゲームプレイに関連する情報が受信される。１つの事例では、現行ゲームプレイはライブであり、よって、第１のプレーヤが現在ゲームアプリケーションをプレイしている。ゲームコンテキストは、ゲームプレイ内の特定の箇所におけるゲーム環境を定義する。現行ゲームコンテキストは、該当ゲームプレイ内の現在の箇所におけるゲーム環境を定義する。ゲームコンテキストは、該当ゲームプレイ内の１つ以上の箇所に関して定義され得る。例えば、ゲームコンテキストは、プレーヤのキャラクタ、そのプレーヤの様々な特性、そのプレーヤに対応付けられたアセット、プレーヤに提示されたタスクなどを、定義し得る。ゲームコンテキストは、ゲームプレイに関連して生成されて以前に受信したメタデータ及び／または情報に基づき得る、または密接に関連し得る。
【０１０１】
３９２にて、方法は、情報から、ゲームアプリケーションをプレイしたことのあるエキスパートの複数のエキスパートゲームプレイの複数のエキスパート履歴ゲームコンテキストを特定することを含む。一実施態様では、エキスパートはまた、現在ゲームアプリケーションをプレイしており、該当ゲームプレイを通して新たなエキスパート履歴ゲームコンテキストを生成している場合がある。エキスパートゲームプレイは、ゲームアプリケーションのエキスパートとして分類されたプレーヤから生成される。前述のように、通常、ゲームコンテキストは、１人以上のエキスパートのゲームプレイなど、該当ゲームプレイ内の１つ以上の箇所に関して定義され得る。エキスパートゲームプレイは、複数のゲームプレイから、具体的にはエキスパートとして分類されたプレーヤのゲームプレイから、取得される。
プレーヤは、自己登録により、資格付与により、または任意の他の方法により、分類され得る。一実施形態では、全てのプレーヤの複数のゲームプレイのゲームコンテキストを特定する時に、エキスパートゲームコンテキストも同時に特定されている。よって、プレーヤがエキスパートに分類されると、エキスパートの該当ゲームプレイのゲームコンテキスト情報は、エキスパートゲームコンテキストのうちの１つとして識別され得る。さらに、ゲームコンテキスト情報は、該当ゲームプレイ中の複数の箇所に関して特定され得る。例えば、第１のエキスパートのゲームコンテキスト情報は、ゲームプレイ内の第１の箇所における第１のゲームコンテキスト、ゲームプレイ内の第２の箇所における第２のゲームコンテキスト、・・・及びゲームプレイ内の第Ｎの箇所における第Ｎのゲームコンテキストを含み得る。例えば、該当エキスパートのゲームプレイは、レベル１のボスと対面するゲームコンテキスト、レベル２のボスと対面するゲームコンテキスト、所与のサイドクエスト内の進捗に関するゲームコンテキストなどを含む、複数のゲームコンテキストを有し得る。複数のプレーヤがエキスパートに分類された場合、各エキスパートのゲームコンテキスト情報が特定され得る。
【０１０２】
特定のゲームアプリケーションの分類されたエキスパートは、複数のプレーヤの集合を構成する。前述のように、エキスパートは、例えばいずれの資格基準なしに、自己登録することができる。別の実施態様では、エキスパートは、前述のように、プレーヤのスキル、タスクの達成、クエストの終了、ある期間内にゲームのある部分の終了、ある期間内にゲームの終了など、いくつかの資格を有し得る。資格を達成した後、エキスパートは、自己登録し得る、及び／または自動的にエキスパート（例えば権限を有する）に分類され得る。
【０１０３】
同じゲームアプリケーションをプレイしている異なるプレーヤ及び／または異なるエキスパートは、各自の該当ゲームプレイ内で、同じまたは同様のゲームコンテキストを有し得る。例えば、全員が同じゲームアプリケーションをプレイしている複数のプレーヤのゲームコンテキストを収集することにより、異なるプレーヤのゲームプレイが、同じアセットを有する同様のキャラクタ、異なるプレーヤの同様のプレイスタイル、ゲームアプリケーションのゲーム世界を通る同様の経路などを有するように、調整することができる。ゲームコンテキスト情報を使用して、プレーヤをエキスパートに分類された別のプレーヤ（例えば自己登録、有資格など）にマッチングさせることができ、これにより、エキスパートは、後述のように、支援を要求するプレーヤのゲームプレイ内で支援を提供することが可能となる。
【０１０４】
３９３にて、方法は、第１のゲームプレイに関連する支援クエリーを受信することを含む。すなわち、第１のプレーヤは、支援の要求、または要求の通知なども行っている。例えば、クエリーは、具体的には、ゲーム内の特定の箇所（例えばレベルボス、クエスト、タスクなど）を克服する方法に関し得る、またはオブジェクト（例えばボスの名前、ゲームプレイ内で遭遇したオブジェクト）についての情報を取得することに関し得る、またはゲームアプリケーション内のその時点でのプレーヤの全体目標に関し得る。
【０１０５】
さらに、第１のプレーヤの現行ゲームコンテキストは、要求が行われたゲームプレイの箇所に最も近いゲームの状態に関連する。例えば、ゲームコンテキストは、第１のプレーヤのキャラクタ、キャラクタが保有するアセット、ゲームアプリケーション内でキャラクタが遭遇するレベル、及びレベル内のシーンに関する情報を提供し得る。第１のプレーヤによるいずれの支援クエリーまたは支援要求も、必ず現行ゲームコンテキストに関連付けられる。よって、第１のプレーヤの現行ゲームコンテキストに密接にマッチングするゲームコンテキストを有する別のプレーヤ（例えばエキスパートクラスプレーヤ、友達など）のゲームプレイは、第１のプレーヤに役立つゲームアプリケーションの知識を有し得る。
【０１０６】
３９４にて、方法は、第１のプレーヤ（ヘルプを要求する）の現行ゲームコンテキストを、複数のエキスパート履歴ゲームコンテキストと比較して、それぞれのゲームプレーヤのゲームコンテストに関してなど、エキスパートが第１のプレーヤにどの程度密接にマッチングするかを確認することを含む。すなわち、比較により、各エキスパートのゲームプレイが、第１のプレーヤのゲームプレイと、どの程度密接にマッチングするかが特定される。一実施形態では、特定のエキスパートに関して取り込まれた各ゲームコンテキストに対して比較が行われ、第１のプレーヤの第１のゲームコンテキストに最も密接なゲームコンテキストが、そのエキスパートの代表として使用される。別の実施態様では、特定のエキスパートのゲームプレイ中に様々な箇所で収集されたゲームコンテキスト情報は、組み合わされて、第１のプレーヤの第１のゲームコンテキストとの比較に使用され得る。一実施態様では、第１のゲームコンテキストとマッチングする該当エキスパート履歴ゲームコンテキストを有する少なくとも１人のエキスパートが特定される。
【０１０７】
３９５にて、方法は、支援を得るために、第１のプレーヤに第１のエキスパートを割り当てることを含む。すなわち、第１のエキスパートは、その後、第１のプレーヤに、自分のゲームプレイに関連して支援を提供することができる。エキスパートのプールから第１のエキスパートを選出するために、様々な選出方法を実施することができる。例えば、第１のプレーヤ、及びエキスパートの集合／プール内のエキスパートのゲームコンテキストに基づいて、第１のエキスパートは選出される。
【０１０８】
一実施態様では、第１のエキスパートは、ゲームコンテキスト間のマッチングの品質に基づいて選出される。例えば、マッチングしたエキスパートゲームコンテキストの集合は、図３Ｂに関してさらに説明されるように、該当エキスパートゲームコンテキストが第１のゲームコンテキストにマッチングする品質を示すマッチング値を有する。例えば、方法は、最も高い値を有する第１のマッチング値を特定する。第１のマッチング値は、エキスパートゲームコンテキストに対応する。一事例では、第１のマッチング値は、第１のエキスパートの第１のエキスパートゲームコンテキストに対応する。よって、第１のエキスパートは、ヘルプセッションに選出され、第１のエキスパートは、エキスパートのプールの中で、ゲームコンテキストに基づいて、第１のプレーヤにヘルプを提供するのに最も適している。
【０１０９】
別の実施形態では、エキスパートのプールの中の第１のエキスパートは、有効度係数に基づいて選出される。これは、ヘルプを要求するプレーヤにエキスパートをマッチングさせるための簡単な手法を提供する。具体的には、この手法は、ゲームアプリケーションが最初にリリースされた時に、有益であり得る。最近リリースされたため、登録されているエキスパートが多くない場合があり、情報不足により、エキスパート間でいずれの比較を行うことも困難であり得る。一実施態様では、対応可能な第１のエキスパートが選出され、ヘルプセッションのために第１のプレーヤに割り当てられる。
【０１１０】
他の実施形態では、図３Ｂでさらに説明されるように、援助することができる可能性が最も高い有資格の及び／または対応可能なエキスパートの中から、早急に応答するといった応答時間に基づいて、エキスパートは選出される。別の実施形態では、支援を提供したいか否かを特定するために、エキスパートは、一度に一人ずつポーリングされる。図３Ｂでさらに説明されるように、ポーリングプロセス中に、肯定的に応答する第１のエキスパートは、支援提供に割り当てられる。
【０１１１】
具体的には、３９６にて、方法は、第１のプレーヤと第１のエキスパートとを接続する通信セッションを生成することを含む。一実施形態では、バックエンドサーバの通信セッションマネージャが、通信セッションを確立し管理する仲介として機能する。少なくとも、第１のエキスパートのデバイスと、第１のプレーヤのデバイスとの間に、通信セッションが確立される。通信セッションを使用することにより、エキスパートは、第１のエキスパートと第１のプレーヤとのヘルプセッションを介するなどして、プレーヤに支援を提供することが可能となる。
一実施形態では、通信セッションは、テキスト、音声、映像、埋め込み音声及び映像などに対応するように構成される。例えば、方法は、声チャネルを確立することを１つ以上含み得る、通信セッションでテキストチャネルを確立することを含み得る、映像チャット用に構成された映像チャネル（例えば埋め込み映像）を確立することを含み得る。また、通信セッションマネージャは、ＳｈａｒｅＳｃｒｅｅｎ機能、ＳｈａｒｅＰｌａｙ機能などを提供するなど、様々な形式の通信を可能にする新たなセッションを作成するように機能し得る。一実施形態では、通信セッションは、ピアツーピア接続であり得る、または中間ノードとして機能するバックエンドサーバを含み得る。すなわち、通信セッションは、通信セッションマネージャにより作成されると、第１のプレーヤ及び第１のエキスパートのデバイス間における直接通信経路となる。別の実施形態では、通信セッションは、バックエンドサーバを介して流れ得る。
【０１１２】
一実施形態では、前述のように、第１のエキスパートは、画面共有機能を介するなどして、第１のプレーヤの画面を共有し得る。第１のプレーヤのゲームプレイを見ることにより、第１のエキスパートは、第１のプレーヤが直面している問題をより良く理解し得るため、より良い援助を提供することができる。一実施形態では、画面共有機能は、通信セッションを介して実施される。画面を共有する要求は、第１のプレーヤまたは第１のエキスパートにより行われ得る。例えば、第１のエキスパートは、第１のプレーヤのゲームプレイの映像を共有することを要求し得る。一実施態様では、要求は、バックエンドサーバのヘルプセッションコントローラにより受信される。要求の通知は、第１のプレーヤのデバイスに送信される。
例えば、通知は、ヘルプセッションコントローラから配信され得る。ゲームプレイの映像をエキスパートと共有するために第１のプレーヤにより提供される承認が、第１のプレーヤのデバイスから、ヘルプセッションコントローラにより受信される。よって、第１のプレーヤのゲームプレイが、第１のエキスパートのデバイスにストリーミングされる。例えば、ヘルプセッションコントローラは、通信セッションを介して、または独立したストリーミングチャネルを介して、ストリーミングを促進することが可能である。
【０１１３】
別の実施形態では、前述のように、第１のエキスパートは、プレイ共有機能を介するなどして、第１のプレーヤのゲームプレイを制御し得る。プレイ共有により、エキスパートは、例えば第１のプレーヤが実行できない目標を達成するなど、ゲームプレイの制御を引き継ぐことができる。プレイを共有する要求は、第１のプレーヤまたは第１のエキスパートにより行われ得る。例えば、第１のプレーヤのゲームプレイの制御を共有することを求める要求が、第１のエキスパートのデバイスから受信される。エキスパートからの要求は、ユーザのゲームプレイ内の目標を達成するためにエキスパートから支援を提案する形であり得る。要求は、バックエンドサーバのヘルプセッションコントローラにより受信される。
要求の通知は、ヘルプセッションコントローラにより生成され、ヘルプセッションコントローラから第１のプレーヤのデバイスに配信され得る。ゲームプレイの制御をエキスパートと共有するために第１のプレーヤにより提供される承認が、第１のプレーヤのデバイスから、ヘルプセッションコントローラにより受信される。このようにして、エキスパートは、ゲーム入力コマンドを投入することにより、ゲームプレイを制御することができる。一実施形態では、入力制御または入力コマンドの集合が、第１のエキスパートのデバイスから、ヘルプセッションコントローラにより受信される。ゲームエンジン（例えばローカルコンソールまたはバックエンドゲームプロセッサ）が、第１のプレーヤのコントローラデバイスから発信される入力コマンドをブロックして、第１のエキスパートのコントローラデバイスから発信される入力コマンドを通すように、第１のプレーヤの入力コントローラからの入力コマンドにはブロックがかけられる。
例えば、ヘルプセッションコントローラは、第１のプレーヤのゲームプレイのためにゲームアプリケーションを実行するプロセッサ（例えばゲームエンジン）に命令を送信して、第１のプレーヤに対応付けられた入力制御をブロックし得る。よって、第１のエキスパートのコントローラデバイスからの入力制御の集合が、第１のプレーヤのゲームプレイのためにゲームアプリケーションを実行するプロセッサ（例えばゲームプロセッサ）に配信される。さらに、制御は、任意の時点で第１のプレーヤに戻され得る。例えば、前述のように、第１のプレーヤは、任意の時点でゲームプレイの制御を取り戻す能力（殺害コマンドの使用など）を有し得る。
【０１１４】
図３Ｅは、本開示の一実施形態による、通信セッションを介してプレーヤをエキスパートに接続することにより、ゲームアプリケーションをプレイするプレーヤのゲームプレイ中に、リアルタイムの支援を提供するシステムまたは方法におけるデータの流れを示すデータフロー図である。
【０１１５】
図示されるように、プレーヤ１（Ｐ１）は、ゲームアプリケーションをプレイしている。プレーヤＰ１は、自分のゲームプレイ中に障害に遭遇し、情報及び／または支援を要求し得る。例えば、前述のように、プレーヤＰ１からのクエリーは、ユーザインターフェース３５１−Ｐ１を介して行われ、ネットワーク１５０を通してバックエンドサーバのヘルプセッションコントローラ３５２に配信される。具体的には、ヘルプセッションコントローラ３５２と協働するマッチングエンジン３５３は、プレーヤＰ１のゲームコンテキストとエキスパート３５４のプールをマッチングさせるように構成される。エキスパートのプールは、１つ以上のゲームアプリケーションをプレイしている複数のプレーヤ３５５から選び出される。プール３５５内のエキスパートは全員、ゲームアプリケーションをプレイしたことがあり、例えばゲームアプリケーションのエキスパートとして登録されている。例えば、プール３５５は、１人以上のエキスパートＥ１、・・・、Ｅ５、・・・Ｅ１０３、・・・Ｅｎを含む。
【０１１６】
比較のために、ゲームコンテキスト３５６がマッチングエンジン３５３に入力される。例えば、入力は、プレーヤＰ１のゲームコンテキスト３５６−Ｐ１、エキスパートＥ１のゲームコンテキスト３５６−Ｅ１、エキスパートＥ１０３のゲームコンテキスト３５６−Ｅ１０３、エキスパートＥ６４のゲームコンテキスト３５６−Ｅ６４、エキスパートＥ５のゲームコンテキスト３５６−Ｅ５、・・・、エキスパートＥｎのゲームコンテキスト３５６−Ｅｎを含む。マッチングエンジンにより行われるマッチングプロセスは、前述されている。基本的に、プレーヤＰ１のゲームコンテキスト３５６−Ｐ１は、エキスパート３５４のプールに対応付けられたゲームコンテキストのそれぞれと比較される。ゲームコンテキストのそれぞれに関して、マッチングベクトルが特定され、各マッチングベクトルは、該当エキスパートゲームコンテキストがプレーヤＰ１のゲームコンテキスト３５６−Ｐ１にマッチングする質を示す該当マッチング値（例えば品質係数またはＱ係数）を有する。
【０１１７】
マッチングエンジン３５３は、エキスパート３５４のプールからエキスパートのうちの１人を選出するように構成される。図示されるように、エキスパートＥ５が選出され、マッチングエンジン３５３からの出力３５７として提供される。出力３５７は、プレーヤＰ１に支援を提供するヘルプセッションを生成し管理するために、ヘルプセッションコントローラ３５２に提供される。前述のように、エキスパートを選出するために、１つ以上の方法が実施され得る。
例えば、エキスパート３５４のプールは、マッチング値に閾値を適用することによりさらにフィルタリングされ得、閾値基準を満たすマッチング値に対応付けられたエキスパートは、選出対象として検討される。一実施態様では、エキスパートの選出には、最高品質のマッチング値が使用される。すなわち、最も高いマッチング値を使用して、選出が行われる。別の例では、ヘルプセッション要求の通知は、閾値基準を満たすマッチング値に対応付けられたエキスパートに配信される。通知に最初に応答したエキスパートが、ヘルプセッションに選出され得る。さらに別の例では、閾値基準を満たすマッチング値に対応付けられたエキスパートのうちの誰かが、例えばランダム選出、第１選出などを介して、選出され得る。
【０１１８】
一実施形態では、プレーヤＰ１をエキスパートにマッチングさせるのではなく、マッチングエンジン３５３は、友達のプールからエキスパートである友達を選出し得る。例えば、友達は、１つ以上のソーシャルネットワークを介して確立されたソーシャルネットワーク上の友達であり得る。
【０１１９】
ヘルプセッションコントローラは、プレーヤＰ１にリアルタイムの支援を提供するために、ヘルプセッションを確立し管理するように構成される。例えば、通信セッションは、プレーヤＰ１のデバイス（例えばユーザインターフェース３５１−Ｐ１）とエキスパートＥ５のデバイス（例えばユーザインターフェース３５１−Ｅ５）との間に生成される。一実施形態では、通信セッションは、ヘルプセッションコントローラ３５２の通信セッションマネージャと、プレーヤＰ１のデバイスと、エキスパートＥ５のデバイスとの間に生成される。別の実施形態では、通信セッションは、プレーヤＰ１のデバイスとエキスパートＥ５のデバイスとの間に生成され、直接通信を確立する。
【０１２０】
通信セッションでは、１つ以上の通信チャネルが確立され得る。例えば、声チャネル３６１、テキストチャネル３６２、画面共有チャネル３６３、及び／またはプレイ共有チャネルのうちの１つ以上が確立され得る。図示されるように、声チャネル３６１は、プレーヤＰ１とエキスパートＥ５が、互いの声通信で話しかけ聞くことができる双方向通信経路である。また、テキストチャネル３６２は、プレーヤＰ１とエキスパートＥ５が、テキストで互いと通信できる双方向通信経路である。さらに、画面共有チャネル３６３は、プレーヤＰ１のゲームプレイからの映像が、エキスパートＥ５のデバイスに閲覧のために配信される一方向通信経路であり得る。さらに、プレイ共有チャネル３６４は、入力制御がエキスパートＥ５から、プレーヤＰ１のローカルのゲームエンジンに、またはバックエンドサーバの別のゲームエンジンに通信され得る、双方向通信経路であり得る。
【０１２１】
ヘルプセッションコントローラ３５２と、ユーザインターフェース３５１−Ｐ１またはユーザインターフェース３５１−Ｅ５との間で制御及び他の情報を渡すために、別個の制御チャネルが確立され得る。例えば、プレーヤＰ１から発信される入力制御をブロックする、または画面共有チャネル３６３を介して映像を送信するための命令が、ユーザインターフェース３５１−Ｐ１に配信され得る。さらに、評価情報を提供するチャネル３６５を介して、評価情報が配信され得る。例えば、ヘルプセッションの後、プレーヤＰ１は、チャネル３６５を介してヘルプセッションの評価を提供し得る。さらに、プレーヤＰ１は、エキスパートＥ５の全体的なパフォーマンス（例えば人柄、有用な手助け、スポイラー公開の制御能力、ゲームアプリケーションの知識の深さなど）の評価を提供し得る。また、エキスパートＥ５は、プレーヤＰ１の評価（例えば協力レベル、助けを受け入れる能力、人柄、感謝など）を提供し得る。
【０１２２】
一実施形態では、ヘルプセッションは、ユーザのゲームプレイと同時に、プレーヤＰ１に対応付けられた第２のコンピューティングデバイス上で実施される。例えば、一実施形態では、プレーヤＰ１の第１のコンピューティングデバイスにユーザのゲームプレイを表すデータを配信するために確立された第１の通信チャネル、及びプレーヤＰ１の第２のコンピューティングデバイスにヘルプセッションに対応付けられたデータを配信するために確立された第２の通信チャネルなど、情報を配信する２つの通信チャネルが存在し得る。例えば、第１のコンピューティングデバイスは、ローカルのゲーム機及び／またはディスプレイであり得、第２のコンピューティングデバイスはスマートフォンであり得る。別の実施形態では、ゲームプレイを表示する第１の画面と、ヘルプセッションを表示する第２の画面とを含む分割画面を介するなどして、ヘルプセッションは、ユーザのゲームプレイを表すデータと共に配信され得る。
【０１２３】
図４〜図１３は、プレーヤが１つ以上のゲームアプリケーションに対応付けられたクエリーまたは一連の関連クエリーを入力する様々な例を示す。プレーヤは、該当ゲームアプリケーションをプレイしている最中であり得る、またはゲームアプリケーションをプレイしている時とは無関係に行動中であり得る（例えば旅行中、または会議中、授業中など）。
【０１２４】
図４Ａは、本開示の一実施形態による、ローカルゲーム機またはクラウドゲームネットワーク上で実行されるゲームアプリケーションをプレイするプレーヤに、ゲーム支援を提供するように構成されたコンパニオンモバイルデバイス１１のホームページ画面４０５を示す。コンパニオンモバイルデバイス１１は、デバイス１１のディスプレイとは異なるディスプレイに表示されるゲームプレイをサポートする。ホームページ画面４０５は、ゲームアプリケーション内のゲームプレイの現行位置に基づいて変わり得る背景画像を含む。例えば、背面画像は、例示目的で、ゲームアプリケーションＨｏｒｉｚｏｎ  Ｚｅｒｏ  Ｄａｗｎ内で見られる街のシルエットであり得る。
【０１２５】
アイコン４０１は、ブックマークへのアクセスを提供する。一実施形態では、ブックマークは、ゲームプレイを提示するディスプレイからプッシュされるコンテンツを含み得る。例えば、コンテンツは、オンスクリーンディスプレイユーザインターフェースからプッシュされ得、「さらに読む」ためにブックマークを介してアクセスされ得る。
【０１２６】
アイコン４１０は、プレーヤが話すことでクエリーを入力することを可能にするマイクロフォン機能を示す。ゲーム支援機能は、次のいくつかの文のうちの少なくとも１つがクエリーを含み得ることを示すトリガーワードを介して、有効化され得る。一般フィールド４０７は、ゲーム支援機能が起動していることを示す。しかし、ゲーム支援機能は、任意の数の方法で入力され得、これには、検索フィールドにテキスト形式のクエリーを手動で打ち込むことが含まれる（例えば「文字を打ち込む、または話す」の吹き出し）。文字打ち込みは、話す選択肢がない場合（例えば教室で着席している時）に行われ得る。
【０１２７】
クイック検索ボタン４１５により、プレーヤは、クイック検索ボタン４１５のうちの１つを選択することだけで、クエリーを選択することができる。例えば、プレーヤは、「ヘルプが必要」または「今何をするべきか？」または「何か見逃したか？」などのクエリーを含む様々なボタンの中から、選択し得る。例えば、クイック検索ボタン４１５Ｄは、クエリー「最も近いヘルス改善」を提供する。クイック検索ボタンは、選択されると徐々に変化し、テキスト指示または音声指示を提供することなくプレーヤを誘導するのに役立ち得る。クイック検索ボタンは、ゲームプレイを提示するテレビまたはディスプレイのユーザインターフェースで使用され得るショートカットアクションの教育ツールとして機能し得る。
【０１２８】
さらに、コンテキストカード４２０は、トピックまたはオブジェクトのグループに関する情報を提供する。例えば、コンテキストカードは、特定の場所（例えばＨｕｎｔｅｒ’ｓ  Ｌｏｄｇｅ）に関する情報を提供し得る、または特定のキャラクタ（例えばＴａｌａｎａｈ  Ｋｈａｎｅ  Ｐａｄｉｓｈ）に関する情報を提供し得る。別の例では、コンテキストカード４２０Ｃは、ゲームアプリケーションＨｏｒｉｚｏｎ  Ｚｅｒｏ  Ｄａｗｎ内のＴｈｕｎｄｅｒｊａｗという獣であるＲｅｄｍａｗなどの特定の敵獣に関する情報を提供し得る。
【０１２９】
図４Ｂは、本開示の一実施形態による、ゲーム支援を提供するように構成された図４Ａのコンパニオンモバイルデバイス１１上のクイック検索ボタン４１５Ｄの選択を示す。具体的には、図４Ｂは、プレーヤによるクエリーに対する応答を表示する時、コンパニオンモバイルデバイスと、プレーヤのゲームプレイを提示するように構成されたディスプレイ１２とのインタラクションを示す。具体的には、ユーザのキャラクタが回復するまたはさらなるライフを得ることなどができるように、「最も近いヘルス改善」場所を尋ねるクエリーが、コンパニオンモバイルデバイスから提示される（例えばクイック検索ボタン４１５Ｄを選択）。クイック検索ボタンのクエリーに対する応答は、モバイルデバイス１１とは別個のディスプレイ１２に提示される。例えば、モバイルデバイス１１の画面は、クエリー４１５Ｄが「最も近いヘルス改善」であることを示し、また応答（マップ）がディスプレイ１２に提示されたことを示す指示４３５Ａを提供する。具体的には、Ｈｏｒｉｚｏｎ  Ｄａｗｎのゲーム環境のマップ４３０は、現在の場所「アロイ」と、最も近いヘルス改善位置を示すマーカ４３５Ｂとを示す。よって、プレーヤは、１つのデバイスにクエリーを入力し、別のデバイスで応答を受信し得る。
【０１３０】
図４Ｃは、本開示の一実施形態による、ゲーム支援を提供するように構成された図４Ａのコンパニオンモバイルデバイスと、ゲームアプリケーションをプレイするプレーヤのゲームプレイを提示し、かつ要求された情報のためにプレーヤをモバイルデバイスへ誘導するディスプレイ１２との、インタラクションを示す。具体的には、クエリーは、図４Ａのコンパニオンモバイルデバイス１１上のクイック検索ボタン４２０Ｃ（「Ｒｅｄｍａｗ」）の選択を介して、プレーヤにより入力され得る。クエリーは、スタンドアロンスピーカ、またはゲーム機に接続されたスピーカなどを介するといった、任意の他の方法で入力されてもよい。一実施形態では、クエリーは、ディスプレイ１２上のスピーカを介して、またはディスプレイ１２上の検索ボックスを介して、入力される。クエリーに対する応答はまた、コンパニオンモバイルデバイス１１の画面に提示され得る。例えば、画像４５０Ｂは、Ｒｅｄｍａｗの写真を示し、ウィンドウ４５０Ｃは、Ｒｅｄｍａｗに関する付随情報「Ｒｅｄｍａｗは伝説のＴｈｕｎｄｅｒｊａｗであり、・・・」を提供する。
【０１３１】
さらに、ゲームプレイを表示するディスプレイ１２に、ポインタ指示が提供され得る。例えば、指示４５０Ａは、クエリーに対する応答が、コンパニオンモバイルデバイス１１に提示されていることを示す−「Ｒｅｄｍａｗに関するさらなる情報をあなたの携帯に送ったよ」。このようにして、プレーヤがゲームプレイに没頭しても、プレーヤは、コンパニオンモバイルデバイス１１に応答があることを静かに気付かされる。よって、プレーヤは、１つのデバイスにクエリーを入力し、別のデバイスで応答を受信し得る。
【０１３２】
図４Ｄは、本開示の一実施形態による、現在ゲームアプリケーションをプレイしていないが、サポートを求めてバックエンドサーバにゲームアプリケーションに関するクエリーを提示することができるユーザに、ゲーム支援を提供するように構成されたコンパニオンモバイルデバイスを示す。例えば、ユーザは、仕事中、または旅行の最中であり得る。ユーザは、ゲームアプリケーションに関するいくつかの一般的な情報、または１つ以上のゲームアプリケーションをプレイするソーシャルネットワークの友達に関連する情報を求め得る、あるいは１人以上の友達とゲームセッションをスケジューリングすることを所望し得る。
ユーザは、他のより具体的な情報も要求し得る。例えば、ユーザ−Ｒｉｖｅｒ  Ｈｓｕ−は、「ハイ、プレイステーション」（図示せず）などのトリガーワードを話すことにより、モバイルデバイス１１を介してゲーム支援サーバとヘルプセッションを開始し得る。このようにして、クエリーを見込んで、リモートデバイス間のインターフェースを提供し得るゲーム支援アプリケーション（例えばＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔ）が、ローカルで起動または再起動される。次に、ユーザは、「私はいつＧｏｄ  ｏｆ  Ｗａｒ（登録商標）のプレイを開始したか？」と尋ねるクエリー４６０Ａを入力し得る（例えばモバイルデバイス１１上のマイクロフォンを介して口頭で）。
次に、クエリーが受信され、クエリーを処理するバックエンドゲーム支援サーバに配信される。例えば、バックエンドゲーム支援サーバは、ディープラーニングエンジンを実施して、クエリーを、現行コンテキストが与えられた場合、好適な応答にマッチングさせ得る。クエリーは、ゲームアプリケーションのプレイ外で提示されるため、コンテキストがあまり十分ではないことがあり、よって、クエリーは、一般的な質問だけでなく、さらに充実した情報を求め得る。クエリーは、ゲームアプリケーションのタイトル（例えばＧｏｄ  ｏｆ  Ｗａｒ（登録商標））を含むため、クエリーをマッチングさせるのに十分なコンテキストが提供される。よって、ゲームアプリケーションのユーザのゲームプレイ全体にわたりユーザから収集された情報（例えばグローバルコンテキスト及びゲームコンテキスト）に基づいて、応答がマッチング及び／または生成され得る。例えば、応答４６０Ｂは、ユーザが２０１７年１２月にゲームアプリケーションのプレイを開始したことを示し得る。
【０１３３】
さらに、質問の続きが第２のクエリー４７０Ａとして入力され、ユーザがどれくらいの期間プレイしているか、及びユーザがゲームをどの程度完了しているかが尋ねられる。ゲーム支援サーバにより、応答４７０Ｂがマッチング及び／または生成され、応答は、ユーザが合計約１６時間プレイしており、ゲームアプリケーション内のタスクを約２７％完了しており、ゲーム世界（例えばオープンワールド環境）の５５％を訪問済みであることを示す。
【０１３４】
図４Ｅは、本開示の一実施形態による、プレーヤのゲームプレイをサポートして、ユーザにゲーム支援を提供するように構成されたコンパニオンモバイルデバイス１１を示す。モバイルデバイス１１のユーザインターフェースは、ヘッダ５１０を含み、ヘッダ５１０は、ゲームプレイがゲームアプリケーションＨｏｒｉｚｏｎ  Ｚｅｒｏ  Ｄａｗｎ（登録商標）用であること、及び情報は、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションから提供されていることを示す。フッタ領域５２０は、ヘッドアップディスプレイ機能（ＨＵＤ）、ガイドへのリンク、クエリー及び応答の履歴へのリンク、及びメッセージへのリンクなど、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔが提供する様々な機能へのリンクを含む。
例えば、プレーヤは、ゲームアプリケーションのゲーム環境の特定の場所でプレイしており、ポーション及び戦闘の場所を尋ねるクエリーを入力し得る。バックエンドゲーム支援サーバは、ディープラーニングエンジンを介して、ゲームプレイの現行コンテキストを使用してクエリーを処理する。ゲーム環境内のプレーヤのキャラクタを示す中心位置を有するゲーム環境のマップを含む応答が、生成され得る。さらに、ポーション及び戦闘の位置は、プレーヤのキャラクタの位置を基準として提示される。
【０１３５】
図５Ａ〜図５Ｂは、本開示の一実施形態による、別個のディスプレイに提示されるゲームアプリケーションのゲームプレイに関連したゲーム支援を行うコンパニオンモバイルデバイス１１の使用を示す。具体的には、モバイルデバイス１１のスクリーンショットは、ゲームプレイがゲームアプリケーションＨｏｒｉｚｏｎ  Ｚｅｒｏ  Ｄａｗｎ（登録商標）用であること、及び情報がＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションから提供されていることを示すヘッダ５１０を含み、並びに、ヘッドアップディスプレイ機能（ＨＵＤ）、ガイドへのリンク、クエリー及び応答の履歴へのリンク、及びメッセージへのリンクなど、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔが提供する様々な機能へのリンクを含むフッタ領域５２０を含む。
ヘッダ５１０及びフッタ領域５２０は、図６〜図７のユーザインターフェースに示され得る。プレーヤ−Ｒｉｖｅｒ  Ｈｓｕ−は、前述のように、トリガーワードを介するなどして、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションを既に始動させている。よって、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔからの通信５１５は、アプリケーションがプレーヤからのクエリーを受け付ける準備ができていることを示す。プレーヤは、ゲームアプリケーションをプレイしており、ゲームプレイは、別個のディスプレイに提示され得る。よって、クエリーは、ゲームプレイをサポートするものであり得る。具体的には、プレーヤによるクエリー５１７は、「このドラゴンを殺す方法を教えて？」と尋ねる。
クエリーはコンテキストデータ（ゲームコンテキスト及びグローバルコンテキストデータを含む）と共に入力されるため、クエリーは、好適な応答にマッチングされ得る。ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションを介したゲーム支援サーバは、ディープラーニングエンジンプロセスを介するなどして、応答を生成する。例えば、応答は、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔからの通信により導入され、ボタン５２５Ａを選択してドラゴンの脆弱性に関する情報を取得することにより、またはボタン５２７を選択してドラゴンを倒す戦略に関する情報を取得することにより、情報が入手可能であることを示す。さらに、ゲームプレイのゲームコンテキスト（例えばプレーヤのキャラクタの現在位置）が与えられた場合、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔは、時間的または場所的にゲームプレイ近くに発現する困難を通してプレーヤを助けるための「ガイド」を提示し得る（例えばこれから何が起こるか警告する、またはいくつかのヒントを提供する）。例えば、ボタン５２８は、鋼の剣を手に入れる方法を説明するガイドへのアクセスを提供する。
【０１３６】
プレーヤ−Ｒｉｖｅｒ  Ｈｓｕ−は、脆弱性に関するボタン５２５Ａを選択して、さらなる情報を取得し得る。図５Ｂに示されるように、見出し５２５Ｂは、Ｔｈｕｎｄｅｒｊａｗドラゴンの脆弱性を示す。また、ドラゴンとの戦い方に関するヒントを提供する追加情報も、提供され得る。さらに、Ｔｈｕｎｄｅｒｊａｗドラゴンに関するさらなる情報をプレーヤが望む場合、ボタン５３０は、ドラゴンを倒す方法に関するヒントを提供する「戦略」へのリンク、及び特定の領域でドラゴンがどれほど強いかに関する情報を提供する「抵抗力」へのリンクを提供し、これらは、ドラゴンを倒す方法に関する情報を提供し得る。
【０１３７】
図６Ａ〜図６Ｇは、本開示の一実施形態による、別個のディスプレイに提示されるゲームアプリケーションのゲームプレイに関連したゲーム支援を行うコンパニオンモバイルデバイスを使用した、クエリーに応答して提供された一連のつながった情報層内の遷移を示す。具体的には、図のそれぞれに示されるように、モバイルデバイス１１のスクリーンショットは、ヘッダ５１０を含み、ヘッダ５１０は、ゲームプレイがゲームアプリケーションＨｏｒｉｚｏｎ  Ｚｅｒｏ  Ｄａｗｎ（登録商標）用であること、及び情報は、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションから提供されていることを示す。フッタ領域５２０は、前述のように、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔが提供する様々な機能へのリンクを含む。図６Ａに示されるように、様々なカテゴリの情報がプレーヤに提供され、それぞれが、リンクまたは該当ボタンによりアクセス可能である。例えば、ボタン６３０Ａは、ゲームアプリケーションのウォークスルーへのアクセスを提供し、これは、選択されると、図６Ａ〜図６Ｇに提供されるように、ウォークスルーに関連する情報ツリーへのアクセスを提供する。
【０１３８】
図６Ｂは、図６Ａのボタン６３０Ａを選択した後のモバイルデバイス１１のスクリーンショット上の１つ以上のウォークスルーを示す。ボタン６３０Ｂは、ユーザを図６Ａの画面に戻す戻るボタンである。図示されるように、ウォークスルー６３５は、メインクエストウォークスルー、サイドクエストウォークスルー（ボタン６４０Ａにより選択可能）、エランドウォークスルーを含み、それぞれが、該当ボタンにより選択可能である。図６Ｃは、別の層における、図６Ｂのボタン６４０Ａを選択した後の１つ以上のサイドクエスト及びそれらのウォークスルーを示す。図示されるように、サイドクエスト６４５は、コンパニオンサイドクエスト、Ｗｉｎｔｅｒｈｏｌｄカレッジのサイドクエスト（ボタン６５０Ａにより選択可能）、及び泥棒ギルドのサイドクエストを含み、それぞれが該当ボタンにより選択可能である。戻るボタン６４０Ｂは、プレーヤを図６Ｂのユーザインターフェースに戻す。
【０１３９】
図６Ｄは、別の層における、Ｗｉｎｔｅｒｈｏｌｄカレッジのサイドクエストのウォークスルーを示し、ボタン６５０Ｂは、プレーヤを図６Ｃに示されるユーザインターフェースに戻す。具体的には、セクション６５５において、Ｆｉｒｓｔ  Ｌｅｓｓｏｎｓ（完了済み）、Ｕｎｄｅｒ  Ｓａａｒｔｈａｌ（ボタン６６０Ａにより選択可能）などを含む段階的手順が提供され、それぞれが該当ボタンにより選択可能である。図６Ｅは、別の層における、ボタン６６０Ａを選択した後の「Ｕｎｄｅｒ  Ｓａａｒｔｈａｌ」ステップの具体的なウォークスルーを示し、ボタン６６０Ｂは、プレーヤを図６Ｄで提供されるユーザインターフェースに戻す。このステップを達成するのにかかる時間、及びこのステップを完了した後に得られる報酬を含む一般情報が提供される。ボタン６７０Ａは、ウォークスルーを始動させる。
【０１４０】
図６Ｆは、別の層における、「Ｕｎｄｅｒ  Ｓａａｒｔｈａｌ」ステップで実行する必要のある個々のアクション、及びそのウォークスルーを示す。図６Ｆは、ステップ情報にアクセスするための「ステップ」６７１のセクションを示す。例えば、ウォークスルーのステップ１（Ｔｏｌｆｉｒに会う）が表示され、ステップ２（Ａｒｎｉａｌを見つける）も表示される。要求に応じて、追加部分がプレーヤに表示され得る（例えば下にスクロールする）。
図６Ｇは、別の層における、ウォークスルーを見るオプションにアクセスするための図６Ｆの「メディア」６７２の選択を示す。例えば、フルウォークスルーは、封筒６７３を介してアクセス可能であり、その封筒は、別個のデバイスにメールされ得る。ウォークスルーの各ステップに関して、特定のステップまたはサブステップもアクセス可能であり得る。図示されるように、ステップ１（Ｔｏｌｆｉｒに会う）では、１つ以上のサブステップは、メールされた封筒（例えばデジタル）を介してアクセスされ得、ステップ２（Ａｒｎｉａｌを見つける）では、１つ以上のサブステップは、メールされた封筒を介してアクセスされ得る。
【０１４１】
図７は、本開示の一実施形態による、別個のディスプレイに提示されるゲームアプリケーションのプレーヤのゲームプレイに関連したゲーム支援を行うコンパニオンモバイルデバイス１１の使用を示し、通信セッションを介してプレーヤをエキスパートに接続するためのオプションが提示される。具体的には、モバイルデバイス１１のスクリーンショットは、前述のように、ゲームプレイがゲームアプリケーションＨｏｒｉｚｏｎ  Ｚｅｒｏ  Ｄａｗｎ（登録商標）用であること、及び情報がＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションから提供されていることを示すヘッダ５１０と、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔが提供する様々な機能へのリンクを提供するフッタ領域５２０とを含む。
【０１４２】
プレーヤ−Ｒｉｖｅｒ  Ｈｓｕ−は、前述のように、トリガーワードを介するなどして、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションを既に始動させている。よって、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔからの通信７２０は、アプリケーションがプレーヤからのクエリーを受け付ける準備ができていることを示す。プレーヤは、ゲームアプリケーションをプレイしており、ゲームプレイは、別個のディスプレイに提示され得る。よって、クエリーは、ゲームプレイをサポートするものであり得る。具体的には、プレーヤによるクエリー７３５は、「Ｃａｕｌｄｒｏｎ  Ｚｅｔａの入り口」の見つけ方に関する情報を尋ねる。
【０１４３】
ゲーム支援サーバを介してサポートされるＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションは、クエリーを、モデル化されたまたは生成された応答にマッチングさせることができない。ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションからの通信７２０は、利用できる応答がないことを示す。しかし、プレーヤがライブセッション形式のヘルプの受け入れを所望する場合は、エキスパートがライブヘルプセッションで対応可能である。
例えば、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションは、ボタンインターフェース７４０Ａを介してエキスパートＡｓｐｅｎ  Ｔｏｋｏｋｈａｎ（５つ星評価）に、またはボタンインターフェース７４０Ｂを介してエキスパートＲａｉｎ−ａｈ（３つ星評価）に、プレーヤを接続し得る。エキスパートの選択をオプションとして提示することが前述されており、これは、プレーヤの現行コンテキスト（例えばグローバルコンテキスト及び／またはゲームコンテキスト）を、好ましくはゲームをプレイしたことのあるエキスパートの同様のコンテキストにマッチングさせることを伴い得る。
【０１４４】
図８Ａ〜図８Ｇは、本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びアセットを取得するためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。具体的には、プレーヤは例えばアセットを取得する方法に関する情報を要求しており、図８Ａ〜図８Ｇは、取得目的のプロセスを示す。前述のように、情報は、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションを介するなど、ゲームアシストサーバを介して生成及び／またはマッチングされ得、ゲームプレイの映像／画像も表示するディスプレイのウィンドウに提供され得る。図示されるように、プレーヤは、Ｓｋｙｒｉｍ（登録商標）などのゲームアプリケーションをプレイしている。図８Ａ〜図８Ｇに示されるクエリー及び応答は、ゲームアプリケーションに関する。
【０１４５】
具体的には、図８Ａは、Ｓｋｙｒｉｍのエンブレム（例えば飛竜）を提示するウィンドウを示す。プレーヤのゲームプレイ（例えば空飛ぶ獣に近づくキャラクタ）は、別のウィンドウにも表示される。ゲーム支援機能は、ユーザにより利用可能であり、プレーヤは、マイクロフォンアイコン４１０で示されるように、マイクロフォンを介してクエリーを入力し得る。プレーヤが「ハイ、プレイステーション。」というトリガーワードを介するなどして、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションを始動させていることが、示される。
入力されたクエリーは、鋼の剣の取得についての情報に関する。クエリーを好適な形式に変換させた後、例えばグローバルコンテキスト、ゲームコンテキスト、及び現行ゲームコンテキストを含むゲームアプリケーションのコンテキストが与えられた場合、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションをサポートするゲーム支援サーバは、クエリーを応答にマッチングさせ得る。図８Ｂに応答が示され、鋼の剣を取得する方法についての情報が示される。例えば、ルートすること、商人を介すること、工作すること、及びクエストの完了を通じること、を含む様々な技法により、鋼の剣を取得することができる。
【０１４６】
プレーヤは、最初のクエリーを補足する後続または補足クエリーを行い得る。例えば、プレーヤは、鋼の剣をルートする方法を尋ねるクエリーを行い得る（例えば口頭）。図８Ｃは、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションをサポートするゲーム支援サーバが、後続のクエリーに対する応答を提示することを示す。ゲーム支援サーバは、ディープラーニングエンジンのアプリケーションを介してマッチングを行い、クエリーを好適な応答にマッチングさせ得る。例えば、図８Ｃにおいて、剣をルートする方法に関する情報には、様々なレベルの宝箱の中など、剣が見つかり得る場所が含まれ得る。剣をルートすることができる固定位置に関するさらなる情報を取得するためのオプションが、図８Ｃにおいて提供される。選択後、石塚またはＡｌｖｏｒの暖炉を含む具体的なルート場所が、図８Ｄにおいて提供される。
【０１４７】
図８Ｅは、最初のクエリーまたは中間クエリーに基づく別の後続または補足要求に関連して提示される応答を示す。例えば、プレーヤは、鋼の剣を購入する方法を尋ねるクエリーを行い得る（例えば口頭）。剣を売る商人に関する情報が提供され、これには、最も近い商人、Ｗｈｉｔｅｒｕｎの町にいるＡｎｎｉｅ  Ｔｒａｖｅｌｅｒと、剣の価格−１００コインとが含まれる。Ａｄｒｉａｎｎｅ  Ａｖｅｎｉｃｃｉ及びＡｒｎｓｋａｒ  Ｅｍｂｅｒ−Ｍａｓｔｅｒを含む他の商人も示される。
【０１４８】
プレーヤは、最初のクエリーを補足する後続または補足クエリーを行い得る。例えば、プレーヤは、鋼の剣を工作する方法を尋ねるクエリーを行い得る（例えば口頭）。図８Ｆは、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションをサポートするゲーム支援サーバが、ディープラーニングを通して実施されるモデル化された応答へのマッチングなどにより、後続のクエリーに対する応答を提示することを示す。剣の工作方法に関する情報には、必要な材料、及び剣を組み立てる場所である鍛冶場が含まれる。
【０１４９】
図８Ｇは、最初のクエリーまたは中間クエリーに基づく別の後続または補足要求に関連して提示される応答を示す。例えば、プレーヤは、クエストを通して鋼の剣を取得する方法を尋ねるクエリーを行い得る（例えば口頭）。鋼の剣の報酬を提供する１つ以上のクエストに関する情報が提供され、これには、オオカミ女王の目覚めクエスト、及び埋葬クエストが含まれる。図示されるように、クエストそれぞれのウォークスルーは、リンクによりアクセスされ得る。
【０１５０】
図９Ａ〜図９Ｃは、本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及び敵を倒す方法に関する情報を求めるクエリーに応答して提供された一連のつながった情報層内の遷移を示す。具体的には、プレーヤは例えば獣または敵を倒す方法に関する情報を要求しており、図８Ａ〜図８Ｇは、打倒目的のプロセスを示す。前述のように、情報は、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションを介するなど、ゲームアシストサーバを介して生成及び／またはマッチングされ得る。図示されるように、プレーヤは、Ｓｋｙｒｉｍ（登録商標）などのゲームアプリケーションをプレイしている。図９Ａ〜図９Ｃに示されるクエリー及び応答は、ゲームアプリケーションに関する。
【０１５１】
具体的には、図９Ａは、プレーヤのゲームプレイ（例えば飛竜−ドラゴンＭｉｒｍｕｌｎｉに近づくキャラクタ）を提示するウィンドウを示す。ゲーム支援機能は、ユーザにより利用可能であり、プレーヤは、マイクロフォンアイコン４１０で示されるように、マイクロフォンを介してクエリーを入力し得る。プレーヤが「ハイ、プレイステーション。」というトリガーワードを介するなどして、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションを始動させていることが、示される。入力されたクエリーは、ゲームプレイで示されるドラゴン（Ｍｉｒｍｕｌｎｉ）を倒すことについての情報に関する。クエリーを好適な形式に変換させた後、例えばグローバルコンテキスト、ゲームコンテキスト、及び現行ゲームコンテキストを含むゲームアプリケーションのコンテキストが与えられた場合、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションをサポートするゲーム支援サーバは、クエリーを応答にマッチングさせ得る。図９Ａに応答が示され、ドラゴンＭｉｒｍｕｌｎｉを倒す方法についての情報が示される。例えば、ドラゴンの倒し方を学ぶ際、戦略カテゴリ及び攻撃カテゴリを含む２つのセクション／カテゴリの情報にアクセスすることができる。
【０１５２】
プレーヤは、戦略カテゴリを選択し得る（例えば口頭で）。ドラゴンＭｉｒｍｕｌｎｉと戦う時に使用する優れた戦略に関する情報が示され、これには役立つヒントが含まれている（例えばヘルスを回復するために隠れるなど）。さらに、図９Ｂは、要求するセクションの名前（例えば戦略または攻撃）を述べることにより、プレーヤはセクション間をジャンプすることができることを示す。さらに、プレーヤは、「ヘルプを閉じる」と述べることで、いつでもＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションを閉じることができる。
【０１５３】
図９Ｃは、クエリーで（例えば口頭指示を介して）そのカテゴリを選択したプレーヤに応答して提供される攻撃セクション下の情報を含む。攻撃情報には、近接攻撃（例えばサイドへの攻撃）、魔法の使用（例えば火を回避する呪文）、及び弓と矢の武器に関する情報（ドラゴンが着地する時に撃つ）が含まれる。
【０１５４】
図１０Ａ〜図１０Ｄは、本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びオブジェクトまたは場所を見つけるためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。
具体的には、プレーヤは例えばある場所への道順を要求しており、図１０Ａ〜図１０Ｄは、発見目的のプロセスを示す。前述のように、情報は、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションを介するなど、ゲームアシストサーバを介して生成及び／またはマッチングされ得る。図示されるように、プレーヤは、Ｓｋｙｒｉｍ（登録商標）などのゲームアプリケーションをプレイしている。図１０Ａ〜図１０Ｄに示されるクエリー及び応答は、ゲームアプリケーションに関する。
【０１５５】
具体的には、図１０Ａは、プレーヤのゲームプレイ（例えば川に架かる屋根付きの橋に近づくキャラクタ）を提示するウィンドウを示す。ゲーム支援機能は、ユーザにより利用可能であり、プレーヤは、マイクロフォンアイコンで示されるように、マイクロフォンを介してクエリーを入力し得る。プレーヤが「ハイ、プレイステーション。」というトリガーワードを介するなどして、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションを始動させていることが、示される。入力されたクエリーは、特定の場所−Ｂｌｅａｋ  Ｆａｌｌｓ  Ｂａｒｒｏｗへの道順の取得についての情報に関する。
【０１５６】
クエリーを好適な形式に変換させた後、例えばグローバルコンテキスト、ゲームコンテキスト、及び現行ゲームコンテキストを含むゲームアプリケーションのコンテキストが与えられた場合、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションをサポートするゲーム支援サーバは、クエリーを応答にマッチングさせ得る。図１０Ｂに応答が示され、道順情報が示される。例えば、ゲームプレイで示される現在位置からＢｌｅａｋ  Ｆａｌｌｓ  Ｂａｒｒｏｗに到達するための段階的な指示が提供される。さらに、近くの宝箱に関する情報（例えば塔の中）も提供され得る。
【０１５７】
プレーヤは、最初のクエリーを補足する後続または補足クエリーを行い得る。例えば、プレーヤは、Ｂｌｅａｋ  Ｆａｌｌｓ  Ｂａｒｒｏｗ領域を抜け出す方法を尋ねるクエリーを行い得る（例えば口頭）。図１０Ｃは、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションをサポートするゲーム支援サーバが、ディープラーニングを通して実施されるモデル化された応答へのマッチングなどにより、後続のクエリーに対する応答を提示することを示す。
図１０Ｄにて、抜け出す方法に関する情報が提供される。具体的には、洞窟まで入ってレバーを引いて入ることでＢｌｅａｋ  Ｆａｌｌｓ  Ｂａｒｒｏｗを去る方法の段階的指示が、提供される。近くの敵（例えばＤｒａｕｇｒ）及び近くの宝物に関する情報などを含む追加情報が提供される。ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションは、プレーヤとダイアログを実行中であり得るが、応答が提供されたことを示す。さらに、プレーヤは、口頭で終了を指示することにより、いつでもＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションを終了することができる。
【０１５８】
図１１Ａ〜図１１Ｂは、本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びタスク（例えばＷｈｉｔｅｒｕｎでＴｕｌｌｉｕｓ将軍に会う）を達成するための要件などの一次目的及び二次目的を有する、クエリーに応答して提供された一連のつながった情報層内の遷移を示す。例えば、Ｂｌｅａｋ  Ｆａｌｌｓ  Ｂａｒｒｏｗを探している間に、プレーヤは、二次クエストも課せられる場合がある。これは、アイコンで示され得る。
例えば、Ｂｌｅａｋ  Ｆａｌｌｓ  Ｂａｒｒｏｗへの道順の中で提供されたステップのうちの１つは、ゲームプレイ中にキャラクタがＴｕｌｌｉｕｓ将軍に接近することを要求し得る。プレーヤは、Ｔｕｌｌｉｕｓ将軍が誰であるかを尋ねるクエリーを入力し得る。ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションをサポートするゲーム支援サーバは、応答が提供されたことを示し得る。さらに、プレーヤは、道順を終了して、または道順を再開して、二次目的（例えばＴｕｌｌｉｕｓ将軍に会う）を開始及び終了することができる。図１１Ｂに示されるように、Ｔｕｌｌｉｕｓ将軍に関する情報が提供され、これには、経歴情報及び彼の現在位置が含まれる。さらに、プレーヤは、Ｗｈｉｔｅｒｕｎの場所、及びＴｕｌｌｉｕｓ将軍のより具体的な位置を示すマップへのアクセスを要求し得る。
【０１５９】
図１２Ａ〜図１２Ｃは、本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びタスクを達成する方法を学ぶためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。具体的には、プレーヤは例えばパズルの解き方を要求しており、図１２Ａ〜図１２Ｃは、学習目的のプロセスを示す。前述のように、情報は、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションを介するなど、ゲームアシストサーバを介して生成及び／またはマッチングされ得る。図示されるように、プレーヤは、Ｓｋｙｒｉｍ（登録商標）などのゲームアプリケーションをプレイしている。図１２Ａ〜図１２Ｃに示されるクエリー及び応答は、ゲームアプリケーションに関する。
【０１６０】
具体的には、図１２Ａは、プレーヤのゲームプレイを提示する（例えばキャラクタはキーストーン錠と共に提示される）ウィンドウを示す。ゲーム支援機能は、ユーザにより利用可能であり、プレーヤは、マイクロフォンアイコンで示されるように、マイクロフォンを介してクエリーを入力し得る。プレーヤが「ハイ、プレイステーション。」というトリガーワードを介するなどして、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションを始動させていることが、示される。入力されたクエリーは、ゲームプレイで示されるキーストーンの解除方法についての情報に関する。
クエリーを好適な形式に変換させた後、例えばグローバルコンテキスト、ゲームコンテキスト、及び現行ゲームコンテキストを含むゲームアプリケーションのコンテキストが与えられた場合、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションをサポートするゲーム支援サーバは、クエリーを応答にマッチングさせ得る。図１２Ｂに応答が示され、キーストーンの解除方法についての情報が示される。ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションをサポートするゲーム支援サーバは、応答が提供されたことを示し、「Ａｒｖｅｌの日記を見る」という簡単な手がかりを提供し得る。Ａｒｖｅｌの日記へのリンクも提供され、リンクが選択されると、適切な日記内容が表示される。
【０１６１】
プレーヤは、最初のクエリーを補足する後続または補足クエリーを行い得る。例えば、プレーヤは、Ａｒｖｅｌの日記内容で具体的に何が重要であるかを尋ねるクエリーを行い得る（例えば口頭）。図１２Ｃは、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションをサポートするゲーム支援サーバが、ディープラーニングを通して実施されるモデル化された応答へのマッチングなどにより、後続のクエリーに対する応答を提示することを示す。黄金の爪がどのような解決策であるかについての情報が提供される。さらに、ドアコードも提供される（例えば熊−蛾−フクロウ）。
【０１６２】
図１３Ａ〜図１３Ｂは、本開示の一実施形態による、ゲームアプリケーションのプレーヤのゲームプレイを提示するディスプレイの使用、及びゲームアプリケーションに関する何か（例えば敵方戦闘員に関する情報）を理解するためのクエリーに応答して提供された一連のつながった情報層内の遷移を示す。具体的には、プレーヤは例えばオブジェクト関する情報を要求しており、図１３Ａ〜図１３Ｂは、理解目的のプロセスを示す。前述のように、情報は、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションを介するなど、ゲームアシストサーバを介して生成及び／またはマッチングされ得る。図示されるように、プレーヤは、Ｓｋｙｒｉｍ（登録商標）などのゲームアプリケーションをプレイしている。図１３Ａ〜図１３Ｂに示されるクエリー及び応答は、ゲームアプリケーションに関する。
【０１６３】
具体的には、図１３Ａは、プレーヤのゲームプレイ（例えば未知の生き物に遭遇するキャラクタ）を提示するウィンドウを示す。ゲーム支援機能は、ユーザにより利用可能であり、プレーヤは、マイクロフォンアイコンで示されるように、マイクロフォンを介してクエリーを入力し得る。プレーヤが「ハイ、プレイステーション。」というトリガーワードを介するなどして、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションを始動させていることが、示される。入力されたクエリーは、未知の物体についての情報に関する−「これは何！」。生き物とプレーヤのキャラクタが交戦すると、緊急性が暗示される。
クエリーを好適な形式に変換させた後、例えばグローバルコンテキスト、ゲームコンテキスト、及び現行ゲームコンテキストを含むゲームアプリケーションのコンテキストが与えられた場合、ＰｌａｙＳｔａｔｉｏｎ  Ａｓｓｉｓｔアプリケーションをサポートするゲーム支援サーバは、クエリーを応答にマッチングさせ得る。図１３Ｂに応答が示され、生き物（例えばＤｒａｕｇｒ）についての情報が示される。例えば、情報は、生き物に関する一般情報、並びにＤｒａｕｇｒ  Ｔｈｒａｌｌ、Ｒｅｓｔｌｅｓｓ  Ｄｒａｕｇｒなどを含む様々なタイプのＤｒａｕｇｒの画像を含む。また追加情報を要求してもよい。
【０１６４】
図１４は、本開示の様々な実施形態の態様を実行するために使用することができる例示的なデバイス１４００の構成要素を示す。例えば、図１４は、一実施形態による、ゲームアプリケーションに関連するユーザのクエリーに応答してゲーム支援を提供するなど、ユーザをサポートするサービスを提供するデバイスを実施するのに適切な例示的ハードウェアシステムを示し、クエリーは、ディープラーニングエンジンを使用してモデル化された応答にマッチングされる。このブロック図は、本開示の一実施形態を実施するのに適したデバイス１４００を示し、デバイス１４００は、パーソナルコンピュータ、ビデオゲーム機、パーソナルデジタルアシスタント、または他のデジタルデバイスであるか、あるいは、これらを組み込んだものであり得る。
デバイス１４００は、ソフトウェアアプリケーションと任意でオペレーティングシステムとを作動させる中央処理装置（ＣＰＵ）１４０２を含む。ＣＰＵ１４０２は、１つ以上の同種または異種の処理コアで構成され得る。例えば、ＣＰＵ１４０２は、１つ以上の処理コアを有する１つ以上の汎用マイクロプロセッサである。メディア及びインタラクティブエンターテインメントアプリケーション、または前述のように、ゲームアプリケーションに関連するユーザのクエリーに応答してゲーム支援を提供するように構成されたアプリケーションなど、高並列及び計算集中的なアプリケーションに特に適合したマイクロプロセッサアーキテクチャを有する１つ以上のＣＰＵを用いて、さらなる実施形態を実施することができる。デバイス１４００は、支援を要求するプレーヤに対しローカライズされ得る（例えばゲーム機）、またはプレーヤからリモートであり得る（例えばバックエンドゲーム支援プロセッサ）。
【０１６５】
メモリ１４０４は、ＣＰＵ１４０２が使用するアプリケーション及びデータを格納する。ストレージ１４０６は、アプリケーション及びデータ用の不揮発性ストレージ及び他のコンピュータ可読媒体を提供し、ストレージ１４０６には、固定ディスクドライブ、取り外し可能ディスクドライブ、フラッシュメモリデバイス、及びＣＤ‐ＲＯＭ、ＤＶＤ‐ＲＯＭ、Ｂｌｕ‐ｒａｙ（登録商標）、ＨＤ‐ＤＶＤ、もしくは他の光学記憶デバイス、並びに信号伝送及び記憶媒体が含まれ得る。ユーザ入力デバイス１４０８は、１人以上のユーザからのユーザ入力をデバイス１４００へ通信し、ユーザ入力デバイス１４０８の実施例には、キーボード、マウス、ジョイスティック、タッチパッド、タッチスクリーン、スチルレコーダ／カメラもしくはビデオレコーダ／カメラ、ジェスチャを認識する追跡デバイス、及び／またはマイクロフォンが挙げられ得る。
ネットワークインターフェース１４１４は、デバイス１４００が電子通信ネットワークを介して他のコンピュータシステムと通信することを可能にし、ローカルエリアネットワーク、及びインターネットなどの広域ネットワークにわたる有線または無線通信を含み得る。音声プロセッサ１４１２は、ＣＰＵ１４０２、メモリ１４０４、及び／またはストレージ１４０６により提供される命令及び／またはデータから、アナログまたはデジタルの音声出力を生成するように適合される。ＣＰＵ１４０２、メモリ１４０４、データストレージ１４０６、ユーザ入力デバイス１４０８、ネットワークインターフェース１４１０、及び音声プロセッサ１４１２を含むデバイス１４００の構成要素は、１つ以上のデータバス１４２２を介して接続されている。
【０１６６】
グラフィックサブシステム１４１４はさらに、データバス１４２２及びデバイス１４００の構成要素と接続されている。グラフィックサブシステム１４１４は、グラフィック処理装置（ＧＰＵ）１４１６と、グラフィックメモリ１４１８とを含む。グラフィックメモリ１４１８は、出力画像の各画素の画素データを格納するために使用される表示メモリ（例えばフレームバッファ）を含む。グラフィックメモリ１４１８は、ＧＰＵ１４１６と同じデバイスに統合されてもよく、ＧＰＵ１４１６と別個のデバイスとして接続されてもよく、及び／またはメモリ１４０４内に実装されてもよい。
画素データは、直接ＣＰＵ１４０２からグラフィックメモリ１４１８へ提供され得る。あるいは、ＣＰＵ１４０２は、所望の出力画像を定義するデータ及び／または命令をＧＰＵ１４１６に提供し、これによりＧＰＵ１４１６は、１つ以上の出力画像の画素データを生成する。所望の出力画像を定義するデータ及び／または命令は、メモリ１４０４及び／またはグラフィックメモリ１４１８に格納され得る。一実施形態において、ＧＰＵ１４１６は、シーンの幾何学的構造、照明、陰影、質感、動き、及び／またはカメラのパラメータを定義する命令及びデータから、出力画像の画素データを生成する３Ｄレンダリング能力を含む。ＧＰＵ１４１６はさらに、シェーダプログラムを実行することができる１つ以上のプログラム可能実行ユニットを含み得る。
【０１６７】
グラフィックサブシステム１４１４は、グラフィックメモリ１４１８から画像の画素データを定期的に出力して、ディスプレイデバイス１４１０に表示させる、または投影システム１４４０により投影させる。ディスプレイデバイス１４１０は、デバイス１４００からの信号に応じて視覚情報を表示することができる任意のデバイスであり得、これにはＣＲＴ、ＬＣＤ、プラズマ、及びＯＬＥＤディスプレイが含まれる。デバイス１４００は、ディスプレイデバイス１４１０に、例えばアナログ信号またはデジタル信号を提供することができる。
【０１６８】
ライブヘルプセッションを介して、（例えば通信セッションを介してプレーヤをエキスパートに接続して）、または記録されたヘルプセッションを介して（例えば通信セッションを介して送信される記録されたヘルプセッションに接続して）、ゲームアプリケーションをプレイするプレーヤのゲームプレイ中にリアルタイムの支援を提供することを明示するために、具体的な実施形態が提供されているが、これらは例として説明されており、限定するためのものではない。本開示を読んだ当業者は、本開示の趣旨及び範囲に含まれる追加の実施形態を実現するであろう。
【０１６９】
現在の実施形態のゲームへのアクセス提供など、広範囲な地域にわたり配信されるアクセスサービスは、多くの場合、クラウドコンピューティングを使用することに留意されたい。クラウドコンピューティングは、動的に拡張縮小可能で多くの場合仮想化されたリソースがインターネットを介したサービスとして提供される、コンピューティング様式である。ユーザは、ユーザをサポートする「クラウド」の技術的インフラストラクチャのエキスパートである必要はない。クラウドコンピューティングは、Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ（ＩａａＳ）、Ｐｌａｔｆｏｒｍ  ａｓ  ａ  Ｓｅｒｖｉｃｅ（ＰａａＳ）、及びＳｏｆｔｗａｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ（ＳａａＳ）などの異なるサービスに分類することができる。
クラウドコンピューティングサービスは、多くの場合、ビデオゲームなどの共通のアプリケーションを、ウェブブラウザからアクセスするオンラインで提供するが、ソフトウェア及びデータは、クラウド内のサーバに格納される。クラウドという用語は、コンピュータネットワーク図におけるインターネットの描かれ方に基づいたインターネットの隠喩として使われ、複雑なインフラストラクチャを隠し持つことの抽象的概念である。
【０１７０】
ゲーム処理サーバ（ＧＰＳ）（または単純に「ゲームサーバ」）は、ゲームクライアントにより、シングルプレーヤ及びマルチプレーヤのビデオゲームをプレイするために使用される。インターネット上でプレイされる大抵のビデオゲームは、ゲームサーバへの接続を介して作動する。通常、ゲームは、プレーヤからデータを収集し、収集したデータを他のプレーヤに配信する専用サーバアプリケーションを使用する。これは、ピアツーピア構成よりも効率的かつ効果的であるが、サーバアプリケーションをホストする別個のサーバが必要となる。別の実施形態では、ＧＰＳは、プレーヤ及びそれぞれのゲームプレイデバイスの間の通信を確立し、集中型ＧＰＳに依存せずに情報を交換する。
【０１７１】
専用ＧＰＳは、クライアントとは無関係に稼働するサーバである。このようなサーバは、通常、データセンタに配置された専用ハードウェア上で稼働し、より多くの帯域幅及び専用処理能力を提供する。専用サーバは、大抵のＰＣベースマルチプレーヤゲームのゲームサーバをホストするのに、好ましい方法である。大規模なマルチプレーヤオンラインゲームは、ゲームタイトルを所有するソフトウェア会社が通常ホストする専用サーバ上で作動し、専用サーバがコンテンツを制御及び更新することを可能にする。
【０１７２】
ユーザは、少なくともＣＰＵ、ディスプレイ、及びＩ／Ｏを含むクライアントデバイスにより、リモートサービスにアクセスする。クライアントデバイスは、ＰＣ、携帯電話、ネットブック、ＰＤＡなどであり得る。一実施形態では、ゲームサーバ上で実行されるネットワークは、クライアントが使用するデバイスの種類を認識し、採用する通信方法を調整する。別の事例では、クライアントデバイスは、ＨＴＭＬなどの標準的な通信方法を使用して、インターネットを介してゲームサーバ上のアプリケーションにアクセスする。
【０１７３】
本開示の実施形態は、ハンドヘルドデバイス、マイクロプロセッサシステム、マイクロプロセッサベースまたはプログラム可能な一般消費者向け電気製品、小型コンピュータ、及びメインフレームコンピュータなどを含む様々なコンピュータシステム構成により実施され得る。本開示はまた、有線ベースネットワークまたは無線ネットワークを介してリンクされたリモート処理デバイスによりタスクが行われる分散型コンピューティング環境においても、実施することができる。
【０１７４】
所与のビデオゲームまたはゲームアプリケーションは、特定のプラットフォーム及び特定の関連コントローラデバイス用に開発されてもよいことを、理解されたい。しかし、このようなゲームが、本明細書において提示されるようなゲームクラウドシステムを介して利用可能となる場合、ユーザは、異なるコントローラデバイスでビデオゲームにアクセスすることができる。例えば、あるゲームは、ゲーム機及びその関連コントローラ用に開発された可能性があるが、ユーザは、キーボード及びマウスを利用してパーソナルコンピュータから、クラウドベースバージョンのゲームにアクセスすることができる。このようなシナリオでは、入力パラメータ設定により、ユーザが利用可能なコントローラデバイス（この事例ではキーボード及びマウス）により生成され得る入力から、ビデオゲームの実行で受入れ可能な入力へ、マッピングが定義され得る。
【０１７５】
別の実施例では、ユーザは、タブレットコンピューティングデバイス、タッチスクリーンスマートフォン、または他のタッチスクリーン駆動デバイスを介して、クラウドゲームシステムにアクセスすることができる。この場合、クライアントデバイス及びコントローラデバイスは、同じデバイス内に一緒に統合され、検出されたタッチスクリーン入力／ジェスチャにより入力が提供される。このようなデバイスでは、入力パラメータ設定により、ビデオゲームのゲーム入力に対応する特定のタッチスクリーン入力が定義され得る。例えば、ユーザがタッチしてゲーム入力を生成することができるタッチスクリーン上の位置を示すために、ビデオゲームの実行中に、ボタン、方向パッド、または他の種類の入力要素が、表示またはオーバーレイされ得る。特定の方向のスワイプまたは特定のタッチ動作などのジェスチャも、ゲーム入力として検出され得る。一実施形態では、タッチスクリーン上での制御操作にユーザを慣れさせるために、例えばビデオゲームのゲームプレイを始める前に、ゲームプレイのタッチスクリーンを介して入力を提供する方法を示すチュートリアルが、ユーザに提供され得る。
【０１７６】
いくつかの実施形態では、クライアントデバイスは、コントローラデバイスの接続ポイントとして機能する。すなわち、コントローラデバイスは、無線接続または有線接続を介してクライアントデバイスと通信し、コントローラデバイスからクライアントデバイスへ入力を送信する。今度はクライアントデバイスが、これらの入力を処理し、次いで入力データを、ネットワークを介して（例えばルータなどのローカルネットワークデバイスを介してアクセスされる）、クラウドゲームサーバへ送信し得る。しかし、別の実施形態では、コントローラ自体が、このような入力をまずクライアントデバイスを通して通信する必要なく、ネットワークを介して入力を直接クラウドゲームサーバに通信する能力を有するネットワークデバイスであり得る。
例えば、コントローラは、ローカルネットワークデバイス（前述のルータなど）に接続して、クラウドゲームサーバとデータを送受信することができる。従って、クライアントデバイスは依然として、クラウドベースのビデオゲームからの映像出力を受信して、それをローカルディスプレイにレンダリングする必要はあるが、コントローラがクライアントデバイスを迂回して、ネットワークを介して直接クラウドゲームサーバに入力を送信することを可能にすることにより、入力待機時間が削減され得る。
【０１７７】
一実施形態では、ネットワーク化されたコントローラ及びクライアントデバイスは、特定の種類の入力を直接コントローラからクラウドゲームサーバへ、及び他の種類の入力をクライアントデバイスを介して送信するように構成することができる。例えば、コントローラ自体とは別の任意の追加のハードウェアまたは処理に依存しない検出による入力は、クライアントデバイスを迂回して、ネットワークを介して直接コントローラからクラウドゲームサーバへ送信することができる。
このような入力には、ボタン入力、ジョイスティック入力、埋込型動作検出入力（例えば加速度計、磁力計、ジャイロスコープ）などが含まれ得る。しかし、追加のハードウェアを利用する、またはクライアントデバイスによる処理を要する入力は、クライアントデバイスによりクラウドゲームサーバへ送信され得る。これには、クラウドゲームサーバへ送信する前にクライアントデバイスにより処理され得る、ゲーム環境から取り込まれた映像または音声が含まれ得る。さらに、コントローラの位置及び動作を検出するために、コントローラの動作検出ハードウェアからの入力が、取り込まれた映像と併せてクライアントデバイスにより処理され、処理された入力はその後、クライアントデバイスによりクラウドゲームサーバへ通信される。様々な実施形態によるコントローラデバイスも、クライアントデバイスから、または直接クラウドゲームサーバから、データ（例えばフィードバックデータ）を受信し得ることを理解されたい。
【０１７８】
本明細書で説明される実施形態は、任意の種類のクライアントデバイス上で実行され得ることを理解されたい。いくつかの実施形態では、クライアントデバイスは、ヘッドマウントディスプレイ（ＨＭＤ）、または投影システムである。本開示の一実施形態による、ヘッドマウントディスプレイ１０２の構成要素を例示する図が図１５に示される。ＨＭＤ１０２は、ゲームアプリケーションに関連するユーザのクエリーに応答してゲーム支援を提供及び受信するように構成され得、クエリーは、バックエンドゲーム支援サーバに対応付けられたディープラーニングエンジンを使用してモデル化された応答にマッチングされる。
【０１７９】
ヘッドマウントディスプレイ１０２は、プログラム命令を実行するプロセッサ１５００を含む。メモリ１５０２は、格納目的で提供され、揮発性メモリ及び不揮発性メモリの両方を含み得る。ユーザが見得る視覚インターフェースを提供するディスプレイ１５０４が含まれる。ヘッドマウントディスプレイ１０２の電源として、バッテリ１５０６が提供される。動作検出モジュール１５０８は、磁力計１５１０、加速度計１５１２、及びジャイロスコープ１５１４などの様々な種類の動作感知ハードウェアのうちのいずれかを含み得る。
【０１８０】
加速度計は、加速度及び重力誘起反力を測定するデバイスである。様々な方向の加速の大きさ及び方向を検出するために、単軸モデル及び多軸モデルが利用可能である。加速度計を使用して、傾き、振動、及び衝撃が感知される。一実施形態では、３つの加速度計１５１２を使用して重力の方向が提供され、これにより、２つの角度（世界空間ピッチ及び世界空間ロール）の絶対基準が与えられる。
【０１８１】
磁力計は、ヘッドマウントディスプレイ付近の磁場の強度及び方向を測定する。一実施形態では、３つの磁力計１５１０がヘッドマウントディスプレイ内で使用され、世界空間ヨー角の絶対基準を確保する。一実施形態では、磁力計は、±８０マイクロステラの地磁場範囲を有するように設計される。磁力計は、金属の影響を受け、実際のヨーによる単調なヨー測定を提供する。磁場は環境内の金属により歪むことがあり、これによりヨー測定に歪みが生じる。必要に応じて、この歪みは、ジャイロスコープまたはカメラなどの他のセンサからの情報を用いて、較正することができる。一実施形態では、加速度計１５１２を磁力計１５１０と共に使用して、ヘッドマウントディスプレイ１０２の傾斜角及び方位が取得される。
【０１８２】
ジャイロスコープは、角運動量の原理に基づいて、方向（オリエンテーション）を測定または維持するためのデバイスである。一実施形態では、３つのジャイロスコープ１５１４は、慣性感知に基づいて、それぞれの軸（ｘ、ｙ、及びｚ）にわたる動きに関する情報を提供する。ジャイロスコープは、高速回転の検出に役立つ。しかし、ジャイロスコープは、絶対基準が存在しないと、時間の経過と共にドリフトし得る。このため、定期的にジャイロスコープを再設定する必要があり、再設定は、オブジェクトの視覚追跡、加速度計、磁力計などに基づく位置／方向特定といった、他の利用可能な情報を用いて行われ得る。
【０１８３】
実環境の画像及び画像ストリームを取り込むために、カメラ１５１６が提供される。後面カメラ（ユーザがヘッドマウントディスプレイ１０２のディスプレイを見ている時にユーザから離れる方向を向くカメラ）と、前面カメラ（ユーザがヘッドマウントディスプレイ１０２のディスプレイを見ている時にユーザ側を向くカメラ）とを含む複数のカメラが、ヘッドマウントディスプレイ１０２に含まれ得る。さらに、実環境内のオブジェクトの深度情報を感知するために、深度カメラ１５１８がヘッドマウントディスプレイ１０２に含まれ得る。
【０１８４】
一実施形態では、ＨＭＤの前面に統合されたカメラを使用して、安全に関する警告が提供され得る。例えば、ユーザが壁またはオブジェクトに接近している場合、ユーザに警告が与えられ得る。一実施形態では、室内の物理的オブジェクトの外観図をユーザに提供して、ユーザにそれらの存在を警告することができる。外観は、例えば仮想環境におけるオーバーレイであり得る。いくつかの実施形態では、例えば床にオーバーレイされた参照マーカの視界が、ＨＭＤユーザに提供され得る。例えば、マーカは、ユーザがゲームをプレイしている部屋の中心の場所の基準を、ユーザに提供し得る。これは、例えば部屋の中の壁または他のオブジェクトに衝突しないようにユーザが移動すべき場所の視覚情報を、ユーザに提供し得る。ユーザがＨＭＤを装着してゲームをプレイする、またはＨＭＤでコンテンツを操縦する時、安全性を高めるために、触覚的警告、及び／または音声警告も、ユーザに提供することができる。
【０１８５】
ヘッドマウントディスプレイ１０２は、音声出力を提供するスピーカ１５２０を含む。また、周囲環境からの音、ユーザによる発言などを含む実環境からの音声を取り込むために、マイクロフォン１５２２が含まれ得る。ヘッドマウントディスプレイ１０２は、ユーザに触覚フィードバックを提供する触覚フィードバックモジュール１５２４を含む。一実施形態では、触覚フィードバックモジュール１５２４は、触覚フィードバックをユーザに提供するために、ヘッドマウントディスプレイ１０２の動き及び／または振動を引き起こすことが可能である。
【０１８６】
ＬＥＤ１５２６は、ヘッドマウントディスプレイ１０２の状態の視覚的インジケータとして提供される。例えば、ＬＥＤは、バッテリレベル、電源オンなどを示し得る。ヘッドマウントディスプレイ１０２がメモリカードからの情報を読み出し、メモリカードに情報を書き込むことを可能にするために、カードリーダ１５２８が提供される。周辺デバイスの接続、または他のポータブルデバイス、コンピュータなどの他のデバイスへの接続を可能にするインターフェースの一例として、ＵＳＢインターフェース１５３０が含まれる。ヘッドマウントディスプレイ１０２の様々な実施形態では、ヘッドマウントディスプレイ１０２のより良い接続性を可能にするために、様々な種類のインターフェースのいずれかが含まれ得る。
【０１８７】
無線ネットワーク技術を介してインターネットへの接続を可能にするために、Ｗｉ−Ｆｉモジュール１５３２が含まれる。また、ヘッドマウントディスプレイ１０２は、他のデバイスへの無線接続を可能にするために、ブルートゥース（登録商標）モジュール１５３４を含む。他のデバイスへの接続のために、通信リンク１５３６も含まれ得る。一実施形態では、通信リンク１５３６は、無線通信に赤外線伝送を利用する。別の実施形態では、通信リンク１５３６は、他のデバイスと通信するために、様々な無線または有線伝送プロトコルのいずれかを利用し得る。
【０１８８】
ユーザに入力インターフェースを提供するために、入力ボタン／センサ１５３８が含まれる。ボタン、タッチパッド、ジョイスティック、トラックボールなどの様々な種類の入力インターフェースのうちのいずれかが含まれ得る。超音波技術を介した他のデバイスとの通信を促進するために、超音波通信モジュール１５４０が、ヘッドマウントディスプレイ１０２に含まれ得る。
【０１８９】
ユーザからの生理学的データの検出を可能にするために、生体センサ１５４２が含まれる。一実施形態では、生体センサ１５４２は、ユーザの皮膚を通してユーザの生体電気信号を検出するために、１つ以上の乾電極を含む。
【０１９０】
３次元の物理的環境に配置されたエミッタ（例えば赤外線基地局）からの信号に応答するために、光センサ１５４４が含まれる。ゲーム機は、光センサ１５４４及びエミッタからの情報を分析して、ヘッドマウントディスプレイ１０２に関連する位置及び方向情報を特定する。
【０１９１】
さらに、視線追跡システム１５６５が含まれ、これは、ユーザの視線追跡を可能にするように構成される。例えば、システム１５６５は、ユーザの目の画像を取り込む視線追跡カメラを含み得、取り込まれた画像はその後、ユーザの視線方向を特定するために分析される。一実施形態では、ユーザの視線方向に関する情報を利用して、映像レンダリングに影響が与えられ得る。例えば、中心窩レンダリング（あるいはフォービエイテッドレンダリング）による、より詳細な高解像度、中心窩領域（フォービアル領域、foveal region：ＦＶ）に表示されるパーティクルシステム効果の高解像度、中心窩領域の外側に表示されるパーティクルシステム効果の低解像度、またはユーザが見ている領域のより高速な更新を提供することにより、視線方向の映像レンダリングは、優先され得るまたは強調され得る。
【０１９２】
ヘッドマウントディスプレイ１０２の前述の構成要素は、ヘッドマウントディスプレイ１０２に含まれ得る単なる例示的な構成要素として説明されている。本開示の様々な実施形態では、ヘッドマウントディスプレイ１０２は、前述の様々な構成要素のうちのいくつかを含んでもよく、含まなくてもよい。本明細書で説明される本開示の態様を簡易にするために、ここでは記述されていないが当技術分野では既知の他の構成要素が、ヘッドマウントディスプレイ１０２の実施形態にはさらに含まれ得る。
【０１９３】
本開示の様々な実施形態では、様々なインタラクティブ機能を提供するために、前述のヘッドマウントデバイスが、ディスプレイに表示されるインタラクティブアプリケーションと併せて利用され得ることが、当業者には理解されよう。本明細書で説明される例示的な実施形態は、限定としてではなく、単に実施例として提供される。
【０１９４】
図１６は、本開示の様々な実施形態による、ゲームシステム１６００のブロック図である。ゲームシステム１６００は、ネットワーク１６１５を介して１つ以上のクライアント１６１０に対し、シングルプレーヤモードまたはマルチプレーヤモードなどで、映像ストリームを提供するように構成される。ゲームシステム１６００は通常、映像サーバシステム１６２０と、任意のゲームサーバ１６２５とを含む。映像サーバシステム１６２０は、１つ以上のクライアント１６１０に対し、最低限のサービス品質で映像ストリームを提供するように構成される。
例えば、映像サーバシステム１６２０は、ビデオゲームの状態またはビデオゲーム内の視点を変更するゲームコマンドを受信し、この状態変更を反映させた更新済映像ストリームを、最小の遅延時間でクライアント１６１０に提供し得る。映像サーバシステム１６２０は、映像ストリームを、まだ定義されていない形式を含む多種多様な代替的映像形式で提供するように構成され得る。さらに、映像ストリームは、多種多様なフレームレートでユーザに提示されるように構成された映像フレームを含み得る。通常のフレームレートは、毎秒３０フレーム、毎秒８０フレーム、及び毎秒８２０フレームである。しかし、本開示の代替的実施形態には、より高いまたはより低いフレームレートが含まれる。
【０１９５】
本明細書で個別に１６１０Ａ、１６１０Ｂなどと称されるクライアント１６１０には、ヘッドマウントディスプレイ、端末、パーソナルコンピュータ、ゲーム機、タブレットコンピュータ、電話、セットトップボックス、キオスク、無線デバイス、デジタルパッド、スタンドアロンデバイス、及び／またはハンドヘルドゲームプレイデバイスなどが含まれ得る。通常、クライアント１６１０は、符号化された（すなわち圧縮された）映像ストリームを受信し、映像ストリームを復号化し、得られた映像をユーザ、例えばゲームのプレーヤに提示するように構成される。符号化された映像ストリームを受信し、及び／または映像ストリームを復号化するプロセスは通常、クライアントの受信バッファに個々の映像フレームを格納することを含む。
映像ストリームは、クライアント１６１０に統合されたディスプレイ、またはモニタもしくはテレビなどの別個のデバイス上で、ユーザに提示され得る。クライアント１６１０は任意で、複数のゲームプレーヤに対応するように構成される。例えば、ゲーム機は、２人、３人、４人以上の同時プレーヤに対応するように構成され得る。これらのプレーヤのそれぞれは、別個の映像ストリームを受信し得る、または単一の映像ストリームが、各プレーヤのために特別に生成された、例えば各プレーヤの視点に基づいて生成されたフレームの領域を含み得る。
クライアント１６１０は、任意で地理的に分散される。ゲームシステム１６００に含まれるクライアントの数は、１つまたは２つから、数千、数万、またはそれ以上まで、幅広く異なり得る。本明細書で使用される用語「ゲームプレーヤ」は、ゲームをプレイする人を指すために用いられ、用語「ゲームプレイデバイス」は、ゲームをプレイするのに使用されるデバイスを指すために用いられる。いくつかの実施形態では、ゲームプレイデバイスは、協働してユーザにゲーム体験を届ける複数のコンピューティングデバイスを指し得る。例えば、ゲーム機及びＨＭＤは、映像サーバシステム１６２０と協働して、ＨＭＤを通して見るゲームを配信し得る。一実施形態では、ゲーム機は、映像サーバシステム１６２０から映像ストリームを受信し、ゲーム機は、レンダリングのためにＨＭＤに対し、映像ストリームまたは映像ストリームの更新を転送する。
【０１９６】
クライアント１６１０は、ネットワーク１６１５を介して映像ストリームを受信するように構成される。ネットワーク１６１５は、電話ネットワーク、インターネット、無線ネットワーク、電力線ネットワーク、ローカルエリアネットワーク、広域ネットワーク、及び／またはプライベートネットワークなどを含む任意の種類の通信ネットワークであり得る。典型的な実施形態では、映像ストリームは、ＴＣＰ／ＩＰまたはＵＤＰ／ＩＰなどの標準プロトコルを介して通信される。あるいは、映像ストリームは、独自の規格を介して通信される。
【０１９７】
クライアント１６１０の典型的な例には、プロセッサと、不揮発性メモリと、ディスプレイと、復号化ロジックと、ネットワーク通信機能と、入力デバイスとを備えるパーソナルコンピュータが挙げられる。復号化ロジックには、ハードウェア、ファームウェア、及び／またはコンピュータ可読媒体に格納されたソフトウェアが含まれ得る。映像ストリームを復号化（及び符号化）するシステムは、当技術分野において周知のものであり、使用される特定の符号化方式に応じて異なる。
【０１９８】
クライアント１６１０は、必須ではないが、受信した映像を修正するように構成されたシステムを、さらに含み得る。例えば、クライアントは、１つの映像をもう１つの映像上にオーバーレイする、及び／または映像を切り取るなど、さらなるレンダリングを実行するように構成され得る。例えば、クライアント１６１０は、Ｉフレーム、Ｐフレーム、及びＢフレームなどの様々な種類の映像フレームを受信し、これらのフレームを処理して、ユーザに表示するための画像にするように構成され得る。
いくつかの実施形態では、クライアント１６１０のメンバは、映像ストリームに対しさらなるレンダリング、シェーディング、または３Ｄ変換などの動作を実行するように構成される。クライアント１６１０のメンバは任意で、複数の音声ストリームまたは映像ストリームを受信するように構成される。クライアント１６１０の入力デバイスには、例えば、片手用ゲームコントローラ、両手用ゲームコントローラ、ジェスチャ認識システム、視線認識システム、音声認識システム、キーボード、ジョイスティック、ポインティングデバイス、力フィードバックデバイス、動作及び／または位置感知デバイス、マウス、タッチスクリーン、ニューラルインターフェース、カメラ、並びに／あるいは開発中の入力デバイスなどが、含まれ得る。
【０１９９】
クライアント１６１０が受信する映像ストリーム（及び任意で音声ストリーム）は、映像サーバシステム１６２０により生成及び提供される。本明細書の別の箇所でさらに説明されるように、この映像ストリームは、映像フレームを含む（及び音声ストリームは音声フレームを含む）。映像フレームは、ユーザに表示される画像に有意義に寄与するように構成される（例えば映像フレームは、好適なデータ構造の画素情報を含む）。本明細書で使用される用語「映像フレーム」は、ユーザに示される画像に寄与する、例えば作用するように構成された情報を主に含むフレームを指すために使用される。「映像フレーム」に関する本明細書の教示のほとんどは、「音声フレーム」にも適用することができる。
【０２００】
クライアント１６１０は通常、ユーザからの入力を受信するように構成される。これらの入力は、ビデオゲームの状態を変化させる、あるいはゲームプレイに作用するように構成されたゲームコマンドを含み得る。ゲームコマンドは、入力デバイスを使用して受信することができ、及び／またはクライアント１６１０上で実行されるコンピューティング命令により自動的に生成され得る。受信されたゲームコマンドは、ネットワーク１６１５を介してクライアント１６１０から、映像サーバシステム１６２０及び／またはゲームサーバ１６２５へ通信される。
例えば、いくつかの実施形態では、ゲームコマンドは、映像サーバシステム１６２０を介してゲームサーバ１６２５へ通信される。いくつかの実施形態では、ゲームコマンドの別個の複製が、クライアント１６１０から、ゲームサーバ１６２５及び映像サーバシステム１６２０へ通信される。ゲームコマンドの通信は、任意でコマンドの識別に依存する。ゲームコマンドは、任意で、クライアント１６１０Ａに音声ストリームまたは映像ストリームを提供するために使用される経路または通信チャネルとは異なる経路または通信チャネルを介して、クライアント１６１０Ａから通信される。
【０２０１】
ゲームサーバ１６２５は、任意で、映像サーバシステム１６２０とは異なるエンティティにより運用される。例えば、ゲームサーバ１６２５は、マルチプレーヤゲームの発行者により運用され得る。この例では、映像サーバシステム１６２０は、任意でゲームサーバ１６２５によりクライアントとして見られ、任意でゲームサーバ１６２５の視点から、従来技術のゲームエンジンを実行する従来技術のクライアントに見えるように構成される。映像サーバシステム１６２０とゲームサーバ１６２５との間の通信は、任意でネットワーク１６１５を介して行われる。よって、ゲームサーバ１６２５は、映像サーバシステム１６２０を含む複数のクライアントにゲーム状態情報を送信する従来技術のマルチプレーヤゲームサーバであり得る。
映像サーバシステム１６２０は、ゲームサーバ１６２５の複数のインスタンスと同時に通信するように構成され得る。例えば、映像サーバシステム１６２０は、異なるユーザに複数の異なるビデオゲームを提供するように構成され得る。これらの異なるビデオゲームのそれぞれは、異なるゲームサーバ１６２５によりサポートされ得る、及び／または異なるエンティティにより発行され得る。いくつかの実施形態では、映像サーバシステム１６２０のいくつかの地理的に分散されたインスタンスは、複数の異なるユーザにゲーム映像を提供するように構成される。映像サーバシステム１６２０のこれらのインスタンスのそれぞれは、ゲームサーバ１６２５の同じインスタンスと通信し得る。映像サーバシステム１６２０と１つ以上のゲームサーバ１６２５との間の通信は、任意で専用通信チャネルを介して行われる。例えば、映像サーバシステム１６２０は、ゲームサーバ１６２５に、これらの２つのシステム間の通信専用の高帯域幅チャネルを介して接続され得る。
【０２０２】
映像サーバシステム１６２０は少なくとも、映像源１６３０と、Ｉ／Ｏデバイス１６４５と、プロセッサ１６５０と、非一時的ストレージ１６５５とを備える。映像サーバシステム１６２０は、１つのコンピューティングデバイスを含み得る、または複数のコンピューティングデバイスに分散され得る。これらのコンピューティングデバイスは任意で、ローカルエリアネットワークなどの通信システムを介して接続される。
【０２０３】
映像源１６３０は、例えばストリーミング映像、または動画を形成する一連の映像フレームといった、映像ストリームを提供するように構成される。いくつかの実施形態では、映像源１６３０は、ビデオゲームエンジン及びレンダリングロジックを含む。ビデオゲームエンジンは、プレーヤからゲームコマンドを受信し、受信したコマンドに基づいてビデオゲームの状態の複製を保持するように構成される。このゲーム状態は、ゲーム環境内のオブジェクトの位置、並びに通常は視点を含む。ゲーム状態はまた、オブジェクトの特性、画像、色、及び／または質感も含み得る。
【０２０４】
ゲーム状態は通常、ゲーム規則、並びに移動、方向転換、攻撃、焦点の設定、インタラクション、及び／または使用などのゲームコマンドに基づいて、維持される。ゲームエンジンの一部は任意で、ゲームサーバ１６２５内に配置される。ゲームサーバ１６２５は、地理的分散クライアントを使用して複数のプレーヤから受信したゲームコマンドに基づいて、ゲームの状態の複製を保持し得る。これらの事例では、ゲーム状態はゲームサーバ１６２５により映像源１６３０に提供され、ゲーム状態の複製が格納され、レンダリングが行われる。ゲームサーバ１６２５は、ネットワーク１６１５を介して直接クライアント１６１０からゲームコマンドを受信してもよく、及び／または映像サーバシステム１６２０を介してゲームコマンドを受信してもよい。
【０２０５】
映像源１６３０は通常、レンダリングロジック、例えばハードウェア、ファームウェア、及び／またはストレージ１６５５などのコンピュータ可読媒体に格納されたソフトウェアを含む。このレンダリングロジックは、ゲーム状態に基づいて、映像ストリームの映像フレームを作成するように構成される。レンダリングロジックの全てまたは一部は、任意で、グラフィック処理ユニット（ＧＰＵ）内に配置される。レンダリングロジックは通常、ゲーム状態及び視点に基づいて、オブジェクト間の３次元空間的関係を特定するように、及び／または好適な質感などを適用するように構成された処理段階を含む。
レンダリングロジックは、未処理映像を生成し、次いで未加工映像は、通常、クライアント１６１０へ通信される前に符号化される。例えば、未処理映像は、Ａｄｏｂｅ  Ｆｌａｓｈ（登録商標）規格、．ｗａｖ、Ｈ．２６４、Ｈ．２６３、Ｏｎ２、ＶＰ６、ＶＣ‐１、ＷＭＡ、Ｈｕｆｆｙｕｖ、Ｌａｇａｒｉｔｈ、ＭＰＧ‐ｘ．Ｘｖｉｄ．ＦＦｍｐｅｇ、ｘ２６４、ＶＰ６−８、ｒｅａｌｖｉｄｅｏ、またはｍｐ３などに従って、符号化され得る。符号化プロセスは、リモートデバイス上のデコーダに配信するために任意でパッケージ化された映像ストリームを生成する。
映像ストリームは、フレームサイズ及びフレームレートにより特徴付けられる。典型的なフレームサイズには、８００×６００、１２８０×７２０（例えば７２０ｐ）、１０２４×７６８が挙げられるが、任意の他のフレームサイズも使用されてもよい。フレームレートは、１秒あたりの映像フレームの数である。映像ストリームは、様々な種類の映像フレームを含み得る。例えば、Ｈ．２６４規格は、「Ｐ」フレーム及び「Ｉ」フレームを含む。Ｉフレームは、ディスプレイデバイス上の全てのマクロブロック／画素を更新する情報を含み、一方、Ｐフレームは、その部分集合を更新する情報を含む。Ｐフレームは通常、Ｉフレームよりデータサイズが小さい。本明細書において使用される用語「フレームサイズ」は、フレーム内の画素数を指すことを意味する。用語「フレームデータサイズ」は、フレームを格納するのに必要なバイト数を指すために使用される。
【０２０６】
代替的な実施形態では、映像源１６３０は、カメラなどの映像記録デバイスを含む。このカメラを使用して、コンピュータゲームの映像ストリームに含めることができる遅延映像またはライブ映像が生成され得る。結果得られる映像ストリームには、レンダリングされた画像と、スチルカメラまたはビデオカメラを使用して記録された画像との両方が、任意で含まれる。映像源１６３０はまた、映像ストリームに含めるために事前に記録した映像を格納するように構成されたストレージデバイスも含み得る。映像源１６３０はまた、例えば人といったオブジェクトの動作または位置を検出するように構成された動作または位置感知デバイスと、検出された動作及び／または位置に基づいてゲーム状態の特定または映像の生成を行うように構成されたロジックとを含み得る。
【０２０７】
映像源１６３０は任意で、他の映像上に配置されるように構成されたオーバーレイを提供するように構成される。例えば、これらのオーバーレイには、コマンドインターフェース、ログイン指示、ゲームプレーヤへのメッセージ、他のゲームプレーヤの画像、他のゲームプレーヤの映像配信（例えばウェブカメラ映像）が含まれ得る。クライアント１６１０Ａがタッチスクリーンインターフェースまたは視線検出インターフェースを含む実施形態では、オーバーレイには、仮想キーボード、ジョイスティック、及び／またはタッチパッドなどが含まれ得る。オーバーレイの一例では、プレーヤの声が音声ストリームにオーバーレイされる。映像源１６３０は任意で、１つ以上の音声源をさらに含む。
【０２０８】
映像サーバシステム１６２０が複数のプレーヤからの入力に基づいてゲーム状態を維持するように構成された実施形態では、ビューの位置及び方向を含む視点は、各プレーヤで異なり得る。映像源１６３０は、任意で、各プレーヤの視点に基づいて、別個の映像ストリームを各プレーヤに提供するように構成される。さらに、映像源１６３０は、クライアント１６１０のそれぞれに、異なるフレームサイズ、フレームデータサイズ、及び／または符号化を提供するように構成され得る。映像源１６３０は任意で、３Ｄ映像を提供するように構成される。
【０２０９】
Ｉ／Ｏデバイス１６４５は、映像サーバシステム１６２０が、映像、コマンド、情報要求、ゲーム状態、視線情報、デバイス動作、デバイス位置、ユーザ動作、クライアント識別、プレーヤ識別、ゲームコマンド、セキュリティ情報、及び／または音声などの情報を、送信及び／または受信するように構成される。Ｉ／Ｏデバイス１６４５は通常、ネットワークカードまたはモデムなどの通信ハードウェアを含む。Ｉ／Ｏデバイス１６４５は、ゲームサーバ１６２５、ネットワーク１６１５、及び／またはクライアント１６１０と通信するように構成される。
【０２１０】
プロセッサ１６５０は、本明細書で論述される映像サーバシステム１６２０の様々な構成要素内に含まれるロジック、例えばソフトウェアを実行するように構成される。例えば、プロセッサ１６５０は、映像源１６３０、ゲームサーバ１６２５、及び／またはクライアントクオリファイア１６６０の機能を実行するように、ソフトウェア命令でプログラムされ得る。映像サーバシステム１６２０は任意で、プロセッサ１６５０の複数のインスタンスを含む。プロセッサ１６５０はまた、映像サーバシステム１６２０が受信したコマンドを実行するように、または本明細書において論述されるゲームシステム１６００の様々な要素の動作を調整するように、ソフトウェア命令でプログラムされ得る。プロセッサ１６５０は、１つ以上のハードウェアデバイスを含み得る。プロセッサ１６５０は、電子プロセッサである。
【０２１１】
ストレージ１６５５は、非一時的なアナログ及び／またはデジタルのストレージデバイスを含む。例えば、ストレージ１６５５は、映像フレームを格納するように構成されたアナログストレージデバイスを含み得る。ストレージ１６５５は、例えばハードドライブ、光学ドライブ、またはソリッドステートストレージといったコンピュータ可読デジタルストレージを含み得る。ストレージ１６５５は、映像フレーム、人工フレーム、映像フレームと人工フレームの両方を含む映像ストリーム、音声フレーム、及び／または音声ストリームなどを（例えば好適なデータ構造またはファイルシステムで）格納するように構成される。ストレージ１６５５は、任意で、複数のデバイスに分散される。いくつかの実施形態では、ストレージ１６５５は、本明細書の別の箇所で論述される映像源１６３０のソフトウェア構成要素を格納するように構成される。これらの構成要素は、必要に応じてすぐに提供できる形式で格納され得る。
【０２１２】
映像サーバシステム１６２０は任意で、クライアントクオリファイア１６６０をさらに備える。クライアントクオリファイア１６６０は、クライアント１６１０Ａまたは１６１０Ｂなどのクライアントの能力をリモートで特定するように構成される。これらの能力には、クライアント１６１０Ａ自体の能力、並びにクライアント１６１０Ａと映像サーバシステム１６２０との間の１つ以上の通信チャネルの能力の両方が含まれ得る。例えば、クライアントクオリファイア１６６０は、ネットワーク１６１５を介して、通信チャネルをテストするように構成され得る。
【０２１３】
クライアントクオリファイア１６６０は、手動または自動で、クライアント１６１０Ａの能力を特定（例えば発見）し得る。手動特定は、クライアント１６１０Ａのユーザと通信して、ユーザに能力を提供するように依頼することを含む。例えば、いくつかの実施形態では、クライアントクオリファイア１６６０は、クライアント１６１０Ａのブラウザ内に画像及び／またはテキストなどを表示するように構成される。一実施形態では、クライアント１６１０Ａは、ブラウザを含むＨＭＤである。別の実施形態では、クライアント１６１０Ａは、ＨＭＤ上に表示され得るブラウザを有するゲーム機である。表示されるオブジェクトは、ユーザに、クライアント１６１０Ａのオペレーティングシステム、プロセッサ、映像デコーダの種類、ネットワーク接続の種類、ディスプレイの解像度などの情報を入力するように要求する。ユーザにより入力された情報は、クライアントクオリファイア１６６０へ返信される。
【０２１４】
自動特定は、例えば、クライアント１６１０Ａ上でエージェントを実行することにより、及び／またはクライアント１６１０Ａにテスト映像を送信することにより、行われ得る。エージェントは、ウェブページに埋め込まれた、またはアドオンとしてインストールされたジャバスクリプトなどのコンピューティング命令を含み得る。エージェントは、任意で、クライアントクオリファイア１６６０により提供される。様々な実施形態では、エージェントは、クライアント１６１０Ａの処理能力、クライアント１６１０Ａの復号化及び表示能力、クライアント１６１０Ａと映像サーバシステム１６２０との間の通信チャネルの遅延時間信頼性及び帯域幅、クライアント１６１０Ａのディスプレイの種類、クライアント１６１０Ａ上に存在するファイアウォール、クライアント１６１０Ａのハードウェア、クライアント１６１０Ａ上で実行されるソフトウェア、及び／またはクライアント１６１０Ａ内のレジストリエントリなどを、明らかにすることができる。
【０２１５】
クライアントクオリファイア１６６０は、ハードウェア、ファームウェア、及び／またはコンピュータ可読媒体に格納されたソフトウェアを含む。クライアントクオリファイア１６６０は、任意で、映像サーバシステム１６２０の１つ以上の他の要素とは別個のコンピューティングデバイス上に配置される。例えば、いくつかの実施形態では、クライアントクオリファイア１６６０は、クライアント１６１０と映像サーバシステム１６２０の複数のインスタンスとの間の通信チャネルの特性を特定するように構成される。これらの実施形態では、クライアントクオリファイアが発見した情報を使用して、クライアント１６１０のうちの１つにストリーミング映像を配信するのに最適な映像サーバシステム１６２０のインスタンスが特定され得る。
【０２１６】
特定の実施形態は、ディスプレイ上の目標着地点を予測及び更新することにより、ユーザの目（複数可）の動きが、更新された目標着地点におけるディスプレイ上の中心窩領域の提示と一致することを明示するために提供されているが、これらは、限定ではなく例として説明されている。本開示を読んだ当業者は、本開示の趣旨及び範囲に含まれる追加の実施形態を実現するであろう。
【０２１７】
本明細書で定義される様々な実施形態は、本明細書で開示される様々な特徴を使用する特定の実施態様に組み合わされ得る、または組み立てられ得ることを、理解されたい。従って、提供される実施例は、いくつかの可能な実施例にすぎず、様々な要素を組み合わせることでより多くの実施態様を定義することが可能な様々な実施態様に限定されない。いくつかの実施例では、いくつかの実施態様は、開示されたまたは同等の実施態様の趣旨から逸脱することなく、より少ない要素を含んでもよい。
【０２１８】
本開示の実施形態は、ハンドヘルドデバイス、マイクロプロセッサシステム、マイクロプロセッサベースのまたはプログラム可能な一般消費者向け電気製品、小型コンピュータ、及びメインフレームコンピュータなどを含む様々なコンピュータシステム構成により実施され得る。本開示の実施形態はまた、有線ベースまたは無線のネットワークを介してリンクされるリモート処理デバイスによりタスクが行われる分散型コンピューティング環境においても、実施することができる。
【０２１９】
前述の実施形態を念頭に置いて、本開示の実施形態は、コンピュータシステムに格納されたデータを伴う様々なコンピュータ実施動作を用い得ることを、理解されたい。これらの動作は、物理量の物理的操作を要する動作である。本開示の実施形態の一部を形成する、本明細書で説明される動作のうちのいずれも、有用な機械動作である。本発明の実施形態はまた、これらの動作を実行するためのデバイスまたは装置に関する。装置は、必要な目的のために特別に構築され得る、または装置は、コンピュータに格納されたコンピュータプログラムにより選択的に有効化または構成される汎用コンピュータであり得る。具体的には、様々な汎用機械を、本明細書の教示に従って書かれたコンピュータプログラムと共に使用することができる、あるいは、必要な動作を実行するためにさらに特化した装置を構築するほうがより便利であり得る。
【０２２０】
本開示はまた、コンピュータ可読媒体上のコンピュータ可読コードとしても具現化することができる。コンピュータ可読媒体は、後でコンピュータシステムにより読み出され得るデータを格納できる任意のデータストレージデバイスである。コンピュータ可読媒体の例には、ハードドライブ、ネットクワーク接続ストレージ（ＮＡＳ）、読み出し専用メモリ、ランダムアクセスメモリ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、並びに他の光学及び非光学データストレージデバイスが挙げられる。コンピュータ可読媒体には、コンピュータ可読コードが分散方式で格納及び実行されるように、ネットワーク接続されたコンピュータシステム上に分散されたコンピュータ可読有形媒体が含まれ得る。
【０２２１】
方法動作は特定の順序で説明されたが、オーバーレイ動作の処理が所望の方法で実行される限り、動作間に他の維持管理動作が実行されてもよく、または動作がわずかに異なる時間に起こるように調整されてもよく、またはシステム内に動作を分散することで、様々な処理関連間隔で処理動作が起こることを可能にしてもよいことを、理解されたい。
【０２２２】
前述の開示は、理解を明確にするためにある程度詳細に説明されたが、添付の特許請求の範囲内で特定の変更及び修正を実施できることは明らかであろう。従って、本実施形態は、限定ではなく例示としてみなされるべきであり、本開示の実施形態は、本明細書に提供される詳細に限定されるものではなく、添付の特許請求の範囲内及び均等物内で変更されてもよい。
【図１Ａ】
2021518197.tif 000003
【図１Ｂ】
2021518197.tif 000004
【図１Ｃ】
2021518197.tif 000005
【図２Ａ】
2021518197.tif 000006
【図２Ｂ】
2021518197.tif 000007
【図２Ｃ】
2021518197.tif 000008
【図３Ａ】
2021518197.tif 000009
【図３Ｂ】
2021518197.tif 000010
【図３Ｃ】
2021518197.tif 000011
【図３Ｄ】
2021518197.tif 000012
【図３Ｅ】
2021518197.tif 000013
【図４Ａ】
2021518197.tif 000014
【図４Ｂ】
2021518197.tif 000015
【図４Ｃ】
2021518197.tif 000016
【図４Ｄ】
2021518197.tif 000017
【図４Ｅ】
2021518197.tif 000018
【図５Ａ】
2021518197.tif 000019
【図５Ｂ】
2021518197.tif 000020
【図６Ａ】
2021518197.tif 000021
【図６Ｂ】
2021518197.tif 000022
【図６Ｃ】
2021518197.tif 000023
【図６Ｄ】
2021518197.tif 000024
【図６Ｅ】
2021518197.tif 000025
【図６Ｆ】
2021518197.tif 000026
【図６Ｇ】
2021518197.tif 000027
【図７】
2021518197.tif 000028
【図８Ａ】
2021518197.tif 000029
【図８Ｂ】
2021518197.tif 000030
【図８Ｃ】
2021518197.tif 000031
【図８Ｄ】
2021518197.tif 000032
【図８Ｅ】
2021518197.tif 000033
【図８Ｆ】
2021518197.tif 000034
【図８Ｇ】
2021518197.tif 000035
【図９Ａ】
2021518197.tif 000036
【図９Ｂ】
2021518197.tif 000037
【図９Ｃ】
2021518197.tif 000038
【図１０Ａ】
2021518197.tif 000039
【図１０Ｂ】
2021518197.tif 000040
【図１０Ｃ】
2021518197.tif 000041
【図１０Ｄ】
2021518197.tif 000042
【図１１Ａ】
2021518197.tif 000043
【図１１Ｂ】
2021518197.tif 000044
【図１２Ａ】
2021518197.tif 000045
【図１２Ｂ】
2021518197.tif 000046
【図１２Ｃ】
2021518197.tif 000047
【図１３Ａ】
2021518197.tif 000048
【図１３Ｂ】
2021518197.tif 000049
【図１４】
2021518197.tif 000050
【図１５】
2021518197.tif 000051
【図１６】
2021518197.tif 000052
【国際調査報告】
2021518197.tif 000053
2021518197.tif 000054
2021518197.tif 000055