JP4048347B2 - Three-dimensional virtual space display method, program, recording medium storing the program, and three-dimensional virtual space control device - Google Patents

Three-dimensional virtual space display method, program, recording medium storing the program, and three-dimensional virtual space control device Download PDF

Info

Publication number
JP4048347B2
JP4048347B2 JP2001345070A JP2001345070A JP4048347B2 JP 4048347 B2 JP4048347 B2 JP 4048347B2 JP 2001345070 A JP2001345070 A JP 2001345070A JP 2001345070 A JP2001345070 A JP 2001345070A JP 4048347 B2 JP4048347 B2 JP 4048347B2
Authority
JP
Japan
Prior art keywords
avatar
participant
virtual space
dimensional virtual
utterance
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
JP2001345070A
Other languages
Japanese (ja)
Other versions
JP2003150978A (en
JP2003150978A5 (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.)
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 JP2001345070A priority Critical patent/JP4048347B2/en
Publication of JP2003150978A publication Critical patent/JP2003150978A/en
Publication of JP2003150978A5 publication Critical patent/JP2003150978A5/ja
Application granted granted Critical
Publication of JP4048347B2 publication Critical patent/JP4048347B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

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

Description

【0001】
【発明の属する技術分野】
本発明は、三次元仮想空間表示方法、プログラム及びそのプログラムを格納した記録媒体、並びに、三次元仮想空間制御装置に関する。詳しくは、三次元仮想空間に参加した参加者の視線が、注目相手(たとえば、発話者または会話したい相手)の方向に自然に向くように改良した三次元仮想空間表示方法、プログラム及びそのプログラムを格納した記録媒体、並びに、三次元仮想空間制御装置に関する。
【0002】
【従来の技術】
従来より、インターネットを介して接続された参加者の端末に仮想世界(Virtual World)を模した三次元仮想空間画像を表示し、その空間内に「アバタ」(avatar:インド神話に登場する神の化身)と呼ばれる、参加者の分身オブジェクトを配し、そのアバタを参加者が操作することにより、仮想世界内を自由に歩き回ったり、他の参加者と会話を交わしたりできる、いわゆるサイバー・スペース・サービス・システムが知られている(たとえば、特開平9−81781号公報、特開2000−14282号公報)。
【0003】
図12は、かかるサイバー・スペース・サービス・システムによって提供される三次元仮想空間の一例を示す図である。この図において、画面201は、ある参加者(便宜的に「参加者A」という)の端末に表示された仮想世界の画像である。この画面201には、背景画像(図では町並みと右奥の山)の前に、複数のアバタ202、203とペット204、205が配置されている。アバタ202、203はそれぞれ他の参加者(以下「参加者B」と「参加者C」という)の分身であり、また、ペット204、205はそれらの参加者B及び参加者Cのエージェント(アバタごとに出現するオブジェクトのこと)である。
【0004】
ここで、図示の構図は、参加者Aの視点から見たときの絵である。すなわち、参加者Aは、現在、町並みと右奥の山を見渡す丘に立っており、この丘の上には、参加者Aの他に、参加者B、Cのアバタ202、203とそれらのエージェント(ペット204、205)が存在している。なお、画面201には、参加者Aのアバタは表示されていない。これは、現在、アバタの視点から見るモードを選択しているからである。別の視点モードを選択することにより、参加者Aのアバタを画面201に表示させることも可能である。また、参加者Aのエージェントも存在するが、今は、画面201の外に位置していて見えていない。
【0005】
さて、すべてのアバタは既述のとおり参加者の分身である。すなわち、画面201の視点の元になる非表示のアバタは参加者Aの分身であり、また、アバタ202は参加者Bの分身、アバタ203は参加者Cの分身である。各参加者は、自分の端末を操作して画面201の分身(アバタ)の位置を移動させたり、視点を変えたりすることができる。さらに、画面201にメッセージを送ることもできる。それらの操作結果は、自分の端末はもちろんのこと、他の参加者の端末にも同様に反映されるようになっており、同じ仮想世界を複数の参加者で共有できる仕組みになっている。
【0006】
たとえば、画面201には、参加者Cのメッセージ(“こんにちは>花子さん”)206と参加者Bの返信メッセージ(“はい、こんにちは”)207がそれぞれのアバタの上に表示されている。“花子”は参加者Bのニックネーム(チャットネームまたはハンドルネームともいう)、“太郎”は参加者Cのニックネームである。メッセージ206は参加者C(太郎さん)の端末から送信されたもの、メッセージ207は参加者B(花子さん)の端末から送信されたものであり、これらのメッセージ206、207を含む画面201は、仮想世界にアクセスしているすべての参加者(参加者A〜C)の端末に等しく表示される。
【0007】
また、参加者Aの(アバタの)視線を変えたい場合、参加者Aは画面201の下側に表示されたコントロールパネル208を操作する。
【0008】
図13は、コントロールパネル208の拡大図及び用途説明図である。コントロールパネル208には、用途ごとにデザインされた複数のスイッチオブジェクト208a〜208mが配置されている。左から順にその用途を説明すると、たとえば、スイッチオブジェクト208aは視点仰角変更用、スイッチオブジェクト208bは視点俯角変更用、スイッチオブジェクト208cは視点左旋回用、スイッチオブジェクト208dは視点前方移動用、スイッチオブジェクト208eは視点後方移動用、スイッチオブジェクト208fは視点右旋回用、スイッチオブジェクト208gは視点左水平移動用、スイッチオブジェクト208hは視点高度上昇用、スイッチオブジェクト208iは視点右水平移動用、スイッチオブジェクト208jは視点高度下降用、スイッチオブジェクト208kは視点小連続旋回用、スイッチオブジェクト208mは視点大連続旋回用である。
【0009】
図において、参加者Aのアバタ209は、「単純化立姿図形」と「俯瞰図形」の二種類で表してある。丸形状の俯瞰図形は、アバタ209の頭部を俯瞰して見た形を単純化したものであり、俯瞰図形の矢印記号は視線方向(すなわち顔の正面方向)を表している。
【0010】
参加者Aがスイッチオブジェクト208aをクリック(マウス等のポインティングデバイスによるクリック操作;以下同様)すると、アバタ209の視線が頭上を見上げる方向に変化し、これに伴い、画面201の構図が変化する。同様にスイッチオブジェクト208bをクリックすると、同視線が足下を見下ろす方向に変化し、また、スイッチオブジェクト208cをクリックすると、アバタ209の体軸が反時計回りに回転(同方向に視点移動)する。また、スイッチオブジェクト208dをクリックすると、アバタ209が前進し、スイッチオブジェクト208eをクリックすると、アバタ209が後退する。また、スイッチオブジェクト208fをクリックすると、アバタ209の体軸が時計回りに回転しスイッチオブジェクト208gをクリックすると、アバタ209が左方向に水平移動する。またスイッチオブジェクト208hをクリックすると、アバタ209の視点位置が高く(あたかも空中に浮かんだように)なりスイッチオブジェクト208iをクリックすると、逆に視点位置が低くなり、さらにスイッチオブジェクト208jをクリックすると、アバタ209が右方向に水平移動する。
【0011】
したがって、たとえば、参加者Aの(アバタ209の)視線を参加者B(アバタ202)の方向に向けたい(正対させたい)場合は、参加者Aは、視点左旋回用のスイッチオブジェクト208cをクリックし、画面201の真ん中に参加者B(アバタ202)が来るように構図を微調整すればよい。または、視点左水平移動用のスイッチオブジェクト208gをクリックしてもよい。この場合、参加者A(のアバタ)は左移動するので、その移動量を微調整することにより、参加者B(アバタ202)の正面に位置させることができる。
【0012】
このように、参加者の端末を操作することにより、自分の分身(参加者Aにああってはアバタ209、参加者Bにあってはアバタ202、参加者Cにあってはアバタ203)の仮想世界における視点を自由自在に変化させることができ、あたかも自らがその仮想世界に存在するかのようなバーチャル・リアリティーを味わうことができる。
【0013】
【発明が解決しようとする課題】
しかしながら、上記従来の技術にあっては、いちいちコントロールパネル208を操作してアバタの視点を変えなければならないため、操作が面倒であるという問題点があった。
【0014】
そこで、本発明が解決しようとする課題は、現実の世界では、たとえば、近くの人の声に反応してその声の方向に視線を向けるのが自然な振る舞いであることに着目し、かかる仕組みをアルゴリズムとして取り入れることにより、参加者の端末操作を必要とすることなく、アバタの視点を自律的に変更できるようにし、以て、操作性の大幅な改善を図った三次元仮想空間表示方法、プログラム及びそのプログラムを格納した記録媒体、並びに、三次元仮想空間制御装置を提供することを目的とする。
【0015】
【課題を解決するための手段】
本発明の三次元仮想空間表示方法は、三次元仮想空間を管理し、三次元仮想空間に参加中の各参加者自身の分身であるアバタを当該三次元仮想空間内に表現し、各参加者の端末操作に応答させてその参加者のアバタの表示位置やアバタの視点を変更し、任意の参加者の端末から入力された発話メッセージを、その参加者のアバタに対応させて前記三次元仮想空間内、または所定のメッセージボードに表現すると共に、各端末に対して、三次元仮想空間を表示させる三次元仮想空間制御装置の三次元仮想空間表示方法において、三次元仮想空間制御装置が、発話メッセージに発話相手に関する情報が含まれているか否かを判定する第1ステップと、三次元仮想空間制御装置が、判定の結果が肯定のとき情報に基づいて発話相手のアバタを特定する第2ステップと、三次元仮想空間制御装置が、その発話相手のアバタの三次元仮想空間内における位置である第1の位置を特定する第3ステップと、三次元仮想空間制御装置が、発話メッセージに対応する参加者のアバタの視線を、第1の位置に指向させる第4ステップと、三次元仮想空間制御装置が、発話メッセージに対応する参加者のアバタの三次元仮想空間内における位置である第2の位置を特定する第5ステップと、三次元仮想空間制御装置が、他の参加者のアバタの視線を、第2の位置に指向させる第6ステップとを含むことを特徴とする。
【0016】
前記第2ステップにおいて、三次元仮想空間制御装置が、三次元仮想空間を表示するビューウィンドウ内に表示されているアバタの中から発話相手のアバタを特定し、第3ステップにおいて、三次元仮想空間制御装置が、発話相手のアバタがビューウィンドウ内に表示されているとき、第1の位置を特定し、第4ステップにおいて、三次元仮想空間制御装置が、位置が特定された発話相手のアバタと発話メッセージに対応する参加者のアバタの距離が所定の制限距離以内の場合に、発話メッセージに対応する参加者のアバタの視線を、第1の位置に指向させることができる。
【0017】
前記所定の制限距離は、シチュエーションに応じて可変であるようにすることができる。
【0018】
前記第1ステップにおいて、三次元仮想空間制御装置が、発話相手に関する情報として、特定の記号が発話メッセージに含まれているか否かを判定し、判定の結果が肯定のとき、さらに、発話メッセージより発話相手の固有名詞を取り出し、第2ステップにおいて、三次元仮想空間制御装置が、取り出された固有名詞を用いて、発話相手のアバタを特定することができる。
【0019】
前記第5ステップにおいて、三次元仮想空間制御装置が、さらに、三次元仮想空間を表示するビューウィンドウ内に表示されている他の参加者のアバタを特定し、第6ステップにおいて、三次元仮想空間制御装置が、発話メッセージに対応する参加者のアバタと、特定された他の参加者のアバタの距離が所定の制限距離以内の場合に、他の参加者のアバタの視線を、第2の位置に指向させることができる。
【0020】
前記所定の制限距離は、シチュエーションに応じて可変であるようにすることができる。
【0021】
前記三次元仮想空間制御装置が、参加者のアバタが特定した位置に指向しているか否かを判定する第7ステップをさらに含み、第6ステップにおいて、三次元仮想空間制御装置が、特定した位置に指向していない参加者のアバタの視線を、特定した位置に指向させることができる。
【0022】
本発明のプログラムは、三次元仮想空間を管理し、前記三次元仮想空間に参加中の各参加者自身の分身であるアバタを当該三次元仮想空間内に表現し、各参加者の端末操作に応答させてその参加者のアバタの表示位置やアバタの視点を変更し、任意の参加者の端末から入力された発話メッセージを、その参加者のアバタに対応させて三次元仮想空間内、または所定のメッセージボードに表現すると共に、各端末に対して、三次元仮想空間を表示させるコンピュータに実行させるプログラムであって、コンピュータが、発話メッセージに発話相手に関する情報が含まれているか否かを判定する第1ステップと、コンピュータが、判定の結果が肯定のとき情報に基づいて発話相手のアバタを特定する第2ステップと、コンピュータが、その発話相手のアバタの三次元仮想空間内における位置である第1の位置を特定する第3ステップと、コンピュータが、発話メッセージに対応する参加者のアバタの視線を、第1の位置に指向させる第4ステップと、コンピュータが、発話メッセージに対応する参加者のアバタの三次元仮想空間内における位置である第2の位置を特定する第5ステップと、コンピュータが、他の参加者のアバタの視線を、第2の位置に指向させる第6ステップとを含むことを特徴とする。
前記第2ステップにおいて、コンピュータが、三次元仮想空間を表示するビューウィンドウ内に表示されているアバタの中から発話相手のアバタを特定し、第3ステップにおいて、コンピュータが、発話相手のアバタがビューウィンドウ内に表示されているとき、第1の位置を特定し、第4ステップにおいて、コンピュータが、位置が特定された発話相手のアバタと発話メッセージに対応する参加者のアバタの距離が所定の制限距離以内の場合に、発話メッセージに対応する参加者のアバタの視線を第1の位置に指向させることができる。
前記所定の制限距離は、シチュエーションに応じて可変であるようにすることができる。
前記第1ステップにおいて、コンピュータが、発話相手に関する情報として、特定の記号が発話メッセージに含まれているか否かを判定し、判定の結果が肯定のとき、さらに、発話メッセージより発話相手の固有名詞を取り出し、第2ステップにおいて、コンピュータが、取り出された固有名詞を用いて、発話相手のアバタを特定することができる。
前記第5ステップにおいて、コンピュータが、さらに、三次元仮想空間を表示するビューウィンドウ内に表示されている他の参加者のアバタを特定し、第6ステップにおいて、コンピュータが、発話メッセージに対応する参加者のアバタと、特定された他の参加者のアバタの距離が所定の制限距離以内の場合に、他の参加者のアバタの視線を、第2の位置に指向させることができる。
前記所定の制限距離は、シチュエーションに応じて可変であるようにすることができる。
前記コンピュータが、参加者のアバタが特定した位置に指向しているか否かを判定する第7ステップをさらに含み、第6ステップにおいて、コンピュータが、特定した位置に指向していない参加者のアバタの視線を、特定した位置に指向させることができる。
本発明の記録媒体は、上述したいずれかに記載のプログラムを格納することを特徴とする。
本発明の三次元仮想空間制御装置は、三次元仮想空間を管理し、三次元仮想空間に参加中の各参加者自身の分身であるアバタを三次元仮想空間内に表現し、各参加者の端末操作に応答させてその参加者のアバタの表示位置やアバタの視点を変更し、任意の参加者の端末から入力された発話メッセージを、その参加者のアバタに対応させて三次元仮想空間内、または所定のメッセージボードに表現すると共に、各端末に対して、三次元仮想空間を表示させる三次元仮想空間制御装置であって、発話メッセージに発話相手に関する情報が含まれているか否かを判定する判定手段と、判定手段による判定結果が肯定のとき、情報に基づいて、発話相手のアバタを特定するアバタ特定手段と、アバタ特定手段により特定された発話相手のアバタの、三次元仮想空間内における位置である第1の位置を特定する第1の位置特定手段と、発話メッセージに対応する参加者のアバタの視線を、第1の位置 特定手段により特定された第1の位置に指向させる第1の視線指向手段と、発話メッセージに対応する参加者のアバタの三次元仮想空間内における位置である第2の位置を特定する第2の位置特定手段と、他の参加者のアバタの視線を、第2の位置特定手段により特定された第2の位置に指向させる第2の視線指向手段とを備えることを特徴とする。
本発明の三次元仮想空間表示方法、プログラム及びそのプログラムを格納した記録媒体、並びに、三次元仮想空間制御装置によれば、発話メッセージに発話相手に関する情報が含まれているか否かが判定され、その判定の結果が肯定のとき情報に基づいて発話相手のアバタが特定され、その発話相手のアバタの三次元仮想空間内における位置である第1の位置が特定され、発話メッセージに対応する参加者のアバタの視線が特定した第1の位置に指向され、さらに、発話メッセージに対応する参加者のアバタの三次元仮想空間内における位置である第2の位置が特定され、他の参加者のアバタの視線が、特定された第2の位置に指向される。
【0023】
【発明の実施の形態】
以下、本発明の実施の形態を、図面を参照しながら説明する。なお、以下の説明における様々な細部の特定ないし実例および数値や文字列その他の記号の例示は、本発明の思想を明瞭にするための、あくまでも参考であって、それらのすべてまたは一部によって本発明の思想が限定されないことは明らかである。また、周知の手法、周知の手順、周知のアーキテクチャおよび周知の回路構成等(以下「周知事項」)についてはその細部にわたる説明を避けるが、これも説明を簡潔にするためであって、これら周知事項のすべてまたは一部を意図的に排除するものではない。かかる周知事項は本発明の出願時点で当業者の知り得るところであるので、以下の説明に当然含まれている。
【0024】
図1は、本発明に係る「三次元仮想空間表示方法」を適用できるネットワーク・コンピューティング・システム1の構成を模式的に示した図である。このネットワーク・コンピューティング・システム1上では、三次元仮想空間(以下「三次元仮想世界」または単に「仮想世界」ともいう)に展開されるコミュニティ・システムが構築・提供される。このコミュニティ・システムは、後述するように、三次元仮想空間を表示し、ナビゲーションするブラウザ(後述のCPブラウザ)と、三次元仮想空間を各参加者同士で共有できるように管理する共有仮想世界サーバ(後述のCPサーバ)と、共有アプリケーション開発環境であるAO(ApplicationObject)という3つの要素で構成される。
【0025】
ネットワーク・コンピューティング・システム1には、無数のコンピュータ・システムが接続されている。これらコンピュータ・システムは、世界中に散在しており、一部のコンピュータは各種のサービスを有償または無償で提供する「サーバ」として稼動し、他の一部はサーバに対してサービスを要求する「クライアント」として稼動している。
【0026】
また、ネットワーク・コンピューティング・システム1は、通信媒体として、インターネット2や、その他の小規模ネットワークとしてのLAN(LocalArea Network)3a、3b、・・・・、各国の電話会社が構築・提供する公衆電話網4などを含む。それぞれのLAN3a、3b、・・・・の実体は、単一のネットワーク・セグメントであっても、あるいは複数のセグメントがルータで接続された構成であってもよい。
【0027】
インターネット2やそれぞれのLAN3a、3b、・・・・は、ルータ5a、5b、・・・・等を経由して相互接続されている。インターネット2の実体は、LAN3a、3b、・・・・のサーバ同士が相互接続を繰り返した結果として世界規模に成長し巨大ネットワークである。これらインターネット2やLAN3a、3b、・・・・上のサーバ同士は、たとえば、TCP/IP(Transmission Control Protocol/Internet Protocol)などの所定の通信プロトコルに従って相互アクセスが可能となっている。
【0028】
また、インターネット2やLAN3a、3b、・・・・などのネットワークと、公衆電話網4とは、ゲートウェイ・システム(G/W)6によって相互接続されている。公衆電話網4には、たとえば、PSTN(Public Switched Telephone Network)やISDN(Integrated Service Digital Network)が含まれる。
【0029】
公衆電話網4は、さらに無数の交換局や端局(図示しない)を擁し、末端には一般家庭などに設置された加入電話機が接続されている。また、公衆電話網4には、さらに、携帯電話サービス・プロバイダ、PHS(Personal Handyphone System)サービス・プロバイダなど、無線通信サービスを提供する多数のキャリアによって、多数の無線電話網が敷設されている。
【0030】
インターネット2上のコンピュータ・システム(LAN経由でインターネット2接続されているコンピュータを含む)は、インターネット2上で識別可能なIPアドレスが割り当てられており、このIPアドレスは各コンピュータとインターネット2との論理的な接続点となる。
【0031】
また、インターネット2上には、専用線によるIP接続を行うことができない一般ユーザのために、インターネット2への接続サービスを提供する通信事業者、いわゆる「インターネット・サービス・プロバイダ」(ISP)が存在する。営利のインターネット・サービス・プロバイダは、第2種電気通信事業者の登録・届出が必要である。インターネット・サービス・プロバイダの一例は、「So−net」である。一般ユーザは、サービス・プロバイダが設置するサーバすなわち「アクセス・ポイント」(AP)2a〜2dにダイヤルアップすることにより、インターネット2へのIP接続を行うことができる。また、今日のインターネット・サービス・プロバイダは、DSL(Digital Subscriber Line)やCATV(Community Antenna TeleVision)などを用いて定額制の24時間接続サービスを提供しているところが多い。このような常時接続サービスを利用する一般ユーザは、接続の都度、いちいちダイヤルアップする必要がない。
【0032】
専用線または任意のインターネット・サービス・プロバイダ経由でインターネット2に接続された一般ユーザの端末(以下「ユーザPC」という)7a、7b、7c、・・・・は、インターネット2上では、主として「クライアント」として稼動し、WWW(World Wide Web)サーバやその他のサーバに対して所要のサービスの提供を要求することができる。
【0033】
インターネット・サービス・プロバイダは、一般に、インターネット2への接続サービス以外にも、チャットやBBS(Bulletin Board System:電子掲示板システム)、電子メールなどの各種アプリケーションをインターネット2上で提供している。もちろん、インターネット・サービス・プロバイダ以外の各種の運営母体がチャットやBBS、電子メール等のインターネット2・アプリケーションを提供することも可能である。
【0034】
図1に示す例では、LAN3aを運営するインターネット・サービス・プロバイダが、本実施の形態に係るコミュニティ・システム、すなわち、三次元仮想世界上において各ユーザが分身としての「アバタ」を介してチャットなどの擬似コミュニケーションを楽しむことができるコミュニティ・システム・サービスを提供しているものとする。
【0035】
「チャット」(chat)とは、インターネット2を介して遠隔ユーザ間でリアルタイムのコミュニケーションを行うサービスのことであり、特に、三次元チャットは、三次元グラフィックスを用いて描画された三次元仮想空間上で各ログイン・ユーザ(以下「参加者」という)が自分の分身である「アバタ」を送り込んで、リアルタイムのコミュニケーションを行う環境を提供するサービスである。WWWシステム上の三次元仮想世界、すなわちコミュニティ・システムは、たとえば、ISO(International Organization forStandardization)標準のVRML(Virtual Reality Modeling Language)で記述することができ、また、Java(登録商標)を用いてその動作記述を行うことができる。また、かかる三次元仮想世界は、VRMLブラウザ(後述)を用いて表示し、ナビゲーションすることができる。
【0036】
LAN3a上には、三次元仮想世界をインターネット2上に構築・提供したり、この三次元仮想世界上での各種の社会活動を行う環境を提供して、同三次元仮想世界を管理するための共有仮想世界(CP:Community Place)サーバ(以下「CPサーバ」という)8や、1以上のアプリケーション・オブジェクト(AO)・サーバ(以下「AOサーバ」という)9a、9b、・・・・が設けられている。
【0037】
また、LAN3a上には、HTML(Hyper Text MarkupLanguage)コンテンツ10aなどのHTTP(Hyper Text Transfer Protocol)資源オブジェクトを提供する1以上のWWWサーバ10が設けられており、さらに、この他にも、各ユーザ・アカウントに対する電子メールの送受信サービスを提供するメール・サーバ11などが存在していてもよい。LAN3a上の各サーバ、すなわち、CPサーバ8、AOサーバ9a、9b、・・・・、WWWサーバ10、メール・サーバ11には、ルータ5aを介してインターネット2からアクセスすることができる。
【0038】
本実施の形態では、WWWサーバ10は、通常のHTMLコンテンツ10aの他に、三次元仮想世界を記述したVRMLファイル10bを提供している。このVRMLファイル10bには、仮想世界と共有アプリケーション(SharedApplication)の記述、CPサーバ8のインターネット2のアドレス(URL:Uniform Resource Locator)またはその参照リンクが含まれている。
【0039】
図2は、本実施の形態に係る三次元仮想世界にログインするユーザ(参加者;便宜的に参加者Aと参加者C)のコンピュータ(たとえば、ユーザPC7a、7b)と、WWWサーバ10及びCPサーバ8との関係を示す図である。参加者Aと参加者Cのコンピュータ(ユーザPC7a、7b)は、それぞれ、WWWサーバ10が提供するHTMLコンテンツ10aをブラウズするHTMLブラウザ12と、VRMLファイル10bを扱うことができるVRMLブラウザ13の双方がインストールされている。
【0040】
本実施の形態で使用されるVRMLブラウザ13は、特に、共有仮想世界(CP:Community Place)を表示し、ナビゲーションするものであることから、「CPブラウザ13」とも呼ぶ。以下、本実施の形態においては、VRMLブラウザ13とCPブラウザ13を同義語として取り扱うことにする。HTMLブラウザ12とCPブラウザ13は、たとえば、米Microsoft社のオペレーティング・システム“Windows(R)シリーズ”などによって提供される同一のプラットフォーム上で動作することができる。ユーザPC7a、7b、7c、・・・・自体は、たとえば、米IBM社のPC/AT(Personal Computer/Advanced Technology)互換機またはその後継機で構成される。
【0041】
VRMLファイル10bを用いて構築される三次元仮想世界では、その仮想世界内に配置された各オブジェクトは、ユーザ操作に応答して発生するイベントや、あらかじめ設定された時間の経過に伴なって発生するタイマー・イベントなどに応答した自律的な動きすなわち“Behavior”を実現することができる。
【0042】
Behaviorのメカニズムは、「センサ」、「ルーティング」及び「スクリプト」という3つの要素の連携動作によって実現される。すなわち、(1)三次元仮想世界に配置されたオブジェクトなどのノードに対してあらかじめ関連付けられ、VRMLファイル10bとして記述されたセンサ・ノードが、そのフィールドの変化に基づいて外部イベントを感知して、VRMLシーン内にイベントを発生させる。(2)発生したイベントは、VRMLファイル10bとして記述されたルーティングに基づいて、オブジェクトの挙動を規定するプログラムである外部スクリプトにルーティング(すなわち伝達)される。(3)外部スクリプトには、イベントが到来した時点で呼び出されるメソッドがあらかじめ記述されている。ルーティングによって伝達されたイベントを受け取った外部スクリプトは、その記述に基づく処理を実行した後、その処理結果とルーティングの記述に基づいてVRMLシーン内の該当するノードのフィールド値を変更する。
【0043】
VRMLでは、センサ・ノードとして、たとえば、指定されたオブジェクト上をマウス・カーソルが通過したりクリックしたときにイベントを発生する“TouchSensor”や、指定された領域内にユーザの視点(ViewPoint)が侵入した場合にイベントを発生する“ProximittySensor”、所定時刻の到来又は所定時間間隔が経過する毎に発生する“TimerSensor”などが定義されている。
【0044】
上述したように、参加者Aと参加者CのユーザPC7a、7b上では、HTMLブラウザ12とともに、VRMLコンテンツを解釈可能なCPブラウザ13が稼動している。HTMLブラウザ12としては、米Netscape Communications社の“Netscape Navigator”や、米Microsoft社の“Internet Explorer”のような汎用ブラウザを使用することができる。
【0045】
ユーザPC7a、7b、7c、・・・・は、たとえば、最寄のアクセス・ポイント(AP)へのダイヤルアップ接続などの所定の手続を経てインターネット2に接続され、または、常時接続の場合はこのような手続きを省略してインターネット2に接続される。さらに、ユーザPC7a、7b、7c、・・・・は、HTMLブラウザ12により、HTTPプロトコルに従ってWWWサーバ10にアクセスする。そして、WWWサーバ10から三次元仮想世界を記述するVRMLファイル10bをダウンロードし、それをCPブラウザ13に渡す。
【0046】
CPブラウザ13は、渡されたVRMLファイル10bを解析してブラウザ画面上に表示する。また、VRMLファイル10bにCPサーバ8のアドレスが記述されている場合には、そのアドレスへの接続を試みる。したがって、同一のVRMLファイル10bをダウンロードした各参加者のCPブラウザ13は、同一のCPサーバ8への接続を果たす(ログインする)ことになり、VRMLファイル10bに記述されたVRMLシーン(すなわち同じ三次元仮想世界)をログイン中の複数のユーザ(参加者)で共有することができる。
【0047】
CPサーバ8への接続、すなわち三次元仮想世界へのログインに成功すると、それ以後の通信はCPサーバ8とCPブラウザ13間で行われる。この通信は、所定のサーバ−クライアント間プロトコル〔本明細書中では、VSCP(Virtual Society ServerClient Protocol)と呼ぶ〕を用いて行われる。VSCPプロトコルには、ユーザがCPブラウザ13を通して行った変更をCPサーバ8に通知する機能や、通知された情報をCPサーバ8からさらに他のCPブラウザ13に通知する機能が含まれている。
【0048】
CPサーバ8は、各CPブラウザ13が知る必要がある情報(すなわちCPブラウザ13に送信すべき情報)の配信を、オーラ・アルゴリズムを用いて制限することができる。オーラとは、アバタの周辺の領域、すなわちユーザが興味を持つと想定される領域のことを意味し、オーラの外側にある事物は興味を持たないとみなして情報を送らない。オーラ・アルゴリズムを適用することにより、配信すべき情報量を削減し、各参加者へのネットワーク・トラフィックを規定の通信容量に制限するようにしている。
【0049】
CPサーバ8によって提供される三次元仮想世界上には、各ユーザの分身であるアバタや、アバタが飼育するペット(仮想生物;エージェントともいう)など、さまざまなオブジェクトが存在する。これらのオブジェクトの動作、その他仮想世界上のアプリケーションは、三次元仮想世界に存在する(すなわちログインしている)各ユーザ間で共有され、本明細書中では「共有アプリケーション」と呼ばれる。
【0050】
図3は、CPサーバ8、AOサーバ9a、9b、・・・・、WWWサーバ10に共通のハードウェア構成を示す図である。CPU(Central Processing Unit)21は、ROM(Read Only Memory)22に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)23は、CPU21が各種の処理を実行する上において必要なプログラムやデータを適宜記憶する。ハードディスク24には、データベース、その他必要なデータや、CPU21が処理するプログラムなどが記憶される。これらは、バス25を介して相互に接続されている。
【0051】
バス25にはまた、入出力インタフェース26が接続されており、入出力インタフェース26には、LCD(Liquid Crystal Display)や、CRT(Cathode Ray Tube)などで構成される表示部27、キーボード、マウス、マイクロホンなどで構成される入力部28が接続されると共に、さらに、モデムなどを内蔵して一般電話回線、専用回線、インターネット2などを介して外部の装置と通信する通信部29と、フロッピー(登録商標)ディスク、光ディスク、光磁気ディスクなどのディスクをドライブし、データを入出力するドライブ装置30が接続されている。
【0052】
図4は、ユーザPC7a、7b、7c、・・・・のハードウェア構成を示す図である。ユーザPC7a、7b、7c、・・・・は、CPU41、RAM42、ディスクコントローラ43、ディスク装置44、ディスプレイコントローラ45、ディスプレイ装置46、キーボードコントローラ47、キーボード装置48、ポインティングデバイス装置49、通信部50、メインバス51、バスインターフェース52および内部バス53などを有し、ディスク装置44にあらかじめ格納されたオペレーティングシステム等のソフトウェアリソース(HTMLブラウザ12、CPブラウザ13等)をRAM42にロードしてCPU41で実行することにより、前述のWWWサーバ10やCPサーバ8にアクセスし、所要の三次元仮想空間共有サービス(本実施の形態に係るコミュニティ・システム・サービス)を受けることができる。
【0053】
また、ユーザPC7a、7b、7c、・・・・は、かかるサービスに関わる各種ユーザインターフェース画面をディスプレイ装置46に表示し、そのインターフェース画面上でキーボード装置48やポインティングデバイス装置49を操作することにより、アバタの位置移動、アバタの視点移動、及び、メッセージの作成並びに送信などを行うことができるようになっている。
【0054】
参加者Aが自分の端末、たとえば、ユーザPC7aを操作し、所定の指令を入力すると、HTMLブラウザ12が、インターネット2を介して、所定のURLで規定されるWWWサーバ10にアクセスし、VRMLファイル10bを取得する。HTMLブラウザ12は、VRMLファイル10bを取得すると、それをCPブラウザ13に引き渡す。CPブラウザ13は、VRMLファイル10bを解析し、ディスプレイ装置46に表示する。また、CPブラウザ13は、VRMLファイル10bにCPサーバ8のアドレスが指定されている場合、CPサーバ8に接続する。
【0055】
接続が成功すると、それ以降、CPブラウザ13とCPサーバ8との間の通信は、VSCPを用いて行われる。VSCPは、参加者がCPブラウザ13を介して行った変更をCPサーバ8に通知する機能、その情報をCPサーバ8から、そこに接続されている他のCPブラウザ13に通知する機能などを有している。
【0056】
他の参加者(たとえば、参加者B)も、参加者Aと同様に、自分の端末(たとえば、ユーザPC7b)を操作してWWWサーバ10にアクセスし、VRMLファイル10bを取得すると、CPブラウザ13が、VRMLファイル10bを解析し、ディスプレイ装置46に表示する。
【0057】
このようにして、複数の参加者が、同一の仮想空間を共有する。
【0058】
仮想空間にアクセスした参加者は、アバタとしてその仮想空間上に表現される。所定のアバタ(参加者)が仮想空間をナビゲートすると、その動作は、仮想空間を共有する他のアバタにも反映される。このようなアバタの動きの情報も、VSCPによりCPブラウザ13からCPサーバ8に送られる。CPサーバ8は、この情報を自分に接続している他のCPブラウザ13に送る。この情報を受け取ったCPブラウザ13は、情報の送信元のCPブラウザ13で行われた変更を反映するように対応するアバタを更新する。
【0059】
図5は、AOサーバ9a、9b、・・・・、CPサーバ8、及び、CPブラウザ13(ユーザPC7a、7b、7c、・・・・上に存在するもの)の関係を示す図である。AOサーバ9a、9b、・・・・は、ユニバーサル(Universal)AO60を有する。ユニバーサルAO60は、仮想世界全体を制御するAOである。AOは、共有アプリケーションを管理するものであり、共有アプリケーションとは、アバタ等のオブジェクトと、その動作が共有空間にいる参加者により共有されるアプリケーションを意味する。
【0060】
図5の例においては、仮想世界61には、ユーザPC7a〜ユーザPC7cを操作する各ユーザ(各参加者A〜参加者C)に対応するアバタ62〜64からなるユーザオブジェクト群65と、各々のアバタ62〜64に対応して生成されるエージェント(図では便宜的に犬66〜68)からなるエージェントオブジェクト群69と、各々のアバタ62〜64により共有される共有オブジェクト(図では便宜的にショップ70、リサイクルボックス71)からなる共有オブジェクト群73とが配置されている。
【0061】
ユニバーサルAO60は、起動時、デフォルトのコンフィグレーションファイル(PAW.CONF)を読み込み、そこに記述されている内容に従って、ユーザ・マネージャ(User Manager)74、エージェント・マネージャ(Agent Manager)75、オブジェクト・マネージャ(Object Manager)76を生成する。
【0062】
ユーザ・マネージャ74は、参加者が仮想世界61にアクセスしてきたとき、各参加者ごとのユーザオブジェクト(User Object)を生成する。たとえば、3人の参加者(参加者A〜至参加者C)がアクセスしていると仮定すると、ユーザ・マネージャ74は、3つのユーザ・オブジェクト74a〜74cを生成し、これらのユーザ・オブジェクト74a〜74cは、それぞれ参加者ごとのアバタを生成管理する。すなわち、ユーザ・オブジェクト74aは、参加者Aのアバタ62を生成管理し、ユーザ・オブジェクト74bは、参加者Bのアバタ63を生成管理し、ユーザ・オブジェクト74cは、参加者Cのアバタ64を生成管理する。AOサーバ9a、9b、・・・・には、このような各種の処理を実行する上において必要な情報を適宜読み出すことができるように、データベース77が接続されている。
【0063】
エージェント・マネージャ75は、各参加者ごとのエージェントAOを生成する。この場合、3人の参加者A〜参加者Cであるから、エージェント・マネージャ75は、参加者Aに対応するエージェントAO75a、参加者Bに対応するエージェントAO75b、及び、参加者Cに対応するエージェントAO75cを生成する。これらのエージェントAO75a〜75cは、それぞれ参加者ごとのエージェントを生成管理する。すなわち、エージェントAO75a〜75aは、参加者Aのエージェント66を生成管理し、エージェントAO75a〜75bは、参加者Bのエージェント67を生成管理し、エージェントAO75a〜75cは、参加者Aのエージェント68を生成管理する。
【0064】
ユーザ・オブジェクト74a〜74cとエージェントAO75a〜75bは、参加者が仮想世界61にアクセス(ログ・イン)してきたときに生成され、仮想世界61から退去(ログ・アウト)したとき消去される。たとえば、新たに別の参加者(便宜的に参加者Dとする)が仮想世界61にアクセスしてきたときには、その参加者Dに対応するユーザ・オブジェクトとエージェントAOが新規に作成され、且つ、新規作成されたユーザ・オブジェクトとエージェントAOにより、参加者Dのアバタとエージェントが仮想世界に追加される。または、仮想世界から参加者(便宜的に参加者Aとする)が退去すると、その参加者Aに対応するユーザ・オブジェクト74aとエージェントAO75aが消去され、したがって、仮想世界61から参加者Aのアバタ62とエージェント66が取り除かれる。
【0065】
オブジェクトマネージャ76は、予め設定された所定のタイミングにおいて、共有オブジェクトAO(図示の例ではショップAO76aやリサイクルボックスAO76b)を生成し、これらの共有オブジェクトAOは、予め設定されている所定の時間存在する。ショップAO76aはショップ70を生成管理し、リサイクルボックスAO76bはリサイクルボックス71を生成管理する。
【0066】
CPサーバ8は、AOサーバ9a、9b、・・・・と各CPブラウザ13との間に位置して仮想世界61を構築し、CPブラウザ13は、仮想世界61の中の対応するアバタ(たとえば、参加者Aであればアバタ62)を基準とする所定の範囲を、その参加者Aの端末(ユーザPC7a)上で管理する。
【0067】
今、参加者Aが自分の端末(ユーザPC7a)のポインティングデバイス装置49を操作して、自分のエージェント(犬としてのエージェント66)をクリックした場合に、エージェント66に所定の動作(たとえば、「Wow!」と鳴く動作)を起こさせる処理について説明する。
【0068】
まず、AOサーバ9a、9b、・・・・は、CPサーバ8に接続すると、AOサーバ9a、9b、・・・・が管理する共有アプリケーション(共有物体)を、CPサーバ8が管理する仮想世界61内に追加するように要求する。CPサーバ8は、自分自身に接続している全てのCPブラウザ13に対して、AOサーバ9a、9b、・・・・からの要求を送信する。各CPブラウザ13は、この要求を受け取ると、対応する共有アプリケーションを出現させる。
【0069】
この状態で、参加者Aがエージェント66をマウスでクリックすると、対応するスクリプトがユーザPC7aのCPブラウザ13で起動される。このスクリプトは、CPサーバ8にエージェント66がクリックされたことを示すメッセージを送る。CPサーバ8は選択されたエージェント66を管理するAOサーバ9a、9b、・・・・にこのメッセージを送信する。
【0070】
AOサーバ9a、9b、・・・・は、メッセージに対応する処理を実行し、CPサーバ8に対して処理結果に対応するメッセージを送信する。このメッセージは、この例の場合、エージェント66を鳴かせるためのメッセージである。そして、このメッセージが、CPサーバ8から、そこに接続されている全てのCPブラウザ13を介して対応するエージェント66に渡され、処理される。その結果、ログ・イン中のすべての参加者のPC上で、エージェント66が、たとえば、「Wow!」と鳴くことになる。
【0071】
図6は、ログイン中の参加者のPCに表示された、本実施の形態に係るコミュニティ・システム・サービス用のユーザインターフェース画面を示す図である。このユーザインターフェース画面80は、それぞれ独立して位置や大きさを変更できる、たとえば、四つの画面から構成されている。
【0072】
第一の画面は、ビューウインドウ81である。このビューウィンドウ81には、その参加者(以下便宜的に参加者Aとする)のアバタの位置を基準とする仮想世界61内の所定の範囲が表示される。この例においては、所定の背景上に、アバタ82、83とエージェント84、85が表示されている。なお、これらのアバタ82、83やエージェント84、85は、他の参加者(たとえば、参加者B、参加者C)のものであり、参加者Aのアバタは非表示(すなわち、ビューウィンドウ81に映し出された絵はアバタの視点から見た時の構図である)となっている。また、参加者Aのエージェントも、ビューウィンドウ81の表示枠の外にいて見えないものとする。ビューウィンドウ81の下端には、自分のアバタの位置や視点を変更操作するためのコントロールパネル86が設けられており、このコントロールパネル86は、先に説明した従来技術のコントロールパネル208(図13参照)と同様のものであり、その操作方法等については、適宜に、図13を参照するものとする。
【0073】
第二の画面は、個人情報を表示するためのワールドツールウィンドウ87である。このワールドツールウィンドウ87には、アバタの視点切り換えボタン88、ペット情報ボタン89、パーソナル情報ボタン90、ペット情報表示エリア91などが設けられている。なお、アバタの視点切り換えボタン88を押すたびに、ビューウインドウ81の構図を、アバタの視点から見たもの(この場合アバタは非表示)、アバタの背中越しに見たもの、アバタの正面から見たものに切り換えることができる。
【0074】
第三の画面は、チャットウィンドウ(メッセージボード)92である。このチャットウィンドウ92には、自分のエージェント(図では現在見えていない)に対して各種の行為を実行するためのアクションボタン群93、チャットログ領域94、及び、メッセージ入力部95が設けられている。チャットログ領域94には、現在ログイン中の参加者間またはエージェントとの間でやり取りされているすべて(ただし、ある程度古いものは削除される)のチャットログが表示される。他の参加者とチャットする場合または自分のエージェントにメッセージを送る場合は、キーボード装置48を用いてメッセージ入力部95に所望の文字列を入力し、キーボード装置48の確定キー(たとえば、リターンキー)を押す。
【0075】
第四の画面は、コミュニケーションツールウィンドウ96である。このコミュニケーションツールウィンドウ96には、チャットボタン97、てがみボタン98、PHSボタン99、地図ボタン100などが設けられている。チャットボタン97をクリックすると、第三の画面(チャットウィンドウ92)をオープンしたりクローズしたりすることができる。また、てがみボタン98をクリックすると、仮想空間内を配送範囲とする手紙(電子メールのようなもの)を作成したり、送受信したりできる手紙ウィンドウ(不図示)をオープンすることができる。また、PHSボタン99をクリックすると、携帯電話機やPHSなどへのメッセージを作成し、送信するためのPHSウィンドウ(不図示)をオープンすることができる。また、地図ボタン100をクリックすると、現在の自分(アバタ)の所在と向きを地図上に明示する(たとえば、赤い矢印で示す)地図ウィンドウ(不図示)をオープンすることができる。
【0076】
参加者Aが自分のアバタの視点を変えたい場合、たとえば、参加者B(アバタ82)の方向に向けたい(正対させたい)場合は、参加者Aは、ビューウィンドウ81下端のコントロールパネル86を操作する。先にも説明したように、このコントロールパネル86は、図13に示すもの(コントロールパネル208)と同じものであるから、このような場合は、図13における視点左旋回用のスイッチオブジェクト208cをクリックし、ビューウィンドウ81の真ん中に参加者B(アバタ82)が来るように構図を微調整すればよい。または、図13における視点左水平移動用のスイッチオブジェクト208gをクリックしてもよい。この場合、参加者Aの視点は左移動するので、その移動量を微調整することにより、参加者B(アバタ82)の正面に位置させることができる。
【0077】
かかる手動操作による視点の移動は従来と同じであり、この点において特徴はないが、本実施の形態では、このような手動操作による視点移動の他に以下に説明する自律的移動を可能とすることにより、操作性の改善を図っている点に技術的な特徴がある。
【0078】
<発話者の方向を見る:発話反応型>
図7は、発話者の方向を自然に見るようにするための第1のアルゴリズムである。このアルゴリズムは、サーバサイド(CPサーバ8における視線方向制御処理:ステップS11〜ステップS20)とクライアントサイド(CPブラウザ13における表示処理:ステップS21)で実行される。このアルゴリズムを実行し、CPサーバ8が、任意の参加者(以下、便宜的に参加者Bとする)のクライアントPC7bから発話者と発話内容からなるパケットを受け取ると(ステップS11)、次に、そのパケットから発話者を抽出し(ステップS12)、ビューウィンドウ81に表示されている各参加者のアバタから上記発話者に対応するものを探し出す(ステップS13)。ここで、発話者は参加者Bであり、参加者Bのアバタはビューウィンドウ81の左端に表示されているから、次の判定結果(ステップS14)は肯定(YES)となる。なお、ステップS14の判定結果が否定(NO)となる場合、すなわち、発話者に対応するアバタがビューウィンドウ81に表示されていない場合は、このビューウィンドウ81の枠外に発話者のアバタがいるので、その場合は、発話者の方向を見る必要がなく、また、発話内容を表示する必要もないので、エラーとして処理し、そのパケットを切り捨てる(ステップS15)。
【0079】
ステップS14の判定結果が肯定(YES)となった場合、すなわち、発話者に対応する参加者Bのアバタがビューウィンドウ81に表示されている場合は、次に、参加者A(ビューウィンドウ81を見ている者)と参加者B(発話者)の間の距離を計算し(ステップS16)、その距離が所定の制限距離以内であるか否かを判定する(ステップS17)。ここで、所定の制限距離とは、たとえば、実世界における通常の会話可能距離に相当する距離のことである。
【0080】
ステップS17の判定結果が否定(NO)の場合、すなわち、参加者Aと参加者Bの距離が、実世界における通常の会話可能距離に相当する距離を越えている場合には、参加者Bの発した声が参加者Aに届かず、したがって、参加者Aがその声に反応し得る状態にないものと判断し、以下の処理(視線移動量計算や視線方向制御等)をパスし、参加者Bの発話内容をビューウィンドウ81のアバタ82の上に表示する(ステップS21)。
【0081】
一方、ステップS17の判定結果が肯定(YES)の場合、すなわち、参加者Aと参加者Bの距離が、実世界における通常の会話可能距離に相当する距離以内である場合には、参加者Bの発した声に参加者Aが充分に反応し得ると判断し、参加者Aの視線移動量を計算する(ステップS18:第1ステップ)。
【0082】
図8は、視線移動量の計算概念図である。この図において、まず、参加者Aと参加者Bの顔の中心点Pa、Pbを結ぶ直線Lを求め(ステップS18a)、次いで、参加者Aの視線方向Fと直線Lの角度θを求める(ステップS18b)。角度θが参加者Aの視線移動量になる。すなわち、θが0度になるように参加者Aの視線方向Fを変更することにより、参加者Aの視線を参加者Bの方向に向けることができる。
【0083】
このようにして視線移動量θを計算すると、次に、CPサーバ8は、視線移動量θが0以外の値であるか否かを判定する(ステップS19)。θ=0の場合は、すでに参加者Aの視線が参加者Bの方に向いているので、視線方向制御を行わずに、参加者Bの発話内容をビューウィンドウ81のアバタ82の上に表示する(ステップS21)。
【0084】
θ<>0の場合は、次に、視線移動量θだけ参加者Aの視線方向Fの移動制御を行うための情報をCPブラウザ13に送信し(ステップS20:第2ステップ)、CPブラウザ13は、その情報に基づいて参加者Aの視線を参加者Bの方に向けた後、参加者Bの発話内容をビューウィンドウ81のアバタ82の上に表示する(ステップS21)。
【0085】
したがって、この第1のアルゴリズムによれば、ビューウィンドウ81内に表示されている任意のアバタが発話したとき、その発話に反応して、他のアバタの視線をその発話を行ったアバタの方向に一斉に向けることができる。その結果、手動操作によるアバタの動きに加えて、発話反応型の自律的な動きをアバタに与えることができるから、操作性の改善はもちろんのこと、よりリアリティー感を増した三次元仮想空間表示方法を提供することができる。
【0086】
図9は、その発話反応型の自律的な動きを示す一例図である。この例においては、参加者Bは発話者であり、この参加者Bが所定の発話(たとえば、“やあ みんな”)を行うものとする。他の参加者(図では参加者Aと参加者C)と発話者の間の距離を所定の制限距離以内とすると、参加者Bの発話に応答して、他の参加者(参加者Aと参加者C)の視線移動量(図では便宜的に参加者Aの視線移動量θのみ示す)が計算され、各々の視線移動量θをゼロとするようにそれぞれの視線方向が制御される。すなわち、参加者A及び参加者Cの視線が発話者(参加者B)の方を向くように自律的に制御される。
【0087】
なお、この第1のアルゴリズムでは、発話者との距離が所定の制限距離(たとえば、実世界における通常の会話可能距離に相当する距離)以内の場合にのみ、その発話者の声に反応するようにしているが、これに限定されない。声の大きさによってはかかる距離の制限をなくしてもよいし、または、所定の制限距離をシチュエーションに応じて可変とするようにしてもよい。
【0088】
<発話内容を解釈して発話の相手の方向を見る:発話相手指定型>
図10は、発話内容を解釈して発話の相手の方向を見るようにするための第2のアルゴリズムである。このアルゴリズムは、サーバサイド(CPサーバ8における視線方向制御処理:ステップS30〜ステップS41)とクライアントサイド(CPブラウザ13における表示処理:ステップS42)で実行される。このアルゴリズムを実行すると、まず、CPサーバ8は、任意の参加者(以下、便宜的に参加者Aとする)が自分の端末(クライアントPC7a)を操作して入力した所望の相手(たとえば、参加者B)に対する発話内容(たとえば、“こんにちは>花子さん”)を受け取る(ステップS30)。
【0089】
ここで、発話内容中の記号(“>”)は、チャットの世界において、特定の相手に対するメッセージであることを明示するための常用記号であり、この場合、“こんにちは”の相手は“花子さん”である。
【0090】
次に、CPサーバ8は、発話内容に上記の記号(“>”)が含まれているか否かを判定し(ステップS31:第1ステップ)、含まれていなければ、以下の処理をパスして、参加者Aの発話内容をCPブラウザ13に送信し、ビューウィンドウ81に表示させ(ステップS42)、含まれている場合は、発話内容から発話対象者を特定する(ステップS32)。すなわち、発話内容の記号“>”よりも右側の文字列を取り出し、その文字列から接尾辞(“さん”や“さま”など)を取り除いて、発話対象者のチャットネーム(この場合は“花子”)を得る。
【0091】
次に、ビューウィンドウ81に表示されている各参加者のアバタから上記チャットネーム(“花子”)に対応するものを探し出す(ステップS33:第2ステップ)。発話対象者のチャットネームは“花子”であり、そのチャットネームを持つ参加者Bのアバタはビューウィンドウ81の左端に表示されているから、次の判定結果(ステップS34)は肯定(YES)となる。なお、ステップS34の判定結果が否定(NO)となる場合、すなわち、発話対象者に対応するアバタがビューウィンドウ81に表示されていない場合は、このビューウィンドウ81の枠外に発話対象者のアバタがいるので、その場合は、ステップS32で削除した接尾辞(“さん”)を発話内容に戻し(ステップS35)、再び発話対象者の有無を判定して(ステップS36)、発話対象者がビューウィンドウ81に表示されていない場合は、以下の処理をパスし、参加者Aの発話内容をビューウィンドウ81に表示する(ステップS42)。
【0092】
ステップS34の判定結果が肯定(YES)となった場合、すなわち、発話対象者に対応する参加者Bのアバタがビューウィンドウ81に表示されている場合は、次に、参加者A(発話者)と参加者B(発話対象者)との間の距離を計算し(ステップS37)、その距離が所定の制限距離以内であるか否かを判定する(ステップS38)。ここで、所定の制限距離とは、たとえば、実世界における通常の会話可能距離に相当する距離のことである。
【0093】
ステップS38の判定結果が否定(NO)の場合、すなわち、参加者Aと参加者Bとの間の距離が、実世界における通常の会話可能距離に相当する距離を越えている場合には、参加者Aの発した声が参加者Bに届かず、したがって、参加者Bがその声に反応し得る状態にないものと判断し、以下の処理(視線移動量計算や視線方向制御等)をパスし、参加者Aの発話内容をビューウィンドウ81に表示する(ステップS42)。
【0094】
一方、ステップS38の判定結果が肯定(YES)の場合、すなわち、参加者Aと参加者Bとの間の距離が、実世界における通常の会話可能距離に相当する距離以内である場合には、参加者Aの発した声に参加者Bが充分に反応し得ると判断し、参加者Aの視線移動量を計算する(ステップS39:第3ステップ)。視線移動量の計算概念は、先の第1のアルゴリズムと同じ(図8参照)である。すなわち、まず、参加者Aと参加者Bの顔の中心点Pa、Pbを結ぶ直線Lを求め(ステップS18a)、次いで、参加者Aの視線方向Fと直線Lの角度θを求める(ステップS18b)。角度θが参加者Aの視線移動量になる。θが0度になるように参加者Aの視線方向Fを変更することにより、参加者Aの視線を参加者Bの方向に向けることができる。
【0095】
このようにして視線移動量θを計算すると、次に、CPサーバ8は、視線移動量θが0以外の値であるか否かを判定する(ステップS40)。θ=0の場合は、すでに参加者Aの視線が参加者Bの方に向いているので、視線方向制御を行わずに、参加者Aの発話内容をビューウィンドウ81に表示する(ステップS42)。
【0096】
θ<>0の場合は、次に、視線移動量θだけ参加者Aの視線方向Fの移動制御を行うための情報をCPブラウザ13に送信し(ステップS41:第4ステップ)、CPブラウザ13は、その情報に基づいて参加者Aの視線を参加者Bの方に向けた後、参加者Aの発話内容をビューウィンドウ81に表示する(ステップS42)。
【0097】
したがって、この第2のアルゴリズムによれば、ビューウィンドウ81に表示されている任意のアバタが発話したとき、その発話相手の方向に、当該アバタの視線を向けることができる。その結果、手動操作によるアバタの動きに加えて、発話相手指定型の自律的な視線移動をアバタに与えることができるから、操作性の改善はもちろんのこと、よりリアリティー感を増した三次元仮想空間表示方法を提供することができる。
【0098】
図11は、その発話相手指定型の自律的な動きを示す一例図である。この例においては、参加者Aが発話者であり、相手指定の所定の発話(たとえば、“こんにちは>花子さん”)を発話するものとする。発話対象者(図では参加者B)と発話者との間の距離を所定の制限距離以内とすると、参加者Aの発話に応答して、参加者Aの発話対象者に対する視線移動量θが計算され、その視線移動量θをゼロとするように参加者Aの視線方向が制御される。すなわち、参加者Aの視線が発話対象者(参加者B;花子さん)の方を向くように自律的に制御される。前記の第1のアルゴリズムとの違いは、発話者のみが発話対象者の方を向く点にある。すなわち、先の第1のアルゴリズムでは、所定の制限距離以内にいる発話者以外の参加者が一斉に発話者の方を向くが、この第2のアルゴリズムでは、発話者のみが視線を変更するから、とりわけ一対一のコミュニケーションのリアリティーを増すことができる。
【0099】
なお、この第2のアルゴリズムでは、発話内容中に特定の記号(“>”)がある場合に、その記号の右側の文字列から発話相手の固有名詞(ニックネーム等)を取り出しているが、本発明の技術思想はかかる態様に限定されない。たとえば、人工知能技術を用いて、会話内容から発話相手の固有名詞(ニックネーム)を抽出するようにしてもよい。
【0100】
また、この第2のアルゴリズムでは、発話者対象者との距離が所定の制限距離(たとえば、実世界における通常の会話可能距離に相当する距離)以内の場合にのみ、発話者の視線を発話対象者の方に向けるようにしているが、これに限定されない。発話者の声の大きさによってはかかる距離の制限をなくしてもよいし、または、所定の制限距離をシチュエーションに応じて可変とするようにしてもよい。
【0101】
本実施の形態の主要な機能は、マイクロコンピュータを含むハードウェア資産と、オペレーティング・システム(OS)や各種プログラムなどのソフトウェア資産との有機的結合によって機能的に実現されるものであるが、ハードウェア資産およびOSは汎用のものを利用できるから、本発明にとって欠くことのできない必須の事項は、実質的に、前記の第1または第2のアルゴリズム(図7または図10)に集約されているということがいえる。したがって、本発明は、前記の第1または第2のアルゴリズムのすべてまたはその要部を格納した、FD、MO、CD、ハードディスク、半導体メモリなどの記録媒体(それ自体が流通経路に乗るものはもちろん、ネットワーク上にあって記録内容だけを提供するものも含む)を包含するものである。
【0102】
【発明の効果】
本発明によれば、任意の参加者の端末からの発話メッセージに基づいて、その発話メッセージに対応する参加者のアバタの三次元仮想空間内における位置が特定され、他の参加者のアバタの視線が前記特定された位置に指向させられる。
【0103】
したがって、三次元仮想空間内のアバタの発話に反応して他のアバタの視線が自律的に変更される「発話反応型の動き」をそれぞれのアバタに与えることができ、ユーザの手動操作を不要にして、よりリアリティー感を増した三次元仮想空間表示方法を提供することができる。
【0104】
本発明によれば、前記発話メッセージに対応する参加者のアバタと他の参加者のアバタの距離が所定の制限距離以内の場合にのみ、他の参加者のアバタの視線が前記特定された位置に指向させられる。
【0105】
したがって、たとえば、実世界における通常の会話可能距離に相当する距離以上離れている場合に、アバタの視線移動を行わないようにすることができ、実世界とのミスマッチを回避し、違和感をなくすことができる。
【0106】
本発明によれば、任意の参加者の端末からの発話メッセージに発話相手に関する情報が含まれているとき、その情報に基づいて発話相手のアバタが特定されると共に、その発話相手のアバタの前記三次元仮想空間内における位置が特定され、前記発話メッセージに対応する参加者のアバタの視線が前記特定された位置に指向させられる。
【0107】
したがって、三次元仮想空間内のアバタの発話内容からその発話相手を特定し、発話者の視線が発話相手の方に向くように自律的に変更される「発話相手指定型の動き」を発話者のアバタに与えることができ、ユーザの手動操作を不要にして、よりリアリティー感を増した三次元仮想空間表示方法を提供することができる。
【0108】
本発明によれば、前記発話相手のアバタと前記発話メッセージに対応する参加者のアバタの距離が所定の制限距離以内の場合にのみ、前記発話メッセージに対応する参加者のアバタの視線が前記特定された位置に指向させられる。
【0109】
したがって、たとえば、実世界における通常の会話可能距離に相当する距離以上離れている場合に、アバタの視線移動を行わないようにすることができ、実世界とのミスマッチを回避し、違和感をなくすことができる。
【図面の簡単な説明】
【図1】本発明に係る「三次元仮想空間表示方法」を適用できるネットワーク・コンピューティング・システム1の模式的構成図である。
【図2】本実施の形態に係る三次元仮想世界にログインするユーザのコンピュータ(たとえば、ユーザPC7a、7b)とWWWサーバ10及びCPサーバ8との関係図である。
【図3】CPサーバ8、AOサーバ9a、9b、・・・・、WWWサーバ10に共通のハードウェア構成図である。
【図4】ユーザPC7a、7b、7c、・・・・のハードウェア構成図である。
【図5】AOサーバ9a、9b、・・・・、CPサーバ8、及び、CPブラウザ13の関係図である。
【図6】本実施の形態に係るコミュニティ・システム・サービス用のユーザインターフェース画面を示す図である。
【図7】第1のアルゴリズム(発話反応型)を示す図である。
【図8】視線移動量の計算概念図である。
【図9】発話反応型の自律的な動きを示す一例図である。
【図10】第2のアルゴリズム(発話相手指定型)を示す図である。
【図11】発話相手指定型の自律的な動きを示す一例図である。
【図12】従来のサイバー・スペース・サービス・システムによって提供される三次元仮想空間の一例を示す図である。
【図13】コントロールパネル208の拡大図及び用途説明図である。
【符号の説明】
S18・・・・ステップ(第1ステップ)、S20・・・・ステップ(第2ステップ)、S31・・・・ステップ(第1ステップ)、S33・・・・ステップ(第2ステップ)、S39・・・・ステップ(第3ステップ)、S41・・・・ステップ(第4ステップ)、201・・・・画面(三次元仮想空間)、7a、7b、7c・・・・ユーザPC(端末)、82、83、62、63、64・・・・アバタ、92・・・・チャットウィンドウ(メッセージボード)。
[0001]
BACKGROUND OF THE INVENTION
  The present invention relates to a three-dimensional virtual space display method, a program, and a recording medium storing the programAnd three-dimensional virtual space control deviceAbout. Specifically, an improved three-dimensional virtual space display method, program, and program for improving the gaze of a participant who has participated in the three-dimensional virtual space so that the line of sight is naturally directed toward the target partner (for example, a speaker or a partner who wants to talk) Stored recording mediumAnd three-dimensional virtual space control deviceAbout.
[0002]
[Prior art]
Conventionally, a 3D virtual space image simulating a virtual world is displayed on the participant's terminal connected via the Internet, and “avatar” (avatar) is a god that appears in Indian mythology. A so-called cyber space that allows participants to walk around in the virtual world and exchange conversations with other participants by arranging the participant's alternation object called `` incarnation '' and operating the avatar by the participant. Service systems are known (for example, Japanese Patent Laid-Open Nos. 9-81781 and 2000-14282).
[0003]
FIG. 12 is a diagram showing an example of a three-dimensional virtual space provided by such a cyber space service system. In this figure, a screen 201 is an image of the virtual world displayed on the terminal of a certain participant (referred to as “participant A” for convenience). In this screen 201, a plurality of avatars 202, 203 and pets 204, 205 are arranged in front of a background image (in the figure, the streets and mountains in the back right). Each of the avatars 202 and 203 is a part of another participant (hereinafter referred to as “participant B” and “participant C”), and the pets 204 and 205 are agents (participants A and B) of the participants B and C, respectively. It is an object that appears every time).
[0004]
Here, the illustrated composition is a picture when viewed from the viewpoint of the participant A. That is, participant A is currently standing on a hill overlooking the town and the mountain in the back right, and on this hill, in addition to participant A, participants B and C's avatars 202 and 203 and their Agents (pets 204, 205) exist. Note that participant 201's avatar is not displayed on screen 201. This is because the mode for viewing from the avatar's viewpoint is currently selected. It is also possible to display participant A's avatar on screen 201 by selecting another viewpoint mode. There is also an agent of participant A, but now it is located outside the screen 201 and is not visible.
[0005]
Now, all avatars are part of the participants as described above. That is, the non-displayed avatar that is the basis of the viewpoint of the screen 201 is a part of the participant A, the avatar 202 is the part of the participant B, and the avatar 203 is the part of the participant C. Each participant can operate his / her terminal to move the position of the alternation (avatar) on the screen 201 or change the viewpoint. In addition, a message can be sent to the screen 201. These operation results are reflected in the terminals of other participants as well as their own terminals, and the same virtual world can be shared by a plurality of participants.
[0006]
For example, the screen 201, ( "Yes, hello") message ( "Hello> Hanako") 206 and the participant B of the reply message of the participants C 207 is displayed on top of each of the avatar. “Hanako” is the nickname (also referred to as chat name or handle name) of the participant B, and “Taro” is the nickname of the participant C. Message 206 is transmitted from the terminal of participant C (Mr. Taro), message 207 is transmitted from the terminal of participant B (Mr. Hanako), and screen 201 including these messages 206 and 207 is: It is displayed equally on the terminals of all participants (participants A-C) accessing the virtual world.
[0007]
When it is desired to change the line of sight of the participant A (avatar), the participant A operates the control panel 208 displayed on the lower side of the screen 201.
[0008]
FIG. 13 is an enlarged view of the control panel 208 and an application explanatory diagram. On the control panel 208, a plurality of switch objects 208a to 208m designed for each application are arranged. The application will be described in order from the left. For example, the switch object 208a is for changing the viewpoint elevation angle, the switch object 208b is for changing the viewpoint depression angle, the switch object 208c is for turning the viewpoint to the left, the switch object 208d is for moving the viewpoint forward, and the switch object 208e. Is for backward movement of the viewpoint, the switch object 208f is for turning the viewpoint to the right, the switch object 208g is for moving the viewpoint left horizontally, the switch object 208h is for increasing the viewpoint height, the switch object 208i is for moving the viewpoint right horizontally, and the switch object 208j is the viewpoint For altitude descent, the switch object 208k is for small continuous viewpoint turning, and the switch object 208m is for large continuous viewpoint turning.
[0009]
In the figure, the avatar 209 of the participant A is represented by two types of “simplified standing figure” and “overhead figure”. The circular overhead view graphic is a simplified form of the overhead view of the head of the avatar 209, and the arrow symbol of the overhead view graphic represents the line-of-sight direction (that is, the front direction of the face).
[0010]
When the participant A clicks the switch object 208a (click operation with a pointing device such as a mouse; the same applies hereinafter), the line of sight of the avatar 209 changes in a direction looking up above the head, and the composition of the screen 201 changes accordingly. Similarly, when the switch object 208b is clicked, the line of sight changes in a direction to look down on the feet, and when the switch object 208c is clicked, the body axis of the avatar 209 rotates counterclockwise (the viewpoint moves in the same direction). When the switch object 208d is clicked, the avatar 209 moves forward, and when the switch object 208e is clicked, the avatar 209 moves backward. When the switch object 208f is clicked, the body axis of the avatar 209 rotates clockwise, and when the switch object 208g is clicked, the avatar 209 horizontally moves in the left direction. When the switch object 208h is clicked, the viewpoint position of the avatar 209 is increased (as if it is floating in the air), and when the switch object 208i is clicked, the viewpoint position is decreased, and when the switch object 208j is further clicked, the avatar 209 is clicked. Moves horizontally to the right.
[0011]
Therefore, for example, when it is desired to direct the participant A's line of sight (of the avatar 209) in the direction of the participant B (the avatar 202) (to make it face up), the participant A sets the switch object 208c for turning the viewpoint to the left. Click and fine-tune the composition so that participant B (avatar 202) is in the middle of screen 201. Alternatively, the switch object 208g for the left horizontal movement of the viewpoint may be clicked. In this case, the participant A (its avatar) moves to the left, and can be positioned in front of the participant B (the avatar 202) by finely adjusting the amount of movement.
[0012]
In this way, by operating the participant's terminal, a virtual image of his / her alternation (avatar 209 for participant A, avatar 202 for participant B, and avatar 203 for participant C). You can freely change the viewpoint in the world, and you can enjoy the virtual reality as if you were in the virtual world.
[0013]
[Problems to be solved by the invention]
However, the above conventional technique has a problem that the operation is troublesome because the control panel 208 must be operated to change the viewpoint of the avatar.
[0014]
  Therefore, the problem to be solved by the present invention is that, in the real world, for example, it is natural to react to the voice of a nearby person and turn the line of sight toward that voice. 3D virtual space display method that allows the avatar's viewpoint to be autonomously changed without requiring the participant's terminal operation, thereby greatly improving operability. Program and recording medium storing the programAnd three-dimensional virtual space control deviceThe purpose is to provide.
[0015]
[Means for Solving the Problems]
  Of the present invention3D virtual space display methodIsManage 3D virtual space,The avatar, which is the alternation of each participant participating in the 3D virtual space, is placed in the 3D virtual space.ExpressionAnd responding to each participant's terminal operation, the display position of the participant's avatar and the viewpoint of the avatarchangeIn the three-dimensional virtual space, an utterance message input from any participant's terminal is associated with the participant's avatar.OrPredetermined message boardIn the three-dimensional virtual space display method of the three-dimensional virtual space control device that displays the three-dimensional virtual space for each terminal, the three-dimensional virtual space control device includes information on the utterance partner in the utterance message. A first step for determining whether or not the second state is determined, a second step for the three-dimensional virtual space control device to specify the avatar of the speaking partner based on the information when the determination result is affirmative, and the three-dimensional virtual space control device Is a third step of identifying the first position, which is the position of the utterance partner's avatar in the three-dimensional virtual space, and the three-dimensional virtual space control device determines the line of sight of the participant's avatar corresponding to the utterance message, A fourth step of directing to the first position, and a second position in which the three-dimensional virtual space control device is a position of the participant's avatar corresponding to the utterance message in the three-dimensional virtual space A fifth step for identifying the three-dimensional virtual space control device, the line of sight of the avatar of the other participants, characterized in that it comprises a sixth step of directing the second position.
