JP2009199198A - 仮想空間提供サーバ、仮想空間提供方法及びコンピュータプログラム - Google Patents

仮想空間提供サーバ、仮想空間提供方法及びコンピュータプログラム Download PDF

Info

Publication number
JP2009199198A
JP2009199198A JP2008038173A JP2008038173A JP2009199198A JP 2009199198 A JP2009199198 A JP 2009199198A JP 2008038173 A JP2008038173 A JP 2008038173A JP 2008038173 A JP2008038173 A JP 2008038173A JP 2009199198 A JP2009199198 A JP 2009199198A
Authority
JP
Japan
Prior art keywords
virtual space
predetermined
user
communication program
execution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008038173A
Other languages
English (en)
Other versions
JP5005574B2 (ja
Inventor
Toru Hamabe
徹 濱辺
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.)
Nomura Research Institute Ltd
Original Assignee
Nomura Research Institute Ltd
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 Nomura Research Institute Ltd filed Critical Nomura Research Institute Ltd
Priority to JP2008038173A priority Critical patent/JP5005574B2/ja
Publication of JP2009199198A publication Critical patent/JP2009199198A/ja
Application granted granted Critical
Publication of JP5005574B2 publication Critical patent/JP5005574B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】本発明の仮想空間提供サーバでは、アバタを介して他のユーザと簡単に音声チャットを行うことができる。
【解決手段】各ユーザは、自分自身に対応するアバタを介して仮想空間内で交流を行うことができる。ホストユーザUHが音声チャットを開始すると、ホストユーザUHを中心とする所定範囲が可聴範囲300として設定される。可聴範囲300は、ホストユーザUHの移動に応じて移動する。音声チャットボタンを操作することにより、他のユーザU1は、音声チャットへの参加を希望する。可聴範囲300内に進入したユーザU1は、ホストユーザUHが使用している音声チャット用チャネルに接続され、音声チャットを行うことができる。ユーザU1が可聴範囲300から外れると、ユーザU1は音声チャット用チャネルから切断される。
【選択図】図9

Description

