(57)【要約】  仮想位置情報が、ユーザーの仮想位置チェックイン要求の一部として１つ又は複数のデバイスで受け取られる。仮想位置情報は、仮想環境におけるユーザーの仮想位置を特定する。仮想環境におけるユーザーの仮想位置の通知が、仮想環境の外部の１人又は複数の追加のユーザーに１つ又は複数のデバイスから送られる。１つ又は複数のゲームプレイ機能もまた、仮想位置に基づいて、ユーザーにとって利用可能にすることができる。
2015509767.tif 000002
【特許請求の範囲】
【請求項１】
１つ又は複数のデバイスにおいて、仮想環境におけるユーザーの仮想位置を特定する仮想位置情報を受け取るステップと、
前記１つ又は複数のデバイスから、前記仮想環境におけるユーザーの仮想位置の通知を前記仮想環境の外部の１人又は複数のさらなるユーザーに送るステップと
を含む方法。
【請求項２】
前記通知は、前記仮想位置を埋め込むユーザー選択可能なリンクを含む請求項１に記載の方法。
【請求項３】
前記ユーザー選択可能なリンクについてのユーザー選択について追加のデバイスから指示を受け取ることに応答して、前記追加のデバイスに、前記ユーザー選択可能なリンクによって特定されるゲームタイトルのゲームの前記仮想位置へジャンプするように通知するステップをさらに含む請求項２に記載の方法。
【請求項４】
前記通知が、前記ユーザーが助けを求めているという指示を含む請求項１に記載の方法。
【請求項５】
前記通知におけるリンクについての受け手の選択の指示に応答して、前記受け手のデバイスに、前記ユーザーのために前記仮想環境を実現するゲームを実行するデバイスと同じモードで前記仮想環境を実現するゲームの実行を開始するように通知するステップをさらに含み、前記受け手は前記１人又は複数のさらなるユーザーのうちの１人である請求項４に記載の方法。
【請求項６】
前記通知におけるリンクについての受け手の選択の指示に応答して、前記受け手のデバイスに、前記デバイスの構成に応じたモードで前記仮想環境を実現するゲームの実行を開始するように通知するステップをさらに含み、前記受け手は前記１人又は複数のさらなるユーザーのうちの１人である請求項４に記載の方法。
【請求項７】
前記受け取るステップ及び前記送るステップの前に、表示のためのヒートマップを生成するステップをさらに含み、前記ヒートマップは仮想環境内の複数のユーザーの仮想位置を特定する請求項１に記載の方法。
【請求項８】
コンピューティングデバイスの１つ又は複数のプロセッサーによって実行されると、前記１つ又は複数のプロセッサーに、
第１のユーザーについての仮想位置チェックイン要求を受け取らせ、前記仮想位置チェックイン要求は、仮想環境内の前記第１のユーザーの第１の仮想位置を特定する仮想位置情報を含み、
前記仮想位置チェックイン要求において特定される前記第１の仮想位置に基づいて、１つ又は複数のゲームプレイ機能を提供させる
複数の命令を格納した１つ又は複数のコンピューター読み取り可能な記憶媒体。
【請求項９】
前記複数の命令はさらに、前記１つ又は複数のプロセッサーに、
現実世界における前記第１のユーザーの物理的な位置を特定する情報を受け取らせ、
前記物理的な位置に対応する第２の仮想位置を決定させ、
前記第１の仮想位置及び前記第２の仮想位置が同じ仮想位置である場合にのみ、前記１つ又は複数のゲームプレイ機能を提供させる
請求項８に記載の１つ又は複数のコンピューター読み取り可能な記憶媒体。
【請求項１０】
前記複数の命令はさらに、前記１つ又は複数のプロセッサーに、
現実世界における第２のユーザーの物理的な位置を特定する情報を受け取らせ、
前記物理的な位置に対応する第２の仮想位置を決定させ、
前記第１の仮想位置及び前記第２の仮想位置が同じ仮想位置である場合にのみ、前記１つ又は複数のゲームプレイ機能を提供させる
請求項８に記載の１つ又は複数のコンピューター読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想位置チェックイン（virtual location check-in）に関する。
【背景技術】
【０００２】
[0001]コンピューターゲームは、コンピューティング技術が進歩するにつれて進化してきた。コンピューターゲームはかつては比較的単純なシングルプレイヤーゲームであったが、多くは、多数のプレイヤーがオンラインで同時にプレイすることを可能にするいくつかの多人数同時参加型オンライン（ＭＭＯ）ゲームを含む複雑な多人数参加型のゲームとなるように進化してきた。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかし、このようなゲームのサイズ及び複雑さを考えると、プレイヤーがこのようなゲームの中で操作してゲームを使用することは困難であることがあり、このようなゲームをプレイするときにユーザーの不満につながる可能性がある。
【課題を解決するための手段】
【０００４】
[0002]この概要は、詳細な説明で以下にさらに説明される概念の選択を簡略化した形式で紹介するために設けられる。この概要は、特許請求される主題の重要な特徴又は不可欠な特徴を特定することを意図したものではなく、特許請求される主題の範囲を限定するために使用されることも意図されない。
【０００５】
[0003]１つ又は複数の態様によれば、仮想位置情報が１つ又は複数のデバイスにおいて受け取られる。仮想位置情報は、仮想環境におけるユーザーの仮想位置を特定する。仮想環境におけるユーザーの仮想位置の通知が、仮想環境の外部の１人又は複数のさらなるユーザーに送られる。
【０００６】
[0004]１つ又は複数の態様によれば、ユーザーの仮想位置チェックイン要求（virtual location check-in request）が受け取られる。仮想位置チェックイン要求は、仮想環境におけるユーザーの仮想位置を特定する仮想位置情報を含む。仮想位置チェックイン要求において特定された仮想位置に基づいて、１つ又は複数のゲームプレイ機能が提供される。
【０００７】
[0005]同様の構成を参照するために図面全体にわたって同じ番号が使用される。
【図面の簡単な説明】
【０００８】
【図１】[0006]１つ又は複数の実施例による、仮想位置チェックインを実施する例示的なシステムを示す。
【図２】[0007]１つ又は複数の実施例による、仮想位置チェックインを実施する別の例示的なシステムを示す。
【図３】[0008]１つ又は複数の実施例による、ユーザーの仮想位置が追跡されるかどうかをユーザーが選択することを可能にするためにユーザーに対して表示することができる例示的なユーザーインターフェイスを示す。
【図４】[0009]１つ又は複数の実施例による、仮想位置チェックインを実施するための例示的なプロセスを示すフローチャートである。
【図５】[0008]本明細書に記載の様々な技術を実施することができる例示的なシステムを示す。
【発明を実施するための形態】
【０００９】
[0011]仮想位置チェックインが本明細書において説明される。プログラム（例えば、ゲーム）のユーザーは、様々な方法で特定（識別）されて使用されるプログラムの仮想環境においてユーザーの仮想位置を有するように、チェックインすることができる。仮想位置は、同じプログラム及び／又は異なるプログラムの他のユーザーに提供することができ、それらの他のユーザーが特定のユーザーに加わり及び／又は補助することを可能にする。仮想環境におけるユーザーの仮想位置はまた、現実世界における物理的位置と比較することができ、現実の世界における物理的な位置に対応する仮想位置にいつアバターが存在するかについての判断がなされる。現実世界における物理的位置に対応する仮想位置に自身のアバターがあるとき、様々なプログラム機能はその特定のユーザーにとって利用可能にすることができる。
【００１０】
[0012]図１は、１つ又は複数の実施例による、仮想位置チェックインを実施する例示的なシステム１００を示す。システム１００は、ネットワーク１０６を介して互いに通信することができる複数（ｘ）のゲームデバイス１０２及びオンラインゲームサービス１０４を含む。ネットワーク１０６は、インターネット、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、パーソナルエリアネットワーク（ＰＡＮ）、電話網、イントラネット、他の公衆及び／又は専用ネットワーク、それらの組み合わせなどを含む様々な異なるネットワークとすることができる。
【００１１】
[0013]各ゲームデバイス１０２は、仮想環境を実施するプログラムをユーザーが実行することを可能にする、様々な異なるタイプのデバイスとすることができる。これらのプログラムはゲームとして本明細書において説明され、本明細書で説明される仮想位置チェックイン技術は、一般にゲームとも呼ばれていなくても、仮想環境を実施又は使用する任意のプログラムで使用することができることに留意されたい。ゲームは、スポーツゲーム、戦略ゲーム、アドベンチャーゲーム、シミュレーションゲームなどの、様々な競争、チャレンジ、及び／又は他の目的を含む、様々な異なるシングルプレイヤー及び／又はマルチプレイヤーゲームのうちの任意のものであってもよい。ゲームデバイス１０２のうちの異なるデバイスは、デバイスのタイプ又は構成が同一であってもよいし異なっていてもよい。例えば、ゲームデバイス１０２は、ゲームコンソール、セルラー電話又は他の無線電話、テレビ又は他のディスプレイデバイス、ディスプレイデバイスと通信するように結合されるセットトップボックス、デスクトップコンピューター、ラップトップ又はネットブックコンピューター、タブレット又はノートパッドコンピューター、移動局、娯楽機器、自動車用コンピューターなどであってもよい。
【００１２】
[0014]オンラインゲームサービス１０４は、ゲームデバイス１０２のユーザーによる１つ又は複数の異なるゲームのプレイを容易にする。ゲームサービス１０４は、ネットワーク１０６を介してサービス１０４にアクセスするゲームデバイス１０２（及び／又は他のゲームデバイス１０２）のために、オンラインサービスと呼ばれる。オンラインゲームサービス１０４は、各々が互いに通信することができる、アカウントアクセスサービス１１０、ゲームプレイサービス１１２、及び仮想位置サービス１１４を含む。サービス１１０、１１２、及び１１４は、オンラインゲームサービス１０４内で及び／又はゲームデバイス１０２を介して互いに通信することができる。
【００１３】
[0015]アカウントアクセスサービス１１０は、オンラインゲームサービス１０４のユーザーアカウントをサポートする様々な機能を提供する。異なるユーザー及び／又はゲームデバイス１０２は、通常、オンラインゲームサービス１０４に異なるアカウントを持っており、アカウントアクセスサービス１１０を介して自分のアカウントにログインすることができる。ユーザー又はゲームデバイス１０２は、ＩＤ（例えば、ユーザー名、電子メールアドレスなど）及びパスワード、デジタル証明書又はスマートカードからの他のデータなどの資格情報を提供して、アカウントにログインする。アカウントアクセスサービス１１０は、資格情報を検証又は認証して、資格情報が検証又は認証された場合にはユーザー又はゲームデバイス１０２がアカウントにアクセスすることを可能にし、資格情報が検証されないか又は認証されない場合にはユーザー又はゲームデバイス１０２がアカウントにアクセスすることを禁止する。ユーザーの資格情報が認証されると、ユーザーは、オンラインゲームサービス１０４が提供する他のサービスを使用することができる。アカウントアクセスサービス１１０はまた、資格情報に対する変更を許可すること、新しいアカウントを開設すること、アカウントを除去することなど、様々なさらなるアカウント管理機能を提供することができる。
【００１４】
[0016]ゲームプレイサービス１１２は、ゲームデバイス１０２のユーザーによる１つ又は複数の異なるゲームのプレイをサポートする様々な機能を提供する。様々なゲームタイトル（例えば、１つ又は複数の異なるスポーツゲームタイトル、１つ又は複数の異なる戦略ゲームタイトル、１つ又は複数の異なる旅行又は検索ゲームタイトルなど）をゲームプレイサービス１１２によってサポートすることができる。ゲームタイトルとは、実行されるとゲームを実行する命令のセット（例えば、特定のベンダーのテニスゲームのための命令のセット、特定のベンダーの特定のレーシングゲームのための命令セットなど）を指す。ゲームタイトルについての特定の実行もまたゲームと呼ばれる。同じゲームタイトルの複数のゲームを異なるユーザーが同時にプレイすることができ、各ゲームはゲームタイトルの別個の実行である。ゲームデバイス１０２の単一のユーザーがゲームをプレイしゲーム中の１つ又は複数のキャラクターを制御し、ゲーム中の他のキャラクターがゲーム自体によって制御される（これらの他のキャラクターはノンプレイヤーキャラクターとも呼ばれる）シングルプレイヤーゲームとしてゲームを実行しプレイすることができる。ゲームはまた、１つ又は複数のゲームデバイス１０２の複数のユーザーが同じゲームをプレイし、各ユーザーがゲーム内の１つ又は複数のキャラクターを制御するマルチプレイヤーゲームとして実行してプレイすることができる。マルチプレイヤーゲームでは、１つ又は複数のさらなるキャラクターをゲーム自体によって制御することもできる。
【００１５】
[0017]ゲームは、通常、１つ又は複数のプログラムを実行することにより実行される。これらのゲームを実行するために実行されるプログラムは、ゲームデバイス１０２及び／又はゲームプレイサービス１１２上で実行されてもよい。ゲームデバイス１０２は、ゲームのための１つ又は複数のプログラムを実行して、ゲームをプレイする間、ゲームデバイス１０２のユーザー間の通信を容易にするために及び／又はゲームをプレイするためのさらなるデータ（及び／又はプログラム）を提供もしくは取得するために、ゲームプレイサービス１１２と通信することができる。代替的に（又はさらに）、ゲームプレイサービス１１２は、ゲームのための１つ又は複数のプログラムを実行して、ゲームデバイス１０２のユーザーから入力を受け取り、ゲームデバイス１０２のユーザーに対する表示又は他の提示のために生成されるべき出力を示すデータを返すことができる。ゲームデバイス１０２及び／又はゲームプレイサービス１１２上で実行される１つ又は複数のプログラムとして本明細書で説明されるが、ゲームはゲームデバイス１０２及び／又はゲームプレイサービス１１２においてハードウェアで少なくとも部分的に実施されてもよいことに留意すべきである。
【００１６】
[0018]１つ又は複数の実施例において、ゲームはゲームデバイス１０２上で実行されるプログラムであり、ゲームプレイサービス１１２が異なるゲームデバイス１０２間の通信を管理する。他の実施例において、ゲームはゲームデバイス１０２上で実行されるプログラムであり、ゲームプレイサービス１１２は異なるゲームデバイス１０２間の通信を確立することを容易にする。２つのゲームデバイス１０２間の通信が確立された後、ゲームプレイサービス１１２を伴うことなく、これら２つのゲームデバイス１０２間で通信を行うことができる。
【００１７】
[0019]仮想位置サービス１１４は、同一の及び／又は異なるゲームタイトルの異なるゲームのために仮想位置機能を提供する仮想位置システム１１６を含む。この仮想位置機能は、仮想環境内の様々な仮想位置を特定することを可能にする。仮想環境とは、現実世界の環境ではなく１つ又は複数のゲーム中に存在する環境を指す。仮想位置とは、現実世界における物理的位置ではなく、仮想環境内の位置を指す。図示される例では、仮想位置システム１１６は、ゲームプレイサービス１１２とは別のサービスにおいて実施され、複数の異なるゲームタイトルにわたって仮想位置機能をサポートする。代替的に、仮想位置システム１１６は、１つのゲームタイトルの仮想位置機能をサポートすることができ、必要に応じてゲームプレイサービス１１２の一部として含めることができる。
【００１８】
[0020]１つ又は複数の実施例において、ユーザーの仮想位置は仮想環境でのユーザーの仮想位置に対応する。ユーザーのアバターをユーザーに対して表示することができ、あるいは、アバターが表示されなくてもよい（例えば、一人称の視界がユーザーに対して表示されてもよい）。アバターとは、ゲーム内のユーザーを表すオブジェクトを指す。アバターは、しばしばユーザーのグラフィック表現であるが、これに代えて、車両、球などの他の様々な形態を有することができる。
【００１９】
[0021]サービス１１０、１１２、及び１１４の各々は、１つ又は複数のコンピューティングデバイスを用いて実現することができる。通常、これらのコンピューティングデバイスはサーバーコンピューターであるが、様々な異なるタイプのコンピューティングデバイスのうちのいずれか（例えば、ゲームデバイス１０２に関連して上述したデバイスのタイプのいずれか）を代替的に使用することができる。サービス１１０、１１２、及び１１４の各々は、異なるコンピューティングデバイスを使用して実施することができ、又は代替的に、サービス１１０、１１２及び１１４のうちの１つ又は複数は、同一のコンピューティングデバイスを用いて実施することができる。
【００２０】
[0022]また、サービス１１０、１１２、及び１１４は別個のサービスとして図示されるが、代替的に、これらのサービスのうちの複数のものは単一のサービスとして一緒に実施することができる。例えば、ゲームプレイサービス１１２及び仮想位置サービス１１４は単一のサービスとして実施することができる。さらに、サービス１１０、１１２、及び１１４のうちの１つ又は複数の機能は、複数のサービスに分離することができる。また、オンラインゲームサービス１０４の機能は、複数のサービスに分離することができる。たとえば、オンラインゲームサービス１０４は、アカウントアクセスサービス１１０及びゲームプレイサービス１１２を含むことができ、別のサービスが仮想位置サービス１１４を含むことができる。
【００２１】
[0023]図２は、１つ又は複数の実施例による、仮想位置チェックインを実施する例示的なシステム２００を示す。システム２００は、仮想位置システム２０２及び２つのゲーム２０４、２０６を含む。例えば、仮想位置システムは、図１の仮想位置システム１１６であってもよい。ゲーム２０４、２０６は、同じゲームタイトルの異なるゲーム、又は異なるゲームタイトルの異なるゲームであってもよい。ゲーム２０４、２０６は、ゲームデバイス（例えば、図１のゲームデバイス１０２）及び／又はオンラインゲームサービス（例えば、図１のオンラインゲームサービス１０４）上で実施することができる。システム２００は説明を容易にするために２つのゲームに関連して説明されるが、任意の数のゲームが仮想位置システム２０２と通信することができることに留意すべきである。
【００２２】
[0024]仮想位置システム２０２は、仮想位置追跡モジュール２１２、仮想位置通知モジュール２１４、位置変換モジュール２１６、及び仮想位置チェックインモジュール２１８を含む。モジュール２１２−２１８は別個のモジュールとして示されているが、代替的に、モジュール２１２−２１８のうちの複数のものを単一のモジュールとして一緒に実施することができる。さらに及び／又は代替的に、モジュール２１２−２１８のうちの１つ又は複数の機能は、複数のモジュールに分離することができる。
【００２３】
[0025]システム２００は様々な異なるデバイスで実施することができる。例えば、システム２００は、図１の１つ又は複数のゲームデバイス１０２で、図１のオンラインゲームサービス１０４で、又は１つもしくは複数のゲームデバイス１０２で部分的に及びオンラインゲームサービス１０４で部分的に、実施することができる。したがって、本明細書で説明される仮想位置チェックイン技術は、オンラインゲームサービス及び／又は個々のゲームデバイスにおいて実施することができる。
【００２４】
[0026]１つ又は複数の実施例では、仮想位置システム２０２は、ゲーム２０４及び２０６とは別に、ゲーム２０４及び２０６に対して利用可能にされるサービスの一部として実施される。代替的に、仮想位置システム２０２は（少なくとも部分的に）ゲーム２０４及び２０６において実施することができる。したがって、例えば、ゲーム２０４及び／又はゲーム２０６は、モジュール２１２−２１８のうちの１つ又は複数を含むことができ、又はモジュール２１２−２１８によって実行されるものとして本明細書で説明される機能の少なくとも一部を実施することができる。
【００２５】
[0027]仮想位置追跡モジュール２１２は、仮想環境におけるユーザーの仮想位置を追跡することを可能にする。ユーザーの仮想位置の記録はモジュール２１２によって保持することができ、又は仮想位置は別のモジュール（例えば、ゲーム２０４及び／又は２０６のモジュール）に提供されてそれによって保持されてもよい。以下でより詳細に説明するように、様々なゲームプレイ機能（gameplay features）は、ユーザーの仮想位置に基づいてユーザーにとって利用可能にすることができる。
【００２６】
[0028]仮想位置通知モジュール２１４は、仮想環境におけるユーザーの仮想位置の通知を送ることを可能にする。以下でより詳細に説明されるように、これらの通知は、様々な他のサービスやユーザーに送ることができる。以下により詳細に説明するように、これらの通知はまた、他のユーザーがその仮想位置でユーザーに加わることを可能にする仮想位置の指示（indication）を含むことができる。
【００２７】
[0029]位置変換モジュール２１６は、現実世界の位置を仮想位置に変換すること及び／又はその逆を行うことを可能にする。以下でより詳細に説明するように、この変換により、様々なゲームプレイ機能をユーザーにとって利用可能にすることができる。
【００２８】
[0030]仮想位置チェックインモジュール２１８は、ゲーム２０４及び２０６が仮想位置情報を仮想位置システム２０２に提供することを可能にする。仮想位置情報は、通常、仮想位置チェックイン要求の一部として提供されるが、代替的に、他の方法で提供することができる。
【００２９】
[0031]仮想位置システム２０２は仮想環境マッピングシステムをサポートする。仮想環境マッピングシステムは、仮想環境内の仮想位置を特定するために使用される座標系を定義する。この座標系は、通常、３次元（３Ｄ）座標系であるが、代替的に、他の数の次元を含んでもよい。１つ又は複数の実施例において、座標系は、ｘ、ｙ、及びｚ次元（例えば、水平、垂直、及び奥行き）を含むデカルト座標系である。代替的に、球面座標系（次元として半径方向距離、傾斜角、及び方位角を有する）、地理的座標系（次元として緯度、経度、及び高度を有する）などの様々な他の座標系を使用することができる。
【００３０】
[0032]異なるゲームタイトルは、同じ座標系を使用することができ、あるいは異なる座標系を使用することができる。異なるゲームタイトルが異なる座標系を使用する状況において、異なるゲームタイトルにおける座標を他のゲームタイトルの座標系へと変換するために、変換技術が（例えば、仮想位置追跡モジュール２１２又は仮想位置チェックインモジュール２１８によって）使用される。この変換技術は、異なる座標系に基づく、様々な異なるルール、基準、アルゴリズムなどを含むことができる。
【００３１】
[0033]ゲーム２０４及び２０６は、同一の仮想環境及び／又は異なる仮想環境を実施することができる。例えば、異なるゲームタイトルは、ユーザーがプレイをする独自の個々の仮想環境を実施することができ、又は、ユーザーがプレイをする共通の仮想環境を共有することができる。さらに、仮想環境内で複数の異なるマップをサポートすることができる。それぞれの異なるマップは、ゲームタイトルによって実施される仮想環境のうちの異なるセクション又は部分を指す。サポートされるマップの数及びそれらの異なるマップの性質（例えば、異なるセクション又は部分がどのように特定又は決定されるか）は、ゲームタイトルの設計者や開発者の要望に基づいて、ゲームタイトルにより異なっていてもよい。
【００３２】
[0034]仮想位置チェックインモジュール２１８は、ゲーム２０４及び２０６が仮想位置システム２０２に仮想位置情報を提供することを可能にする。ゲーム２０４及び２０６は、仮想位置システム２０２に仮想位置を提供する（チェックインする）ために、仮想位置チェックイン要求を行う。１つ又は複数の実施例において、仮想位置チェックインモジュール２１８は、システム２０２に仮想位置情報を提供するためにゲーム２０４及び２０６によって呼び出すことができるアプリケーションプログラミングインターフェイス（ＡＰＩ）を実施する。代替的に、ゲーム２０４及び２０６は、他のデータ転送機構を使用して、システム２０２に仮想位置情報を提供することができる。
【００３３】
[0035]仮想位置情報は、仮想環境におけるユーザーの仮想位置を特定する。１つ又は複数の実施例では、仮想位置情報は、ユーザーの仮想位置を示す仮想環境の座標系における３次元の値を含む。仮想位置情報はまた、仮想位置及び／又は仮想環境に関するさらなる情報を含むことができる。例えば、仮想位置情報は、特定された仮想位置が存在する仮想環境を実現するゲームタイトルを識別するゲームタイトル識別子を含むことができる。代替的に、特定された仮想位置が存在する仮想環境を実現するゲームタイトルは、仮想位置情報を提供する場合に固有のものであってもよい（例えば、異なる仮想位置チェックインモジュール２１８は異なるゲームタイトルに対して使用することができ、異なるＡＰＩメソッドを異なるゲームタイトルに対して表示させることができる、など）。別の例として、仮想位置情報は、特定された仮想位置が存在する仮想環境のマップを識別するマップ識別子を含むことができる。代替的に、特定された仮想位置が存在する仮想環境のマップは仮想位置情報を提供する場合に固有であってもよく（例えば、異なる仮想位置チェックインモジュール２１８を異なるマップに対して使用することができ、異なるＡＰＩメソッドを異なるマップに対して表示することができる、など）、又はゲームタイトルは単一のマップを有してもよく、その場合、マップ識別子が仮想位置情報に含まれる必要がない。
【００３４】
[0036]ゲーム２０４、２０６は、ユーザーの仮想位置情報を様々なときに仮想位置チェックインモジュール２１８に提供することができる。例えば、ゲーム２０４、２０６は、ユーザーがゲーム２０４、２０６をプレイするときに、規則的又は不規則な間隔で、ユーザーの仮想位置情報を提供することができる。ゲーム２０４、２０６はまた、自身の仮想位置が提供されることをユーザー入力が要求すること、ユーザーが仮想環境内の特定の仮想位置にいること、ゲーム中で特定の活動が実行されたこと、ゲーム中で特定の成果や目標が達成されたことなど、特定のイベントに応答して、仮想位置情報を提供することができる。
【００３５】
[0037]仮想位置チェックインモジュール２１８によって受け取られた仮想位置情報は、様々な方法で使用することができる。１つ又は複数の実施例では、仮想位置情報は、仮想位置追跡モジュール２１２によって保持される。仮想位置情報はまた、仮想位置情報を提供したゲーム２０４、２０６によって保持することができる（例えば、ゲーム２０４、２０６はそれが提供した仮想情報の記録を保持することができ、仮想位置追跡モジュール２１２から記録された仮想情報を（要求に応じるなどして）受け取ることができる）。
【００３６】
[0038]仮想位置チェックインモジュール２１８によって受け取られた仮想位置情報はまた、仮想環境におけるユーザーの仮想位置についての通知を送るために仮想位置通知モジュール２１４によって使用することができる。これらの通知は、様々な他のユーザーに送ることができ、通知が送られる特定の１人以上のユーザーは、様々な方法で決定することができる。これらの他のユーザーが仮想環境の外部にあることがあり、しばしば外部にあることに留意すべきである。仮想環境の外部のユーザーとは、仮想環境を実施するゲームを現在プレイしていないユーザーを指す。
【００３７】
[0039]１つ又は複数の実施例では、仮想位置情報が提供されるユーザーは、（例えば、ゲーマータグ、電子メールアドレス、又は他のユーザー識別子によって）他のユーザーを識別する。他のユーザーは、仮想位置情報が提供されるユーザーがゲームをプレイし始めたとき、仮想位置情報が（例えば、図１のオンラインゲームサービス１０４の）構成又は選好設定の一部として提供されたときなど、様々なときに識別することができる。代替的に、仮想位置情報が提供されているユーザーの友人であるユーザー（例えば、図１のオンラインゲームサービス１０４によって識別されたり、ソーシャルネットワーキングサービスによって識別されたりする）、そのような通知を受け取るように登録したか又は他の方法で要求したユーザーなどの、通知が送られる特定の１人又は複数のユーザーは、他の方法で決定することができる。
【００３８】
[0040]仮想位置通知モジュール２１４は、任意に１つ又は複数の他のサービスを活用して、様々な方法で通知を送ることができる。例えば、通知は、ＳＭＳ（ショートメッセージサービス）メッセージ、ＭＭＳ（マルチメディアメッセージサービスメッセージ）、電子メールメッセージ、マイクロブログサービスメッセージ（例えば、ツイート）などを介して送ることができる。このような通知は、周知の様々な技術のいずれかを使用して受け手に対して表示することができる。通知はまた、ゲーム内の通信メカニズムを介して送り、受け手にゲーム内で表示することができる。例えば、通知が表示される特定のメッセージウィンドウ又はフレームを作成することができ、通知は、ゲーム内のパネル、メッセージが表示される他の位置などに表示することができる。
【００３９】
[0041]通知は、仮想位置情報が提供されているユーザー、仮想位置情報が提供されているユーザーによってプレイされているゲームタイトル、仮想位置を含む仮想環境などに関する様々な情報を含んでもよい。例えば、通知は、仮想位置情報が提供されているユーザーを識別することができる（例えば、ゲーマータグ、電子メールアドレス、又は他のユーザー識別子）。別の例として、仮想位置情報が提供されているユーザーによってプレイされるゲームタイトルの識別子（例えば、名前）、仮想位置を含む仮想環境などの、仮想位置情報の様々な部分を通知に含めることができる。
【００４０】
[0042]１つ又は複数の実施例では、通知は、ユーザー選択可能なリンク（例えば、ハイパーリンク、ボタン、アイコンなど）を含む。リンクは、（例えば、仮想通知モジュール２１４の）図１のオンラインゲームサービス１０４の位置や機能を識別し、ゲームタイトル、ゲームマップ、及び仮想位置の識別子がリンクに埋め込まれる。ゲームタイトルは、仮想位置情報が提供されているユーザーによってプレイされるゲームタイトルである。ゲームマップは、仮想位置情報に含まれる仮想位置が位置する仮想環境のマップである。仮想位置は、提供される仮想位置情報内の仮想位置である。
【００４１】
[0043]一例として、ユーザー選択可能なリンクは以下の形式をとることができる。
ｓｙｓｔｅｍ：／／ｌａｕｎｃｈ？ｔｉｔｌｅＩＤ＝Ｆ３Ｒ５２９＆ｍａｐ＝ｆｏｏ＆ｌｏｃ＝ｘ．ｙ．ｚ
ここで「Ｆ３Ｒ５２９」はゲームタイトルの識別子であり、「ｆｏｏ」はゲームマップの識別子であり、「ｘ．ｙ．ｚ」は仮想位置である。
【００４２】
[0044]通知を受けたユーザーは、リンクを選択することができ、リンクについてのユーザー選択に応答して、オンラインゲームサービス１０４（例えば、仮想位置通知モジュール２１４）は、受信側のユーザーのデバイス上のゲームに、（リンク内で識別された）識別されたゲームタイトル及びゲームマップのゲームの仮想位置へとジャンプすることを通史する。識別されたゲームタイトルのゲームが受信側ユーザーのデバイス上でまだ実行されていない場合は、オンラインゲームサービス１０４はまた、受信側のユーザーのゲームデバイスに、識別されたゲーム及び識別されたゲームタイトルのゲームの実行を開始するよう通知する。受け手のユーザーは、仮想位置情報が提供されたユーザーとともにゲームのプレイに参加できる。
【００４３】
[0045]ユーザーのゲームデバイスは、様々な方法でゲームの実行を開始するように通知され得る。例えば、ユーザーのゲームデバイスは、オンラインゲームサービス１０４からゲームの実行を開始する通知を受け取るランチャーモジュール又はアプリケーションを含むことができる。そのような通知に応答して、ランチャーモジュール又はアプリケーションは、オンラインゲームサービス１０４によって特定されたゲームの実行を開始する。
【００４４】
[0046]例えば、ゲーム２０４がゲームデバイスＡ上で実行されると仮定する。仮想位置情報が仮想位置チェックインモジュール２１８に提供されて、ゲームデバイスＡのユーザーの仮想位置を特定する。仮想位置通知モジュール２１４は、ゲームデバイスＢ上のユーザーの友人にこの仮想位置の通知を提供する。通知はモジュール２１４の機能を特定するリンクを含む。リンクは友人によって選択され、応答して、ゲームデバイスＢはリンクが選択されたことをモジュール２１４に通知し、モジュール２１４は、ゲームデバイスＢ上で（ゲーム２０４と同じゲームタイトルの）ゲーム２０６の実行を開始するようゲームデバイスＢに通知する。モジュール２１４はまた、通知において特定されたのと同じゲーム２０６中の仮想位置に（又は通知において特定された仮想位置の閾値距離内で）友人を配置するようにゲーム２０６に通知する。したがって、友人は、通知が提供されたユーザーと同じ仮想位置で（ゲーム２０４と同じゲームタイトルのゲームである）ゲーム２０６のプレイを開始することができる。
【００４５】
[0047]１つ又は複数の実施例において、ゲームタイトルは異なるモードで実行することができ、及び／又は、異なるゲームタイトルを通知内のリンクについてのユーザー選択に応答して実行することができる。例えば、ゲームは、自身が仮想環境にいるかのようにユーザーがゲームをプレイする一人称モードと、ユーザーがキャラクター（又は他のゲーム要素）のグループを調整するコマンドモードとを有していてもよい。別の例として、１つのゲームタイトルは、自身が仮想環境にいるかのようにユーザーがゲームをプレイする一人称モードでプレイされてもよく、別のゲームタイトルは、ユーザーがキャラクター（又は他のゲーム要素）のグループを調整するコマンドモードでプレイされてもよい。どのゲームモードやゲームタイトルが使用されるか（まだ実行されていない場合は、起動されるか）は、異なる方法で決定することができる。１つ又は複数の実施例では、ゲームをプレイしようとしているユーザーがゲームモードやゲームタイトルを選択する。例えば、仮想位置通知モジュール２１４は、識別されたゲームタイトル及びゲームマップのゲームの仮想位置にジャンプするようにユーザーのゲームデバイスに通知することができ、それに応答して、ゲームデバイスは、ゲームモードやゲームタイトルを選択することをゲームデバイスのユーザーに要求するユーザーインターフェイスを提示する。ゲームモードやゲームタイトルについてのユーザー選択に応答して、ユーザーが選択したゲームタイトル（又はモジュール２１４によって識別されるゲームタイトルのゲームモード）が実行され、ユーザーは特定された仮想位置に配置される。
【００４６】
[0048]どのゲームモードやゲームタイトルを使用するか（まだ実行されていない場合は、起動するか）は、代替的に、他の方法で決定することができる。例えば、ゲームのモードは、仮想位置チェックインモジュール２１８に提供される仮想位置情報に含めることができ、仮想位置通知モジュール２１４によって送られた通知に含まれるリンクに埋め込むことができる。別の例として、異なるデバイス構成はデフォルトで特定のゲームモードやゲームタイトルを使用することができる。例えば、コンピューター構成（例えば、以下で説明する図５のコンピューター５１４の構成）は、デフォルトで１つのモード（例えば、一人称ゲームモード）を使用することができ、モバイル構成（例えば、以下で説明する図５のモバイル５１６の構成）は、デフォルトで別のモード（例えば、コマンドモード）を使用することができる。
【００４７】
[0049]１つ又は複数の実施例では、ゲームをプレイするユーザーがゲーム中で他のユーザーからの助けを求めてもよい。ユーザーは、（例えば、音声コマンドを提供すること、ジェスチャーを行うこと、キーシーケンス又はメニューオプションを選択することなど）様々なユーザー入力のいずれかを提供することによって、このような要求を行うことができる。このような要求に応答して、ユーザーの仮想位置情報は、仮想位置チェックインモジュール２１８に提供される。代替的に、ユーザーの仮想位置情報をモジュール２１８に提供するのではなく、通知を送り出す要求をモジュール２１４に提供することができ、これは、最も最近に提供されたユーザーの仮想位置情報を使用する。仮想位置通知モジュール２１４は、上述のように、他のユーザーに通知を送り、また、ユーザーが助けを求めているという指示を通知に含める。ユーザーが助けを求めているというこの指示は、テキスト（例えば、「助けて！」）、画像やグラフィック、助けを求めているユーザーについての言葉の記録など、様々な形式を取ることができる。通知の受け手は、通知に含まれるリンクを選択して、上述のように、位置において及び／又は様々なモードのいずれかでゲームに参加することができる。
【００４８】
[0050]例えば、ゲーム２０４がゲームデバイスＡ上で実行されており、ゲーム２０４をプレイしているユーザーが相手に圧倒されていると仮定する。ユーザーは自分の友人からの助けを求めることができ、要求に応答して、仮想位置情報が、ゲームデバイスＡのユーザーの仮想位置を特定する仮想位置チェックインモジュール２１８に提供される。仮想位置通知モジュール２１４は、この仮想位置の通知、並びにゲームデバイスＢ上でのユーザーの友人に対するユーザーの助けの要求を提供する。通知は、モジュール２１４の機能を特定するリンクを含む。リンクは友人によって選択され、これに応答して、モジュール２１４は、ゲームデバイスＢ上で（ゲーム２０４と同じゲームタイトルである）ゲーム２０６の実行を開始するようにゲームデバイスＢに通知する。ゲーム２０６はゲーム２０４と同じモードで実行することができ、友人は、通知において特定されるのと同じ仮想位置であるゲーム２０６内の仮想位置に配置される。したがって、友人は、通知が提供されたユーザーと同じ仮想位置においてゲーム２０６のプレイを開始することができ、当該ユーザーを助けることができる。代替的に、ゲーム２０６は、ゲーム２０４が一人称モードで実行されてゲーム２０６がコマンドモードで実行されるなど、ゲーム２０４とは異なるモードで実行することができる。ゲームデバイスＢのユーザーは、自分のゲームプレイによってゲームデバイスＡのユーザーを助けるために、ゲームデバイスＡのユーザーに対する補給や他の支援の提供を調整することができる。
【００４９】
[0051]仮想位置追跡モジュール２１２は、仮想環境におけるユーザーの仮想位置を追跡することを可能にする。複数のユーザーについて仮想位置チェックインモジュール２１８によって受け取られた仮想位置情報は、モジュール２１２によって保持され、ユーザーの仮想位置に基づいて様々なゲームプレイ機能を提供するために使用することができる。
【００５０】
[0052]１つ又は複数の実施例では、仮想位置追跡モジュール２１２は、異なる仮想位置に関連付けられる報酬や成果などのゲームプレイ機能の記録を保持する。ユーザーの仮想位置情報が仮想位置チェックインモジュール２１８によって受け取られると、仮想位置追跡モジュール２１２は、ユーザーの仮想位置をゲームプレイ機能のレコードと比較し、ユーザーの仮想位置が記録された仮想位置と同じである場合、その後、ゲームプレイ機能は、ユーザーにとって利用可能にされる。ゲームプレイ機能は、仮想位置追跡モジュール２１２がゲーム２０４もしくは２０６、又は図１のゲームプレイサービス１１２に、機能がユーザーにとって利用可能であることを通知するなど、様々な方法でユーザーにとって利用可能にすることができる。
【００５１】
[0053]ユーザーの仮想位置が記録された仮想位置と同じであるかどうかは、様々な方法で特定することができる。１つ又は複数の実施例では、ユーザーの仮想位置が記録された仮想位置の（例えば、仮想位置システム２０２によってサポートされる座標系を用いて）閾値距離内にある場合、ユーザーの仮想位置は記録された仮想位置と同じである。代替的に、ユーザーの仮想位置が記録された仮想位置と同一であるか否かは、ユーザーの仮想位置が記録された仮想位置と同じ（例えば、等しい）場合にのみ、ユーザーの仮想位置が記録された仮想位置と同じであるなどの、他の方法で決定することができる。
【００５２】
[0054]ゲームプレイ機能及びそれらのゲームプレイ機能に関連付けられる仮想位置は、様々な方法で特定することができる。１つ又は複数の実施例では、仮想位置及び関連付けられるゲームプレイ機能は、ゲームタイトルの設計者又は開発者によって提供される。
【００５３】
[0055]他の実施例では、仮想位置及び関連付けられるゲームプレイ機能は、他のユーザーによって提供される。そのような実施例では、ユーザーがゲームをプレイしているとき、ユーザーは、ゲームプレイ機能が特定の仮想位置（例えば、要求がなされた時点でのユーザーの仮想位置）に関連付けられることを要求することができる。ユーザーは、（例えば、音声コマンドを提供すること、ジェスチャーを行うこと、キーシーケンス又はメニューオプションを選択することなど）様々なユーザー入力のうちの任意のものを提供することによって、このような要求を行うことができる。ユーザーによって要求されたゲームプレイ機能は、口頭記録、テキスト記述、イメージ又はビデオシーケンスなどの様々な異なる形態のうちの任意のものをとることができる。このゲームプレイ機能は、次いで、仮想位置チェックインモジュール２１８が、その特定の仮想位置にあるものとして他のユーザーを識別するそれらの他のユーザーについての仮想位置情報を受け取るときに、ゲームタイトルのゲームをプレイする当該他のユーザーにとって利用可能とされる。
【００５４】
[0056]ユーザーは、ゲームプレイの機能が他のすべてのユーザーにとって、又は代替的に、特定のユーザーのみにとって利用可能にされることを要求することができる。ユーザーは、どの特定のユーザーに対してゲームプレイ機能が利用可能とされるべきかを、様々な異なる方法で特定することができる。例えば、ユーザーは、ゲームプレイ機能が、（例えば、図１のオンラインゲームサービス１０４によって特定されるように、又はソーシャルネットワーキングサービスによって特定されるように）ユーザーの友人のみに対して、（例えば、他のユーザーのゲーマータグ、電子メールアドレスなどの入力によって）ユーザーによって特定される他のユーザーのみに対して、利用可能にされるべきであることを指定することができる。このゲームプレイ機能は、次いで、仮想位置チェックインモジュール２１８が、その特定の仮想位置にあるものとして特定のユーザーを識別する、それらの特定のユーザーの仮想位置情報を受け取ったときに、ゲームタイトルのゲームをプレイするそれらの特定のユーザーに対してのみ利用可能にされる。
【００５５】
[0057]ユーザーが、自身がゲームをプレイしているときに同じ及び／又は異なるゲームプレイ機能が複数の位置に関連付けられることを要求できることに留意すべきである。異なるゲームプレイ機能は、特定の言葉の手がかり、パスワード、ビデオメッセージなど、異なる仮想位置に関連付けることができる。ユーザーはまた、特定のゲーム内アイテムをゲームプレイ機能として残すことを選択することができる（例えば、クレジット又は他のゲーム内通貨は、ユーザーから引き落としてゲームプレイ機能として残すことができ、武器やその他のアイテムをゲームプレイ機能としてユーザーが後に残すことができる）。したがって、ユーザーがゲームの特定の領域を通ってプレイするとき、ユーザーは、友人がゲームの同じ領域を通ってプレイする際に友人を支援するために、友人のために様々なゲームプレイ機能を残すことができる。
【００５６】
[0058]位置変換モジュール２１６は、現実世界の位置が仮想位置に変換されること及び／又は仮想位置が現実世界の位置に変換されることを可能にする。様々な異なるルール、基準、アルゴリズムなどを含む様々な変換技術を、現実世界の位置を仮想位置に変換し及び／又はその逆を行うために使用することができる。特定の技術は、仮想環境のために使用される特定の座標系及び現実世界のために使用される特定の座標系に基づいて変化してもよい。例えば、モジュール２１６は、地理的座標系（例えば、次元としての緯度、経度、及び高度）を使用して特定される現実世界の位置を、x、y、及びz次元を含むデカルト座標系（例えば、水平、垂直、及び奥行き）を使用する仮想位置に変換することができる。
【００５７】
[0059]仮想位置と物理的な位置との間のこの変換は、様々なゲームプレイ機能をユーザーにとって利用可能にすることを可能にする。ユーザーは、自分の物理的な位置（現実世界でのユーザーの位置）に基づいて、ユーザーに様々な機能を提供する現実世界追跡サービスにチェックインすることができる。現実世界追跡サービスはまた、（ユーザーによって提供されるような）ゲーマータグ、電子メールアドレス、又は他のユーザー識別子などのユーザの物理的な位置及び識別子を仮想位置システム２０２に提供する。位置変換モジュール２１６は、物理的な位置を受け取り、仮想環境のための仮想位置へと物理的な位置を変換する。この変換された仮想位置はまた、ユーザーがチェックインした物理的な位置に対応する仮想位置として、仮想位置追跡モジュール２１２によって保持される。
【００５８】
[0060]１つ又は複数の実施例では、仮想位置追跡モジュール２１２によって保持されて提供されるゲームプレイ機能は、仮想位置及び物理的な位置の両方に関連付けられる。ユーザーの仮想位置情報が仮想位置チェックインモジュール２１８によって受け取られると、仮想位置追跡モジュール２１２は、ユーザーの仮想位置をゲームプレイ機能の記録と比較する。ユーザーの仮想位置が記録された仮想位置と同じであり、ユーザーが対応する物理的な位置にチェックインしている場合には、ゲームプレイ機能はユーザーにとって利用可能にされる。
【００５９】
[0061]ゲームプレイ機能は、ゲームタイトルの設計者や開発者によるなど、上述のように様々な方法で提供することができる。例えば、ゲームタイトルの設計者は、ユーザーが、特定のランドマークが仮想環境（例えば、特定の戦場、特定の遺跡）に存在する特定の仮想位置にチェックインしており、特定のランドマークが存在する仮想位置に対応する物理的位置にチェックインしている場合に、ユーザーが利用できるようにされる、特定のゲームプレイ機能（例えば、成果、報酬、ミニゲームなど）を有していてもよい。ユーザーが移動しており、その特定のランドマークにおいて現実世界追跡サービスを使用してチェックインするとき、ユーザーが対応する仮想位置にチェックインしたという記録が、仮想位置追跡モジュール２１２によって保持される。ユーザーは、その後、特定のランドマークが存在する仮想位置においてチェックインし、次いで、特定のゲームプレイ機能がユーザーにとって利用可能とされる。
【００６０】
[0062]１つ又は複数の実施例においては、仮想位置追跡モジュール２１２によって保持されて提供されるゲームプレイ機能は、物理的な位置に対応する仮想位置と関連付けられる。ユーザーの仮想位置情報が仮想位置チェックインモジュール２１８によって受け取られると、仮想位置追跡モジュール２１２は、ユーザーの仮想位置をゲームプレイ機能の記録と比較する。ユーザーの仮想位置が記録された仮想位置と同じである場合には、ゲームプレイ機能はユーザーにとって利用可能とされる。
【００６１】
[0063]ゲームプレイ機能は、別のユーザーによるなど、上述のように様々な方法で提供することができる。ユーザーは、上述のように、自分の物理的な位置に基づいてユーザーに様々な機能を提供する現実世界追跡サービスにチェックインすることができる。ユーザーはまた、ゲームプレイ機能がその物理的な位置に関連付けられるように要求することができる。ユーザーは、（例えば、音声コマンドを提供すること、ジェスチャーを行うこと、キーシーケンス又はメニューオプションを選択することなど）様々なユーザー入力のうちの任意のものを提供することによって、このような要求を行うことができる。ユーザーによって要求されたゲームプレイ機能は、口頭記録、テキスト記述、画像又はビデオシーケンスなどの様々な異なる形態のうちの任意のものをとることができる。現実世界追跡サービスは、上述のように物理的な位置及びユーザーの識別子、並びに、ユーザーが要求したゲームプレイ機能を、仮想位置システム２０２に提供する。位置変換モジュール２１６は、物理的な位置を受け取り、物理的な位置を仮想環境のための仮想位置に変換する。この変換された仮想位置は、ユーザーがチェックインした物理的位置に対応する仮想位置として仮想位置追跡モジュール２１２によって保持され、ユーザーによって要求されたゲームプレイ機能に関連付けられる。このゲームプレイ機能は、仮想位置チェックインモジュール２１８がその特定の仮想位置にいるものとして自身を識別する他のユーザーについての仮想位置情報を受け取るとき、ゲームタイトルのゲームをプレイする当該他のユーザーにとって利用可能にされる。
【００６２】
[0064]ユーザーは、ゲームプレイ機能が、他のすべてのユーザーにとって利用可能とされるか、あるいは、特定のユーザーのみにとって利用可能とされることを要求することができる。ユーザーは、どの特定のユーザーに対してゲームプレイ機能が利用可能とされるべきであるかを、様々な異なる方法で特定することができる。例えば、ユーザーは、ゲームプレイ機能が、（例えば、図１のオンラインゲームサービス１０４によって特定されるような、又はソーシャルネットワーキングサービスによって特定されるような）ユーザーの友人のみに対して、（例えば、他のユーザーのゲーマータグ、電子メールアドレスなどの入力によって）ユーザーによって特定される他のユーザーのみに対して、利用可能にされるべきであることを指定することができる。このゲームプレイ機能は、次いで、仮想位置チェックインモジュール２１８が、その特定の仮想位置にあるものとして特定のユーザーを識別する、それらの特定のユーザーの仮想位置情報を受け取ったときに、ゲームタイトルのゲームをプレイするそれらの特定のユーザーに対してのみ利用可能にされる。
【００６３】
[0065]例として、ユーザーＡが旅行をしており、ワシントン州シアトルの特定の街角で、現実世界追跡サービスを使用してチェックインすると仮定する。さらに、ユーザーが、自分の友人のうちの２人、ユーザーＢ及びユーザーＣに対して伝言を記録すると仮定する。ユーザーがその特定の街角に対応する仮想位置においてチェックインしたという記録は、仮想位置追跡モジュール２１２によって保持される。記録された伝言の記録もまたモジュール２１２によって保持される。ユーザーＢがその後にその特定の街角に対応する仮想環境内の仮想位置にチェックインするとき、記録された伝言がユーザーＢに対して再生される。
【００６４】
[0066]１つ又は複数の実施例では、仮想位置追跡モジュール２１２は、仮想環境で複数のユーザーの仮想位置を追跡する。複数のユーザーの仮想位置は、仮想環境のどの仮想位置において自分がゲームをプレイし始めることを望むかをユーザーが決定することを容易にするために使用することができる。複数の他のユーザーの仮想位置は、どれだけ多くの他のユーザーが異なる部分でプレイしているかに基づいて、異なる色又は異なる色の強度で仮想環境のマップの異なる部分を表示する「ヒートマップ」表示を使用するなど、様々な方法でユーザーに対して表示される。例えば、５〜１５人の他のユーザーがその部分の仮想位置でゲームをプレイしている場合、マップの一部がオレンジ色で強調表示されてもよく、１６人以上の他のユーザーがその部分の仮想位置においてゲームをプレイしている場合、マップの一部が赤で強調表示されてもよい。代替的に、複数の他のユーザーの仮想位置は、各々の他のユーザーについてマップ上に表示されるピン又はドット、マップ上に表示されるユーザーの各々のゲーマータグ又は他の識別子など、他の方法でユーザーに対して表示することができる。仮想位置が表示される複数の他のユーザーは、（例えば、図１のオンラインゲームサービス１０４によって特定されるような、又はソーシャルネットワーキングサービスによって特定されるような）ユーザーの友人である他のユーザー、ユーザーと（現実世界で）同じ都市や州にいる他のユーザー、ユーザーと同じスキルレベルを有する（又はユーザーの閾値距離内の）他のユーザーなど、異なる方法で特定することができる。
【００６５】
[0067]ユーザーは、次いで、自分がプレイを開始することを望むマップの特定の部分又は位置を選択することができ、これに応答して、ゲームがその部分又は位置においてプレイを開始する。ユーザーは、（例えば、音声コマンドを提供すること、ジェスチャーを行うこと、キーシーケンス又はメニューオプションを選択することなど）様々なユーザー入力のうちの任意のものを提供することによって、このような要求を行うことができる。
【００６６】
[0068]例えば、ユーザーは、特定のゲームタイトルのゲームをプレイすることを望むことができ、自分の友人が現在プレイしている仮想位置を特定するマップのヒートマップ表示を提示される。次いで、ユーザーは、自分の友人の多くが現在プレイしているマップ上の位置を選択し、その位置でゲームをプレイし始めることができる。
【００６７】
[0069]代替的に、ゲームをプレイするのではなく、ユーザーは、別のユーザーがプレイしているゲームを観察することを要求することができる。ユーザーは、（例えば、音声コマンドを提供すること、ジェスチャーを行うこと、キーシーケンス又はメニューオプションを選択することなど）様々なユーザー入力のうちの任意のものを提供することによって、このような要求を行うことができる。このような要求に応答して、新しい仮想位置情報が他のユーザーによって提供されるとき、他のユーザーの仮想位置が、要求をしたユーザーに対して表示される。これらの仮想位置は、例えば、他のユーザーの位置の有無にかかわらず、仮想環境のマップ（例えば、ヒートマップ）の部分上に表示することができる。
【００６８】
[0070]１つ又は複数の実施例では、仮想位置システム２０２によるユーザーの仮想位置の追跡は、それを行うことについてのユーザーの同意を受けた後に実行される。このユーザーの同意はオプトイン（opt-in）同意とすることができ、ユーザーは、仮想位置システム２０２がそのユーザーの仮想位置のなんらかの追跡を実行する前に仮想位置の追跡が実行されることを要求するために、積極的な行動をとる。代替的に、このユーザーの同意はオプトアウト（opt-out）同意とすることができ、ユーザーは、ユーザーの仮想位置の追跡が仮想位置システム２０２によって実行されないことを要求するために、積極的な行動をとる。ユーザーがこの追跡をオプトアウトすることを選択しない場合、それは、追跡を実行するためのユーザーによる暗黙の同意である。
【００６９】
[0071]現実世界における物理的な位置の様々な追跡を他のサービス又はモジュールによって実行することができ、追跡情報は、仮想位置システム２０２によって受け取って保持することができることに留意すべきである。仮想位置システム２０２によるユーザーの物理的な位置のこの追跡は、同様に、そうするためのユーザーの同意を受けた後にのみ実行されてもよい。
【００７０】
[0072]さらに、仮想位置システム２０２によるユーザーの仮想位置の追跡は、システム２０２が異なるユーザーを区別することを可能にするが、特定のユーザーを識別する個人情報を含む必要はないことに留意すべきである。たとえば、ユーザー又はユーザーのデバイスは、特定のユーザー名又はＩＤによって仮想位置システム２０２を含むサービスにログインすることできるが、そのユーザー名と実際の人との間の関連付けは保持される必要はない。したがって、仮想位置システム２０２は、ユーザーの仮想位置を追跡することができ、同時に、そのユーザーが実際には誰であるかについての知識を持たない。
【００７１】
[0073]図３は、１つ又は複数の実施例による、仮想位置システム２０２がユーザーの仮想位置を追跡するかどうかをユーザーが選択できるようにするためにユーザーに対して表示することができる、例示的なユーザーインターフェイスを示す。仮想位置システム２０２が追跡を行っている理由をユーザーに説明する記述３０２を含む仮想位置追跡ウィンドウ３００が表示される。プライバシーに関する声明（privacy statement）へのリンク３０４もまた表示される。ユーザーがリンク３０４を選択すると、システム２０２のプライバシーに関する声明が表示されて、どのようにしてユーザーの情報が秘密にされるかについてユーザーに説明する。
【００７２】
[0074]さらに、ユーザーは、追跡にオプトインするためのラジオボタン３０６、又は追跡からオプトアウトするためのラジオボタン３０８を選択することができる。ラジオボタン３０６又は３０８が選択されると、ユーザーは、選択を保存するために、「ＯＫ」ボタン３１０を選択することができる。ラジオボタン及び「ＯＫ」ボタンが追跡のオプトイン又はオプトアウトをするためにユーザーに提示することができるユーザーインターフェイスの例に過ぎず、様々な他の従来のユーザーインターフェイス技術を代替的に使用することができることを理解すべきである。仮想位置システム２０２は、次いで、ユーザーの選択に従って、ユーザーの仮想位置を追跡するか又は追跡しない。
【００７３】
[0075]図４は、１つ又は複数の実施例による、仮想位置チェックインを実施するための例示的なプロセス４００を示すフローチャートである。プロセス４００は、図２のシステム２００又は図１のシステム１１６などの仮想位置システムによって行われ、ソフトウェア、ファームウェア、ハードウェア、又はそれらの組み合わせで実施することができる。プロセス４００は、行為のセットとして示され、様々な行為の動作を実行するために示される順序に限定されるものではない。プロセス４００は、仮想位置チェックインを実施するための例示的なプロセスであり、仮想位置チェックインを実施するさらなる議論は、異なる図面を参照して本明細書に含まれる。
【００７４】
[0076]プロセス４００において、仮想環境におけるユーザーの仮想位置を特定する仮想位置情報が受け取られる（動作４０２）。上述したように、この仮想位置情報は、仮想位置の座標、仮想環境を実施するゲームタイトルの識別子、仮想環境によってサポートされるマップの識別子などを含む様々な情報を含むことができる。上述したように、この仮想位置情報は、ユーザーについての仮想位置チェックイン要求の一部として受け取られてもよい。
【００７５】
[0077]受け取られた仮想位置情報に基づいて様々なアクションをとることができる。仮想位置の通知は、仮想環境の外部の１人又は複数のさらなるユーザーに送ることができる（動作４０４）。これらの１人又は複数のさらなるユーザーは、上述したように、仮想環境を実施するゲームタイトルを現在プレイしていないユーザーである。
【００７６】
[0078]仮想位置に関連付けられる１つ又は複数のゲームプレイ機能はまた、決定され（動作４０６）、ユーザーに提供する（動作４０８）ことができる。報酬や成果などの様々な異なるゲームプレイ機能は、異なる仮想位置に関連付けることができ、これらの異なるゲームプレイ機能及び関連付けられた仮想位置は、上述のように、異なる方法で識別することができる。
【００７７】
[0079]様々なモジュールによって実行される、通信、受信、送信、記録、取得などの様々なアクションが本明細書において説明される。アクションを実行するものとして本明細書で説明される特定のモジュールは、アクションを実行する特定のモジュール自体、又は、代替的に、アクションを実行する（又は特定のモジュールと連携してアクションを実行する）別のコンポーネントまたはモジュールを起動させるかそうでなければアクセスする特定のモジュールを含む。したがって、アクションを実行する特定のモジュールは、アクションを実行する特定のモジュール自体及び／又はアクションを実行する特定のモジュールによって起動されるかそうでなければアクセスされる別のモジュールを含む。
【００７８】
[0080]図５は、本明細書に記載の様々な技術を実施することができる１つ又は複数のコンピューティングシステム及び／又はデバイスを表す例示的なコンピューティングデバイス５０２を含む例示的なシステムを一般に５００において示す。コンピューティングデバイス５０２は、例えば、サービスプロバイダーのサーバー、ユーザーに関連付けられるデバイス（例えば、図１のゲーム・デバイス１０２）、オンチップシステム、及び／又は任意の他の適切なコンピューティングデバイス又はコンピューティングシステムであってもよい。
【００７９】
[0081]図示されるコンピューティングデバイス５０２は、処理システム５０４、１つ又は複数のコンピューター読み取り可能な媒体５０６、互いに通信可能に結合された１つ又は複数のＩ／Ｏインターフェイス５０８を含む。図示していないが、コンピューティングデバイス５０２は、さらに、様々なコンポーネントを互いに結合するシステムバス又は他のデータ及びコマンド転送システムを含むことができる。システムバスは、メモリーバス又はメモリーコントローラー、周辺バス、ユニバーサルシリアルバス、及び／又は様々なバスアーキテクチャーのいずれかを利用するプロセッサー又はローカルバスなど、様々なバス構造のいずれか又は組み合わせを含むことができる。制御線及びデータ線などの様々な他の例も考えられる。
【００８０】
[0082]処理システム５０４は、ハードウェアを使用して１つ又は複数の動作を実行するための機能を表している。したがって、処理システム５０４は、プロセッサー、機能ブロックなどとして構成することができるハードウェア要素５１０を含むものとして示される。これは、特定用途向け集積回路又は１つもしくは複数の半導体を用いて形成された他の論理デバイスとしてハードウェアでの実施を含むことができる。ハードウェア要素５１０は、それらが形成される材料又はその中で使用される処理機構によって限定されるものではない。例えば、プロセッサーは、半導体及び／又はトランジスター（例えば電子集積回路（ＩＣ））で構成されてもよい。このような文脈において、プロセッサー実行可能命令は、電子的に実行可能な命令であってもよい。
【００８１】
[0083]コンピューター読み取り可能な媒体５０６は、メモリー／ストレージ５１２を含むものとして示される。メモリー／ストレージ５１２は、１つ又は複数のコンピューター読み取り可能な媒体に関連するメモリー／ストレージ容量を表す。メモリー／ストレージ５１２は、（ランダムアクセスメモリー（ＲＡＭ）などの）揮発性媒体及び／又は（読み取り専用メモリー（ＲＯＭ）、フラッシュメモリー、光ディスク、磁気ディスクなどの）不揮発性媒体を含むことができる。メモリー／ストレージ５１２は、固定媒体（たとえば、ＲＡＭ、ＲＯＭ、固定ハードドライブなど）、ならびに取り外し可能な媒体（例えば、フラッシュメモリー、取り外し可能なハードドライブ、光ディスクなど）を含むことができる。コンピューター読み取り可能な媒体５０６は、以下にさらに説明されるように他の様々な方法で構成することができる。
【００８２】
[0084]入力／出力インターフェイス５０８は、様々な入力／出力デバイスを使用して、ユーザーがコマンド及び情報をコンピューティングデバイス５０２に入力することを可能にし、また、情報をユーザー及び／又は他のコンポーネントやデバイスに提示することを可能にする機能を表す。入力デバイスの例は、キーボード、カーソル制御デバイス（例えば、マウス）、マイクロフォン、スキャナー、タッチ機能（例えば、物理的な接触を検出するように構成される容量性センサー又は他のセンサー）、カメラ（例えば、ジェスチャーとして接触を含まない動きを検出するために可視又は赤外周波数などの不可視の波長を用いることができる）などを含む。出力デバイスの例は、ディスプレイデバイス（例えば、モニター又はプロジェクター）、スピーカー、プリンター、ネットワークカード、触覚応答デバイスなどを含む。したがって、コンピューティングデバイス５０２は、ユーザーインタラクションをサポートするために、以下でさらに説明するように様々な方法で構成することができる。
【００８３】
[0085]コンピューティングデバイス５０２はまた、仮想位置システム５２０を含む。仮想位置システム５２０は、同じ及び／又は異なるゲームタイトルの様々なゲームのための仮想位置機能を提供する。仮想位置システム５２０は、図１の仮想位置システム１１６に類似するが、オンラインゲームサービスにおいてではなく、コンピューティングデバイス５０２で実施されるように示される。仮想位置システム５２０は、図２の仮想位置システム２０２であってもよい。
【００８４】
[0086]様々な技術は、ソフトウェア、ハードウェア要素、又はプログラムモジュールの一般的な文脈で本明細書において説明されてもよい。一般に、このようなモジュールは、特定のタスクを実行するか又は特定の抽象データ型を実施するルーチン、プログラム、オブジェクト、要素、コンポーネント、データ構造などを含む。「モジュール」、「機能」、及び「コンポーネント」という用語は、本明細書で使用されるとき、一般的に、ソフトウェア、ファームウェア、ハードウェア、又はそれらの組み合わせを表す。本明細書に記載の技術の特徴は、プラットフォーム非依存であり、これは、技術が様々なプロセッサーを有する様々な市販のコンピューティングプラットフォーム上で実施できることを意味する。
【００８５】
[0087]説明されるモジュール及び技術の実施例は、幾つかの形式のコンピューター読み取り可能な媒体上に格納したり、それを介して送信したりすることができる。コンピューター読み取り可能な媒体は、コンピューティングデバイス５０２によってアクセスすることができる様々な媒体を含むことができる。例として、限定ではないが、コンピューター読み取り可能な媒体は、「コンピューター読み取り可能な記憶媒体」及び「コンピューター読み取り可能な信号媒体」を含むことができる。
【００８６】
[0088]「コンピューター読み取り可能な記録媒体」とは、単なる信号伝送、搬送波、又は信号自体とは対照的に、情報の永続的及び／又は非一時的な記憶を可能にする媒体及び／又はデバイスを指すことができる。したがって、コンピューター読み取り可能な記憶媒体は、非信号担持媒体を指す。コンピューター読み取り可能な記憶媒体は、揮発性及び不揮発性の、取り外し可能な及び取り外し不能な媒体、及び／又は、コンピューター読み取り可能な命令、データ構造、プログラムモジュール、論理素子／回路、又は他のデータなどの情報を記憶するための適切な方法又は技術で実施される記憶デバイスなどのハードウェアを含む。コンピューター読み取り可能な記憶媒体の例は、限定されないが、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリー又は他のメモリー技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）又は他の光記憶デバイス、ハードディスク、磁気カセット、磁気テープ、磁気ディスクストレージ又は他の磁気記憶デバイス、又は他の記憶デバイス、有形の媒体、又は所望の情報を格納するのに適しておりコンピューターによってアクセスすることができる製品を含んでもよい。
【００８７】
[0089]「コンピューター読み取り可能な信号媒体」とは、ネットワークなどを介してコンピューティングデバイス５０２のハードウェアに命令を送るように構成される信号搬送媒体を指してもよい。信号媒体は通常、コンピューター読み取り可能な命令、データ構造、プログラムモジュール、又は他のデータを、搬送波、データ信号、又は他のトランスポート機構などの変調データ信号において具現化することができる。信号媒体はまた、任意の情報配信媒体を含む。「変調データ信号」という用語は、情報を信号に符号化するような方法で設定又は変更される１つ又は複数の特性を有する信号を意味する。例として、限定はしないが、通信媒体は、有線ネットワーク又は直接配線接続などの有線媒体、及び音響、ＲＦ、赤外線及び他の無線媒体などの無線媒体を含む。
【００８８】
[0090]前述のように、ハードウェア要素５１０及びコンピューター読み取り可能な媒体５０６は、本明細書に記載された技術の少なくともいくつかの態様を実施するためにいくつかの実施例で使用することができる、命令、モジュール、プログラム可能なデバイスロジック及び／又はハードウェアの形態で実施される固定デバイスロジックを表す。ハードウェア要素は、集積回路又はオンチップシステム、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、コンプレックスプログラマブルロジックデバイス（ＣＰＬＤ）、及びシリコン又は他のハードウェアデバイスにおける他の実施例のコンポーネントを含んでもよい。このコンテキストでは、ハードウェア要素は、命令、モジュール、及び／又はハードウェア要素によって具現化されるロジックによって定義されるプログラムタスクを実行する処理デバイス、並びに、例えば前述したコンピューター読み取り可能な記憶媒体などの、実行のための命令を記憶するために使用されるハードウェアデバイスとして動作することができる。
【００８９】
[0091]上記の組み合わせはまた、本明細書に記載の種々の技術及びモジュールを実施するために使用することができる。したがって、ソフトウェア、ハードウェア、又はプログラムモジュール及び他のプログラムモジュールは、何らかの形式のコンピューター読み取り可能な記憶媒体上で及び／又は１つ又は複数のハードウェア要素５１０により具体化される１つ又は複数の命令及び／又はロジックとして実施することができる。コンピューティングデバイス５０２は、ソフトウェア及び／又はハードウェアモジュールに対応する特定の命令及び／又は機能を実施するように構成されてもよい。したがって、コンピューティングデバイス５０２によってソフトウェアとして実行可能なモジュールの実装は、例えば、コンピューター読み取り可能な記憶媒体及び／又は処理システムのハードウェア要素５１０の使用を介して、ハードウェアで少なくとも部分的に達成することができる。命令及び／又は機能は、本明細書に記載された技術、モジュール、及び例を実施するために、１つ又は複数の製品（例えば、１つ又は複数のコンピューティングデバイス５０２及び／又は処理システム５０４）によって実行可能／動作可能であってもよい。
【００９０】
[0092]様々な実施例では、コンピューティングデバイス５０２は、コンピューター５１４、モバイル５１６、テレビ５１８の用途のためなど、様々な異なる構成を仮定してもよい。これらの構成の各々は、異なる構成と機能を一般に有し得るデバイスを含み、したがって、コンピューティングデバイス５０２は、異なるデバイスクラスの１つ又は複数に従って構成することができる。本明細書で説明される技術は、コンピューティングデバイス５０２のこれらの様々な構成によってサポートすることができ、本明細書に記載される技術の具体例に限定されない。例えば、コンピューティングデバイス５０２は、パーソナルコンピューター、デスクトップコンピューター、マルチ画面コンピューター、ラップトップコンピューター、ネットブックなどを含むデバイスのコンピューター５１４クラスとして実施されてもよい。
【００９１】
[0093]コンピューティングデバイス５０２はまた、携帯電話、携帯音楽プレーヤー、携帯型ゲーム機、タブレットコンピューター、マルチ画面コンピューターなどのモバイルデバイスを含むデバイスのモバイル５１６クラスとして実施されてもよい。コンピューティングデバイス５０２はまた、カジュアルな視聴環境において一般により大きな画面を有し又はこれに接続されるデバイスを含むデバイスのテレビジョン５１８クラスとして実施されてもよい。これらのデバイスは、テレビ、セットトップボックス、ゲーム機などを含む。
【００９２】
[0094]主題は、構造的特徴及び／又は方法論的動作に特有の言葉で説明されたが、添付の特許請求の範囲で定義される主題は必ずしも上述の具体的な特徴又は動作に限定されないことを理解すべきである。そのようなものではなく、上述の具体的な特徴及び動作は、特許請求の範囲を実施する例示的な形態として開示されるものである。
【図１】
2015509767.tif 000003
【図２】
2015509767.tif 000004
【図３】
2015509767.tif 000005
【図４】
2015509767.tif 000006
【図５】
2015509767.tif 000007
【国際調査報告】
2015509767.tif 000008
2015509767.tif 000009