(57)【特許請求の範囲】
【請求項１】
３次元仮想空間におかれたオブジェクトの周囲に、他のオブジェクトからの情報を受信する範囲を規定する規定手段と、
前記規定手段により規定された前記範囲内に位置する前記他のオブジェクトからの情報の受信を制限する制限条件として、前記規定手段により規定された前記範囲内に位置する前記他のオブジェクトの知覚可能な最大値を設定する設定手段と、
前記オブジェクトが前記他のオブジェクトにより知覚されているか否かを判断する判断手段と、
前記規定手段により規定された前記範囲内に、前記設定手段により設定された前記制限条件としての知覚可能な最大値以上の数の前記他のオブジェクトが位置し、前記判断手段の判断結果が、前記オブジェクトが前記他のオブジェクトにより知覚されているものである場合、前記オブジェクトが前記他のオブジェクトを知覚している状態とし、前記他のオブジェクトからの情報の受信を制御する制御手段と
を備え、
前記制御手段は、前記オブジェクトと前記他のオブジェクトの少なくとも一方が、前記制限条件としての知覚可能な最大値以上の数のオブジェクトが自身の前記範囲内に位置し、他方のオブジェクトにより知覚されている状態にある場合、前記制限条件に拘わらず、いずれのオブジェクトにも他方のオブジェクトを知覚させる
情報処理装置。
【請求項２】
前記規定手段は、前記オブジェクトの位置を中心として、前記他のオブジェクトからの情報を受信する範囲を規定する
請求項１に記載の情報処理装置。
【請求項３】
前記規定手段は、前記オブジェクトの位置から所定の距離だけオフセットした位置を中心として、前記他のオブジェクトからの情報を受信する範囲を規定する
請求項１に記載の情報処理装置。
【請求項４】
３次元仮想空間におかれたオブジェクトの周囲に、他のオブジェクトからの情報を受信する範囲を規定する規定ステップと、
前記規定ステップで規定された前記範囲内に位置する前記他のオブジェクトからの情報の受信を制限する制限条件として、前記規定ステップで規定された前記範囲内に位置する前記他のオブジェクトの知覚可能な最大値を設定する設定ステップと、
前記オブジェクトが前記他のオブジェクトにより知覚されているか否かを判断する判断ステップと、
前記規定ステップで規定された前記範囲内に、前記設定ステップで設定された前記制限条件としての知覚可能な最大値以上の数の前記他のオブジェクトが位置し、前記判断ステップの処理における判断結果が、前記オブジェクトが前記他のオブジェクトにより知覚されているものである場合、前記オブジェクトが前記他のオブジェクトを知覚している状態とし、前記他のオブジェクトからの情報の受信を制御する制御ステップと
を含み、
前記オブジェクトと前記他のオブジェクトの少なくとも一方が、前記制限条件としての知覚可能な最大値以上の数のオブジェクトが自身の前記範囲内に位置し、他方のオブジェクトにより知覚されている状態にある場合、前記制限条件に拘わらず、いずれのオブジェクトにも他方のオブジェクトを知覚させる
情報処理方法。
【請求項５】
３次元仮想空間におかれたオブジェクトの周囲に、他のオブジェクトからの情報を受信する範囲を規定する規定ステップと、
前記規定ステップで規定された前記範囲内に位置する前記他のオブジェクトからの情報の受信を制限する制限条件として、前記規定ステップで規定された前記範囲内に位置する前記他のオブジェクトの知覚可能な最大値を設定する設定ステップと、
前記オブジェクトが前記他のオブジェクトにより知覚されているか否かを判断する判断ステップと、
前記規定ステップで規定された前記範囲内に、前記設定ステップで設定された前記制限条件としての知覚可能な最大値以上の数の前記他のオブジェクトが位置し、前記判断ステップの処理における判断結果が、前記オブジェクトが前記他のオブジェクトにより知覚されているものである場合、前記オブジェクトが前記他のオブジェクトを知覚している状態とし、前記他のオブジェクトからの情報の受信を制御する制御ステップと
を含み、
前記オブジェクトと前記他のオブジェクトの少なくとも一方が、前記制限条件としての知覚可能な最大値以上の数のオブジェクトが自身の前記範囲内に位置し、他方のオブジェクトにより知覚されている状態にある場合、前記制限条件に拘わらず、いずれのオブジェクトにも他方のオブジェクトを知覚させる
コンピュータが読み取り可能なプログラムが記録されている記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報処理装置および方法、並びに記録媒体に関し、特に、例えば、３次元仮想空間におかれたアバタを介して、他のアバタとコミニケーションを図る場合において、必要以上に情報量が多くなってしまうことを防止するようにした情報処理装置および方法、並びに記録媒体に関する。
【０００２】
【従来の技術】
従来、NIFTY-Serve(商標)や米国のCompuServe(商標)などのように、複数の利用者が自らのパーソナルコンピュータを、モデムおよび公衆電話回線網を介してセンターのホストコンピュータに接続し、所定の通信プロトコルに基づいてホストコンピュータにアクセスする、いわゆるパソコン通信サービスの分野においては、Habitat（商標）と呼ばれるサイバースペースのサービスが知られている。
【０００３】
Habitatは、米国LucasFilm社によって1985年から開発が始められ、米国商業ネットワークであるQuantumLink社で約３年間運用された後、1990年2月に富士通Habitat（商標）としてNIFTY-Serveでそのサービスが開始されたものである。このHabitatにおいては、２次元グラフィックスで描画された「ポピュロポリス（Populopolis）」と呼ばれる仮想の都市に、アバタ（avatar；インド神話に登場する神の化身）と呼ばれるユーザの分身（ユーザ自身を表すオブジェクト）を送り込み、ユーザ同士がチャット（Chat；文字の入力と表示によるテキストベースでのリアルタイムの対話）などを行うことができる。このHabitatの更に詳細な説明は、サイバースペース，マイケル・ベネディクト編，1994年3月20日初版発行，ＮＴＴ出版 ISBN4−87188−265−9C0010（原著；Cyberspace：First Steps ,Michael Benedikt,ed. 1991,MIT PressCambrige,MA ISBN0−262−02327−X）第282頁乃至第307頁に記載されている。
【０００４】
この種のパソコン通信サービスで運用されている従来のサイバースペースシステムにおいては、仮想的な街並みや部屋の内部の様子が２次元グラフィックスで描画されており、アバタを奥行きまたは手前方向へ移動させる場合、単にアバタを２次元グラフィックスの背景上で上下に移動させるだけであり、仮想空間内での歩行や移動を疑似体験させるには表示の上での表現力が乏しかった。また、自分の分身であるアバタと他人のアバタが表示された仮想空間を、第３者の視点で見ることになるため、この点においても、疑似体験の感覚が損なわれるものであった。
【０００５】
そこで、特開平9-81781号公報に開示されているように、仮想空間を３次元グラフィックスで表示し、ユーザがアバタの視点で自由に歩き回れる機能が、VRML(Virtual Reality Modeling Language)と呼ばれる３次元グラフィクスデータの記述言語を利用することによって実現されている。このVRMLの詳細は、例えば、「VRMLを知る：３次元電脳空間の構築とブラウジング〔マーク・ペッシ著，松田晃一・蒲地輝尚・竹内彰一・本田康晃・暦本純一・石川真之・宮下健・原和弘訳，１９９６年３月２５日初版発行，プレンティスホール出版ISBN4-931356-37-0〕（原著；VRML：Browsing & Building Cyberspace,Mark Pesce, 1995 New Readers Publishing ISBN 1-56205-498-8））」、または「VRMLの最新動向とCyberPassage〔松田晃一・本田康晃著、bit（共立出版）／1996 Vol.28 No.7 pp29 〜pp36, No.8 pp57 〜pp65, No.9 pp29 〜pp36, No.10 pp49〜pp58〕」等の文献に記載されている。
【０００６】
また、「The Virtual Reality Modeling Language Version  2.0, ISO/IEC CD 14772」の公式かつ完全な仕様書は、「http://www.vrml.org/Specifications/VRML2.0/FINAL/spec/index.html」で公開されており、その日本語版は、「http://www.webcity.co.jp/info/andoh/VRML/vrml2.0/spec-jp/index.html」で公開されている。
【０００７】
VRMLの最新の言語であるVRML2.0においては、３次元的な仮想空間内におけるオブジェクトの自律的な振る舞い（Behavior）を記述し、表現することが可能とされている。これにより、例えば、VRML2.0用ブラウザに３次元グラフィックスで表示された仮想空間、即ち、３次元仮想空間を、アバタの視点で歩き回る場合には、ユーザは、自身がその３次元仮想空間内に実際にいるかのような感覚を享受することができる。
【０００８】
このVRML2.0用ブラウザおよび共有サーバ用ソフトウェアとしては、例えば、本出願人であるソニー株式会社が「Community Place(商標) Browser / Bureau」として開発し、製品化しており、そのβ版（試供版）を、インターネット上のホームページ「http://vs.sony co.jp」からダウンロードすることが可能とされている。
【０００９】
【発明が解決しようとする課題】
ところで、このような３次元仮想空間を提供するシステムにおいて、例えばインターネットを介して、世界中のユーザが３次元仮想空間を共有することを可能にすると、その３次元仮想空間（ワールド）に参加するアバタ（オブジェクト）の数が増加し、オブジェクト間で授受されるメッセージ量が膨大なものとなり、最悪の場合、迅速にメッセージを交換することが困難となる。
【００１０】
そこで、オブジェクト毎にオーラと称される領域を定義し、オーラ内に位置するオブジェクト間でのみ、情報を共有するようにすることが、例えば、Benford.S,and Fahlen,L(1993)A Spatial model of interaction in large virtual environments.September 1993,In proceedings of G.DeMichelis et al(Eds.) Third European Conference on Computer Supported Cooperative Work(pp.109-124),Kluwer Academic publishersあるいは、Yasuaki Honda,et al(1995),Virtual Society:Extending the WWW to Support aMulti-user Interactive Shared 3D Environment.,Proceedings of VRML'95(pp.109-116),ACM press.などに提案されている。
【００１１】
これにより、ある程度情報量を制限することが可能になったが、それでも混雑が激しくなると、メッセージの量が増加してしまう課題があった。
【００１２】
そこで、例えば、混雑の程度に対応して、オーラの大きさを制御することが考えられるが、混雑時には、オーラの大きさが極端に小さくなってしまい、他のオブジェクトとコミニケーションを図ることが実質的に困難となってしまう。
【００１３】
本発明はこのような状況に鑑みてなされたものであり、３次元仮想空間におけるオブジェクトの数が増加した場合にも、確実に他のオブジェクトと情報を授受することができるようにするものである。
【００１４】
【課題を解決するための手段】
請求項１に記載の情報処理装置は、３次元仮想空間におかれたオブジェクトの周囲に、他のオブジェクトからの情報を受信する範囲を規定する規定手段と、規定手段により規定された範囲内に位置する他のオブジェクトからの情報の受信を制限する制限条件として、規定手段により規定された範囲内に位置する他のオブジェクトの知覚可能な最大値を設定する設定手段と、前記オブジェクトが他のオブジェクトにより知覚されているか否かを判断する判断手段と、規定手段により規定された範囲内に、設定手段により設定された制限条件としての知覚可能な最大値以上の数の他のオブジェクトが位置し、判断手段の判断結果が、オブジェクトが他のオブジェクトにより知覚されているものである場合、オブジェクトが他のオブジェクトを知覚している状態とし、他のオブジェクトからの情報の受信を制御する制御手段とを備え、制御手段は、オブジェクトと他のオブジェクトの少なくとも一方が、制限条件としての知覚可能な最大値以上の数のオブジェクトが自身の範囲内に位置し、他方のオブジェクトにより知覚されている状態にある場合、制限条件に拘わらず、いずれのオブジェクトにも他方のオブジェクトを知覚させる。
【００１５】
請求項４に記載の情報処理方法は、３次元仮想空間におかれたオブジェクトの周囲に、他のオブジェクトからの情報を受信する範囲を規定する規定ステップと、規定ステップで規定された範囲内に位置する他のオブジェクトからの情報の受信を制限する制限条件として、規定ステップで規定された範囲内に位置する他のオブジェクトの知覚可能な最大値を設定する設定ステップと、オブジェクトが他のオブジェクトにより知覚されているか否かを判断する判断ステップと、規定ステップで規定された範囲内に、設定ステップで設定された制限条件としての知覚可能な最大値以上の数の他のオブジェクトが位置し、判断ステップの処理における判断結果が、オブジェクトが他のオブジェクトにより知覚されているものである場合、オブジェクトが他のオブジェクトを知覚している状態とし、他のオブジェクトからの情報の受信を制御する制御ステップとを含み、オブジェクトと他のオブジェクトの少なくとも一方が、制限条件としての知覚可能な最大値以上の数のオブジェクトが自身の範囲内に位置し、他方のオブジェクトにより知覚されている状態にある場合、制限条件に拘わらず、いずれのオブジェクトにも他方のオブジェクトを知覚させる。
【００１６】
請求項５に記載の記録媒体のプログラムは、３次元仮想空間におかれたオブジェクトの周囲に、他のオブジェクトからの情報を受信する範囲を規定する規定ステップと、規定ステップで規定された範囲内に位置する他のオブジェクトからの情報の受信を制限する制限条件として、規定ステップで規定された範囲内に位置する他のオブジェクトの知覚可能な最大値を設定する設定ステップと、オブジェクトが他のオブジェクトにより知覚されているか否かを判断する判断ステップと、規定ステップで規定された範囲内に、設定ステップで設定された制限条件としての知覚可能な最大値以上の数の他のオブジェクトが位置し、判断ステップの処理における判断結果が、オブジェクトが他のオブジェクトにより知覚されているものである場合、オブジェクトが他のオブジェクトを知覚している状態とし、他のオブジェクトからの情報の受信を制御する制御ステップとを含み、オブジェクトと他のオブジェクトの少なくとも一方が、制限条件としての知覚可能な最大値以上の数のオブジェクトが自身の範囲内に位置し、他方のオブジェクトにより知覚されている状態にある場合、制限条件に拘わらず、いずれのオブジェクトにも他方のオブジェクトを知覚させる。
【００１７】
請求項１に記載の情報処理装置、請求項４に記載の情報処理方法、および請求項５に記載の記録媒体のプログラムにおいては、規定された範囲内に、設定された制限条件としての知覚可能な最大値以上の数の他のオブジェクトが位置し、オブジェクトが他のオブジェクトにより知覚されているか否かの判断結果が、オブジェクトが他のオブジェクトにより知覚されているものである場合、オブジェクトが他のオブジェクトを知覚している状態とされ、他のオブジェクトからの情報の受信が制御される。
【００１８】
【発明の実施の形態】
【００２２】
図１は本発明を適用したシステムの構成例を表している。なお、本明細書中において、システムとは、複数の装置が論理的に集合した物をいい、各構成の装置が同一筐体中にあるか否かは問わない。
【００２３】
図１において、クライアントＰＣ（パーソナルコンピュータ）１乃至３は、IP（インターネット接続サービスプロバイダ）４乃至６を介してインターネット（The Internet）７と接続されており、VRMLブラウザ及びWWWブラウザがインストールされ、インストールされたこれらのブラウザが動作するようになされている。
【００２４】
クライアントＰＣ１乃至３は、３Ｄクライアントおよび２Ｄクライアントの２つの機能を有している。３Ｄクライアントは、定期的あるいは必要なときに自分の位置情報などの情報を共有サーバ１２に通知し、また、共有サーバ１２から送られてくる他の３Ｄオブジェクトの共有情報を受信し、それを表示させる機能を有している。２Ｄクライアントは、HTTPに基づいてWWWサーバ１０に情報をリクエストし、その返事を受け取って、主に２次元情報を表示する機能を有する。３Ｄクライアントは、共有サーバ１２から受け取った情報内にURLが含まれている場合、２Ｄクライアントに、URLへのアクセスを要求する。２Ｄクライアントは、この要求に基づいてURL（WWWサーバ１０）にアクセスし、そこからデータ（例えばオブジェクトの形状データ）をダウンロードして、３Ｄクライアントに転送する。
【００２５】
インターネット７とルータ８を介して接続されたLAN(Local Area Network)9には、WWWサーバ１０、WLS（World Location Server）１１、共有サーバ１２、ＡＯ(Application Object)サーバ１３，１４、メールサーバ１５、およびコミュニケーションサーバ１６が接続されている。これらの各サーバ１０乃至１６には、ハードディスク（HDD）１０ａ，１０ｂ，１１ａ乃至１６ａが、各々設けられている。
【００２６】
なお、ＡＯサーバ１３は、共有サーバ１２と通信するプログラムを有し、例えば仮想空間内において、自律的に動作するロボットや電子ペットなどのアプリケーションオブジェクト（ＡＯ）を提供する。ＡＯサーバ１３は、３Ｄクライアントと同様に、共有サーバ１２と通信し、自分自身の情報を通知したり、他の３Ｄオブジェクトの共有情報を受信したりする。
【００２７】
コミュニケーションサーバ１６は、公衆電話回線網１７を介して電話機１８やファクシミリ１９と接続され、また、PHS(Personal Handyphone System)サービスプロバイダ２０を介してPHS端末２３に無線接続され、さらに、ポケットベルサービスプロバイダー２１を介してポケットベル端末２４に無線接続されている。
【００２８】
図２はクライアントＰＣ１のハードウェアの構成例を示すブロック図である。この例において、CPU３０は、ROM３４に記録されているプログラムに従って各種の処理を実行するようになされており、HDD３１はVRML 2.0ファイルや、Java(米国 Sun Microsystems社の商標)により記述された所定のスクリプトプログラム等からなるVRMLコンテンツなどが格納されている。CD-ROMドライブ３２は、CD−ROMディスク３３に格納されたVRMLコンテンツ等の情報を読み取るようになされている。
【００２９】
サウンド処理回路３５は、マイクロフォン３６と左右のスピーカ３７，３８が接続されており、マイクロフォン３６からの音声を入力し、または、音楽や効果音等をスピーカ３７，３８から出力する。モデム３９は、インターネット７に接続され、データを授受するようになされている。I/O（入出力）インタフェース４０はマウス４１とキーボード４２からの操作信号を受け付けるようになされている。グラフィックス回路４３は、VRAM４４が内蔵されており、各種の処理を施した画像データをVRAM４４に格納し、VRAM４４から読み出した画像データを、CRTモニタ４５に表示させる。
【００３０】
RAM４６には、実行時に、例えば、Windows95(米国Micro Soft社の商標) の上で動作するWWWブラウザであるNetscape Navigator、Javaインタプリタ、および、本出願人であるソニー株式会社によって開発されたVRML2.0ブラウザであるCommunity Place Browserが読み込まれて、CPU３０によって実行される状態とされている。
【００３１】
VRML2.0ブラウザには、米国シリコングラフィクス社によって開発され、無償公開されているVRMLの構文解釈用ライブラリ(パーサ)であるQvLibと、英国Criterion Software Ltd.のソフトウエアレンダラであるRenderWare等、もしくはこれらと同等の機能を有するパーサやレンダラが実装されている。
【００３２】
そして、 Community Place Browserは、図１に示すように、WWWブラウザとしてのNetscape Navigatorとの間において、NCAPI（Netscape Client Application Programing Interface）（商標）に基づいて各種データの授受を行う。
【００３３】
Netscape Navigatorは、インターネット７を介してWWWサーバ１０よりHTMLファイルとVRMLコンテンツ(VRMLファイルとJavaによるスクリプトプログラムとを含む）の供給を受けると、これらをローカルのHDD３１にそれぞれ記憶させる。Netscape Navigatorは、このうちのHTMLファイルを処理してテキストや画像をCRTモニタ４５に表示する一方、 Community Place BrowserはVRMLファイルを処理して３次元仮想空間をCRTモニタ４５に表示させるとともに、Javaインタプリタによるスクリプトプログラムの処理結果に応じて、３次元仮想空間内のオブジェクトの挙動、その他の表示状態を変化させる。
【００３４】
なお、図示は省略するが、他のクライアントＰＣ２やクライアントＰＣ３も、クライアントＰＣ１と同様に構成されている。
【００３５】
次に上述した一実施の形態の動作について、図３乃至５を参照して説明する。図３において、番号１で示すように、最初に、WWWブラウザを用いて、VRMLコンテンツを提供しているWebサイトのホームページを閲覧する。この例では、 「http://pc.sony.co.jp/sapari/」を閲覧している。次に、番号２で示すように、クライアントＰＣ１またはクライアントＰＣ２のユーザは、VRML2.0ファイルと、VRML空間内での自律的な動きを実現するためのスクリプトプログラム（Javaによるスクリプトプログラム）とからなるVRMLコンテンツを、それぞれダウンロードする。
【００３６】
勿論、 CD-ROMディスク３３で提供されるVRMLコンテンツをCD−ROMドライブ３２で読み込んでも良い。
【００３７】
次に、図４に示すように、クライアントＰＣ１またはクライアントＰＣ２では、それぞれにダウンロードされ、一旦ローカルのHDD３１に格納されたVRML2.0ファイルを、VRML2.0ブラウザであるCommunity Place Browserが解釈するとともに実行し、さらに番号３で示すように、VSCP(Virtual Society Server Client Protocol)に基づいて、WLS１１に対して共有サーバ１２のURLを問い合わせる。このとき番号４で示すように、WLS１１は、HDD１１ａに格納された共有サーバURL管理テーブルを参照して、クライアントＰＣ１またはクライアントＰＣ２に対して、共有サーバ１２のURLを通知する。
【００３８】
このURLを用いて、図５に示すように、クライアントＰＣ１とクライアントＰＣ２が、共有サーバ１２に接続する。その結果、番号５で示すように、この共有サーバ１２を介して共有3Dオブジェクトの位置や動きなどに関する共有メッセージの送信が行われ、番号６で示すように、その転送が行われ、マルチユーザ環境が実現される。
【００３９】
なお、以上の接続手順の詳しい説明については、特開平9-81781号公報を参照されたい。
【００４０】
また、ここでは、３次元仮想空間を、マルチユーザ環境で使用することとしているが、マルチユーザ環境で使用しないこと（以下、適宜、シングルユーザ環境という）、即ち、自身以外の他のユーザのアバタ（ドローンアバタ）を登場させないようにするとともに、自身のアバタ（パイロットアバタ）を、他のユーザのクライアントの３次元仮想空間に登場させないようにすることも可能である。これは、上述した番号３乃至６で表した処理を行わないようにすることで実現することができる。
【００４１】
次に、図６を参照して、オーラについて説明する。同図に示すように、パイロットアバタ５１の周囲には、パイロットアバタ５１を中心とする所定の半径を有する球よりなるオーラ５２が形成される。パイロットアバタ５１は、オーラ５２の内部に位置する他のオブジェクトからの情報を受信することができる。具体的には、図６に示すように、パイロットアバタ５１は、オーラ５２内に位置するドローンアバタ５３−１とオブジェクト（ＡＯ）５４−１を視認することができる（それらの画像がパイロットアバタ５１のクライアントＰＣのCRTモニタに表示される）が、オーラ５２の外部に位置するドローンアバタ５３−２やオブジェクト５４−２を視認することができない（ドローンアバタ５３−２やオブジェクト（ＡＯ）５４−２の画像は、パイロットアバタ５１のクライアントＰＣのCRTモニタには表示されない）。
【００４２】
他のドローンアバタ５３−１，５３−２、オブジェクト５４−１，５４−２にも同様にオーラが設定される。なお、このシステムにおいては、各クライアントＰＣが対応するアバタのオーラは同一の大きさとされるが、ＡＯのオーラは、必要に応じてアバタのオーラとは異なる範囲に設定される。
【００４３】
このように、オーラ５２を規定することで、パイロットアバタ５１は、ドローンアバタ５３−１とオブジェクト５４−１からの情報を受け取る必要があるが、オーラ５２の外部に位置するドローンアバタ５３−２またはオブジェクト５４−２からの情報は受信する必要がないので、受信する情報量を制限することが可能となる。
【００４４】
すなわち、例えば、図７に示すように、アバタ５１が移動すると、その新たな位置情報が共有サーバ１２に転送される。共有サーバ１２は、アバタ５１の新たな位置に対応するオーラ５２の内部にどのようなオブジェクト（アバタを含む）が位置するのかを判断し、そのオブジェクトに関する情報をアバタ５１のクライアントＰＣに通知する。図７に示す例では、アバタ５１の移動後のオーラ５２の内部にオブジェクト５４−１が存在するため、共有サーバ１２は、オブジェクト５４−１の情報をアバタ５１のクライアントＰＣに通知する。これにより、アバタ５１のクライアントＰＣには、オブジェクト５４−１の画像が表示され、アバタ５１のユーザは、オブジェクト５４−１を視認することができる。
【００４５】
しかしながら、ワールド内に位置するオブジェクトの数が増加してくると、オーラ５２内に位置するオブジェクトの数も増加してくる。そこで、必要以上に受信する情報量が増加しないように、オーラ内においてそのアバタが視認可能なオブジェクトの最大値が予め設定され、共有サーバ１２により管理される。その結果、オーラ５２内に位置するオブジェクトのうち、視認可能なオブジェクトの最大値が例えば２と設定されている場合、オーラ５２内に３個以上のオブジェクトが存在したとしても、アバタ５１により視認可能なオブジェクトは、時間的に最も早くオーラ５２内に位置してきた２つのオブジェクトだけとなる。すなわち、３個目以降のオブジェクトがオーラ５２内に進入してきたとしても、そのことはアバタ５１には通知されない。この最大値は、アバタ５１が対応するクライアントＰＣのリソースの制限や、クライアントＰＣと共有サーバ１２の間のネットワークの通信帯域の制限などに対応して、所定の値に設定される。
【００４６】
但し、オーラ５２内において視認可能なオブジェクトの数が最大値に達しているか否かを判断する場合におけるオブジェクトには、ワールド内において、自律的に行動するＡＯ（アプリケーションオブジェクト）は含まれないものとされる。これにより、アバタ５１のオーラ５２内に、最大値と等しいオブジェクトが既に存在していたとしても、アバタ５１は、ＡＯを視認することが可能となる。
【００４７】
ところで、このように、各アバタが視認可能なオブジェクトの数の最大値を設定するようにすると、一方のアバタからは視認可能であるにもかかわらず、他方のアバタからは視認できないような不整合が発生する可能性がある。
【００４８】
例えば、図８に示すように、アバタ６１のオーラ６２内に、アバタ６３とアバタ６４が既に位置している状態において、後からオーラ６２内にアバタ５１が進入してきたような場合、アバタ５１のオーラ５２内には、１つのアバタ６１のみが存在するので、アバタ５１には、アバタ６１が視認されるようになされるが、アバタ６１のオーラ６２内には、既に２つのアバタ６３，６４が位置しているため、最大値を越える３つ目のアバタ５１が新たに進入してきたとしても、アバタ６１は、アバタ５１を視認することができなくなる。その結果、アバタ５１は、アバタ６１を視認することができるにもかかわらず、アバタ６１は、アバタ５１を視認することができないので、例えばアバタ５１がアバタ６１にチャットを申し込むことが可能であるが、アバタ６１は、アバタ５１からのチャットの申し込みを受け付けることができない。
【００４９】
このような不整合を回避するため、このシステムにおいては、一方のアバタ５１から他方のアバタ６１を視認することができる場合には、他方のアバタ６１が既に最大値のアバタを視認している状態であったとしても、新たなアバタ５１を視認することができるようになされている。これにより、一方のアバタからは視認可能であるにもかかわらず、他方のアバタからは視認できなくなるような不整合の発生が防止される。
【００５０】
以下、上記したような不整合の発生を防止するための構成についてさらに説明する。いま、図９に示すように、所定の範囲のオーラを有するオブジェクトＡが移動し、その移動メッセージを共有サーバ１２に送信したとき、共有サーバ１２は、オブジェクトＡのオーラ内に新たなオブジェクトが位置するか否かの判定を行う。この判定を行うに際し、共有サーバ１２は、各オブジェクト毎に、図１０に示すような情報を管理している。
【００５１】
すなわち、第１の情報は、オブジェクトＡが知覚されている相手のオブジェクトのリストＬKNOWNである。このオブジェクトＡが、例えば図８に示すアバタ６１である場合、そのリストＬKNOWNには、アバタ６３を識別するためのＩＤであるＩＤ６３と、アバタ６４のＩＤであるＩＤ６４が記憶されている。これは、アバタ６１がアバタ６３とアバタ６４から知覚されている（アバタ５１にはまだ知覚されていない）ことを示している。
【００５２】
第２の情報は、オブジェクトＡ自身が知覚している相手のオブジェクトのリストＬKNOWである。例えば図８の例の場合、オブジェクトＡがアバタ６１であるとき、アバタ６１がオーラ６２内に位置し、視認しているアバタは、アバタ６３とアバタ６４であるから、このリストＬKNOWには、ＩＤ６３とＩＤ６４が記述される。
【００５３】
第３の情報は、オブジェクトＡが知覚しているオブジェクトの数Ｎである。すなわち、リストＬKNOWに記述されているＩＤの数がここに記述される。いまの場合、この数Ｎには２が設定される。
【００５４】
第４の情報は、オブジェクトＡがオーラ内に位置するオブジェクトのうち、知覚可能なオブジェクトの最大値Ｍである。この例においては、最大値Ｍは２とされている。すなわち、この場合、オブジェクトＡは、オーラ内に位置するオブジェクトのうち、２個までのオブジェクトが知覚可能とされる。
【００５５】
次に、図１１のフローチャートを参照して、オブジェクトＡが新たな位置に移動してきたことを共有サーバ１２に通知してきたとき、共有サーバ１２が行う処理について説明する。最初に、ステップＳ１において、共有サーバ１２は、３次元仮想空間（ワールド）に存在するオブジェクトを１つ選択する。そして、選択したオブジェクトをＸとする。ステップＳ２において、共有サーバ１２は、仮想空間内に位置する全てのオブジェクトについて、以下のチェックを行ったか否かを判定し、そのチェックを既に完了している場合には、処理を終了し、まだチェックしていないオブジェクトが残っている場合には、ステップＳ３に進む。
【００５６】
ステップＳ３において、共有サーバ１２は、ステップＳ１で選択したオブジェクトは、オブジェクトＡであるか否か、すなわち、自分自身であるか否かを判定する。選択したオブジェクトが自分自身である場合には、ステップＳ１に戻り、それ以降の処理が繰り返し実行される。ステップＳ３において、ステップＳ１で選択したオブジェクトＸが自分自身ではないと判定された場合、ステップＳ４に進み、共有サーバ１２は、オブジェクトＡが知覚しているオブジェクトの数Ｎが、オブジェクトＡが知覚可能なオブジェクトの最大値Ｍ以上であるか否かを判定する。
【００５７】
オブジェクトＡが既に知覚しているオブジェクトの数Ｎが最大値Ｍより小さい場合には、ステップＳ６に進み、共有サーバ１２は、オブジェクトＡのリストＬKNOWにオブジェクトＸが記述されておらず、かつ、オブジェクトＡのオーラにオブジェクトＸが位置するか否かを判定する。オブジェクトＡのリストＬKNOWにオブジェクトＸのＩＤが記述されていないということは、オブジェクトＡは、まだオブジェクトＸを知覚していないということになる。そこで、この場合、オブジェクトＸがオブジェクトＡのオーラに入っているのであれば、ステップＳ７に進み、オブジェクトＡのリストＬKNOWにオブジェクトＸのＩＤを付加する。すなわち、これにより、オブジェクトＡがオブジェクトＸを知覚したことになる。そこで、オブジェクトＡが知覚しているオブジェクトの数Ｎの値が１だけインクリメントされる。そして、さらに、オブジェクトＸのリストＬKNOWNにオブジェクトＡのＩＤが付加される。このようにして、オブジェクトＡにおいてオブジェクトＸが知覚されたことが登録されるとともに、オブジェクトＸにおいて、オブジェクトＡにより知覚されたことが登録される。
【００５８】
ステップＳ６において、オブジェクトＡのリストＬKNOWにオブジェクトＸが記述されていると判定された場合、オブジェクトＸは、オブジェクトＡに既に知覚されているので新たに登録する必要はない。また、オブジェクトＡのオーラにオブジェクトＸが位置していない場合にも、オブジェクトＡにオブジェクトＸを知覚させる必要はない。そこで、このような場合には、ステップＳ７の処理はスキップされ、ステップＳ８に進む。
【００５９】
ステップＳ８において、共有サーバ１２は、オブジェクトＸが知覚しているオブジェクトの数Ｎが最大値Ｍ以上であるか否かを判定する。オブジェクトＸが知覚しているオブジェクトの数Ｎが最大値Ｍより小さい場合には、ステップＳ１０に進み、オブジェクトＸのリストＬKNOWにオブジェクトＡのＩＤが登録されておらず、かつ、オブジェクトＸのオーラにオブジェクトＡが位置しているか否かが判定される。オブジェクトＸのリストＬKNOWにオブジェクトＡのＩＤがまだ登録されておらず、かつ、オブジェクトＸのオーラにオブジェクトＡが位置している場合には、ステップＳ１１に進み、オブジェクトＸのリストＬKNOWにオブジェクトＡのＩＤが付加され、オブジェクトＸが知覚しているオブジェクトの数Ｎの値が１だけインクリメントされる。さらに、オブジェクトＡのリストＬKNOWNにオブジェクトＸのＩＤが付加される。このようにして、オブジェクトＸにおいてオブジェクトＡが知覚されたことが登録されるとともに、オブジェクトＡにおいてオブジェクトＸにより知覚されたことが登録される。
【００６０】
ステップＳ１０において、オブジェクトＸのリストＬKNOWにオブジェクトＡのＩＤが既に登録されていると判定された場合、オブジェクトＡは既にオブジェクトＸにより知覚されているので、新たに登録する必要はない。また、オブジェクトＸのオーラにオブジェクトＡが入っていない場合には、オブジェクトＡをオブジェクトＸに知覚させる必要がない。そこで、このような場合には、ステップＳ１１の処理はスキップされる。そして、ステップＳ１に戻り、それ以降の処理が繰り返し実行される。
【００６１】
但し、以上の処理では、上述した不整合が発生する場合がある。そこで、このフローチャートの処理では、ステップＳ４において、オブジェクトＡが知覚しているオブジェクトの数Ｎが最大値Ｍと等しいか、それより大きいと判定された場合、ステップＳ５に進み、オブジェクトＡのリストＬKNOWNにオブジェクトＸのＩＤが既に登録されているか否かが判定される。オブジェクトＡのリストＬKNOWNにオブジェクトＸのＩＤがまだ登録されていない場合には、オブジェクトＡは、オブジェクトＸにまだ知覚されていないので、知覚オブジェクト数Ｎが既に最大値Ｍに達しているオブジェクトＡがオブジェクトＸを新たに知覚する必要はない。そこで、この場合には、ステップＳ６，ステップＳ７の処理は実行されず、ステップＳ８に進み、それ以降の処理が実行される。
【００６２】
これに対して、ステップＳ５において、オブジェクトＡのリストＬKNOWNにオブジェクトＸのＩＤが既に登録されていると判定された場合、オブジェクトＡは、オブジェクトＸに既に知覚されているので、オブジェクトＡが最大値Ｍ以上のオブジェクトを既に知覚していたとしても、オブジェクトＸをオブジェクトＡに知覚させないと、オブジェクトＸはオブジェクトＡを知覚しているにもかかわらず、オブジェクトＡはオブジェクトＸを知覚していないという不整合が発生してしまうことになる。そこで、この場合には、最大値Ｍによる制限を例外的に無視して、ステップＳ６に進み、所定の条件が満たされれば、ステップＳ７において、オブジェクトＡにオブジェクトＸを知覚させる処理が行われる。
【００６３】
同様に、ステップＳ８において、オブジェクトＸが知覚しているオブジェクトの数Ｎが最大値Ｍと等しいか、それより大きいと判定された場合、ステップＳ９に進み、オブジェクトＸのリストＬKNOWNにオブジェクトＸのＩＤが記述されているか否かが判定される。オブジェクトＸのリストＬKNOWNにオブジェクトＡのＩＤが記述されている場合には、オブジェクトＸによりオブジェクトＡが既に知覚されていることになるので、最大値Ｍの制限を例外的に無視して、ステップＳ１０に進み、所定の条件が満足されれば、ステップＳ１１にさらに進んで、オブジェクトＸにオブジェクトＡを知覚させる。これにより、不整合の発生が防止される。
【００６４】
ステップＳ９において、オブジェクトＸのリストＬKNOWNにオブジェクトＡのＩＤが記述されていないと判定された場合、オブジェクトＡは、オブジェクトＸにまだ知覚されていないので、オブジェクトＡにおいても、オブジェクトＸを知覚しなくても、不整合は発生しない。そこで、この場合には、ステップＳ１０とステップＳ１１の処理はスキップされる。
【００６５】
図１１の処理は、各オブジェクトが有するオーラの半径が異なる場合でも実現可能であるが、各オブジェクトが有するオーラの半径が等しい場合には、図１１のアルゴリズムは、図１２のフローチャートに示すように簡略化することができる。
【００６６】
すなわち、図１２の例においては、ステップＳ２１において、仮想空間に存在するオブジェクトが１つ選択され、Ｘとされる。ステップＳ２２においては、全てのオブジェクトについて以下のチェックが完了されているか否かが判定され、全てのオブジェクトについて以下の処理が完了していると判定された場合、処理は終了されるが、まだチェックしていないオブジェクトが存在する場合には、ステップＳ２３に進み、ステップＳ２１で選択したオブジェクトＸは、オブジェクトＡ自身であるか否かが判定される。ステップＳ２１で選択したオブジェクトＸが自分自身であると判定された場合、ステップＳ２１に戻り、それ以降の処理が繰り返し実行される。
【００６７】
ステップＳ２３において、ステップＳ２１で選択したオブジェクトＸが自分自身ではないと判定された場合、ステップＳ２４に進み、オブジェクトＡが知覚しているオブジェクトの数Ｎが最大値Ｍと等しいか、それ以上であるか否かが判定される。オブジェクトＡが知覚しているオブジェクトの数Ｎが最大値Ｍより小さい場合には、ステップＳ２５に進み、オブジェクトＸが知覚しているオブジェクトの数Ｎが最大値Ｍと等しいか、それ以上であるか否かが判定される。ステップＳ２４において、オブジェクトＡが知覚しているオブジェクトの数Ｎが最大値Ｍと等しいか、それより大きいと判定された場合、並びに、ステップＳ２５において、オブジェクトＸが知覚しているオブジェクトの数Ｎが最大値Ｍと等しいか、それより大きいと判定された場合、ステップＳ２１に戻り、それ以降の処理が繰り返し実行される。
【００６８】
このように、図１２の処理例においては、オブジェクトＡとオブジェクトＸのうち、少なくとも一方において知覚されているオブジェクトの数Ｎが、最大値Ｍ以上となっている場合には、他方が最大値未満であったとしても相互に他方のオブジェクトを知覚できないようになされている。この点、図１１のフローチャートに示す処理においては、一方のオブジェクトが知覚可能である場合には、他方のオブジェクトが既に最大値以上のオブジェクトを知覚していたとしても、さらに新たなオブジェクトを知覚させるのと異なっている。図１１の処理例においては、これにより、より大きな径のオーラを有するオブジェクトが、内部に位置するオブジェクトの数が既に最大値に達している小さな径のオーラを有するオブジェクトを知覚している状態において、両者が近づいてきて、小さな径のオーラ内に、大きな径のオーラを有するオブジェクトが位置するようになった瞬間に、大きな径のオーラを有するオブジェクトが、内部に位置するオブジェクトの数が既に最大値に達している小さな径のオーラを有するオブジェクトを知覚できなくなってしまうような事態が発生するのが防止される。
【００６９】
これに対して、図１２のフローチャートの処理は、各オブジェクトのオーラの径が同一であることが前提とされているため、基本的に、一方のオブジェクトから他方のオブジェクトが知覚可能で、かつ、他方のオブジェクトからは一方のオブジェクトを知覚できないような状態は発生しないので、少なくとも一方のオブジェクトが知覚しているオブジェクトの数Ｎが、既に最大値Ｍに達しているときは、いずれのオブジェクトも知覚できないようになされる。
【００７０】
ステップＳ２５において、オブジェクトＸが知覚しているオブジェクトの数Ｎが最大値Ｍより小さいと判定された場合、ステップＳ２６に進み、オブジェクトＡのリストＬKNOWにオブジェクトＸのＩＤが登録されておらず、かつ、オブジェクトＡのオーラ内にオブジェクトＸが位置しているか否が判定される。オブジェクトＡのリストＬKNOWにオブジェクトＸが登録されておらず、かつ、オブジェクトＡのオーラ内にオブジェクトＸが位置する場合には、ステップＳ２７に進み、オブジェクトＡのリストＬKNOWにオブジェクトＸのＩＤが付加され、オブジェクトＡが知覚しているオブジェクトの数Ｎが１だけインクリメントされる。さらに、オブジェクトＸのリストＬKNOWNにオブジェクトＡのＩＤが付加される。これにより、オブジェクトＡにおいてオブジェクトＸが知覚されたことが登録されるとともに、オブジェクトＸにおいてオブジェクトＡにより知覚されたことが登録される。
【００７１】
ステップＳ２６において、オブジェクトＡのリストＬKNOWにオブジェクトＸのＩＤが登録されていると判定された場合、オブジェクトＸは既に登録されているのであるから、新たに登録する必要はない。また、オブジェクトＡのオーラ内にオブジェクトＸが位置していない場合にも、オブジェクトＸを登録する必要はない。従って、この場合には、ステップＳ２７の処理はスキップされ、ステップＳ２８に進む。
【００７２】
ステップＳ２８において、オブジェクトＸのリストＬKNOWにオブジェクトＡのＩＤが登録されておらず、かつ、オブジェクトＸのオーラ内にオブジェクトＡが位置するか否かが判定される。オブジェクトＸのリストＬKNOWにオブジェクトＡがまだ登録されていない場合には、オブジェクトＸのオーラ内にオブジェクトＡが位置しているのであれば、ステップＳ２９に進み、オブジェクトＸのリストＬKNOWにオブジェクトＡのＩＤが付加され、オブジェクトＸが知覚しているオブジェクトの数Ｎが１だけインクリメントされる。さらに、オブジェクトＡのリストＬKNOWNにオブジェクトＸのＩＤが付加される。このようにして、オブジェクトＸにおいて、オブジェクトＡが知覚されたことが登録されるとともに、オブジェクトＡにおいて、オブジェクトＸにより知覚されたことが登録される。
【００７３】
ステップＳ２８において、オブジェクトＸのリストＬKNOWにオブジェクトＡが登録されていると判定された場合、既に登録がなされているのであるから、新たに登録をする必要がない。また、オブジェクトＸのオーラ内にオブジェクトＡが位置していない場合にも、オブジェクトＸにオブジェクトＡを知覚させる必要がない。従って、この場合には、ステップＳ２９の処理はスキップされ、ステップＳ２１に戻り、それ以降の処理が繰り返し実行される。
【００７４】
以上の実施の形態においては、すべてのオブジェクトが所定の径のオーラを有し、そのオーラ内に位置するオブジェクトからの情報だけが、そのオーラを有するオブジェクトに受信されることになる。ところで、例えば、オブジェクトのうち、アプリケーションオブジェクトは、通常、ワールド内において共有される電子ペット、あるいは、時計台といったようなワールドに参加するアバタに対して共有されるオブジェクトである。従って、このようなアプリケーションオブジェクトからの情報は、各アバタに確実に提供されるようにするのが好ましい。このようにする場合、共有サーバ１２は、各オブジェクトに関し、図１３に示すような情報を管理する。
【００７５】
図１３における第１乃至第４の情報は、図１０に示した場合と同様の情報である。第５の情報は、そのオブジェクトが、アプリケーションオブジェクトであるか否かを表す情報であり、その値が１であるとき、そのオブジェクトは、アプリケーションオブジェクト（ＡＯ）であることを表し、その値が０であるとき、そのオブジェクトは、ＡＯではないことを表す。第６の情報のフラグaura-funcは、そのオブジェクトがＡＯである場合において、そのオブジェクトが他のオブジェクトのオーラ内に進入したとき、そのオーラ内において知覚可能なオブジェクトの最大値Ｍに達したか否かを判定するために計数するオブジェクトの対象とされるか否かを表している。フラグaura-funcの０は、そのオブジェクトは、知覚可能なオブジェクトの最大値Ｍを判定する場合におけるオブジェクトとしては対象とされないことを表し、その値の１は、その対象とされることを表す。すなわち、その値が１であるとき、そのオブジェクトは、通常のオブジェクトと同様のオブジェクトとなる。
【００７６】
図１３に示すような管理情報を基にして、オブジェクトＡが移動した場合における共有サーバ１２の処理例について、図１４のフローチャートを参照して説明する。ステップＳ４１乃至ステップＳ４３の処理は、図１２におけるステップＳ２１乃至ステップＳ２３の処理と同様の処理となる。すなわち、最初に、ステップＳ４１において、共有サーバ１２は、ワールドに存在するオブジェクトを１つ選択し、選択したオブジェクトをＸとする。ステップＳ４２において、共有サーバ１２は、ワールド内に位置するすべてのオブジェクトについて、以下のチェックを行ったか否かを判定し、そのチェックを既に完了している場合には処理を終了し、まだチェックしていないオブジェクトが残っている場合には、ステップＳ４３に進む。
【００７７】
ステップＳ４３において、共有サーバ１２は、ステップＳ４１で選択したオブジェクトがオブジェクトＡであるか否か、すなわち、自分自身であるか否かを判定する。選択したオブジェクトが自分自身である場合には、ステップＳ４１に戻り、それ以降の処理が繰り返し実行される。ステップＳ４３において、ステップＳ４１で選択したオブジェクトＸが自分自身ではないと判定された場合、ステップＳ４４に進み、共有サーバ１２は、オブジェクトＸがＡＯであり、かつフラグaura-funcが０であるか否か、すなわち、オブジェクトＸがＡＯであり、かつオーラ内におけるオブジェクトの最大値Ｍを計数する場合において計数対象となるオブジェクトであるか否かが判定される。
【００７８】
オブジェクトＸがＡＯではないか、またはフラグaura-funcが１であると判定された場合、ステップＳ４５に進み、今度は、オブジェクトＡがＡＯであり、かつフラグaura-funcが０であるか否かが判定される。オブジェクトＡがＡＯではないか、またはフラグaura-funcが１であると判定された場合、ステップＳ４６に進み、それ以降の処理が実行される。以下のステップＳ４６乃至ステップＳ５１の処理は、図１２におけるステップＳ２４乃至ステップＳ２９の処理と同様の処理である。すなわち、これらの処理により、オブジェクトＡとオブジェクトＸのうち、少なくとも一方が、そのオーラ内に、既に最大値Ｍ以上のオブジェクトを有している場合には、オブジェクトＡとオブジェクトＸに、それぞれ相手方を知覚させる処理は行われない。
【００７９】
これに対して、ステップＳ４４において、オブジェクトＸがＡＯであり、かつ計数対象のオブジェクトであると判定された場合、ステップＳ４６とステップＳ４７の処理はスキップされ、ステップＳ４８以降の処理が実行される。ステップＳ４５において、オブジェクトＡがＡＯであり、かつ計数対象となるオブジェクトであると判定された場合も同様となる。
【００８０】
すなわち、これらの場合には、ステップＳ４８以降の処理で、所定の条件が満たされている場合には、相互に相手方を知覚させる処理が実行される。その結果、オブジェクトＡまたはオブジェクトＸのオーラ内に位置するオブジェクトの数が、既に最大値Ｍに達していたとしても、オブジェクトＸまたはオブジェクトＡは、それぞれ相手側に知覚される。その結果、アプリケーションオブジェクト（フラグaura-funcが０であるオブジェクト）は、オーラ内に位置するすべての他のオブジェクトを知覚することができ、かつ、アプリケーションオブジェクト（フラグaura-funcが０であるオブジェクト）以外のオブジェクトは、アプリケーションオブジェクト（フラグaura-funcが０であるオブジェクト）がオーラ内に位置するとき、オーラ内に位置するオブジェクトの数にかかわらず、そのアプリケーションオブジェクト（フラグaura-funcが０であるオブジェクト）を知覚することができる。
【００８１】
例えば、図１５に示すように、アバタ５１−１のオーラ５２−１内に、アバタ５１−２とアバタ５１−３が、既に位置している状態において、アバタ５１−１が新たな位置に移動した結果、そのオーラ５２−１内に、アプリケーションオブジェクト９１−１（フラグaura-funcが０であるオブジェクト）が位置するようになったとき、オーラ５２−１内には、既に最大値Ｍ（＝２）のオブジェクトが存在しているが、アバタ５１−１は、アプリケーションオブジェクト９１−１を知覚することができ、アプリケーションオブジェクト９１−１もまた、アバタ５１−１を知覚する。
【００８２】
また、アプリケーションオブジェクト９１−１は、そのオーラ９２−２内に位置するすべてのオブジェクトを知覚することが可能であるため、図１５の例の場合、アバタ５１−１，５１−２，５１−４が、アプリケーションオブジェクト９１−１により知覚される。アバタ５１−３は、オーラ９２−２の外側に位置するため、アプリケーションオブジェクト９１−１には知覚されない。
【００８３】
図１４の処理は、ステップＳ４４とステップＳ４５の処理がある点を除き、図１２のフローチャートに示す処理と同様の処理であるため、オブジェクトがアプリケーションオブジェクトではない場合には（フラグaura-funcが１である場合には）、図１２のフローチャートに示した場合と同様の処理が実行される。
【００８４】
なお、図１３における管理情報のうち、アプリケーションオブジェクトであるか否かを表す情報とフラグaura-funcは、実質的に同一の機能を果たすものとなるため、その一方を省略するようにしてもよい。
【００８５】
なお、上記したオブジェクトが知覚可能なオブジェクトの最大値Ｍの値は、必要に応じて、動的に変動させるようにしてもよい。また、オーラは、視線方向により広い範囲を規定するようにしてもよい。例えば、図１６に示す例では、アバタ５１の視線方向（図中右方向）が、その反対方向（図中左方向）に較べてより広くなるようにオーラ５２が規定されている。このようにすれば、より現実に近い感覚で知覚動作を行うことが可能となる。
【００８６】
さらに、オーラは、上記実施の形態では球形としたが、図１７に示すように、立方体形状とすることも可能である。
【００８７】
また、オーラは、１つのオブジェクトに対して１つとしたが、複数のオブジェクト（アバタ）に１つのオーラを共有させるようにすることも可能である。このようにすれば、複数のアバタが、あたかも同一人であるかのごとき知覚動作を行うことが可能となる。
【００８８】
さらに、オーラは、１つのオブジェクトに対して、複数の範囲について規定するようにしてもよい。
【００８９】
なお、上記各種の処理を行うコンピュータプログラムは、光ディスク、光磁気ディスク、またはフロッピーディスクなどの記録媒体を介してユーザに提供したり、ネットワークなどの提供媒体を介してユーザに提供し、必要に応じて内蔵するRAMやハードディスクなどに記録して利用させるようにすることができる。
【００９０】
【発明の効果】
請求項１に記載の情報処理装置、請求項４に記載の情報処理方法、および請求項５に記載の記録媒体のプログラムによれば、仮想現実空間内におけるオブジェクトの数が増加した場合においても、受信する情報量を制限することが可能となる。
【図面の簡単な説明】
【図１】本発明を適用した共有仮想空間提供システムの構成例を示すブロック図である。
【図２】図１のクライアントＰＣ１の構成例を示すブロック図である。
【図３】図１のシステムの動作を説明する図である。
【図４】図１のシステムの動作を説明する図である。
【図５】図１のシステムの動作を説明する図である。
【図６】オーラを説明する図である。
【図７】アバタが移動した場合のオブジェクトの知覚を説明する図である。
【図８】アバタの知覚の不整合を説明する図である。
【図９】オブジェクトが移動した場合の新たなオブジェクトの知覚を説明する図である。
【図１０】図１の共有サーバ１２が有するオブジェクトの管理情報を説明する図である。
【図１１】図１の共有サーバ１２の動作を説明するフローチャートである。
【図１２】図１の共有サーバ１２の他の動作を説明するフローチャートである。
【図１３】図１の共有サーバ１２が有するオブジェクトの他の管理情報を説明する図である。
【図１４】図１の共有サーバ１２の動作を説明するフローチャートである。
【図１５】オブジェクトとオーラの関係を説明する図である。
【図１６】オーラの他の例を示す図である。
【図１７】オーラのさらに他の例を示す図である。
【符号の説明】
１乃至３  クライアントＰＣ，  ７  インターネット，  １０  WWWサーバ，１２  共有サーバ，  ３０  CPU，  ３１  ハードディスク，  ３９  モデム，  ４５  CRTモニタ，  ４６  RAM，  ５１  パイロットアバタ，  ５２  オーラ，  ５３−１，５３−２  ドローンアバタ，  ５４−１，５４−２  オブジェクト，  ６１  アバタ，  ６２  オーラ，  ６３，６４  アバタ
【図１】
0004232231.tif 000002
【図２】
0004232231.tif 000003
【図３】
0004232231.tif 000004
【図４】
0004232231.tif 000005
【図５】
0004232231.tif 000006
【図６】
0004232231.tif 000007
【図７】
0004232231.tif 000008
【図８】
0004232231.tif 000009
【図９】
0004232231.tif 000010
【図１０】
0004232231.tif 000011
【図１１】
0004232231.tif 000012
【図１２】
0004232231.tif 000013
【図１３】
0004232231.tif 000014
【図１４】
0004232231.tif 000015
【図１５】
0004232231.tif 000016
【図１６】
0004232231.tif 000017
【図１７】
0004232231.tif 000018