(57)【要約】      （修正有）【課題】クライアント・サーバ環境において、クライアントの動作環境によらずにユーザが相互に交流することを可能にする。【解決手段】別々のクライアントコンピューティングデバイス上で、少なくとも二次元または三次元で同時に描写できる仮想空間の単一のインスタンスが提供される。即ち、いずれかの所定のクライアントコンピューティングプラットフォームによって表示される仮想空間描写の次元にかかわらず、同一の仮想空間情報が一又は複数のクライアントコンピューティングプラットフォームに送信される。二次元または三次元で仮想空間描写を表示するかどうかに関する決定は、個別のクライアントコンピューティングプラットフォームでなされる。こうした尺度は、一又は複数の処理装置の計算能力、通信バンド幅、スクリーンの大きさ、及び／又はその他の尺度を含む。【選択図】図２
2012252695.tif 000002
【特許請求の範囲】
【請求項１】
クライアントコンピューティングプラットフォームを介して二次元または三次元で仮想空間の単一のインスタンスを表示する方法であって、
クライアントコンピューティングプラットフォームにおいて、前記クライアントコンピューティングプラットフォームが前記クライアントコンピューティングプラットフォームに関するユーザに対して表示するために仮想空間描写を提供することを可能とするよう構成された仮想空間情報を受信し、
前記クライアントコンピューティングプラットフォームにおいて、前記クライアントコンピューティングプラットフォームに関係する一又は複数の尺度に基づいて前記仮想空間描写を二次元または三次元で表示するかどうかを決定し、前記仮想空間の二次元描写のユーザは前記仮想空間の前記二次元描写の範囲内で前記仮想空間の三次元描写のユーザと交流することができるようにされており、前記仮想空間の三次元描写のユーザは前記仮想空間の前記三次元描写の範囲内で前記仮想空間の二次元描写のユーザと交流することができるようにされており、
前記決定に基づいて前記クライアントコンピューティングプラットフォームを介して二次元または三次元で前記仮想空間描写を表示する、方法。
【請求項２】
前記仮想空間は、仮想世界及び／又はビデオゲームの一つまたは両方を含む請求項１の方法。
【請求項３】
前記クライアントコンピューティングプラットフォームに関係する一又は複数の尺度は、一又は複数の、前記クライアントコンピューティングプラットフォームの計算能力、前記クライアントコンピューティングプラットフォームに関する通信バンド幅、または、前記クライアントコンピューティングプラットフォームに関するスクリーンの大きさを含む請求項１の方法。
【請求項４】
前記仮想空間の前記二次元描写のユーザに関係するユーザキャラクタが、前記仮想空間の前記三次元描写内の一又は複数の所定の進路をたどる請求項１の方法。
【請求項５】
前記一又は複数の所定の進路の各々は、前記仮想空間の前記三次元描写内で静的である請求項４の方法。
【請求項６】
前記一又は複数の所定の進路の各々は、前記仮想空間の前記三次元描写内で動的である請求項４の方法。
【請求項７】
前記一又は複数の所定の進路の各々は、確率的に決定される請求項４の方法。
【請求項８】
更に、前記クライアントコンピューティングプラットフォームにおいて、前記仮想空間の前記二次元描写内の終点選択を受信し、前記一又は複数の所定の進路の各々は前記終点選択に基づいて決定される請求項４の方法。
【請求項９】
二次元または三次元で仮想空間の単一のインスタンスを表示するシステムであって、
一又は複数のコンピュータプログラムモジュールを実行するよう構成された処理装置を備え、前記処理装置は、
仮想空間描写の表示を支援するよう構成された仮想空間情報を受信するよう構成された通信モジュールと、
前記システムに関する一又は複数の尺度に基づいて仮想空間描写を二次元また三次元で表示するかどうかを決定するよう構成された次元決定モジュールと、
前記次元決定モジュールの決定に基づいて二次元または三次元での仮想空間描写の表示を支援するよう構成された表示モジュールと、を備え、
前記仮想空間の二次元描写のユーザは前記仮想空間の前記二次元描写の範囲内で前記仮想空間の三次元描写のユーザと交流することができるようにされ、前記仮想空間の三次元描写のユーザは前記仮想空間の前記三次元描写の範囲内で前記仮想空間の二次元描写のユーザと交流することができるようにされる、システム。
【請求項１０】
前記仮想空間は、仮想世界及び／又はビデオゲームの一つまたは両方を含む請求項９のシステム。
【請求項１１】
前記システムに関係する一又は複数の尺度は、一又は複数の、前記一又は複数の処理装置の計算能力、前記システムに関する通信バンド幅、または、前記システムに関するスクリーンの大きさを含む請求項９のシステム。
【請求項１２】
前記仮想空間の前記二次元描写のユーザに関係するユーザキャラクタが、前記仮想空間の前記三次元描写内の一又は複数の所定の進路をたどる請求項９のシステム。
【請求項１３】
前記一又は複数の所定の進路の各々は、前記仮想空間の前記三次元描写内で静的である請求項１２のシステム。
【請求項１４】
前記一又は複数の所定の進路の各々は、前記仮想空間の前記三次元描写内で動的である請求項１２のシステム。
【請求項１５】
前記一又は複数の所定の進路の各々は、確率的に決定される請求項１２のシステム。
【請求項１６】
更に、前記仮想空間の前記二次元描写内の終点選択を受信するよう構成された到達点モジュールを備え、前記一又は複数の所定の進路の各々は前記終点選択に基づいて決定される請求項１２のシステム。
【請求項１７】
少なくとも二次元または三次元での描写が可能な仮想空間の単一のインスタンスを提供する方法であって、
複数のクライアントコンピューティングプラットフォームに対して、前記複数のクライアントコンピューティングプラットフォームの各々が前記複数のクライアントコンピューティングプラットフォームの各々に関するユーザに対して表示するために仮想空間描写を提供することを可能とするよう構成された仮想空間情報を提供し、
所定のクライアントコンピューティングプラットフォームにとって、前記仮想空間は、前記所定のクライアントコンピューティングプラットフォームに関する一又は複数の尺度に基づいて二次元または三次元で描写されるものであり、
前記仮想空間の二次元描写のユーザは前記仮想空間の前記二次元描写の範囲内で前記仮想空間の三次元描写のユーザと交流することができるようにされており、前記仮想空間の三次元描写のユーザは前記仮想空間の前記三次元描写の範囲内で前記仮想空間の二次元描写のユーザと交流することができるようにされている、方法。
【請求項１８】
前記仮想空間は、仮想世界及び／又はビデオゲームの一つまたは両方を含む請求項１７の方法。
【請求項１９】
前記所定のクライアントコンピューティングプラットフォームに関係する一又は複数の尺度は、一又は複数の、前記所定のクライアントコンピューティングプラットフォームの計算能力、前記所定のクライアントコンピューティングプラットフォームに関する通信バンド幅、または、前記所定のクライアントコンピューティングプラットフォームに関するスクリーンの大きさを含む請求項１７の方法。
【請求項２０】
前記仮想空間が二次元または三次元で描写されるかどうかに関する決定は、前記複数のクライアントコンピューティングプラットフォームの各々でなされる請求項１７の方法。
【請求項２１】
更に、二次元で仮想空間を描写する前記複数のクライアントコンピューティングデバイスの各々のために、前記仮想空間の前記二次元描写のユーザに関係するユーザキャラクタが前記仮想空間の前記三次元描写でたどる一又は複数の進路を決定する請求項１７の方法。
【請求項２２】
前記一又は複数の所定の進路の各々は静的である請求項２１の方法。
【請求項２３】
前記一又は複数の所定の進路の各々は動的である請求項２１の方法。
【請求項２４】
前記一又は複数の所定の進路の各々は確率的に決定される請求項２１の方法。
【請求項２５】
前記一又は複数の所定の進路の各々は、前記仮想空間の前記二次元描写のユーザによって受信された終点選択に基づいて決定される請求項２１の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、別々のクライアントコンピューティング装置を介して仮想空間（virtual space）の単一のインスタンスの二次元または三次元表示を可能とすることによって、仮想空間へのアクセス性を拡張するものであり、ユーザがインターフェイスとして接続する仮想空間の次元にかかわらずユーザが相互に交流することを可能とする。
【背景技術】
【０００２】
従来、仮想空間（例えば、仮想世界、ビデオゲーム、及び／又は他の仮想空間）は二次元または三次元のいずれかで描写されるが、二次元および三次元の両方では描写されない。三次元で描写される仮想空間は、低性能の装置を使用するユーザを排除し、こうした仮想空間内の豊かな体験を楽しめる能力を有するハードウェアを持つユーザのみを残す。その一方で、二次元で描写される仮想空間は、低性能の装置を使用するユーザを含むようにすることができるが、より高能力な装置を使用するユーザの体験を犠牲にし、仮想空間全体の豊かさを制限してしまう。
【発明の概要】
【０００３】
本発明の一態様は、別々のクライアントコンピューティング装置を介して仮想空間の単一のインスタンスの二次元または三次元表示を可能とするシステム及び方法に関する。これは、仮想空間へのアクセス性を拡張し得る。結果として、インターフェイスとして接続する仮想空間の次元にかかわらず、ユーザが相互に交流することを可能とし得る。その他、非限定的な例として、単一のユーザが、クライアントコンピューティング装置上では仮想空間のインスタンスの三次元描写にアクセスし、あまり高性能でないクライアントコンピューティング装置（例えば、モバイルデバイス）上では仮想空間のインスタンスの二次元描写にアクセスすることも考えられる。
【０００４】
システムは、仮想空間サーバを含む。仮想空間サーバは、一又は複数の通信チャネルを介して一又は複数のクライアントコンピューティングプラットフォームと通信するよう構成される。仮想空間サーバは、一又は複数のコンピュータプログラムモジュールを実行するよう構成される。コンピュータプログラムモジュールとしては、一又は複数の仮想空間モジュール、ユーザモジュール、進路決定モジュール、及び／又は他のモジュールが含まれる。
【０００５】
仮想空間モジュールは、仮想空間のインスタンスを実装し、仮想空間のビジュアル描写を決定するよう構成される。こうした描写の表示を可能とするために構成された仮想空間情報は、ユーザに表示するために、仮想空間サーバから一又は複数のクライアントコンピューティングプラットフォームへ通信される。決定され、所定のクライアントコンピューティングプラットフォームへ送信された仮想空間情報は、所定のクライアントコンピューティングプラットフォームを介してユーザによって操作されているユーザキャラクタに対応するものであり、及び／又は、当該ユーザキャラクタを含む。
【０００６】
ユーザモジュールは、システムのユーザに関係する一又は複数のユーザプロファイルにアクセスし、及び／又は、当該ユーザプロファイルを管理するよう構成される。ユーザプロファイルは、例えば、仮想空間内でユーザを識別する情報、仮想空間アカウント情報、仮想空間使用情報、及び／又はその他のユーザに関する情報を含む。一又は複数のユーザプロファイルは、仮想空間サーバ、一又は複数のクライアントコンピューティングプラットフォーム、及び／又は他の記憶する場所によって格納された情報を含む。
【０００７】
進路決定モジュールは、仮想空間の二次元描写を見るユーザに関係するユーザキャラクタが、仮想空間の三次元描写でたどる進路を決定するように構成される。進路決定モジュールは、以下で詳述する。
【０００８】
各々のクライアントコンピューティングプラットフォームは、一又は複数のコンピュータプログラムモジュールを実行するよう構成される。コンピュータプログラムモジュールは、一又は複数の、通信モジュール、次元決定モジュール、表示モジュール、到達点モジュール、及び／又はその他のモジュールを含む。
【０００９】
通信モジュールは、仮想空間情報を受信するよう構成され、例えば、仮想空間サーバから受信する。通信モジュールは、システムの一又は複数のコンポーネントに対して情報を送信するよう構成される。
【００１０】
次元決定モジュールは、所定のクライアントコンピューティングプラットフォーム、ユーザプリファレンス、ユーザにより選択可能なセッティング、及び／又は他の要因に関係する一又は複数の尺度（metrics）に基づき、仮想空間描写を二次元または三次元で表示するかを決定するよう構成される。こうした尺度としては、例えば、所定のクライアントコンピューティングプラットフォームの計算能力、所定のクライアントコンピューティングプラットフォームに関する通信バンド幅、所定のクライアントコンピューティングプラットフォームに関するスクリーンの大きさ、及び／又は所定のクライアントコンピューティングプラットフォームに関する他の尺度または特徴を含む。
【００１１】
表示モジュールは、所定のクライアントコンピューティングプラットフォームを介して仮想空間描写の表示を支援するよう構成される。一部の実施例に従えば、仮想空間描写は、次元決定モジュールの決定に基づき二次元または三次元で表示される。
【００１２】
到達点モジュールは、所定のクライアントコンピューティングプラットフォームに関係するユーザキャラクタにとっての終点選択（end-point selection）を受信するよう構成される。終点は、ユーザキャラクタにとっての仮想空間内の空間的な到達点である。到達点モジュールは、クライアントコンピューティングプラットフォームを介してユーザに表示されるインターフェイスを介して終点選択を受信する。終点選択は、座標、場所、 お気に入りの場所のセット、他のユーザキャラクタの位置、（動いている、及び／又は静止している）オブジェクト、及び／又は仮想空間内の位置を示す他の情報を含む。終点選択は、以下で詳述するように、仮想空間の三次元描写でのこうしたユーザキャラクタのための一又は複数の進路を決定するために、仮想空間サーバの進路決定モジュールによって用いられる。
【００１３】
再び仮想空間サーバの進路決定モジュールに関し、当該進路決定モジュールはユーザキャラクタが仮想空間の三次元描写内でたどる一又は複数の進路を決定するように構成される。進路は、仮想空間の二次元描写を見るユーザに関係するユーザキャラクタのために決定される。一部の実施例では、一又は複数の進路の各々は、クライアントコンピューティングプラットフォームの到達点モジュールにより受信される終点選択、ユーザセッティング、仮想空間内のユーザの関係性、ユーザによる過去の使用パターン、及び／又は他の情報に基づいて自動的に決定される。所定の進路は、静的、動的、及び／又は確率的に選択される。
【００１４】
仮想空間サーバから受信する仮想空間情報は、仮想空間が二次元または三次元のいずれで描写されるかについて不知である（agnostic）。即ち、クライアントコンピューティングプラットフォームによって表示される仮想空間描写の次元にかかわらず、同一の仮想空間情報がクライアントコンピューティングプラットフォームに送られる。それゆえ、仮想空間の二次元描写及び三次元描写のユーザが、交流し、仮想空間の単一のインスタンスに参加することができる。より具体的には、仮想空間の二次元描写のユーザは、仮想空間の二次元描写の範囲内で、仮想空間の三次元描写のユーザと交流することができるようにされている。反対に、仮想空間の三次元描写のユーザは、仮想空間の三次元描写の範囲内で、仮想空間の二次元描写のユーザと交流することができるようにされている。
【００１５】
本発明の上記及び上記以外の特徴及び性質、並びに、関連する構成要素及び各部分の組み合わせの動作方法及び機能、及び、製造の経済性については、添付図面を参照しつつ以下の詳細な説明と添付の特許請求の範囲を検討することによってさらに明らかになる。これらはいずれも本明細書の一部を構成する。本明細書においては、様々な図面において関連する部分は類似の参照符号によって示される。添付図面は例示及び説明のためのものであり、本発明の発明特定事項の定義として用いることは意図されていない。本明細書及び特許請求の範囲における用法によれば、単数形の「a」、「an」及び「the」には複数のものへの言及が含まれるが、文脈上別に解すべきことが明白な場合はこの限りでない。
【図面の簡単な説明】
【００１６】
【図１】一又は複数の実施例に従って、クライアントコンピューティングプラットフォームを介して二次元または三次元で仮想空間の単一のインスタンスを表示するよう構成されたシステムを図示する。
【００１７】
【図２】一又は複数の実施例に従って、クライアントコンピューティングプラットフォームを介して二次元または三次元で仮想空間の単一のインスタンスを表示するための方法を図示する。
【発明を実施するための形態】
【００１８】
図１は、一又は複数の実施例に従って、クライアントコンピューティングプラットフォームを介して二次元または三次元で仮想空間の単一のインスタンスを表示するよう構成されたシステム１００を示す。こうした仮想空間の例としては、仮想世界、ビデオゲーム、ソーシャルゲーム、及び／又はその他の仮想空間を含む。本発明は、文脈上、仮想空間の二次元及び三次元表示として説明されるが、これは，仮想空間の他の表示について考慮することを制限する意図でない。例えば、仮想空間はテキストの形式で描写しても良い。一部の実施例では、システム１００は仮想空間サーバ１０２を含む。仮想空間サーバ１０２は、クライアント／サーバアーキテクチャに従って一又は複数のクライアントコンピューティングプラットフォーム１０４と通信するよう構成される。ユーザは、クライアントコンピューティングプラットフォーム１０４を介してシステム１００及び／又は仮想空間にアクセスする。
【００１９】
仮想空間サーバ１０２は、一又は複数のコンピュータプログラムモジュールを実行するよう構成される。コンピュータプログラムモジュールとしては、一又は複数の、仮想空間モジュール１０６、ユーザモジュール１０８、進路決定モジュール１１０、及び／又は他のモジュールが含まれる。
【００２０】
仮想空間モジュール１０６は、仮想空間のインスタンスを実装し、仮想空間のビジュアル描写を決定するよう構成される。こうした描写を表示可能な仮想空間情報は、ユーザに表示するために、（例えば、ストリーミングを介して、オブジェクト／ポジションデータを介して、及び／又は他の情報を介して）仮想空間サーバ１０２からクライアントコンピューティングプラットフォーム１０４へと通信される。ここで、仮想空間情報が、仮想空間が二次元または三次元で描写されるかどうかについて知ることができないということは注目すべき点である。即ち、クライアントコンピューティングプラットフォーム１０４.により表示される仮想空間描写の次元にかかわらず、同一の仮想空間情報がクライアントコンピューティングプラットフォーム１０４に送られる。決定され、所定のクライアントコンピューティングプラットフォーム１０４へ送信された仮想空間情報は、所定のクライアントコンピューティングプラットフォーム１０４を介してユーザにより操作されるユーザキャラクタに対応するものであり、及び／又は当該ユーザキャラクタを含む。決定され、所定のクライアントコンピューティングプラットフォーム１０４へ送信された仮想空間情報は、仮想空間内の位置（例えば、描写を見ている位置、描写の位置、及び／又は他の位置）、ズーム倍率、オブジェクトの次元、視点、及び／又は視界パラメータ（view parameter）に対応するものとしても良い。一又は複数の視界パラメータはユーザによって選択可能とすることもできる。
【００２１】
仮想空間のインスタンスは、クライアントコンピューティングプラットフォーム１０４を介してユーザによりアクセス可能な模擬空間を備え、この模擬空間がユーザに対して仮想空間描写を表示する。模擬空間は地形（topography）を持ち、一又は複数のユーザにより実行中のリアルタイム交流を表現し、及び／又は地形内での移動が可能であって地形内に位置する一又は複数のオブジェクトを含む。一部のインスタンスでは、地形は２次元地形である。他のインスタンスでは、地形は３次元地形である。地形は、模擬空間の次元、及び／又は模擬空間で「生まれた（native）」表面やオブジェクトの外観の特徴を含み得る。一部のインスタンスでは、地形は、少なくとも模擬空間の実体的な部分を覆う表面（例えば、地面）を描写する。一部のインスタンスでは、地形は、そこに位置する一又は複数の物体と共にその体積（例えば、一又は複数の天体が位置する重力に乏しい空間のシミュレーション）を記述する。ゲームのインスタンスは、同期的、非同期的、及び／又は半同期的とし得る。
【００２２】
仮想空間の描写、及び／又はそれと関係する仮想空間情報が仮想空間モジュール１０６によって決定される方法についての上述した説明は、限定することを意図するものではない。仮想空間モジュール１０６は、仮想空間を、より制限的なまたは豊富な方法で表現するよう構成することもできる。例えば、仮想空間のために決定される描写は、仮想空間内の所定の場所におけるイベントを描写するグラフィクスの限られたセットから選択されるものとしても良い。描写は、比較的一般的なグラフィクスを超えて、その場所の現在の状態の詳細を記述する追加のコンテンツ（例えば、テキスト、オーディオ、事前記憶型のビデオコンテンツ、及び／又はその他のコンテンツ）を含むものとしても良い。例えば、描写は、立ちはだかる敵対者のテキストの記述を伴う一般的な戦闘グラフィクスを含むものとしても良い。仮想空間内の個々の場所の他の表現も考えられる。
【００２３】
仮想空間モジュール１０６によって実行される仮想空間のインスタンスの範囲内で、ユーザは、仮想空間や他のユーザと相互に交流するために、キャラクターやオブジェクト、模擬的な物理現象（例えば、風、雨、地震、及び／又はその他の現象）、及び／又は仮想空間内の他の要素を操作する。ユーザキャラクタにはアバターが含まれる。ここで用いるように、「ユーザキャラクタ」という用語は、仮想空間内で表示し、個別のユーザを表現するオブジェクト（またはオブジェクトの集合）のことを指す。ユーザキャラクタは、関係するユーザにより操作される。ユーザ管理エレメントは、仮想空間内を移動し、仮想空間と交流する（例えば、仮想空間内のユーザでないキャラクター、及び／又は仮想空間内の他のオブジェクト）。所定のユーザにより操作され、及び／又は、所定のユーザに関係するユーザ管理エレメントは、その所定のユーザにより生成され、及び／又はカスタマイズされる。ユーザは、仮想商品及び／又は仮想通貨の「目録（inventory）」を持つことができる。仮想所品や仮想通貨は、ユーザが仮想空間内で（例えば、ユーザキャラクタや他のユーザ管理エレメント、及び／又は他のアイテムを取り扱うことによって）使用することができる。 
【００２４】
ユーザは、仮想空間内で利用可能な一又は複数のユーザ管理エレメントを操作することにより仮想空間のインスタンスに参加することができる。操作は、ユーザによるクライアントコンピューティングプラットフォーム１０４を介した操作入力、及び／又はコマンド入力を介して行われる。ユーザは、仮想空間内で交換される通信を通してお互いに交流することができる。こうした通信は、一又は複数の、テキストのチャット、インスタントメッセージ、プライベートメッセージ、音声通信、及び／又はその他の通信を含む。通信は、ユーザそれぞれのクライアントコンピューティングプラットフォーム１０４を介してユーザにより受信され入力される。通信は、仮想空間サーバ１０２を介して（例えば、仮想空間モジュール１０６を介して）適切なユーザから適切なユーザへと届けられる。
【００２５】
ユーザモジュール１０８は、システム１００のユーザに関する一又は複数のユーザプロファイルにアクセスし、及び／又は管理するよう構成される。一又は複数のユーザプロファイルは、仮想空間サーバ１０２、一又は複数のクライアントコンピューティングプラットフォーム１０４、及び／又はその他の記憶場所によって記憶されている情報を含む。ユーザプロファイルは、例えば、仮想空間内でユーザを識別する情報（例えば、ユーザ名またはハンドル、番号、識別子、及び／又はその他の識別する情報）、セキュリティログイン情報（例えば、ログインコード、またはパスワード）、仮想空間アカウント情報、サブスクリプション情報、仮想通貨アカウント情報（例えば、ユーザの信用として保持される通貨（currency held in
credit for a user）に関する）、関係性情報（例えば、ゲーム内のユーザ間の関係性に関する情報）、仮想空間の利用情報、ユーザに関する人口統計学情報、仮想空間内のユーザ間の交流履歴、ユーザにより述べられる情報、ユーザの購買情報、ユーザのブラウジング履歴、ユーザに関係するクライアントコンピューティングプラットフォーム識別情報、ユーザに関する電話番号、及び／又はユーザに関係するその他の情報を含む。
【００２６】
進路決定モジュール１１０は、仮想空間の二次元描写のユーザに関するユーザキャラクタが仮想空間の三次元描写内でたどる一又は複数の進路を決定するよう構成されている。進路決定モジュール１１０については、以下でさらに説明する。
【００２７】
各々のクライアントコンピューティングプラットフォーム１０４は、一又は複数のコンピュータプログラムモジュールを実行するよう構成される。コンピュータプログラムモジュールとしては、一又は複数の、通信モジュール１１２、次元決定モジュール１１４、表示モジュール１１６、到達点モジュール１１８、及び／又はその他のモジュールが含まれる。
【００２８】
通信モジュール１１２は、仮想空間情報を受信するよう構成される。仮想空間情報は、仮想空間サーバ１０２、及び／又はシステム１００のその他のコンポーネントから受信される。仮想空間情報は、個別のクライアントコンピューティングプラットフォーム１０４における仮想空間描写の表示を支援するよう構成される。それゆえ、仮想空間情報は、仮想空間の視界、オブジェクト／ポジション情報、及び／又は仮想空間の表示を支援するのに適したその他の情報を含む。通信モジュール１１２は、仮想空間サーバ１０２を含むシステム１００の一又は複数のコンポーネントに対して情報を送信するよう構成される。
【００２９】
次元決定モジュール１１４は、所定のクライアントコンピューティングプラットフォーム１０４やユーザプリファレンス、ユーザにより選択可能なセッティング、及び／又はその他の要因に関係する一又は複数の尺度に基づいて二次元または三次元で仮想空間描写を表示するかどうかを決定するよう構成される。こうした尺度としては、例えば、所定のクライアントコンピューティングプラットフォーム１０４の計算能力、所定のクライアントコンピューティングプラットフォーム１０４に関する通信バンド幅、所定のクライアントコンピューティングプラットフォーム１０４に関するスクリーンの大きさ、及び／又は所定のクライアントコンピューティングプラットフォーム１０４に関するその他の尺度または特徴を含む。
【００３０】
通信バンド幅が尺度である一部の実施例によれば、次元決定モジュール１１４は、所定のクライアントコンピューティングプラットフォーム１０４に関係するネットワーク接続の一又は複数の特徴を検出するよう構成される。一部の実施例では、仮想空間サーバ１０２の一又は複数のコンピュータプログラムモジュール（例えば、仮想空間モジュール１０６）は、所定のクライアントコンピューティングプラットフォーム１０４に関係するネットワーク接続の一又は複数の特徴を検出するよう構成されている。こうした特徴としては、バンド幅（例えば、データ転送レート）がサービスプロバイダにより計測されるかどうか、データ転送量がサービスプロバイダにより計測されるかどうか、所定のクライアントコンピューティングプラットフォーム１０４に関係する接続タイプ、及び／又はネットワーク接続に関係するその他の特徴が含まれる。接続タイプの例としては、セルラー、ＷｉＦｉ、及び／又はその他の接続タイプを含む。一部の実施例では、仮想空間サーバ１０２は、ネットワーク接続の一又は複数の特徴を補うために、動的、及び／又は静的に、所定のクライアントコンピューティングプラットフォーム１０４に対するデータ転送量、及び／又はデータ転送レートを調整するよう構成される。例えば、仮想空間サーバ１０２は、バンド幅の使用を低減するために、特定のクライアントコンピューティングプラットフォーム１０４に対してより少ないデータを送信しても良い。一部の実施例では、クライアントコンピューティングプラットフォーム１０４は、仮想空間サーバ１０２により送信されるデータの一部分を無視する。
【００３１】
上述したように、クライアントコンピューティングプラットフォーム１０４が受信する仮想空間情報は、仮想空間が二次元または三次元で描写されるかどうかについて知ることができない。即ち、クライアントコンピューティングプラットフォーム１０４により表示される仮想空間描写の次元にかかわらず、同一の仮想空間情報が一又は複数のクライアントコンピューティングプラットフォーム１０４に対して送信される。それゆえ、仮想空間の二次元描写及び三次元描写のユーザは、交流し仮想空間の単一のインスタンスに参加する。より具体的には、仮想空間の二次元描写のユーザは、仮想空間の二次元描写の範囲内で、仮想空間の三次元描写のユーザと交流することができるようにされている。反対に、仮想空間の三次元描写のユーザは、仮想空間の三次元描写の範囲内で、仮想空間の二次元描写のユーザと交流することができるようにされている。
【００３２】
ここで説明されている所定のクライアントコンピューティングプラットフォーム１０４によって表示される仮想空間描写の次元を決定するための方法は、その他の方法について考慮することを制限する意図ではないことが認識される。例えば、一部の実施例では、所定のクライアントコンピューティングプラットフォーム１０４の一又は複数のハードウェア装置が、仮想空間描写の次元を決定するものとしても良い。これは、カラーテレビ放送にやや類似しており、カラーテレビセットと白黒テレビセットの双方が同じ放送を受信したとしても、カラーテレビセットは放送をカラーで描写し、白黒テレビセットは放送を白黒で描写するのである。
【００３３】
表示モジュール１１６は、クライアントコンピューティングプラットフォーム１０４を介して仮想空間描写の表示を支援するよう構成される。こうした表示は、クライアントコンピューティングプラットフォーム１０４に関係する表示装置と一緒に実行される。一部の実施例に従えば、仮想空間描写は、次元決定モジュール１１４の決定に基づき二次元または三次元で表示される。上述したように、仮想空間描写の次元に関する決定は、次元決定モジュール１１４以外の手段を用いて行うこともできる。
【００３４】
到達点モジュール１１８は、所定のクライアントコンピューティングプラットフォーム１０４に関係するユーザキャラクタにとっての終点選択を受信するよう構成される。終点は、ユーザキャラクタにとっての仮想空間内の空間的な到達点である。到達点モジュール１１８は、クライアントコンピューティングプラットフォーム１０４を介してユーザに表示されるインターフェイスを介して終点選択を受信する。終点選択は、座標、場所、お気に入りの場所のセット、他のユーザキャラクタの位置、（動いている、及び／又は静止している）オブジェクト、及び／又は仮想空間内の位置を示すその他の情報を含む。終点選択、及び／又はそれと関連する情報は、クライアントコンピューティングプラットフォーム１０４から仮想空間サーバ１０２へと通信される。終点選択は、以下で詳述するように 、仮想空間の三次元描写のこうしたユーザキャラクタのために一又は複数の進路を決定するために、仮想空間サーバ１０２の進路決定モジュール１１０によって用いられる。
【００３５】
再び仮想空間サーバ１０２の進路決定モジュール１１０に関し、当該進路決定モジュール１１０はユーザキャラクタが仮想空間の三次元描写内でたどる一又は複数の進路を決定するように構成される。進路は、仮想空間の二次元描写を見るユーザに関係するユーザキャラクタのために決定される。一部の実施例では、一又は複数の進路の各々は、クライアントコンピューティングプラットフォーム１０４の到達点モジュール１１８により受信される終点選択、ユーザセッティング、仮想空間内のユーザの関係性、ユーザによる過去の使用パターン、及び／又はその他の情報に基づいて自動的に決定される。所定の進路は、静的、動的、及び／又は確率的に選択される。
【００３６】
一部の実施例では、仮想空間サーバ１０２、ククライアントコンピューティングプラットフォーム１０４、及び／又は外部リソース１２０は、一又は複数の電子的な通信リンクを介して動作可能に連結する。例えば、こうした電子的な通信リンクは、少なくとも一部では、インターネット、及び／又はその他のネットワークのようなネットワークを介して確立される。これは限定することを意図しておらず、本開示の範囲が、仮想空間サーバ１０２、クライアントコンピューティングプラットフォーム１０４、及び／又は外部リソース１２０がその他のいずれかの通信媒体を介して動作可能に連結するような実施例を含むことは認識されるだろう。
【００３７】
外部リソース１２０は、情報源、システム１００の外部の仮想空間のホスト及び／又はプロバイダ、システム１００に参加する外部エンティティ、及び／又はその他のリソースを含む。一部の実施例では、ここで外部リソース１２０に帰する機能の一部または全部はシステム１００内に含まれるリソースにより提供される。
【００３８】
所定のクライアントコンピューティングプラットフォーム１０４は、電子記憶装置１２２、一又は複数の処理装置１２４、及び／又はその他のコンポーネントを含む。クライアントコンピューティングプラットフォーム１０４は、ネットワーク及び／又は他のコンピューティングプラットフォームと情報を交換することを可能とする通信ライン、または通信ポートを含む。図１におけるクライアントコンピューティングプラットフォーム１０４の図は、これに限定することを意図するものではない。クライアントコンピューティングプラットフォーム１０４は、複数のハードウェア、ソフトウェア、及び／又はファームウェアコンポーネントを含み、これらは、ここでクライアントコンピューティングプラットフォーム１０４に帰する機能を提供するために一緒に動作する。限定しない例として、所定のクライアントコンピューティングプラットフォーム１０４には、一又は複数のデスクトップコンピュータ、ラップトップコンピュータ、ハンドヘルドコンピュータ、ネットブック、スマートフォン、ゲームコンソール、及び／又はその他のコンピューティングプラットフォームが含まれる。
【００３９】
電子記憶装置１２２は、電子的に情報を記憶する電子記憶媒体を備える。電子記憶装置１２２の電子記憶媒体は、システム記憶装置及び／又はリムーバブル記憶装置の一つまたは双方を含む。ここで、システム記憶装置は、クライアントコンピューティングプラットフォーム１０４と共に必須なものとして提供され（例えば、実質的に取り外し不能）、リムーバブル記憶装置は、例えば、ポート（例えば、ＵＳＢポート、ｆｉｒｅｗｉｒｅポート、など）またはドライブ（例えば、ディスクドライブなど）を介してクライアントコンピューティングプラットフォーム１０４と着脱可能に接続できる。電子記憶装置１２２は一又は複数の、光学的に読み取り可能な記憶媒体（例えば、光ディスクなど）、磁気的に読み取り可能な記憶媒体（例えば、磁気テープ、磁気ハードディスク、フロッピードライブなど）、電気的な電荷ベースの記憶媒体（例えば、ＥＥＰＲＯＭ、ＲＡＭなど）、ソリッドステート（solid-state）記憶媒体（例えば、フラッシュドライブなど）、及び／又はその他の電子的に読み取り可能な記憶媒体を含む。電子記憶装置１２２は、一又は複数の仮想記憶リソース（例えば、クラウドストレージ、仮想プライベートネットワーク、及び／又はその他の仮想記憶リソース）を含む。電子記憶装置１２２は、ソフトウェアアルゴリズム、処理装置１２４によって決定される情報、クライアントコンピューティングプラットフォーム１０４によって受信される情報、仮想空間サーバ１０２によって受信される情報、及び／又はクライアントコンピューティングプラットフォーム１０４にここで説明するような動作を可能とするその他の情報を格納しても良い。
【００４０】
処理装置１２４は、クライアントコンピューティングプラットフォーム１０４の情報処理能力を提供するよう構成される。したがって、処理装置１２４は、一又は複数のデジタルプロセッサ、アナログプロセッサ、情報を処理するよう設計されたデジタル回路、情報を処理するよう設計されたアナログ回路、状態マシン、及び／又は電子的に情報を処理するためのその他のメカニズムを含む。処理装置１２４は、図１内では単一の実体として示されているが、これは単に説明上の都合である。一部の実施例では、処理装置１２４は、複数の処理ユニットを含む。これらの処理ユニットは、物理的に同一の装置内に配置するものとしても良く、または、処理装置１２４が協調して動作する複数の装置の機能を処理することを示しても良い。処理装置１２４は、モジュール１１２、１１４、１１６、１１８、及び／又はその他のモジュールを実行するよう構成される。 処理装置１２４は、ソフトウェア、ハードウェア、ファームウェア、これらの組合せ（ソフトウェア、ハードウェア、及び／又はファームウェアの組合せ）、及び／又は処理装置１２４の処理能力を設定する他のメカニズムによって、モジュール１１２、１１４、１１６、１１８、及び／又はその他のモジュールを実行するよう構成しても良い。
【００４１】
モジュール１１２、１１４、１１６、及び１１８は、図１内では単一の処理ユニット内に共存するものとして描かれているが、処理装置１２４が多重処理ユニットを含む実施例では、一又は複数のモジュール１１２、１１４、１１６、及び／又は１１８は、他のモジュールから離れて配置され得るという点は、認識されるべきである。以下で説明するそれぞれ異なるモジュール１１２、１１４、１１６、及び／又は１１８によって提供される機能の記載は説明上の都合であって、モジュール１１２、１１４、１１６、及び／又は１１８が記載と同様の機能を提供するように限定することを意図するものではない。例えば、一又は複数のモジュール１１２、１１４、１１６、及び／又は１１８は削除しても良く、その機能の一部または全部を、モジュール１１２、１１４、１１６、及び／又は１１８の他のモジュールによって提供するものとしても良い。その他の例として、処理装置１２４は、以下でモジュール１１２、１１４、１１６、及び／又は１１８のいずれかに帰する機能の一部または全部を実行する一又は複数の追加のモジュールを実行するよう構成しても良い。
【００４２】
仮想空間サーバ１０２は、電子記憶装置１２６、一又は複数の処理装置１２８、及び／又はその他のコンポーネントを含む。仮想空間サーバ１０２は、ネットワーク及び／又はその他のコンピューティングプラットフォームと情報を交換することを可能とする通信ライン、または、通信ポートを含む。図１内における仮想空間サーバ１０２の図は、これに限定することを意図したものではない。仮想空間サーバ１０２は、複数のハードウェア、ソフトウェア、及び／又はファームウェアコンポーネントを含み、これらは、ここで仮想空間サーバ１０２に帰する機能を提供するために一緒に動作する。例えば、仮想空間サーバ１０２は、仮想空間サーバ１０２として一緒に動作するコンピューティングプラットフォームのクラウドによって実装するものとしても良い。
【００４３】
電子記憶装置１２６は、電子的に情報を記憶する電子記憶媒体を備える。電子記憶装置１２６の電子記憶媒体は、システム記憶装置及び／又はリムーバブル記憶装置の一つまたは双方を含む。ここで、システム記憶装置は、仮想空間サーバ１０２と共に必須なものとして提供され（例えば、実質的に取り外し不能）、リムーバブル記憶装置は、例えば、ポート（例えば、ＵＳＢポート、ｆｉｒｅｗｉｒｅポート、など）またはドライブ（例えば、ディスクドライブなど）を介して仮想空間サーバ１０２と着脱可能に接続できる。電子記憶装置１２６は一又は複数の、光学的に読み取り可能な記憶媒体（例えば、光ディスクなど）、磁気的に読み取り可能な記憶媒体（例えば、磁気テープ、磁気ハードディスク、フロッピードライブなど）、電気的な電荷ベースの記憶媒体（例えば、ＥＥＰＲＯＭ、ＲＡＭなど）、ソリッドステート（solid-state）記憶媒体（例えば、フラッシュドライブなど）、及び／又はその他の電子的に読み取り可能な記憶媒体を含む。電子記憶装置１２６は、一又は複数の仮想記憶リソース（例えば、クラウドストレージ、仮想プライベートネットワーク、及び／又はその他の仮想記憶リソース）を含む。電子記憶装置１２６は、ソフトウェアアルゴリズム、処理装置１２８によって決定される情報、仮想空間サーバ１０２によって受信される情報、クライアントコンピューティングプラットフォーム１０４によって受信される情報、及び／又は仮想空間サーバ１０２にここで説明するような動作を可能とする他の情報を格納しても良い。
【００４４】
処理装置１２８は、仮想空間サーバ１０２の情報処理能力を提供するよう構成される。したがって、処理装置１２８は、一又は複数の、デジタルプロセッサ、アナログプロセッサ、情報を処理するよう設計されたデジタル回路、情報を処理するよう設計されたアナログ回路、状態マシン、及び／又は電子的に情報を処理するためのその他のメカニズムを含む。処理装置１２８は、図１内では単一の実体として示されているが、これは単に説明上の都合である。一部の実施例では、処理装置１２８は、複数の処理ユニットを含む。これらの処理ユニットは、物理的に同一の装置内に配置するものとしても良く、または、処理装置１２８が協調して動作する複数の装置の機能を処理することを示しても良い。処理装置１２８は、モジュール１０６、１０８、１１０、及び／又はその他のモジュールを実行するよう構成される。 処理装置１２８は、ソフトウェア、ハードウェア、ファームウェア、これらの組合せ（ソフトウェア、ハードウェア、及び／又はファームウェアの組合せ）、及び／又は処理装置１２８の処理能力を設定する他のメカニズムによって、モジュール１０６、１０８、１１０、及び／又はその他のモジュールを実行するよう構成しても良い。
【００４５】
モジュール１０６、１０８、及び１１０は、図１内では単一の処理ユニット内に共存するものとして描かれているが、処理装置１２８が多重処理ユニットを含む実施例では、一又は複数のモジュール１０６、１０８、及び／又は１１０は、他のモジュールから離れて配置され得るという点は、認識されるべきである。以下で説明するそれぞれ異なるモジュール１０６、１０８、及び／又は１１０によって提供される機能の記載は説明上の都合であって、モジュール１０６、１０８、及び／又は１１０が記載と同様の機能を提供するように限定することを意図するものではない。例えば、一又は複数のモジュール１０６、１０８、及び／又は１１０は削除しても良く、その機能の一部または全部を、モジュール１０６、１０８、及び／又は１１０の他のモジュールによって提供するものとしても良い。その他の例として、処理装置１２８は、以下でモジュール１０６、１０８、及び／又は１１０のいずれかに帰する機能の一部または全部を実行する一又は複数の追加のモジュールを実行するよう構成しても良い。
【００４６】
図２は、クライアントコンピューティングプラットフォームを介して二次元または三次元で仮想空間の単一のインスタンスを表示するための方法２００を、一又は複数の実施例に基づいて図示する。以下で示す方法２００の動作は、説明のためのものである。実施例の一部では、方法２００は、ここで説明されていない一又は複数の追加の動作と共に、及び／又は、ここで触れられている一又は複数の動作なしに、完遂することができる。さらに、図２において図示し、以下で説明する方法２００における動作の順序は、これに限定することを意図したものではない。
【００４７】
一部の実施例では、方法２００は、一又は複数の処理装置（例えば、デジタルプロセッサ、アナログプロセッサ、情報を処理するよう設計されたデジタル回路、情報を処理するよう設計されたアナログ回路、状態マシン、及び／又は電子的に情報を処理するための他のメカニズム）により実装される。一又は複数の処理装置は、電子記憶媒体に電子的に記憶されている指示に応じて、方法２００の動作の一部または全部を実行する一又は複数の装置を含む。一又は複数の処理装置は、方法２００の一又は複数の動作を実行するようハードウェア、ファームウェア、及び／又はソフトウェアを介して特別に設計され構成された一又は複数の装置を含む。
【００４８】
動作２０２では、仮想空間情報が仮想空間サーバ１０２から複数のクライアントコンピューティングプラットフォーム１０４に対して提供される。仮想空間情報は、複数のクライアントコンピューティングプラットフォームの各々に対して、複数のクライアントコンピューティングプラットフォームの各々に関係するユーザに対して仮想空間描写を提供することを許可するよう構成される。図２は、クライアントコンピューティングプラットフォーム１０４Ａ（二次元で仮想空間の表示が可能である）およびクライアントコンピューティングプラットフォーム１０４Ｂ（三次元で仮想空間の表示が可能である）により受信される仮想空間情報を図示する。クライアントコンピューティングプラットフォーム１０４Ａ及びクライアントコンピューティングプラットフォーム１０４Ｂの双方によって受信される仮想空間情報は同一である。一部の実施例では、動作２０２は、仮想空間サーバ１０２のユーザモジュール１０６、及び／又は、個別のクライアントコンピューティングプラットフォーム１０４の通信モジュール１１２を介して実行される。
【００４９】
動作２０４Ａでは、クライアントコンピューティングプラットフォーム１０４Ａにおいて、クライアントコンピューティングプラットフォーム１０４Ａに関係する尺度に基づいて二次元または三次元で仮想空間を表示するかどうかに関する決定がなされる。動作２０４Ｂでは、クライアントコンピューティングプラットフォーム１０４Ｂにおいて、クライアントコンピューティングプラットフォーム１０４Ｂに関係する尺度に基づいて二次元または三次元で仮想空間を表示するかどうかに関する決定がなされる。動作２０４Ａ及び２０４Ｂは、クライアントコンピューティングプラットフォーム１０４Ａ及びクライアントコンピューティングプラットフォーム１０４Ｂの次元決定モジュール１１４によって、それぞれ実施例に基づき実行される。
【００５０】
動作２０６では、二次元の仮想空間描写は、クライアントコンピューティングプラットフォーム１０４Ａを介して表示され、動作２０６Ｂに関しては三次元の仮想空間描写がクライアントコンピューティングプラットフォーム１０４Ｂを介して表示される。動作２０６Ａ及び２０６Ｂは、クライアントコンピューティングプラットフォーム１０４Ａ及びクライアントコンピューティングプラットフォーム１０４Ｂの表示モジュール１１６Ａによって、それぞれ実施例に基づき実行される。
【００５１】
動作２０８では、クライアントコンピューティングプラットフォーム１０４Ａに関係するユーザキャラクタのポジション情報は、クライアントコンピューティングプラットフォーム１０４Ａから仮想空間サーバ１０２に対して通信される。一部の実施例では、動作２０８は、クライアントコンピューティングプラットフォーム１０４Ａの通信モジュール１１２によって実行される。
【００５２】
動作２１０では、クライアントコンピューティングプラットフォーム１０４Ａに関係するユーザキャラクタのポジション情報は、仮想空間サーバ１０２からクライアントコンピューティングプラットフォーム１０４Ｂに対して通信される。動作２０８は、仮想空間サーバ１０２のユーザモジュール１０６によって、及び／又は、クライアントコンピューティングプラットフォーム１０４Ｂの通信モジュール１１２によって、実施例に基づき実行される。
【００５３】
動作２１２では、クライアントコンピューティングプラットフォーム１０４Ａに関係するユーザキャラクタは、クライアントコンピューティングプラットフォーム１０４Ｂでは、三次元の仮想空間描写として表示される。動作２１２は、一部の実施例では、クライアントコンピューティングプラットフォーム１０４Ｂの表示モジュール１１６によって実行される。
【００５４】
動作２１４では、クライアントコンピューティングプラットフォーム１０４Ｂに関係するユーザキャラクタのポジション情報は、クライアントコンピューティングプラットフォーム１０４Ｂから仮想空間サーバ１０２へと通信される。一部の実施例では、動作２１４は、クライアントコンピューティングプラットフォーム１０４Ｂの通信モジュール１１２によって実行される。
【００５５】
動作２１６では、クライアントコンピューティングプラットフォーム１０４Ｂに関係するユーザキャラクタのポジション情報は、仮想空間サーバ１０２からクライアントコンピューティングプラットフォーム１０４Ａへと通信される。動作２１６は、仮想空間サーバ１０２のユーザモジュール１０６によって、及び／又は、クライアントコンピューティングプラットフォーム１０４Ａの通信モジュール１１２によって、実施例に基づき実行される。
【００５６】
動作２１８では、クライアントコンピューティングプラットフォーム１０４Ｂに関係するユーザキャラクタは、クライアントコンピューティングプラットフォーム１０４Ａでは二次元仮想空間描写で表示される。動作２１８は、クライアントコンピューティングプラットフォーム１０４の表示モジュール１１６Ａによって、一部の実施例において実行される。
【００５７】
以上、現時点で最も実用的で望ましいと考えられる態様に基づいて本発明を説明したが、これらの説明は、本発明の説明のみを目的としたものであり、本発明を開示された実施形態に限定することを意図したものではない。一方、これらの説明は、請求項の趣旨及び範囲に含まれる変更及び均等物を含むものである。例えば、任意の実施形態の特徴と他の実施形態の一又は複数の特徴との組み合わせも可能な限り本発明の範囲に含まれる。
【図１】
2012252695.tif 000003
【図２】
2012252695.tif 000004
【外国語明細書】
2012252695000001.pdf
2012252695000002.pdf
2012252695000003.pdf
2012252695000004.pdf