[0016]
  In the second step, the three-dimensional virtual space control device identifies the avatar of the speaking partner from the avatars displayed in the view window displaying the three-dimensional virtual space, and in the third step, the three-dimensional virtual space When the avatar of the speaking partner is displayed in the view window, the control device specifies the first position, and in the fourth step, the three-dimensional virtual space control device determines that the avatar of the speaking partner whose position is specified When the distance of the participant's avatar corresponding to the utterance message is within a predetermined limit distance, the line of sight of the participant's avatar corresponding to the utterance message can be directed to the first position.
[0017]
  The predetermined limit distance may be variable according to the situation.
[0018]
  In the first step, the three-dimensional virtual space control device determines whether or not a specific symbol is included in the utterance message as information about the utterance partner, and when the determination result is affirmative, further from the utterance message The proper noun of the utterance partner is extracted, and in the second step, the three-dimensional virtual space control device can specify the avatar of the utterance partner using the extracted proper noun.
[0019]
  In the fifth step, the three-dimensional virtual space control device further specifies an avatar of another participant displayed in the view window that displays the three-dimensional virtual space, and in the sixth step, the three-dimensional virtual space When the distance between the avatar of the participant corresponding to the utterance message and the avatar of the identified other participant is within a predetermined limit distance, the control device displays the line of sight of the other avatar of the other participant in the second position. Can be oriented.
