JPH11120381A - 仮想空間制御装置および方法、並びに記録媒体 - Google Patents

仮想空間制御装置および方法、並びに記録媒体

Info

Publication number
JPH11120381A
JPH11120381A JP28099897A JP28099897A JPH11120381A JP H11120381 A JPH11120381 A JP H11120381A JP 28099897 A JP28099897 A JP 28099897A JP 28099897 A JP28099897 A JP 28099897A JP H11120381 A JPH11120381 A JP H11120381A
Authority
JP
Japan
Prior art keywords
avatar
virtual space
collision
information
collision determination
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.)
Granted
Application number
JP28099897A
Other languages
English (en)
Other versions
JP3562554B2 (ja
Inventor
Motoyuki Katou
意之 加藤
Shin Arita
伸 蟻田
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP28099897A priority Critical patent/JP3562554B2/ja
Publication of JPH11120381A publication Critical patent/JPH11120381A/ja
Application granted granted Critical
Publication of JP3562554B2 publication Critical patent/JP3562554B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Processing Or Creating Images (AREA)
  • Digital Computer Display Output (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

(57)【要約】 【課題】 仮想空間上におけるアバタの移動を円滑に行
う。 【解決手段】 ユーザ端末3−1は、仮想空間管理部3
1、通信制御部32、仮想空間情報格納部33、UI制
御部34、オブジェクト・アバタ管理部35、および衝
突判定部36から構成されている。仮想空間管理部31
は、ユーザ端末3−1全体を制御する。オブジェクト・
アバタ管理部35は、現時点における仮想空間上のオブ
ジェクトとアバタの位置、および状態を管理する。衝突
判定部36は、仮想空間管理部31から入力される移動
情報とオブジェクト・アバタ管理部35から入力される
現時点のオブジェクト、およびアバタの位置情報に基づ
いて、アバタと他のアバタ、またはオブジェクトが衝突
するか否かを判定する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、仮想空間制御装置
および方法、並びに記録媒体に関し、特に、ユーザ端末
においてアバタの衝突判定を行うことにより、アバタの
移動を円滑に行うことができるようにした仮想空間制御
装置および方法、並びに記録媒体に関する。
【0002】
【従来の技術】複数のユーザが共有する仮想空間(ネッ
トワークとコンピュータを使って実現する社会、いわゆ
るサイバースペース)を制御する仮想空間制御システム
は、図21に示すように、仮想空間を管理するサーバ1
と、インターネットに代表されるネットワーク2を介し
てサーバ1に接続される複数のユーザ端末(クライアン
ト)3−1乃至3−3(以下、各ユーザ端末3−1乃至
3−3を個々に区別する必要がない場合、単にユーザ端
末3と記述する)から構成される。仮想空間上には、図
22乃至24に示すように、複数のオブジェクト(家
具、または電化製品等)と、アバタ(仮想空間において
ユーザの代わりに行動する。例えば、移動、挙手等を行
う)が存在する。アバタは、ユーザの操作に対応して、
仮想空間上を移動する。なお、この明細書において、シ
ステムの用語は、複数の装置で構成される全体の装置を
表すものとして使用する。
【0003】従来の仮想空間制御システムの構成の一例
について、図25を参照して説明する。サーバ1は、仮
想空間管理部11、通信制御部12、仮想空間情報格納
部13、オブジェクト・アバタ管理部14、および衝突
判定部15から構成される。仮想空間管理部11は、ユ
ーザ端末3−1乃至3−3から入力された情報(仮想空
間への参加要求、およびアバタの移動情報等)の処理
を、オブジェクト・アバタ管理部14、または衝突判定
部15に行わせ、その処理結果を通信制御部12に出力
するようになされている。さらに、仮想空間管理部11
は、仮想空間に参加しているユーザの名前、およびユー
ザに対応するアバタの名前を管理している。
【0004】通信制御部12は、ユーザ端末3−1乃至
3−3とネットワーク2を介して行われる情報の通信を
制御するようになされている。仮想空間情報格納部13
には、仮想空間の初期状態のデータ(オブジェクトの座
標等)、並びに、空間背景、オブジェクト、およびアバ
タの画像データが格納されている。オブジェクト・アバ
タ管理部14は、現在のオブジェクトとアバタの位置、
および状態を管理する。衝突判定部15は、アバタが移
動された場合、オブジェクト・アバタ管理部14が管理
する位置情報に基づいて、移動されるアバタと、他のア
バタ、またはオブジェクトが衝突するか否かを判定す
る。
【0005】ユーザ端末3−1は、仮想空間管理部3
1、通信制御部32、仮想空間情報格納部33、UI制
御部34、およびオブジェクト・アバタ管理部35から
構成される。仮想空間管理部31は、UI制御部34、
およびオブジェクト・アバタ管理部35を制御して、サ
ーバ1から入力された情報(衝突判定の結果、および他
のユーザに対応するアバタの位置等)の処理を行わせる
ようになされている。さらに、仮想空間管理部31は、
サーバ1に出力する情報(アバタの移動情報等)を通信
制御部32に出力する。通信制御部32は、ネットワー
ク2を介したサーバ1との通信を制御する。仮想空間情
報格納部33には、空間背景、オブジェクト、およびア
バタの画像データが格納されている。UI制御部34
は、図示せぬ表示部に仮想空間を表示するとともに、ユ
ーザの操作(アバタの移動等)を受け付けるようになさ
れている。オブジェクト・アバタ管理部35は、現在の
オブジェクトとアバタの位置、および状態を管理する。
【0006】なお、ユーザ端末3−2,3−3の構成
は、ユーザ端末3−1の構成と同様であるので、その説
明を省略する。
【0007】次に、仮想空間制御システムにおけるアバ
タの移動処理について、図26のフローチャートと図2
7を参照して説明する。なお、図27は図26の各ステ
ップに対応する情報の入出力を矢印で示している。ステ
ップS101において、ユーザは、表示部に表示される
仮想空間上のアバタを移動する操作を行う(例えば、ア
バタをマウスでクリックし、移動したい位置にドラッグ
する)。ステップS102において、UI制御部34
は、ユーザの移動操作を受け付け、その移動操作に対応
した移動情報(移動されるアバタ名と移動先の位置)を
仮想空間管理部31に出力する。ステップS103にお
いて、仮想空間管理部31は、移動情報を通信制御部3
2に出力し、通信制御部32は、移動情報をネットワー
ク2を介して、サーバ1に出力する。サーバ1において
は、通信制御部12が、移動情報を受け付け、仮想空間
管理部11に出力する。
【0008】ステップS104において、仮想空間管理
部11は、移動情報を衝突判定部15に入力させる。衝
突判定部15は、移動情報とオブジェクト・アバタ管理
部14が管理する現在のオブジェクト、およびアバタの
位置情報に基づいて、移動後のアバタと、他のアバタ、
またはオブジェクトが衝突するか否かを判定し、衝突し
ない場合、その旨を仮想空間管理部11に通知し、ステ
ップS105に進む。ステップS105において、仮想
空間管理部11は、オブジェクト・アバタ管理部14で
管理されるアバタの位置情報を移動先の位置に更新す
る。ステップS106において、仮想空間管理部11
は、衝突判定結果と更新されたアバタの位置情報を通信
制御部12に出力し、通信制御部12は、衝突判定結果
と更新されたアバタの位置情報をネットワーク2を介し
てユーザ端末3−1乃至3−3に出力する。
【0009】ステップS107において、仮想空間管理
部31は、オブジェクト・アバタ管理部35で管理され
ているアバタの位置情報を、サーバ1から入力された位
置情報に更新する。ステップS108において、仮想空
間管理部31は、衝突判定結果をUI制御部34に出力
し、UI制御部34は、オブジェクト・アバタ管理部3
5で管理されているアバタの位置情報に基づいて、表示
されている仮想空間上のアバタの位置を更新する(アバ
タを移動する)。
【0010】ステップS104において、移動後のアバ
タと他のアバタ、またはオブジェクトが衝突すると判定
された場合、ステップS109に進む。ステップS10
9において、仮想空間管理部11は、衝突判定結果を通
信制御部12に出力し、通信制御部12は、衝突判定結
果をネットワーク2を介してユーザ端末3−1に出力す
る。ユーザ端末3−1においては、入力された判定結果
が「衝突発生」であるので、アバタの位置を更新する処
理は行われない(アバタは移動されない)。
【0011】
【発明が解決しようとする課題】このように、アバタを
移動させる場合、移動させるアバタと、仮想空間上の他
のアバタ、またはオブジェクトが衝突するか否かを判定
する必要がある。この判定は、サーバ1において行われ
ているので、ユーザがアバタの移動操作を行う毎に、ユ
ーザ端末3−1はサーバ1に、衝突が発生するか否かを
問い合わせる必要がある。ユーザ端末3−1に表示され
ているアバタの位置の更新(アバタの移動)は、サーバ
1の衝突判定結果がユーザ端末3−1に届いてから実行
されるので、ネットワーク2の混雑状況によっては、ア
バタの移動が円滑に行われない課題があった。
【0012】また、サーバ1が全ての衝突判定を一括し
て処理するので、複数の衝突判定が同時に発生した場
合、仮想空間制御システム全体の処理能力が低下する課
題があった。
【0013】本発明はこのような状況に鑑みてなされた
ものであり、ユーザ端末で衝突判定を行うことにより、
アバタの移動を円滑に行うとともに、仮想空間制御シス
テム全体の処理能力の低下を防止するものである。
【0014】
【課題を解決するための手段】請求項1に記載の仮想空
間制御装置は、所定のネットワークを介して接続された
サーバとユーザ端末から構成され、複数のユーザが共有
する仮想空間を制御する仮想空間制御システムにおい
て、サーバは、仮想空間上でユーザを表すアバタの移動
情報を収集する収集手段と、仮想空間上のオブジェクト
とアバタの現在の位置情報を管理する位置情報管理手段
と、アバタの位置情報とオブジェクトの位置情報に基づ
いて、移動するアバタの衝突判定を行う第1衝突判定手
段と、ユーザ端末にアバタの位置情報を出力する出力手
段とを備え、ユーザ端末は、出力手段から出力されたア
バタの位置情報とオブジェクトの位置情報に基づいて、
移動するアバタの衝突判定を行う第2衝突判定手段を備
えることを特徴とする。
【0015】請求項4に記載の仮想空間制御方法は、所
定のネットワークを介して接続されたサーバとユーザ端
末から構成され、複数のユーザが共有する仮想空間を制
御する仮想空間制御方法において、サーバは、仮想空間
上でユーザを表すアバタの移動情報を収集する収集ステ
ップと、仮想空間上のオブジェクトとアバタの現在の位
置情報を管理する位置情報管理ステップと、アバタの位
置情報とオブジェクトの位置情報に基づいて、移動する
アバタの衝突判定を行う第1衝突判定ステップと、ユー
ザ端末にアバタの位置情報を出力する出力ステップとを
備え、ユーザ端末は、出力ステップから出力されたアバ
タの位置情報とオブジェクトの位置情報に基づいて、移
動するアバタの衝突判定を行う第2衝突判定ステップを
備えることを特徴とする。
【0016】請求項7に記載の記録媒体は、複数のユー
ザが共有する仮想空間上でユーザを表すアバタの移動情
報を収集し、仮想空間上のオブジェクトとアバタの現在
の位置情報を管理し、アバタの位置情報とオブジェクト
の位置情報に基づいて、移動するアバタの衝突判定を行
うとともに、アバタの位置情報を出力するサーバに、所
定のネットワークを介して接続された仮想空間を制御す
る仮想空間制御装置に使用するコンピュータプログラム
を記録する記録媒体において、アバタの移動情報を検出
し、サーバに通知する検出ステップと、サーバから供給
されたアバタの位置情報とオブジェクトの位置情報、並
びに検出ステップで検出したアバタの移動位置に基づい
て、移動するアバタの衝突判定を行う衝突判定ステップ
とを備えるコンピュータプログラムを記録することを特
徴とする。
【0017】請求項1に記載の仮想空間制御装置、請求
項4に記載の仮想空間制御方法、および請求項7に記載
の記録媒体においては、サーバにおいて、仮想空間上で
ユーザを表すアバタの移動情報が収集され、仮想空間上
のオブジェクトとアバタの現在の位置情報が管理され
る。さらに、アバタの位置情報とオブジェクトの位置情
報に基づいて、移動するアバタの衝突判定が行われ、ユ
ーザ端末にアバタの位置情報が出力される。ユーザ端末
においても、サーバから出力されたアバタの位置情報と
オブジェクトの位置情報に基づいて、移動するアバタの
衝突判定が行われる。
【0018】
【発明の実施の形態】以下に本発明の実施の形態を説明
するが、特許請求の範囲に記載の発明の各手段と以下の
実施の形態との対応関係を明らかにするために、各手段
の後の括弧内に、対応する実施の形態(但し一例)を付
加して本発明の特徴を記述すると、次のようになる。
【0019】即ち、請求項1に記載の仮想空間制御装置
は、所定のネットワークを介して接続されたサーバとユ
ーザ端末から構成され、複数のユーザが共有する仮想空
間を制御する仮想空間制御装置において、サーバは、仮
想空間上でユーザを表すアバタの移動情報を収集する収
集手段(例えば、図1の仮想空間管理部11)と、仮想
空間上のオブジェクトとアバタの現在の位置情報を管理
する位置情報管理手段(例えば、図1のオブジェクト・
アバタ管理部14)と、アバタの位置情報とオブジェク
トの位置情報に基づいて、移動するアバタの衝突判定を
行う第1衝突判定手段(例えば、図1の衝突判定部1
5)と、ユーザ端末にアバタの位置情報を出力する出力
手段(例えば、図1の通信制御部12)とを備え、ユー
ザ端末は、出力手段から出力されたアバタの位置情報と
オブジェクトの位置情報に基づいて、移動するアバタの
衝突判定を行う第2衝突判定手段(例えば、図1の衝突
判定部36)を備えることを特徴とする。
【0020】また、請求項2に記載の仮想空間制御装置
は、ユーザ端末にアバタの過去の移動情報を保管する移
動情報保管手段(例えば、図9の更新情報保管部37)
と、第1衝突判定手段と第2衝突判定手段による衝突判
定結果が異なる場合、第2衝突判定手段の衝突判定結果
に基づく処理を修正する修正手段(例えば、図3のステ
ップ15乃至S17)とをさらに備えることを特徴とす
る。
【0021】さらに、請求項3に記載の仮想空間制御装
置は、ユーザ端末に移動情報保管手段が保管する過去の
移動情報に基づいて、アバタの移動位置を予測する移動
位置予測手段(例えば、図9の衝突判定部36)と、移
動位置予測手段が予測する移動位置に基づいて衝突予測
を行う衝突予測手段(例えば、図9の衝突判定部36)
とをさらに備えることを特徴とする。
【0022】但し勿論この記載は、各手段を記載したも
のに限定することを意味するものではない。
【0023】本発明を適用した仮想空間制御システムの
構成について、図1を参照して説明する。この仮想空間
制御システムと図25に示した仮想空間制御システムと
の違いは、ユーザ端末3−1乃至3−3に衝突判定部3
6が追加されたことである。衝突判定部36は、仮想空
間管理部31から入力される移動情報(移動されるアバ
タ名と移動先の位置)と、オブジェクト・アバタ管理部
35から入力される現在のオブジェクト、およびアバタ
の位置情報に基づいて、衝突が発生するか否かを判定
し、判定結果を仮想空間管理部31に出力するようにな
されている。衝突判定部36以外の各部は、図25に示
した仮想空間制御システムと同様であるので、その説明
は省略する。
【0024】次に、各部で管理される情報の構造の一例
を示す。サーバ1の仮想空間管理部11は、サーバ1に
接続しているユーザ端末名、および接続しているユーザ
数を管理する。 接続しているユーザ端末名 client_machine_1 client_machine_2 接続しているユーザ数 2
【0025】仮想空間情報格納部13は、仮想空間情
報、オブジェクト情報、およびアバタ情報を管理する。 仮想空間情報 空間名:sample_space 空間背景:sample_space_background.gif 広さ:(0,0,0)-(100,100,100) オブジェクト名:obj1 オブジェクトタイプ:chair 初期位置:(20,20,0) オブジェクト名:obj2 オブジェクトタイプ:desk 初期位置:(80,80,0) オブジェクト情報 オブジェクトタイプ名 大きさ(半径) 画像ファイル chair 5 chair.gif desk 8 desk.gif アバタ情報 アバタタイプ名 大きさ(半径) 画像ファイル man 3 man.gif woman 2 woman.gif
【0026】オブジェクト・アバタ管理部14は、現在
のオブジェクト、およびアバタの位置情報を管理する。 仮想空間内のオブジェクト情報 オブジェクト名 現在の位置 オブジェクトタイプ名 obj1 (20,20,0) chair obj2 (80,80,0) desk 仮想空間内の総オブジェクト数 2 仮想空間内のアバタ情報 アバタ名 現在の位置情報 アバタタイプ名 ava1 (10,50,0) man ava2 (50,50,0) woman 仮想空間内の総アバタ数 2
【0027】ユーザ端末3−1の仮想空間管理部31
は、接続しているサーバ名を管理する。 サーバ名 server_machine_1
【0028】仮想空間情報格納部33は、仮想空間情
報、オブジェクト情報、およびアバタ情報を管理する。 仮想空間情報 空間名:sample_space 空間背景:sample_space_background.gif 広さ:(0,0,0)-(100,100,100) オブジェクト名:obj1 オブジェクトタイプ:chair 初期位置:(20,20,0) オブジェクト名:obj2 オブジェクトタイプ:desk 初期位置:(80,80,0) オブジェクト情報 オブジェクトタイプ名 大きさ(半径) 画像ファイル chair 5 chair.gif desk 8 desk.gif アバタ情報 アバタタイプ名 大きさ(半径) 画像ファイル man 3 man.gif woman 2 woman.gif
【0029】オブジェクト・アバタ管理部35は、現在
のオブジェクトとアバタの位置情報を管理する。 仮想空間内のオブジェクト情報 オブジェクト名 現在の位置 オブジェクトタイプ名 obj1 (20,20,0) chair obj2 (80,80,0) desk 仮想空間内の総オブジェクト数 2 仮想空間内のアバタ情報 アバタ名 現在の位置情報 アバタタイプ名 ava1 (10,50,0) man ava2 (50,50,0) woman 仮想空間内の総アバタ数 2
【0030】ユーザ端末3−1からサーバ1に出力され
る移動情報 移動シーケンス番号 アバタ名 移動先の位置 100 ava1 (20,50,0)
【0031】サーバ1からユーザ端末3−1に出力され
る衝突判定結果 移動シーケンス番号 判定結果 アバタ名 位置情報 100 衝突なし ava1 (20,50,0)
【0032】次に、この仮想空間制御システムにおける
アバタの移動処理について、図2と図3のフローチャー
ト、並びに図4を参照して説明する。なお、図2の各ス
テップと図3のステップS12乃至S17は、主にユー
ザ端末3−1の処理を示し、図3のステップS8乃至S
11,S14は主にサーバ1の処理を示し、図4は図2
と図3のフローチャートの各ステップに対応する情報の
入出力を示している。
【0033】ステップS1において、ユーザは、図示せ
ぬ表示部に表示される仮想空間上のアバタを移動する操
作を行う。例えば、アバタをマウスでクリックし、移動
したい方向にドラッグする。なお、アバタの移動距離
は、マウスの移動速度に対応する。すなわち、マウスを
速く移動するとアバタは長い距離を移動し、マウスを遅
く移動するとアバタは短い距離を移動する。UI制御部
34は、ユーザの移動操作を受け付け、その移動操作に
対応した移動情報を仮想空間管理部31に出力する。ス
テップS2において、仮想空間管理部31は、衝突判定
部36に移動情報を出力し、衝突判定を行わせる。この
衝突判定処理の詳細については後述する。ステップS3
において、衝突判定部36による衝突判定結果が「衝突
なし」と判定された場合、ステップS4に進む。
【0034】ステップS4において、仮想空間管理部3
1は、オブジェクト・アバタ管理部35で管理されるア
バタの位置情報を移動情報に含まれる移動先の位置の座
標に更新する。ステップS5において、仮想空間管理部
31は、衝突判定結果をUI制御部34に出力する。ス
テップS6において、UI制御部34は、オブジェクト
・アバタ管理部35で管理されるアバタの位置情報に基
づいて、仮想空間上のアバタの表示位置を更新する。ス
テップS7において、仮想空間管理部31は、移動情報
を通信制御部32に出力し、通信制御部32は、移動情
報をネットワーク2を介してサーバ1に出力する。サー
バ1においては、通信制御部12が移動情報を受け付
け、仮想空間管理部11に出力する。
【0035】ステップS8において、仮想空間管理部1
1は、移動情報を衝突判定部15に出力し、衝突判定を
行わせる。ステップS9において、衝突判定部15によ
る衝突判定結果が「衝突なし」であると判定された場
合、ステップS10に進む。ステップS10において、
仮想空間管理部11は、オブジェクト・アバタ管理部1
4で管理されるアバタの位置情報を移動情報に含まれる
移動先の位置の座標に更新する。ステップS11におい
て、仮想空間管理部11は、衝突判定結果と更新された
アバタの位置情報を通信制御部12に出力し、通信制御
部12は、衝突判定結果と更新されたアバタの位置情報
をネットワーク2を介してユーザ端末3−1に出力す
る。ユーザ端末3−1においては、通信制御部32が、
衝突判定結果と更新されたアバタの位置情報を受け付
け、仮想空間管理部31に出力する。
【0036】ステップS12において、仮想空間管理部
31は、入力された衝突判定結果が「衝突なし」である
と判定された場合、既にアバタの位置は更新されている
ので処理を終了する。
【0037】ステップS3において、ステップS2にお
ける衝突判定部36の衝突判定結果が「衝突発生」であ
ると判定された場合、ステップS13に進む。ステップ
S13において、衝突発生の情報が仮想空間管理部31
からUI制御部34に出力される。、UI制御部34
は、アバタを移動させず、衝突発生の情報(例えば、
「衝突するので、移動できません」のようなメッセー
ジ)を表示部に表示する。また、同時に図示せぬスピー
カからビープ音が発せられる。
【0038】ステップS9において、ステップS8にお
ける衝突判定部15の衝突判定結果が「衝突発生」であ
ると判定された場合、ステップS14に進む。ステップ
S14において、仮想空間管理部11は、衝突発生の情
報を通信制御部12に出力し、通信制御部12は、衝突
判定結果をネットワーク2を介してユーザ端末3−1に
出力する。ユーザ端末3−1においては、通信制御部3
2が、衝突判定結果を受け付け、仮想空間管理部31に
出力する。このとき、ステップS12において、衝突判
定結果が「衝突発生」であると判定されるので、ステッ
プS15に進む。ステップS15において、仮想空間管
理部31は、オブジェクト・アバタ管理部35が管理す
る現在のアバタの位置情報を、移動する前の座標に戻
す。ステップS16において、仮想空間制御部31は、
UI制御部34に衝突発生の情報を出力する。ステップ
S17において、UI制御部34は、オブジェクト・ア
バタ管理部35で管理されている現在のアバタの位置情
報に基づいて、仮想空間上のアバタの表示位置を更新す
る(アバタを移動する前の位置に戻して表示する)。
【0039】次に、ステップS2における衝突判定部3
6の衝突判定処理の詳細について、図5のフローチャー
トを参照して説明する。なお、図5のステップS21,
S25、およびS26におけるオブジェクト・アバタ管
理部35と仮想空間管理部31の動作を、それぞれオブ
ジェクト・アバタ管理部14と仮想空間管理部11の動
作と読み替えることにより、図3のステップS8におけ
るサーバ1の衝突判定部15の衝突判定処理も説明され
る。
【0040】衝突判定部36は、仮想空間管理部31か
ら移動されるアバタの移動情報が入力されると衝突判定
処理を開始する。ステップS21において、衝突判定部
36は、オブジェクト・アバタ管理部35からアバタ、
またはオブジェクトの位置情報を1つ取得する。ステッ
プS22において、衝突判定部36は、ステップS21
において取得した位置情報が移動されるアバタの位置情
報であるか否かを判定し、移動されるアバタの位置情報
ではないと判定した場合、ステップS23に進む。
【0041】ステップS23において、衝突判定部36
は、移動されるアバタとステップS21で取得した位置
情報に対応するアバタ、またはオブジェクトが衝突する
か否かを判定し、衝突しないと判定した場合、ステップ
S24に進む。ステップS24において、衝突判定部3
6は、移動されるアバタと仮想空間上の全てのアバタ、
およびオブジェクトとの衝突判定が行われたか否かを判
定し、全ての衝突判定が行われたと判定された場合、ス
テップS25に進む。ステップS25において、衝突判
定部36は、仮想空間管理部31に衝突判定結果として
「衝突なし」と出力する。
【0042】ステップS22において、ステップS21
において取得した位置情報が移動されるアバタの位置情
報であると判定された場合、いま移動しようとしている
アバタが、自分自身と衝突するか否か判定する必要はな
いので、ステップS23をスキップし、ステップS24
に進む。ステップS23において、移動されるアバタと
ステップS21で取得した位置情報に対応するアバタ、
またはオブジェクトが衝突すると判定された場合、ステ
ップS26に進む。ステップS26において、衝突判定
部36は、仮想空間管理部31に衝突判定結果として
「衝突発生」を出力する。
【0043】ステップS24において、移動されるアバ
タと仮想空間上の全てのアバタ、およびオブジェクトと
の衝突判定が行われていないと判定された場合、次のア
バタ、またはオブジェクトの位置情報を取得するためス
テップS21に戻る。
【0044】ステップS23の衝突判定の詳細につい
て、図6乃至図8を参照して説明する。図6と図7に示
すように、いま、仮想空間上には、アバタ1,2、およ
びオブジェクト1,2が存在する。これらには、図8に
示すように、円形の領域が設定されている(図8には、
アバタ1とオブジェクト1だけが示されているが、アバ
タ2とオブジェクト2にも、同様に、所定の半径の領域
が設定されている)。衝突は、移動されるアバタ1の領
域と、他のアバタ2、またはオブジェクト1,2の領域
が重なるか否かで判定される。例えば図8に示すよう
に、アバタ1の領域を示す円の中心をA、半径をRA
し、オブジェクト1の領域を示す円の中心をB、半径をR
Bとすれば、移動されるアバタ1とオブジェクト1の距
離ABが、アバタ1の半径RAとオブジェクト1の半径RB
和(RA+RB)よりも小さい場合、衝突発生と判定され、ア
バタ1とオブジェクト1の距離ABが、アバタ1の半径RA
とオブジェクト1の半径RBの和(RA+RB)よりも大きい場
合、衝突は発生しないと判定される。なお、上述の説明
においてはオブジェクトの領域の形状を円形としたが、
オブジェクトの形状に応じて、例えば矩形としてもよ
い。
【0045】次に、図1に示した仮想空間制御システム
のユーザ端末3−1に更新情報保管部37を追加した仮
想空間制御システムについて、図9を参照して説明す
る。更新情報保管部37は、アバタの過去の移動情報を
シーケンス番号を付加し、保管するようになされてい
る。なお、他の各部については、図1に示した仮想空間
制御システムと同様であるので、その説明を省略する。
【0046】更新情報保管部37を追加した仮想空間制
御システムの動作について、図10乃至図12のフロー
チャートを参照して説明する。なお、図10と図12
は、主にユーザ端末3−1の処理を示し、図11は主に
サーバ1の処理を示している。
【0047】ステップS31において、ユーザは、図示
せぬ表示部に表示される仮想空間上のアバタを移動する
操作を行う。UI制御部34は、ユーザの移動操作を受
け付け、その移動操作に対応した移動情報を仮想空間管
理部31に出力する。ステップS32において、仮想空
間管理部31は、衝突判定部36に移動情報を出力し、
衝突判定を行わせる。衝突判定部36は、移動情報とオ
ブジェクト・アバタ管理部35から入力される現在のオ
ブジェクト、およびアバタの位置情報に基づいて、移動
されるアバタと、他のアバタまたはオブジェクトが衝突
するか否かを判定し、その判定結果を仮想空間管理部3
1に出力する。ステップS33において、仮想空間管理
部31は、入力された衝突判定結果が「衝突なし」と判
定されたである場合、ステップS34に進む。
【0048】ステップS34において、仮想空間管理部
31は、オブジェクト・アバタ管理部35で管理される
アバタの位置情報を移動情報に含まれる移動先の位置の
座標に更新する。ステップS35において、更新情報保
管部37は、仮想空間管理部31の制御により、移動情
報にシーケンス番号を付加して保管する。ステップS3
6において、仮想空間管理部31は、衝突判定結果をU
I制御部34に出力する。ステップS37において、U
I制御部34は、オブジェクト・アバタ管理部35で管
理されているアバタの位置情報に基づいて、仮想空間上
のアバタの表示位置を更新する。ステップS38におい
て、仮想空間管理部31は、移動情報を通信制御部32
に出力し、通信制御部32は、移動情報をネットワーク
2を介して、サーバ1に出力する。サーバ1において
は、通信制御部12が移動情報を受け付け、仮想空間管
理部11に出力する。
【0049】ステップS39において、仮想空間管理部
11は、移動情報を衝突判定部15に出力し、衝突判定
を行わせる。衝突判定部15は、移動情報とオブジェク
ト・アバタ管理部14から入力される現在のオブジェク
ト、およびアバタの位置情報に基づいて、衝突が発生す
るか否かを判定し、判定結果を仮想空間管理部11に出
力する。ステップS40において、仮想空間管理部11
は、入力された衝突判定結果が「衝突なし」であると判
定された場合、ステップS41に進む。ステップS41
において、仮想空間管理部11は、オブジェクト・アバ
タ管理部14で管理されるアバタの位置情報を移動情報
に含まれる移動先の位置の座標に更新する。ステップS
42において、仮想空間管理部11は、衝突判定結果と
更新されたアバタの位置情報を通信制御部12に出力
し、通信制御部12は、衝突判定結果と更新されたアバ
タの位置情報をネットワーク2を介してユーザ端末3−
1に出力する。ユーザ端末3−1においては、通信制御
部32が、衝突判定結果と更新されたアバタの位置情報
を受け付け、仮想空間管理部31に出力する。
【0050】ステップS43において、サーバ1から入
力された衝突判定結果が「衝突なし」であると判定され
た場合、ステップS44に進む。ステップS44におい
て、仮想空間管理部31は、入力された衝突判定結果に
対応する移動情報を更新情報保管部37から削除する。
【0051】ステップS33において、衝突判定結果が
「衝突発生」であると判定された場合、ステップS45
に進む。ステップS45において、衝突発生の情報がU
I制御部34に出力され、アバタは移動されず、UI制
御部34は、衝突発生の情報を表示部に表示する。ま
た、同時に図示せぬスピーカからビープ音が発せられ
る。
【0052】ステップS40において、衝突判定部15
が、移動されるアバタと他のアバタ、またはオブジェク
トが衝突すると判定した場合、ステップS46に進む。
ステップS46において、仮想空間管理部11は、衝突
判定結果として「衝突発生」を通信制御部12に出力
し、通信制御部12は、衝突判定結果をネットワーク2
を介してユーザ端末3−1に出力する。ユーザ端末3−
1においては、通信制御部32が、衝突判定結果を受け
付け、仮想空間管理部31に出力する。
【0053】このとき、ステップS43においては、サ
ーバ1から入力された衝突判定結果が「衝突発生」であ
ると判定されるので、ステップS47に進む。ステップ
S47において、仮想空間管理部31は、サーバ1から
入力された衝突判定結果に対応する移動情報が更新情報
保管部37に存在するか否かを判定し、対応する移動情
報が存在しない場合、処理を終了し、対応する移動情報
が存在する場合、ステップS48に進む。ステップS4
8において、仮想空間管理部31は、更新情報保管部3
7からUI制御部34に、サーバ1から入力された衝突
判定結果に対応する移動情報から最新のシーケンス番号
を持つ移動情報までを出力する(アバタが移動した後、
その衝突判定結果がネットワーク2を介して返ってくる
までに期間がかかるので、その間に、アバタがさらに移
動すると、その移動に伴う情報が、更新情報保管部37
に保管されている)。
【0054】ステップS49において、UI制御部34
は、入力された移動情報を逆時系列順に用いて画面表示
を更新する(アバタを移動軌跡に沿って後退表示す
る)。ステップS50において、仮想空間管理部31
は、UI制御部34に出力した移動情報を更新情報保管
部37から削除する。ステップS51において、仮想空
間管理部31は、オブジェクト・アバタ管理部35で管
理される位置情報を移動前の値に更新する(移動前の値
に戻す)。
【0055】次に、図9に示した仮想空間制御システム
と同様の構成であり、ユーザ端末3−1の衝突判定部3
6に衝突予測の機能を付加した仮想空間制御システムに
ついて説明する。この場合、衝突判定部36は、仮想空
間管理部31から入力される移動情報とオブジェクト・
アバタ管理部35が管理するオブジェクト、およびアバ
タの位置情報に基づいて衝突判定を行う。また、衝突判
定部36は、移動されるアバタの移動情報と位置情報か
ら予想移動位置を計算し、オブジェクト・アバタ管理部
35が管理するオブジェクト、および他のアバタの予想
移動位置と比較して衝突する可能性があるか否かを判定
する。
【0056】ユーザ端末3−1は、アバタの予想移動位
置を移動情報とともにサーバ1に出力し、サーバ1は、
入力された予想移動位置をユーザ端末3−2,3−3に
出力する。なお、衝突判定部36以外の各部は、図9に
示した仮想空間制御システムと同様であるので、その説
明を省略する。ユーザ端末3−2,3−3は、ユーザ端
末3−1と同様であるので、その説明を省略する。
【0057】オブジェクト・アバタ管理部35で管理さ
れるオブジェクトとアバタ、それぞれの位置情報、およ
び予想移動位置の一例を示す。 仮想空間内のオブジェクト情報 オブジェクト名 現在の位置 予想移動位置 オブジェクトタイプ名 obj1 (20,20,0) (20,20,0) chair obj2 (80,80,0) (80,80,0) desk 仮想空間内の総オブジェクト数 2 仮想空間内のアバタ情報 アバタ名 現在の位置情報 予想移動位置 アバタタイプ名 ava1 (10,50,0) (15,50,0) man ava2 (50,50,0) (50,55,0) woman 仮想空間内の総アバタ数 2
【0058】次に、図13乃至図15のフローチャート
を参照して、この仮想空間管理システムの動作について
説明する。なお、図13と図15は、主にユーザ端末3
−1の処理を示し、図14は、主にサーバ1の処理を示
している。
【0059】ステップS61において、ユーザは、図示
せぬ表示部に表示される仮想空間上のアバタを移動する
操作を行う。UI制御部34は、ユーザの移動操作を受
け付け、その移動操作に対応した移動情報を仮想空間管
理部31に出力する。ステップS62において、仮想空
間管理部31は、衝突判定部36に移動情報を出力し、
衝突判定および衝突予測を行わせる。
【0060】ステップS62における衝突判定部36の
衝突判定および衝突予測処理の詳細について、図16の
フローチャートを参照して説明する。仮想空間管理部3
1がアバタの移動情報を衝突判定部36に入力すると、
衝突判定部36は、衝突判定および衝突予測処理を開始
する。ステップS91において、衝突判定部36は、オ
ブジェクト・アバタ管理部35からアバタ、またはオブ
ジェクトの位置情報を1つ取得する。なお、この位置情
報の中には、他のユーザ端末3−2,3−3のアバタの
予想移動位置も含まれている。ステップS92におい
て、衝突判定部36は、ステップS91において取得し
た位置情報が移動されるアバタの位置情報であるか否か
を判定し、移動されるアバタの位置情報ではないと判定
した場合、ステップS93に進む。ステップS93にお
いて、衝突判定部36は、移動されるアバタとステップ
S91で取得した位置情報に対応するアバタ、またはオ
ブジェクトが衝突するか否かを判定し、衝突しないと判
定した場合、ステップS94に進む。
【0061】ステップS94において、衝突判定部36
は、更新情報保管部37が管理する移動情報とオブジェ
クト・アバタ管理部35が管理する現在の位置情報から
次の移動位置(予想移動位置)を計算する。なお、この
場合、アバタの移動量は線形であるとして計算される。
例えば、現在のアバタの位置の座標をT0(0,0,0)、移動
先の位置の座標をT1(10,5,0)とした場合、予想移動位
置の座標は、移動先の位置T1(10,5,0)に、T0からT1
への変位量[10,5,0]を加えたT2(20,10,0)となる。
【0062】さらに、衝突判定部36は、ステップS9
1で取得した位置情報(他のアバタの予想移動位置の情
報を含む)に対応するアバタまたはオブジェクトと、移
動されるアバタが、同じタイミングでそれぞれの予想移
動位置に移動した場合、衝突するか否かを判定し、衝突
しないと判定した場合、ステップS95に進む。
【0063】ステップS95において、衝突判定部36
は、移動されるアバタと仮想空間内の全てのアバタ、お
よびオブジェクトとの衝突判定および衝突予測を行った
か否かを判定し、全ての衝突判定および衝突予測を行っ
たと判定した場合、ステップS96に進む。ステップS
96において、衝突判定部36は、仮想空間管理部31
に衝突判定結果として「衝突なし」と出力する。
【0064】ステップS92において、ステップS91
において取得した位置情報が移動されるアバタの位置情
報である(同一の位置情報である)と判定された場合、
ステップS93,S94をスキップし、ステップS95
に進む。
【0065】ステップS93において、移動されるアバ
タとステップS91で取得した位置情報に対応するアバ
タ、またはオブジェクトが衝突すると判定された場合、
ステップS97に進む。ステップS97において、衝突
判定部36は、仮想空間管理部31に衝突判定結果とし
て「衝突発生」と出力する。
【0066】ステップS94において、移動されるアバ
タとステップS91で取得した位置情報に対応するアバ
タ、またはオブジェクトが、予測移動位置において衝突
すると判定された場合、ステップS98に進む。ステッ
プS98において、衝突判定部36は、仮想空間管理部
31に衝突予想結果として「衝突発生の可能性あり」と
出力する。
【0067】ステップS95において、移動されるアバ
タと仮想空間内の全てのアバタ、およびオブジェクトと
の衝突判定が行われていないと判定された場合、次のア
バタ、またはオブジェクトの位置情報を取得するために
ステップS91に戻る。
【0068】図13の説明に戻る。ステップS63にお
いて、衝突判定結果が「衝突なし」であると判定された
場合、ステップS64に進む。ステップS64におい
て、衝突予測の結果が「衝突発生の可能性あり」である
と判定された場合、サーバ1から衝突判定結果が入力さ
れるまで処理を保留するために、ステップS65乃至S
68をスキップし、衝突予測結果が「衝突発生の可能性
あり」ではない場合、ステップS65に進む。
【0069】ステップS65において、仮想空間管理部
31は、オブジェクト・アバタ管理部35で管理される
アバタの位置情報を移動情報に含まれる移動先に位置の
座標に更新する。ステップS66において、更新情報保
管部37は、仮想空間管理部31の制御により、移動情
報にシーケンス番号を付加して保管する。ステップS6
7において、仮想空間管理部31は、衝突判定結果をU
I制御部34に出力する。ステップS68において、U
I制御部34は、オブジェクト・アバタ管理部35で管
理されているアバタの位置情報に基づいて、表示画面上
のアバタの位置を更新する。ステップS69において、
仮想空間管理部31は、移動情報(この移動情報には、
予想移動位置の情報も含まれる)を通信制御部32に出
力し、通信制御部32は、移動情報をネットワーク2を
介して、サーバ1に出力する。サーバ1においては、通
信制御部12が、移動情報を受け付け、仮想空間管理部
11に出力する。
【0070】ステップS70において、仮想空間管理部
11は、移動情報を衝突判定部15に出力し、衝突判定
を行わせる。衝突判定部15は、移動情報とオブジェク
ト・アバタ管理部14で管理される現在のオブジェク
ト、およびアバタの位置情報に基づいて、衝突(衝突発
生の可能性ではなく、実際の衝突)が発生するか否かを
判定し、衝突判定結果を仮想空間管理部11に出力す
る。ステップS71において、衝突判定結果が「衝突な
し」であると判定された場合、ステップS72に進む。
ステップS72において、仮想空間管理部11は、オブ
ジェクト・アバタ管理部14で管理されるアバタの位置
情報を更新する。ステップS73において、仮想空間管
理部11は、衝突判定結果と更新されたアバタの位置情
報を通信制御部12に出力し、通信制御部12は、衝突
判定結果と更新されたアバタの位置情報をネットワーク
2を介してユーザ端末3−1乃至3−3に出力する。ユ
ーザ端末3−1においては、通信制御部32が、衝突判
定結果と更新されたアバタの位置情報を受け付け、仮想
空間管理部31に出力する。また、このとき、ユーザ端
末3−2,3−3には、ユーザ端末3−1から伝送され
てきた予想移動位置の情報が出力される。
【0071】ステップS74において、サーバ1から入
力された衝突判定結果が「衝突なし」であると判定され
た場合、ステップS75に進む。ステップS75におい
て、ステップS64における衝突予測の結果が、「衝突
発生の可能性あり」ではないと判定された場合、ステッ
プS76に進む。ステップS76において、仮想空間管
理部31は、衝突判定結果に対応する移動情報を更新情
報保管部37から削除する。この場合、ステップS65
で、既に移動情報は更新されているので処理を終了す
る。
【0072】ステップS75において、ステップS64
における衝突予測の結果が「衝突発生の可能性あり」で
あると判定された場合、ステップS77に進む。ステッ
プS77において、仮想空間管理部31は、オブジェク
ト・アバタ管理部35で管理されるアバタの位置情報を
更新する。ステップS78において、仮想空間管理部3
1は、衝突判定結果をUI制御部34に出力する。ステ
ップS79において、UI制御部34は、オブジェクト
・アバタ管理部35で管理されているアバタの位置情報
に基づいて、表示画面上のアバタの位置を更新する。
【0073】ステップS63において、衝突判定結果が
「衝突発生」であると判定された場合、ステップS80
に進む。ステップS80において、衝突発生の情報がU
I制御部34に出力され、UI制御部34は、衝突発生
の情報を表示部に表示する。
【0074】ステップS71において、衝突判定結果が
「衝突発生」であると判定された場合、ステップS81
に進む。ステップS81において、仮想空間管理部11
は、衝突発生の情報を通信制御部12に出力し、通信制
御部12は、衝突発生情報をネットワーク2を介してユ
ーザ端末3−1に出力する。ユーザ端末3−1において
は、通信制御部32が、衝突発生情報を受け付け、仮想
空間管理部31に出力する。このとき、ステップS74
においては、衝突判定結果が「衝突発生」であると判定
されるので、ステップS82に進む。
【0075】ステップS82において、仮想空間管理部
31は、サーバ1から入力された判定結果に対応する移
動情報が更新情報保管部37に存在するか否かを判断
し、対応する移動情報が存在しない場合、処理を終了
し、対応する移動情報が存在する場合、ステップS83
に進む。ステップS83において、仮想空間管理部31
は、更新情報保管部37が保管するサーバ1から入力さ
れた衝突判定結果に対応する移動情報から最新の移動情
報までをUI制御部34に出力する。ステップS84に
おいて、UI制御部34は、入力された移動情報をシー
ケンス番号の逆順に用いてアバタの表示位置を更新する
(アバタを移動軌跡に沿って後退させる)。ステップS
85において、仮想空間管理部31は、更新情報管理部
37からUI制御部34に出力した移動情報を、更新情
報保管部37から削除する。ステップS86において、
仮想空間管理部31は、オブジェクト・アバタ管理部3
5で管理されている位置情報を移動する前の座標に更新
する(元に戻す)。
【0076】以上の説明のように、ユーザ端末3−1の
衝突判定部36が、衝突予測を行い、衝突発生の可能性
があると判定した場合、サーバ1から衝突判定結果が入
力されるまでアバタの位置の更新処理(オブジェクト・
アバタ管理部35が管理するアバタの位置情報の更新、
および表示部に表示されるアバタの位置の更新)を保留
するので、ユーザ端末3−1における衝突判定結果とサ
ーバ1における衝突判定結果が異なるために生ずる修正
処理(アバタを元の位置に後退させる)回数を減少させ
ることができる。
【0077】なお、仮想空間には、3次元の座標が設定
されており、オブジェクト、およびアバタの位置は、3
次元座標で表される。図7と図17に示すように、仮想
空間の背景画像(例えば、広い室内の画像)は、遠近法
を用いた2次元画像であり、他の背景画像(例えば、商
店街の画像)に変更可能である。仮想空間の背景画像
は、仮想空間の外部に位置する視点から仮想空間を見た
画像である。図18と図19に示すオブジェクトや、図
20に示すアバタの2次元画像は、背景画像上に遠近法
を用いて表される。すなわち、図7または図17に示す
ように、視点から異なる距離にあるアバタを比較した場
合、視点から遠方にあるアバタの方が小さく表示され
る。なお、図20に示すように、アバタの画像として
は、アバタの進行方向に対応して8種類の画像が用意さ
れており、(図20には、5種類の画像を示す)、適
宜、所定のものが選択され、表示される。
【0078】上記した各種の処理はコンピュータにより
行わせることができる。そのコンピュータのプログラム
は、フロッピディスク、光ディスク、ハードディスクな
どの記録媒体に記録し、ユーザに提供することができ
る。
【0079】
【発明の効果】請求項1に記載の仮想空間制御装置、請
求項4に記載の仮想空間制御方法、および請求項7に記
載の記録媒体によれば、ユーザ端末においても、アバタ
の衝突判定を行うようにしたので、アバタの移動が円滑
に行われるとともに、仮想空間制御システム全体の処理
能力の低下を防止することができる。
【図面の簡単な説明】
【図1】本発明を適用した仮想空間制御システムの構成
を示すブロック図である。
【図2】図1の仮想空間制御システムの移動処理を説明
するフローチャートである。
【図3】図1の仮想空間制御システムの移動処理を説明
するフローチャートである。
【図4】図2と図3のフローチャートの各ステップに対
応する情報の入出力を示す図である。
【図5】図2のステップS3の衝突判定処理の詳細を説
明するフローチャートである。
【図6】仮想空間の平面図である。
【図7】図6に対応する仮想空間の正面図である。
【図8】衝突判定処理を説明する図である。
【図9】本発明を適用した仮想空間制御システムの他の
構成を示すブロック図である。
【図10】図9の仮想空間制御システムの移動処理を説
明するフローチャートである。
【図11】図9の仮想空間制御システムの移動処理を説
明するフローチャートである。
【図12】図9の仮想空間制御システムの移動処理を説
明するフローチャートである。
【図13】図9の衝突判定部36に衝突予測機能を付加
した仮想空間制御システムの移動処理を説明するフロー
チャートである。
【図14】図9の衝突判定部36に衝突予測機能を付加
した仮想空間制御システムの移動処理を説明するフロー
チャートである。
【図15】図9の衝突判定部36に衝突予測機能を付加
した仮想空間制御システムの移動処理を説明するフロー
チャートである。
【図16】図13のステップS63,S64の衝突判定
および衝突予測処理の詳細を説明するフローチャートで
ある。
【図17】仮想空間を示す図である。
【図18】オブジェクトを示す図である。
【図19】オブジェクトを示す図である。
【図20】アバタを示す図である。
【図21】従来の仮想空間制御システムの一例の構成を
示す概略図である。
【図22】仮想空間を示す図である。
【図23】オブジェクトを示す図である。
【図24】オブジェクトを示す図である。
【図25】従来の仮想空間制御システムの一例の構成を
示すブロック図である。
【図26】図25の仮想空間制御システムの移動処理を
説明するフローチャートである。
【図27】図25のフローチャートの各ステップに対応
する情報の入出力を示す図である。
【符号の説明】
1 サーバ 2 ネットワーク 3 ユーザ端末 11 仮想空間管理部 12 通信制御部 13 仮想空間情報格納部 14 オブジェクト・アバタ管理部 15 衝突判定部 31 仮想空間管理部 32 通信制御部 33 仮想空間情報格納部 34 UI制御部 35 オブジェクト・アバタ管理部 36 衝突判定部 37 更新情報保管部

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 所定のネットワークを介して接続された
    サーバとユーザ端末から構成され、複数のユーザが共有
    する仮想空間を制御する仮想空間制御装置において、 前記サーバは、 前記仮想空間上で前記ユーザを表すアバタの移動情報を
    収集する収集手段と、 前記仮想空間上のオブジェクトと前記アバタの現在の位
    置情報を管理する位置情報管理手段と、 前記アバタの位置情報と前記オブジェクトの位置情報に
    基づいて、移動するアバタの衝突判定を行う第1衝突判
    定手段と、 前記ユーザ端末に前記アバタの位置情報を出力する出力
    手段とを備え、 前記ユーザ端末は、 前記出力手段から出力された前記アバタの位置情報と前
    記オブジェクトの位置情報に基づいて、前記移動するア
    バタの衝突判定を行う第2衝突判定手段を備えることを
    特徴とする仮想空間制御装置。
  2. 【請求項2】 前記ユーザ端末は、前記アバタの過去の
    移動情報を保管する移動情報保管手段と、 前記第1衝突判定手段と前記第2衝突判定手段による衝
    突判定結果が異なる場合、前記第2衝突判定手段の衝突
    判定結果に基づく処理を修正する修正手段とをさらに備
    えることを特徴とする請求項1に記載の仮想空間制御装
    置。
  3. 【請求項3】 前記ユーザ端末は、 前記移動情報保管手段が保管する過去の移動情報に基づ
    いて、前記アバタの移動位置を予測する移動位置予測手
    段と、 前記移動位置予測手段が予測する移動位置に基づいて衝
    突予測を行う衝突予測手段とをさらに備えることを特徴
    とする請求項2に記載の仮想空間制御装置。
  4. 【請求項4】 所定のネットワークを介して接続された
    サーバとユーザ端末から構成され、複数のユーザが共有
    する仮想空間を制御する仮想空間制御方法において、 前記サーバは、 前記仮想空間上で前記ユーザを表すアバタの移動情報を
    収集する収集ステップと、 前記仮想空間上のオブジェクトと前記アバタの現在の位
    置情報を管理する位置情報管理ステップと、 前記アバタの位置情報と前記オブジェクトの位置情報に
    基づいて、移動するアバタの衝突判定を行う第1衝突判
    定ステップと、 前記ユーザ端末に前記アバタの位置情報を出力する出力
    ステップとを備え、 前記ユーザ端末は、 前記出力ステップから出力された前記アバタの位置情報
    と前記オブジェクトの位置情報に基づいて、前記移動す
    るアバタの衝突判定を行う第2衝突判定ステップを備え
    ることを特徴とする仮想空間制御方法。
  5. 【請求項5】 前記ユーザ端末は、 前記アバタの過去の移動情報を保管する移動情報保管ス
    テップと、 前記第1衝突判定ステップと前記第2衝突判定ステップ
    における衝突判定結果が異なる場合、前記第2衝突判定
    ステップの衝突判定結果に基づく処理を修正する修正ス
    テップとをさらに備えることを特徴とする請求項4に記
    載の仮想空間制御方法。
  6. 【請求項6】 前記ユーザ端末は、 前記移動情報保管ステップで保管する過去の移動情報に
    基づいて、前記アバタの移動位置を予測する移動位置予
    測ステップと、 前記移動位置予測ステップで予測する移動位置に基づい
    て衝突予測を行う衝突予測ステップとをさらに備えるこ
    とを特徴とする請求項5に記載の仮想空間制御方法。
  7. 【請求項7】 複数のユーザが共有する仮想空間上で前
    記ユーザを表すアバタの移動情報を収集し、前記仮想空
    間上のオブジェクトと前記アバタの現在の位置情報を管
    理し、前記アバタの位置情報と前記オブジェクトの位置
    情報に基づいて、移動するアバタの衝突判定を行うとと
    もに、前記アバタの位置情報を出力するサーバに、所定
    のネットワークを介して接続された前記仮想空間を制御
    する仮想空間制御装置に使用するコンピュータプログラ
    ムを記録する記録媒体において、 前記アバタの移動情報を検出し、前記サーバに通知する
    検出ステップと、 前記サーバから供給された前記アバタの位置情報と前記
    オブジェクトの位置情報、並びに前記検出ステップで検
    出した前記アバタの移動位置に基づいて、前記移動する
    アバタの衝突判定を行う衝突判定ステップとを備えるコ
    ンピュータプログラムを記録することを特徴とする記録
    媒体。
  8. 【請求項8】 前記ユーザ端末は、 前記アバタの過去の移動情報を保管する移動情報保管ス
    テップと、 前記サーバにおける衝突判定結果と前記衝突判定ステッ
    プにおける衝突判定結果が異なる場合、前記衝突判定ス
    テップの衝突判定結果に基づく処理を修正する修正ステ
    ップとをさらに備えることを特徴とする請求項7に記載
    の記録媒体。
  9. 【請求項9】 前記移動情報保管ステップで保管する過
    去の移動情報に基づいて、前記アバタの移動位置を予測
    する移動位置予測ステップと、 前記移動位置予測ステップで予測する移動位置に基づい
    て衝突予測を行う衝突予測ステップとをさらに備えるこ
    とを特徴とする請求項8に記載の記録媒体。
JP28099897A 1997-10-15 1997-10-15 仮想空間制御システム、仮想空間制御装置および方法、並びに記録媒体 Expired - Fee Related JP3562554B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28099897A JP3562554B2 (ja) 1997-10-15 1997-10-15 仮想空間制御システム、仮想空間制御装置および方法、並びに記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28099897A JP3562554B2 (ja) 1997-10-15 1997-10-15 仮想空間制御システム、仮想空間制御装置および方法、並びに記録媒体

Publications (2)

Publication Number Publication Date
JPH11120381A true JPH11120381A (ja) 1999-04-30
JP3562554B2 JP3562554B2 (ja) 2004-09-08

Family

ID=17632849

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28099897A Expired - Fee Related JP3562554B2 (ja) 1997-10-15 1997-10-15 仮想空間制御システム、仮想空間制御装置および方法、並びに記録媒体

Country Status (1)

Country Link
JP (1) JP3562554B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001325169A (ja) * 2000-05-15 2001-11-22 Vasara:Kk タグ付き言語を用いたサイバースペースシステム
KR20140119682A (ko) * 2011-08-03 2014-10-10 디즈니엔터프라이지즈,인크. 가상 세계에 대한 구역 기반 포지셔닝
JP2021021987A (ja) * 2019-07-24 2021-02-18 グリー株式会社 動画アプリケーションプログラム、動画表示方法、動画配信システム及び情報処理装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001325169A (ja) * 2000-05-15 2001-11-22 Vasara:Kk タグ付き言語を用いたサイバースペースシステム
KR20140119682A (ko) * 2011-08-03 2014-10-10 디즈니엔터프라이지즈,인크. 가상 세계에 대한 구역 기반 포지셔닝
US9770661B2 (en) 2011-08-03 2017-09-26 Disney Enterprises, Inc. Zone-based positioning for virtual worlds
JP2021021987A (ja) * 2019-07-24 2021-02-18 グリー株式会社 動画アプリケーションプログラム、動画表示方法、動画配信システム及び情報処理装置

Also Published As

Publication number Publication date
JP3562554B2 (ja) 2004-09-08

Similar Documents

Publication Publication Date Title
CN1132117C (zh) 一种多用户交互虚拟环境系统
EP2228708A2 (en) Information processing apparatus, information processing method and program
CN111556283B (zh) 监控摄像头管理方法、装置、终端及存储介质
CN107491522B (zh) 一种二维地图与三维地图之间的切换方法及装置
WO2021196833A1 (zh) 文件夹界面切换方法和装置
JP4166767B2 (ja) 情報処理装置及びポインタの移動表示方法、プログラム並びに記録媒体
JP2000276608A (ja) 図形編集装置、および図形編集方法、並びにそのためのプログラムを格納した記憶媒体
JPWO2019208702A1 (ja) 自由視点画像生成方法、自由視点画像表示方法、自由視点画像生成装置及び表示装置
CN111135558B (zh) 游戏同步方法、游戏客户端、计算机存储介质及电子设备
US9075852B2 (en) Search system, information processing device, method for controlling information processing device, program, and information recording medium
CN105841704A (zh) 一种移动路径的确定方法及装置
JP2021152724A (ja) 情報処理装置、情報処理方法、およびプログラム
JP3562554B2 (ja) 仮想空間制御システム、仮想空間制御装置および方法、並びに記録媒体
WO2024022246A1 (zh) 更新虚拟墙的方法、装置、电子设备和存储介质
US6115045A (en) Information processing system and a network type information processing system
JP3868867B2 (ja) アセンブリ編集方法及び媒体
JP3210553B2 (ja) 情報提示方法
EP1640921A2 (en) Image processing device and method for real time rendering of moving images
JP2000029885A (ja) 類似画像検索方法および装置
US20020078133A1 (en) Information collection apparatus and method
JPH11184790A (ja) サイバースペースシステムおよびユーザ端末にサイバースペースを提供するプログラムを格納した記録媒体
US7103658B2 (en) Rendering calculation processing status monitoring program, and storage medium, apparatus, and method therefor
KR19990084142A (ko) 홈페이지 화면 이미지 자동변경 제어방법
JP5821919B2 (ja) 情報処理装置、及びプログラム
JP7240433B2 (ja) 情報処理装置、情報処理装置の制御方法および情報処理システム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040317

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040512

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040525

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080611

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090611

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees