JP2000113223A - 情報処理装置および方法、並びに提供媒体 - Google Patents

情報処理装置および方法、並びに提供媒体

Info

Publication number
JP2000113223A
JP2000113223A JP27706698A JP27706698A JP2000113223A JP 2000113223 A JP2000113223 A JP 2000113223A JP 27706698 A JP27706698 A JP 27706698A JP 27706698 A JP27706698 A JP 27706698A JP 2000113223 A JP2000113223 A JP 2000113223A
Authority
JP
Japan
Prior art keywords
aura
objects
list
avatar
virtual space
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP27706698A
Other languages
English (en)
Inventor
Satoru Matsuda
哲 松田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP27706698A priority Critical patent/JP2000113223A/ja
Priority to EP19990307729 priority patent/EP0990978A2/en
Publication of JP2000113223A publication Critical patent/JP2000113223A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【課題】 オブジェクト相互の領域に対する進入、およ
び離脱を速やかに判定する。 【解決手段】 マトリクスオブジェクト管理テーブル
は、3次元仮想空間に存在する全てのオブジェクト(オ
ブジェクト番号1乃至N)について、それぞれのオーラ
内に、他のオブジェクトが進入しているかを否かを相互
に表している。このマトリクスオブジェクト管理テーブ
ルにおいては、オブジェクト番号Aのオブジェクトのオ
ーラ内にオブジェクト番号Bのオブジェクトが進入して
いる場合、オブジェクト番号Aの列と、オブジェクト番
号Bの行とが交差する枠に1が記入され、進入していな
い場合、0が記入される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、情報処理装置およ
び方法、並びに提供媒体に関し、特に、3次元仮想空間
におかれたオブジェクト相互のオーラへの進入、または
離脱を高速で判定するようにした情報処理装置および方
法、並びに提供媒体に関する。
【0002】
【従来の技術】従来、NIFTY-Serve(商標)や米国のCompu
Serve(商標)などのように、複数の利用者が自らのパー
ソナルコンピュータを、モデムおよび公衆電話回線網を
介してセンターのホストコンピュータに接続し、所定の
通信プロトコルに基づいてホストコンピュータにアクセ
スする、いわゆるパソコン通信サービスの分野において
は、Habitat(商標)と呼ばれるサイバースペースのサ
ービスが知られている。
【0003】Habitatは、米国LucasFilm社によって1985
年から開発が始められ、米国商業ネットワークであるQu
antumLink社で約3年間運用された後、1990年2月に富士
通Habitat(商標)としてNIFTY-Serveでそのサービスが
開始されたものである。このHabitatにおいては、2次
元グラフィックスで描画された「ポピュロポリス(Popu
lopolis)」と呼ばれる仮想の都市に、アバタ(avata
r;インド神話に登場する神の化身)と呼ばれるユーザ
の分身(ユーザ自身を表すオブジェクト)を送り込み、
ユーザ同士がチャット(Chat;文字の入力と表示による
テキストベースでのリアルタイムの対話)などを行うこ
とができる。このHabitatの更に詳細な説明は、サイバ
ースペース,マイケル・ベネディクト編,1994年3月20
日初版発行,NTT出版 ISBN4−87188−265−9C0010
(原著;Cyberspace:First Steps ,Michael Benedikt,
ed. 1991,MIT PressCambrige,MA ISBN0−262−02327−
X)第282頁乃至第307頁に記載されている。
【0004】この種のパソコン通信サービスで運用され
ている従来のサイバースペースシステムにおいては、仮
想的な街並みや部屋の内部の様子が2次元グラフィック
スで描画されており、アバタを奥行きまたは手前方向へ
移動させる場合、単にアバタを2次元グラフィックスの
背景上で上下に移動させるだけであり、仮想空間内での
歩行や移動を疑似体験させるには表示の上での表現力が
乏しかった。また、自分の分身であるアバタと他人のア
バタが表示された仮想空間を、第3者の視点で見ること
になるため、この点においても、疑似体験の感覚が損な
われるものであった。
【0005】そこで、特開平9-81781号公報に開示され
ているように、仮想空間を3次元グラフィックスで表示
し、ユーザがアバタの視点で自由に歩き回れる機能が、
VRML(Virtual Reality Modeling Language)と呼ばれる
3次元グラフィクスデータの記述言語を利用することに
よって実現されている。このVRMLの詳細は、例えば、
「VRMLを知る:3次元電脳空間の構築とブラウジング
〔マーク・ペッシ著,松田晃一・蒲地輝尚・竹内彰一・
本田康晃・暦本純一・石川真之・宮下健・原和弘訳,1
996年3月25日初版発行,プレンティスホール出版
ISBN4-931356-37-0〕(原著;VRML:Browsing & Buildi
ng Cyberspace,Mark Pesce, 1995 New Readers Publish
ing 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〕」
等の文献に記載されている。
【0006】また、「The Virtual Reality Modeling L
anguage Version 2.0, ISO/IEC CD14772」の公式かつ
完全な仕様書は、「http://www.vrml.org/Specificatio
ns/VRML2.0/FINAL/spec/index.html」で公開されてお
り、その日本語版は、「http://www.webcity.co.jp/inf
o/andoh/VRML/vrml2.0/spec-jp/index.html」で公開さ
れている。
【0007】VRMLの最新の言語であるVRML2.0において
は、3次元的な仮想空間内におけるオブジェクトの自律
的な振る舞い(Behavior)を記述し、表現することが可
能とされている。これにより、例えば、VRML2.0用ブラ
ウザに3次元グラフィックスで表示された仮想空間、す
なわち、3次元仮想空間を、アバタの視点で歩き回る場
合には、ユーザは、自身がその3次元仮想空間内に実際
にいるかのような感覚を享受することができる。
【0008】このVRML2.0用ブラウザおよび共有サーバ
用ソフトウェアとしては、例えば、本出願人であるソニ
ー株式会社が「Community Place(商標) Browser / Bure
au」として開発し、製品化しており、そのβ版(試供
版)を、インターネット上のホームページ「http://vs.
sony.co.jp」からダウンロードすることが可能とされて
いる。
【0009】ところで、3次元仮想空間には複数のユー
ザに対応するアバタやオブジェクトが存在しているが、
実際に表示される3次元仮想空間はその一部であり、自
己のアバタから遠く離れたオブジェクト(アバタを含
む)の位置情報等は当分必要ではない。そこで、使用す
るパーソナルコンピュータの処理能力やネットワークの
通信量を考慮して、相互に位置情報を通信するオブジェ
クトの数を制限することにより、3次元仮想空間の表示
を速やかに行えるようにしている。
【0010】オブジェクト数を制限するには、各オブジ
ェクトに所定の半径の球状領域を設定し、その領域内に
位置している他のオブジェクトだけを位置情報等の通信
対象とする方法がある。
【0011】
【発明が解決しようとする課題】しかしながら、上述し
た方法は、全てのオブジェクトに対して自己の領域内に
位置しているか否かを相互に判定する必要があるので、
その判定に時間がかかる課題があった。
【0012】本発明は、このような状況に鑑みてなされ
たものであり、オブジェクト相互のの領域に対する進
入、および離脱を速やかに判定できるようにするもので
ある。
【0013】
【課題を解決するための手段】請求項1に記載の情報処
理装置は、3次元仮想空間におかれた全てのオブジェク
ト相互のオーラに対する進入状況をマトリクステーブル
を用いて管理するマトリクステーブル管理手段と、オブ
ジェクト毎に、オブジェクトのオーラに進入している他
のオブジェクト、およびオブジェクトが進入しているオ
ーラに対応する他のオブジェクトのリストを管理するリ
スト管理手段と、マトリクステーブルとリストを参照し
て、オブジェクトの他のオブジェクトのオーラに対する
進入または離脱を判定する判定手段とを備えることを特
徴とする。
【0014】請求項3に記載の情報処理方法は、3次元
仮想空間におかれた全てのオブジェクト相互のオーラに
対する進入状況をマトリクステーブルを用いて管理する
マトリクステーブル管理ステップと、オブジェクト毎
に、オブジェクトのオーラに進入している他のオブジェ
クト、およびオブジェクトが進入しているオーラに対応
する他のオブジェクトのリストを管理するリスト管理ス
テップと、マトリクステーブルとリストを参照して、オ
ブジェクトの他のオブジェクトのオーラに対する進入ま
たは離脱を判定する判定ステップとを含むことを特徴と
する。
【0015】請求項4に記載の提供媒体は、3次元仮想
空間におかれた全てのオブジェクト相互のオーラに対す
る進入状況をマトリクステーブルを用いて管理するマト
リクステーブル管理ステップと、オブジェクト毎に、オ
ブジェクトのオーラに進入している他のオブジェクト、
およびオブジェクトが進入しているオーラに対応する他
のオブジェクトのリストを管理するリスト管理ステップ
と、マトリクステーブルとリストを参照して、オブジェ
クトの他のオブジェクトのオーラに対する進入または離
脱を判定する判定ステップとを含む処理を情報処理装置
に実行させるコンピュータが読み取り可能なプログラム
を提供することを特徴とする。
【0016】請求項1に記載の情報処理装置、請求項3
に記載の情報処理方法、および請求項4に記載の提供媒
体においては、3次元仮想空間におかれた全てのオブジ
ェクト相互のオーラに対する進入状況がマトリクステー
ブルを用いて管理され、オブジェクト毎に、オブジェク
トのオーラに進入している他のオブジェクト、およびオ
ブジェクトが進入しているオーラに対応する他のオブジ
ェクトのリストが管理され、マトリクステーブルとリス
トを参照して、オブジェクトの他のオブジェクトのオー
ラに対する進入または離脱が判定される。
【0017】
【発明の実施の形態】以下に本発明の実施の形態を説明
するが、特許請求の範囲に記載の発明の各手段と以下の
実施の形態との対応関係を明らかにするために、各手段
の後の括弧内に、対応する実施の形態(但し一例)を付
加して本発明の特徴を記述すると、次のようになる。但
し勿論この記載は、各手段を記載したものに限定するこ
とを意味するものではない。
【0018】請求項1に記載の情報処理装置は、3次元
仮想空間におかれた全てのオブジェクト相互のオーラに
対する進入状況をマトリクステーブルを用いて管理する
マトリクステーブル管理手段(例えば、図1の共有サー
バ12)と、オブジェクト毎に、オブジェクトのオーラ
に進入している他のオブジェクト、およびオブジェクト
が進入しているオーラに対応する他のオブジェクトのリ
ストを管理するリスト管理手段(例えば、図1の共有サ
ーバ12)と、マトリクステーブルとリストを参照し
て、オブジェクトの他のオブジェクトのオーラに対する
進入または離脱を、片方向ずつ独立して双方向に判定す
る判定手段(例えば、図11のステップS1)とを備え
ることを特徴とする。
【0019】図1は本発明を適用したシステムの構成例
を表している。なお、本明細書中において、システムと
は、複数の装置が論理的に集合した物をいい、各構成の
装置が同一筐体中にあるか否かは問わない。
【0020】図1において、クライアントPC(パーソ
ナルコンピュータ)1乃至3は、IP(インターネット接
続サービスプロバイダ)4乃至6を介してインターネッ
ト(The Internet)7と接続されており、VRMLブラウザ
及びWWWブラウザがインストールされ、インストールさ
れたこれらのブラウザが動作するようになされている。
【0021】クライアントPC1乃至3は、3Dクライ
アントおよび2Dクライアントの2つの機能を有してい
る。3Dクライアントは、定期的あるいは必要なときに
自分の位置情報などの情報を共有サーバ12に通知し、
また、共有サーバ12から送られてくる他の3Dオブジ
ェクトの共有情報を受信し、それを表示させる機能を有
している。2Dクライアントは、HTTPに基づいてWWWサ
ーバ10に情報をリクエストし、その返事を受け取っ
て、主に2次元情報を表示する機能を有する。3Dクラ
イアントは、共有サーバ12から受け取った情報内にUR
Lが含まれている場合、2Dクライアントに、URLへのア
クセスを要求する。2Dクライアントは、この要求に基
づいてURL(WWWサーバ10)にアクセスし、そこからデ
ータ(例えばオブジェクトの形状データ)をダウンロー
ドして、3Dクライアントに転送する。
【0022】インターネット7とルータ8を介して接続
されたLAN(Local Area Network)9には、WWWサーバ1
0、WLS(World Location Server)11、共有サーバ1
2、AO(Application Object)サーバ13,14、メー
ルサーバ15、およびコミュニケーションサーバ16が
接続されている。これらの各サーバ10乃至16には、
ハードディスク(HDD)10a,10b,11a乃至1
6aが、各々設けられている。
【0023】なお、AOサーバ13は、共有サーバ12
と通信するプログラムを有し、例えば仮想空間内におい
て、自律的に動作するロボットや電子ペットなどのアプ
リケーションオブジェクト(AO)を提供する。AOサ
ーバ13は、3Dクライアントと同様に、共有サーバ1
2と通信し、自分自身の情報を通知したり、他の3Dオ
ブジェクトの共有情報を受信したりする。
【0024】コミュニケーションサーバ16は、公衆電
話回線網17を介して電話機18やファクシミリ19と
接続され、また、PHS(Personal Handyphone System)サ
ービスプロバイダ20を介してPHS端末23に無線接続
され、さらに、ポケットベルサービスプロバイダー21
を介してポケットベル端末24に無線接続されている。
【0025】図2はクライアントPC1のハードウェア
の構成例を示すブロック図である。この例において、CP
U30は、ROM34に記録されているプログラムに従って
各種の処理を実行するようになされており、HDD31はV
RML 2.0ファイルや、Java(米国 Sun Microsystems社の
商標)により記述された所定のスクリプトプログラム等
からなるVRMLコンテンツなどが格納されている。CD-ROM
ドライブ32は、CD−ROMディスク33に格納されたVRM
Lコンテンツ等の情報を読み取るようになされている。
【0026】サウンド処理回路35は、マイクロフォン
36と左右のスピーカ37,38が接続されており、マ
イクロフォン36からの音声を入力し、または、音楽や
効果音等をスピーカ37,38から出力する。モデム3
9は、インターネット7に接続され、データを授受する
ようになされている。I/O(入出力)インタフェース4
0はマウス41とキーボード42からの操作信号を受け
付けるようになされている。グラフィックス回路43
は、VRAM44が内蔵されており、各種の処理を施した画
像データをVRAM44に格納し、VRAM44から読み出した
画像データを、CRTモニタ45に表示させる。
【0027】RAM46には、実行時に、例えば、Windows
95(米国Micro Soft社の商標) の上で動作するWWWブラウ
ザであるNetscape Navigator、Javaインタプリタ、およ
び、本出願人であるソニー株式会社によって開発された
VRML2.0ブラウザであるCommunity Place Browserが読み
込まれて、CPU30によって実行される状態とされてい
る。
【0028】VRML2.0ブラウザには、米国シリコングラ
フィクス社によって開発され、無償公開されているVRML
の構文解釈用ライブラリ(パーサ)であるQvLibと、英国C
riterion Software Ltd.のソフトウエアレンダラである
RenderWare等、もしくはこれらと同等の機能を有するパ
ーサやレンダラが実装されている。
【0029】そして、 Community Place Browserは、図
1に示すように、WWWブラウザとしてのNetscape Naviga
torとの間において、NCAPI(Netscape Client Applicat
ionPrograming Interface)(商標)に基づいて各種デ
ータの授受を行う。
【0030】Netscape Navigatorは、インターネット7
を介してWWWサーバ10よりHTMLファイルとVRMLコンテ
ンツ(VRMLファイルとJavaによるスクリプトプログラム
とを含む)の供給を受けると、これらをローカルのHDD
31にそれぞれ記憶させる。Netscape Navigatorは、こ
のうちのHTMLファイルを処理してテキストや画像をCRT
モニタ45に表示する一方、 Community Place Browser
はVRMLファイルを処理して3次元仮想空間をCRTモニタ
45に表示させるとともに、Javaインタプリタによるス
クリプトプログラムの処理結果に応じて、3次元仮想空
間内のオブジェクトの挙動、その他の表示状態を変化さ
せる。
【0031】なお、図示は省略するが、他のクライアン
トPC2やクライアントPC3も、クライアントPC1
と同様に構成されている。
【0032】次に上述した一実施の形態の動作につい
て、図3乃至5を参照して説明する。図3において、番
号1で示すように、最初に、WWWブラウザを用いて、VRM
Lコンテンツを提供しているWebサイトのホームページを
閲覧する。この例では、 「http://pc.sony.co.jp/sapa
ri/」を閲覧している。次に、番号2で示すように、ク
ライアントPC1またはクライアントPC2のユーザ
は、VRML2.0ファイルと、VRML空間内での自律的な動き
を実現するためのスクリプトプログラム(Javaによるス
クリプトプログラム)とからなるVRMLコンテンツを、そ
れぞれダウンロードする。
【0033】勿論、 CD-ROMディスク33で提供されるV
RMLコンテンツをCD−ROMドライブ32で読み込んでも良
い。
【0034】次に、図4に示すように、クライアントP
C1またはクライアントPC2では、それぞれにダウン
ロードされ、一旦ローカルのHDD31に格納されたVRML
2.0ファイルを、VRML2.0ブラウザであるCommunity Plac
e Browserが解釈するとともに実行し、さらに番号3で
示すように、VSCP(Virtual Society Server Client Pro
tocol)に基づいて、WLS11に対して共有サーバ12のU
RLを問い合わせる。このとき番号4で示すように、WLS
11は、HDD11aに格納された共有サーバURL管理テー
ブルを参照して、クライアントPC1またはクライアン
トPC2に対して、共有サーバ12のURLを通知する。
【0035】このURLを用いて、図5に示すように、ク
ライアントPC1とクライアントPC2が、共有サーバ
12に接続する。その結果、番号5で示すように、この
共有サーバ12を介して共有3Dオブジェクトの位置や動
きなどに関する共有メッセージの送信が行われ、番号6
で示すように、その転送が行われ、マルチユーザ環境が
実現される。
【0036】なお、以上の接続手順の詳しい説明につい
ては、特開平9-81781号公報を参照されたい。
【0037】また、ここでは、3次元仮想空間を、マル
チユーザ環境で使用することとしているが、マルチユー
ザ環境で使用しないこと(以下、適宜、シングルユーザ
環境という)、即ち、自身以外の他のユーザのアバタ
(ドローンアバタ)を登場させないようにするととも
に、自身のアバタ(パイロットアバタ)を、他のユーザ
のクライアントの3次元仮想空間に登場させないように
することも可能である。これは、上述した番号3乃至6
で表した処理を行わないようにすることで実現すること
ができる。
【0038】次に、図6を参照して、オーラについて説
明する。同図に示すように、パイロットアバタ51の周
囲には、パイロットアバタ51を中心とする所定の半径
を有する球よりなるオーラ52が形成される。パイロッ
トアバタ51は、オーラ52の内部に位置する他のオブ
ジェクトからの情報を受信することができる。具体的に
は、図6に示すように、パイロットアバタ51は、オー
ラ52内に位置するドローンアバタ53−1とオブジェ
クト(AO)54−1を視認することができる(それら
の画像がパイロットアバタ51のクライアントPCのCR
Tモニタに表示される)が、オーラ52の外部に位置す
るドローンアバタ53−2やオブジェクト54−2を視
認することができない(ドローンアバタ53−2やオブ
ジェクト(AO)54−2の画像は、パイロットアバタ
51のクライアントPCのCRTモニタには表示されな
い)。
【0039】他のドローンアバタ53−1,53−2、
オブジェクト54−1,54−2にも同様にオーラが設
定される。なお、このシステムにおいては、各クライア
ントPCが対応するアバタのオーラは同一の大きさとさ
れるが、AOのオーラは、必要に応じてアバタのオーラ
とは異なる範囲に設定される。
【0040】このように、オーラ52を規定すること
で、パイロットアバタ51は、ドローンアバタ53−1
とオブジェクト54−1からの情報を受け取る必要があ
るが、オーラ52の外部に位置するドローンアバタ53
−2またはオブジェクト54−2からの情報は受信する
必要がないので、受信する情報量を制限することが可能
となる。
【0041】すなわち、例えば、図7に示すように、ア
バタ51が移動すると、その新たな位置情報が共有サー
バ12に転送される。共有サーバ12は、アバタ51の
新たな位置に対応するオーラ52の内部にどのようなオ
ブジェクト(アバタを含む)が位置するのかを判断し、
そのオブジェクトに関する情報をアバタ51のクライア
ントPCに通知する。図7に示す例では、アバタ51の
移動後のオーラ52の内部にオブジェクト54−1が存
在するため、共有サーバ12は、オブジェクト54−1
の情報をアバタ51のクライアントPCに通知する。こ
れにより、アバタ51のクライアントPCには、オブジ
ェクト54−1の画像が表示され、アバタ51のユーザ
は、オブジェクト54−1を視認することができる。
【0042】しかしながら、ワールド内に位置するオブ
ジェクトの数が増加してくると、オーラ52内に位置す
るオブジェクトの数も増加してくる。そこで、必要以上
に受信する情報量が増加しないように、オーラ内におい
てそのアバタが視認可能なオブジェクトの最大値が予め
設定され、共有サーバ12により管理される。その結
果、オーラ52内に位置するオブジェクトのうち、視認
可能なオブジェクトの最大値が例えば2と設定されてい
る場合、オーラ52内に3個以上のオブジェクトが存在
したとしても、アバタ51により視認可能なオブジェク
トは、時間的に最も早くオーラ52内に位置してきた2
つのオブジェクトだけとなる。すなわち、3個目以降の
オブジェクトがオーラ52内に進入してきたとしても、
そのことはアバタ51には通知されない。この最大値
は、アバタ51が対応するクライアントPCのリソース
の制限や、クライアントPCと共有サーバ12の間のネ
ットワークの通信帯域の制限などに対応して、所定の値
に設定される。
【0043】但し、オーラ52内において視認可能なオ
ブジェクトの数が最大値に達しているか否かを判断する
場合におけるオブジェクトには、ワールド内において、
自律的に行動するAO(アプリケーションオブジェク
ト)は含まれないものとされる。これにより、アバタ5
1のオーラ52内に、最大値と等しいオブジェクトが既
に存在していたとしても、アバタ51は、AOを視認す
ることが可能となる。
【0044】ところで、このように、各アバタが視認可
能なオブジェクトの数の最大値を設定するようにする
と、一方のアバタからは視認可能であるにもかかわら
ず、他方のアバタからは視認できないような不整合が発
生する可能性がある。
【0045】例えば、図8に示すように、アバタ61の
オーラ62内に、アバタ63とアバタ64が既に位置し
ている状態において、後からオーラ62内にアバタ51
が進入してきたような場合、アバタ51のオーラ52内
には、1つのアバタ61のみが存在するので、アバタ5
1には、アバタ61が視認されるようになされるが、ア
バタ61のオーラ62内には、既に2つのアバタ63,
64が位置しているため、最大値を越える3つ目のアバ
タ51が新たに進入してきたとしても、アバタ61は、
アバタ51を視認することができなくなる。その結果、
アバタ51は、アバタ61を視認することができるにも
かかわらず、アバタ61は、アバタ51を視認すること
ができないので、例えばアバタ51がアバタ61にチャ
ットを申し込むことが可能であるが、アバタ61は、ア
バタ51からのチャットの申し込みを受け付けることが
できない。
【0046】このような不整合を回避するため、このシ
ステムにおいては、一方のアバタ51から他方のアバタ
61を視認することができる場合には、他方のアバタ6
1が既に最大値のアバタを視認している状態であったと
しても、新たなアバタ51を視認することができるよう
になされている。これにより、一方のアバタからは視認
可能であるにもかかわらず、他方のアバタからは視認で
きなくなるような不整合の発生が防止される。
【0047】図9は、共有サーバ12が管理するマトリ
クスオブジェクト管理テーブルを示している。このマト
リクスオブジェクト管理テーブルは、3次元仮想空間に
存在する全てのオブジェクト(オブジェクト番号1乃至
N)について、それぞれのオーラ内に、他のオブジェク
トが進入しているかを否かを相互に表している。このマ
トリクスオブジェクト管理テーブルにおいては、オブジ
ェクト番号Aのオブジェクトのオーラ内にオブジェクト
番号Bのオブジェクトが進入している場合、オブジェク
ト番号Aの列と、オブジェクト番号Bの行とが交差する
枠に1が記入され、進入していない場合、0が記入され
る。
【0048】例えば、図9のマトリクスオブジェクト管
理テーブルは、オブジェクト番号0で示されるオブジェ
クトのオーラ内には、オブジェクト番号3で示されるオ
ブジェクトが進入していることを示している。また、オ
ブジェクト番号1で示されるオブジェクトのオーラ内に
は、オブジェクト番号2で示されるオブジェクトが進入
していることを示している。
【0049】共有サーバ12は、マトリクスオブジェク
ト管理テーブルを参照することにより、オブジェクト
(アバタ)が移動するとき、そのオブジェクトのオーラ
内に他のオブジェクトが進入するか否か、また反対に、
他のオブジェクトのオーラ内に進入するか否かを検出す
る。
【0050】図10は、共有サーバ12が各オブジェク
ト毎に管理する情報(オブジェクト情報)の項目を示し
ている。client_noは、オブジェクトのIDを示してい
る。以下の項目には、このclient_noが示すオブジェク
トに対応する情報が記述されている。aura_size[1]は、
視覚オーラの半径を示している。aura_size[2]は、聴覚
オーラの半径を示している。
【0051】in_aura_no[1]は、視覚オーラ内に存在す
るオブジェクト数を示している。in_aura_no[2]は、聴
覚オーラ内に存在するオブジェクト数を示している。
【0052】clients_in_aura[1]は、視覚オーラ内に知
覚されている相手を示すリストである。clients_in_aur
a[2]は、聴覚オーラ内に知覚されている相手を示すリス
トである。なお、以下において、clients_in_aura[1]ま
たはclients_in_aura[2]を、リストL1と記述する。
【0053】clients_I_am_in[1]は、自己の視覚オーラ
内に知覚している相手を示すリストである。clients_I_
am_in[2]は、自己の聴覚オーラ内に知覚している相手を
示すリストである。なお、以下において、clients_I_am
_in[1]またはclients_I_am_in[2]を、リストL2と記述
する。
【0054】login_timeは、ワールド(3次元仮想空
間)に参加した時刻を示している。attributeは、ユー
ザ定義の属性を示している。pareaは、発信オーラの大
きさ(0ならば無効)を示している。max_aura_inは、
オーラ内で知覚されるオブジェクト数の上限値を示して
いる。flagは、受信するメッセージの種類を示してい
る。Appearanceは、テキストをどのウィンドウに表示す
るか、レーダに検知されるか等の属性を示している。
【0055】read onlyは、相手に自分を見せるか否か
を示している。user nameは、対応するユーザ名を示し
ている。urlは、アバタを表現するファイルのURL(Unifo
rm Resource Locator) を示している。Aura Limitは、
オーラ内のオブジェクト数制限の対象となるか否かを示
している。positionは、3次元仮想空間におけるオブジ
ェクトの位置(座標)を示している。rotationは、オブ
ジェクトの進行方向を示している。
【0056】masterは、マスタクライアントであるか否
かを示している。Idle Countは、連続して移動していな
い、またはチャットしていない時間を示している。Las
Added VAid[1]は、視覚オーラに最後に追加されたオブ
ジェクトのIDを示している。Las Added VAid[2]は、聴
覚オーラに最後に追加されたオブジェクトのIDを示して
いる。
【0057】Linked Objectは、常にオーラに入ると見
える特別なオブジェクトであるか否かを示している。ip
addrは、対応するユーザのIPアドレスを示している。
【0058】共有サーバ12は、上述したオブジェクト
情報を参照して、あるオブジェクト(アバタ)が移動す
るとき、そのオブジェクトが他のオブジェクトのオーラ
内から離脱するか否か、また、他のオブジェクトが移動
するオブジェクトのオーラ内から離脱するか否かを検出
する。
【0059】次に、共有サーバ12のオブジェクト移動
処理について、図11のフローチャートを参照して説明
する。このオブジェクト移動処理は、例えばユーザが、
クライアントPC1において起動されているVRMLブラウ
ザに対して、オブジェクト(アバタ)Aの移動を指令
し、その情報がインターネット7を介して共有サーバ1
2に伝達されたとき、共有サーバ12により実行され
る。
【0060】ステップS1において、共有サーバ12
は、オブジェクトAが移動されることにより、他のオブ
ジェクトのオーラ(聴覚オーラ、または視覚オーラ)内
から離脱するか否かを検出する。この離脱検出処理につ
いて、図12のフローチャートを参照して説明する。
【0061】ステップS11において、共有サーバ12
は、オブジェクト情報のオブジェクトAのリストL2
(自己のオーラ内に知覚している相手を示すリストclie
nts_I_am_in)からオブジェクトを1つ選択し、選択し
たものをオブジェクトBとする。
【0062】ステップS12において、共有サーバ12
は、ステップS11でオブジェクトAのリストL2に含
まれる全てのオブジェクトを選択したか否かを判定し、
オブジェクトAのリストL2に含まれる全てのオブジェ
クトをまだ選択していないと判定した場合、ステップS
13に進む。
【0063】ステップS13において、共有サーバ12
は、オブジェクト情報のオブジェクトAの移動後の位置
(position)およびオーラのサイズ(aura_size)、並びに
オブジェクトBの位置(position)を読み出して、オブジ
ェクトAのオーラ内にオブジェクトBが入っているか否
かを判定し、オブジェクトAのオーラ内にオブジェクト
Bが入っていないと判定した場合、ステップS14に進
む。
【0064】ステップS14において、共有サーバ12
は、オブジェクトAのリストL2からオブジェクトBを
削除するとともに、オブジェクトBのリストL1(オー
ラ内に知覚されている相手を示すリストclients_in_aur
a)からオブジェクトAを削除する。さらに共有サーバ
12は、マトリクスオブジェクト管理テーブルを、上述
したリストL1,L2に対応するように更新する。すな
わち、共有サーバ12は、マトリクスオブジェクト管理
テーブルのオブジェクトAの列と、オブジェクトBの行
が交差する枠に0を記録する。
【0065】なお、ステップS13において、オブジェ
クトAのオーラ内にオブジェクトBが入っていると判定
された場合、リストからの削除処理は不要であるから、
ステップS14をスキップして、ステップS11に戻
る。
【0066】その後、ステップS12において、オブジ
ェクトAのリストL2に含まれる全てのオブジェクトが
選択されたと判定されるまで、ステップS11乃至S1
4の処理が繰り返され、全てのオブジェクトが選択され
た場合、ステップS15に進む。
【0067】ステップS15において、共有サーバ12
は、オブジェクトAのリストL1(オーラ内に知覚され
ている相手を示すリストclients_in_aura)からオブジ
ェクトを1つ選択し、選択したものをオブジェクトCと
する。
【0068】ステップS16において、共有サーバ12
は、ステップS15でオブジェクトAのリストL1に含
まれる全てのオブジェクトを選択したか否かを判定し、
オブジェクトAのリストL1に含まれる全てのオブジェ
クトをまだ選択していないと判定した場合、ステップS
17に進む。
【0069】ステップS17において、共有サーバ12
は、オブジェクトAの移動後の位置、並びにオブジェク
トCの位置およびオーラのサイズを読み出して、オブジ
ェクトCのオーラ内にオブジェクトAが入っているか否
かを判定し、オブジェクトCのオーラ内にオブジェクト
Aが入っていないと判定した場合、ステップS18に進
む。
【0070】ステップS18において、共有サーバ12
は、オブジェクトCのリストL2からオブジェクトAを
削除するとともに、オブジェクトAのリストL1からオ
ブジェクトCを削除する。さらに共有サーバ12は、マ
トリクスオブジェクト管理テーブルを、上述したリスト
L1,L2に対応するように更新する。すなわち、共有
サーバ12は、マトリクスオブジェクト管理テーブルの
オブジェクトCの列と、オブジェクトAの行が交差する
枠に0を記録する。
【0071】なお、ステップS17において、オブジェ
クトCのオーラ内にオブジェクトBが入っていると判定
された場合、リストからの削除処理は不要であるから、
ステップS18をスキップして、ステップS15に戻
る。
【0072】その後、ステップS16において、オブジ
ェクトAのリストL1に含まれる全てのオブジェクトが
選択されたと判定されるまで、ステップS15乃至S1
8の処理が繰り返され、全てのオブジェクトが選択され
た場合、図11のステップS2にリターンする。
【0073】図11に戻る。ステップS2において、共
有サーバ12は、オブジェクトAの移動メッセージ(移
動先の位置等の情報)を、オブジェクトAのリスト1に
含まれるオブジェクト(アバタ)に対応するユーザが操
作するクライアントPCに配布する。
【0074】ステップS3において、共有サーバ12
は、オブジェクトAが移動されることにより、他のオブ
ジェクトのオーラ(聴覚オーラ、または視覚オーラ)内
に進入するか否かを検出する。この進入検出処理につい
て、図13のフローチャートを参照して説明する。
【0075】ステップS21において、共有サーバ12
は、マトリクスオブジェクト管理テーブルに含まれてい
るオブジェクトを1つ選択し、選択したものをオブジェ
クトDとする。
【0076】ステップS22において、共有サーバ12
は、ステップS21でマトリクスオブジェクト管理テー
ブルに含まれている全てのオブジェクトを選択したか否
かを判定し、マトリクスオブジェクト管理テーブルに含
まれている全てのオブジェクトをまだ選択していないと
判定した場合、ステップS23に進む。
【0077】ステップS23において、共有サーバ12
は、オブジェクトDがオブジェクトAと等しいか否かを
判定し、オブジェクトDがオブジェクトAと等しいと判
定した場合、ステップS21に戻る。また、オブジェク
トDがオブジェクトAと等しくないと判定された場合、
ステップS24に進む。
【0078】ステップS24において、共有サーバ12
は、マトリクスオブジェクト管理テーブルを参照して、
オブジェクトAのオーラ内にオブジェクトDが進入して
いるか否か(マトリクスオブジェクト管理テーブルにお
いて、オブジェクトAの列と、オブジェクトDの行が交
差する枠に1が記録されているか否か)を判定するとと
もに、オブジェクト情報のオブジェクトAの移動後の位
置(position)およびオーラのサイズ(aura_size)、並び
にオブジェクトDの位置(position)を読み出して、オブ
ジェクトAのオーラ内にオブジェクトDが入っているか
否かを判定する。マトリクスオブジェクト管理テーブル
では、オブジェクトAのオーラ内にオブジェクトDが進
入していない(マトリクスオブジェクト管理テーブルに
おいて、オブジェクトAの列と、オブジェクトDの行が
交差する枠に0が記録されている)と判定され、且つ、
オブジェクトAのオーラ内にオブジェクトDが入ってい
ると判定された場合、ステップS25に進む。
【0079】ステップS25において、共有サーバ12
は、オブジェクトAのリストL2にオブジェクトDを追
加するとともに、オブジェクトDのリストL1にオブジ
ェクトAを追加する。さらに共有サーバ12は、マトリ
クスオブジェクト管理テーブルを、上述したリストL
1,L2に対応するように更新する。すなわち、共有サ
ーバ12は、マトリクスオブジェクト管理テーブルのオ
ブジェクトAの列と、オブジェクトDの行が交差する枠
に1を記録する。
【0080】ステップS26において、共有サーバ12
は、マトリクスオブジェクト管理テーブルを参照して、
オブジェクトDのオーラ内にオブジェクトAが進入して
いるか否か(マトリクスオブジェクト管理テーブルにお
いて、オブジェクトDの列と、オブジェクトAの行が交
差する枠に1が記載されているか否か)を判定するとと
もに、オブジェクトAの移動後の位置(position)、並び
にオブジェクトDの位置(position)およびオーラのサイ
ズ(aura_size)を読み出して、オブジェクトDのオーラ
内にオブジェクトAが入っているか否かを判定する。マ
トリクスオブジェクト管理テーブルでは、オブジェクト
Dのオーラ内にオブジェクトAが進入していない(マト
リクスオブジェクト管理テーブルにおいて、オブジェク
トDの列と、オブジェクトAの行が交差する枠に0が記
録されている)と判定され、且つ、オブジェクトDのオ
ーラ内にオブジェクトAが入っていると判定された場
合、ステップS27に進む。
【0081】ステップS27において、共有サーバ12
は、オブジェクトDのリストL2にオブジェクトAを追
加するとともに、オブジェクトAのリストL1にオブジ
ェクトDを追加する。さらに共有サーバ12は、マトリ
クスオブジェクト管理テーブルを、上述したリストL
1,L2に対応するように更新する。すなわち、共有サ
ーバ12は、マトリクスオブジェクト管理テーブルのオ
ブジェクトDの列と、オブジェクトAの行が交差する枠
に1を記録する。
【0082】なお、ステップS24において、オブジェ
クトAのオーラ内にオブジェクトDが入っていると判定
された場合、または、オブジェクトAのオーラ内にオブ
ジェクトDが入っていないと判定された場合、登録処理
は不要であるから、ステップS25はスキップされる。
【0083】また、ステップS26において、オブジェ
クトDのオーラ内にオブジェクトAが入っていると判定
された場合、または、オブジェクトDのオーラ内にオブ
ジェクトAが入っていないと判定された場合、登録処理
は不要であるから、ステップS27はスキップされる。
【0084】その後、ステップS22で、マトリクスオ
ブジェクト管理テーブルに記録されている全てのオブジ
ェクトが選択されたと判定されるまで、ステップS21
乃至S27の処理が繰り返され、マトリクスオブジェク
ト管理テーブルに記録されている全てのオブジェクトが
選択されたと判定された場合、リターンする。
【0085】以上のように、本実施の形態においては、
オブジェクト相互のオーラに対する離脱および進入の判
定を、片方ずつ独立して双方向に実施している。すなわ
ち、オブジェクトAの移動に際して、オブジェクトAの
オーラからオブジェクトBが離脱することを検知すると
ともに、オブジェクトAがオブジェクトCのオーラから
離脱することを検知する。さらに、オブジェクトAのオ
ーラにオブジェクトDが進入することを検知するととも
に、オブジェクトDのオーラにオブジェクトAが進入す
ることを検知する。
【0086】また、本実施の形態においては、離脱検知
処理にはオブジェクト情報を参照し、進入検知処理には
マトリクスオブジェクト管理テーブルを参照するが、3
次元仮想空間に存在するオブジェクトの総数N(つま
り、マトリクスオブジェクト管理テーブルのサイズ)
は、あるオブジェクトが知覚している他のオブジェクト
数nに比べて、一般的にN>nとなることが多いので、
特に離脱検出を高速で行うことが可能となる。
【0087】なお、上記各処理を行うコンピュータプロ
グラムは、磁気ディスク、CD-ROM等の情報記録媒体より
なる提供媒体のほか、インターネット、デジタル衛星な
どのネットワーク提供媒体を介してユーザに提供するこ
とができる。
【0088】
【発明の効果】以上のように、請求項1に記載の情報処
理装置、請求項3に記載の情報処理方法、および請求項
4に記載の提供媒体によれば、3次元仮想空間におかれ
た全てのオブジェクト相互のオーラに対する進入状況を
マトリクステーブルを用いて管理し、オブジェクト毎
に、オブジェクトのオーラに進入している他のオブジェ
クト、およびオブジェクトが進入しているオーラに対応
する他のオブジェクトのリストを管理し、マトリクステ
ーブルとリストを参照して、オブジェクトの他のオブジ
ェクトのオーラに対する進入または離脱を判定するよう
にしたので、オブジェクト相互の領域に対する進入、お
よび離脱を速やかに判定することが可能となる。
【図面の簡単な説明】
【図1】本発明を適用した共有仮想空間提供システムの
構成例を示すブロック図である。
【図2】図1のクライアントPC1の構成例を示すブロ
ック図である。
【図3】図1のシステムの動作を説明する図である。
【図4】図1のシステムの動作を説明する図である。
【図5】図1のシステムの動作を説明する図である。
【図6】オーラを説明する図である。
【図7】アバタが移動した場合のオブジェクトの知覚を
説明する図である。
【図8】アバタの知覚の不整合を説明する図である。
【図9】マトリクスオブジェクト管理テーブルを説明す
る図である。
【図10】オブジェクト情報を説明する図である。
【図11】図1の共有サーバ12のオブジェクト移動処
理を説明するフローチャートである。
【図12】図11のステップS1の離脱検出処理を説明
するフローチャートである。
【図13】図11のステップS3の進入検出処理を説明
するフローチャートである。
【符号の説明】
1乃至3 クライアントPC, 7 インタネット,
10 WWWサーバ,12 共有サーバ, 30 CPU,
31 ハードディスク, 34 ROM, 39 モデ
ム, 45 CRTモニタ, 46 RAM, 51 パイロ
ットアバタ,52 オーラ, 53−1,53−2 ド
ローンアバタ, 54−1,54−2オブジェクト,
61 アバタ, 62 オーラ, 63,64 アバタ

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 3次元仮想空間におかれたオブジェクト
    を操作して前記3次元仮想空間内を移動させる情報処理
    装置において、 前記3次元仮想空間におかれた全てのオブジェクト相互
    のオーラに対する進入状況をマトリクステーブルを用い
    て管理するマトリクステーブル管理手段と、 前記オブジェクト毎に、前記オブジェクトのオーラに進
    入している他のオブジェクト、および前記オブジェクト
    が進入しているオーラに対応する他のオブジェクトのリ
    ストを管理するリスト管理手段と、 前記マトリクステーブルと前記リストを参照して、前記
    オブジェクトの他のオブジェクトのオーラに対する進入
    または離脱を判定する判定手段とを備えることを特徴と
    する情報処理装置。
  2. 【請求項2】 前記判定手段は、前記オブジェクトの他
    のオブジェクトのオーラに対する進入または離脱を、片
    方向ずつ独立して双方向に判定することを特徴とする請
    求項1に記載の情報処理装置。
  3. 【請求項3】 前記オブジェクト相互のオーラに対する
    進入状況は、前記マトリクステーブルおよび前記リスト
    の両方に記録されることを特徴とする請求項1に記載の
    情報処理装置。
  4. 【請求項4】 3次元仮想空間におかれたオブジェクト
    を操作して前記3次元仮想空間内を移動させる情報処理
    方法において、 前記3次元仮想空間におかれた全てのオブジェクト相互
    のオーラに対する進入状況をマトリクステーブルを用い
    て管理するマトリクステーブル管理ステップと、 前記オブジェクト毎に、前記オブジェクトのオーラに進
    入している他のオブジェクト、および前記オブジェクト
    が進入しているオーラに対応する他のオブジェクトのリ
    ストを管理するリスト管理ステップと、 前記マトリクステーブルと前記リストを参照して、前記
    オブジェクトの他のオブジェクトのオーラに対する進入
    または離脱を判定する判定ステップとを含むことを特徴
    とする情報処理方法。
  5. 【請求項5】 3次元仮想空間におかれたオブジェクト
    を操作して前記3次元仮想空間内を移動させることがで
    きる情報処理装置に、 前記3次元仮想空間におかれた全てのオブジェクト相互
    のオーラに対する進入状況をマトリクステーブルを用い
    て管理するマトリクステーブル管理ステップと、 前記オブジェクト毎に、前記オブジェクトのオーラに進
    入している他のオブジェクト、および前記オブジェクト
    が進入しているオーラに対応する他のオブジェクトのリ
    ストを管理するリスト管理ステップと、 前記マトリクステーブルと前記リストを参照して、前記
    オブジェクトの他のオブジェクトのオーラに対する進入
    または離脱を判定する判定ステップとを含む処理を実行
    させるコンピュータが読み取り可能なプログラムを提供
    することを特徴とする提供媒体。
JP27706698A 1998-09-30 1998-09-30 情報処理装置および方法、並びに提供媒体 Withdrawn JP2000113223A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP27706698A JP2000113223A (ja) 1998-09-30 1998-09-30 情報処理装置および方法、並びに提供媒体
EP19990307729 EP0990978A2 (en) 1998-09-30 1999-09-30 Information processing apparatus, method and computer program for virtual reality object management using auras

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27706698A JP2000113223A (ja) 1998-09-30 1998-09-30 情報処理装置および方法、並びに提供媒体

Publications (1)

Publication Number Publication Date
JP2000113223A true JP2000113223A (ja) 2000-04-21

Family

ID=17578320

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27706698A Withdrawn JP2000113223A (ja) 1998-09-30 1998-09-30 情報処理装置および方法、並びに提供媒体

Country Status (2)

Country Link
EP (1) EP0990978A2 (ja)
JP (1) JP2000113223A (ja)

Also Published As

Publication number Publication date
EP0990978A2 (en) 2000-04-05

Similar Documents

Publication Publication Date Title
JP2000113222A (ja) 情報処理装置および方法、並びに提供媒体
JP2000113220A (ja) 情報処理装置および方法、並びに提供媒体
JP4479051B2 (ja) 情報処理装置および方法、並びに記録媒体
JP4441979B2 (ja) 情報処理装置および方法、並びに記録媒体
US8417822B2 (en) Networked computer system for communicating and operating in a virtual reality environment
JP4547768B2 (ja) 情報処理装置および方法、並びに記録媒体
JP4232231B2 (ja) 情報処理装置および方法、並びに記録媒体
US6975315B2 (en) Information processing method
JP2001236291A (ja) 情報処理装置および方法、情報処理システム、並びに記録媒体
US6496207B1 (en) Collision detection apparatus and method for avatars in a three-dimensional virtual space
JP2000113223A (ja) 情報処理装置および方法、並びに提供媒体
JP2000149063A (ja) 情報処理装置および方法、並びに提供媒体
JP2000149068A (ja) 情報処理装置および方法、並びに提供媒体
JP2000148342A (ja) 情報処理装置および方法、並びに提供媒体
JP2001148033A (ja) 情報処理装置および方法、並びに記録媒体
JP4487159B2 (ja) 情報処理装置および方法、並びに格納媒体
JP2000268192A (ja) 近接判定方法及びプログラム提供媒体、並びに情報処理装置
JP2000207578A (ja) 情報処理装置および方法、並びに提供媒体
JP2001307137A (ja) 情報処理装置および方法、並びに格納媒体
JP2000207583A (ja) 情報処理装置および方法、並びに提供媒体
JPH11259683A (ja) 3次元仮想空間情報処理装置および方法、並びに提供媒体

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060110