[0020]
  The predetermined limit distance may be variable according to the situation.
[0021]
  The three-dimensional virtual space control device further includes a seventh step of determining whether or not the participant avatar is directed to the specified position. In the sixth step, the three-dimensional virtual space control device specifies the specified position. The avatar's line of sight of the participant who is not oriented to can be directed to the specified position.
[0022]
  The program of the present invention manages a three-dimensional virtual space, expresses an avatar that is a substitute of each participant participating in the three-dimensional virtual space in the three-dimensional virtual space, and allows each participant to operate the terminal. Change the participant's avatar display position and the avatar's viewpoint by responding, and the utterance message input from any participant's terminal in the 3D virtual space or corresponding to the participant's avatar The message is displayed on the message board and executed by a computer that displays a three-dimensional virtual space for each terminal, and the computer determines whether or not the utterance message includes information about the utterance partner A first step, a second step in which the computer identifies the avatar of the utterance partner based on the information when the result of the determination is affirmative, and the computer A third step of identifying a first position that is a position of the avatar in the three-dimensional virtual space, and a fourth step of causing the computer to direct the line of sight of the participant's avatar corresponding to the utterance message to the first position A fifth step in which the computer specifies a second position, which is a position in the three-dimensional virtual space of the participant's avatar corresponding to the utterance message, and the computer determines the line of sight of the other participant's avatar. And a sixth step of directing to position 2.
  In the second step, the computer specifies the avatar of the speaking partner from the avatars displayed in the view window displaying the three-dimensional virtual space. In the third step, the computer displays the avatar of the speaking partner. When displayed in the window, the first position is identified, and in the fourth step, the computer determines whether the distance between the identified avatar of the speech partner and the avatar of the participant corresponding to the speech message is a predetermined limit. If the distance is within the distance, the line of sight of the participant's avatar corresponding to the utterance message can be directed to the first position.
  The predetermined limit distance may be variable according to the situation.
  In the first step, the computer determines whether or not a specific symbol is included in the utterance message as information about the utterance partner. When the determination result is affirmative, the computer further determines the proper noun of the utterance partner from the utterance message. In the second step, the computer can specify the avatar of the speaking partner using the extracted proper noun.
  In the fifth step, the computer further specifies an avatar of another participant displayed in the view window displaying the three-dimensional virtual space, and in the sixth step, the computer participates corresponding to the utterance message. When the distance between the avatar of the participant and the identified avatar of the other participant is within a predetermined limit distance, the line of sight of the other participant's avatar can be directed to the second position.
  The predetermined limit distance may be variable according to the situation.
The computer further includes a seventh step of determining whether or not the participant's avatar is directed to the specified position, and in the sixth step, the computer is configured for the participant's avatar that is not directed to the specified position. The line of sight can be directed to the specified position.
  The recording medium of the present invention stores any of the programs described above.
  The three-dimensional virtual space control device of the present invention manages a three-dimensional virtual space, expresses an avatar, which is a part of each participant participating in the three-dimensional virtual space, in the three-dimensional virtual space, In response to the terminal operation, the display position of the participant's avatar and the viewpoint of the avatar are changed, and an utterance message input from any participant's terminal is associated with the participant's avatar in the 3D virtual space. Or a three-dimensional virtual space control device that displays on a predetermined message board and displays a three-dimensional virtual space for each terminal, and determines whether or not the utterance message contains information about the utterance partner If the determination result by the determination means is affirmative, based on the information, the avatar specifying means for specifying the avatar of the speaking partner and the avatar of the speaking partner specified by the avatar specifying means A first position specifying means for specifying a first position which is the position in the original virtual space, the line of sight of the participants of the avatar corresponding to the speech message, the first position A first line-of-sight directing means for directing to the first position specified by the specifying means, and a second position for specifying a second position that is a position in the three-dimensional virtual space of the participant avatar corresponding to the speech message It is characterized by comprising position specifying means and second line-of-sight directing means for directing the line of sight of another participant's avatar to the second position specified by the second position specifying means.
  According to the three-dimensional virtual space display method of the present invention, the program, the recording medium storing the program, and the three-dimensional virtual space control device, it is determined whether or not the utterance message includes information about the utterance partner, When the determination result is affirmative, the avatar of the speaking partner is specified based on the information, the first position that is the position of the speaking avatar in the three-dimensional virtual space is specified, and the participant corresponding to the speaking message The avatar's line of sight is directed to the specified first position, and the second position, which is the position of the participant's avatar corresponding to the utterance message in the three-dimensional virtual space, is specified. Is directed to the specified second position.
[0023]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings. It should be noted that the specific details or examples in the following description and the illustrations of numerical values, character strings, and other symbols are only for reference in order to clarify the idea of the present invention, and the present invention may be used in whole or in part. Obviously, the idea of the invention is not limited. In addition, a well-known technique, a well-known procedure, a well-known architecture, a well-known circuit configuration, and the like (hereinafter, “well-known matter”) are not described in detail, but this is also to simplify the description. Not all or part of the matter is intentionally excluded. Such well-known matters are known to those skilled in the art at the time of filing of the present invention, and are naturally included in the following description.
[0024]
FIG. 1 is a diagram schematically showing a configuration of a network computing system 1 to which the “three-dimensional virtual space display method” according to the present invention can be applied. On this network computing system 1, a community system that is developed in a three-dimensional virtual space (hereinafter also referred to as “three-dimensional virtual world” or simply “virtual world”) is constructed and provided. As will be described later, this community system displays a three-dimensional virtual space and navigates a browser (a CP browser described later), and a shared virtual world server that manages the three-dimensional virtual space so that each participant can share it. (CP server described later) and AO (Application Object) which is a shared application development environment.
[0025]
An infinite number of computer systems are connected to the network computing system 1. These computer systems are scattered all over the world. Some computers operate as "servers" that provide various services for a fee or free of charge, while others request services from servers. It operates as a “client”.
[0026]
In addition, the network computing system 1 includes the Internet 2 as a communication medium, and LANs (Local Area Networks) 3a, 3b as other small networks, and the public constructed and provided by telephone companies in various countries. Includes the telephone network 4 and the like. Each entity of the LANs 3a, 3b,... May be a single network segment or a configuration in which a plurality of segments are connected by a router.
[0027]
The Internet 2 and the respective LANs 3a, 3b,... Are interconnected via routers 5a, 5b,. The entity of the Internet 2 is a huge network that has grown worldwide as a result of repeated interconnection between servers of the LANs 3a, 3b,. The servers on the Internet 2 and the LANs 3a, 3b,... Can be mutually accessed according to a predetermined communication protocol such as TCP / IP (Transmission Control Protocol / Internet Protocol).
[0028]
Further, the network such as the Internet 2 and the LANs 3a, 3b,... And the public telephone network 4 are interconnected by a gateway system (G / W) 6. The public telephone network 4 includes, for example, a PSTN (Public Switched Telephony Network) and an ISDN (Integrated Service Digital Network).
[0029]
The public telephone network 4 further includes innumerable exchanges and terminals (not shown), and a subscriber telephone installed in a general home is connected to the terminal. The public telephone network 4 is further provided with a large number of wireless telephone networks by a large number of carriers that provide wireless communication services, such as mobile phone service providers and PHS (Personal Handyphone System) service providers.
[0030]
A computer system on the Internet 2 (including a computer connected to the Internet 2 via a LAN) is assigned an IP address that can be identified on the Internet 2, and this IP address is the logic between each computer and the Internet 2. Connection point.
[0031]
On the Internet 2, there is a so-called “Internet service provider” (ISP) that provides a connection service to the Internet 2 for general users who cannot make an IP connection using a dedicated line. To do. For-profit internet service providers are required to register and report type 2 telecommunications carriers. An example of an Internet service provider is “So-net”. A general user can make an IP connection to the Internet 2 by dialing up to a server installed by a service provider, that is, “access points” (AP) 2a to 2d. In addition, today's Internet service providers often provide a flat-rate 24-hour connection service using DSL (Digital Subscriber Line), CATV (Community Antenna TeleVision), and the like. A general user who uses such a constant connection service does not need to dial up every time a connection is made.
[0032]
General user terminals (hereinafter referred to as “user PCs”) 7 a, 7 b, 7 c,... Connected to the Internet 2 via a dedicated line or an arbitrary Internet service provider are mainly “clients” on the Internet 2. ”To request the provision of a required service to a WWW (World Wide Web) server and other servers.
[0033]
In general, Internet service providers provide various applications on the Internet 2 such as chat, BBS (Bulletin Board System: electronic bulletin board system), and e-mail, in addition to the connection service to the Internet 2. Of course, various operating bodies other than Internet service providers can provide Internet 2 applications such as chat, BBS, and e-mail.
[0034]
In the example shown in FIG. 1, the Internet service provider operating the LAN 3 a performs a chat or the like via the community system according to the present embodiment, that is, each user in the three-dimensional virtual world through “Avatar” as a substitute. It is assumed that the community system service that can enjoy the pseudo-communication is provided.
[0035]
“Chat” is a service for performing real-time communication between remote users via the Internet 2. In particular, the 3D chat is a 3D virtual space drawn using 3D graphics. This is a service that provides an environment where each logged-in user (hereinafter referred to as “participant”) sends an avatar, which is his or her own, to perform real-time communication. A three-dimensional virtual world on the WWW system, that is, a community system, can be described in VRML (Virtual Reality Modeling Language) of the ISO (International Organization for Standardization) standard, and using Java (registered trademark), for example. Can describe behavior. Such a three-dimensional virtual world can be displayed and navigated using a VRML browser (described later).
[0036]
On the LAN 3a, a 3D virtual world is constructed and provided on the Internet 2 and an environment for performing various social activities on the 3D virtual world is provided to manage the 3D virtual world. A shared virtual world (CP) server (hereinafter referred to as “CP server”) 8 and one or more application object (AO) servers (hereinafter referred to as “AO servers”) 9a, 9b,. It has been.
[0037]
In addition, on the LAN 3a, one or more WWW servers 10 that provide an HTTP (Hyper Text Transfer Protocol) resource object such as an HTML (Hyper Text Markup Language) content 10a are provided. There may be a mail server 11 that provides an email transmission / reception service for an account. Each server on the LAN 3a, that is, the CP server 8, the AO servers 9a, 9b,..., The WWW server 10, and the mail server 11 can be accessed from the Internet 2 via the router 5a.
[0038]
In the present embodiment, the WWW server 10 provides a VRML file 10b describing a three-dimensional virtual world in addition to the normal HTML content 10a. The VRML file 10b includes a description of a virtual world and a shared application (Shared Application), an Internet 2 address (URL: Uniform Resource Locator) of the CP server 8, or a reference link thereof.
[0039]
FIG. 2 shows computers (for example, user PCs 7a and 7b) of users (participants; for convenience, participants A and C), a WWW server 10 and a CP that log in to the three-dimensional virtual world according to the present embodiment. 3 is a diagram illustrating a relationship with a server 8. FIG. The computers of the participants A and C (user PCs 7a and 7b) are respectively connected to an HTML browser 12 that browses HTML content 10a provided by the WWW server 10 and a VRML browser 13 that can handle the VRML file 10b. Installed.
[0040]
The VRML browser 13 used in the present embodiment is also called “CP browser 13” because it displays and navigates a shared virtual world (CP: Community Place). Hereinafter, in the present embodiment, the VRML browser 13 and the CP browser 13 are treated as synonyms. The HTML browser 12 and the CP browser 13 can operate on the same platform provided by, for example, the operating system “Windows (R) series” of Microsoft Corporation. The user PCs 7a, 7b, 7c,... Themselves are constituted by, for example, IBM PC / AT (Personal Computer / Advanced Technology) compatible machines or their successors.
[0041]
In a three-dimensional virtual world constructed using the VRML file 10b, each object placed in the virtual world is generated in response to an event that occurs in response to a user operation or a preset time. An autonomous movement in response to a timer event or the like, that is, “Behavior” can be realized.
[0042]
The behavior mechanism is realized by a cooperative operation of three elements “sensor”, “routing”, and “script”. That is, (1) a sensor node previously associated with a node such as an object arranged in a three-dimensional virtual world and described as a VRML file 10b detects an external event based on a change in the field, Generate an event in a VRML scene. (2) The generated event is routed (that is, transmitted) to an external script that is a program for defining the behavior of the object based on the routing described as the VRML file 10b. (3) In the external script, a method to be called when an event arrives is described in advance. The external script that receives the event transmitted by the routing executes a process based on the description, and then changes the field value of the corresponding node in the VRML scene based on the processing result and the description of the routing.
[0043]
In VRML, as a sensor node, for example, “TouchSensor” that generates an event when a mouse cursor passes or clicks on a specified object, or a user's viewpoint (ViewPoint) enters a specified area. In this case, “ProximitySensor” that generates an event in the event of occurrence, “TimerSensor” that occurs every time a predetermined time arrives or a predetermined time interval elapses are defined.
[0044]
As described above, on the user PCs 7a and 7b of the participant A and the participant C, the CP browser 13 capable of interpreting VRML content is operating together with the HTML browser 12. As the HTML browser 12, a general-purpose browser such as “Netscape Navigator” manufactured by Netscape Communications, Inc. or “Internet Explorer” manufactured by Microsoft Corporation, can be used.
[0045]
The user PCs 7a, 7b, 7c,... Are connected to the Internet 2 through a predetermined procedure such as dial-up connection to the nearest access point (AP), or in the case of constant connection, This procedure is omitted and the Internet 2 is connected. Further, the user PCs 7a, 7b, 7c,... Access the WWW server 10 by the HTML browser 12 according to the HTTP protocol. Then, the VRML file 10b describing the three-dimensional virtual world is downloaded from the WWW server 10 and transferred to the CP browser 13.
[0046]
The CP browser 13 analyzes the delivered VRML file 10b and displays it on the browser screen. If the address of the CP server 8 is described in the VRML file 10b, connection to the address is attempted. Therefore, the CP browser 13 of each participant who has downloaded the same VRML file 10b establishes a connection (logs in) to the same CP server 8, and the VRML scene described in the VRML file 10b (that is, the same tertiary) The former virtual world) can be shared by a plurality of logged-in users (participants).
[0047]
When the connection to the CP server 8, that is, the login to the three-dimensional virtual world is successful, the subsequent communication is performed between the CP server 8 and the CP browser 13. This communication is performed using a predetermined server-client protocol (referred to herein as VSCP (Virtual Society Server Client Protocol)). The VSCP protocol includes a function for notifying the CP server 8 of changes made by the user through the CP browser 13 and a function for notifying the notified information to another CP browser 13 from the CP server 8.
[0048]
The CP server 8 can restrict the distribution of information that each CP browser 13 needs to know (that is, information to be transmitted to the CP browser 13) using an aura algorithm. The aura means an area around the avatar, that is, an area that the user is supposed to be interested in, and an object outside the aura is regarded as not interested and does not send information. By applying the aura algorithm, the amount of information to be distributed is reduced, and the network traffic to each participant is limited to a prescribed communication capacity.
[0049]
In the three-dimensional virtual world provided by the CP server 8, there are various objects such as an avatar that is a part of each user and a pet (virtual creature; also referred to as an agent) bred by the avatar. The operations of these objects and other applications in the virtual world are shared among users existing in the three-dimensional virtual world (ie, logged in), and are referred to as “shared applications” in this specification.
[0050]
FIG. 3 is a diagram showing a hardware configuration common to the CP server 8, the AO servers 9a, 9b,... A CPU (Central Processing Unit) 21 executes various processes in accordance with a program stored in a ROM (Read Only Memory) 22. A RAM (Random Access Memory) 23 appropriately stores programs and data necessary for the CPU 21 to execute various processes. The hard disk 24 stores a database, other necessary data, a program processed by the CPU 21, and the like. These are connected to each other via a bus 25.
[0051]
An input / output interface 26 is also connected to the bus 25, and the input / output interface 26 includes a display unit 27 including a LCD (Liquid Crystal Display), a CRT (Cathode Ray Tube), a keyboard, a mouse, An input unit 28 composed of a microphone or the like is connected, and further, a communication unit 29 which has a built-in modem and communicates with an external device via a general telephone line, a dedicated line, the Internet 2 and the like, and a floppy (registered) A drive device 30 is connected to drive a disk such as a trademark) disk, an optical disk, a magneto-optical disk, and to input and output data.
[0052]
FIG. 4 is a diagram illustrating a hardware configuration of the user PCs 7a, 7b, 7c,. User PCs 7a, 7b, 7c,..., CPU 41, RAM 42, disk controller 43, disk device 44, display controller 45, display device 46, keyboard controller 47, keyboard device 48, pointing device device 49, communication unit 50, A software resource such as an operating system (HTML browser 12, CP browser 13, etc.) that has a main bus 51, a bus interface 52, an internal bus 53, etc. and is stored in advance in the disk device 44 is loaded into the RAM 42 and executed by the CPU 41. Thus, it is possible to access the aforementioned WWW server 10 and CP server 8 and receive a required three-dimensional virtual space sharing service (community system service according to the present embodiment).
[0053]
Further, the user PCs 7a, 7b, 7c,... Display various user interface screens related to the service on the display device 46, and operate the keyboard device 48 and the pointing device device 49 on the interface screens. Avatar position movement, avatar viewpoint movement, and message creation and transmission can be performed.
[0054]
When the participant A operates his / her own terminal, for example, the user PC 7a, and inputs a predetermined command, the HTML browser 12 accesses the WWW server 10 defined by the predetermined URL via the Internet 2, and the VRML file 10b is acquired. When the HTML browser 12 acquires the VRML file 10b, it passes it to the CP browser 13. The CP browser 13 analyzes the VRML file 10 b and displays it on the display device 46. The CP browser 13 connects to the CP server 8 when the address of the CP server 8 is specified in the VRML file 10b.
[0055]
If the connection is successful, communication between the CP browser 13 and the CP server 8 is performed using VSCP thereafter. The VSCP has a function of notifying the CP server 8 of changes made by the participant via the CP browser 13, and a function of notifying the CP server 8 of the information from the CP server 8 to other CP browsers 13 connected thereto. is doing.
[0056]
When other participants (for example, the participant B) operate their terminal (for example, the user PC 7b) to access the WWW server 10 and acquire the VRML file 10b in the same manner as the participant A, the CP browser 13 Analyzes the VRML file 10 b and displays it on the display device 46.
[0057]
In this way, a plurality of participants share the same virtual space.
[0058]
Participants who have accessed the virtual space are represented on the virtual space as avatars. When a predetermined avatar (participant) navigates the virtual space, the operation is reflected in other avatars sharing the virtual space. Such avatar movement information is also sent from the CP browser 13 to the CP server 8 by VSCP. The CP server 8 sends this information to another CP browser 13 connected to itself. Upon receiving this information, the CP browser 13 updates the corresponding avatar to reflect the change made by the CP browser 13 that is the information transmission source.
[0059]
FIG. 5 is a diagram showing the relationship between the AO servers 9a, 9b,..., The CP server 8, and the CP browser 13 (existing on the user PCs 7a, 7b, 7c,...). The AO servers 9a, 9b,... Have a universal AO60. The universal AO 60 is an AO that controls the entire virtual world. AO manages a shared application, and the shared application means an object such as an avatar and an application whose operation is shared by participants in the shared space.
[0060]
In the example of FIG. 5, the virtual world 61 includes a user object group 65 composed of avatars 62 to 64 corresponding to users (each participant A to participant C) who operate the user PC 7 a to user PC 7 c, An agent object group 69 composed of agents (dogs 66 to 68 for convenience in the figure) generated corresponding to the avatars 62 to 64 and a shared object (shop for convenience in the figure) shared by the respective avatars 62 to 64. 70, a shared object group 73 consisting of a recycle box 71) is arranged.
[0061]
When the universal AO 60 is started, it reads a default configuration file (PAW.CONF) and, according to the contents described therein, a user manager 74, an agent manager 75, an object manager. (Object Manager) 76 is generated.
[0062]
When the participant accesses the virtual world 61, the user manager 74 generates a user object (User Object) for each participant. For example, assuming that three participants (participant A-to-participant C) are accessing, user manager 74 generates three user objects 74a-74c, and these user objects 74a. ~ 74c generate and manage avatars for each participant. That is, the user object 74a generates and manages the avatar 62 of the participant A, the user object 74b generates and manages the avatar 63 of the participant B, and the user object 74c generates the avatar 64 of the participant C. to manage. A database 77 is connected to the AO servers 9a, 9b,... So that information necessary for executing such various processes can be read as appropriate.
[0063]
The agent manager 75 generates an agent AO for each participant. In this case, since there are three participants A to C, the agent manager 75 has an agent AO75a corresponding to the participant A, an agent AO75b corresponding to the participant B, and an agent corresponding to the participant C. AO75c is generated. Each of these agents AO 75a to 75c generates and manages an agent for each participant. That is, the agents AO 75a to 75a generate and manage the agent 66 of the participant A, the agents AO 75a to 75b generate and manage the agent 67 of the participant B, and the agents AO 75a to 75c generate the agent 68 of the participant A. to manage.
[0064]
The user objects 74a to 74c and the agents AO 75a to 75b are generated when the participant accesses (logs in) the virtual world 61, and is deleted when the participant leaves the virtual world 61 (logs out). For example, when another participant (referred to as participant D for convenience) accesses the virtual world 61, a user object and an agent AO corresponding to the participant D are newly created, and the new The created user object and agent AO add the avatar and agent of participant D to the virtual world. Alternatively, when the participant (referred to as participant A for convenience) leaves the virtual world, the user object 74a and the agent AO 75a corresponding to the participant A are deleted, and therefore the avatar of the participant A from the virtual world 61 is deleted. 62 and agent 66 are removed.
[0065]
The object manager 76 generates a shared object AO (shop AO 76a or recycle box AO 76b in the illustrated example) at a predetermined timing set in advance, and these shared objects AO exist for a predetermined time set in advance. . The shop AO 76a generates and manages the shop 70, and the recycle box AO 76b generates and manages the recycle box 71.
[0066]
The CP server 8 is located between the AO servers 9a, 9b,... And each CP browser 13 to construct a virtual world 61. The CP browser 13 In the case of the participant A, a predetermined range based on the avatar 62) is managed on the participant A terminal (user PC 7a).
[0067]
Now, when the participant A operates the pointing device device 49 of his / her terminal (user PC 7a) and clicks his / her agent (agent 66 as a dog), a predetermined action (for example, “Wow” is given to the agent 66. The process of causing the operation to sound “!” Will be described.
[0068]
First, when the AO servers 9a, 9b,... Connect to the CP server 8, the virtual world managed by the CP server 8 manages the shared applications (shared objects) managed by the AO servers 9a, 9b,. Request to add in 61. The CP server 8 transmits requests from the AO servers 9a, 9b,... To all the CP browsers 13 connected to itself. Upon receiving this request, each CP browser 13 causes a corresponding shared application to appear.
[0069]
In this state, when the participant A clicks the agent 66 with the mouse, the corresponding script is activated on the CP browser 13 of the user PC 7a. This script sends a message to the CP server 8 indicating that the agent 66 has been clicked. The CP server 8 transmits this message to the AO servers 9a, 9b,... That manage the selected agent 66.
[0070]
The AO servers 9a, 9b,... Execute processing corresponding to the message, and transmit a message corresponding to the processing result to the CP server 8. This message is a message for making the agent 66 ring in this example. Then, this message is transferred from the CP server 8 to the corresponding agent 66 via all the CP browsers 13 connected thereto, and processed. As a result, the agent 66 sounds, for example, “Wow!” On the PCs of all participants who are logged in.
[0071]
FIG. 6 is a diagram showing a user interface screen for the community system service according to the present embodiment displayed on the PC of the participant who is logging in. The user interface screen 80 is composed of, for example, four screens whose positions and sizes can be changed independently.
[0072]
The first screen is a view window 81. This view window 81 displays a predetermined range in the virtual world 61 based on the position of the avatar of the participant (hereinafter referred to as participant A for convenience). In this example, avatars 82 and 83 and agents 84 and 85 are displayed on a predetermined background. The avatars 82 and 83 and the agents 84 and 85 are those of other participants (for example, the participant B and the participant C), and the avatar of the participant A is not displayed (that is, in the view window 81). The projected picture is the composition when viewed from the avatar's point of view). It is also assumed that the agent of participant A is outside the display frame of the view window 81 and cannot be seen. At the lower end of the view window 81 is provided a control panel 86 for changing the position and viewpoint of its own avatar. This control panel 86 is the control panel 208 of the prior art described above (see FIG. 13). ), And for the operation method and the like, refer to FIG. 13 as appropriate.
[0073]
The second screen is a world tool window 87 for displaying personal information. The world tool window 87 is provided with an avatar viewpoint switching button 88, a pet information button 89, a personal information button 90, a pet information display area 91, and the like. Each time the avatar viewpoint switching button 88 is pressed, the composition of the view window 81 is viewed from the avatar's viewpoint (in this case, the avatar is not displayed), viewed from behind the avatar's back, or viewed from the front of the avatar. You can switch to
[0074]
The third screen is a chat window (message board) 92. The chat window 92 is provided with an action button group 93, a chat log area 94, and a message input unit 95 for executing various actions on his own agent (not currently visible in the figure). . In the chat log area 94, all chat logs exchanged between the currently logged-in participants or the agents (however, the old ones are deleted) are displayed. When chatting with another participant or sending a message to his / her agent, a desired character string is input to the message input unit 95 using the keyboard device 48, and a confirmation key (for example, a return key) of the keyboard device 48 is input. Press.
[0075]
The fourth screen is a communication tool window 96. The communication tool window 96 is provided with a chat button 97, a mane button 98, a PHS button 99, a map button 100, and the like. When the chat button 97 is clicked, the third screen (chat window 92) can be opened or closed. Further, when the manipulating button 98 is clicked, a letter window (not shown) in which a letter (such as an e-mail) having a delivery range in the virtual space can be created and sent and received can be opened. When the PHS button 99 is clicked, a PHS window (not shown) for creating and transmitting a message to a mobile phone or PHS can be opened. In addition, when the map button 100 is clicked, a map window (not shown) in which the current location and orientation of the user (avatar) is clearly displayed (for example, indicated by a red arrow) can be opened.
[0076]
When the participant A wants to change the viewpoint of his / her avatar, for example, when he / she wants to face the participant B (avatar 82) (ie, to face it directly), the participant A controls the control panel 86 at the lower end of the view window 81. To operate. As described above, the control panel 86 is the same as that shown in FIG. 13 (control panel 208). In such a case, the switch object 208c for turning the viewpoint to the left in FIG. 13 is clicked. Then, the composition may be finely adjusted so that the participant B (avatar 82) comes in the middle of the view window 81. Alternatively, the viewpoint left horizontal switch object 208g in FIG. 13 may be clicked. In this case, since the viewpoint of the participant A moves to the left, it can be positioned in front of the participant B (avatar 82) by finely adjusting the amount of movement.
[0077]
The movement of the viewpoint by the manual operation is the same as the conventional one, and there is no feature in this point. However, in this embodiment, in addition to the viewpoint movement by the manual operation, the autonomous movement described below is possible. Therefore, there is a technical feature in that operability is improved.
[0078]
<Viewing the direction of the speaker: Speaking reaction type>
FIG. 7 shows a first algorithm for naturally looking at the direction of the speaker. This algorithm is executed on the server side (line-of-sight direction control processing in the CP server 8: step S11 to step S20) and on the client side (display processing in the CP browser 13: step S21). When this algorithm is executed and the CP server 8 receives a packet consisting of the speaker and the utterance content from the client PC 7b of an arbitrary participant (hereinafter referred to as a participant B for convenience) (step S11), next, The speaker is extracted from the packet (step S12), and the participant corresponding to the speaker is searched from the avatar of each participant displayed in the view window 81 (step S13). Here, since the speaker is the participant B and the avatar of the participant B is displayed at the left end of the view window 81, the next determination result (step S14) is affirmative (YES). If the determination result in step S14 is negative (NO), that is, if the avatar corresponding to the speaker is not displayed in the view window 81, the speaker's avatar is outside the frame of the view window 81. In that case, it is not necessary to see the direction of the speaker and it is not necessary to display the content of the utterance, so that it is treated as an error and the packet is discarded (step S15).
[0079]
If the determination result in step S14 is affirmative (YES), that is, if the avatar of participant B corresponding to the speaker is displayed in view window 81, then participant A (view window 81 is changed). The distance between the viewer and the participant B (speaker) is calculated (step S16), and it is determined whether the distance is within a predetermined limit distance (step S17). Here, the predetermined limit distance is, for example, a distance corresponding to a normal conversation possible distance in the real world.
[0080]
If the determination result in step S17 is negative (NO), that is, if the distance between the participant A and the participant B exceeds the distance corresponding to the normal conversation possible distance in the real world, the participant B It is determined that the uttered voice does not reach Participant A, and therefore Participant A is not in a state of being able to respond to the voice, and passes the following processing (gaze movement amount calculation, gaze direction control, etc.) and participates. The utterance content of the person B is displayed on the avatar 82 of the view window 81 (step S21).
[0081]
On the other hand, if the determination result in step S17 is affirmative (YES), that is, if the distance between the participant A and the participant B is within a distance corresponding to the normal conversation possible distance in the real world, the participant B It is determined that the participant A can sufficiently respond to the voice uttered, and the line-of-sight movement amount of the participant A is calculated (step S18: first step).
[0082]
FIG. 8 is a conceptual diagram of calculation of the line-of-sight movement amount. In this figure, first, a straight line L connecting the center points Pa and Pb of the faces of the participants A and B is obtained (step S18a), and then an angle θ between the line-of-sight direction F and the straight line L of the participant A is obtained (step S18a). Step S18b). The angle θ becomes the eye movement amount of the participant A. That is, by changing the sight line direction F of the participant A so that θ becomes 0 degree, the sight line of the participant A can be directed toward the participant B.
[0083]
When the line-of-sight movement amount θ is thus calculated, the CP server 8 next determines whether or not the line-of-sight movement amount θ is a value other than 0 (step S19). In the case of θ = 0, participant A's line of sight is already facing toward participant B, so that the utterance content of participant B is displayed on avatar 82 of view window 81 without performing line-of-sight control. (Step S21).
[0084]
In the case of θ <> 0, next, information for performing movement control in the line-of-sight direction F of the participant A by the line-of-sight movement amount θ is transmitted to the CP browser 13 (step S20: second step). Based on the information, the participant's line of sight is directed toward the participant B, and then the utterance content of the participant B is displayed on the avatar 82 of the view window 81 (step S21).
[0085]
Therefore, according to the first algorithm, when any avatar displayed in the view window 81 speaks, in response to the utterance, the line of sight of other avatars is directed to the avatar that made the utterance. It can be turned all at once. As a result, in addition to the avatar's movement by manual operation, it is possible to give the avatar an utterance reaction type autonomous movement, so of course not only improvement in operability but also a more realistic 3D virtual space display A method can be provided.
[0086]
FIG. 9 is an example diagram showing the utterance reaction type autonomous movement. In this example, it is assumed that the participant B is a speaker, and the participant B performs a predetermined utterance (for example, “Hello everyone”). If the distance between the other participants (participant A and participant C in the figure) and the speaker is within a predetermined limit distance, in response to the speech of participant B, the other participants (participants A and Participant C) 's line-of-sight movement amount (only the line-of-sight movement amount θ of participant A is shown for convenience) is calculated, and each line-of-sight direction is controlled so that each line-of-sight movement amount θ is zero. That is, it is controlled autonomously so that the lines of sight of the participants A and C face the speaker (participant B).
[0087]
The first algorithm responds to the voice of the speaker only when the distance to the speaker is within a predetermined limit distance (for example, a distance corresponding to a normal conversation possible distance in the real world). However, it is not limited to this. Depending on the loudness of the voice, the restriction on the distance may be eliminated, or the predetermined restriction distance may be variable according to the situation.
[0088]
<Interpreting the content of the utterance to see the direction of the utterance partner: utterance partner designation type>
FIG. 10 shows a second algorithm for interpreting the utterance content and viewing the direction of the utterance partner. This algorithm is executed on the server side (line-of-sight direction control processing in the CP server 8: step S30 to step S41) and on the client side (display processing in the CP browser 13: step S42). When this algorithm is executed, the CP server 8 first determines that a desired partner (for example, a participant) input by an arbitrary participant (hereinafter referred to as participant A for convenience) by operating his terminal (client PC 7a). person B) speech content (for example with respect to, and receive a "Hello> Hanako") (step S30).
[0089]
Here, symbols in the speech content ( ">") is, in the chat of the world, is a common symbol of order to clarify that it is a message for a particular opponent, in this case, the opponent of "Hello" "Hanako ".
[0090]
Next, the CP server 8 determines whether or not the above symbol (“>”) is included in the utterance content (step S31: first step), and if not included, the following processing is passed. Then, the utterance content of the participant A is transmitted to the CP browser 13 and displayed on the view window 81 (step S42). If included, the utterance subject is specified from the utterance content (step S32). That is, the character string on the right side of the utterance content symbol “>” is extracted, the suffix (“san”, “sama”, etc.) is removed from the character string, and the chat name of the utterance target (in this case, “Hanako”). )).
[0091]
Next, the participant corresponding to the chat name (“Hanako”) is searched from the avatar of each participant displayed in the view window 81 (step S33: second step). Since the chat name of the utterance target person is “Hanako” and the avatar of the participant B having the chat name is displayed at the left end of the view window 81, the next determination result (step S34) is affirmative (YES). Become. If the determination result in step S34 is negative (NO), that is, if the avatar corresponding to the utterance target person is not displayed in the view window 81, the avatar of the utterance target person is outside the frame of the view window 81. In this case, the suffix (“san”) deleted in step S32 is returned to the utterance content (step S35), the presence / absence of the utterance target is determined again (step S36), and the utterance target is displayed in the view window. If not displayed in 81, the following processing is passed and the utterance content of participant A is displayed in view window 81 (step S42).
[0092]
If the determination result in step S34 is affirmative (YES), that is, if the avatar of the participant B corresponding to the utterance subject is displayed in the view window 81, then the participant A (speaker) And the participant B (utterance target person) are calculated (step S37), and it is determined whether or not the distance is within a predetermined limit distance (step S38). Here, the predetermined limit distance is, for example, a distance corresponding to a normal conversation possible distance in the real world.
[0093]
If the determination result in step S38 is negative (NO), that is, if the distance between Participant A and Participant B exceeds the distance corresponding to the normal conversation possible distance in the real world, participation It is determined that the voice uttered by the person A does not reach the participant B, and therefore the participant B is not in a state of being able to react to the voice, and the following processing (such as gaze movement amount calculation and gaze direction control) is passed. Then, the utterance content of the participant A is displayed on the view window 81 (step S42).
[0094]
On the other hand, when the determination result of step S38 is affirmative (YES), that is, when the distance between the participant A and the participant B is within a distance corresponding to a normal conversation possible distance in the real world, It is determined that the participant B can sufficiently respond to the voice uttered by the participant A, and the line-of-sight movement amount of the participant A is calculated (step S39: third step). The calculation concept of the eye movement amount is the same as that of the first algorithm (see FIG. 8). That is, first, a straight line L connecting the center points Pa and Pb of the faces of the participants A and B is obtained (step S18a), and then an angle θ between the line-of-sight direction F of the participant A and the straight line L is obtained (step S18b). ). The angle θ becomes the eye movement amount of the participant A. By changing the line-of-sight direction F of the participant A so that θ becomes 0 degrees, the line-of-sight of the participant A can be directed toward the participant B.
[0095]
When the line-of-sight movement amount θ is thus calculated, the CP server 8 next determines whether or not the line-of-sight movement amount θ is a value other than 0 (step S40). When θ = 0, the participant A's line of sight is already facing toward the participant B, so the utterance content of the participant A is displayed in the view window 81 without performing the line-of-sight control (step S42). .
[0096]
In the case of θ <> 0, next, information for performing movement control in the line-of-sight direction F of the participant A by the line-of-sight movement amount θ is transmitted to the CP browser 13 (step S41: fourth step), and the CP browser 13 After viewing the participant A's line of sight toward the participant B based on the information, the utterance content of the participant A is displayed on the view window 81 (step S42).
[0097]
Therefore, according to the second algorithm, when an arbitrary avatar displayed in the view window 81 speaks, the line of sight of the avatar can be directed toward the speaking partner. As a result, in addition to the movement of the avatar by manual operation, it is possible to give the avatar an autonomous line-of-sight movement that is specified by the speaking partner. A spatial display method can be provided.
[0098]
FIG. 11 is an example showing the utterance partner designation type autonomous movement. In this example, a participant A speaker, it is assumed that the speech the opponent designation of a given speech (for example, "Hello> Hanako"). If the distance between the utterance subject (participant B in the figure) and the utterance is within a predetermined limit distance, the line-of-sight movement amount θ of the participant A with respect to the utterance subject is set in response to the utterance of the participant A. The line-of-sight direction of the participant A is calculated so that the line-of-sight movement amount θ is calculated to be zero. That is, the participant A's line of sight is autonomously controlled so as to face the utterance subject (participant B; Hanako). The difference from the first algorithm is that only the speaker faces the utterance target. That is, in the first algorithm, participants other than the speaker within the predetermined limit distance face the speaker all at once, but in the second algorithm, only the speaker changes the line of sight. In particular, the reality of one-to-one communication can be increased.
[0099]
In this second algorithm, when there is a specific symbol (“>”) in the utterance content, the proper noun (nickname, etc.) of the utterance partner is extracted from the character string on the right side of the symbol. The technical idea of the invention is not limited to such an embodiment. For example, the proper noun (nickname) of the utterance partner may be extracted from the conversation content using artificial intelligence technology.
[0100]
Further, in this second algorithm, only when the distance to the speaker target person is within a predetermined limit distance (for example, a distance corresponding to a normal conversation possible distance in the real world), the speaker's line of sight is the target of the speaker. However, it is not limited to this. Depending on the loudness of the speaker's voice, the distance restriction may be eliminated, or the predetermined distance may be variable according to the situation.
[0101]
The main functions of the present embodiment are functionally realized by organic coupling of hardware assets including a microcomputer and software assets such as an operating system (OS) and various programs. Since hardware assets and OSs can be used for general purposes, essential items essential to the present invention are substantially concentrated in the first or second algorithm (FIG. 7 or FIG. 10). It can be said that. Accordingly, the present invention provides a recording medium (such as an FD, MO, CD, hard disk, or semiconductor memory) that stores all or a part of the first or second algorithm described above (not to mention that it is on the distribution channel itself). , Including those that are on the network and provide only recorded content).
[0102]
【The invention's effect】
  The present inventionIn accordance with the utterance message from the terminal of any participant, the position of the participant avatar corresponding to the utterance message in the three-dimensional virtual space is specified, and the line of sight of the other participant's avatar is Directed to the specified location.
[0103]
Therefore, it is possible to give each avatar a “speech-reactive movement” in which the line of sight of other avatars changes autonomously in response to the avatar's utterances in the 3D virtual space, eliminating the need for manual operation by the user Thus, it is possible to provide a three-dimensional virtual space display method with increased realism.
[0104]
  The present inventionAccording to the above, only when the distance between the avatar of the participant corresponding to the utterance message and the avatar of the other participant is within a predetermined limit distance, the line of sight of the other participant's avatar is directed to the specified position. Be made.
[0105]
Therefore, for example, the avatar's line of sight can be prevented from moving when the distance is longer than the normal conversation distance in the real world, avoiding a mismatch with the real world and eliminating the sense of incongruity. Can do.
[0106]
  The present inventionWhen an utterance message from an arbitrary participant's terminal includes information on the utterance partner, the avatar of the utterance partner is specified based on the information, and the three-dimensional of the avatar of the utterance partner is specified. A position in the virtual space is specified, and the line of sight of the participant's avatar corresponding to the utterance message is directed to the specified position.
[0107]
Therefore, the speaker is identified as the “speaker-specified movement” that is autonomously changed so that the speaker's line of sight is directed toward the speaker, based on the avatar's utterance content in the 3D virtual space. The three-dimensional virtual space display method can be provided with a higher sense of reality by eliminating the need for manual operation by the user.
[0108]
  The present inventionAccording to the above, the line of sight of the participant's avatar corresponding to the utterance message is specified only when the distance between the avatar of the utterance partner and the avatar of the participant corresponding to the utterance message is within a predetermined limit distance Directed to position.
[0109]
Therefore, for example, the avatar's line of sight can be prevented from moving when the distance is longer than the normal conversation distance in the real world, avoiding a mismatch with the real world and eliminating the sense of incongruity. Can do.
[Brief description of the drawings]
FIG. 1 is a schematic configuration diagram of a network computing system 1 to which a “three-dimensional virtual space display method” according to the present invention can be applied.
FIG. 2 is a relationship diagram between a user computer (for example, user PCs 7a and 7b), a WWW server 10, and a CP server 8 that logs in to the three-dimensional virtual world according to the present embodiment.
3 is a hardware configuration diagram common to the CP server 8, the AO servers 9a, 9b,..., And the WWW server 10. FIG.
4 is a hardware configuration diagram of user PCs 7a, 7b, 7c,... FIG.
FIG. 5 is a relationship diagram of the AO servers 9a, 9b,..., The CP server 8, and the CP browser 13.
FIG. 6 is a diagram showing a user interface screen for the community system service according to the present embodiment.
FIG. 7 is a diagram showing a first algorithm (utterance reaction type).
FIG. 8 is a conceptual diagram of calculation of an eye movement amount.
FIG. 9 is an example diagram showing an utterance reaction type autonomous movement.
FIG. 10 is a diagram showing a second algorithm (speech partner designation type).
FIG. 11 is a diagram showing an example of an utterance partner designation type autonomous movement.
FIG. 12 is a diagram illustrating an example of a three-dimensional virtual space provided by a conventional cyber space service system.
FIG. 13 is an enlarged view of a control panel 208 and an application explanatory diagram.
[Explanation of symbols]
Step (first step), S20 ... Step (second step), S31 ... Step (first step), S33 ... Step (second step), S39 ... Step (third step), S41 ... Step (fourth step), 201 ...... Screen (three-dimensional virtual space), 7a, 7b, 7c ... User PC (terminal), 82, 83, 62, 63, 64... Avatar, 92... Chat window (message board).

Claims (16)

三次元仮想空間を管理し、前記三次元仮想空間に参加中の各参加者自身の分身であるアバタを当該三次元仮想空間内に表現し、
各参加者の端末操作に応答させてその参加者のアバタの表示位置やアバタの視点を変更し
任意の参加者の端末から入力された発話メッセージを、その参加者のアバタに対応させて前記三次元仮想空間内、または所定のメッセージボードに表現すると共に、
各端末に対して、前記三次元仮想空間を表示させる三次元仮想空間制御装置の三次元仮想空間表示方法において、
前記三次元仮想空間制御装置が、前記発話メッセージに発話相手に関する情報が含まれているか否かを判定する第1ステップと、
前記三次元仮想空間制御装置が、前記判定の結果が肯定のとき前記情報に基づいて発話相手のアバタを特定する第2ステップと、
前記三次元仮想空間制御装置が、その発話相手のアバタの前記三次元仮想空間内における位置である第1の位置を特定する第3ステップと、
前記三次元仮想空間制御装置が、前記発話メッセージに対応する参加者のアバタの視線を前記第1の位置に指向させる第4ステップと、
前記三次元仮想空間制御装置が、前記発話メッセージに対応する参加者のアバタの前記三次元仮想空間内における位置である第2の位置を特定する第5ステップと、
前記三次元仮想空間制御装置が、他の参加者のアバタの視線を、前記第2の位置に指向させる第6ステップと
を含むことを特徴とする三次元仮想空間表示方法。
Managing a three-dimensional virtual space, expressing an avatar that is a substitute for each participant participating in the three-dimensional virtual space in the three-dimensional virtual space,
In response to each participant's terminal operation, the display position of the participant's avatar and the viewpoint of the avatar are changed ,
An utterance message input from a terminal of an arbitrary participant is expressed in the three-dimensional virtual space or a predetermined message board in correspondence with the avatar of the participant ,
In the three-dimensional virtual space display method of the three- dimensional virtual space control device for displaying the three-dimensional virtual space for each terminal ,
A first step in which the three-dimensional virtual space control device determines whether or not the utterance message contains information about the utterance partner;
A second step in which the three-dimensional virtual space control device specifies an avatar of a speech partner based on the information when the result of the determination is affirmative;
A third step in which the three-dimensional virtual space control device specifies a first position which is a position in the three-dimensional virtual space of the utterance partner avatar;
Said three-dimensional virtual space control device, the line of sight of the participants of the avatar corresponding to the speech message, a fourth step of directing said first position,
A fifth step in which the three-dimensional virtual space control device specifies a second position which is a position in the three-dimensional virtual space of a participant's avatar corresponding to the utterance message;
A three-dimensional virtual space display method, comprising: a sixth step in which the three-dimensional virtual space control device directs the line of sight of another participant's avatar to the second position .
前記第2ステップにおいて、前記三次元仮想空間制御装置が、前記三次元仮想空間を表示するビューウィンドウ内に表示されているアバタの中から前記発話相手のアバタを特定し、
前記第3ステップにおいて、前記三次元仮想空間制御装置が、前記発話相手のアバタが前記ビューウィンドウ内に表示されているとき、前記第1の位置を特定し、
前記第4ステップにおいて、前記三次元仮想空間制御装置が、位置が特定された前記発話相手のアバタと前記発話メッセージに対応する参加者のアバタの距離が所定の制限距離以内の場合に前記発話メッセージに対応する参加者のアバタの視線を、前記第1の位置に指向させる
ことを特徴とする請求項1に記載の三次元仮想空間表示方法。
In the second step, the three-dimensional virtual space control device identifies the avatar of the speaking partner from avatars displayed in a view window displaying the three-dimensional virtual space,
In the third step, the three-dimensional virtual space control device identifies the first position when the avatar of the speaking partner is displayed in the view window,
In the fourth step, the three-dimensional virtual space control apparatus, when the distance of the participant of avatar corresponding to the utterance message avatar position is identified the speech counterpart is within predetermined limits the distance, the speech The three-dimensional virtual space display method according to claim 1, wherein a line of sight of a participant's avatar corresponding to the message is directed to the first position .
前記所定の制限距離は、シチュエーションに応じて可変である
ことを特徴とする請求項2に記載の三次元仮想空間表示方法。
The three-dimensional virtual space display method according to claim 2, wherein the predetermined limit distance is variable according to a situation .
前記第1ステップにおいて、前記三次元仮想空間制御装置が、前記発話相手に関する情報として、特定の記号が前記発話メッセージに含まれているか否かを判定し、前記判定の結果が肯定のとき、さらに、前記発話メッセージより発話相手の固有名詞を取り出し、In the first step, the three-dimensional virtual space control device determines whether or not a specific symbol is included in the utterance message as information about the utterance partner, and when the determination result is affirmative, , Take the proper noun of the utterance partner from the utterance message,
前記第2ステップにおいて、前記三次元仮想空間制御装置が、取り出された前記固有名詞を用いて、前記発話相手のアバタを特定するIn the second step, the three-dimensional virtual space control device specifies the avatar of the utterance partner using the extracted proper noun.
ことを特徴とする請求項1に記載の三次元仮想空間表示方法。The three-dimensional virtual space display method according to claim 1.
前記第5ステップにおいて、前記三次元仮想空間制御装置が、さらに、前記三次元仮想空間を表示するビューウィンドウ内に表示されている他の参加者のアバタを特定し、
前記第6ステップにおいて、前記三次元仮想空間制御装置が、前記発話メッセージに対応する参加者のアバタと、特定された他の参加者のアバタの距離が所定の制限距離以内の場合に、前記他の参加者のアバタの視線を、前記第2の位置に指向させる
ことを特徴とする請求項1記載の三次元仮想空間表示方法。
In the fifth step, the three-dimensional virtual space control device further specifies an avatar of another participant displayed in a view window displaying the three-dimensional virtual space,
In the sixth step, the three-dimensional virtual space control apparatus, an avatar of the participant corresponding to the utterance message, if the distance of the avatar of the other participants specified is within predetermined limits the distance, the other three-dimensional virtual space display method according to claim 1, characterized in that the line of sight of the avatar of the participant, is directed to the second position.
前記所定の制限距離は、シチュエーションに応じて可変である
ことを特徴とする請求項5に記載の三次元仮想空間表示方法。
The three-dimensional virtual space display method according to claim 5, wherein the predetermined limit distance is variable according to a situation .
前記三次元仮想空間制御装置が、前記参加者のアバタが特定した位置に指向しているか否かを判定する第7ステップをさらに含み、A seventh step of determining whether or not the three-dimensional virtual space control device is directed to the position specified by the participant avatar;
前記第6ステップにおいて、前記三次元仮想空間制御装置が、前記特定した位置に指向していない前記参加者のアバタの視線を、前記特定した位置に指向させるIn the sixth step, the three-dimensional virtual space control device directs the line of sight of the participant's avatar not directed to the specified position to the specified position.
ことを特徴とする請求項1に記載の三次元仮想空間表示方法。The three-dimensional virtual space display method according to claim 1.
三次元仮想空間を管理し、前記三次元仮想空間に参加中の各参加者自身の分身であるアバタを当該三次元仮想空間内に表現し、
各参加者の端末操作に応答させてその参加者のアバタの表示位置やアバタの視点を変更し、
任意の参加者の端末から入力された発話メッセージを、その参加者のアバタに対応させて前記三次元仮想空間内、または所定のメッセージボードに表現すると共に、
各端末に対して、前記三次元仮想空間を表示させるコンピュータに実行させるプログラムであって、
前記コンピュータが、前記発話メッセージに発話相手に関する情報が含まれているか否かを判定する第1ステップと、
前記コンピュータが、前記判定の結果が肯定のとき前記情報に基づいて発話相手のアバタを特定する第2ステップと、
前記コンピュータが、その発話相手のアバタの前記三次元仮想空間内における位置である第1の位置を特定する第3ステップと、
前記コンピュータが、前記発話メッセージに対応する参加者のアバタの視線を、前記第1の位置に指向させる第4ステップと、
前記コンピュータが、前記発話メッセージに対応する参加者のアバタの前記三次元仮想空間内における位置である第2の位置を特定する第5ステップと、
前記コンピュータが、他の参加者のアバタの視線を、前記第2の位置に指向させる第6ステップと
含むことを特徴とするプログラム。
Managing a three-dimensional virtual space, expressing an avatar that is a substitute for each participant participating in the three-dimensional virtual space in the three-dimensional virtual space,
In response to each participant's terminal operation, the display position of the participant's avatar and the viewpoint of the avatar are changed,
An utterance message input from a terminal of an arbitrary participant is expressed in the three-dimensional virtual space or a predetermined message board in correspondence with the avatar of the participant,
A program for causing a computer to display the three-dimensional virtual space for each terminal ,
A first step in which the computer determines whether or not the utterance message includes information about the utterance partner;
A second step in which the computer specifies an avatar of a speech partner based on the information when the result of the determination is affirmative;
A third step in which the computer specifies a first position which is a position in the three-dimensional virtual space of the utterance partner avatar;
A fourth step in which the computer directs the line of sight of a participant's avatar corresponding to the utterance message to the first position;
A fifth step in which the computer specifies a second position which is a position in the three-dimensional virtual space of a participant's avatar corresponding to the utterance message;
It said computer program characterized in that it comprises a sixth step of directing the line of sight of the avatar of the other participants, in the second position.
前記第2ステップにおいて、前記コンピュータが、前記三次元仮想空間を表示するビューウィンドウ内に表示されているアバタの中から前記発話相手のアバタを特定し、
前記第3ステップにおいて、前記コンピュータが、前記発話相手のアバタが前記ビューウィンドウ内に表示されているとき、前記第1の位置を特定し、
前記第4ステップにおいて、前記コンピュータが、位置が特定された前記発話相手のアバタと前記発話メッセージに対応する参加者のアバタの距離が所定の制限距離以内の場合に前記発話メッセージに対応する参加者のアバタの視線を前記第1の位置に指向させる
ことを特徴とする請求項8に記載のプログラム。
In the second step, the computer specifies the avatar of the speaking partner from avatars displayed in a view window displaying the three-dimensional virtual space,
In the third step, when the avatar of the speaking partner is displayed in the view window, the computer specifies the first position,
Participants in the fourth step, the computer, when the distance of the participant of avatar corresponding to the utterance message avatar position is identified the speech counterpart is within predetermined limits the distance, corresponding to the utterance message The program according to claim 8, wherein a line of sight of a person's avatar is directed to the first position.
前記所定の制限距離は、シチュエーションに応じて可変である
ことを特徴とする請求項9に記載のプログラム。
The program according to claim 9, wherein the predetermined limit distance is variable according to a situation .
前記第1ステップにおいて、前記コンピュータが、前記発話相手に関する情報として、特定の記号が前記発話メッセージに含まれているか否かを判定し、前記判定の結果が肯定のとき、さらに、前記発話メッセージより発話相手の固有名詞を取り出し、In the first step, the computer determines whether or not a specific symbol is included in the utterance message as information about the utterance partner. When the determination result is affirmative, the computer further determines from the utterance message Take out the proper noun of the speaking partner,
前記第2ステップにおいて、前記コンピュータが、取り出された前記固有名詞を用いて、前記発話相手のアバタを特定するIn the second step, the computer specifies the avatar of the utterance partner using the extracted proper noun.
ことを特徴とする請求項8に記載のプログラム。The program according to claim 8.
前記第5ステップにおいて、前記コンピュータが、さらに、前記三次元仮想空間を表示するビューウィンドウ内に表示されている他の参加者のアバタを特定し、
前記第6ステップにおいて、前記コンピュータが、前記発話メッセージに対応する参加者のアバタと、特定された他の参加者のアバタの距離が所定の制限距離以内の場合に、前記他の参加者のアバタの視線を前記第2の位置に指向させる
ことを特徴とする請求項8に記載のプログラム。
In the fifth step, the computer further specifies an avatar of another participant displayed in a view window displaying the three-dimensional virtual space;
In the sixth step, the computer, the avatar of the participant corresponding to the utterance message, if the distance of the avatar of the other participants specified is within predetermined limits the distance, avatar of the other participants The program according to claim 8 , wherein the line of sight is directed to the second position.
前記所定の制限距離は、シチュエーションに応じて可変である
ことを特徴とする請求項12に記載のプログラム。
The program according to claim 12, wherein the predetermined limit distance is variable according to a situation .
前記コンピュータが、前記参加者のアバタが特定した位置に指向しているか否かを判定する第7ステップをさらに含み、The computer further includes a seventh step of determining whether the participant's avatar is directed to the specified position;
前記第6ステップにおいて、前記コンピュータが、前記特定した位置に指向していない前記参加者のアバタの視線を、前記特定した位置に指向させるIn the sixth step, the computer directs a line of sight of the participant's avatar not directed to the specified position to the specified position.
ことを特徴とする請求項8に記載のプログラム。The program according to claim 8.
請求項8乃至請求項14いずれかに記載のプログラムを格納した記録媒体。  The recording medium which stored the program in any one of Claims 8 thru | or 14. 三次元仮想空間を管理し、前記三次元仮想空間に参加中の各参加者自身の分身であるアバタを前記三次元仮想空間内に表現し、各参加者の端末操作に応答させてその参加者のアバタの表示位置やアバタの視点を変更し、任意の参加者の端末から入力された発話メッセージを、その参加者のアバタに対応させて前記三次元仮想空間内、または所定のメッセージボードに表現すると共に、各端末に対して、前記三次元仮想空間を表示させる三次元仮想空間制御装置であって、
前記発話メッセージに発話相手に関する情報が含まれているか否かを判定する判定手段と、
前記判定手段による判定結果が肯定のとき、前記情報に基づいて、前記発話相手のアバタを特定するアバタ特定手段と、
前記アバタ特定手段により特定された前記発話相手のアバタの、前記三次元仮想空間内における位置である第1の位置を特定する第1の位置特定手段と、
前記発話メッセージに対応する参加者のアバタの視線を、前記第1の位置特定手段により特定された前記第1の位置に指向させる第1の視線指向手段と、
前記発話メッセージに対応する参加者のアバタの前記三次元仮想空間内における位置である第2の位置を特定する第2の位置特定手段と、
他の参加者のアバタの視線を、前記第2の位置特定手段により特定された前記第2の位置に指向させる第2の視線指向手段と
を備えることを特徴とする三次元仮想空間制御装置。
The three-dimensional virtual space is managed, and the avatar, which is a part of each participant participating in the three-dimensional virtual space, is expressed in the three-dimensional virtual space, and the participant responds to the terminal operation of each participant. The avatar's display position and avatar's viewpoint are changed , and an utterance message input from any participant's terminal is represented in the three-dimensional virtual space or a predetermined message board in correspondence with the participant's avatar. And a three-dimensional virtual space control device that displays the three-dimensional virtual space for each terminal ,
Determining means for determining whether or not the utterance message includes information about the utterance partner;
An avatar specifying means for specifying the avatar of the speaking partner based on the information when the determination result by the determination means is affirmative;
First position specifying means for specifying a first position of the speaking partner's avatar specified by the avatar specifying means, which is a position in the three-dimensional virtual space;
A first sight directing means for directing the identified first position by the participants of the line of sight of the avatar, the first position specifying means corresponding to said speech message,
Second position specifying means for specifying a second position that is a position in the three-dimensional virtual space of the avatar of the participant corresponding to the utterance message;
A three-dimensional virtual space control device comprising: second line-of-sight directing means for directing the line of sight of an avatar of another participant to the second position specified by the second position specifying means .
JP2001345070A 2001-11-09 2001-11-09 Three-dimensional virtual space display method, program, recording medium storing the program, and three-dimensional virtual space control device Expired - Fee Related JP4048347B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001345070A JP4048347B2 (en) 2001-11-09 2001-11-09 Three-dimensional virtual space display method, program, recording medium storing the program, and three-dimensional virtual space control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001345070A JP4048347B2 (en) 2001-11-09 2001-11-09 Three-dimensional virtual space display method, program, recording medium storing the program, and three-dimensional virtual space control device

Publications (3)

Publication Number Publication Date
JP2003150978A JP2003150978A (en) 2003-05-23
JP2003150978A5 JP2003150978A5 (en) 2005-07-07
JP4048347B2 true JP4048347B2 (en) 2008-02-20

Family

ID=19158478

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001345070A Expired - Fee Related JP4048347B2 (en) 2001-11-09 2001-11-09 Three-dimensional virtual space display method, program, recording medium storing the program, and three-dimensional virtual space control device

Country Status (1)

Country Link
JP (1) JP4048347B2 (en)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005078427A (en) * 2003-09-01 2005-03-24 Hitachi Ltd Mobile terminal and computer software
JP3625212B1 (en) * 2003-09-16 2005-03-02 独立行政法人科学技術振興機構 Three-dimensional virtual space simulator, three-dimensional virtual space simulation program, and computer-readable recording medium recording the same
JP4312737B2 (en) 2005-05-13 2009-08-12 任天堂株式会社 GAME PROGRAM AND GAME DEVICE
JP5386118B2 (en) * 2008-06-26 2014-01-15 株式会社タイトー Game device, game program
JP4743721B2 (en) * 2008-07-17 2011-08-10 任天堂株式会社 GAME PROGRAM, GAME DEVICE, GAME SYSTEM, AND METHOD
EP2953099B1 (en) 2013-02-01 2019-02-13 Sony Corporation Information processing device, terminal device, information processing method, and programme
JP6281495B2 (en) 2013-02-01 2018-02-21 ソニー株式会社 Information processing apparatus, terminal apparatus, information processing method, and program
JP6907138B2 (en) * 2016-12-26 2021-07-21 株式会社コロプラ A method performed by a computer to communicate over virtual space, a program to cause the computer to perform the method, and a computer device.
JP6298523B1 (en) * 2016-12-26 2018-03-20 株式会社コロプラ Method executed by computer to communicate through virtual space, program for causing computer to execute the method, and computer apparatus
GB2562025B (en) * 2017-02-13 2020-01-01 Sony Interactive Entertainment Inc Simulation method and system
JP6321247B1 (en) * 2017-03-08 2018-05-09 株式会社コロプラ Method executed by computer for moving in virtual space, program for causing computer to execute the method, and information processing apparatus
DE112018006666T5 (en) * 2017-12-28 2020-09-24 Sony Corporation INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD AND PROGRAM
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
JP7257986B2 (en) * 2020-03-30 2023-04-14 株式会社ドワンゴ 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
JP2003150978A (en) 2003-05-23

Similar Documents

Publication Publication Date Title
US11785056B2 (en) Web browser interface for spatial communication environments
US7086005B1 (en) Shared virtual space conversation support system using virtual telephones
US9813463B2 (en) Phoning into virtual communication environments
JP4048347B2 (en) Three-dimensional virtual space display method, program, recording medium storing the program, and three-dimensional virtual space control device
US7269632B2 (en) Networked computer system for communicating and operating in a virtual reality environment
US8018455B2 (en) Multi-user animation coupled to bulletin board
EP1451672B1 (en) Rich communication over internet
US20060026233A1 (en) Enabling communication between users surfing the same web page
US20060075055A1 (en) System and method for integration of instant messaging and virtual environment clients
US20040128350A1 (en) Methods and systems for real-time virtual conferencing
JP3715562B2 (en) Message exchange method
KR20190104821A (en) Server, device and method for providing avatar communication
JP2003178328A (en) Three-dimensional virtual space display device, three- dimensional virtual space display method, program and storage medium with the program stored therein
KR20010084085A (en) Network-based character providing method and system thereof
JP2003058484A (en) Method and device for providing community service, program storage medium and program
KR100359389B1 (en) chatting system by ficture communication using distributted processing on internet
JPH10154053A (en) Three-dimensional virtual reality space display processor, display processing method and information providing medium
US20230339816A1 (en) Visual Communications
KR101000998B1 (en) Background changing method and system according to viewpoint of the avatar
WO2002015500A2 (en) System and method for messaging
KR20000037048A (en) Advertising method by use of the communication network
KR20010111330A (en) Method For Management Of Coterie In Internet

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041102

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041102

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20041102

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20050215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070710

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070713

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070910

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: 20071031

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071113

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

Free format text: PAYMENT UNTIL: 20101207

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20101207

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20111207

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111207

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121207

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees