(57)【要約】  データ転送システムであって、サーバと、各々が前記サーバのクライアントとして動作可能な複数の装置とを有し、前記サーバの方は、装置に対して、その装置が前記サーバの他のクライアントを含むピアグループのメンバーになることを通知する通知手段と、そのような通知が行なわれると、データをそれぞれの装置に送信するクライアント／サーバデータ送信手段と、を有し、各装置の方は、前記サーバからそれぞれのデータを受信するクライアント／サーバデータ受信手段と、前記サーバから受信したそれぞれのデータを１台あるいはそれ以上のピアに送信し、また１台あるいはそれ以上のピアから前記サーバによってそれらのピアに送信されたそれぞれのデータを受信する、ピアツーピア通信手段とを有する。【選択図】図１２
2010529547.tif 000002
【特許請求の範囲】
【請求項１】
データ転送システムであって：
前記システムは、サーバと、各々が前記サーバのクライアントとして動作可能な複数の装置とを有し；
前記サーバは：
装置に対して、その装置が前記サーバの他のクライアントを含むピアグループのメンバーになることを通知する通知機構と；
そのような通知が行なわれると、データをそれぞれの装置に送信するクライアント／サーバデータ送信器と；
を有し；
各装置は：
前記サーバからそれぞれのデータを受信するクライアント／サーバデータ受信器と；
前記サーバから受信したそれぞれのデータを１台あるいはそれ以上のピアに送信し、また１台あるいはそれ以上のピアから前記サーバによってそれらのピアに送信されたそれぞれのデータを受信する、ピアツーピア通信器と；
を有する、データ転送システム。
【請求項２】
請求項１に記載のデータ転送システムであって、前記サーバから受信したそれぞれのデータが前記ピアグループ全体として補完的であることを特徴とするデータ転送システム。
【請求項３】
請求項１に記載のデータ転送システムであって、前記サーバから受信したそれぞれのデータが前記ピアグループ全体としては重複的であり、従ってデータの少なくともあるものは前記サーバによって２台あるいはそれ以上の装置へと送信される、ことを特徴とするデータ転送システム。
【請求項４】
前記いずれか１項に記載のデータ転送システムであって、前記サーバから受信したそれぞれのデータはメディアストリームを表わすデータを含む、ことを特徴とするデータ転送システム。
【請求項５】
請求項４に記載のデータ転送システムであって、前記それぞれのデータが隣接しないビデオフレームを含む、ことを特徴とするデータ転送システム。
【請求項６】
前記いずれか１項に記載のデータ転送システムであって：
ピアツーピア伝送速度検出器と；
データ割当器と；
を有し、
前記サーバからのデータの１つあるいはそれ以上のクライアントへの割当てがそれぞれのピアツーピア伝送速度に対応したものである、
ことを特徴とするデータ転送システム。
【請求項７】
前記いずれか１項に記載のデータ転送システムであって、前記装置がオンライン仮想環境の１つあるいはそれ以上のインスタンスに接続され、またそのオンライン仮想環境においてアバターによって表わされている、ことを特徴とするデータ転送システム。
【請求項８】
請求項７に記載のデータ転送システムであって、前記サーバは前記オンライン仮想環境における前記装置のアバターの行動に応じて、装置を前記サーバによるピアグループのメンバーとして選択することができる、ことを特徴とするデータ転送システム。
【請求項９】
請求項７または請求項８に記載のデータ転送システムであって、次のリスト、すなわち、
ｉ．装置のアバターの位置が、前記オンライン仮想環境における仮想オブジェクトに関連した領域内にあること；
ｉｉ．アバターの向きによってもたらされる前記オンライン仮想環境内での視点；
ｉｉｉ．装置のアバターの位置が前記オンライン仮想環境における領域内にあること；
ｉｖ．装置のアバターと仮想オブジェクトとのやりとり；
ｖ．装置のアバターと他のアバターとのやりとり；
から選択した１つあるいはそれ以上の基準に従って、前記サーバによるピアグループのメンバーとしての装置が選択される、ことを特徴とするデータ転送システム。
【請求項１０】
前記いずれか１項に記載のデータ転送システムであって、各クライアント装置がゲーム機であることを特徴とするデータ転送システム。
【請求項１１】
サーバであって、
装置に対して、その装置が前記サーバの他のクライアントを含むピアグループのメンバーになることを通知する通知機構と；
そのような通知が行なわれると、データをそれぞれの装置に送信するクライアント／サーバデータ送信器と；
を有するサーバ。
【請求項１２】
請求項１１に記載のサーバであって、
ピア装置伝送速度モニタと；
クライアント／サーバデータ送信調節器と；
を有し、
データは前記ピアグループ内のクライアントに対してクライアントの伝送速度に応じて配分される、ことを特徴とするサーバ。
【請求項１３】
請求項１１または請求項１２に記載のサーバであって、仮想環境の複数のインスタンスのホストとなることができることを特徴とするサーバ。
【請求項１４】
請求項１３に記載のサーバであって、装置に対応するアバターの前記仮想環境のインスタンスにおける行動に応じて、その装置が前記サーバの他のクライアントを含むピアグループのメンバーになることをその装置に通知することができることを特徴とするサーバ。
【請求項１５】
クライアント／サーバ通信システムにおけるクライアントとして動作可能な装置であって：
サーバからデータを受信するクライアント／サーバデータ受信器と；
前記サーバから受信したデータを１台あるいはそれ以上のピアに送信し、また前記サーバによってそれぞれに送信されたデータを１台あるいはそれ以上のピア装置から受信する、ピアツーピア通信器と；
を有し、
前記装置はまた、それがピアツーピアグループに加わるという通知をサーバから受信し、また前記サーバから前記グループに送信されたデータを配信することができる、
ことを特徴とする装置。
【請求項１６】
請求項１５に記載の装置であって、
仮想環境レンダリング器を有し、
前記装置は、オンラインサーバによりホストされる仮想環境のインスタンスに接続することができる、
ことを特徴とする装置。
【請求項１７】
請求項１５または請求項１６に記載の装置であって、データ伝送速度情報を前記サーバに送り返すピアツーピアデータ伝送速度フィードバック機構を有することを特徴とする装置。
【請求項１８】
請求項１５ないし請求項１７のいずれか１項に記載の装置であって、ゲーム機であることを特徴とする装置。
【請求項１９】
データ転送システムであって：
サーバと；
それぞれが前記サーバのクライアントとして動作可能な１つあるいはそれ以上の装置と；
それぞれがピアツーピア装置として動作可能な１つあるいはそれ以上の装置と；
を有し、
前記サーバは：
クライアント装置としての役割をする第１の装置からデータに対する要求を受信する要求受信器と；
データを前記第１の装置に送信するクライアント／サーバデータ伝送器と；
を有し、
前記第１の装置は：
前記サーバからデータを受信するクライアント／サーバデータ受信器と；
ピアグループ内の１台あるいはそれ以上のピアからデータを受信するピアツーピア通信器と；
を有し、
前記サーバまたは前記ピアグループが、前記要求されたデータのすべてを単独で提供することが潜在的に可能であり、しかし、前記サーバと１台あるいはそれ以上のピアとが補完的な仕方で平行的に前記データを前記第１の装置がデータの完全なセットを獲得するまで前記第１の装置に伝送するように構成され、前記第１の装置が前記サーバおよび前記１台あるいはそれ以上のピアから受信するデータのそれぞれの部分は、それぞれのデータ転送速度の帰結である、
データ転送システム。
【請求項２０】
データ伝送方法であって、
サーバがクライアント装置に対して、それがクライアント装置からなるピアグループのメンバーとなることを通知するステップと；
前記サーバが前記クライアント装置にデータを伝送するステップと；
前記クライアント装置が、自分が前記サーバから受信したデータを前記ピアグループ内の他のクライアント装置にピアツーピア方式で伝送するステップと；
前記クライアント装置が、前記ピアグループ内の他のクライアント装置から、前記ピアグループ内の各クライアント装置がそれぞれ前記サーバから受信したデータを、ピアツーピア方式でそれぞれ受信するステップと；
を有するデータ伝送方法。
【請求項２１】
請求項２０に記載のデータ伝送方法であって、前記サーバから受信したそれぞれのデータが前記ピアグループ全体として補完的である、ことを特徴とするデータ転送方法。
【請求項２２】
請求項２０に記載のデータ伝送方法であって、前記サーバから受信したそれぞれのデータが前記ピアグループ全体としては重複的であり、従ってデータの少なくともあるものは前記サーバによって２台あるいはそれ以上の装置へと送信される、ことを特徴とするデータ伝送方法。
【請求項２３】
請求項２０ないし請求項２２のいずれか１項に記載のデータ伝送方法であって、前記サーバから受信したそれぞれのデータがメディアストリームを表わすデータを含む、ことを特徴とするデータ伝送方法。
【請求項２４】
請求項２３に記載のデータ伝送方法であって、前記それぞれのデータが隣接しないビデオフレームを含む、ことを特徴とするデータ伝送方法。
【請求項２５】
請求項２０ないし請求項２４のいずれか１項に記載のデータ伝送方法であって、
前記サーバからのデータを１台あるいはそれ以上のクライアントへそれぞれのピアツーピア伝送速度に応じて配分されるステップ、
を有することを特徴とするデータ伝送方法。
【請求項２６】
請求項２０ないし請求項２５のいずれか１項に記載のデータ伝送方法であって、
クライアント装置を、オンライン仮想環境の１つあるいはそれ以上のインスタンスにそれぞれ接続するステップと；
前記装置を前記オンライン仮想環境の各それぞれの前記インスタンスにおいてアバターによって表わすステップと；
を有することを特徴とするデータ伝送方法。
【請求項２７】
請求項２６に記載のデータ伝送であって、
前記サーバが、装置のアバターの前記オンライン仮想環境における行動に応じて、ピアグループのメンバーとして装置を選択するステップ、
を有することを特徴とするデータ伝送方法。
【請求項２８】
請求項２６または請求項２７に記載のデータ伝送方法であって、
前記サーバが、次のリスト、すなわち、
ｉ．装置のアバターの位置が、前記オンライン仮想環境における仮想オブジェクトに関連した領域内にあること；
ｉｉ．アバターの向きによってもたらされる前記オンライン仮想環境内での視点；
ｉｉｉ．装置のアバターの位置が前記オンライン仮想環境における領域内にあること；
ｉｖ．装置のアバターと仮想オブジェクトとのやりとり；
ｖ．装置のアバターと他のアバターとのやりとり；
から選択した１つあるいはそれ以上に対応する、前記仮想環境における、装置のアバターの行動に従って、ピアグループのメンバーとして装置を選択することを特徴とするデータ伝送方法。
【請求項２９】
データ伝送方法であって、
サーバが第１の装置からデータに対する要求を受信するステップと；
前記サーバが、前記第１の装置にデータを伝送するステップと；
前記第１の装置に対する１台あるいはそれ以上のピア装置を含むピアグループが前記第１の装置に対して前記データを伝送するようにとの要求を受信するステップと；
前記ピアグループが前記第１の装置にデータを伝送するステップと；
を有し、
前記サーバまたは前記ピアグループが、前記要求されたデータのすべてを単独で提供することが潜在的に可能であり、しかし、前記サーバと１台あるいはそれ以上のピアとが補完的な仕方で平行的に前記データを前記第１の装置がデータの完全なセットを獲得するまで前記第１の装置に伝送し、前記第１の装置が前記サーバおよび前記１台あるいはそれ以上のピアから受信するデータのそれぞれの部分は、それぞれデータ転送速度の帰結である、
データ伝送方法。
【請求項３０】
コンピュータ読取可能な命令を含むデータキャリヤであって、前記命令はコンピュータにより実行される時に、前記コンピュータを請求項１ないし請求項１０のいずれか１項に記載のデータ転送システムの構成要素として動作させるものである、データキャリヤ。
【請求項３１】
コンピュータ読取可能な命令を含むデータキャリヤであって、前記命令はコンピュータにより実行される時に、前記コンピュータを請求項１１ないし請求項１４のいずれか１項に記載のサーバとして動作させるものである、データキャリヤ。
【請求項３２】
コンピュータ読取可能な命令を含むデータキャリヤであって、前記命令はコンピュータにより実行される時に、前記コンピュータを請求項１５ないし請求項１８のいずれか１項に記載のサーバとして動作させるものである、データキャリヤ。
【請求項３３】
コンピュータ読取可能な命令を含むデータキャリヤであって、前記命令はコンピュータにより実行される時に、前記コンピュータを請求項１９に記載のデータ転送システムの構成要素として動作させるものである、データキャリヤ。
【請求項３４】
コンピュータ読取可能な命令を含むデータキャリヤであって、前記命令はコンピュータにより実行される時に、前記コンピュータに請求項２０ないし請求項２８のいずれか１項の方法を実行させるものである、データキャリヤ。
【請求項３５】
コンピュータ読取可能な命令を含むデータキャリヤであって、前記命令はコンピュータにより実行される時に、前記コンピュータに請求項２９の方法を実行させるものである、データキャリヤ。
【請求項３６】
コンピュータ読取可能な命令を含むデータ信号であって、前記命令はコンピュータにより実行される時に、前記コンピュータを請求項１ないし請求項１０のいずれか１項に記載のデータ転送システムの構成要素として動作させるものである、データ信号。
【請求項３７】
コンピュータ読取可能な命令を含むデータ信号であって、前記命令はコンピュータにより実行される時に、前記コンピュータを請求項１１ないし請求項１４のいずれか１項に記載のサーバとして動作させるものである、データ信号。
【請求項３８】
コンピュータ読取可能な命令を含むデータ信号であって、前記命令はコンピュータにより実行される時に、前記コンピュータを請求項１５ないし請求項１８のいずれか１項に記載のサーバとして動作させるものである、データ信号。
【請求項３９】
コンピュータ読取可能な命令を含むデータ信号であって、前記命令はコンピュータにより実行される時に、前記コンピュータを請求項１９に記載のデータ転送システムの構成要素として動作させるものである、データ信号。
【請求項４０】
コンピュータ読取可能な命令を含むデータ信号であって、前記命令はコンピュータにより実行される時に、前記コンピュータに請求項２０ないし請求項２８のいずれか１項の方法を実行させるものである、データ信号。
【請求項４１】
コンピュータ読取可能な命令を含むデータ信号であって、前記命令はコンピュータにより実行される時に、前記コンピュータに請求項２９の方法を実行させるものである、データ信号。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ転送装置および方法に関する。
【背景技術】
【０００２】
インターネットにおける主なデータ転送モデルはクライアント−サーバモデルであり、そのモデルではクライアント（通常、インターネットに接続されたホームコンピュータ）がサーバに対してデータを要求する。サーバは人気のあるデータファイルをキャッシュしたものを収容しているか、あるいはクライアントの要求を最終のデータ源へと中継して送信者から受信者へのクライアント／サーバリンクの連鎖を形成する。しかしこれは、人気のあるデータに関してはサーバが潜在的なボトルネックとなることを意味しており、また大量のダウンロードの場合は、クライアントがサーバから切断されるリスクあるいはサーバのトラブルというリスクにさらされていることを意味する。
【０００３】
別のモデルはピアツーピアファイル転送であり、グヌーテラ（例えば、http://en.wikipedia.org/wiki/Gnutellaを参照）により提供されるもの等がある。このモデルでは、グヌーテラソフトウェアを実行している各ピア装置（やはり、通常はホームコンピュータ）は、共有可能な自分のコンテンツに関して問い合わせを受けることができる。このように、１台のピアは他のピアをポーリングして所望のファイルを見つけることができ、一旦見つかったなら、ピア間でデータを直接転送することができる。何らかの理由で転送が失敗すると、他のピアを見つけ、転送を再開することができる。しかし、このモデルにも問題がある。第一に、数千ものピアが互いにポーリングし合うと、ピアネットワーク内にかなりのオーバーヘッドを引き起こすことがある。第二に、ブロードバンドシステムは通常、アップロードとダウンロードの速度が非対称であり、ホームコンピュータは例えば８Ｍｂｉｔ／秒でダウンロードできるかもしれないが、アップロードは５００Ｋｂｉｔ／秒でしか行なえないかもしれない。これはクライアント／サーバダウンロードモデルの場合には問題ではないが、ピアツーピアの場合、実効的なダウンロード速度がピア装置のアップロード速度によって制約されることを意味する。最後の点として、悪用に関する問題がある。即ち、ファイルをダウンロードする一方で、接続を切断して他の誰に対しても送り手としての役割を果たさないことであり、これはピアネットワークの実効帯域を限定してしまうことになる。
【０００４】
これらの問題は、ビットトレント（ＢｉｔＴｏｒｒｅｎｔ（ＲＴＭ））に代表される更に進んだピアモデルにより軽減された。ビットトレントシステムでは、ポーリングのタスクはトラッカーと呼ばれる中心的なサーバによって扱われ、それによりポーリングのオーバーヘッドが減少される。トラッカーは要求元の装置が希望するデータの幾らかあるいはすべてがどの装置に収容されているかを確認する。少なくとも一つの装置（「シード」と呼ばれる）がデータのすべてを収容していなければならない。
【０００５】
次いで、トラッカーはこれらのピア装置に対してデータの相補的な部分を要求元の装置に送信するように命令する。多数の送信者からデータの重複しない部分を同時に受信することにより、ピア間のアップロード速度とダウンロード速度の非対称性も緩和される。要求元の装置がデータを蓄積するにつれ、その装置自体も他の要求元の装置（例えば、現在データの異なる部分をそれからダウンロードしているピアのうちの幾つか）に対して同時にアップロードできるピアグループの一部となる。通常、データの順序はランダムであるが、いわゆる「ｒａｒｅｓｔ  ｆｉｒｓｔ」戦略を実行することによりピア装置グループ内のボトルネックに素早く対抗することができる。
【０００６】
ビットトレントは又いわゆるｔｉｔ−ｆｏｒ−ｔａｔ（しっぺ返し）システムを実行することにより、悪用を思いとどまらせている。すなわち、要求元の装置が享受できる実効ダウンロード速度は、他の要求元の装置に対するそのアップロードの履歴に依存するようにされている。したがって、最善のダウンロード性能を得るためには、ピアネットワーク内で協力する必要がある。
【０００７】
ビットトレントモデルの幾つかの変形には、トラッカーを無くして、要求元の装置が他のピアに対して直接ポーリングする必要があるとすること（いわゆる「トラッカーレス  トレント」）により、元のピアツーピアモデルにある程度戻るものがある。提案された他の変形としては「ウェブシーディング（Ｗｅｂ  ｓｅｅｄｉｎｇ）」がある。これは、ウェブサイトによりホスト（播種（シード））されるファイルをダウンロードするためにビットトレントを用いることにより、そのウェブサイトに対する帯域要求を緩和することを意図したものである−「ｈｔｔｐ：／／ｗｗｗ．ｂｉｔｔｏｒｎａｄｏ．ｃｏｍ／ｄｏｃｓ／ｗｅｂｓｅｅｄ−ｓｐｅｃ．ｔｘｔ」を参照。
【０００８】
ビットトレントの手法は他のソフトウェアにも組み込まれている。例えば、人気のあるオンラインゲーム「戦争用舟艇の世界（Ｗｏｒｌｄ  ｏｆ  Ｗａｒｃｒａｆｔ）」はアップグレード版の配布のためにビットトレント型のシステムを用いている（ｈｔｔｐ：／／ｖｉｄｅｏ−ｇａｍｅｓ．ｅｌｌｉｏｔｔｂａｃｋ．ｃｏｍ／２００５／１１／２６／ｗｏｒｌｄ−ｏｆ−ｗａｒｃｒａｆｔ−ｔｏｒｒｅｎｔ−ｕｐｄａｔｅｒ／を参照）。
【０００９】
しかし、異なるコンテンツ配布のシナリオでは他のデータ転送モデルが有益である可能性があり、従って、更に他の方法を開発する余地がある。
【００１０】
本発明はそのような他のデータ転送モデルを開示する。
【発明の開示】
【００１１】
本発明の第１の側面によれば、データ転送システムは、サーバと、各々が前記サーバのクライアントとして動作可能な複数の装置とを有する。前記サーバは、装置に対して、その装置が前記サーバの他のクライアントを含むピアグループのメンバーになることを通知する通知手段と、そのような通知が行なわれると、データをそれぞれの装置に送信するクライアント／サーバデータ送信手段とを有する。各装置は、前記サーバからそれぞれのデータを受信するクライアント／サーバデータ受信手段と、前記サーバから受信したそれぞれのデータを１台あるいはそれ以上のピアに送信し、また１台あるいはそれ以上のピアから前記サーバによってそれらのピアに送信されたそれぞれのデータを受信する、ピアツーピア通信手段とを有する。
【００１２】
本発明の他の側面によれば、データ伝送方法が提供され、そのデータ伝送方法は、サーバがクライアント装置に対して、それがクライアント装置からなるピアグループのメンバーとなることを通知するステップと、前記サーバが前記クライアント装置にデータを伝送するステップと、前記クライアント装置が、自分が前記サーバから受信したデータを前記ピアグループ内の他のクライアント装置にピアツーピア方式で伝送するステップと、前記クライアント装置が、前記ピアグループ内の他のクライアント装置から、前記ピアグループ内の各クライアント装置がそれぞれ前記サーバから受信したデータを、それぞれ受信するステップと、を有する。
【００１３】
従って、前記側面のシステムおよび方法において、サーバが複数の装置に対する自分自身の転送を補完するために、そのような装置をピアグループに参加させ、またデータのあるものをそのグループ内で配信するように各ピアに送信することは有利である。このようにすれば、各装置はすべてのデータを獲得することができ、一方、どの装置も自分のデータのすべてをサーバだけから受信することはない。
【００１４】
本発明の他の側面によれば、データ転送システムは、サーバと、それぞれが前記サーバのクライアントとして動作可能な１つあるいはそれ以上の装置と、それぞれがピアツーピア装置として動作可能な１つあるいはそれ以上の装置とを有する。前記サーバは、クライアント装置としての役割をする第１の装置からデータに対する要求を受信する要求受信手段と、データを前記第１の装置に送信するクライアント／サーバデータ伝送手段とを有する。前記第１の装置は、前記サーバからデータを受信するクライアント／サーバデータ受信手段と、ピアグループ内の１台あるいはそれ以上のピアからデータを受信するピアツーピア通信手段とを有する。前記サーバまたは前記ピアグループが、前記要求されたデータのすべてを単独で提供することが潜在的に可能であり、しかし、前記サーバと１台あるいはそれ以上のピアとが補完的な仕方で平行的に前記データを前記第１の装置がデータの完全なセットを獲得するまで前記第１の装置に伝送するように構成され、前記第１の装置が前記サーバおよび前記１台あるいはそれ以上のピアから受信するデータのそれぞれの部分は、それぞれのデータ転送速度の帰結である。
【００１５】
本発明の他の側面によれば、データ伝送方法が提供され、そのデータ転送方法は、サーバが第１の装置からデータに対する要求を受信するステップと、  前記第１の装置に対する１台あるいはそれ以上のピア装置を含むピアグループが前記第１の装置に対して前記データを伝送するようにとの要求を受信するステップと、前記ピアグループが前記第１の装置にデータを伝送するステップとを有し、前記サーバまたは前記ピアグループが、前記要求されたデータのすべてを単独で提供することが潜在的に可能であり、しかし、前記サーバと１台あるいはそれ以上のピアとが補完的な仕方で平行的に前記データを前記第１の装置がデータの完全なセットを獲得するまで前記第１の装置に伝送し、前記第１の装置が前記サーバおよび前記１台あるいはそれ以上のピアから受信するデータのそれぞれの部分は、それぞれデータ転送速度の帰結である。
【００１６】
上記２つの側面のシステムおよび方法において、サーバが単一の装置に対する自分自身の転送を補完するために、転送に必要なすべてのデータをグループ全体として有するピアグループに参加させることは有利である。このようにすれば、サーバおよびピアグループのどちらも前記単一の装置に対してそれぞれのデータを補完的な仕方で送信することにより、前記単一の装置は速い動作の方のダウンロード機構の利点を享受することができ、そうすれば、例えば、各方法に５０％を割り当てて、遅い方の方法がその割り当てを完了するのを待つといったことをしないで済む。
【００１７】
本発明の更なる側面および特徴のそれぞれは添付の請求項に記載されている。
【図面の簡単な説明】
【００１８】
さて、本発明の実施形態を、次の添付図面を参照して例示により説明する：
【図１】図１は、娯楽装置の概略図である。
【図２】図２は、セルプロセッサの概略図である。
【図３】図３は、ビデオグラフィックスプロセッサの概略図である。
【図４】図４は、本発明の一実施形態による、相互に接続された一組のゲームゾーンの概略図である。
【図５】図５は、本発明の一実施形態によるホーム環境オンラインクライアント／サーバ配列の概略図である。
【図６ａ】図６ａは、本発明の一実施形態によるロビーゾーンの概略図である。
【図６ｂ】図６ｂは、本発明の一実施形態によるロビーゾーンの概略図である。
【図６ｃ】図６ｃは、本発明の一実施形態によるシネマゾーンの概略図である。
【図６ｄ】図６ｄは、本発明の一実施形態による開発者／発行者ゾーンの概略図である。
【図７】図７は、本発明の一実施形態によるオンライン取引方法のフローチャートである。
【図８ａ】図８ａは、本発明の一実施形態によるアパートゾーンの概略図である。
【図８ｂ】図８ｂは、本発明の一実施形態によるトロフィーゾーンの概略図である。
【図９】図９は、本発明の一実施形態によるコミュニケーションメニューの概略図である。
【図１０】図１０は、本発明の一実施形態による対話型仮想ユーザ装置の概略図である。
【図１１】図１１は、オンライン仮想環境のインスタンスの一部の概略図である。
【図１２】図１２は、本発明の一実施形態によるデータ転送方法のフローチャートである。
【発明を実施するための最良の形態】
【００１９】
本発明の簡略的な実施形態では、複数の娯楽装置（「ゲームコンソール」と呼ぶこともある）が、オンライン仮想環境を実行しているサーバに接続されている。仮想環境内では、これら娯楽装置のそれぞれのユーザがアバター（例えば、ユーザのグラフィックな描写）によって表わされており、各ユーザの仮想環境の視界は、その環境内における自分のアバターの位置に応じたものとなる。仮想環境には、テレビや映画スクリーンなど装置があって、広告や映画の予告編などのストリーミングメディアの表示が可能であり、また、ダウンロードのために付加的な機能が利用可能なゾーンが存在することができる。ある娯楽装置に対応する１つのアバターだけが、そのようなストリームコンテンツを視聴できる位置にあるなら、そのコンテンツは中央サーバからストリーム配信される。しかし、２つあるいはそれ以上のアバターがそのようなストリームコンテンツを視聴するための位置にある場合、それぞれのコンテンツ構成要素がサーバから各娯楽装置にストリーム配信され、各娯楽装置はそれらの構成要素を他のアバターに対応する他の娯楽装置と共用する。このように、ピアメンバーシップとコンテンツはサーバにより管理され、メンバーシップは装置のアバターの行動に依存している。このようにすれば、サーバにより使用される帯域は、データがすべての娯楽装置にストリーム配信される場合に比べてより小さなものとなり、同時に、ストリーム配信されるコンテンツを要求することになった娯楽装置は、すべての装置がそれを獲得することができる。
【００２０】
この構成により、仮想環境（あるいは複数の仮想環境）を運営する運営費用は削減され、また、受信する装置のグループがその場限りの性質のものであるにも関わらず、いつコンテンツを表示するかを中央制御することが可能となる。
【００２１】
ここで、図１を参照すると、本発明の実施形態において、娯楽装置はソニー（登録商標）プレイステーション３（登録商標）（ＰＳ３（登録商標））である。図１は、ソニー（登録商標）のプレイステーション３（登録商標）娯楽装置の全体的なシステムアーキテクチャを概略的に図示したものである。システムユニット１０には、そのシステムユニットに接続可能な様々な周辺装置が提供されている。
【００２２】
システムユニット１０は、セルプロセッサ１００と、ラムバス（登録商標）ダイナミックランダムアクセスメモリ（ＸＤＲＡＭ）ユニット５００と、専用のビデオランダムアクセスメモリ（ＶＲＡＭ）ユニット２５０を備えたリアリティシンセサイザグラフィックスユニット２００と、Ｉ／Ｏブリッジ７００とを有している。
【００２３】
システムユニット１０はまた、ディスク４４０から読取るためのブルーレイ（登録商標）ディスクＢＤ−ＲＯＭ（登録商標）光ディスク読取装置４３０と、着脱可能なスロットインハードディスクドライブ（ＨＤＤ）４００とを有しており、それらはＩ／Ｏブリッジ７００を介してアクセス可能である。オプションとして、システムユニットはまた、コンパクトフラッシュ（登録商標）メモリカード、メモリスティック（登録商標）メモリカード等を読取るためのメモリカード読取装置４５０を有しており、同様にＩ／Ｏブリッジ７００を介してアクセス可能である。
【００２４】
Ｉ／Ｏブリッジ７００はまた、４つのユニバーサルシリアルバス（ＵＳＢ）２．０ポート７１０と、ギガビットイーサネット（登録商標）ポート７２０と、ＩＥＥＥ８０２．１１ｂ／ｇ無線ネットワーク（Ｗｉ−Ｆｉ）ポート７３０と、ブルートゥース接続を７つまでサポートできるブルートゥース（登録商標）無線リンクポート７４０とに接続されている。
【００２５】
動作の際に、Ｉ／Ｏブリッジ７００は、１個以上のゲームコントローラ７５１からのデータを含め、すべての無線データ、ＵＳＢデータ、イーサネット（登録商標）データを処理する。例えば、ユーザがゲームをプレイしている場合、Ｉ／Ｏブリッジ７００はブルートゥースリンクを介してゲームコントローラ７５１からデータを受取り、それをセルプロセッサ１００に向けて送信し、それに応じてセルプロセッサ１００はゲームの現在状態を更新する。
【００２６】
無線ポート、ＵＳＢポート、イーサネット（登録商標）ポートはまた、ゲームコントローラ７５１に加えて、リモコン装置７５２、キーボード７５３、マウス７５４、ソニープレイステーションポータブル（登録商標）娯楽装置などの携帯型娯楽装置７５５、アイトイ（登録商標）ビデオカメラなどのビデオカメラ７５６、マイクヘッドセット７５７など、他の周辺装置との接続性をも提供する。従って、そのような周辺装置は原理上システムユニット１０に無線で接続できる。例えば、携帯型娯楽装置７５５はＷｉＦｉアドホック接続を介して通信し、一方、マイクヘッドセット７５７はブルートゥースリンクを介して通信することができる。
【００２７】
これらのインタフェースが提供されていることは、プレイステーション３装置が潜在的に、ディジタルビデオレコーダ（ＤＶＲ）、セットトップボックス、ディジタルカメラ、携帯型メディアプレイヤー、ボイスオーバーＩＰ電話、携帯電話、プリンター、スキャナーなど、他の周辺装置に適合可能であること意味している。
【００２８】
さらに、レガシーメモリカード読取装置４１０をＵＳＢポート７１０を介してシステムユニットに接続することができ、それによりプレイステーション（登録商標）装置あるいはプレイステーション２（登録商標）装置によって使用される種類のメモリカード４２０の読取りが可能である。
【００２９】
本実施形態では、ゲームコントローラ７５１はブルートゥースリンクを介してシステムユニット１０と無線通信することができる。しかし、その代わりに、ゲームコントローラ７５１をＵＳＢポートに接続し、そのＵＳＢポートによって電力を供給してゲームコントローラ７５１のバッテリーを充電することもできる。１個以上のアナログジョイスティックおよび従来のコントロールボタンに加え、ゲームコントローラは各軸における平行運動および回転に対応する自由度６の動きを感知することができる。その結果、従来のボタンコマンドあるいはジョイスティックコマンドに加えてあるいは代えて、ゲームコントローラのユーザによる身振りや動作をゲームへの入力として解釈することができる。オプションとして、プレイステーションポータブル装置など、無線で使用可能な他の周辺装置をコントローラとして使用することができる。プレイステーションポータブル装置の場合、付加的なゲーム情報あるいは制御情報（例えば、制御命令あるいは生命の数）を装置の画面上に提供することができる。他の代替的あるいは補足的制御装置を使用することもでき、例えば、ダンスマット（図示されていない）、ライトガン（図示されていない）、ステアリングホイールとペダル（図示されていない）、あるいは、迅速応答クイズゲーム用の１個あるいは数個の大型ボタンなどの特注コントローラ（やはり図示されていない）などである。
【００３０】
リモコン装置７５２もブルートゥースリンクを介してシステムユニット１０と無線通信することができる。リモコン装置７５２は、ブルーレイディスクＢＤ−ＲＯＭ読取装置４３０の操作に適切な、またディスクコンテンツの操作に適切なコントロール（操作装置）を有している。
【００３１】
ブルーレイディスクＢＤ−ＲＯＭ読取装置４３０は、従来の事前記録ＣＤや書込み可能ＣＤまたいわゆるスーパーオーディオＣＤに加えて、プレイステーション装置およびプレイステーション２装置に適合したＣＤ−ＲＯＭを読取ることができる。読取装置４３０はまた、従来の事前記録ＤＶＤや書込み可能ＤＶＤに加えて、プレイステーション２装置およびプレイステーション３装置に適合したＤＶＤ−ＲＯＭを読取ることができる。読取装置４３０は、更に、従来の事前記録ブルーレイディスクや書込み可能ブルーレイディスクと同様、プレイステーション３装置に適合したＢＤ−ＲＯＭを読取ることができる。
【００３２】
システムユニット１０は、プレイステーション３装置によってリアリティシンセサイザグラフィックスユニット２００を介して生成あるいは復号された音声と映像を、オーディオコネクタおよびビデオコネクタを通して、ディスプレイ３０５と１個以上のスピーカー３１０とを有するモニタやテレビなどのディスプレイ・サウンド出力装置３００に供給する。オーディオコネクタ２１０は従来のアナログ出力およびディジタル出力を含むことができ、一方、ビデオコネクタ２２０は、コンポーネントビデオ出力、Ｓビデオ出力、合成ビデオ出力、そして１つ以上の高品位マルチメディアインタフェース（ＨＤＭＩ）出力を様々に含むことができる。従って、ビデオ出力は、ＰＡＬあるいはＮＴＳＣなどの方式、あるいは７２０ｐ、１０８０ｉあるいは１０８０ｐの高品位方式とすることができる。
【００３３】
オーディオ処理（生成、復号など）は、セルプロセッサ１００によって実行される。プレイステーション３装置のオペレーティングシステムは、ドルビー（登録商標）５．１サラウンドサウンド、ドルビー（登録商標）シアターサラウンド（ＤＴＳ）、そしてブルーレイ（登録商標）ディスクからの７．１サラウンドサウンドの復号をサポートしている。
【００３４】
本実施形態では、ビデオカメラ７５６は、単一の電荷結合素子（ＣＣＤ）と、ＬＥＤインジケータと、ハードウェアベースのリアルタイムデータ圧縮符号化装置とを有しているので、圧縮ビデオデータをシステムユニット１０によって復号するのに適したフォーマット、例えば画像内ベースのＭＰＥＧ（ｍｏｔｉｏｎ  ｐｉｃｔｕｒｅ  ｅｘｐｅｒｔ  ｇｒｏｕｐ）規格などで転送することができる。カメラのＬＥＤインジケータは、システムユニット１０からの適切な制御データ（例えば、不利な照明条件を意味する制御データ）に応じて点灯するようにされている。ビデオカメラ７５６の実施形態は、ＵＳＢ、ブルートゥース、あるいはＷｉＦｉ通信ポートを介するなど、様々な仕方でシステムユニット１０に接続することができる。ビデオカメラの実施形態は１個以上の付属マイクを含んでいてもよく、オーディオデータを転送することもできる。ビデオカメラの実施形態では、ＣＣＤが高解像度ビデオキャプチャに適した解像度を有するものとすることができる。使用の際には、ビデオカメラでキャプチャされた画像は、例えばゲーム内に組み込むことができ、あるいはゲームの制御入力として解釈することができる。
【００３５】
一般に、システムユニット１０の通信ポートの１つを介してビデオカメラやリモコン装置などの周辺装置とのデータ通信を成功裏に実現するためには、デバイスドライバなどの適切なソフトウェアが備えられていなければならない。デバイスドライバ技術は良く知られているのでここでは詳細に説明しないが、しかし、説明されている本実施形態においてデバイスドライバや類似のソフトウェアインタフェースが必要であろうことは当業者には承知のことであろう。
【００３６】
次に図２を参照すると、セルプロセッサ１００のアーキテクチャは、４つの基本構成要素、すなわち、メモリコントローラ１６０とデュアルバスインタフェースコントローラ１７０Ａ，Ｂとを有する外部入出力構造と、パワープロセッシングエレメント１５０として言及されるメインプロセッサと、シナジスティックプロセッシングエレメント（ＳＰＥ）１１０Ａ−Ｈとして言及される８個のコプロセッサと、これらの構成要素を接続する循環データバスであってエレメントインターコネクトバス１８０として言及されるデータバスとを有している。セルプロセッサの総合的な浮動小数点性能は２１８ＧＦＬＯＰＳであり、それに比べてプレイステーション２装置のエモーションエンジンは６．２ＧＦＬＯＰＳである。
【００３７】
パワープロセッシングエレメント（ＰＰＥ）１５０は、両方向同時マルチスレッディングのパワー９７０に準拠した３．２ＧＨｚの内部クロックで動作するパワーＰＣコア（ＰＰＵ）１５５をベースにしたものである。ＰＰＥ１５０は５１２ｋＢの二次（Ｌ２）キャッシュと３２ｋＢの一次（Ｌ１）キャッシュとを有している。ＰＰＥ１５０は１クロックサイクルあたり単精度演算８回の能力があり、言い換えれば、３．２ＧＨｚで２５．６ＧＦＬＯＰＳである。ＰＰＥ１５０の主要な役割は、シナジスティックプロセッシングエレメント１１０Ａ−Ｈに対してコントローラとして機能することであり、後者が計算作業負荷の殆どを処理する。動作の際に、ＰＰＥ１５０はジョブ待ち行列を保持し、シナジスティックプロセッシングエレメント１１０Ａ−Ｈのためにジョブをスケジューリングし、それらの進行をモニタする。従って、各シナジスティックプロセッシングエレメント１１０Ａ−Ｈが実行するカーネルの役割は、ジョブをフェッチし、そのジョブを実行し、ＰＰＥ１５０と同期を取ることである。
【００３８】
各シナジスティックプロセッシングエレメント（ＳＰＥ）１１０Ａ−Ｈは、それぞれのシナジスティックプロセッシングユニット（ＳＰＵ）１２０Ａ−Ｈと、それぞれのメモリフローコントローラ（ＭＦＣ）１４０Ａ−Ｈとを有している。そして、各メモリフローコントローラ（ＭＦＣ）１４０Ａ−Ｈは、それぞれのダイナミックメモリアクセスコントローラ（ＤＭＡＣ）１４２Ａ−Ｈと、それぞれのメモリマネジメントユニット（ＭＭＵ）１４４Ａ−Ｈと、バスインタフェース（図示されていない）とを有している。各ＳＰＵ１２０Ａ−Ｈは、３．２ＧＨｚのクロックで動作するＲＩＳＣプロセッサであり、２５６ｋＢ（原理上は４ＧＢまで拡張可能）のローカルＲＡＭ１３０Ａ−Ｈを有している。各ＳＰＥは、理論的には単精度演算で２５．６ＧＦＬＯＰＳの性能を実現する。ＳＰＵは、１クロックサイクルで４個の単精度浮動小数点数、または４個の３２ビット数、または８個の１６ビット整数、または１６個の８ビット整数の演算をすることができる。同じクロックサイクルで、ＳＰＵはメモリオペレーションを一つ実行することもできる。ＳＰＵ１２０Ａ−ＨはシステムメモリＸＤＲＡＭ５００に直接アクセスせず、ＳＰＵ１２０Ａ−Ｈにより形成された６４ビットのアドレスがＭＦＣ１４０Ａ−Ｈに渡され、ＭＦＣ１４０−Ｈが自分のＤＭＡコントローラ１４２Ａ−Ｈに対して、エレメントインターコネクトバス１８０とメモリコントローラ１６０とを介してメモリにアクセスするように命令する。
【００３９】
エレメントインターコネクトバス１８０（ＥＩＢ）１８０は、セルプロセッサ１００内の論理的に循環型の通信バスであり、上記のプロセッサエレメント、即ち、ＰＰＥ１５０、メモリコントローラ１６０、デュアルバスインタフェース１７０Ａ，Ｂ、そして８個のＳＰＥ１１０Ａ−Ｈ、すなわち合計で１２の関係エレメント、を接続する。関係エレメントはこのバスに対して１クロックサイクルにつき８バイトの速度で同時に読み書きすることができる。先に指摘したように、各ＳＰＥ１１０Ａ−Ｈは、長いリードあるいはライトシーケンスをスケジュールするためにＤＭＡＣ１４２Ａ−Ｈを有している。ＥＩＢは、時計回り方向および反時計回り方向に２チャネルずつ、４つのチャネルを有している。したがって、１２の関係エレメントに対して、任意の２つの関係エレメント間の最長のステップタイプデータフローは適切な方向に６ステップである。従って、１２のスロットに対する理論的なピーク瞬時ＥＩＢ帯域は、関係エレメント間のアービトレーションによって完全利用した場合、クロック当たり９６Ｂである。これは、３．２ＧＨｚのクロック速度では理論ピーク帯域３０７．２ＧＢ／ｓ（ギガバイト／秒）に等しい。
【００４０】
メモリコントローラ１６０は、ラムバス社により開発されたＸＤＲＡＭインタフェース１６２を有している。メモリコントローラはラムバスＸＤＲＡＭ５００に対して理論ピーク帯域２５．６ＧＢ／ｓでインタフェースする。
【００４１】
デュアルバスインタフェース１７０Ａ，ＢはラムバスＦｌｅｘＩＯ（登録商標）システムインタフェース１７２Ａ，１７２Ｂを有している。このインタフェースは、各８ビット幅の１２チャネルに組織されており、５経路はインバウンド、７経路はアウトバウンドである。これにより、コントローラ１７０Ａを介してセルプロセッサとＩ／Ｏブリッジ７００との間に、またコントローラ１７０Ｂを介してリアリティシミュレータグラフィックスユニット２００との間に理論ピーク帯域６２．４ＧＢ／ｓ（アウトバウンドが３６．４ＧＢ／ｓ、インバウンドが２６ＧＢ／ｓ）が提供される。
【００４２】
セルプロセッサ１００がリアリティシミュレータグラフィックスユニット２００に送信するデータは、通常、ディスプレイリストを有しており、それは頂点を描くコマンド、テクスチャをポリゴンに適用するコマンド、照明条件を特定するコマンドなどのシーケンスである。
【００４３】
次に図３を参照すると、リアリティシミュレータグラフィックス（ＲＳＸ）ユニット２００は、ＮＶｉｄｉａ（登録商標）Ｇ７０／７１アーキテクチャに基づくビデオアクセラレータであり、セルプロセッサ１００により生成されたコマンドのリストを処理し、描画する。ＲＳＸユニット２００は、セルプロセッサ１００のバスインタフェースコントローラ１７０Ｂと通信できるホストインタフェース２０２と、８個の頂点シェーダ２０５を有する頂点パイプライン（ＶＰ）２０４と、２４個のピクセルシェーダ２０７を有するピクセルパイプライン（ＰＰ）２０６と、８個のレンダリング出力ユニット（ＲＯＰ）２０９を有するレンダリングパイプライン（ＲＰ）２０８と、メモリインタフェース２１０と、ビデオ出力を生成するためのビデオコンバータ２１２とを有している。ＲＳＸ２００は２５６ＭＢのダブルデータレート（ＤＤＲ）ビデオＲＡＭ（ＶＲＡＭ）２５０によって補完されており、このビデオＲＡＭ２５０は６００ＭＨｚのクロックで動作し、ＲＳＸ２００と２５．６ＧＢ／ｓの理論ピーク帯域でインタフェースできる。動作の際に、ＶＲＡＭ２５０はフレームバッファ２１４とテクスチャバッファ２１６とを保持する。テクスチャバッファ２１６はピクセルシェーダ２０７にテクスチャを提供し、一方、フレームバッファ２１４は処理パイプラインの結果を格納する。ＲＳＸは、例えばテクスチャをＶＲＡＭ２５０にロードするために、ＥＩＢ１８０を介してメインメモリ５００にアクセスすることもできる。
【００４４】
頂点パイプライン２０４は、描かれるべき画像内のポリゴンを定義する頂点の変形および変換を主に処理する。
【００４５】
ピクセルパイプライン２０６は、色、テクスチャ、照明（そしてピクセル透明度があればそれを含めて）のそれらポリゴンへの適用を主に処理し、処理された各ピクセルに対して赤、緑、青そしてアルファ（透明度）の値を生成する。テクスチャマッピングは単純にグラフィック画像を表面に適用してもよいが、バンプマッピング（テクスチャ値に応じて表面の概念上の方向を変化させて、ライティングモデルにおけるハイライトあるいは陰を生成する）やディスプレイスメントマッピング（適用されるテクスチャによって更に頂点位置を変化させ、テクスチャに調和するように変形された表面を生成する）を含めることもできる。
【００４６】
レンダリングパイプライン２０８は、ピクセル間で奥行きを比較し、最終画像においてどちらのピクセルを描写すべきかを決定する。オプションとして、中間のピクセル処理過程が奥行き値に影響しない場合（例えば、透明度やディスプレイスメントマッピングが無い場合）、レンダリングパイプラインおよび頂点パイプライン２０４は奥行き情報をやりとりし合って、ピクセル処理の前に隠ぺい画素を除去することができ、それにより全体としてのレンダリング効率が向上する。更にレンダリングパイプライン２０８は、結果として得られた画像に対して、フルスクリーンアンチエイリアシングなどその後の効果を適用することができる。
【００４７】
頂点シェーダ２０５とピクセルシェーダ２０７はどちらもシェーダモデル３．０規格に基づいている。クロックサイクル当たり１３６個までのシェーダオペレーションを実行することができるので、組み合わせたパイプラインとしては毎秒７４８億のシェーダオペレーションが可能であり、毎秒８億４千万個の頂点と１００億個のピクセルを出力する。ＲＳＸ２００の全体としての浮動小数点演算性能は１．８ＴＦＬＯＰＳである。
【００４８】
通常、ＲＳＸ２００はセルプロセッサ１００と密接に協調して動作する。例えば、爆発を表示する場合、あるいは雨や雪などの気象効果を表示する場合、多数の粒子を追跡し、更新し、場面の中に描写する必要がある。この場合、セルプロセッサのＰＰＵ１５５は１個以上のＳＰＥ１１０Ａ−Ｈが粒子のそれぞれの一団の軌跡を計算するようにスケジューリングすることができる。一方、ＲＳＸ２００は、現在ビデオＲＡＭ２５０に保持されていないテクスチャデータ（例えば、雪片）があれば、エレメントインターコネクトバス１８０、メモリコントローラ１６０、バスインタフェースコントローラ１７０Ｂを介してメインシステムメモリ５００からそれを読み出す。そのあるいはそれら各々のＳＰＥ１１０Ａ−Ｈは自分が計算した粒子プロパティ（通常は、位置および姿勢を示す、座標および法線）を直接ビデオＲＡＭ２５０に出力し、そのＳＰＥ１１０Ａ−ＨのＤＭＡコントローラ１４２Ａ−Ｈは、バスインタフェースコントローラ１７０Ｂを介してビデオＲＡＭ２５０をアドレス指定する。このように、割り当てられたＳＰＥは、このタスクの間は実質的にビデオ処理パイプラインの一部となる。
【００４９】
一般に、このようなやり方で、ＰＰＵ１５５は利用可能な８個のＳＰＥのうち６個にタスクを割り当てることができる。１個のＳＰＥはオペレーティングシステムのために取って置かれ、１個のＳＰＥは、事実上、無効である。１個のＳＰＥを無効にすることにより、セルプロセッサの製造の際の許容限界のレベルを大きくすることができる。製造プロセスで、１個のＳＰＥが不合格になってもよいからである。あるいは８個のＳＰＥすべてが有効である場合、８個のＳＰＥがあることにより、その後、セルプロセッサの寿命の間に残りのＳＰＥの１つに障害が生じた場合のため、８番目のＳＰＥが冗長性を提供することができる。
【００５０】
ＰＰＵ１５５は、様々な仕方でＳＰＥにタスクを割り当てることができる。例えば、ＳＰＥを連鎖させて、複雑なオペレーション（例えば、ＤＶＤへのアクセス、映像音声デコード処理、エラーマスキングなど）の各ステップを処理するようにでき、その際各ステップは別々のＳＰＥに割り当てる。その代わりに、あるいはそれに加えて、上記の粒子アニメーションの例の場合のように、２個以上のＳＰＥを割り当てて入力データを並行して演算することができる。
【００５１】
セルプロセッサ１００および／またはＲＳＸ２００により実行されるソフトウェア命令は、製造時に供給されてＨＤＤ４００に記憶することができ、および／または、光ディスクやソリッドステートメモリなどのデータ媒体あるいは記憶媒体によって、あるいは、有線や無線のネットワークあるいはインターネット接続などの送信媒体を介して、あるいはこれらの組み合わせによって供給することができる。
【００５２】
製造時に供給されるソフトウェアは、システムファームウェアとプレイステーション３装置のオペレーティングシステム（ＯＳ）とを含んでいる。動作の際、ＯＳはユーザが様々な機能を選択することを可能にするユーザインタフェースを提供し、これらの機能には、ゲームをプレイすること、音楽を聞くこと、写真を見ること、ビデオを観賞することが含まれる。このインタフェースは、いわゆるクロスメディアバー（ＸＭＢ）の形態を取っており、機能の種類が水平に配列されている。ユーザは、ゲームコントローラ７５１、リモコン装置７５２あるいは他の適切なコントロール装置を用いて、（機能を示す）機能アイコン間を水平に移動することによって操作し、希望する機能アイコンをハイライトさせる。ハイライトされたアイコンの地点には、その機能に関係するオプションが、その機能アイコンを中心として、垂直スクロール可能なオプションアイコンのリストとして現れる。そのリストは類似した仕方で操作することができる。しかし、ゲームディスク、オーディオディスクあるいは映画ディスク４４０がＢＤ−ＲＯＭ光ディスク読取装置４３０に挿入された場合は、プレイステーション３装置が適切なオプションを自動的に選択（例えば、ゲームの開始）することができ、あるいは、関連するオプション（例えば、オーディオディスクを演奏するか、そのコンテンツをＨＤＤ４００へと圧縮するかの選択）を提供することができる。
【００５３】
更に、ＯＳはオンライン機能を提供し、それには、ウェブブラウザーと、追加のゲームコンテンツやデモンストレーションゲーム（デモ）およびその他のメディアをダウンロードできるオンラインストアーとのインタフェースと、現在の装置のユーザにより指名される他のプレイステーション３装置のユーザとの（例えば、利用可能な周辺装置に依存してテキストあるいは音声または映像による）オンライン通信を提供するフレンド管理機能とが含まれている。オンライン機能により又、適切に設定されたゲームのプレイ中に行なわれるオンライン通信、コンテンツダウンロード、コンテンツ購入が提供され、またプレイステーション３装置それ自体のファームウェア及びＯＳの更新が提供される。当然であるが「オンライン」という用語は物理的な線の存在を意味していない。なぜなら、その用語は様々なタイプの無線接続にも適用されるからである。
【００５４】
本発明の一実施形態においては、上述のオンライン機能が、このＰＳ３  １０のユーザのアバターや現在オンライン中の他のＰＳ３のユーザのアバターが住む前述の仮想世界（環境）との相互作用を含んでいる。
【００５５】
仮想の相互作用環境を可能にするソフトウェアは、通常、ＨＤＤ４００に常駐しており、ダウンロードされるソフトウェアあるいは光ディスク４４０に記憶されたソフトウェアあるいは任意の他の適切な手段でアクセスされるソフトウェアによってアップグレードおよび／または拡張することができる。あるいは、そのソフトウェアがフラッシュメモリカード４２０、光ディスク４４０あるいはセントラルサーバ（図示されていない）に存在してもよい。
【００５６】
本発明の一実施形態においては、仮想相互作用環境（以下、「ホーム」環境と称する）はクロスメディアバーから選択される。次いで、３Ｄビデオゲームと類似した従来の仕方で、すなわち、制御ソフトウェアをロードして実行し、３Ｄモデルおよびテクスチャをビデオメモリ２５０にロードし、ホーム環境を描いた場面をレンダリングすることによって、ホーム環境が開始される。その代わりに、あるいはそれに加えて、個別のゲームなど他のプログラムによってホーム環境を開始することもできる。
【００５７】
次に図４と図５を参照する。図４はホーム環境の概念マップを示しており、図５はホーム環境オンラインクライアント／サーバ構成の概略図である。ユーザのアバターはデフォルトではロビーゾーン１０１０内に生み出される。しかし、ユーザはこのマップの他のゾーン１０１０−１０６０（後に詳述する）を選択することによって、その選択ゾーンがロードされてアバターがそのゾーンに生み出されるようにすることができる。本発明の一実施形態においては、マップ画面が更にサイドバーを有しており、利用可能なゾーンをランク付けオプションなどの管理ツールと共にそのサイドバー上に列挙することができ、ゾーンをユーザの好みの順、あるいは最近追加された順および／またはアルファベット順に列挙することが可能になっている。更に、サーチインタフェースにより、ユーザは名称によるゾーンの検索が可能になる。本発明の一実施形態では、ある任意の時点でユーザのＰＳ３上にローカルに記憶されているより多くの利用可能なゾーンが存在することができ、ローカルな利用可能性をリスト上の色コードで示したり、あるいはローカルに利用できるゾーンだけをリストに表示するようにリストをフィルタリングすることができる。ユーザがローカルに利用できないゾーンを選択した場合は、ホーム環境サーバ２０１０からダウンロードすることができる。
【００５８】
ここで図６ａを参照すると、ロビーゾーン１０１０は通常、屋根付きの広場に似ており、公園地（草、木、彫刻など）と、ユーザたちが自分たちのアバターによって互いに出会える場所である人の集まる場所（空き地、単独のベンチ、何列かの座席など）とを有している。
【００５９】
通常、ロビーゾーン１０１０は広告板も含んでおり、それはゲームやその他のコンテンツあるいは製品のための静止画あるいは動画による広告を表示するためのものである。これらの広告板は、ロビーの壁に掛けられているものであったり、単独で立っているものとすることができる。
【００６０】
ロビーゾーン１０１０は野外映画１０１２も含むことができ、それは、映画の予告編や、話題となっている広告、あるいはサードパーティが提供する他のコンテンツを上映することができる。そのようなコンテンツは通常、ホーム環境のロード時にＰＳ３  １０が接続されるホーム環境サーバ２０１０からストリーム配信され、あるいはダウンロードされる。これについては、後により詳細に説明する。
【００６１】
映画スクリーンはその前にアバターのための座席設備を伴っており、アバターが着席すると、そのアバターのユーザに知覚されるカメラアングルもそのスクリーンを含むようになる。
【００６２】
次に図６ｂをも参照すると、ロビーゾーン１０１０は、機能する玉突き台やボウリング場および／またはゲームセンターなどの一般的な娯楽設備1014を含むこともできる。玉突きやボウリングゲームはアバターが遊ぶことができ、アバターは玉突きのキューやボウリングのボールを持ち、そのようなゲームの従来の仕方でコントロールされる。ゲームセンターの場合、アバターがビデオゲームマシンに近づくと、ホーム環境を選択されたビデオゲームの実質的なフルスクリーン表示へと切り替えることができる。そのようなゲームは、例えば、スペースインベーダ（登録商標）あるいはパックマン（登録商標）などの古典的なアーケードゲームあるいは家庭ゲーム機用ゲームとすることができる。これらの古典的なゲームはメモリや処理の観点からすれば比較的小さなものであり、ホーム環境内でＰＳ３によりエミュレートしたり、ホーム環境へのプラグインとして実行することができる。この場合、通常、アバターは表示されず、ユーザが直接ゲームをコントロールすることになる。ユーザがゲームを終了すると、あるいはアバターをビデオゲームマシンから移動させると、ゲームからデフォルトのホーム環境の眺めへと再び切り替えられる。古典的なアーケードゲームに加えて、ユーザが作成したゲームコンテンツを１台以上の仮想的なゲームマシンの呼び物とすることができる。そのようなコンテンツをオンラインコンペの対象として同じような仕方で呼び物とし、勝利を収めた新しいコンテンツを正規にダウンロードできるようにしてもよい。
【００６３】
ロビーゾーン１０１０に加えて、他のゾーン（例えば、ゾーン１０２０，１０３０，１０４０，１０５０，１０６０、これらは部屋であったり、エリアであったり、あるいは他の建造物とすることができる）も利用可能である。これらのゾーンへは、図４のマップ画面に似た性質のマップ画面によってアクセスすることができ、あるいは、ユーザが自分のアバターをロビーから様々な出口１０１６へと導くことにより、それら他のエリアへ歩いて行くこともできる。
【００６４】
通常、出口１０１６は次のエリアへのトンネルあるいは廊下という形を取る（しかし、控えの間という形を取ることも同様に可能である）。アバターがトンネルあるいは控えの間にいる間、次のゾーンがメモリにロードされる。ロビーゾーンおよび次のゾーンのどちらもトンネルあるいは控えの間の同一のモデルを含んでいるか、あるいはそのモデルが両方に対して共通資源となっている。どちらの場合であっても、ユーザのアバターは、同一位置にあるトンネルあるいは控えの間のロビー用版から新ゾーン用の版へと再配置される。このようにすれば、環境全体をメモリに同時に保持する必要なしに、ユーザのアバターがホーム環境全体を見かけ上継ぎ目なく歩くことができる。
【００６５】
次に、図６ｃも参照すると、利用可能な一つのゾーンはシネマゾーン１０２０である。シネマゾーン１０２０は複合型映画館に似ており、予告編や映画やテレビ番組、あるいは以下に詳細に説明する前述のホーム環境サーバ２０１０からダウンロードあるいはストリーム配信された広告を上映することができ、あるいはＨＤＤ４００やブルーレイディスクなどの光ディスク４４０に記憶されたコンテンツを上映することができる複数のスクリーンを有している。
【００６６】
通常、複合型映画館は、スクリーン１０２２を備えた入館エリアを有しており、そのスクリーン１０２２は話題となっている予告編や広告をすべての入場者に見せることができる。入館エリアはまた近く公開される映画を通常扱った（ただし、それに限定される訳ではない）ポスター広告１０２４を備えている。ユーザの年齢（例えばＰＳ３に登録されたもの）に応じて、特定のスクリーンおよび予告編やポスターの選択や表示をそれぞれ制限することができる。この年齢制限は、ホーム環境内のどのゾーンにおいても、年齢制限タグが付けられたどの表示コンテンツにも適用することができる。
【００６７】
更に、本発明の一実施形態においては、複合型映画館は多くのスクリーンルームを提供し、そこにおいては呼び物のコンテンツが利用可能であり、ユーザはそれらのスクリーンルームから選択することができる。スクリーンルーム内では、ダウンロードされたりストリーム配信されたりローカルに記憶されたメディアを仮想シネマ環境内で再生することができる。仮想シネマ環境では、座席列やスクリーンカーテンなどを備えたルーム内にスクリーンがセットされている。映画館は潜在的にはホーム環境にいるすべてのユーザに利用可能であり、したがって他のユーザのアバターが、例えばウェブ放送などの共通にストリーム配信されたマテリアルを視聴しているのが、見えるかもしれない。あるいは、ユーザはズームインを行なってスクリーンが全表示領域を占めるようにすることができる。
【００６８】
次に、図６ｄをも参照すると、別のタイプのゾーンは開発者あるいは発行者ゾーン１０３０である。通常、利用可能なそのようなゾーンが複数存在することができる。オプションとして、その各々のゾーンは自分自身用にロビーエリア１０１０からの出口を持つようにすることができる。あるいは別の方法として、幾つかあるいはすべてがロビーからの一つの出口を共用し、そこで利用可能な各々のゾーンに共通のあるいは複製されたトンネルあるいは控えの間モデル内からの別個の出口を持つことができる。別の方法として、それらを、ポップアップメニューの形態のメニューから選んだり、あるいはホーム環境内から例えば一組の案内標識から選ぶなどして、選ぶことができる。これら後者のケースの場合、接続トンネルあるいは控えの間は選択された開発者あるいは発行者ゾーン１０３０にのみ接続するように見えるであろう。その代わりに、あるいはそれに加えて、そのようなゾーンをマップ画面を介して選択することができ、その結果ゾーンがメモリにロードされ、アバターは選択されたゾーン内に再び生み出される。
【００６９】
開発者あるいは発行者ゾーン１０３０は付加的な仮想環境を提供し、その環境は開発者あるいは発行者の製品、ブランドおよびマークのルックアンドフィールを反映することができる。
【００７０】
開発者あるいは発行者ゾーン１０３０はホーム環境に対する補足的なソフトウェアモジュールである。そして通常、そのゾーンの構造や外観を提供する付加的な３Ｄモデルおよびテクスチャを有している。
【００７１】
さらに、ホーム環境を実現できるソフトウェアは、応用プログラムインタフェース（ＡＰＩ）によってサードパーティソフトウェアの統合をサポートしている。従って、開発者は自分自身の機能コンテンツを自分自身のゾーンのホーム環境に統合することができる。これは以下のいずれかあるいはすべての形態を取ることができる。
ｉ．ゲームの予告編あるいは有名人による推薦など、特定のコンテンツのダウンロード／ストリーム配信；
ｉｉ．アバターの外見、行動および／またはゾーン内の通信オプションの変更；
ｉｉｉ．バスケットボール１０３２あるいはゴルフ練習場１０３４など、一つ以上のゲームの提供（任意に選択できることであるが、開発者あるいは発行者のゲームのブランドが付けられたもの、あるいはそのゲームにグラフィック的に似たものとすることができる）；
ｉｖ．開発者あるいは発行者のゲームを代表する一つ以上の相互作用的な場面あるいはビネットで、プレイヤーがゲームの一側面を体験したり、ゲームの特定のスキルを磨いたり、ゲームのコントロールに習熟したりすることを可能にするもの；
ｖ．アリーナ、リング、道場、コートあるいは類似のエリア１０３６であって、そこでは遠隔プレイされるゲームが観客によって見物できるようにアバター１０３８によりライブで表わされる。
【００７２】
このように、例えば開発者のゾーンは、開発者のトレードマークとなっている色や開発者のロゴをあしらったコンコースに似ており、サッカーネットや射撃用のスキート射撃場などのゲームエリアがそのゾーンに面している。それに加えて、ゲーム特有のキャラクタを配置したブース（図示されていない）があって、ユーザのアバターがそれに入って一時的にゲームの主要なキャラクタに変わったり、あるいは一人称の視野にズームインしたりすることができ、また、呼び物のゲームの場面に似た更に別のルームに入ることができるようになっている。ここで、ユーザはゲームの他のキャラクタと交流し、また主要場面を演じることができる。コンコースに戻ると、ゲームの広告や他のコンテンツが壁に表示されている。このゾーンの末端でコンコースはアリーナへと開かれており、そこではフットサルの試合が行われていて、そのプレイヤーとボールの位置は、人気グループ（例えば、高位のチーム）がその時点において他国で行なっているゲームに一致したものとなっている。
【００７３】
本発明の様々な実施形態では、開発者／発行者ゾーンをダウンロードすることができる。その代わりとして、あるいはそれに加えて、帯域を小さくするために、雑誌の付属ディスクによってデモコンテンツとして提供することができ、あるいは、開発者あるいは発行者から購入したゲームのインストールプロセスの一部として、ディスクからインストール／アップグレードすることができる。後の二つの例の場合、その後にそのゲームを購入あるいは登録した場合、その結果として更に別のゾーンコンテンツをロック解除したりダウンロードしたりしてもよい。いずれにしても、更なる変更（そして、時宜にかなった広告や予告編メディア）を必要に応じてダウンロードしてよい。
【００７４】
これに類似したゾーンとして商業ゾーン１０４０がある。この場合も、開発者および発行者ゾーンと同じような仕方でアクセスすることができるこのような商業ゾーンが複数存在できる。開発者／発行者ゾーン１０３０と同様、商業ゾーン１０４０は、一以上の商業ベンダーの代表的な仮想資産を３Ｄモデル、テクスチャなどの形で有しており、それによってその実世界の店、ブランド、アイデンティティーをレンダリングすることが可能となる。それらは、ゾーン内で地理的におよび／またはテーマ的にグループ化してもよい。
【００７５】
商業ゾーン内のスペースは、いわゆる「仮想不動産」としてサードパーティによりレンタルすることができる。例えば、小売業者は代金を支払うことにより、ホーム環境サーバ２０１０を介して、例えば月毎あるいは年毎の更新として、提供されるホーム環境の定期的な更新の一部として、商業ゾーン１０４０内に自分の店をレンダリングしてもらうことができる。小売業者は上述の商業施設のために、期間ベースであるいは品目毎に、付加的な支払いをするようにしても良い。このようにして、ホーム環境のユーザに商業的なプレゼンスを与えることができる。
【００７６】
先の場合と同様に、商業ゾーンは、ＡＰＩを介してホーム環境に統合できる補足的ソフトウェアを有しており、それにより付加的な通信オプション（店に特有の名称、商品、取り引きオプションなど）や、付加的な機能（例えば、購入用商品とサービスのオンラインデータベースへのアクセスや、時価や商品の入手可能性や配達オプションの決定など）を提供することができる。このような機能はメニュー（ポップアップメニュー、あるいはホーム環境内の、例えば壁の、メニュー）を介してアクセスすることもできるし、あるいは自動化されたアバターと通信することによってアクセスすることもできる。アバター同士の通信については、後に詳述する。
【００７７】
当然ではあるが、開発者および発行者も商業ゾーン内に商店を設けることができるし、また、開発者／発行者と商業ゾーン間の接続トンネルを設けることもできる。例えば、トンネルによって開発者ゾーンをその開発者のゲームを販売する商店に接続することができる。そのようなトンネルを「多対一」のタイプとして、幾つかのゾーンの出口から入って同一の店内トンネルから現れるようにすることができる。その場合には、通常、そのトンネルを再利用すると、可能なゾーンの一つではなく、前のゾーンへユーザを連れ戻すように取りきめることになるであろう。
【００７８】
本発明の一実施形態においては、ホーム環境を実現するソフトウェアがＰＳ３のＯＳにより提供されるオンラインコンテンツ購買システムに対するアクセスを有している。開発者、発行者および商店オーナーは、ＩＰアドレスを指定するインタフェースと自分のオンライン取引を容易にするクエリーテキストによって、このシステムを利用することができる。あるいは、ユーザは自分のＰＳ３の登録の詳細とクレジットカードの詳細が直接利用されることを許可することができ、その結果ホーム環境内のどこであっても、適切な仕方で使用可能とされるオブジェクト、ゲーム、広告、予告編あるいは映画を選択することにより、その品目あるいはサービスの購入を選択することが可能となる。特に、ホーム環境サーバ２０１０はユーザのクレジットカードその他の詳細情報を記憶することができ、またオプションとして、その有効性を確認してもよい。その場合は、その詳細情報を取引ですぐに利用することができ、ユーザがその詳細情報を入力する必要はない。このように、ホーム環境は取引における仲介者として機能する。あるは、そのような詳細をＰＳ３に記憶し、その有効性をＰＳ３によってあるいはホーム環境サーバによって確認することができる。
【００７９】
次に図７をも参照すると、本発明の一実施形態では、販売方法が、ホーム環境内で品目（商品あるいはサービス）を選択するユーザをステップｓ２１０２において含んでいる。ステップｓ２１０４では、ＰＳ３  １０がオブジェクトに対応する識別データをホーム環境サーバ２０１０に送信し、ホーム環境サーバ２０１は、ステップｓ２０１６において、望ましい供給者（好ましくは、ユーザのＩＰアドレスに対応する国内の供給者）からその品目を入手可能であるかを確認する。その品目が入手可能でない場合、ステップｓ２１０７でユーザのＰＳ３  １０にメッセージを送信することによってユーザに通知する。あるいは、一以上の第二位の供給者からの入手可能性をまず調べ、オプションとしてユーザがこれらの供給者の一つからの供給を受け入れることができるかどうかを確認してもよい。ステップｓ２１０８において、ホーム環境サーバはユーザについて登録されている支払い詳細情報を記憶装置から検索し、それを検証する。利用できる有効な支払い方法が全く存在しない場合、ホーム環境はユーザが新たな詳細情報を安全な（すなわち、暗号化された）接続を介して入力するように要求することができる。有効な支払い方法が利用可能であれば、ステップｓ２１１０において、ホーム環境サーバは適切なサードパーティの支払い供給者に対して、ユーザの勘定から支払額を送金するように要請する。最後に、ステップｓ２１１２において、ホーム環境サーバはユーザの適切な配達先住所あるいはＩＰアドレスを望ましい供給者に提供して当該品目を発注し、その望ましい供給者の勘定に適切な支払いをする。
【００８０】
このように、商取引は特に店に限定されない。同様に、商品あるいはサービスが店の中に表示されるとき、その商品あるいはサービスの望ましい供給者が店のオーナーとして設定されるなら、店がそれ自身の商業的なアプリケーションを提供する必要はない。商品あるいはサービスがディジタル的に供給され得る場合は、オプションとして、それを望ましい供給者から直接あるいはホーム環境サーバ２０１０を介してダウンロードしてもよい。
【００８１】
前述した公開のゾーンに加えて、個人ユーザにとって私的な、自分自身あるいは自分が招待した者だけがアクセスできる付加的なゾーンが存在する。これらのゾーンについても、共用のロビーエリアからの出口があるが、アバターが入る時（あるいはマップ画面で選択される時）、そのゾーンのそのユーザにとって私的なそれぞれのバージョンがロードされる。
【００８２】
図８ａを参照すると、これらのゾーンの第１のものはアパートゾーン１０５０である。本発明の一実施形態においては、これはユーザがカスタマイズできるゾーンであり、壁紙、フローリング、絵画、家具、外の景色、照明などの登場物１０５２を選び、また位置決めすることができる。家具の幾つかは機能性家具１０５４であり、ＰＳ３の機能にリンクされている。例えば、テレビをアパート１０５０に設置することができ、そのテレビによって、幾つかのストリーム配信されるビデオ放送の一つを、あるいはＰＳ３のＨＤＤ４００あるいは光ディスク４４０に記憶されたメディアを見ることができる。同様に、インターネットラジオストリームへの予め選ばれたリンクを含むラジオあるいはハイファイ装置を選択することができる。更に、ユーザの芸術作品や写真を壁掛けや絵の形で部屋に持ち込むことができる。
【００８３】
オプションとしては、ユーザ（図８ａでは、そのアバター１０５６によって表わされている）はより大きなアパート、および／または大型ＴＶや玉突き台あるいは自動化された非プレイヤーアバターなど追加の品物を購入することができる。考えられる他の項目としては、屋内体操場、水泳プール、あるいはディスコエリアがそれに含まれる。これら後者の場合、付加的な制御ソフトウェアあるいは付加的なキャラクタ機能を提供するコンフィギュレーションライブラリが、先に説明した商業ゾーンや開発者／発行者ゾーン１０３０，１０４０に関して説明したと同様の仕方によってＡＰＩを介してホーム環境に統合されることになる。
【００８４】
このような購入は、ホーム環境サーバに登録されたクレジットカードの詳細情報を用いて行なうことができる。支払いと引き換えに、サーバはユーザのアパート内で使用する該当品目のロックを解除するための許可キーをダウンロードする。あるいは、３Ｄモデル、テクスチャ、および品目に関連づけられた任意のソフトウェアをホーム環境サーバあるいは認可されたサードパーティのサーバからダウンロードすることができ、オプションとして、許可キーを関連付けてもよい。キーは、例えば、ＰＳ３  １０のファームウェアのディジタルシリアル番号との一致を要求し、それによって無許可の分配を防止する。
【００８５】
ユーザのアパートは、それぞれのユーザからの招待によってのみ他者がアクセスすることができる。この招待は、友人リスト内から特定の友人を継続招待するという形を取ることができる。あるいは、他のユーザに与えられ、そのユーザが現在のホーム環境セッションに留まっている間だけ有効な単一セッション入場許可証の形を取ることができる。このような招待は、ホーム環境サーバ２０１０が維持する関連付けの形を取ることができ、あるいは、ＰＳ３装置間において招待客としてのステータスの確認を可能とするピアツーピアベースで供給されるディジタルキーの形を取ることができる。
【００８６】
本発明の一実施形態においては、招待されるユーザはアパートのユーザがアパートに居る時だけそのアパートに入ることができ、アパートのユーザが去ると自動的にロビーに戻される。アパート内に居る間は、そこに居る当事者（ユーザと位置データの両方）の間のすべての通信は純粋にピアツーピアである。
【００８７】
このように、アパートはまた、芸術作品やスライドショーや音声・画像などの家庭制作コンテンツを招待客と分かち合う機会をユーザに提供し、また公開ゾーンの他のユーザからのあり得る干渉を受けることなく、友人と交わる機会をも提供する。
【００８８】
招待客がユーザのアパートに入ると、その部屋とその中の備え付け家具の構成が、各オブジェクトのＩＤコードと位置データを利用して、ピアツーピア方式で出席者の間に送信される。ユーザと招待客との間で部屋あるいは品目が共有されていない場合、モデルやテクスチャやそれを招待客のＰＳ３上で実現するのに必要なコードも送信することができ、それらは、ユーザのアパートにいる間だけそしてユーザと招待客がこのセッションでオンラインの状態に留まっている間だけ使用されるような、使い捨てキーあるいは類似の制約条件と共に送信される。
【００８９】
図８ｂを参照すると、同様に招待によってのみアクセスできる更に別の私的スペースは、ユーザのトロフィールーム１０６０である。トロフィールーム１０６０は、ゲームのプレイの際に獲得したトロフィー１０６２を展示することができる。
【００９０】
例えば、サードパーティのあるゲームは魅力的な水晶の捜索を含むものである。プレイヤーが水晶を見つけることに成功すると、そのサードパーティゲームはそれをトロフィールーム１０６０のためのトロフィーとして指名し、トロフィールーム１０６０がロードされる時にホーム環境ソフトウェアによりアクセスされるファイル領域にその水晶を表わす３Ｄモデルおよびテクスチャを置く。その結果、ホーム環境を実現するソフトウェアは、その水晶をトロフィールーム内のトロフィーとしてレンダリングすることができる。
【００９１】
ユーザのトロフィールームを見るように相手を招待する場合、トロフィーを一時的に見るために必要なモデルとテクスチャがユーザのＰＳ３からそれら相手のＰＳ３にピアツーピアベースで送信される。これは初めの招待に続けて、トロフィールームに入ることを見越して、バックグラウンドのアクティビティとして実行することができる。あるいは、相手が接続トンネル／控えの間に入る時やマップ画面からユーザのトロフィールームを選択する時に行なわれる。オプションとして、ある相手がやはりそのトロフィーを持っている場合、彼は自分が訪問しているユーザからそのトロフィーをダウンロードしないものとすることができる。従って、本発明の一実施形態では、各トロフィーは識別コードを有している。
【００９２】
その代わりに、あるいはそれに加えて、トロフィールームをグループ、あるいはいわゆる「クラン」のメンバー間で共用することができ、その結果、クランのいずれかのメンバーが勝ち取ったトロフィーは一味の他のメンバーにピアツーピアベースで送信される。従って、一味の全メンバーがトロフィーの共通のセットを見ることになる。
【００９３】
その代わりに、あるいはそれに加えて、ユーザはホーム環境のすべてのメンバーに継続招待を提供し、どんな人にも自分のトロフィールームの訪問を許すことができる。商業ゾーンや開発者／発行者ゾーンの場合と同様に、複数の部屋、例えば、私的なトロフィールーム、グループベースのトロフィールーム、そして公開トロフィールームが存在可能である。これは、前述のようにポップアップメニューやホーム環境内の案内標識から選ぶことにより、あるいは関係するユーザをそのアバターのところに歩いて行くことによって特定し、ロビーからのトロフィールームへの出口を利用してそのユーザの（公開の）トロフィールームへの入室を選ぶことにより、管理することができる。
【００９４】
その代わりに、あるいはそれに加えて、公開トロフィールームを提供することができる。この部屋はホーム環境の現在のインスタンスにおける人物で最も多くのトロフィーを有する人物あるいはトロフィー値評価方式による総合得点が最高点の人物のトロフィーを展示することができる。あるいは、それを統合トロフィールームとすることができ、ホーム環境のそのインスタンスにおける幾人かのあるいはすべてのユーザからのベストなあるいは選ばれたトロフィーをそのユーザのＩＤと共に展示する。それで、例えば、あるユーザは自分にとって難しいゲームのトロフィーを見つけ、ホーム環境の誰がそれを獲得したかを確認し、次いで、その人の所へ行って、どのようにそれを獲得したか聞くために話し掛けることができる。あるいは、公開トロフィールームは複数のホーム環境を横断してベストなトロフィーを収容することができ、地理的グループ、年代を特定したグループ、ゲームを特定したグループ、あるいは世界中の中からベストなゲーマーを特定することができる。それに代えて、あるいはそれに加えて、ベスト得点ゲーマーを掲示したリーダーボードを提供し、ライブで更新することができる。
【００９５】
当然のことであるが、それぞれが付加的な３Ｄモデルやテクスチャや制御ソフトウェアを有する多くの付加的なサードパーティゾーンが利用できるようになる可能性がある。その結果、ＨＤＤ４００のかなりの量のスペースがホーム環境ゾーンで占められるかもしれない。
【００９６】
従って、本発明の一実施形態においては、現在ユーザのホーム環境に関連付けられているサードパーティゾーンの数が限定されている。第１のインスタンスでは、既存のサードパーティゾーンが削除されるまで付加的なサードパーティゾーンが追加されるのを防ぐために、最大のメモリアロケーションを利用することができる。それに代えて、あるいはそれに加えて、サードパーティゾーンを地理的適切性あるいはユーザの関心（ホーム環境サーバ２０１０とのインタフェースを介して、登録の際あるいはその後に宣言される）に応じて限定することができ、その結果、ユーザにとって適切なサードパーティゾーンだけがダウンロードされる。そのようなシステムで、新たなサードパーティゾーンが利用できるようになると、上記の基準に従ってユーザにとっての適切性が評価され、それが現在記憶されているサードパーティゾーンの少なくとも１つより適切であれば、ユーザのＰＳ３に記憶されている現在最も適切性の小さなサードパーティゾーンに取って代わる。
【００９７】
適切性に関する他の基準として、指名された友人の関心やそのインストール済みゾーンを含めることができ、あるいは、ユーザのＰＳ３でプレイされたゲームや他のメディアに対するゾーンの適切性を含めることができる。
【００９８】
ユーザがダウンロードによってあるいはディスクによって明示的にインストールしたかどうかに従い、更に別のゾーンを認めることができる。
【００９９】
先に述べたように、ホーム環境内でユーザはアバターによって表わされる。ホーム環境を実現するソフトウェアは、ユーザのアパートのカスタマイズと同じように、事前に設定されたオプションからの選択によるユーザのアバターのカスタマイズを可能にしている。ユーザは性や肌の色調を選択することができ、それぞれについて利用できるオプションを組み合わせることによって顔の特徴や髪をカスタマイズすることができる。ユーザはまた広範な衣類から選択することができる。この機能をサポートするために、アバター用の広範な３Ｄモデルやテクスチャが提供されている。本発明の一実施形態においては、ユーザが自分自身のテクスチャをインポートして、自分の衣類上に表示することができる。通常、各アバターの外見を定義するパラメータは約４０バイトを占めるに過ぎないので、住民のいるホーム環境に加わる時にはホームサーバを介してそのパラメータを素早く配布することができる。
【０１００】
ホーム環境の各アバターは、ユーザのＩＤあるいはニックネームによって識別することができ、それはアバターの上のバブル内に表示される。バブルのまん延を制限するために、アバターが十分近くてバブルに含まれるテキストが容易に読めるとき、あるいは相互作用できるほどアバターが近い時および／またはユーザの視界の中心に近いとき、そのようなバブルは景色に溶け込む。
【０１０１】
アバターは、従来の三人称ゲームの仕方で（例えば、ゲームコントローラ７５１を用いて）ユーザにより制御され、ホーム環境を歩き回ることができる。アバターの行動のうちのあるものは状況に依存している。従って、例えば、座るという選択はアバターが座席に近い時だけ可能である。他のアバターの行動はいつでも可能であり、例えば、選択した感情やジェスチャーの表示、あるいはある通信の選択がそうである。アバターのアクションはゲームコントローラ７５１を用いて決定するが、移動などのアクションの場合のように直接に決定するか、あるいはゲームコントローラ７５１の適切なキーを押すことによって呼び出されるポップアップメニューによってアクションを選択することによって決定する。
【０１０２】
そのようなメニューによって利用可能なオプションには、アバターの外見と衣類の更なる変更や、感情やジェスチャーや移動の選択が含まれる。例えば、ユーザは自分の知っている誰かがホーム環境に見えたとき、自分のアバターがほほ笑んだり、手を振って合図したり、小躍りしたりすることを選択できる。
【０１０３】
ユーザは、アバターを介してテキストやスピーチによって互いに交信することができる。
【０１０４】
テキストによって交信するために、本発明の一実施形態では、適切なアバター上のポップアップバブル中にメッセージが現れ、必要であればその名前バブルに取って代わる。
【０１０５】
次に、図９を参照すると、メッセージを生成するために、ユーザは前もって設定された様々なメッセージを含むポップアップメニュー１０７０を起動することができる。それらのメッセージは完成されたメッセージとすることもできるが、それに代えて、あるいはそれに加えて、入れ子式のメニューの形を取り、それを操作することにより、選択されたオプションを連結してメッセージを生成することもできる。
【０１０６】
それに代えて、あるいはそれに加えて、仮想キーボードを表示し、ゲームコントローラ７５１で操作することによりテキストを自由に生成することができる。実際のキーボード７５３がブルートゥースによって接続されていれば、テキストを打ち込んで直接バブルに入れることができる。
【０１０７】
本発明の一実施形態においては、ロビーがホーム環境サーバによって主催されるチャットチャネルを提供し、従来のチャット機能を利用することができる。
【０１０８】
スピーチによって交信するために、ユーザは利用可能なマイク（例えば、ブルートゥース方式のヘッドセット７５７など）を持っていなければならない。そして、本発明の一実施形態においては、ゲームコントローラ７５１のボタンを押すことによってスピーチオプションを選択するか、あるいはホーム環境を実現するソフトウェア内の音声活動検出部を利用することにより、ユーザはホーム環境内で話すことができる。話している時には、例えばスピーチアイコンがアバターの頭の上に現れて、他のユーザが必要なら音量設定を調節するように注意を喚起することができる。
【０１０９】
スピーチはユーザのＰＳ３によってサンプリングされ、ＣＥＬＰ（Ｃｏｄｅ  Ｅｘｃｉｔｅｄ  Ｌｉｎｅａｒ  Ｐｒｅｄｉｃｔｉｏｎ）コーデック（あるいは、ＶｏＩＰが適用可能な他の既知のコーデック）を用いて符号化し、最も近い８つのアバター（オプションとして、ユーザのアバターを取り囲む仮想環境内の所定のエリア内にいるという条件を満たすものとすることができる）にピアツーピア方式によって送信する。所定のエリア内に８つより多いアバターが存在する場合、スピーチを受信した１台以上のＰＳ３は、それぞれのユーザアバターがそのエリア内にいてそのスピーチを受信しなかった他のＰＳ３にそのスピーチを場当たり的に転送することができる。この機能を調整するために、本発明の一実施形態においては、ＰＳ３はアバターが所定のエリア内にいるすべてのＰＳ３にスピーチフラグを送信し、その結果、それらのＰＳ３は適切な（話している）アバターの頭の上にスピーチアイコンを置くことができ（それによって、それぞれのユーザはより簡単に話し手を識別できる）、またＰＳ３に送信を知らせることができる。各ＰＳ３は、アバターの相対的な位置に基づいて、どのＰＳ３がスピーチを受信しないかを決定することができ、仮想環境内で最も近いアバターがどれであってもそのアバターのＰＳ３にそのスピーチを転送することを決定できる。あるいは、エリア内のＰＳ３は互いに接続試験用パケット（ｐｉｎｇ）を送り合い、スピーチを受信しなかったＰＳ３との間で応答遅延が最も小さいＰＳ３がどれであってもそのＰＳ３がスピーチの転送を決定することができる。
【０１１０】
当然ではあるが、８つへの限定は例示のためであって、実際の数はスピーチの圧縮率や利用可能な帯域などの要因に依存する。
【０１１１】
本発明の一実施形態では、そのようなスピーチを携帯電話ネットワークなどの他のネットワークへと、携帯電話番号を指定して、中継することもできる。これは、スピーチをホーム環境を介して携帯電話ネットワークのゲートウェイサーバへとルーティングすることにより、あるいはユーザ自身の携帯電話へブルートゥース送信することによって実現することができる。後者の場合、ＰＳ３とインタフェースをとり、また呼び出しをルーティングするために、携帯電話はミドルウェア（例えば、Ｊａｖａ（登録商標）アプレット）を必要とするであろう。
【０１１２】
したがって、ユーザはホーム環境内から電話上の人物に連絡を取ることができる。同様の方法で、ユーザはテキストメッセージを携帯電話上の人物に送信することもできる。
【０１１３】
本発明の一実施形態においては、スピーチと同様の方法で、ソニー（登録商標）社のアイトイ（登録商標）ビデオカメラなどのビデオカメラを装備したＰＳ３のユーザは、ポップアップ画面を介して、あるいはホーム環境内のＴＶや類似の装置（例えば、アバターが手に持つソニー（登録商標）社のプレイステーションポータブル（登録商標）（ＰＳＰ）など）を介して、ビデオチャットモードを使用することができる。この場合、オーディオコーデックに加えてあるいは代えてビデオコーデックが用いられる。
【０１１４】
オプションとして、最近話したユーザのアバターを強調表示することができ、最も多く話したユーザのアバターはより一層目立つように強調表示できる。これは、例えば名前の隣のアイコンによって、あるいはアバターの周囲の輝きの度合いによって行なうことができる。
【０１１５】
図５に戻って参照すると、ユーザが自分のＰＳ３  １０上でホーム環境の起動を選択すると、ローカルに記憶されているソフトウェアがホーム環境のグラフィックな表現を生成し、ホーム環境サーバ２０１０へと接続する。ホーム環境サーバ２０１０は、複数のオンラインホーム環境２０２１，２０２２，２０２３，２０２４の一つにユーザを割り当てる。明確にするため、４つのホーム環境だけが示されている。
【０１１６】
当然のことながら、任意の１時点で何万人ものユーザがネットワークに接続している可能性がある。従って、過密を防ぐために、ホーム環境サーバ２０１０は多数の別個のオンラインホーム環境のインスタンスをサポートすることができる。同様に、多くの別個のホーム環境サーバが、例えば異なる国々に、存在することができる。
【０１１７】
あるホーム環境に一旦割り当てられると、ＰＳ３は最初にアバターの外見に関する情報をアップロードし、次いで、ホーム環境サーバに継続的に自分自身のアバターの位置データを提供し、オンラインホーム環境内の他のアバターの位置データをホーム環境サーバから受信する。実際には、帯域を制限するために、この位置交信は周期的であるため（例えば、２秒ごと）、他のＰＳ３は動作を補間しなければならない。キャラクタの動作のそのような補間は、オンラインゲームでは良く知られている。更に、それぞれの更新で一連の位置を提供することができ、そうすれば動作の（ある時差での）反復が改善され、あるいは現在の動作の外挿が改善される。
【０１１８】
加えて、ホーム環境２０２４内の他のＰＳ３  ２０３１，２０３２，２０３３のＩＰアドレスを共有して、スピーチなど他のデータをピアツーピア方式で互いに送信し合うことができ、それによってホーム環境サーバにより処理されるデータの必要帯域を減らすことができる。
【０１１９】
ホーム環境内の過密を防ぐために、それぞれは最大で、例えば、６４人のユーザをサポートすることができる。
【０１２０】
ユーザが接続されるホーム環境の選択は、ＰＳ３が提供するおよび／または登録プロセスによってホーム環境サーバに知られる、多くの要素を考慮に入れることができる。その要素は次のものであるが、それらに限定される訳ではない。
ｉ．ＰＳ３の地理的な位置；
ｉｉ．ユーザに好ましい言語；
ｉｉｉ．ユーザの年齢；
ｉｖ．現在のユーザの「友人リスト」内のあるユーザがすでにある特定のホーム環境にいるかどうか；
ｖ．ユーザのＰＳ３内に現在どんなディスクがあるか；
ｖｉ．ユーザのＰＳ３で最近どんなゲームがプレイされたか。
【０１２１】
したがって、例えば、スイスの１０代の若者はスイスのサーバにあるホーム環境に接続し、ユーザの最高年齢は１６歳、主たる言語はフランス語とすることができる。他の例として、ＰＳ３に「レボリューション」ゲームを搭載しているユーザは、非常に多くの他のユーザがやはり現在同じゲームを搭載しているホーム環境に接続することにより、複数参加型ゲームの組織を容易にすることができる。この後者のケースの場合、ＰＳ３  １０はＢＤ−Ｒｏｍ４３０に入っているゲームを検出して、ホーム環境サーバ２０１０に通知する。次いで、サーバはそれに従ってホーム環境を選ぶ。
【０１２２】
更に別の例では、ユーザが接続されるホーム環境は、ユーザの友人リストに載せられていることが確認されるユーザ３人を見出せるホーム環境である。この例では、友人リストはユーザの名前のリストであり、オプションとして、定期的に会いたいという希望を寄せた他のユーザから受け取ったＩＰアドレスを含むことができる。異なる友人グループが異なるホーム環境サーバに置かれている場合（例えば、当該ユーザが両方の組に共通な唯一の友人である場合）、最も友人の多いホーム環境にユーザを接続してもよいし、あるいは、選択権がユーザに与えられてもよい。
【０１２３】
逆に、ユーザが１人以上の友人に対してホーム環境を切り替えて一緒になるように要請してもよい。この場合、ユーザはポップアップメニューを介してあるいはホーム環境から（例えば、壁のスクリーンであるいはインフォメーションブースで）自分の友人リストを見て、誰がオンライン状態にあるか確認することができる。次いで、ユーザは自分の友人に対して、ピアツーピア接続を利用して、あるいは友人がホーム環境内にいるかＩＰアドレスが不明の場合はホーム環境サーバを介して、招待を送信することができる。次いで、友人は参加するようにとの招待を受け入れることもできるし、辞退することもできる。
【０１２４】
招待を容易にするために、通常、ホーム環境サーバは特定のホーム環境に対して最大のユーザサポート数よりも少ない数のユーザを割り当てることができ、そうすれば前述のようなユーザ主導による追加割り当ての実現が可能となる。このいわゆる「ソフトリミット」は、例えば、定員の９０％とすることができ、また適応性のあるものとすることができる。例えば、夕方の早い時間や週末には人々がオンラインで友人に会う可能性が高いので、変えることができる。
【０１２５】
数人の友人が同じホーム環境内にいる場合、本発明の一実施形態では、それらの友人たちを現在見出すことのできるゾーンをマップ画面で強調表示することができ、その名前をマップ上に表示するか、サイドバー上でゾーン名に関連して名前を表示することによってそれが行なわれる。
【０１２６】
次に図１０を参照すると、さらに、ホーム環境の選好、設定、機能、そしてオプションとして他の機能面について、仮想的なソニー（登録商標）社のプレイステーションポータブル（登録商標）（ＰＳＰ）娯楽装置１０７２を用いて、必要に応じて見たり、調節したり、アクセスしたりすることができる。この仮想的なＰＳＰを、ゲームコントローラ７５１を用いて呼び出し、画面上にポップアップするようにできる。次いで、ユーザは、仮想ＰＳＰ上に表示されているＰＳＰクロスメディアバー１０７４によって、それらのオプションや設定や機能面にアクセスすることができる。先に述べたように、ＰＳＰをビデオチャット用のインタフェースとして用いることもできる。
【０１２７】
ユーザがホーム環境を去りたいと望む場合、本発明の実施形態では、ゲームコントローラ７５１上の適切なキーを選択することにより、あるいはポップアップメニューから退出オプションを選択することにより、あるいはマップ画面から退出を選択することにより、あるいは自分の仮想ＰＳＰを介してオプションを選択することにより、あるいはロビーゾーン内のマスター出口を歩いて通り抜けることによって、そうすることができる。
【０１２８】
通常、ホーム環境から退出すると、ＰＳ３  １０はＰＳ３クロスメディアバーに戻ることになる。
【０１２９】
最後に、当然のこととして、ホーム環境ソフトウェアに基づいたそしてＰＳ３クロスメディアバーから別個にアクセスできる付加的で別個の環境について考えることができる。例えば、スーパーマーケットは、（ホーム環境サーバによって同様の仕方でサポートされる）スーパーマーケット環境を収容した無料のディスクを提供することができる。選択すれば、ユーザのアバターはスーパーマーケットの仮想的描写（３Ｄモデル、あるいは棚に適用したテクスチャ）内に陳列された品物を閲覧することができ、その上でクリックすれば上に述べたように購入することができる。このようにして、小売業者は自分自身のユーザ基盤のためにオンラインショッピング機能を提供し、また更新することができる。
【０１３０】
ここで再び図５を参照すると、本発明の一実施形態において、１人のユーザ（例えば、ＰＳ３  １０のユーザ）が自分のアバターを操作してホーム環境内においてストリーム配信されるコンテンツを視聴するかあるいは他の仕方でそのコンテンツにアクセスする時、そのコンテンツはホーム環境サーバ２０１０（あるいは、ホーム環境サーバにリンクされたコンテンツサーバ（図示されていない））からストリーム配信することができる。
【０１３１】
しかし、２人以上のユーザ（例えば、３台のＰＳ３  ２０３１，２０３２，２０３３のユーザたち）がそれぞれのアバターを操作して、ストリーム配信される同じコンテンツを視聴するか他の仕方でアクセスする場合、ホーム環境サーバが、ストリーム配信の対象であるメディアのコピーを各ＰＳ３に対して別々に送信するのは帯域の浪費である。
【０１３２】
本発明の一実施形態においては、この浪費に対応するために、ホーム環境サーバはそれらのＰＳ３に対して、それらがピアツーピアグループの一部となることを通知する。次いで、サーバはデータの異なる部分を、関係するＰＳ３のＩＰアドレスを付けて、異なるＰＳ３に割り当て、それらのＰＳ３に対してホーム環境サーバから受信したデータをグループ内の他のＰＳ３とピアツーピア方式で共有するように指示する。このようにして、ホーム環境サーバ（あるいはコンテンツサーバ）の調整により、すべてのＰＳ３が、クライアント／サーバデータ転送とピアツーピアデータ転送の混合として、ダウンロードデータを効率的に受信することになる。サーバは既知の通信装置およびプロトコルを用いて、通知、命令、データ転送を実行する。
【０１３３】
データがダウンロードされる場合、データ部分は、例えば、そのデータの第１部分、第２部分、そして最後の第３部分であるとして、それぞれを３台のＰＳ３  ２０３１，２０３２，２０３３の１つに送信することができる。
【０１３４】
データがライブストリームの場合、データ部分は、例えば、下の表１に示されたように各装置に対してオフセットした３つ目ごとのフレームとすることができる。この場合、オプションとして、各ＰＳ３がストリームの最初の同じ短いセグメントを受信して、ストリームがＰＳ３間に分割される前にそのセグメントがフレームバッファとしての役割を果たすようにすることにより、フレームをピアツーピア方式で回送するための時間を持つことができる。
【表１】
2010529547.tif 000003
【０１３５】
本発明の一実施形態においては、データは重なり合わないように割り当てられる。これを行なえるのは、１台あるいはそれ以上のＰＳ３がホームサーバから切断される事態から回復する十分な時間がある場合（例えば、バッファリングによってそうである場合、あるいは時間的に緊急ではない転送の場合など）である。あるいは、データを重なり合うように割り当てることにより、１台のピアデータ源が予期せずに切断された場合のために冗長性を提供することができる。下の表２は３台のＰＳ３の場合におけるそのような冗長性の例を示すものであり、それらのどの１台が予期せずに切断される場合にも対処するためのものである。
【０１３６】
単純な実施形態においては、各ピアメンバーがサーバから受信する重複データをそのメンバーが自動的に配信することにより、冗長性が自然に提供される。あるいは、データの重複部分を識別し、１台あるいはそれ以上のメンバーが要求する場合にだけ、それを転送することができる。例えば、下の表２に示されているケースでは、第１のＰＳ３  ２０３１は、第２のＰＳ３  ２０３２がフレーム２を転送にできなかった場合に、第３のＰＳ３  ２０３３にそのフレーム２を要求することができる。そのような要求は、そのフレームデータが遅れたため表示に間に合わせるのにより緊急に必要とされていると判断された時にその要求がなされると想定して、高い優先度を与えることができる。
【表２】
2010529547.tif 000004
【０１３７】
１台のＰＳ３の接続が断たれる場合、データは残りの装置間で再配信される。冗長性のある上のケースの場合、これはホーム環境サーバからの２つの別個のストリームに委ねられるが、グループ内に最初により多くのＰＳ３が存在する場合でも、単にデータロードの比例的な増加となるに過ぎないことは理解されるであろう。従って、ピアグループ内により多くのＰＳ３が含まれているほど、この構成により得られる効率性が大きくなることは明らかである。メンバーの数は、ホーム環境内のアバターの行動によって動的に増加あるいは減少し得るが、それは現行方式によってホーム環境サーバによりモニタされ、また更新される。
【０１３８】
このようにデータを配分することにより、グループ内のすべてのＰＳ３がフルセットのデータを受信する一方、どの単一のＰＳ３もフルセットのデータをサーバだけから受信することはない。
【０１３９】
データはまた別の理由でＰＳ３間に異なる仕方で配信することができる。本発明の一実施形態においては、ホーム環境サーバはピアグループの各ＰＳ３のデータ転送速度をモニタし、より速い伝送速度によってＰＳ３に対するデータロードを増加させるように、それが各々に送信するデータの配分を適応させる。そのように適応的なロードを行なえば、速度の遅いピアグループメンバーの分担を減らすことにより、ピアグループの全体的効率が増加し、時間が決定的に重要なストリーミングアプリケーションにおいてフレームが失われる可能性を減少させる。典型的なケースとしては、各ＰＳ３は各ピアに対する自分自身の伝送速度をモニタし、平均速度をサーバに送り返す。
【０１４０】
仮想環境に関し、ピアグループを多くの方法で決めることができる。
【０１４１】
図１１Ａおよび図１１Ｂは、スクリーン３０１０とアバター３０２０，３０３０，３０４０，３０５０とを含むホーム環境の一部を示す概念的平面図である。スクリーンは図６ａや図６ｃに見られるシネマスクリーン１０１２あるいは１０２２と同様のものとすることができ、あるいは図８ａに見られるような、ビデオおよび／またはオーディオを提供するための仮想的なテレビスクリーンあるいは他の適切な形態のものとすることができる。
【０１４２】
図１１Ａにおいて、スクリーン３０１０で表示するために送信されるストリーミングデータに関するピアグループのメンバーであるかどうかは、メンバーとなる可能性のある各ピア装置のユーザにとってスクリーン３０１０が見える位置にそのアバターがあるかどうかに依存している。図１１Ａの例では、第１のアバター３０２０と第２のアバター３０３０と第３のアバター３０４０に対応するＰＳ３が、ストリーム配信されるコンテンツが配分されるピアグループのメンバーとなり、一方、スクリーンから顔をそらしている第４のアバター３０５０に対応するＰＳ３はグループには参加しない。
【０１４３】
図１１Ｂでは、スクリーン３０１０で表示するためにダウンロードされるストリーミングデータに関するピアグループのメンバーシップは、各アバターのスクリーンからの距離に依存しており、スクリーンがアバターのユーザに現在見えているかどうかにはかかわりがない。この方式の場合、半径３０１２が有効な動作距離あるいは引寄せ距離であり、アバターがこの距離を超えた位置にあるＰＳ３に対してはストリーミングデータが送信されない（あるいは、かなり低解像度のバージョンで、従ってデータ転送速度の小さなものが送信される）。従って、例えば、第４のアバター３０５０に対応するＰＳ３は、そのユーザにとって現在ストリーミングコンテンツは見えないとはいえ、ピアグループの一部となる。しかし、ユーザがこのアバターを操作して視点がスクリーンを含むようにしたいなら、ただちにストリーミングコンテンツを見ることができる。これはほとんどのユーザが近くにあるスクリーンに対して期待することである。対照的に、第３のアバター３０４０に対応するＰＳ３は、スクリーンがユーザに対して表示される視野内にあるものの、スクリーンとの距離のためにピアグループに参加していない。
【０１４４】
図１１Ａと図１１Ｂの方式は、さまざまな仕方で組み合わせることができる。例えば、半径３０１２はユーザの視点がスクリーン３０１０を含まない場合にのみ適用することができる。この場合には、図１１Ｂにおいて、第３のアバター３０４０に対応するＰＳ３も、動作半径の外にあるとはいえ、得られた視野がスクリーンを含んでいるので、ピアグループに含まれる。一方、このアバターが反対を向いていて、その結果、視野がスクリーンを含まないとすれば、対応するＰＳ３がピアグループに参加することはない。
【０１４５】
オプションとして、第２の半径（図示されていない）がアバターに対する更なる分離点としての役割を果たすことができ、その半径を超えた場合は、表示される視野がスクリーン３０１０を含んでいるかどうかにかかわらず、そのアバターに対応するＰＳ３はピアグループに参加しないとすることができる。これによって、アバターが遠くにある多くの他のユーザがちょっとの間だけグループに加わって抜けるためにデータの信頼できる割り当てが難しくなることを避けることができる。
【０１４６】
ホーム環境のあるゾーンのユーザのすべてがスクリーンを見たりダウンロードを受信する場合は、潜在的にすべての対応するＰＳ３をピアグループのメンバーとすることができる。
【０１４７】
先に言及したように、ピアグループの効率性はサイズと共に向上する。少なくともペイロードデータがオーバーヘッドデータ（メッセージングデータやパケットアドレスデータなど）に比べてデータ全体のかなり多くの部分を占めている場合はそうである。
【０１４８】
従って、本発明の一実施形態では、図１１Ａや図１１Ｂまた上記の変形例にみられるストリーミングビデオスクリーンを見ているあるいはその近くにいるアバターのグループは、ホーム環境の単一インスタンスに限定されない。むしろ、ホーム環境の平行的なインスタンスにおいて他のユーザが同じスクリーンの平行的なインスタンスを見ている場合は、ストリーム配信されるデータの配信という目的に関しては同じピアグループに参加していると考えることができる。
【０１４９】
従って、例えば、図１１Ａの最初の３つのアバター３０２０，３０３０，３０４０は、ホーム環境の他のインスタンスにおいてたまたま同じスクリーンの平行的なインスタンスを同時に見るように自分のアバターを操作した他のユーザに対応する他のアバター３０２０´，３０３０´，３０４０´，３０２０´´，３０３０´´，３０４０´´のピアグループと一緒にすることができる。
【０１５０】
ホーム環境の多数のインスタンスをサポートしているホーム環境サーバは、そのホーム環境の異なるインスタンスに接続されているＰＳ３がストリーム配信される同じデータを自分自身のインスタンスにおいて要求しており、従って上に述べた仕方で一つのピアグループを形成すべきかどうかを判断する。
【０１５１】
このように、ホーム環境サーバは、そのホーム環境の異なるインスタンスのピアグループを合体して、より大きくてより効率的なピアグループを実現することができる。これは、例えば、全体的なピアグループにおけるＰＳ３の目標数が満たされるかそれを超えるまで、グループを結合することによってそうすることができる。例えば、目標数ｎを、（現行データ帯域あるいは量／ｎ）＞（ｍ×ピアメンバー当たりのオーバーヘッド）となるように定義し、ここでｍは例えば５とすることができる。オプションとして、ホーム環境サーバはこの基準を満たすために、ピアをグループに補充したりそれから外したりすることを動的に行なうことができ、例えば、データ転送速度の大きな映画がデータ転送速度の小さな広告に変わると、大きなピアグループをより小さな複数のグループに分割することによってデータ／オーバーヘッド比率を維持し、次いで、データ転送速度の大きな映画が再び始まるとそれら複数のピアグループを再び合体するのは、非常に効率的であろう。
【０１５２】
オプションとして、これら平行的なインスタンスは、例えばそれぞれのインスタンスにおけるＰＳ３の地理的な近接性（例えば、登録データあるいはＩＰアドレスから得られる）など、他の基準によって選ぶことができる。それに代えて、またはそれに加えて、異なるグループのメンバーに対して他のグループのメンバーに試験パケットを送信し、その結果をホーム環境サーバに報告するように命令することができる。次いで、ホーム環境サーバはピアグループを形成できる最速なＰＳ３の組み合わせを決定する。
【０１５３】
このようにして、例えば、図１１Ａの第１のアバター３０２０に対応するＰＳ３が、第２および第３のアバター３０３０，３０４０に対応するＰＳ３に対するピアツーピア接続が遅い一方、ホーム環境の平行的なインスタンスにおいてやはり当該データをストリーミングしているアバター３０２０´，３０２０´´とのピアツーピア接続がかなり速い場合には、形成するピアグループをホーム環境の同じインスタンスにおける第１、第２、第３のアバター３０２０，３０３０，３０４０からなるものとするより、第１のアバター３０２０および平行的なアバター３０２０´，３０２０´´からなるものとすることができる。
【０１５４】
本発明の一実施形態においては、例えば第１、第２、第３のアバター３０２０，３０３０，３０４０に対応するＰＳ３はすべて既にダウンロードしたものの幾らかあるいはすべてを持っている。１台のＰＳ３、すなわち第４のアバター３０５０に対応する第４のＰＳ３がホーム環境サーバに接続して、やはりダウンロードすべきデータを要求する。この場合、サーバとピア装置は協力して、第４のＰＳ３にデータを転送する。即ち、サーバはデータのダウンロードの始めからデータセットの中間に向かってデータを送信し始め、一方、ピアグループ中の１台あるいはそれ以上がデータのダウンロードの最後からデータセットの中間に向かってデータを送信し始める（あるいは、その反対でもよい）。この組み合わされたプロセスは、サーバのデータ転送とピアのデータ転送がデータ中の同じ位置に達する時に完了する。従って、この転送プロセスは、２つの方法のどちらでも速い方がより大きな部分を転送することになるので、自己調整的である。
【０１５５】
明らかに、単にデータの互いに反対側の両端から開始して中間で出会うまで埋めて行くのではなく、他のデータパターンを用いることができる。しかし、やはりサーバがそのパターンの一端から開始し、ピアグループは他端から開始し、それぞれ他方が既にデータを供給した点に達するまで続ける。明らかに、サーバあるいはピアグループが何らかの理由で失敗した場合は、他方のシステムだけでデータの大部分（あるいは、すべて）を提供することになるであろう。可能性としては、サーバかあるいはピアグループのどちらか（しかし、通常はサーバ）だけでデータを提供することができる。
【０１５６】
もちろん、上に記載の方式はビデオストリーミングに限定されるものではない。例えば、同じアプローチをオーディオストリーミングあるいはオーディオ／ビデオ結合ストリーミングに適用することができ、またより一般的なデータダウンロード、例えば、ユーザが自分のアバターを動かしてサードパーティゾーンに入場させる場合に、そのゾーン用のあるいはそのようなゾーンのサブセクション用の付加的な３Ｄモデル、テクスチャおよび制御ソフトウェアのダウンロードに適用することができる。
【０１５７】
同様に、上に記載の方式がビデオスクリーンや他の仮想的な対象を見たりそれに接近したりする場合に限定されるものでないことは勿論である。例えば、ピアグループの形成やそれへの参加をトリガーする他の基準として、特定のゾーンへの入場、特定の仮想的装置とのやりとり、他のアバターとのやりとりを挙げることができ、そのような入場あるいはやりとりによってデータをオンラインで入手する必要が生じることになる。
【０１５８】
同様に、勿論、上に記載の方式はホーム環境におけるアバターに限定されるものではなく、より一般的に、送信元のサーバからのデータに関し、サーバによって制御した協調的なダウンロードの実行が可能となる。これは特に、メディアデータのようなストリーム配信されるデータの場合に適用できるが、それに限定される訳ではない。
【０１５９】
次に、図１２をも参照すると、対応するデータ転送方法は、サーバがクライアント装置に対してそれがクライアント装置のピアグループのメンバーになることを通知する第１のステップｓ４０１０と、それに続いて、サーバがデータをそのクライアント装置に送信する第２のステップｓ４０２０とを含んでいる。第３のステップｓ４０３０では、クライアント装置が、自分がサーバから受信したデータをピアグループ内の他のクライアント装置にピアツーピア方式で送信し、一方、第４のステップｓ４０４０では、このクライアント装置もピアグループ内の他のクライアント装置から、ピアグループ内の各クライアント装置がそれぞれサーバから受信したデータをピアツーピア方式で受信する。
【０１６０】
当業者には、ここに開示された装置の様々な実施形態の動作に対応する上記方法の様々な変形が本発明の範囲内に入ると考えられることは明らかであろう。それには次のものが挙げられるが、これらに限定されるわけではない。
・サーバは補完的あるいは重複的なデータをピアに送信する。
・サーバはストリーム配信されるデータを送信する。
・サーバはそのようなストリーム配信されるデータをピアグループ内で共有されるインターリーブフレームとして送信する。
・サーバはピアの送信速度をモニタし、それに応じてデータを配分する。
・サーバはオンライン仮想環境の１つあるいはそれ以上のインスタンスのホストとなる。
・クライアント装置はオンライン仮想環境の１つあるいはそれ以上のインスタンス内のアバターによって表わされる。
・サーバは装置のアバターの行動に従ってピアグループのメンバーとして装置を選択する。
【０１６１】
当然のことながら、本発明の実施形態は、サーバおよび／またはＰＳ３内の１つあるいはそれ以上のプロセッサの再プログラミングによって実現することができる。そのようなものとして、必要とされる適応を、フロッピー（登録商標）ディスク、光ディスク、ハードディスク、ＰＲＯＭ、ＲＡＭ、フラッシュメモリ、あるいはこれらまたは他の記憶媒体の任意の組み合わせなどのデータキャリヤに記憶されたプロセッサ実行可能な命令、あるいはイーサネット（登録商標）、無線ネットワーク、インターネット、あるいはこれらまたは他のネットワークの任意の組み合わせなどのネットワーク上のデータ信号によって送信されたプロセッサ実行可能な命令を含むコンピュータプログラム製品の形態で実現することができる。
【図１】
2010529547.tif 000005
【図２】
2010529547.tif 000006
【図３】
2010529547.tif 000007
【図４】
2010529547.tif 000008
【図５】
2010529547.tif 000009
【図６ａ】
2010529547.tif 000010
【図６ｂ】
2010529547.tif 000011
【図６ｃ】
2010529547.tif 000012
【図６ｄ】
2010529547.tif 000013
【図７】
2010529547.tif 000014
【図８ａ】
2010529547.tif 000015
【図８ｂ】
2010529547.tif 000016
【図９】
2010529547.tif 000017
【図１０】
2010529547.tif 000018
【図１１】
2010529547.tif 000019
【図１２】
2010529547.tif 000020
【国際調査報告】
2010529547.tif 000021
2010529547.tif 000022
2010529547.tif 000023
2010529547.tif 000024
2010529547.tif 000025
2010529547.tif 000026