本発明は、仮想空間を提供するサーバ、仮想空間提供方法及びコンピュータプログラムに関する。
ネットワーク上に設けられたサーバ内に仮想的な空間を生成し、この仮想空間内で、ユーザを象徴するキャラクタ(アバタ)を操作することができるようにしたシステムは、知られている(特許文献1)。また、仮想空間内のキャラクタ同士で音声チャットを可能とするシステムも提案されている(特許文献2)。この文献に記載の従来技術では、仮想空間のオブジェクト配置等に応じて音声を変化させることにより、キャラクタ同士の会話に臨場感を与えるようになっている。
特開2005−100053号公報 特開2004−267433号公報
上記従来技術では、各ユーザは、それぞれのキャラクタを仮想空間内で操作し、テキストや音声による会話を楽しむことができる。しかし、不特定または特定の複数ユーザ同士がチャットを行うのは、使い勝手が低く、臨場感が乏しい。例えば、仮想空間内で複数ユーザがチャットを行おうとする場合、各ユーザのキャラクタがチャット部屋に集まったり、あるいは、各キャラクタ同士でグループを構成する必要がある。
前者の場合、チャット部屋の位置は固定されており、キャラクタの移動と無関係であるため、チャットを楽しみたいユーザは、キャラクタをそのチャット部屋から移動させることができない。ユーザは、キャラクタを介して仮想空間の各所を自由に巡り歩き、買い物や情報収集、他ユーザとの偶然の出会い等を楽しむことができるにもかかわらず、チャットだけのために特定の場所に縛り付けられることになる。
後者の場合、同一グループに属する各キャラクタは、各キャラクタ間の位置関係と無関係にチャット可能である。各キャラクタは、互いに遠く離れていても、チャットを行うことができるため、仮想空間内でチャットをする意義が無い。チャット専用システムを用いてチャットをする方が簡単である。
現実世界に目を転じると、各ユーザは特定の部屋に集結しなくても、歩道や公園等の場所で自由に周囲のユーザと会話を楽しむことができる。また、現実世界の各ユーザは、携帯電話等を用いる場合を除いて、声の届く範囲内で会話を楽しむことができる。
そこで、本発明の目的は、使い勝手を向上できるようにした仮想空間提供サーバ、仮想空間提供方法及びプログラムを提供することにある。本発明の他の目的は、仮想空間におけるキャラクタの位置に応じて、所定コミュニケーションプログラムが実行される範囲を制御することにより、利便性を高めることができるようにした仮想空間提供サーバ、仮想空間提供方法及びプログラムを提供することにある。本発明の更なる目的は、後述する実施形態の記載から明らかになるであろう。
上記課題を解決すべく、本発明の一つの観点に従う仮想空間提供サーバは、通信ネットワークを介して接続される複数のクライアントコンピュータに、仮想空間を提供する仮想空間提供サーバであって、各クライアントコンピュータから入力される操作指示に応じて、ユーザを象徴するキャラクタを仮想空間内で動作させ、各キャラクタの言動を反映させた仮想空間の最新状態を通信ネットワークを介してクライアントコンピュータにそれぞれ送信する仮想空間管理部と、仮想空間内で実行される所定コミュニケーションプログラムを制御するためのコミュニケーションプログラム実行制御部であって、所定コミュニケーションプログラムの実行を要求する実行要求がクライアントコンピュータから発行された場合には、実行要求を発行した所定ユーザに対応する所定キャラクタの位置から所定範囲の領域を所定コミュニケーションプログラムが実行される実行範囲として設定する、コミュニケーションプログラム実行制御部と、を備える。
第2観点では、第1観点において、コミュニケーションプログラム実行制御部は、(1)所定キャラクタから所定範囲内で所定コミュニケーションプログラムが実行されていない場合に、所定キャラクタを中心とする所定範囲の領域を実行範囲として設定し、かつ、実行範囲内に存在する他ユーザに対応する他キャラクタを所定コミュニケーションプログラムの参加者として選択し、(2)所定キャラクタから所定範囲内で所定コミュニケーションプログラムが既に実行されている場合は、この実行されている所定コミュニケーションプログラムに所定キャラクタを参加させる。
第3観点では、第1観点または第2観点のいずれかにおいて、コミュニケーションプログラム実行制御部は、仮想空間の実行範囲内に位置する他キャラクタに対応する他ユーザが所定コミュニケーションプログラムへの参加を要求する場合に、所定コミュニケーションプログラムへの参加可否を判断し、参加を許可する場合は、他ユーザの使用するクライアントコンピュータが所定コミュニケーションプログラムを実行するのを許可する。
第4観点では、第1観点〜第3観点のいずれかにおいて、実行範囲は、所定キャラクタの仮想空間における位置に基づいて決定され、所定キャラクタが仮想空間内を移動した場合には、その移動に応じて実行範囲も仮想空間内を移動する。
第5観点では、第1観点〜第4観点のいずれかにおいて、コミュニケーションプログラム実行制御部は、実行範囲から他キャラクタが離脱した場合、この離脱した他キャラクタに対応するクライアントコンピュータに関してのみ所定コミュニケーションプログラムの実行を中止させる。
第6観点では、第1観点〜第5観点のいずれかにおいて、コミュニケーションプログラム実行制御部は、実行範囲内に他キャラクタが一人も存在しなくなった場合、所定時間の経過後に所定コミュニケーションプログラムの起動を停止させ、所定ユーザの使用するクライアントコンピュータに関しても所定コミュニケーションプログラムの実行を中止させるようになっている。
第7観点では、第1観点〜第6観点のいずれかにおいて、コミュニケーションプログラム制御部は、所定ユーザの使用するクライアントコンピュータから所定コミュニケーションプログラムの実行停止を要求する停止要求が発行された場合に、所定コミュニケーションプログラムの起動を停止させる。
第8観点では、第1観点〜第7観点のいずれかにおいて、コミュニケーションプログラム制御部は、所定コミュニケーションプログラムを仮想空間内で複数実行させることができる。
第9観点では、第1観点〜第8観点のいずれかにおいて、コミュニケーションプログラム制御部は、所定コミュニケーションプログラムに参加している所定キャラクタ及び他キャラクタに関する情報を、仮想空間内に表示させるための状態表示部を備える。
第10観点では、第1観点〜第9観点のいずれかにおいて、所定コミュニケーションプログラムは、音声チャットプログラムである。
第11観点に従うコンピュータプログラムは、通信ネットワークを介して複数のクライアントコンピュータに接続されるサーバコンピュータを、仮想空間を提供するサーバコンピュータとして使用するためのコンピュータプログラムであって、各クライアントコンピュータから入力される操作指示に応じて、ユーザを象徴するキャラクタを仮想空間内で動作させ、各キャラクタの言動を反映させた仮想空間の最新状態を通信ネットワークを介してクライアントコンピュータにそれぞれ送信する仮想空間管理部と、クライアントコンピュータから予め設定される所定コミュニケーションプログラムの実行を要求する実行要求が発行された場合には、所定コミュニケーションプログラムが既に実行されていない場合に限り、実行要求を発行した所定ユーザに対応する所定キャラクタから所定範囲の領域を所定コミュニケーションプログラムが実行される実行範囲として設定し、かつ、実行範囲内に存在する他ユーザに対応する他キャラクタを所定コミュニケーションプログラムの参加者として選択する、コミュニケーションプログラム実行制御部と、をサーバコンピュータ上にそれぞれ実現させる。
第12観点に従う仮想空間提供方法は、通信ネットワークを介して接続される複数のクライアントコンピュータに仮想空間を提供する方法であって、クライアントコンピュータからのログイン要求を処理するステップと、ログインが許可された所定ユーザに対応する所定キャラクタを、仮想空間に配置するステップと、クライアントコンピュータから、予め設定される所定コミュニケーションプログラムの実行を要求する実行要求が発行された場合には、所定コミュニケーションプログラムの実行される実行範囲内に所定キャラクタが位置するか否かを判定するステップと、所定キャラクタが実行範囲内に位置すると判定された場合は、所定キャラクタを、既に実行されている所定コミュニケーションプログラムの参加者として選択するステップと、所定キャラクタが実行範囲内に位置しないと判定された場合は、所定キャラクタから所定範囲の領域を実行範囲として設定するステップと、をそれぞれ実行する。
以下、図面に基づき、本発明の実施の形態を説明する。図1は、本実施形態の全体概念を示す説明図である。本実施形態では、所定コミュニケーションプログラムとして、音声チャットプログラムを例に挙げて説明する。
本実施形態では、以下に詳述するように、チャットグループのホストとなるユーザが、予め用意された複数の音声チャット用チャネルのうち一つの空いているチャネルに最初に接続し、ホストユーザの仮想空間における位置(座標)を中心とする実行範囲が仮想空間に設定される。設定された実行範囲内に位置する他の各ユーザのうち音声チャットへの参加を希望するユーザは、ホストユーザと同一のチャネルに自動的に接続される。これにより、仮想空間におけるホストユーザの位置に応じて、音声チャットが可能な範囲(実行範囲)を制御することができる。
本実施形態では、ホストユーザ8Hの周囲に設定される可聴範囲9内でのみ、音声チャットが実行できるように制御する。ホストユーザ8Hが仮想空間7を移動すると、可聴範囲9も移動する。ゲストユーザ8Gは、可聴範囲9内に位置する場合にのみ、他のゲストユーザ8Gやホストユーザ8Hと音声チャットを行うことができる。可聴範囲9から外れたユーザ8は、音声チャットを行うことができない。
仮想空間提供システムは、例えば、仮想空間提供サーバ1と、複数のクライアント端末2と、音声チャットサーバ3とを備える。仮想空間提供サーバ1と各クライアント端末2及び音声チャットサーバ3は、例えば、インターネットのような通信ネットワークを介して相互通信可能に接続されている。
仮想空間は、仮想空間提供サーバ1の内部に仮想的に設けられる空間である。仮想空間には、例えば、各種建造物、道路や山河、動植物、雲等の各種のオブジェクトを配置することができる。
さらに、仮想空間には、各ユーザを象徴するアバタ8も配置される。アバタ8は、「キャラクタ」に対応する。アバタ8は、例えば、人型の人形として作成されるが、人型形状に限らず、動植物やロボット等のように作成されることもある。
アバタ8は、クライアント端末2にインストールされるクライアントソフトウェア2Aを介して、ユーザにより操作される。ユーザは、例えば、キーボードスイッチ、ポインティングデバイス、タブレット、マイクロフォン等の入力装置を用いて、アバタ8の言動を指示する。
仮想空間7で行動するのは、ユーザではなく、ユーザを象徴するアバタ8である。しかし、便宜上、両者を厳密に区別せずに説明する場合がある。即ち、アバタ8をユーザ8と呼び、ホストアバタ8Hをホストユーザ8Hと、ゲストアバタ8Gをゲストユーザ8Gと、それぞれ呼ぶ場合がある。
仮想空間7の構成は、仮想空間管理部5によって管理される。仮想空間管理部5は、各アバタ8や建築物等の各オブジェクトの位置及び表示等を制御する。仮想空間管理部5は、各アバタ8やオブジェクトの位置や表示データ等を収集し、これらの位置や表示データ等を各クライアント端末2にそれぞれ送信する。
音声チャット管理部6は、仮想空間7内で実行される音声チャットを管理する。音声チャット管理部6は、音声チャットを希望するユーザの使用するクライアントソフトウェア2Aに、音声チャットを行うためのチャネルの通信ポートを割り当てる。
音声チャットサーバ3は、音声チャット用のチャネルを提供するサーバである。チャネルは、複数の通信ポートを備える。各ユーザがマイクロフォンから入力した音声は、通信ポートを介して音声チャットサーバ3に入力される。音声チャットサーバ3は、チャネルに入力された音声を合成し、各通信ポートから出力させる。出力された音声データは、クライアント端末2のスピーカから出力される。
クライアント端末2は、例えば、パーソナルコンピュータや携帯情報端末または携帯電話のように構成される。クライアント端末2には、クライアントソフトウェア2Aが設けられている。
クライアントソフトウェア2Aは、仮想空間7を閲覧し、アバタ8を操作するためのソフトウェアである。後述の実施例で述べるように、クライアントソフトウェア2Aは、ウェブブラウザのプラグインとして構成可能である。クライアントソフトウェア2Aにより表示される仮想空間7には、操作部7Aが対応付けられている。ユーザは、キーボードスイッチやポインティングデバイス等を用いて操作部7Aを操作することにより、アバタ8を移動させたり、アバタ8の姿勢や表情を変化させることができる。さらに、ユーザは、操作部7Aに予め用意されている音声チャットボタン7A1を操作することにより、音声チャットを行うこともできる。音声チャットボタン7A1は、後述の音声チャットボタン241に対応する。
ホストユーザ8H(正確には、ホストとなるユーザにより操作されるアバタ8H。以下同様。)は、最初に音声チャットを開始したユーザである。ホストユーザ8Hの位置を中心とする所定範囲が、可聴範囲9として設定される。可聴範囲9は、音声チャットが実行される範囲であり、「実行範囲」に相当する。なお、本システムの管理者は、可聴範囲の値を各ワールド毎にそれぞれ設定することができる(後述する図7中のワールド管理情報122B参照)。
詳細は後述の実施例で明らかにされるが、可聴範囲9内の各ユーザ8H,8Gは、それぞれ同一のチャネルを利用しており、互いに音声で会話を楽しむことができる。あるユーザ8が可聴範囲9内に入った場合を説明する。
ユーザ8が音声チャットボタンを操作して、音声チャットの開始を要求した場合、音声チャット管理部6は、そのユーザ8の使用するクライアントソフトウェア2Aをチャネルに接続させる。但し、そのチャネルに空いている通信ポートが無い場合、そのユーザ8は音声チャットに参加することはできない。他のユーザ8Gが可聴範囲9の外に移動して音声チャットから離脱した場合に、通信ポートに空きが生じる。その空いた通信ポートを使用して、別のユーザ8が音声チャットを行うことができる。
このように構成される本実施形態によれば、ホストユーザ8Hの位置を中心とする所定範囲に可聴範囲9を設定し、音声チャットの開始を希望するユーザが可聴範囲9内に入った場合には、そのユーザの使用するクライアント端末2(クライアントソフトウェア2A)をチャネルに自動的に接続させる。
従って、ユーザ8は、音声チャットボタンを押して仮想空間7を移動するだけで、既に開始されている音声チャットに自動的に参加できる。このため、音声チャットの使い勝手が向上する。即ち、本実施形態では、音声チャットを行うために用意された特別な場所に移動したり、特定のユーザと予めグループを形成してから音声チャットを行ったりすることなく、簡単に音声チャットを行うことができる。
本実施形態では、音声チャットサーバ3に空きチャネルが存在する限り、いずれのユーザもホストユーザ8Hとなって、仮想空間7内の所望の場所で、音声チャットを開始することができ、使い勝手が向上する。
本実施形態では、ホストユーザ8Hの位置を中心として可聴範囲9を設定するため、ホストユーザ8Hの移動に応じて可聴範囲9も移動する。従って、各ユーザは、仮想空間7を移動しながら音声チャットを続けることができ、使い勝手が向上する。以下、本実施形態をより詳細に説明する。
図2は、本実施例による仮想空間提供システムの全体構成を示す説明図である。仮想空間提供システムは、例えば、仮想空間提供サーバ10と、クライアント端末20とを通信ネットワークCNで接続することにより構成される。図1との対応関係を先に説明すると、仮想空間提供サーバ10は図1中の仮想空間提供サーバ1に、クライアント端末20は図1中のクライアント端末2に、音声チャットサーバ13は図1中の音声チャットサーバ3に、それぞれ対応する。また、図3に示す仮想空間管理部111は図1中の仮想空間管理部5に、図3に示す音声チャット管理部112は図1中の音声チャット管理部6に、図3に示すクライアントソフトウェア21は図1中のクライアントソフトウェア2Aに、それぞれ対応する。
仮想空間提供サーバ10は、例えば、ウェブサーバ11と、仮想空間管理サーバ12と、音声チャットサーバ13とを含んで構成することができる。ウェブサーバ11は、ウェブページを生成してクライアント端末20に提供する。本実施例では、ウェブページを閲覧するためのウェブブラウザによって仮想空間を操作できるようになっている。仮想空間管理サーバ12は、仮想空間の構成を管理する。仮想空間管理サーバ12の詳細は、後述する。音声チャットサーバ13は、音声チャットに使用される少なくとも一つ以上のチャネルを提供する。これら各サーバ11,12,13は、それぞれ別々のコンピュータとして構成することもできるし、一つのコンピュータとして構成することもできる。
図3は、仮想空間管理サーバ12の構成等を示すブロック図である。仮想空間管理サーバ12は、例えば、通信部100と、制御部110と、記憶部120とを備える。通信部100は、インターネットのような通信ネットワークCNを介して、各クライアント端末20及び音声チャットサーバ13と通信を行う。
制御部110は、例えば、仮想空間管理部111と、音声チャット管理部112と、仮想空間提供部113とを備える。例えば、CPU(Central Processing Unit)のような演算処理装置が、所定のコンピュータプログラムを読み込んで実行することにより、上述の各機能111,112,113がそれぞれ実現される。
仮想空間管理部111は、アバタの位置や表示状態等の仮想空間の各種構成を管理するものである。音声チャット管理部112は、仮想空間内のアバタ(ユーザ)に割り当てられる音声チャット用のチャネル及び通信ポート等を管理する。仮想空間提供部113は、クライアント端末20のクライアントソフトウェア21に、仮想空間を提供する。
記憶部120は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、ハードディスク等の記憶デバイスから構成される。記憶部120は、制御部110によって実行される所定プログラムのほかに、各種管理情報121〜124が記憶されている。
ユーザ管理情報121は、仮想空間を利用する各ユーザを管理する情報である。仮想空間管理情報122は、仮想空間を管理する情報である。アバタ管理情報123は、アバタの位置や表示形態等を管理する情報である。音声チャット管理情報124は、音声チャットサーバ13の有する各チャネルの使用状態を管理する情報である。これら管理情報121〜124の詳細は別図と共に後述する。
図3に示すように、クライアント端末20は、例えば、通信部22と、クライアントソフトウェア21とを備える。音声チャットサーバ13は、音声合成部130と通信部131とを備える。
図4は、音声合成部130の概略を模式的に示す説明図である。音声合成部130は、複数のチャネル132を備える。各チャネル132は、それぞれ複数の通信ポート133を備える。従って、もしも、それぞれ10個ずつの通信ポート133を有するチャネル132が10個ある場合、仮想空間の全体で、最大100人が同時に音声チャットを行うことができる。もっとも、上記の例では、一つのチャネルには最大10人まで接続可能であるから、同時に会話可能なユーザの最大数は10人である。
一つのチャネル132には、同一の可聴範囲300に属するユーザが接続される。換言すれば、同一のチャネル132に接続されるユーザによって、一つの音声チャットグループが構成される。音声チャットサーバ13にエントリした順番の最も若いユーザが、ホストユーザUHとなる。音声チャットのチャネルを最初に開くユーザがホストユーザとなり、その後に音声チャットに参加するユーザはゲストUGとなる。
図4に示すように、音声チャットへの参加を希望するユーザU1がチャネル1の可聴範囲300内に進入すると、そのユーザU1の使用するクライアントソフトウェア21は、チャネル1内の空いている通信ポート133に接続される。
図5は、クライアント端末20のクライアントソフトウェア21によって表示される画面例を示す説明図である。クライアントソフトウェア21は、例えば、ウェブブラウザのようなソフトウェアとして構成される。
クライアントソフトウェア21は、複数の表示領域210,220と、操作領域230,240とを備えて構成される。クライアントソフトウェア21は、例えば、図中左側に示す仮想空間表示部210と、図中右側に示すウェブページ表示部220と、図中下側に示すコントロールパネル230及びメニュー240とを備えている。なお、図5に示すレイアウトは一例に過ぎず、本発明は図5に示す構成に限定されない。
仮想空間200は、仮想空間管理部111により管理され、仮想空間提供部113により提供される。仮想空間表示部210は、ウェブブラウザに仮想空間200を表示するためのプラグインソフトウェアとして生成される。仮想空間200には、例えば、音声チャットモニタ211と、仮想店舗212と、アバタU1とが表示される。
音声チャットモニタ211は、仮想空間200内で実行されている一つまたは複数の音声チャットの状態を通知するための表示部である。音声チャットモニタ211は、例えば、メニュー240内の音声チャットボタン241をオン操作することにより、表示部210内に表示される。
音声チャットモニタ211は、例えば、仮想空間200を利用する全ユーザ(全アバタ)の名称と、各ユーザが音声チャットに参加しているか否かを示す識別標識とを対応付けて表示する。図5中では、識別標識の例として、丸印と二重丸印を示している。
音声チャットを利用している各ユーザのユーザ名には、そのユーザの参加する音声チャットのグループ(チャネル)を識別するための標識が設定される。同一の識別標識が設定されている各ユーザは、同一チャネルを利用して音声チャットを行っている。図5では、説明の便宜上、丸印や二重丸印のような標識でチャネルを区別しているが、これに代えて、例えば、「CH1」や「チャネル1」のような文字等によって、音声チャット用のチャネルを区別してもよい。
音声チャットモニタ211に表示されるユーザの範囲は、例えば、以下に述べるように、種々の方法に従って設定することができる。第1の方法は、同一のワールドを利用する全ユーザを表示する方法である。つまり、ユーザU1と同一の仮想空間200に出現可能であり、ユーザU1と仮想空間200のどこかで出会う可能性のある全てのユーザを、音声チャットモニタ211に表示させる。ログインしているユーザのみを表示させてもよいし、あるいは、ログアウトしているユーザも含めて全ユーザを表示させてもよい。但し、この場合、音声チャットモニタ211に表示させるユーザ数が多くなるため、モニタウィンドウのサイズが大きくなりやすく、検索しにくいという可能性がある。
第2の方法は、ユーザU1の周辺マップに位置する全ユーザのみを音声チャットモニタ211に表示させる方法である。この場合は、表示するユーザ数を比較的少数に抑制できる可能性がある。しかし、イベント会場のように多数のユーザが集合するマップでは、表示するユーザ数が増大する。
第3の方法は、仮想空間の全体において音声チャットを利用しているユーザのみを音声チャットモニタ211に表示させる方法である。つまり、音声チャットサーバ13の有する各チャネル132のうち使用されているチャネル132に接続されている、全てのユーザの名前を音声チャットモニタ211に表示させる。
第4の方法は、ユーザU1から入力される検索条件に合致するユーザのみを音声チャットモニタ211に表示させる方法である。例えば、各ユーザに趣味や居住地あるいは年齢及び性別等のプロフィールがそれぞれ設定されている場合、ユーザU1は、趣味等に基づいて、他のユーザを検索することができる。
第5の方法は、ユーザU1が予め友人または知人として登録している他のユーザのみを音声チャットモニタ211に表示させる方法である。以上の方法は例示であって、本発明では、いずれの方法も採用可能である。
仮想店舗212は、仮想空間200に配置されるオブジェクトの一例である。仮想店舗212には、例えば、店員の役割を担当するアバタと、商品やレジスター端末等の各種オブジェクトとがそれぞれ配置される。仮想店舗212に関する詳細な情報や具体的な購買行動等については、ウェブページ表示部220に表示させることができる。
コントロールパネル230は、ユーザが、自分自身を象徴するアバタ(図5中のU1)の移動、姿勢、表情等を操作するための操作部である。ユーザは、例えば、4方向のカーソルキー231を操作することにより、アバタU1を仮想空間200内で移動させることができる。また、ユーザは、コントロールパネル230に配置された各種ボタン232を操作することにより、アバタU1の姿勢や表情、視線等を制御できる。
メニュー240は、例えば、音声チャットボタン241,ユーザリストボタン242,マップボタン243,アバタ編集ボタ244を備える。音声チャットボタン241は、音声チャットを開始または停止する場合に操作するボタンである。
ユーザが、音声チャットボタン241を一度操作すると(クリックすると)、音声チャットがオン状態となる。音声チャットのオン状態とは、音声チャットを開始可能な状態である。実際に音声チャットが開始されれるか否かは、周囲に他のアバタが存在するか否か、周囲で音声チャットが既に開始されているか否か、チャネルに空きの通信ポートがあるか否か等によって定まる。ユーザが、音声チャットボタン241を再度操作すると(2度目のクリックをすると)、音声チャットはオフ状態となる。
ユーザリストボタン242は、仮想空間200に参加しているユーザ名のリストを表示させるためのボタンである。ユーザリストの表示範囲は、音声チャットモニタ211のユーザ名表示範囲と同様に、種々の方法で設定可能である。
マップボタン243は、仮想空間200の地図を表示させるためのボタンである。アバタ編集ボタン244は、アバタU1の構成を編集するためのボタンである。例えば、ユーザは、アバタU1の髪型、目や肌の色等の各部を変更できる。
ウェブページ表示部220を説明する。ウェブページ表示部220には、アバタU1の位置する仮想空間200に関する情報が表示される。例えば、アバタU1が仮想店舗212の内部または周囲に位置する場合、ウェブページ表示部220には、仮想店舗212に関連するウェブページが表示される。このウェブページは、例えば、仮想店舗212を出店する企業により運営されるショッピングサイトのように構成可能である。
仮想店舗212に関するウェブページには、例えば、お勧め商品ボタン221,商品検索ボタン222,店舗マップボタン223,お問い合わせボタン224等の各種メニューに関するボタンを配置することができる。
図6は、ユーザ管理情報121及びアバタ管理情報123の構成をそれぞれ示す説明図である。アバタ管理情報123は、例えば、アバタ位置管理情報123Aと、アイテム情報123Bとを含んで構成される。
ユーザ管理情報121は、仮想空間提供サービスを利用する各ユーザをそれぞれ管理するためのものである。ユーザ管理情報121は、例えば、ユーザIDと、パスワードと、氏名と、連絡先電子メールアドレスや電話番号と、性別と、年齢と、最終ログイン時刻等を対応付けて管理している。なお、これらの項目は一例であって、本発明はこれらに限定されない。例えば、職業や住所等の項目を追加してもよいし、氏名や年齢等の項目を廃止してもよい。
アバタ位置管理情報123Aは、アバタの位置を管理する情報である。アバタ位置管理情報123Aは、例えば、ユーザIDと、時刻と、ワールドIDと、空間IDと、座標等を対応付けて管理する。即ち、どのユーザが、いつ、どのワールドに属するどの仮想空間内で、どこに存在したかを所定時間毎に管理している。なお、アバタ位置管理情報123Aに、アバタの容姿を決定するための情報を含めてもよい。
アイテム情報123Bは、アバタの有するアイテムを管理する情報である。アイテム情報123Bは、例えば、ユーザIDと、アイテムIDと、属性と、アイテムの表示ファイル等を対応付けて管理する。アイテムとは、例えば、アバタが身につける帽子、手袋、マフラー、メガフォン、眼鏡、ハンドバッグ、遊具、洋服等を意味する。アイテムIDは、各アイテムをそれぞれ識別するための情報である。属性とは、各アイテムの属するカテゴリを示す情報である。
図7は、仮想空間管理情報122の構成を示す説明図である。仮想空間管理情報122は、例えば、仮想空間構成情報125Aと、ワールド管理情報122Bとを含んで構成することができる。
仮想空間構成情報122Aは、仮想空間の構成について管理するものである。仮想空間構成情報122Aは、例えば、空間IDと、空間名と、構成ファイル名と、ワールドID等を対応付けて管理する。空間IDとは、仮想空間を識別するための情報である。空間名とは、その仮想空間の名称である。構成ファイル名とは、その仮想空間の構成を定義したファイルを特定するための情報である。ワールドIDとは、その仮想空間が設けられるワールドを特定するための情報である。
ワールド管理情報122Bは、各ワールドの状態を管理するものである。ワールド管理情報122Bは、例えば、ワールドIDと、ワールド名と、サーバIDと、接続ユーザ数と、負荷と、可聴範囲等を対応付けて管理している。ワールド名とは、そのワールドのニックネームのような名称である。サーバIDとは、そのワールドが設定されているサーバを特定するための情報である。接続ユーザ数とは、そのワールドに接続しているユーザの数である。負荷とは、そのワールドのCPU負荷やメモリ消費量等を示す情報である。可聴範囲とは、そのワールドの可聴範囲300の値(例えば、半径の値)である。つまり、本実施例では、管理者は、各ワールドID毎に、それぞれ可聴範囲の広さを設定することができる。例えば、管理者は、あるワールドの可聴範囲300を小さく設定し、別のワールドの可聴範囲300を広く設定することができる。また、例えば、管理者は、あるワールドに設定済の可聴範囲の値を書き直すことにより、そのワールドの可聴範囲300の広さを調節することができる。
なお、仮想空間管理情報122には、仮想空間200に配置される全てのオブジェクトを管理するための情報も含ませることができる。オブジェクトを管理するための情報は、例えば、オブジェクトを識別するためのオブジェクトID、オブジェクトデータを特定するためのファイルパス、オブジェクトの配置位置を示す情報、オブジェクトの作成者や作成年月日を示す情報等を含むことができる。
図8は、音声チャットを管理するための音声チャット管理情報124の構成を示す説明図である。音声チャット管理情報124は、例えば、チャネル名と、通信ポート番号と、接続状態と、ユーザIDと、ホストまたはゲストの区別等を対応付けて管理する。
チャネル名は、音声チャットサーバ13の有する各チャネル132を識別するための情報である。ポート番号は、チャネル132の有する各通信ポート133を識別するための情報である。
接続状態は、通信ポート133にクライアント端末20が接続されているか否かを示す情報である。使用中の通信ポート133には、例えば「接続中」と設定される。ユーザIDは、通信ポート133に接続しているユーザを特定するための情報である。ホストまたはゲストの区別とは、その通信ポート133を使用するユーザが、ホストユーザUHなのか、それともゲストユーザUGなのかを示す情報である。本実施例では、ホストユーザが、空いているチャネルに一番早く接続され、そのチャネルに後から接続される各ユーザは全員ゲストとなる。従って、通常の場合、各チャネルのうち、最もポート番号の小さい通信ポート133は、ホストユーザにより使用される。
図9〜図13を参照して、音声チャットの制御方法を説明する。図9は、音声チャットへの参加を希望するユーザU1が、既に開始されている音声チャットに参加する様子を示す説明図である。
図9(a)に示すように、ホストユーザUH及び各ゲストユーザUGによって、音声チャットが既に開始されているものとする。この音声チャットグループの近くにユーザU1が移動してきたか、あるいは、ログインしたものとする。
図9(b)に示すように、ユーザU1は、音声チャットボタン241を操作して音声チャットをオン状態とし、可聴範囲300内に進入する。その音声チャットで使用中のチャネルに空いている通信ポート133がある場合、ユーザU1は、その空いている通信ポート133を使用する。これにより、ユーザU1は、その音声チャットのグループのメンバとなり、音声でチャットを行うことができる。
図9(c)に示すように、ユーザU1が可聴範囲300から外れると、ユーザU1の音声チャットは自動的にオフ状態となり、ユーザU1の使用するクライアント端末20は、通信ポート133から切断される。
図9(c)に示す状態は、ユーザU1が可聴範囲300から積極的または消極的に外れた場合に生じる。ユーザが可聴範囲300から積極的に外れる場合とは、停止状態の可聴範囲300から、ユーザU1が歩み去った場合である。ユーザが可聴範囲300から消極的に外れる場合とは、ホストユーザUHの移動に応じて可聴範囲300が移動しており、ユーザU1が可聴範囲300の移動に追従しなかった場合である。
図10は、音声チャットが最初に行われる様子を示す説明図である。図10(a)に示すように、ユーザU1の周囲には、他のユーザU2が複数存在する。しかし、音声チャットは未だ開始されていないものとする。
図10(b)に示すように、ユーザU1が音声チャットボタン241を操作し、音声チャットをオン状態にすると、ユーザU1が開始しようとする音声チャットに対して、音声チャットサーバ13の有するチャネルが1つ割り当てられる。ユーザU1は、音声チャットのホスト(UH)となる。ユーザU1(UH)の位置を中心とする所定周囲が、可聴範囲300として設定される。
図10(c)に示すように、周囲の他のユーザU2のうち、音声チャットボタン241を操作して音声チャットをオン状態にしたユーザU2は、ユーザU1が開始した音声チャットのゲストユーザ(UG)となる。
図11は、音声チャットが終了する様子を示す。図11(a)に示すように、ホストユーザUHと複数のゲストユーザUGとによって音声チャットが行われているとする。図11(b)に示すように、例えば時間の経過によって、ホストユーザUH以外の他の全てのユーザUGが、音声チャットから離脱したとする。
ここで、音声チャットから離脱する場合としては、ゲストユーザUGが仮想空間200からログアウトした場合と、ゲストユーザUGが可聴範囲300の外に出た場合と、ゲストユーザUGが音声チャットボタン241を操作して音声チャットをオフ状態にした場合とがある。
図11(c)に示すように、ホストユーザUH以外の他の全てのユーザUGが音声チャットから離脱した場合、所定時間後に、音声チャットは停止される。つまり、ホストユーザUHは、チャネル132から切断され、可聴範囲300が消滅する。ホストユーザUHは、通常のユーザU1に戻る。
図12は、ホストユーザUHが音声チャットから離脱する場合を示す。図12(a)に示すように、ホストユーザUHの周囲で音声チャットが行われているとする。図12(b)に示すように、ホストユーザUHが音声チャットから離脱すると、図12(c)に示すように、可聴範囲300は消滅し、音声チャットグループは強制的に解散する。ホストユーザUHが音声チャットから離脱する場合としては、ホストユーザUHが音声チャットボタン241を操作して音声チャットをオフ状態にした場合と、ホストユーザUHが仮想空間200からログアウトした場合とがある。
ホストユーザUHがチャネル132から切断されると、そのチャネルを使用している他の全てのユーザUGも、そのチャネルから強制的に切断される。これにより、ゲストユーザUGは、通常のユーザU2に戻る。この後、各ユーザU2,U1のうち、誰かが音声チャットボタン241を操作すると、図10で述べたように、改めてチャネルが確保され、音声チャットが再び開始される。
図13は、それぞれ異なる音声チャットが重なり合って行われている様子を示す説明図である。上述の通り、音声チャットが実行される可聴範囲300は、ホストユーザUHの仮想空間における位置に応じて、仮想空間を移動する。
従って、図13(a)に示すように、それぞれ異なる音声チャットが重なり合って行われる可能性がある。また、互いに所定距離以上離れているユーザUHA,UHBが、それぞれ音声チャットボタン241を操作して音声チャットをオン状態にした場合も、二つの異なる音声チャットが重なり合ってそれぞれ実行され得る。但し、各ユーザは、それぞれいずれか一つの音声チャットにのみ参加可能である。つまり、各ユーザは、それぞれ1つのチャネルのみ使用可能である。
一方の音声チャットは、一方のホストユーザUHAを中心とする可聴範囲300A内で行われ、他方の音声チャットは、他方のホストユーザUHBを中心とする可聴範囲300B内で行われる。
図13(b)に示すように、別のユーザU1が、各可聴範囲300A,300Bの重なり合う領域に進入した場合を考える。この場合、ユーザU1は、ホストユーザUHA,UHBのうちいずれか最も近いホストユーザの音声チャットに参加する。
図13(b)では、ユーザU1(後のUGB)とホストユーザUHAとは距離LAだけ離れており、ユーザU1とホストユーザUHBとは距離LBだけ離れており、LBの方がLAよりも短い(LB<LA)。従って、ユーザU1は、ホストユーザUHBの音声チャットに参加し、ゲストユーザUHBとなる。
図14,図15に基づいて、仮想空間提供サーバの動作を説明する。以下に示す各フローチャートは、本発明の理解及び実施に必要な程度で各処理の概要を示しており、実際のコンピュータプログラムとは相違する。いわゆる当業者であれば、図示されたステップの変更、入れ替え、削除、新たなステップの追加を行うことができるであろう。
図14は、仮想空間提供処理の全体概要を示す。仮想空間提供サーバ10は、仮想空間200を生成してユーザのログインを待つ(S10)。ユーザは、クライアント端末20を用いてサーバ10にアクセスし、ユーザIDやパスワードを入力する(S11)。サーバ10は、入力されたユーザID及びパスワードの組合せが、ユーザ管理情報121に登録されているか否かを判断し、ユーザ認証を行う(S12)。
ユーザ認証が成功した場合、サーバ10は、アバタ管理情報123等を用いて、ユーザのアバタを仮想空間内の所定位置に配置させる(S13)。例えば、ユーザは、サーバ10から提示された複数の出現地点のうちいずれか一つを選択することができる。
サーバ10は、アバタの出現地点周辺の仮想空間のデータをクライアント端末20に送信する(S14)。このデータには、アバタから視認可能な範囲内の各オブジェクト及び各アバタのデータ等が含まれる。
クライアントソフトウェア21は、サーバ10から受信したデータに基づいて仮想空間を描画し、仮想空間表示部210に表示させる(S15)。ユーザは、コントロールパネル230やメニュー240を操作することにより、アバタを仮想空間内で移動させたり、アバタの姿勢や表情を変化させたりする(S16)。さらに、ユーザは、他のアバタとテキストまたは音声で会話を行うこともできる(S16)。ユーザによるアバタ操作は、サーバ10に入力される。
サーバ10は、ユーザの操作内容を仮想空間に反映させ(S17)、操作内容を保存し(S18)、仮想空間の最新状態をクライアント端末20に送信する(S14)。ユーザが仮想空間にログインしている間、S14〜S18のステップが繰り返される。ユーザによるアバタ操作(S16)の中で、音声チャットが実行される。
図15,図16は、音声チャット処理を示すフローチャートである。音声チャットの開始を希望するユーザは、音声チャットボタン241をオン操作する(S30)。オン操作とは、音声チャットをオン状態にさせるボタン操作を意味する。
クライアントソフトウェア21は、サーバ10に、音声チャットの状況を問い合わせる(S31)。つまり、ユーザの周囲で(正確には、ユーザのアバタの周囲で)音声チャットが既に開始されているか否かをサーバ10に問い合わせる。即ち、クライアントソフトウェア21は、操作対象のアバタを中心とした可聴範囲300内に、ホストユーザが存在するか否かを、サーバ10に問い合わせる。
ユーザの周囲で音声チャットが既に開始されている場合、つまり、ユーザのアバタが、既に開始されている音声チャットの可聴範囲300内に位置する場合、サーバ10は、その音声チャットに関するホストユーザのユーザIDを、クライアントソフトウェア21に通知する。これに対し、ユーザの周囲で音声チャットが開始されていない場合、サーバ10は、クライアントソフトウェア21に「0」を返す。
クライアントソフトウェア21は、サーバ10からの応答に基づいて、ユーザの周囲にホストユーザが存在するか否かを判定する(S32)。つまり、ユーザの周囲で既に音声チャットが開始されているか否かを判定する(S32)。即ち、ユーザが、既に開始されている音声チャットの可聴範囲300内に位置するか否かを判定する(S32)。
ユーザの周囲にホストユーザが存在する場合(S32:YES)、クライアントソフトウェア21は、サーバ10に、開始されている音声チャットで使用中のチャネル132に空いている通信ポート133があるか否かを問い合わせる(S33)。
チャネル132に空いている通信ポート133が存在しない場合(S33:NO)、その音声チャットのグループは満員状態であるため、クライアントソフトウェア21は、満員状態であるため音声チャットに参加できない旨をユーザに通知する(S34)。
これに対し、チャネル132に空いている通信ポート133がある場合(S33:YES)、クライアントソフトウェア21は、サーバ10に、そのチャネル132への接続を要求する(S35)。サーバ10は、クライアントソフトウェア21に通信ポート133を割当て、音声チャット管理情報124を更新する。
クライアントソフトウェア21は、チャネル132への接続を確認すると、音声チャットモニタ211を表示すると共に、音声チャットを開始する(S36)。クライアントソフトウェア21は、ユーザのアバタ位置が可聴範囲300内にあるか否か(S37)、及び、ユーザが音声チャットボタン241をオフ操作したか否か(S38)を、それぞれ監視する。オフ操作とは、音声チャットをオフ状態にするためのボタン操作である。
アバタが可聴範囲300から外れた場合(S37:NO)またはユーザが音声チャットボタン241をオフ操作した場合(S38:YES)のいずれかの場合、クライアントソフトウェア21は、サーバ10に、チャネルからの切断を要求する(S39)。これにより、音声チャットは終了する(S40)。
次に、図16に基づいて、ユーザの周囲で音声チャットが開始されていない場合(S32:NO)を説明する。まず最初に、クライアントソフトウェア21は、そのユーザのアバタ位置を中心とする可聴範囲300内に、他ユーザが一人以上存在するか否かを判定する(S50)。他ユーザが一人も存在しない場合(S50:NO)、クライアントソフトウェア21は、音声チャットをすることができない旨をユーザに通知する(S51)。
これに対し、可聴範囲300内に一人以上他ユーザが存在する場合(S50:YES)、クライアントソフトウェア21は、サーバ10に音声チャットサーバ13のチャネルの使用状況を問合せる。サーバ10は、音声チャットサーバ13の有する各チャネル132のうち、未使用のチャネル132のチャネル番号を検出し、クライアントソフトウェア21に通知する。
クライアントソフトウェア21は、サーバ10からの返信に基づいて、空いているチャネル132があるか否かを判定する(S52)。空いているチャネル132が無い場合(S52:NO)、クライアントソフトウェア21は、空きチャネルが無いため音声チャットを開始できない旨をユーザに通知する(S53)。
空きチャネルが存在する場合(S52:YES)、クライアントソフトウェア21は、サーバ10に、ホストユーザとして、空きチャネルへの接続を要求する(S54)。クライアントソフトウェア21は、チャネル132への接続を確認すると、音声チャットモニタ211を表示し、音声チャットを開始する(S55)。
クライアントソフトウェア21は、可聴範囲300内に他アバタが一人以上存在するか否か(S56)、及び、ホストユーザが音声チャットボタン241をオフ操作したか否か(S57)を、それぞれ監視する。なお、ホストユーザが仮想空間からログアウトする場合は、S57で検出されるものとする。
可聴範囲300内に他アバタが一人も存在しない場合(S56:NO)、または、ホストユーザが音声チャットをオフ状態にした場合(S57:YES)のいずれかの場合、クライアントソフトウェア21は、サーバ10に、チャネルからの切断を要求する(S58)。これにより、音声チャットが終了する(S59)。
本実施例は、上述のように構成されるので、以下の効果を奏する。本実施例では、ホストユーザUHの位置を中心とする所定範囲に可聴範囲300を設定し、音声チャットの開始を希望する他ユーザが可聴範囲300内に入った場合に、他ユーザを音声チャットのチャネルに接続させる。従って、各ユーザは、音声チャットボタン241を押して仮想空間200内を移動するだけで、既に開始されている音声チャットに自動的に参加でき。音声を通じて他ユーザと簡単に交流することができる。
本実施例では、音声チャット用の特別な部屋に各ユーザが集結したり、あるいは、ユーザ同士が予めグループを結成したりする必要が無く、簡単な操作で音声チャットに参加することができ、使い勝手が良い。
本実施例では、ホストユーザUHを中心とする一定範囲を可聴範囲300として設定するため、ホストユーザUHの移動に応じて可聴範囲300も移動する。従って、各ユーザは、仮想空間200を自由に移動しながら音声チャットを続けることができ、使い勝手が向上する。
図17,図18に基づいて第2実施例を説明する。第1実施例では、所定コミュニケーションプログラムとして音声チャットプログラムを例に挙げて説明した。これに代えて、第2実施例では、ビデオ会議プログラムに適用する場合を説明する。
図17は、本実施例による仮想空間管理サーバ12Aの構成を模式的に示すブロック図である。第1実施例と異なる部分を中心に説明すると、制御部110は、音声チャット管理部112に代えて、ビデオ会議管理部112Aを備える。記憶部120は、音声チャット管理情報124に代えて、ビデオ会議管理情報124Aを備える。
さらに、本実施例の仮想空間提供システムは、音声チャットサーバ13に代えて、ビデオ会議サーバ13Aを備える。ビデオ会議サーバ13Aは、例えば、通信部131Aと、ビデオ会議制御部130Aとを備える。本実施例で使用されるクライアント端末20は、ビデオ会議システムを利用可能なクライアントソフトウェア21Aを備える。
図18は、クライアントソフトウェア21Aによる表示の様子を示す。仮想空間表示部210には、例えば、ビデオ会議モニタ211Aと、ビデオ会議参加者の映像表示部213とは、それぞれ表示される。
メニュー240Aには、ビデオ会議を開始するためのボタン241Aが設けられる。ウェブページ表示部220には、ビデオ会議を支援するためのサイトが表示される。このサイトは、例えば、議事録221A、資料222A、掲示板223A、ホワイトボード224Aを利用するための各種ボタンを有する。
音声チャットの場合と同様に、ビデオ会議のホストユーザを中心として可聴範囲300が設定される。可聴範囲300内に位置する他ユーザは、ビデオ会議ボタン241Aをオン操作するだけで、既に開始されているビデオ会議に参加可能である。但し、ビデオ会議のチャネルに空いている通信ポートが無い場合は満員状態であるから、そのビデオ会議に参加することはできない。
ユーザは、自分がホストユーザとなって、空いているチャネルを使用し、ビデオ会議を開始することもできる。基本的な動作は音声チャットの場合と同様である。
このように構成される本実施例も第1実施例と同様の効果を奏する。即ち、本実施例も、各ユーザは簡単な操作でビデオ会議を開始したり、既に開催されているビデオ会議に自由に参加することができる。
なお、本発明は、上述した実施の形態に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。例えば、前記各実施例では、所定コミュニケーションプログラムとして、音声チャット及びビデオ会議を例示したが、これらに限らず、他の種類のコミュニケーションプログラムにも適用可能である。例えば、複数のユーザが一つまたは複数のオブジェクトを共同して生成または編集するためのプログラム等にも適用できるであろう。
また、前記実施例では、可聴範囲から外れたユーザは音声チャットから直ちに離脱する場合を説明したが、これに代えて、例えば、可聴範囲から外れたユーザが音声チャットから離脱するまでに十数秒〜数分の所定時間だけ待機する構成でもよい。つまり、あるユーザが誤操作等で短時間だけ可聴範囲から外れた場合でも、そのユーザをチャネルから切断させずに、可聴範囲内に戻るのを待つ構成としてもよい。具体的には、例えば、S37において、「所定時間以上、アバタが可聴範囲から外れたか否か」を判定する。また、S56では、「所定時間以上、可聴範囲内に一人の他アバタも存在しないか否か」を判定すればよい。
本発明の実施形態の概念を示す説明図。 本実施例に係る仮想空間提供サーバを含むシステムの全体構成図。 仮想空間管理サーバの構成を示すブロック図。 音声チャットサーバの構成を模式的に示す説明図。 クライアントソフトウェアのユーザインターフェースを示す説明図。 ユーザ管理情報及びアバタ管理情報123を示す説明図。 仮想空間管理情報を示す説明図。 音声チャット管理情報を示す説明図。 既存の音声チャットにユーザが参加する様子を示す説明図。 新たな音声チャットを開始する様子を示す説明図。 既存の音声チャットが解散する様子を示す説明図。 ホストユーザの離脱によって音声チャットが終了する様子を示す説明図。 可聴範囲が重なる場合に、ホストユーザに近い方の音声チャットに参加する様子を示す説明図。 仮想空間を提供する方法を示すフローチャート。 音声チャット処理のフローチャート。 図15に続くフローチャート。 第2実施例に係る仮想空間管理サーバ等の構成図。 クライアントソフトウェアのユーザインターフェースを示す説明図。
符号の説明
1:仮想空間提供サーバ、2:クライアント端末、2A:クライアントソフトウェア、3:音声チャットサーバ、5:仮想空間管理部、6:音声チャット管理部、7:仮想空間、7A:操作部、8,8H,8G:アバタ(ユーザ)、9:可聴範囲、10:仮想空間提供サーバ、11:ウェブサーバ、12,12A:仮想空間管理サーバ、13:音声チャットサーバ、13A:ビデオ会議サーバ、20:クライアント端末、21,21A:クライアントソフトウェア、100:通信部、110:制御部、111:仮想空間管理部、112:音声チャット管理部、112A:ビデオ会議管理部、113:仮想空間提供部、120:記憶部、121:ユーザ管理情報、122:仮想空間管理情報、122A:仮想空間構成情報、122B:ワールド管理情報、123:アバタ管理情報、123A:アバタ位置管理情報、123B:アイテム情報、124:音声チャット管理情報、124A:ビデオ会議管理情報、125A:仮想空間構成情報、130:音声合成部、130A:ビデオ会議制御部、131,131A:通信部、132:チャネル、133:通信ポート、200:仮想空間、210:仮想空間表示部、211:音声チャットモニタ、211A:ビデオ会議モニタ、212:仮想店舗、213:映像表示部、220:ウェブページ表示部、230:コントロールパネル、240,240A:メニュー、241:音声チャットボタン、241A:ビデオ会議ボタン、300,300A,300B:可聴範囲。

Claims (12)

  1. 通信ネットワークを介して接続される複数のクライアントコンピュータに、仮想空間を提供する仮想空間提供サーバであって、
    前記各クライアントコンピュータから入力される操作指示に応じて、ユーザを象徴するキャラクタを前記仮想空間内で動作させ、前記各キャラクタの言動を反映させた前記仮想空間の最新状態を前記通信ネットワークを介して前記クライアントコンピュータにそれぞれ送信する仮想空間管理部と、
    前記仮想空間内で実行される所定コミュニケーションプログラムを制御するためのコミュニケーションプログラム実行制御部であって、前記所定コミュニケーションプログラムの実行を要求する実行要求が前記クライアントコンピュータから発行された場合には、前記実行要求を発行した所定ユーザに対応する所定キャラクタの位置から所定範囲の領域を前記所定コミュニケーションプログラムが実行される実行範囲として設定する、コミュニケーションプログラム実行制御部と、を備える、仮想空間提供サーバ。
  2. 前記コミュニケーションプログラム実行制御部は、
    (1)前記所定キャラクタから前記所定範囲内で前記所定コミュニケーションプログラムが実行されていない場合に、前記所定キャラクタを中心とする所定範囲の領域を前記実行範囲として設定し、かつ、前記実行範囲内に存在する他ユーザに対応する他キャラクタを前記所定コミュニケーションプログラムの参加者として選択し、
    (2)前記所定キャラクタから前記所定範囲内で前記所定コミュニケーションプログラムが既に実行されている場合は、この実行されている所定コミュニケーションプログラムに前記所定キャラクタを参加させる、
    請求項1に記載の仮想空間提供サーバ。
  3. 前記コミュニケーションプログラム実行制御部は、前記仮想空間の前記実行範囲内に位置する他キャラクタに対応する他ユーザが前記所定コミュニケーションプログラムへの参加を要求する場合に、前記所定コミュニケーションプログラムへの参加可否を判断し、参加を許可する場合は、前記他ユーザの使用するクライアントコンピュータが前記所定コミュニケーションプログラムを実行するのを許可する、請求項1または請求項2のいずれかに記載の仮想空間提供サーバ。
  4. 前記実行範囲は、前記所定キャラクタの前記仮想空間における位置に基づいて決定され、前記所定キャラクタが前記仮想空間内を移動した場合には、その移動に応じて前記実行範囲も前記仮想空間内を移動する、請求項1〜請求項3のいずれかに記載の仮想空間提供サーバ。
  5. 前記コミュニケーションプログラム実行制御部は、前記実行範囲から前記他キャラクタが離脱した場合、この離脱した他キャラクタに対応するクライアントコンピュータに関してのみ前記所定コミュニケーションプログラムの実行を中止させる、請求項1〜請求項4のいずれかに記載の仮想空間提供サーバ。
  6. 前記コミュニケーションプログラム実行制御部は、前記実行範囲内に前記他キャラクタが一人も存在しなくなった場合、所定時間の経過後に前記所定コミュニケーションプログラムの起動を停止させ、前記所定ユーザの使用するクライアントコンピュータに関しても前記所定コミュニケーションプログラムの実行を中止させる、請求項1〜請求項5のいずれかに記載の仮想空間提供サーバ。
  7. 前記コミュニケーションプログラム制御部は、前記所定ユーザの使用するクライアントコンピュータから前記所定コミュニケーションプログラムの実行停止を要求する停止要求が発行された場合に、前記所定コミュニケーションプログラムの起動を停止させる、請求項1〜請求項6のいずれかに記載の仮想空間提供サーバ。
  8. 前記コミュニケーションプログラム制御部は、前記所定コミュニケーションプログラムを前記仮想空間内で複数実行させることができる、請求項1〜請求項7のいずれかに記載の仮想空間提供サーバ。
  9. 前記コミュニケーションプログラム制御部は、前記所定コミュニケーションプログラムに参加している前記所定キャラクタ及び前記他キャラクタに関する情報を、前記仮想空間内に表示させるための状態表示部を備えている、請求項1〜請求項8のいずれかに記載の仮想空間提供サーバ。
  10. 前記所定コミュニケーションプログラムは、音声チャットプログラムである、請求項1〜請求項9のいずれかに記載の仮想空間提供サーバ。
  11. 通信ネットワークを介して複数のクライアントコンピュータに接続されるサーバコンピュータを、仮想空間を提供するサーバコンピュータとして使用するためのコンピュータプログラムであって、
    前記各クライアントコンピュータから入力される操作指示に応じて、ユーザを象徴するキャラクタを前記仮想空間内で動作させ、前記各キャラクタの言動を反映させた前記仮想空間の最新状態を前記通信ネットワークを介して前記クライアントコンピュータにそれぞれ送信する仮想空間管理部と、
    前記クライアントコンピュータから予め設定される所定コミュニケーションプログラムの実行を要求する実行要求が発行された場合には、前記所定コミュニケーションプログラムが既に実行されていない場合に限り、前記実行要求を発行した所定ユーザに対応する所定キャラクタから所定範囲の領域を前記所定コミュニケーションプログラムが実行される実行範囲として設定し、かつ、前記実行範囲内に存在する他ユーザに対応する他キャラクタを前記所定コミュニケーションプログラムの参加者として選択する、コミュニケーションプログラム実行制御部と、
    を前記サーバコンピュータ上にそれぞれ実現させるコンピュータプログラム。
  12. 通信ネットワークを介して接続される複数のクライアントコンピュータに仮想空間を提供する方法であって、
    前記クライアントコンピュータからのログイン要求を処理するステップと、
    前記ログインが許可された所定ユーザに対応する所定キャラクタを、前記仮想空間に配置するステップと、
    前記クライアントコンピュータから、予め設定される所定コミュニケーションプログラムの実行を要求する実行要求が発行された場合には、前記所定コミュニケーションプログラムの実行される実行範囲内に前記所定キャラクタが位置するか否かを判定するステップと、
    前記所定キャラクタが前記実行範囲内に位置すると判定された場合は、前記所定キャラクタを、既に実行されている前記所定コミュニケーションプログラムの参加者として選択するステップと、
    前記所定キャラクタが前記実行範囲内に位置しないと判定された場合は、前記所定キャラクタから所定範囲の領域を前記実行範囲として設定するステップと、
    をそれぞれ実行する仮想空間提供方法。
JP2008038173A 2008-02-20 2008-02-20 仮想空間提供サーバ、仮想空間提供方法及びコンピュータプログラム Expired - Fee Related JP5005574B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008038173A JP5005574B2 (ja) 2008-02-20 2008-02-20 仮想空間提供サーバ、仮想空間提供方法及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008038173A JP5005574B2 (ja) 2008-02-20 2008-02-20 仮想空間提供サーバ、仮想空間提供方法及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2009199198A true JP2009199198A (ja) 2009-09-03
JP5005574B2 JP5005574B2 (ja) 2012-08-22

Family

ID=41142648

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008038173A Expired - Fee Related JP5005574B2 (ja) 2008-02-20 2008-02-20 仮想空間提供サーバ、仮想空間提供方法及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP5005574B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015525380A (ja) * 2012-05-03 2015-09-03 株式会社ソニー・コンピュータエンタテインメント 持続的なパーティルーム
WO2015194339A1 (ja) * 2014-06-17 2015-12-23 株式会社ディー・エヌ・エー 音声チャット管理装置及び方法
JP2017187995A (ja) * 2016-04-07 2017-10-12 国立大学法人 鹿児島大学 ソーシャルメディアシステム及びプログラム
EP3965369A1 (en) 2020-09-02 2022-03-09 FUJIFILM Business Innovation Corp. Information processing apparatus, program, and information processing method
JP2022091892A (ja) * 2020-12-01 2022-06-21 グリー株式会社 情報処理システム、情報処理方法、情報処理プログラム
JP2022121496A (ja) * 2021-02-08 2022-08-19 株式会社石井兄弟社 仮想旅行システム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002312295A (ja) * 2001-04-09 2002-10-25 Nec Interchannel Ltd 仮想3次元空間会話システム
JP2003058484A (ja) * 2001-08-21 2003-02-28 Sony Corp コミュニティ・サービス提供方法、コミュニティ・サービス提供装置、プログラム格納媒体およびプログラム
JP2004013303A (ja) * 2002-06-04 2004-01-15 Hitachi Ltd コミュニケーションシステムおよびコミュニケーション方法
JP2004199134A (ja) * 2002-12-16 2004-07-15 Dental Supply:Kk チャットシステム
JP2004267433A (ja) * 2003-03-07 2004-09-30 Namco Ltd 音声チャット機能を提供する情報処理装置、サーバおよびプログラム並びに記録媒体
JP2005100053A (ja) * 2003-09-24 2005-04-14 Nomura Research Institute Ltd アバター情報送受信方法、プログラム及び装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002312295A (ja) * 2001-04-09 2002-10-25 Nec Interchannel Ltd 仮想3次元空間会話システム
JP2003058484A (ja) * 2001-08-21 2003-02-28 Sony Corp コミュニティ・サービス提供方法、コミュニティ・サービス提供装置、プログラム格納媒体およびプログラム
JP2004013303A (ja) * 2002-06-04 2004-01-15 Hitachi Ltd コミュニケーションシステムおよびコミュニケーション方法
JP2004199134A (ja) * 2002-12-16 2004-07-15 Dental Supply:Kk チャットシステム
JP2004267433A (ja) * 2003-03-07 2004-09-30 Namco Ltd 音声チャット機能を提供する情報処理装置、サーバおよびプログラム並びに記録媒体
JP2005100053A (ja) * 2003-09-24 2005-04-14 Nomura Research Institute Ltd アバター情報送受信方法、プログラム及び装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015525380A (ja) * 2012-05-03 2015-09-03 株式会社ソニー・コンピュータエンタテインメント 持続的なパーティルーム
WO2015194339A1 (ja) * 2014-06-17 2015-12-23 株式会社ディー・エヌ・エー 音声チャット管理装置及び方法
KR101813900B1 (ko) 2014-06-17 2018-01-02 가부시키가이샤 디에누에 음성 채팅 관리 장치 및 방법
US9942393B2 (en) 2014-06-17 2018-04-10 DeNA Co., Ltd. Audio chat management device and method
JP2017187995A (ja) * 2016-04-07 2017-10-12 国立大学法人 鹿児島大学 ソーシャルメディアシステム及びプログラム
EP3965369A1 (en) 2020-09-02 2022-03-09 FUJIFILM Business Innovation Corp. Information processing apparatus, program, and information processing method
JP2022091892A (ja) * 2020-12-01 2022-06-21 グリー株式会社 情報処理システム、情報処理方法、情報処理プログラム
JP2022121496A (ja) * 2021-02-08 2022-08-19 株式会社石井兄弟社 仮想旅行システム
JP7145552B2 (ja) 2021-02-08 2022-10-03 株式会社石井兄弟社 仮想旅行システム

Also Published As

Publication number Publication date
JP5005574B2 (ja) 2012-08-22

Similar Documents

Publication Publication Date Title
TWI533198B (zh) 於虛擬區域及實體空間之間通訊的技術
JP5706868B2 (ja) メッセンジャープラットフォームでアバタ/ゲーム/エンターテイメント機能を提供するシステムおよび方法
JP6251507B2 (ja) プログラム及びゲームシステム
JP5005574B2 (ja) 仮想空間提供サーバ、仮想空間提供方法及びコンピュータプログラム
US20130005481A1 (en) Method and server system
US20170220314A1 (en) Group-viewing assistance device, group-viewing assistance method, and viewing apparatus
US20220150288A1 (en) Information processing device and computer readable medium
JP7455308B2 (ja) 情報処理システム、情報処理方法、情報処理プログラム
CN117917047A (zh) 并行视频通话和人工现实空间
TWI803224B (zh) 聯絡人信息展示方法、裝置、電子設備、計算機可讀儲存媒體及計算機程式産品
JP2024016017A (ja) 情報処理システム、情報処理装置およびプログラム
CN115193043A (zh) 一种游戏信息发送方法、装置、计算机设备及存储介质
CN115702435A (zh) 对象管理系统
KR102298070B1 (ko) 모바일 디바이스 기반 능동형 인공지능 영상 캐릭터 시스템
JP6057316B2 (ja) カラオケシステム及びカラオケプログラム
JP7265085B1 (ja) 情報処理システム、情報処理方法、及びプログラム
JP6055151B1 (ja) イベントを管理するためのシステム、方法、及びプログラム
JP6747792B2 (ja) ゲームシステム
JP7409468B1 (ja) 仮想空間生成装置、仮想空間生成プログラム、および、仮想空間生成方法
JPWO2018225805A1 (ja) 情報管理システム、情報管理サーバ、情報管理方法、及びプログラム
KR20050048208A (ko) 3차원 온라인 게임을 이용한 블로그 시스템 및 방법
JP6825196B2 (ja) 情報処理装置及びプログラム
US20220141551A1 (en) Moving image distribution system, moving image distribution method, and moving image distribution program
WO2024027344A1 (zh) 社交互动的方法、装置、设备、可读存储介质及程序产品
KR101854375B1 (ko) 게임 접속 정보 제공을 위한 시스템, 이를 위한 서버, 이를 위한 방법 및 이 방법이 기록된 컴퓨터로 판독 가능한 기록 매체

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100329

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120306

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120424

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120523

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

Free format text: PAYMENT UNTIL: 20150601

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees