JP3562555B2 - Virtual space control device and method, and recording medium - Google Patents

Virtual space control device and method, and recording medium Download PDF

Info

Publication number
JP3562555B2
JP3562555B2 JP28099997A JP28099997A JP3562555B2 JP 3562555 B2 JP3562555 B2 JP 3562555B2 JP 28099997 A JP28099997 A JP 28099997A JP 28099997 A JP28099997 A JP 28099997A JP 3562555 B2 JP3562555 B2 JP 3562555B2
Authority
JP
Japan
Prior art keywords
virtual space
avatar
window
display
function
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.)
Expired - Fee Related
Application number
JP28099997A
Other languages
Japanese (ja)
Other versions
JPH11120373A (en
Inventor
伸 蟻田
意之 加藤
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
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 filed Critical Omron Corp
Priority to JP28099997A priority Critical patent/JP3562555B2/en
Publication of JPH11120373A publication Critical patent/JPH11120373A/en
Application granted granted Critical
Publication of JP3562555B2 publication Critical patent/JP3562555B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)
  • Digital Computer Display Output (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、仮想空間制御装置および方法、並びに記録媒体に関し、特に、ウィンドウの開閉を自動化することにより、ユーザの操作を簡略化することができるようにした仮想空間制御装置および方法、並びに記録媒体に関する。
【0002】
【従来の技術】
複数のユーザが共有する仮想空間(ネットワークとコンピュータを使って実現する社会、いわゆるサイバースペース)を制御する仮想空間制御システムは、図19に示すように、仮想空間を管理する1つのサーバ1と、インターネットに代表されるネットワーク2を介してサーバ1に接続される複数のユーザ端末(クライアント)3−1乃至3−3(以下、各ユーザ端末3−1乃至3−3を個々に区別する必要がない場合、単にユーザ端末3と記述する)から構成される。なお、この明細書において、システムの用語は、複数の装置で構成される全体の装置を表すものとして使用する。
【0003】
仮想空間上には、例えば図20に示すように、複数のオブジェクト(図21乃至図23に示すビデオテープデッキ、テレビジョン受像機などよりなるAV機器、机、または椅子)と、アバタ(仮想空間内においてユーザの代わりに行動する。例えば移動、挙手等を行う)が存在する。各オブジェクトには、オブジェクトの形態に応じた機能(例えば、AV機器のオブジェクトには、録画機能、および録画した画像を再生する再生機能等)が設けられ、アバタには、他のアバタとチャットを行う機能(相互に文字を送信し、会話を行う機能)が設けられている。なお、アバタは、ユーザの操作に対応して仮想空間上を移動する。
【0004】
従来の仮想空間制御システムの構成の一例について、図24を参照して説明する。サーバ1は、仮想空間管理部11、通信制御部12、仮想空間情報格納部13、オブジェクト・アバタ管理部14、および衝突判定部15から構成される。仮想空間管理部11は、オブジェクト・アバタ管理部14、および衝突判定部15を制御し、通信制御部12から入力されたユーザ端末3−1からの情報(仮想空間への参加要求、チャット開始要求、またはアバタの移動情報等)の処理を行わせ、その処理結果を通信制御部12に出力するようになされている。さらに、仮想空間管理部11は、仮想空間に参加しているユーザの名前、およびユーザに対応するアバタの名前を管理している。
【0005】
通信制御部12は、ネットワーク2を介したユーザ端末3との通信を制御するようになされている。仮想空間情報格納部13には、仮想空間の初期状態のデータ(オブジェクトの座標等)、並びに、空間背景、オブジェクト、およびアバタの画像データが格納されている。オブジェクト・アバタ管理部14は、現在の仮想空間上のオブジェクトとアバタの位置等の情報を管理する。衝突判定部15は、アバタが移動された場合、オブジェクト・アバタ管理部14が管理する位置情報に基づいて、移動されたアバタと、他のアバタまたはオブジェクトが衝突するか否かを判定する。
【0006】
ユーザ端末3−1は、仮想空間管理部31、通信制御部32、UI(User Interface)制御部33、仮想空間情報格納部35、およびオブジェクト・アバタ管理部36から構成される。仮想空間管理部31は、UI制御部33、およびオブジェクト・アバタ管理部36を制御し、各部から入力された情報(ユーザによる操作、サーバ1からの衝突判定の結果、または他のユーザに対応するアバタの位置情報等)の処理を行うようになされている。通信制御部32は、ネットワーク2を介したサーバ1との通信を制御する。UI制御部33は、図示せぬ表示部に仮想空間を表示させるとともに、ユーザの操作(アバタの移動等)を受け付けるようになされている。
【0007】
仮想空間情報格納部35には、仮想空間を表示するための空間背景、オブジェクト、およびアバタの画像データが格納されている。オブジェクト・アバタ管理部36は、現在の仮想空間上のオブジェクトとアバタの位置等の情報を管理する。なお、ユーザ端末3−2,3−3の構成は、ユーザ端末3−1の構成と同様であるので、その説明を省略する。
【0008】
次に、この仮想空間制御システムにおけるオブジェクトの機能を起動する処理について、図25のフローチャートと図26を参照して説明する。なお、図26は図25のフローチャートの各ステップに対応する情報の入出力を太線の矢印で示している。ステップS91において、ユーザは、マウスでクリックすることにより、図示せぬ表示部に表示される仮想空間上のオブジェクトを選択する(例えば、AV機器のオブジェクトを選択する)。UI制御部33は、ユーザの選択を受け付け、そのオブジェクト選択情報を仮想空間管理部31に出力する。ステップS92において、ユーザは、図示せぬ表示画面上部のメニューの文字をマウスでクリックし、表示されたメニューの中から「機能一覧ウィンドウ表示」を選択する。UI制御部33は、メニューの中から「機能一覧ウィンドウ表示」が選択されたことを仮想空間管理部31に出力する。
【0009】
ステップS93において、仮想空間管理部31は、UI制御部33を制御し、選択されたオブジェクトに対応する機能一覧ウィンドウを表示部に表示させる(AV機器のオブジェクトの場合、「再生」、および「録画」の2項目の機能がウィンドウに表示される)。ステップS94において、ユーザは、表示部に表示された機能一覧ウィンドウの中から実行する機能(例えば、再生機能)をマウス等で選択する。UI制御部33は、ユーザの機能選択操作を受け付け、機能選択情報を仮想空間管理部31に出力する。ステップS95において、仮想空間管理部31は、入力された機能選択情報に対応する機能プログラム(この場合、再生機能プログラム)をオブジェクト・アバタ管理部36から読み出して実行する。
【0010】
なお、ステップS91乃至S94の各ステップの途中において、オブジェクトの機能を起動する処理を中止する場合、ユーザは、機能の選択を解除し、表示されている機能一覧ウィンドウを閉じる等の操作を行う必要がある。
【0011】
【発明が解決しようとする課題】
このように、仮想空間上のオブジェクトに設定された機能を起動するためのウィンドウを表示、または消去するには、ユーザは、複数の操作を実行する必要があり、操作性が悪い課題があった。
【0012】
本発明はこのような状況に鑑みてなされたものであり、オブジェクトとアバタが所定の距離になると自動的にウィンドウを開閉することにより、ユーザの操作性を改善するものである。
【0013】
【課題を解決するための手段】
本発明の仮想空間制御装置は、想空間上でユーザを表すアバタが、仮想空間上の所定のオブジェクトまたはアバタから所定の距離の領域に進入したことを検知する検知手段と、検知手段の検知結果に対応して、仮想空間上のオブジェクトに設定された機能の一覧を示すウィンドウを表示する表示手段と、ウィンドウに示された機能のうち、指定されたものを処理する機能処理手段とを備えることを特徴とする。
【0014】
本発明の仮想空間制御方法は、想空間上でユーザを表すアバタが、仮想空間上の所定のオブジェクトまたはアバタから所定の距離の領域に進入したことを検知する検知ステップと、検知ステップの検知結果に対応して、仮想空間上のオブジェクトに設定された機能の一覧を示すウィンドウを表示する表示ステップと、ウィンドウに示された機能のうち、指定されたものを処理する機能処理ステップとを備えることを特徴とする。
【0015】
本発明の記録媒体に記録されているプログラムは、想空間上でユーザを表すアバタが、仮想空間上の所定のオブジェクトまたはアバタから所定の距離の領域に進入したことを検知する検知ステップと、検知ステップの検知結果に対応して、仮想空間上のオブジェクトに設定された機能の一覧を示すウィンドウを表示する表示ステップと、ウィンドウに示される機能のうち、指定されたものを処理する機能処理ステップとを備えるとを特徴とする。
【0016】
本発明の仮想空間制御装置および方法、並びに記録媒体に記録されているプログラムにおいては、想空間上でユーザを表すアバタが、仮想空間上の所定のオブジェクトまたはアバタから所定の距離の領域に進入したことが検知され知結果に対応して、仮想空間上のオブジェクトに設定された機能の一覧を示すウィンドウが表示されィンドウに示された機能のうち、指定されたもの処理される
【0018】
【発明の実施の形態】
以下に本発明の実施の形態を説明するが、特許請求の範囲に記載の発明の各手段と以下の実施の形態との対応関係を明らかにするために、各手段の後の括弧内に、対応する実施の形態(但し一例)を付加して本発明の特徴を記述すると、次のようになる。
【0019】
即ち、請求項1に記載の仮想空間制御装置は、複数のユーザが共有する仮想空間を制御する仮想空間制御装置において、仮想空間上でユーザを表すアバタが、オブジェクトまたはアバタの所定の距離の領域に進入したことを検知する検知手段(例えば、図1の衝突判定部37)と、検知手段の検知結果に対応して、仮想空間上のオブジェクトに設定された機能の一覧を示すウィンドウを表示する表示手段(例えば、図1のUI制御部33)と、ウィンドウに表示される機能のうち、指定されたものを処理する機能処理手段(例えば、図1の仮想空間管理部31)とを備えることを特徴とする。
【0020】
また、請求項2に記載の仮想空間制御装置は、アバタの移動に対応してウィンドウを消去する消去手段(例えば、図1のUI制御部33)をさらに備えることを特徴とする。
【0021】
さらに、請求項に記載の仮想空間制御装置は、ユーザの操作を受け付ける受付手段(例えば、図1の感性情報入力部34)と、受付手段が受け付けた操作に基づいて、ウィンドウの表示を抑制する抑制手段(例えば、図1の感性情報入力部34)とをさらに備えることを特徴とする。
【0022】
但し勿論この記載は、各手段を記載したものに限定することを意味するものではない。
【0023】
本発明を適用した仮想空間制御システムの構成について、図1を参照して説明する。サーバ1の構成は、図24における場合と同様であるので、その説明は省略する。
【0024】
ユーザ端末3−1の基本的構成も図24における場合と同様である。ただし、この構成例においては、図24における構成以外に、感性情報入力部34と衝突判定部37が設けられている。感性情報入力部34は、ユーザがマウスの右ボタンを押す圧力を検知し、その圧力に対応した情報をUI制御部33に出力するようになされている。衝突判定部37は、仮想空間管理部31から入力されるアバタ移動情報(移動されるアバタ名と移動先の位置)とオブジェクト・アバタ管理部35から入力される現在のオブジェクト、およびアバタの位置情報に基づいて衝突が発生するか否かを判定し、衝突判定結果を仮想空間管理部31に出力する。その他の構成は、図24における場合と同様である。なお、ユーザ端末3−2,3−3の構成は、ユーザ端末3−1の構成と同様であるので、その説明を省略する。
【0025】
次に、各部で管理される情報の構造の一例を示す。サーバ1の仮想空間管理部11は、サーバ1に接続しているユーザ端末名、および接続しているユーザ数を管理する。
接続しているユーザ端末名
client_machine_1
client_machine_2
接続しているユーザ数

【0026】
仮想空間情報格納部13は、仮想空間情報、オブジェクト情報、およびアバタ情報を管理する。
仮想空間情報

Figure 0003562555
【0027】
オブジェクト・アバタ管理部14は、現在のオブジェクト、およびアバタの位置情報を管理する。
Figure 0003562555
【0028】
ユーザ端末3−1の仮想空間管理部31は、接続しているサーバ名を管理する。
サーバ名
server_machine_1
【0029】
仮想空間情報格納部35は、仮想空間情報、オブジェクト情報、およびアバタ情報を管理する。
Figure 0003562555
【0030】
オブジェクト・アバタ管理部36は、現在のオブジェクトとアバタの位置情報を管理する。
Figure 0003562555
【0031】
次に、この仮想空間制御システムにおけるオブジェクト、またはアバタの機能起動処理について、図2のフローチャートを参照して説明する。ステップS1において、ユーザは、図示せぬ表示部に表示される仮想空間上の自分に対応するアバタを移動する操作を行う(例えば、アバタをマウスの右ボタンでクリックし、移動したい方向にドラッグする)。なお、当然、他のユーザ対応するアバタの移動操作はできない。また、この操作が行われているとき、感性情報入力部34は、マウスの右ボタンを押す圧力を検知する。UI制御部33は、ユーザの移動操作を受け付け、その移動操作に対応した移動情報を仮想空間管理部31に出力する。ステップS2において、仮想空間管理部31は、衝突判定部37に衝突判定を行わせる。
【0032】
ステップS2における衝突判定処理の詳細について、図3のフローチャートを参照して説明する。ステップS21において、仮想空間管理部31は、アバタの移動情報を衝突判定部37に出力する。ステップS22において、衝突判定部37は、オブジェクト・アバタ管理部36から移動されるアバタ以外のアバタ、またはオブジェクトの位置情報を1つ取得する。ステップS23において、衝突判定部37は、移動されるアバタとステップS22において取得された位置情報に対応するアバタ、またはオブジェクトが衝突するか否かを判定し、衝突しないと判定した場合、ステップS24に進む。
【0033】
ステップS24において、衝突判定部37は、移動されるアバタがステップS22において取得された位置情報に対応するアバタ、またはオブジェクトの有する領域に進入するか否かを判定し、進入しないと判定した場合、ステップS25に進む。ステップS25において、衝突判定部37は、移動されるアバタと仮想空間上の全てのアバタ、およびオブジェクトとの衝突判定を行ったか否かを判定する。ステップS25において、移動されるアバタと仮想空間上の全てのアバタ、およびオブジェクトとの衝突判定が行われていないと判定された場合、次のアバタ、またはオブジェクトの位置情報を取得するために、ステップS22に戻る。
【0034】
ステップS25において、全てのアバタ、およびオブジェクトと衝突判定を行ったと判定した場合、ステップS26に進む。ステップS26において、衝突判定部37は、仮想空間管理部31に衝突判定結果として「衝突なし」を出力する。
【0035】
ステップS23において、移動されるアバタとステップS22で取得された位置情報に対応するアバタ、またはオブジェクトが衝突すると判定された場合、ステップS27に進む。ステップS27において、衝突判定部37は、仮想空間管理部31に衝突判定結果として「衝突発生」を出力する。
【0036】
ステップS24において、移動されるアバタがステップS22で取得された位置情報に対応するアバタ、またはオブジェクトの領域に進入すると判定された場合、ステップS28に進む。ステップS28において、衝突判定部37は、仮想空間管理部31に衝突判定結果として「衝突なし、進入発生」と、進入した領域に対応するアバタ、またはオブジェクトの名前(ID)を出力する。
【0037】
次に、衝突判定の基準について、図4乃至図6を参照して説明する。図4は、仮想空間の平面図であり、この例の場合、アバタ、およびオブジェクトの形状は所定の大きさの円形とされ、その外周に、環状の領域が設定されている。衝突判定では、移動されるアバタと、他のアバタまたはオブジェクトが重なるか否かが判定の基準となる。ただし、オブジェクトの形状は、円形以外の矩形等であってもかまわない。なお、図5は、図4に対応した仮想空間の正面図である。
【0038】
例えば図6に示すように、移動されるアバタ1の大きさは中心がA、半径がRの円であり、領域の外周半径はRRであるとする。同様に他のアバタ2の大きさは中心がB、半径がRの円であり、領域の外周半径はRRであるとする。さらに、オブジェクト1の大きさは中心がC、半径がRの円であり、領域の外周半径はRRであるとする。
【0039】
移動されるアバタ1とオブジェクト1の衝突判定では、アバタ1とオブジェクト1の中心間の距離ACが、RとRの和(R+R)と等しいか、それよりも小さい場合、「衝突発生」と判定され、大きい場合、「衝突なし」と判定される。また、中心間の距離ACが、RとRRの和(R+RR)よりも小さい場合、「進入発生」と判定され、大きい場合、「進入なし」と判定される。同様に、移動されるアバタ1と他のアバタ2の衝突判定では、アバタ1とアバタ2の中心間の距離ABが、RとRの和(R+R)と等しいか、それよりも小さい場合、「衝突発生」と判定され、大きい場合、「衝突なし」と判定される。また、中心間の距離ABが、RとRRの和(R+RR)よりも小さい場合、「進入発生」と判定され、大きい場合、「進入なし」と判定される。
【0040】
図2の説明に戻る。ステップS3において、ステップS2における衝突判定結果が「衝突発生」であるか否かを判定し、「衝突発生」ではないと判定された場合、ステップS4に進む。ステップS4において、仮想空間管理部31は、オブジェクト・アバタ管理部36を制御し、そこで管理されるそれまでのアバタの位置情報を保持したまま、位置情報を移動情報に含まれる移動先の位置の座標に更新させる。ステップS5において、UI制御部33は、オブジェクト・アバタ管理部36で管理されているアバタの更新後の位置情報に基づいて、アバタの表示位置を更新する。ステップS6において、仮想空間管理部31は、アバタの移動情報を通信制御部32に出力し、通信制御部32は、移動情報をネットワーク2を介してサーバ1に出力する。
【0041】
衝突判定結果が「衝突発生」であると判定された場合、ステップS4乃至S6をスキップしてステップS7に進む。なお、ユーザ端末3−1では、サーバ1に出力した移動情報に対応する衝突判定結果がサーバ1から入力されるまでの間、ステップS7以降の処理が継続されている。
【0042】
ユーザ端末3−1から移動情報が入力されたサーバ1の処理について、図7のフローチャートを参照して説明する。ステップS31において、サーバ1の通信制御部12は、ユーザ端末3−1が出力したアバタの移動情報をネットワーク2を介して受け付け、仮想空間管理部11に出力する。ステップS32において、仮想空間管理部11は、衝突判定部15に衝突判定を行わせる。ステップS32におけるサーバ1の衝突判定処理は、図3の衝突判定処理と同様であるので、その説明を省略する。
【0043】
ステップS33において、ステップS32における衝突判定結果が「衝突発生」ではないと判定された場合、ステップS34に進む。ステップS34において、仮想空間管理部11は、オブジェクト・アバタ管理部14が管理するアバタの位置情報を、移動情報に含まれる移動先の位置の座標に更新する。ステップS35において、仮想空間管理部11は、衝突判定結果と更新されたアバタの位置情報を通信制御部12に出力し、通信制御部12は、衝突判定結果と更新されたアバタの位置情報を、ネットワーク2を介してユーザ端末3−1乃至3−3に出力する。ステップS33での衝突判定結果が「衝突発生」であると判定された場合、ステップS34の処理はスキップされる。そして、このとき、ステップS35において、衝突判定結果がユーザ端末3−1だけに出力される。
【0044】
図2の説明に戻る。ステップS7において、ステップS2における衝突判定の結果が「進入発生」か否かが判定され、「進入発生」であると判定された場合、ステップS8に進む。ステップS8において、進入したのはオブジェクトとアバタのいずれであるかが判定され、オブジェクトであると判定された場合(例えば図8の仮想空間の平面図に示すように、アバタ2がオブジェクト3の領域に進入した場合)、ステップ9に進み、アバタであると判定された場合(例えば図9の仮想空間の平面図に示すように、アバタ1がアバタ2の領域に進入した場合)、ステップ10に進む。ステップS7で、衝突判定結果が「進入発生」ではないと判定された場合、処理は終了される。
【0045】
ステップS9において、オブジェクトに設けられた機能を起動する処理が行われる。ステップS9におけるオブジェクト機能起動処理について、図10を参照して説明する。ステップS41において、感性情報入力部34は、図2のステップS2におけるアバタの移動操作時に、マウスの右ボタンに加えられた圧力に応じてオブジェクトの機能一覧ウィンドウの表示を抑制するか否かを決定し、決定結果をUI制御部33に出力する。なお、この決定では、マウスの右ボタンに加えられた圧力が所定の大きさよりも大きい場合、「機能一覧ウィンドウの表示を抑制する」と決定され、圧力が所定の大きさよりも小さい場合、「機能一覧ウィンドウの表示を抑制しない」と決定される。UI制御部33に入力された決定結果が、「機能一覧ウィンドウの表示を抑制しない」であると判定された場合、ステップS42に進む。
【0046】
ステップS42において、UI制御部33は、進入した領域に対応するオブジェクトに設定されている機能の一覧が記述されているウィンドウをオブジェクト・アバタ管理部36から読み出し、図11に示すように表示部に表示させる。なお、図11中のオブジェクト、およびアバタの位置は、図8と対応している。ステップS43において、ユーザは、機能一覧ウィンドウに表示された機能の中から実行する機能を1つ選択する。
【0047】
ステップS44において、仮想空間管理部31は、図2のステップS6においてサーバ1に出力した移動情報に対応する衝突判定結果が、サーバ1から入力されるまで待機する。サーバ1から衝突判定結果が入力されていると確認された場合、ステップS45に進み、サーバ1から入力された衝突判定結果が「衝突発生」であるか否かが判定される。衝突判定結果が「衝突発生」ではないと判定された場合、ステップS46に進み、仮想空間管理部31は、オブジェクト・アバタ管理部36からステップS43において選択された機能に対応するプログラムを読み出して実行する。ステップS45において、サーバ1から入力された衝突判定結果が「衝突発生」であると判定された場合、ステップS46はスキップされる。
【0048】
ステップS41において、UI制御部33に入力された決定結果が、「機能一覧ウィンドウの表示を抑制する」であると判定された場合、ステップS42からS46の処理はスキップされる。すなわち、この場合、ウィンドウは表示されない。
【0049】
なお、ステップS42以降において、ユーザがアバタの移動操作を行うと、それまで表示されていた機能一覧ウィンドウは閉じられる。したがって、アバタの移動操作を行うことによりオブジェクト機能起動処理を中止できる。
【0050】
図12と図13は、図2のステップS3において、衝突判定部37の衝突判定結果がそれぞれ、「衝突なし」であると判定された場合と、「衝突発生」であると判定された場合における主に図10の各ステップに対応する情報の入出力を太線の矢印で示している。
【0051】
図2の説明に戻る。ステップS7において、進入した領域が他のアバタの領域であると判定された場合、ステップS10に進む。ステップS10において、チャット機能を起動する処理が開始される。
【0052】
ステップS10のチャット機能起動処理について、図14を参照して説明する。ステップS51において、ステップS41における場合と同様に、感性情報入力部34は、図2のステップS1におけるアバタの移動操作時に、マウスの右ボタンに加えられた圧力に応じてチャット機能用ウィンドウの表示を抑制するか否かを決定し、決定結果をUI制御部33に出力する。マウスの右ボタンに加えられた圧力が所定の大きさよりも大きい場合、「チャット機能用ウィンドウの表示を抑制する」が出力され、圧力が所定の大きさよりも小さい場合、「チャット機能用ウィンドウの表示を抑制しない」が出力される。UI制御部33に入力された決定結果が、「チャット機能用ウィンドウの表示を抑制しない」であると判定された場合、ステップS52に進む。
【0053】
ステップS52において、UI制御部33は、チャット機能用ウィンドウをオブジェクト・アバタ管理部36から読み出し、図15に示すように表示部に表示させる。なお、図15におけオブジェクト、およびアバタの表示位置は、図9に対応している。ステップS53において、ユーザは、チャット開始操作として、チャット機能用ウィンドウにチャットを開始する言葉(例えば、「会話してもいいですか?」)を入力する。
【0054】
ステップS54において、仮想空間管理部31は、図2のステップS6においてサーバ1に出力した移動情報に対応する衝突判定結果が、サーバ1から入力されるまで待機する。サーバ1から衝突判定結果が入力されていると確認された場合、ステップS55に進み、サーバ1から入力された衝突判定結果が「衝突発生」であるか否かが判定される。衝突判定結果が「衝突発生」ではないと判定された場合、ステップS56に進む。ステップS56において、仮想空間管理部31は、チャットの開始要求(チャットを開始する言葉の情報を含む)をサーバ1に出力する。ステップS68において、サーバ1は、チャット開始の要求を受け付け、チャット相手のアバタに対応するユーザ端末(例えば、ユーザ端末3−2)にチャット開始要求(チャットを開始する言葉の情報を含む)を出力する。
【0055】
ステップS58において、ユーザ端末3−2は、チャット開始要求を受け付け、ユーザ端末3−2の図示せぬ表示部にチャット機能用ウィンドウを開き、ユーザ端末3−1が出力したチャットを開始する言葉を表示する。ステップS59において、ユーザ端末3−2を操作するユーザは、チャット開始要求に対する返事(例えば、「どうぞ」)を、チャット機能用ウィンドウに入力する。ユーザ端末3−2は、ネットワーク2を介してサーバ1にチャット機能開始完了の情報(チャット開始要求に対する返事の言葉の情報を含む)を出力する。ステップS60において、サーバ1は、ユーザ端末3−2から入力されたチャット機能開始完了の情報を受け取り、ユーザ端末3−1にチャット機能開始準備完了の情報を出力する。ステップS61において、ユーザ端末3−1とユーザ端末3−2の間でチャットが開始される。
【0056】
ステップS55において、サーバ1から入力された衝突判定結果が「衝突発生」であると判定された場合、ステップS56乃至S61の処理はスキップされる。
【0057】
ステップS51において、UI制御部33に入力された決定結果が、「チャット機能用ウィンドウの表示を抑制する」であると判定された場合、ステップS52乃至S61の処理はスキップされる。すなわち、この場合、チャット用にウィンドウは表示されず、ユーザはチャットを行うことができない。
【0058】
なお、ステップS52以降において、ユーザがアバタの移動操作を行うと、表示されているチャット機能用ウィンドウは閉じられる。したがって、アバタの移動操作を行うことでチャット機能起動処理を中止できる。
【0059】
図16と図17は、図2のステップS3において、衝突判定部37の衝突判定結果がそれぞれ、「衝突なし」であると判定された場合と、「衝突発生」であると判定された場合における主に図14の各ステップに対応する情報の入出力を太線の矢印で示している。
【0060】
次に、サーバ1から衝突判定結果が入力されたユーザ端末3−1の処理について、図18を参照して説明する。ステップS71において、サーバ1から入力された衝突判定結果が「衝突発生」であるか否かが判定される。衝突判定結果が「衝突発生」であると判定された場合、衝突判定部37の衝突判定結果に基づいて更新した位置情報や各種の処理を修正するため、ステップS72に進む。ステップS72において、仮想空間管理部31は、オブジェクト・アバタ管理部36が管理するアバタの位置情報を移動前の位置の座標に戻す。ステップS73において、UI制御部33は、オブジェクト・アバタ管理部36が管理するアバタの位置情報に基づいて、アバタの表示位置を更新する(移動前の表示位置に戻す)。
【0061】
ステップS74において、仮想空間管理部31は、オブジェクト機能一覧ウィンドウ、またはチャット機能用ウィンドウが表示部に表示されているか否かを判定し、ウィンドウが表示されていると判定された場合、ステップS75に進み、仮想空間管理部31は、UI制御部33を制御し、表示部に表示されているウィンドウを閉じさせる(オブジェクト機能起動処理、またはチャット機能起動処理が中止される)。ステップS74でウィンドウが表示されていないと判定された場合、ステップS75の処理はスキップされる。
【0062】
上記した各種の処理はコンピュータにより行わせることができる。そのコンピュータのプログラムは、フロッピディスク、光ディスク、ハードディスクなどの記録媒体に記録し、ユーザに提供することができる。
【0063】
【発明の効果】
本発明によれば、アバタと、他のアバタまたはオブジェクトの距離に応じて自動的にウィンドウの開閉するようにしたので、ユーザの操作を簡略化することができる。
【図面の簡単な説明】
【図1】本発明を適用した仮想空間制御システムの構成を示すブロック図である。
【図2】図1の仮想空間制御システムの機能起動処理を説明するフローチャートである。
【図3】図2のステップS2の衝突判定処理の詳細を説明するフローチャートである。
【図4】仮想空間の平面図である。
【図5】図4に対応した仮想空間の正面図である。
【図6】衝突判定処理を説明する図である。
【図7】移動情報を入力されたサーバ1の処理を説明するフローチャートである。
【図8】アバタ2がオブジェクト3の領域に進入した状態を示す仮想空間の平面図である。
【図9】アバタ1がアバタ2の領域に進入した状態を示す仮想空間の平面図である。
【図10】図2のステップS9のオブジェクト機能起動処理の詳細を説明するフローチャートである。
【図11】機能一覧ウィンドウが表示された仮想空間の正面図である。
【図12】図10のオブジェクト機能開始処理における情報の入出力を示す図である。
【図13】図10のオブジェクト機能開始処理における情報の入出力を示す図である。
【図14】図2のステップS10のチャット機能起動処理の詳細を説明するフローチャートである。
【図15】チャット機能用ウィンドウが表示された仮想空間の正面図である。
【図16】図14のチャット機能開始処理における情報の入出力を示す図である。
【図17】図14のチャット機能開始処理における情報の入出力を示す図である。
【図18】サーバ1から衝突判定結果が入力されたユーザ端末3−1の処理を説明するフローチャートである。
【図19】従来の仮想空間制御システムの一例の構成を示す概略図である。
【図20】仮想空間の側面図である。
【図21】AV機器を表すオブジェクトを示す図である。
【図22】机を表すオブジェクトを示す図である。
【図23】椅子を表すオブジェクトを示す図である。
【図24】従来の仮想空間制御システムの一例の構成を示すブロック図である。
【図25】図24の仮想空間制御システムの移動処理を説明するフローチャートである。
【図26】図24のフローチャートの各ステップに対応する情報の入出力を示す図である。
【符号の説明】
1 サーバ
2 ネットワーク
3 ユーザ端末
11 仮想空間管理部
12 通信制御部
13 仮想空間情報格納部
14 オブジェクト・アバタ管理部
15 衝突判定部
31 仮想空間管理部
32 通信制御部
33 UI制御部
34 感性情報入力部
35 仮想空間情報格納部
36 オブジェクト・アバタ管理部
37 衝突判定部[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a virtual space control device and method, and a recording medium, and more particularly, to a virtual space control device and method and a recording medium that can simplify the operation of a user by automatically opening and closing windows. About.
[0002]
[Prior art]
As shown in FIG. 19, a virtual space control system that controls a virtual space shared by a plurality of users (a society realized using a network and a computer, a so-called cyber space) includes, as shown in FIG. A plurality of user terminals (clients) 3-1 to 3-3 (hereinafter, each of the user terminals 3-1 to 3-3 need to be individually distinguished) connected to the server 1 via a network 2 represented by the Internet. Otherwise, it is simply described as a user terminal 3). In this specification, the term “system” is used to represent an entire device including a plurality of devices.
[0003]
In the virtual space, for example, as shown in FIG. 20, a plurality of objects (AV equipment, desks, or chairs such as a video tape deck and a television receiver shown in FIGS. 21 to 23) and an avatar (virtual space) (Eg, move, raise hands, etc.). Each object is provided with a function according to the form of the object (for example, a recording function and a reproduction function for reproducing a recorded image for an AV device object), and an avatar is provided for chatting with another avatar. A function (a function of mutually transmitting characters and having a conversation) is provided. The avatar moves in the virtual space in response to a user operation.
[0004]
An example of a configuration of a conventional virtual space control system will be described with reference to FIG. The server 1 includes a virtual space management unit 11, a communication control unit 12, a virtual space information storage unit 13, an object / avatar management unit 14, and a collision determination unit 15. The virtual space management unit 11 controls the object / avatar management unit 14 and the collision determination unit 15, and outputs information (a request to join a virtual space, a request to start a chat, etc.) from the user terminal 3-1 input from the communication control unit 12. , Or avatar movement information), and outputs the processing result to the communication control unit 12. Further, the virtual space management unit 11 manages the names of the users participating in the virtual space and the names of the avatars corresponding to the users.
[0005]
The communication control unit 12 controls communication with the user terminal 3 via the network 2. The virtual space information storage unit 13 stores data of the initial state of the virtual space (coordinates of the object and the like), and image data of a space background, an object, and an avatar. The object / avatar management unit 14 manages information such as the position of an object and an avatar in the current virtual space. When the avatar is moved, the collision determination unit 15 determines whether the moved avatar collides with another avatar or an object based on the position information managed by the object / avatar management unit 14.
[0006]
The user terminal 3-1 includes a virtual space management unit 31, a communication control unit 32, a UI (User Interface) control unit 33, a virtual space information storage unit 35, and an object / avatar management unit 36. The virtual space management unit 31 controls the UI control unit 33 and the object / avatar management unit 36, and receives information (operation by a user, a result of a collision determination from the server 1, or corresponding to another user) input from each unit. Avatar position information). The communication control unit 32 controls communication with the server 1 via the network 2. The UI control unit 33 displays a virtual space on a display unit (not shown) and receives a user operation (moving an avatar, etc.).
[0007]
The virtual space information storage unit 35 stores image data of a space background, an object, and an avatar for displaying a virtual space. The object / avatar management unit 36 manages information such as the position of the object and the avatar in the current virtual space. Note that the configuration of the user terminals 3-2 and 3-3 is the same as the configuration of the user terminal 3-1 and will not be described.
[0008]
Next, processing for activating the function of an object in the virtual space control system will be described with reference to the flowchart in FIG. 25 and FIG. 26. In FIG. 26, input and output of information corresponding to each step of the flowchart of FIG. 25 are indicated by thick arrows. In step S91, the user selects an object in a virtual space displayed on a display unit (not shown) by clicking with a mouse (for example, an object of an AV device is selected). The UI control unit 33 accepts the user's selection and outputs the object selection information to the virtual space management unit 31. In step S92, the user clicks on a menu character at the top of the display screen (not shown) with a mouse, and selects "display function list window" from the displayed menu. The UI control unit 33 outputs to the virtual space management unit 31 that “display function list window” has been selected from the menu.
[0009]
In step S93, the virtual space management unit 31 controls the UI control unit 33 to display a function list window corresponding to the selected object on the display unit (in the case of an AV device object, “play” and “record” Are displayed in the window). In step S94, the user selects a function to be executed (for example, a reproduction function) from the function list window displayed on the display unit with a mouse or the like. The UI control unit 33 accepts a user's function selection operation and outputs function selection information to the virtual space management unit 31. In step S95, the virtual space management unit 31 reads a function program (in this case, a playback function program) corresponding to the input function selection information from the object / avatar management unit 36 and executes it.
[0010]
When stopping the process of activating the function of the object in the middle of each of steps S91 to S94, the user needs to perform an operation such as deselecting the function and closing the displayed function list window. There is.
[0011]
[Problems to be solved by the invention]
As described above, in order to display or delete the window for activating the function set for the object in the virtual space, the user needs to perform a plurality of operations, and there is a problem that the operability is poor. .
[0012]
The present invention has been made in view of such a situation, and improves the operability of a user by automatically opening and closing a window when an object and an avatar reach a predetermined distance.
[0013]
[Means for Solving the Problems]
The present invention The virtual space controller of Provisional Detecting means for detecting that the avatar representing the user in the virtual space has entered a predetermined object or an area at a predetermined distance from the avatar in the virtual space, and corresponding to the detection result of the detecting means. , A list of functions set for objects in the virtual space And a function processing means for processing a specified one of the functions shown in the window.
[0014]
The present invention The virtual space control method of Provisional A detection step of detecting that the avatar representing the user in the virtual space has entered a predetermined object or a region at a predetermined distance from the avatar in the virtual space, and corresponding to a detection result of the detection step. , A list of functions set for objects in the virtual space And a function processing step of processing a designated one of the functions shown in the window.
[0015]
The present invention Recording media Programs recorded in Is Provisional A detection step of detecting that the avatar representing the user in the virtual space has entered a predetermined object or a region at a predetermined distance from the avatar in the virtual space, and corresponding to a detection result of the detection step. , A list of functions set for objects in the virtual space And a function processing step of processing a specified one of the functions shown in the window. This And features.
[0016]
Of the present invention Virtual space controller And method, and program recorded on recording medium In Provisional It is detected that the avatar representing the user in the virtual space has entered a predetermined object or a region at a predetermined distance from the avatar in the virtual space. Is , Inspection In response to knowledge , A list of functions set for objects in the virtual space Show window Is , C The specified function among the functions shown in the window But processing Be done .
[0018]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described, but in order to clarify the correspondence between each means of the invention described in the claims and the following embodiments, in parentheses after each means, The characteristics of the present invention will be described as follows by adding the corresponding embodiments (one example).
[0019]
That is, the virtual space control device according to claim 1 is a virtual space control device that controls a virtual space shared by a plurality of users, wherein an avatar representing the user in the virtual space is an area of a predetermined distance from the object or the avatar. Detection means (for example, the collision determination unit 37 in FIG. 1) for detecting that the vehicle has entered List of functions set for objects in the virtual space A display unit (for example, the UI control unit 33 in FIG. 1) for displaying a window to be displayed, and a function processing unit (for example, the virtual space management unit 31 in FIG. 1) for processing a specified one of the functions displayed in the window ).
[0020]
Further, the virtual space control device according to claim 2 further includes an erasing unit (for example, the UI control unit 33 in FIG. 1) that erases a window in response to the movement of the avatar.
[0021]
Claims 4 The virtual space control device described in (1) includes a receiving unit (for example, the sensibility information input unit 34 in FIG. 1) that receives a user's operation, and a suppressing unit (for example, based on the operation received by the receiving unit) that suppresses display of a window. , The emotion information input unit 34) of FIG.
[0022]
However, of course, this description does not mean that each means is limited to those described.
[0023]
The configuration of a virtual space control system to which the present invention is applied will be described with reference to FIG. The configuration of the server 1 is the same as that in FIG.
[0024]
The basic configuration of the user terminal 3-1 is the same as that in FIG. However, in this configuration example, in addition to the configuration in FIG. 24, a sensitivity information input unit 34 and a collision determination unit 37 are provided. The sensibility information input unit 34 detects the pressure at which the user presses the right button of the mouse, and outputs information corresponding to the pressure to the UI control unit 33. The collision determination unit 37 includes avatar movement information (moved avatar name and destination position) input from the virtual space management unit 31 and current object and avatar position information input from the object / avatar management unit 35 It is determined whether or not a collision occurs on the basis of the above, and the collision determination result is output to the virtual space management unit 31. Other configurations are the same as those in FIG. Note that the configuration of the user terminals 3-2 and 3-3 is the same as the configuration of the user terminal 3-1 and will not be described.
[0025]
Next, an example of the structure of information managed by each unit will be described. The virtual space management unit 11 of the server 1 manages the names of user terminals connected to the server 1 and the number of connected users.
Connected user terminal name
client_machine_1
client_machine_2
Number of connected users
2
[0026]
The virtual space information storage unit 13 manages virtual space information, object information, and avatar information.
Virtual space information
Figure 0003562555
[0027]
The object / avatar management unit 14 manages current object and avatar position information.
Figure 0003562555
[0028]
The virtual space management unit 31 of the user terminal 3-1 manages the connected server name.
Server name
server_machine_1
[0029]
The virtual space information storage unit 35 manages virtual space information, object information, and avatar information.
Figure 0003562555
[0030]
The object / avatar management unit 36 manages current object and avatar position information.
Figure 0003562555
[0031]
Next, a function activation process of an object or an avatar in the virtual space control system will be described with reference to a flowchart of FIG. In step S1, the user performs an operation of moving an avatar corresponding to the user in a virtual space displayed on a display unit (not shown) (for example, click the avatar with the right mouse button and drag in the direction in which the avatar is to be moved) ). Of course, other users To You cannot move the corresponding avatar. When this operation is being performed, the affective information input unit 34 detects the pressure for pressing the right mouse button. The UI control unit 33 receives a user's movement operation and outputs movement information corresponding to the movement operation to the virtual space management unit 31. In step S2, the virtual space management unit 31 causes the collision determination unit 37 to make a collision determination.
[0032]
Details of the collision determination processing in step S2 will be described with reference to the flowchart in FIG. In step S21, the virtual space management unit 31 outputs the avatar movement information to the collision determination unit 37. In step S22, the collision determination unit 37 acquires one avatar other than the avatar moved from the object / avatar management unit 36 or one piece of positional information of the object. In step S23, the collision determination unit 37 determines whether the avatar to be moved collides with the avatar or the object corresponding to the position information acquired in step S22. If it is determined that the avatar does not collide, the process proceeds to step S24. move on.
[0033]
In step S24, the collision determination unit 37 determines whether the avatar to be moved enters an avatar corresponding to the position information acquired in step S22 or an area of an object. Proceed to step S25. In step S25, the collision determination unit 37 determines whether a collision has been determined between the avatar to be moved, all the avatars in the virtual space, and the object. If it is determined in step S25 that collision determination between the avatar to be moved and all avatars in the virtual space and the object has not been performed, a step is performed to acquire position information of the next avatar or object. It returns to S22.
[0034]
If it is determined in step S25 that collision determination has been performed with all avatars and objects, the process proceeds to step S26. In step S26, the collision determination unit 37 outputs “no collision” to the virtual space management unit 31 as a collision determination result.
[0035]
If it is determined in step S23 that the avatar to be moved collides with the avatar or the object corresponding to the position information acquired in step S22, the process proceeds to step S27. In step S27, the collision determination unit 37 outputs “occurrence of collision” to the virtual space management unit 31 as a collision determination result.
[0036]
If it is determined in step S24 that the avatar to be moved enters the avatar or the object area corresponding to the position information acquired in step S22, the process proceeds to step S28. In step S28, the collision determination unit 37 outputs “no collision, entry has occurred” and the avatar or object name (ID) corresponding to the entered area to the virtual space management unit 31 as the collision determination result.
[0037]
Next, the criteria for collision determination will be described with reference to FIGS. FIG. 4 is a plan view of the virtual space. In this example, the shape of the avatar and the object is a circle of a predetermined size, and an annular area is set on the outer periphery. In the collision determination, whether the avatar to be moved overlaps with another avatar or object is a criterion for determination. However, the shape of the object may be a rectangle other than a circle. FIG. 5 is a front view of the virtual space corresponding to FIG.
[0038]
For example, as shown in FIG. 6, the size of the avatar 1 to be moved is A at the center and R at the radius. A And the outer radius of the region is RR A And Similarly, the size of the other avatar 2 is B at the center and R at the radius. B And the outer radius of the region is RR B And Further, the size of the object 1 is C at the center and R at the radius. C And the outer radius of the region is RR C And
[0039]
In the collision determination between the moved avatar 1 and the object 1, the distance AC between the avatar 1 and the center of the object 1 is R A And R C The sum of (R A + R C ) Is smaller than or equal to, it is determined that “collision has occurred”. The distance AC between the centers is R A And RR C The sum of (R A + RR C ), It is determined that “entering has occurred”, and if it is larger, it is determined that “no entering has occurred”. Similarly, in the collision determination between the moved avatar 1 and another avatar 2, the distance AB between the centers of the avatar 1 and the avatar 2 is R A And R B The sum of (R A + R B ) Is smaller than or equal to, it is determined that “collision has occurred”. The distance AB between the centers is R A And RR B The sum of (R A + RR B ), It is determined that “entering has occurred”, and if it is larger, it is determined that “no entering has occurred”.
[0040]
Returning to the description of FIG. In step S3, it is determined whether or not the collision determination result in step S2 is "collision occurrence". If it is determined that the collision is not "collision occurrence", the process proceeds to step S4. In step S4, the virtual space management unit 31 controls the object / avatar management unit 36, and keeps the position information of the destination included in the movement information while maintaining the position information of the avatar managed up to that point. Update to coordinates. In step S5, the UI control unit 33 updates the display position of the avatar based on the updated avatar position information managed by the object / avatar management unit 36. In step S6, the virtual space management unit 31 outputs the avatar movement information to the communication control unit 32, and the communication control unit 32 outputs the movement information to the server 1 via the network 2.
[0041]
When it is determined that the collision determination result is “collision occurred”, the process skips steps S4 to S6 and proceeds to step S7. In the user terminal 3-1, the processing from step S7 is continued until the collision determination result corresponding to the movement information output to the server 1 is input from the server 1.
[0042]
The processing of the server 1 to which the movement information has been input from the user terminal 3-1 will be described with reference to the flowchart of FIG. In step S31, the communication control unit 12 of the server 1 receives the avatar movement information output by the user terminal 3-1 via the network 2, and outputs the information to the virtual space management unit 11. In step S32, the virtual space management unit 11 causes the collision determination unit 15 to make a collision determination. The collision determination process of the server 1 in step S32 is the same as the collision determination process of FIG. 3, and a description thereof will be omitted.
[0043]
If it is determined in step S33 that the collision determination result in step S32 is not "occurrence of collision", the process proceeds to step S34. In step S34, the virtual space management unit 11 updates the avatar position information managed by the object / avatar management unit 14 to the coordinates of the destination position included in the movement information. In step S35, the virtual space management unit 11 outputs the collision determination result and the updated avatar position information to the communication control unit 12, and the communication control unit 12 transmits the collision determination result and the updated avatar position information to the communication control unit 12. Output to the user terminals 3-1 to 3-3 via the network 2. When it is determined that the collision determination result in step S33 is “collision has occurred”, the process in step S34 is skipped. Then, at this time, in step S35, the collision determination result is output only to the user terminal 3-1.
[0044]
Returning to the description of FIG. In step S7, it is determined whether or not the result of the collision determination in step S2 is "entering". If it is determined that "entering", the process proceeds to step S8. In step S8, it is determined whether the entered object is an object or an avatar. If it is determined that the object is an object (for example, as shown in a plan view of the virtual space in FIG. ), Step S If the avatar 1 is determined to be an avatar (for example, the avatar 1 enters the avatar 2 area as shown in the plan view of the virtual space in FIG. 9), S Go to 10. If it is determined in step S7 that the collision determination result is not “entrance occurred”, the process ends.
[0045]
In step S9, processing for activating a function provided for the object is performed. The object function activation process in step S9 will be described with reference to FIG. In step S41, the sensibility information input unit 34 determines whether to suppress the display of the object function list window according to the pressure applied to the right mouse button during the avatar movement operation in step S2 in FIG. Then, the determination result is output to the UI control unit 33. In this determination, if the pressure applied to the right mouse button is larger than a predetermined amount, it is determined that “display of the function list window is to be suppressed”, and if the pressure is smaller than the predetermined size, “function Do not suppress the display of the list window. " When it is determined that the determination result input to the UI control unit 33 is “do not suppress the display of the function list window”, the process proceeds to step S42.
[0046]
In step S42, the UI control unit 33 reads, from the object / avatar management unit 36, a window in which a list of functions set in the object corresponding to the entered area is described, and displays the window on the display unit as shown in FIG. Display. Note that the positions of the objects and avatars in FIG. 11 correspond to those in FIG. In step S43, the user selects one function to be executed from the functions displayed in the function list window.
[0047]
In step S44, the virtual space management unit 31 waits until a collision determination result corresponding to the movement information output to the server 1 in step S6 of FIG. If it is confirmed that the collision determination result is input from the server 1, the process proceeds to step S45, and it is determined whether the collision determination result input from the server 1 is "occurrence of collision". When it is determined that the collision determination result is not “occurrence of collision”, the process proceeds to step S46, where the virtual space management unit 31 reads out and executes a program corresponding to the function selected in step S43 from the object / avatar management unit 36. I do. In step S45, when it is determined that the collision determination result input from the server 1 is "occurrence of collision", step S46 is skipped.
[0048]
In step S41, when it is determined that the determination result input to the UI control unit 33 is "suppress the display of the function list window", the processing of steps S42 to S46 is skipped. That is, in this case, no window is displayed.
[0049]
When the user performs an avatar moving operation after step S42, the function list window that has been displayed is closed. Therefore, the object function activation process can be stopped by performing an avatar moving operation.
[0050]
FIGS. 12 and 13 show a case where the collision determination result of the collision determination unit 37 is determined to be “no collision” and a case where it is determined that “collision has occurred” in step S3 of FIG. Input and output of information mainly corresponding to each step in FIG. 10 are indicated by thick arrows.
[0051]
Returning to the description of FIG. If it is determined in step S7 that the entered area is an area of another avatar, the process proceeds to step S10. In step S10, processing for activating the chat function is started.
[0052]
The chat function activation process in step S10 will be described with reference to FIG. In step S51, similarly to the case in step S41, the emotion information input unit 34 displays the chat function window according to the pressure applied to the right mouse button at the time of the avatar moving operation in step S1 in FIG. It is determined whether or not to suppress, and the determination result is output to the UI control unit 33. When the pressure applied to the right mouse button is larger than a predetermined size, “suppress the display of the chat function window” is output. When the pressure is smaller than the predetermined size, “display the chat function window” is displayed. Is not suppressed "is output. If it is determined that the determination result input to the UI control unit 33 is “do not suppress the display of the chat function window”, the process proceeds to step S52.
[0053]
In step S52, the UI control unit 33 reads the chat function window from the object / avatar management unit 36 and displays the window on the display unit as shown in FIG. Note that FIG. To The display positions of the object and the avatar correspond to FIG. In step S53, the user inputs, as a chat start operation, a word for starting a chat in the chat function window (for example, "Is conversation allowed?").
[0054]
In step S54, the virtual space management unit 31 waits until a collision determination result corresponding to the movement information output to the server 1 in step S6 of FIG. When it is confirmed that the collision determination result is input from the server 1, the process proceeds to step S55, and it is determined whether the collision determination result input from the server 1 is "occurrence of collision". When it is determined that the collision determination result is not “occurrence of collision”, the process proceeds to step S56. In step S <b> 56, the virtual space management unit 31 outputs a chat start request (including information of a chat start word) to the server 1. In step S68, the server 1 receives the chat start request, and outputs a chat start request (including information on a word for starting a chat) to a user terminal (for example, the user terminal 3-2) corresponding to the avatar of the chat partner. I do.
[0055]
In step S58, the user terminal 3-2 receives the chat start request, opens a chat function window on a display unit (not shown) of the user terminal 3-2, and displays a chat start word output from the user terminal 3-1. indicate. In step S59, the user operating the user terminal 3-2 inputs a reply (for example, "Please") to the chat start request in the chat function window. The user terminal 3-2 outputs, to the server 1 via the network 2, information on the completion of the start of the chat function (including information on a word in reply to the chat start request). In step S60, the server 1 receives the chat function start completion information input from the user terminal 3-2, and outputs the chat function start preparation completion information to the user terminal 3-1. In step S61, a chat is started between the user terminal 3-1 and the user terminal 3-2.
[0056]
In step S55, when it is determined that the collision determination result input from the server 1 is "collision occurred", the processing of steps S56 to S61 is skipped.
[0057]
In step S51, when it is determined that the determination result input to the UI control unit 33 is "suppress the display of the chat function window", the processing of steps S52 to S61 is skipped. That is, in this case, no window is displayed for chatting, and the user cannot chat.
[0058]
When the user performs an avatar movement operation after step S52, the displayed chat function window is closed. Therefore, the chat function activation process can be stopped by performing the avatar moving operation.
[0059]
FIGS. 16 and 17 show the case where the collision determination results of the collision determination unit 37 are determined to be “no collision” and the case where it is determined to be “occurrence of collision” in step S3 of FIG. The input and output of information mainly corresponding to each step in FIG. 14 are indicated by thick arrows.
[0060]
Next, a process of the user terminal 3-1 to which the collision determination result is input from the server 1 will be described with reference to FIG. In step S71, it is determined whether or not the collision determination result input from the server 1 is "collision occurred". If it is determined that the collision determination result is “occurrence of collision”, the process proceeds to step S72 in order to correct the position information and various processes updated based on the collision determination result of the collision determination unit 37. In step S72, the virtual space management unit 31 returns the avatar position information managed by the object / avatar management unit 36 to the coordinates of the position before the movement. In step S73, the UI control unit 33 updates the display position of the avatar based on the avatar position information managed by the object / avatar management unit 36 (returns to the display position before the movement).
[0061]
In step S74, the virtual space management unit 31 determines whether the object function list window or the chat function window is displayed on the display unit. If it is determined that the window is displayed, the process proceeds to step S75. Then, the virtual space management unit 31 controls the UI control unit 33 to close the window displayed on the display unit (the object function activation process or the chat function activation process is stopped). If it is determined in step S74 that the window is not displayed, the process of step S75 is skipped.
[0062]
The various processes described above can be performed by a computer. The computer program can be recorded on a recording medium such as a floppy disk, an optical disk, or a hard disk and provided to a user.
[0063]
【The invention's effect】
The present invention According to this, the window is automatically opened and closed according to the distance between the avatar and another avatar or object, so that the operation of the user can be simplified.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a virtual space control system to which the present invention is applied.
FIG. 2 is a flowchart illustrating a function activation process of the virtual space control system of FIG. 1;
FIG. 3 is a flowchart illustrating details of a collision determination process in step S2 of FIG. 2;
FIG. 4 is a plan view of a virtual space.
FIG. 5 is a front view of a virtual space corresponding to FIG. 4;
FIG. 6 is a diagram illustrating a collision determination process.
FIG. 7 is a flowchart illustrating processing of the server 1 to which movement information has been input.
FIG. 8 is a plan view of a virtual space showing a state where the avatar 2 has entered the area of the object 3;
FIG. 9 is a plan view of a virtual space showing a state in which the avatar 1 has entered the area of the avatar 2;
FIG. 10 is a flowchart illustrating details of an object function activation process in step S9 of FIG. 2;
FIG. 11 is a front view of a virtual space in which a function list window is displayed.
12 is a diagram showing input and output of information in the object function start processing of FIG.
13 is a diagram showing input and output of information in the object function start processing of FIG.
FIG. 14 is a flowchart illustrating details of a chat function activation process in step S10 of FIG. 2;
FIG. 15 is a front view of a virtual space in which a chat function window is displayed.
16 is a diagram showing input and output of information in the chat function start processing of FIG.
17 is a diagram showing input and output of information in the chat function start processing of FIG.
FIG. 18 is a flowchart illustrating processing of the user terminal 3-1 to which a collision determination result has been input from the server 1.
FIG. 19 is a schematic diagram showing a configuration of an example of a conventional virtual space control system.
FIG. 20 is a side view of a virtual space.
FIG. 21 is a diagram illustrating an object representing an AV device.
FIG. 22 is a diagram showing an object representing a desk.
FIG. 23 is a diagram showing an object representing a chair.
FIG. 24 is a block diagram showing a configuration of an example of a conventional virtual space control system.
FIG. 25 is a flowchart illustrating a movement process of the virtual space control system in FIG. 24;
26 is a diagram showing input and output of information corresponding to each step of the flowchart in FIG. 24.
[Explanation of symbols]
1 server
2 Network
3 User terminal
11 Virtual space management unit
12 Communication control unit
13 Virtual space information storage
14 Object / Avatar Management Department
15 Collision judgment unit
31 Virtual Space Management Department
32 Communication control unit
33 UI control unit
34 Kansei information input section
35 Virtual space information storage
36 Object / Avatar Management Department
37 Collision judgment unit

Claims (9)

複数のユーザが共有する仮想空間を制御する仮想空間制御装置において、
前記仮想空間上で前記ユーザを表すアバタが、前記仮想空間上の所定のオブジェクトまたはアバタから所定の距離の領域に進入したことを検知する検知手段と、
前記検知手段の検知結果に対応して、前記仮想空間上の前記オブジェクトに設定された機能の一覧を示すウィンドウを表示する表示手段と、
前記ウィンドウに示された機能のうち、指定されたものを処理する機能処理手段と
を備えることを特徴とする仮想空間制御装置。
In a virtual space control device that controls a virtual space shared by a plurality of users,
Detecting means for detecting that an avatar representing the user in the virtual space has entered an area at a predetermined distance from a predetermined object or avatar in the virtual space,
Display means for displaying a window showing a list of functions set for the object in the virtual space, in accordance with the detection result of the detection means,
A virtual space control apparatus comprising: a function processing unit that processes a specified function among the functions shown in the window.
前記アバタの移動に対応して前記ウィンドウを消去する消去手段を
さらに備えることを特徴とする請求項1に記載の仮想空間制御装置。
The virtual space control device according to claim 1, further comprising an erasing unit that erases the window in response to the movement of the avatar.
前記表示手段は、前記アバタに設定されたチャット機能用のウィンドウも表示する
ことを特徴とする請求項1または2に記載の仮想空間制御装置。
The virtual space control device according to claim 1 or 2, wherein the display unit also displays a window for a chat function set in the avatar.
前記ユーザの操作を受け付ける受付手段と、
前記受付手段が受け付けた前記操作に基づいて、前記ウィンドウの表示を抑制する抑制手段と
をさらに備えることを特徴とする請求項1乃至のいずれかに記載の仮想空間制御装置。
Receiving means for receiving the user's operation;
The reception unit based on the operation received is, a virtual space control device according to any one of claims 1 to 3, further comprising a suppression means for suppressing display of the window.
複数のユーザが共有する仮想空間を制御する仮想空間制御方法において、
前記仮想空間上で前記ユーザを表すアバタが、前記仮想空間上の所定のオブジェクトまたはアバタから所定の距離の領域に進入したことを検知する検知ステップと、
前記検知ステップの検知結果に対応して、前記仮想空間上の前記オブジェクトに設定された機能の一覧を示すウィンドウを表示する表示ステップと、
前記ウィンドウに示された機能のうち、指定されたものを処理する機能処理ステップと
を備えることを特徴とする仮想空間制御方法。
In a virtual space control method for controlling a virtual space shared by a plurality of users,
A detection step of detecting that an avatar representing the user in the virtual space has entered a region at a predetermined distance from a predetermined object or avatar in the virtual space,
A display step of displaying a window showing a list of functions set for the object in the virtual space in accordance with the detection result of the detection step;
A function processing step of processing a designated one of the functions shown in the window.
前記アバタの移動に対応して前記ウィンドウを消去する消去ステップを
さらに備えることを特徴とする請求項に記載の仮想空間制御方法。
6. The virtual space control method according to claim 5 , further comprising an erasing step of erasing the window in response to the movement of the avatar.
前記表示ステップは、前記アバタに設定されたチャット機能用のウィンドウも表示する
ことを特徴とする請求項またはに記載の仮想空間制御方法。
Wherein the display step, the virtual space control method according to claim 5 or 6, characterized in <br/> also display a window for setting the chat function on the avatar.
前記ユーザの操作を受け付ける受付ステップと、
前記受付ステップで受け付けた前記操作に基づいて、前記ウィンドウの表示を抑制する抑制ステップと
をさらに備えることを特徴とする請求項乃至のいずれかに記載の仮想空間制御方法。
A receiving step of receiving an operation of the user;
The reception based on the operation received in step, the virtual space control method according to any one of claims 5 to 7, further comprising a suppressor for suppressing step display of the window.
複数のユーザが共有する仮想空間を制御する仮想空間制御装置に使用するコンピュータプログラムを記憶する記録媒体において、
前記仮想空間上で前記ユーザを表すアバタが、前記仮想空間上の所定のオブジェクトまたはアバタから所定の距離の領域に進入したことを検知する検知ステップと、
前記検知ステップの検知結果に対応して、前記仮想空間上の前記オブジェクトに設定された機能の一覧を示すウィンドウを表示する表示ステップと、
前記ウィンドウに示される機能のうち、指定されたものを処理する機能処理ステップと
を備えるコンピュータプログラムを記憶することを特徴とする記録媒体。
In a recording medium that stores a computer program used for a virtual space control device that controls a virtual space shared by a plurality of users,
A detection step of detecting that an avatar representing the user in the virtual space has entered a region at a predetermined distance from a predetermined object or avatar in the virtual space,
A display step of displaying a window showing a list of functions set for the object in the virtual space in accordance with the detection result of the detection step;
A storage medium storing a computer program comprising: a function processing step of processing a designated one of the functions shown in the window.
JP28099997A 1997-10-15 1997-10-15 Virtual space control device and method, and recording medium Expired - Fee Related JP3562555B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28099997A JP3562555B2 (en) 1997-10-15 1997-10-15 Virtual space control device and method, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28099997A JP3562555B2 (en) 1997-10-15 1997-10-15 Virtual space control device and method, and recording medium

Publications (2)

Publication Number Publication Date
JPH11120373A JPH11120373A (en) 1999-04-30
JP3562555B2 true JP3562555B2 (en) 2004-09-08

Family

ID=17632865

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28099997A Expired - Fee Related JP3562555B2 (en) 1997-10-15 1997-10-15 Virtual space control device and method, and recording medium

Country Status (1)

Country Link
JP (1) JP3562555B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6684952B1 (en) 2019-06-28 2020-04-22 株式会社ドワンゴ Content distribution device, content distribution program, content distribution method, content display device, content display program, and content display method

Also Published As

Publication number Publication date
JPH11120373A (en) 1999-04-30

Similar Documents

Publication Publication Date Title
JP7263442B2 (en) System and method for real-time remote control of mobile applications
US9083844B2 (en) Computer-readable medium, information processing apparatus, information processing system and information processing method
US10444955B2 (en) Selectable interaction elements in a video stream
US9608944B2 (en) Information processing apparatus and information processing method
CN111399709A (en) Message reminding method and device, electronic equipment and storage medium
US20060036703A1 (en) System and method for integrating instant messaging in a multimedia environment
EP2597868A1 (en) Enhanced interface for voice and video communications
EP4203478A1 (en) Multi-user live streaming method and apparatus, terminal, server, and storage medium
JP2018516516A (en) Interaction information processing method, client, service platform, and storage medium
KR20010040672A (en) System for supporting activities
JP7326963B2 (en) Communication terminal, communication system, image sharing method and program
CN114816154A (en) Painting display method and display device
CN110955374A (en) Message display method and device
CN113079419A (en) Video processing method of application program and electronic equipment
CN112711366A (en) Image generation method and device and electronic equipment
CN111901695A (en) Video content interception method, device and equipment and computer storage medium
CN114879875A (en) Painting display method and display device
JP3016350B2 (en) Agent interface method for home appliances PC
JP3562555B2 (en) Virtual space control device and method, and recording medium
CN109348238A (en) A kind of voice in live streaming connects wheat method, apparatus, server and storage medium
US20040186594A1 (en) Information processing system, information processing apparatus and method, recording medium and program
JP2003271277A (en) Information processor and information input method
CN111796737B (en) Information processing method and storage medium
CN112462954B (en) Expression display method and device
JP7057594B1 (en) Information processing equipment, online customer service system, online customer service method, scenario generation method, and program

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

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

Free format text: PAYMENT UNTIL: 20090611

Year of fee payment: 5

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20090611

Year of fee payment: 5

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

LAPS Cancellation because of no payment of annual fees
R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370