JP2009223656A - 仮想空間提供装置、仮想空間提供システム、仮想空間提供方法及びコンピュータプログラム - Google Patents
仮想空間提供装置、仮想空間提供システム、仮想空間提供方法及びコンピュータプログラム Download PDFInfo
- Publication number
- JP2009223656A JP2009223656A JP2008067963A JP2008067963A JP2009223656A JP 2009223656 A JP2009223656 A JP 2009223656A JP 2008067963 A JP2008067963 A JP 2008067963A JP 2008067963 A JP2008067963 A JP 2008067963A JP 2009223656 A JP2009223656 A JP 2009223656A
- Authority
- JP
- Japan
- Prior art keywords
- user
- virtual space
- avatar
- group
- predetermined
- 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.)
- Pending
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】本発明の仮想空間提供装置は、ユーザの入力する検索条件に応じて、仮想空間に表示されるアバターを制御する。
【解決手段】
仮想空間7を利用するユーザU1は、検索メニュー8を用いることにより、所望の検索条件を入力して検索実行を指示する。仮想空間提供装置1は、検索条件に応じたユーザU2を検出し、検出されたユーザU2のアバターのデータのみをクライアント装置2に送信する。クライアント装置2は、仮想空間提供装置1から受信したアバターデータを描画し、仮想空間7に表示させる。
【選択図】図1
【解決手段】
仮想空間7を利用するユーザU1は、検索メニュー8を用いることにより、所望の検索条件を入力して検索実行を指示する。仮想空間提供装置1は、検索条件に応じたユーザU2を検出し、検出されたユーザU2のアバターのデータのみをクライアント装置2に送信する。クライアント装置2は、仮想空間提供装置1から受信したアバターデータを描画し、仮想空間7に表示させる。
【選択図】図1
Description
本発明は、仮想空間提供装置、仮想空間提供システム、仮想空間提供方法及びコンピュータプログラムに関する。
サーバの提供する仮想的な空間内で、ユーザを象徴するキャラクタ(アバター)を操作するシステムは、知られている(特許文献1)。
また、ユーザの習熟レベルに応じて段階的にゲーム内のコンテンツを変化させるシステムも知られている(特許文献2)。
なお、仮想空間に関する技術ではないが、ユーザ属性に応じて、ユーザに見せるWebコンテンツを動的に生成するシステムも知られている(特許文献3)。
特開2005−100053号公報
特開2006−175004号公報
特開2007−72703号公報
仮想空間には、複数のユーザがそれぞれのアバターを介して参加する。各ユーザは、それぞれのアバターを介して、他のユーザと交流する。仮想空間では、ユーザの容姿や年齢あるいは社会的立場等を超えて、様々なユーザと交流することができる。即ち、仮想空間は、現実世界でユーザが有している多種多様な属性(容姿や身分、年齢、性別、人種等)の多くを捨象して構成されているため、現実世界における最初の障壁を乗り越えて、自由に交流できる。
しかし、多様なユーザと自由に交流可能であるため、逆に、仮想空間に長時間滞在して、より多くのユーザと交流を行なわなれけば、気の合う友人を見つけにくいという不便さもある。
本発明は上記従来技術の課題に鑑みてなされたもので、その目的は、ユーザ間の交流を支援することができるようにした仮想空間提供装置、仮想空間提供システム、仮想空間提供方法及びコンピュータプログラムを提供することにある。本発明の他の目的は、後述する実施形態の記載から明らかになるであろう。
上記課題を解決すべく、本発明の第1観点に従う仮想空間提供装置は、通信ネットワークを介して接続される複数のクライアントコンピュータに仮想空間を提供する仮想空間提供装置であって、前記各クライアントコンピュータを利用する各ユーザを管理するユーザ管理部と、前記クライアントコンピュータから入力される検索条件に基づいて、前記各ユーザのうち前記仮想空間に表示させる所定ユーザを抽出する可視制御部と、少なくとも前記所定ユーザに対応するアバターのデータを前記クライアントコンピュータに送信することにより、前記所定ユーザのアバターを前記クライアントコンピュータに描画させ、前記仮想空間に前記所定ユーザのアバターを表示させる、データ送信部と、を備える。
第2観点では、第1観点において、予めグループ属性が設定される複数のグループによって前記各ユーザをグループ管理するグループ管理部をさらに備え、前記可視制御部は、前記検索条件に基づいて前記グループ管理部を検索することにより、前記所定ユーザを抽出する。
第3観点では、第2観点において、可視制御部は、前記検索条件に合致する所定グループに、前記検索条件を指示したユーザを対応付けて、前記グループ管理部により管理させる。
第4観点では、第3観点において、前記可視制御部は、前記所定グループに属する各ユーザを前記所定ユーザとして抽出する。
第5観点では、第4観点において、前記クライアントコンピュータからのグループ更新要求に応じて、このグループ更新要求に係るユーザと前記グループ更新要求で指定されたグループとの対応付けを解除させるためのグループ更新部をさらに備える。
第6観点では、第1観点において、前記ユーザ管理部は、前記各ユーザ毎にユーザ属性を設定して管理しており、前記可視制御部は、前記検索条件に基づいて前記ユーザ管理部を検索することにより、前記所定ユーザを抽出する。
第7観点では、第6観点において、前記各ユーザ毎に前記各ユーザ属性を決定して前記ユーザ管理部に設定させるためのユーザ属性設定部であって、前記各ユーザの現実世界における行動履歴または前記各ユーザの仮想空間における行動履歴に基づいて前記各ユーザ属性を決定するユーザ属性設定部を、さらに備える。
第8観点では、第2〜第5観点において、前記仮想空間に配置される複数のオブジェクトのオブジェクトデータをそれぞれ管理するオブジェクト管理部をさらに備え、前記可視制御部は、前記グループと前記オブジェクト管理部により管理される前記各オブジェクトとを対応付けて管理しており、前記検索条件に基づいて前記グループ管理部及び前記オブジェクト管理部をそれぞれ検索することにより、前記所定ユーザ及び前記仮想空間に表示させる所定オブジェクトをそれぞれ抽出し、かつ、前記データ送信部は、前記所定ユーザに対応するアバターのデータと前記所定オブジェクトのオブジェクトデータとを、前記クライアントコンピュータに送信することにより、前記所定ユーザのアバター及び前記所定オブジェクトを前記クライアントコンピュータに描画させ、前記所定ユーザのアバター及び前記所定オブジェクトを前記仮想空間に表示させる。
ユーザに対応するアバターのデータと、このアバターデータ以外の他のオブジェクトデータとは、それぞれオブジェクト管理部によって管理することができる。
ユーザに対応するアバターのデータと、このアバターデータ以外の他のオブジェクトデータとは、それぞれオブジェクト管理部によって管理することができる。
第9観点では、第8観点において、前記可視制御部は、前記仮想空間において所定範囲内に位置する前記所定のオブジェクトが複数存在する場合には、予め設定された選択基準に基づいて、前記各所定のオブジェクトのうちいずれか一つの所定のオブジェクトを選択する。
第10観点では、第1〜第7観点のいずれかにおいて、前記データ送信部は、前記所定ユーザに対応するアバターのデータのみを前記クライアントコンピュータに送信するようになっている。
第11観点では、第1〜第7観点のいずれかにおいて、前記データ送信部は、前記所定ユーザに対応するアバターのデータと、所定の視認可能範囲内に位置する他のユーザのアバターのデータとを、前記クライアントコンピュータにそれぞれ送信するようになっており、かつ、前記所定ユーザのアバターのデータには、前記クライアントコンピュータで描画させるための制御情報が対応付けられており、前記他のユーザのアバターのデータには、前記クライアントコンピュータで描画させないための他の制御情報が対応付けられている。
第12観点では、第1〜第7観点のいずれかにおいて、前記グループ管理部により管理される前記グループと前記ユーザとの対応関係を変更させるための変更部であって、前記対応関係を変更可能なオブジェクトとして予め定義されている対応関係変更オブジェクトを前記ユーザが保持した場合に、その対応関係変更オブジェクトに予め設定されているグループと前記ユーザとを対応付けて前記グループ管理部により管理させる変更部を、さらに備える。
第13観点では、第1〜第7観点のいずれかにおいて、前記グループ管理部は、前記ユーザの保持するオブジェクトに設定されているグループを検出し、この検出されたグループと前記ユーザとを対応付けて管理する。
第14観点に従う仮想空間提供方法は、クライアントコンピュータに仮想空間を提供する方法であって、前記クライアントコンピュータから前記仮想空間におけるユーザの位置を示すユーザ位置情報及び検索条件とをそれぞれ取得するステップと、前記検索条件に合致する所定ユーザを検出するステップと、検出された前記所定ユーザのうち所定の視認可能範囲内に位置する所定ユーザを検出するステップと、前記所定範囲内に位置する前記所定ユーザに対応するアバターのデータを前記クライアントコンピュータに送信し、前記アバターを前記仮想空間に表示させるステップと、をそれぞれ実行する。
第15観点に従うコンピュータプログラムは、通信ネットワークを介してクライアントコンピュータに接続されるコンピュータに、前記クライアントコンピュータに仮想空間を提供する仮想空間提供部と、前記各クライアントコンピュータを利用する各ユーザを管理するユーザ管理部と、前記クライアントコンピュータから入力される検索条件に基づいて、前記各ユーザのうち前記仮想空間に表示させる所定ユーザを抽出する可視制御部と、少なくとも前記所定ユーザに対応するアバターのデータを前記クライアントコンピュータに送信することにより、前記所定ユーザのアバターを前記クライアントコンピュータに描画させ、前記仮想空間に前記所定ユーザのアバターを表示させる、データ送信部と、をそれぞれ実現させる。
以下、図面に基づき、本発明の実施の形態を説明する。本実施形態では、以下に述べるように、多種多様な複数のオブジェクトのうち、ユーザから指定される検索条件に合致するオブジェクトのみを仮想空間に表示させる。ここで、オブジェクトには、ユーザを象徴するアバターのほか、アバター以外の他の表示対象も含まれる。他の表示対象としては、例えば、建築物、衣服、装身具、家具等を挙げることができる。本実施形態では、検索条件に合致するアバター及び他のオブジェクトを、あるいは、その検索条件に合致するアバター又は他のオブジェクトを、仮想空間に表示させるべく、仮想空間の構成を制御するようになっている。アバターのデータと、アバター以外の他のオブジェクトのデータとは、共通の管理手段によって管理することができる。
図1は、本実施形態を示す説明図である。なお、本実施形態は、本発明の理解及び実施に必要な程度で本発明の概要を示しており、本発明の範囲は、図1に示す構成に限定されない。なお、本実施形態の詳細な構成は、後述の実施例で明らかにされる。
仮想空間提供システムは、仮想空間提供装置1と、「クライアントコンピュータ」としてのクライアント装置2とを含んで構成することができる。仮想空間提供装置1は、仮想空間7を通信ネットワークCN1を介してクライアント装置2に提供する。通信ネットワークCN1は、例えば、インターネットのような通信網として構築される。
仮想空間7には、例えば、種々のオブジェクトと、アバターU1〜U3とをそれぞれ配置することができる。オブジェクトとは、仮想空間に存在する仮想的物体であり、例えば、仮想建築物、仮想家具、各アバターの所持するアクセサリや服、仮想空間内の道路や乗り物、彫刻、芝生、樹木や花等である。アバターとは、仮想空間7内でユーザを象徴するキャラクタであり、例えば、人間や動物、ロボットのような形態で表示される。
仮想空間7に配置される各種オブジェクトは、種々の方法で作成される。例えば、仮想空間7の管理者のみがオブジェクトを作成可能なシステムでもよいし、あるいは、ユーザがオブジェクトを作成可能なシステムでもよい。ユーザによって作成されたオブジェクトは、クライアント装置2から仮想空間提供装置1に送信され、仮想空間提供装置1内に保存される。
アバターも種々の方法で作成可能である。例えば、仮想空間提供システムが予め用意する基本アバターの中から選択する方法でもよいし、ユーザがアバター作成ツールを用いて作成する方法でもよい。さらに、仮想空間提供システムの用意する基本アバターの容姿等を、ユーザがツールを用いて変更する方法でもよい。
仮想空間提供装置1の構成を説明する。仮想空間提供装置1は、例えば、仮想空間提供部3と、仮想空間管理部4と、管理用データベース5とを備える。仮想空間提供部3は、例えば、WWW(World Wide Web)サーバとして構成され、主に、クライアント装置2との間の通信を担当する。
仮想空間管理部4は、仮想空間7の構成を管理する。仮想空間管理部4は、ユーザの登録処理やログイン処理(4A)、ユーザからの検索条件に応じた表示対象(アバターやオブジェクト)の抽出処理(4B)、抽出された表示対象のデータ(アバターデータやオブジェクトデータ)をクライアント装置2に送信させる処理(4C)を実行する。
登録及びログイン処理4Aは、新規ユーザの登録や既存ユーザのログイン処理を行うものである。新規ユーザの登録処理では、例えば、ユーザID、ユーザ氏名(アバター名)、電子メールアドレス等を管理用データベース5に記憶させる。パスワードや生体情報等の認証情報を使用する場合には、パスワードも管理用データベース5に記憶させる。ログイン処理では、ユーザから入力されるユーザIDまたはユーザ氏名と電子メールアドレスとに基づいて、ユーザ認証を行い、許可されたユーザのみをログインさせる。パスワードや生体情報等の認証情報を用いる場合は、その認証情報を用いてユーザ認証を行う。
検索条件に応じた表示対象の抽出処理4Bでは、仮想空間7に配置される多数のアバター(あるいは、アバター及びオブジェクト)の中から、検索条件に合致するアバターを抽出する。以下の説明では、他ユーザのアバターを他アバターと呼ぶ場合がある。
データ送信処理4Cは、抽出された他アバターのデータやオブジェクトデータをクライアント装置2に送信する。
管理用データベース5の前にクライアント装置2の構成を説明する。クライアント装置2は、例えば、パーソナルコンピュータ、携帯情報端末、携帯電話等のような、コンピュータ装置として構成される。
クライアント装置2は、仮想空間用ビューワ6を備えている。このビューワ6は、仮想空間7を表示するためのコンピュータプログラムである。ビューワ6は、例えば、通信部6Aと、描画部6Bと、操作部6Cと、コミュニケーション部6Dとを備える。
通信部6Aは、仮想空間提供装置1と通信するものである。描画部6Bは、仮想空間提供装置1から受信したオブジェクトデータやアバターのデータを描画し、クライアント装置2の画面に表示させるものである。なお、クライアント装置2が、アバターデータやオブジェクトデータ等を解釈して描画するための描画エンジンを備えている場合、描画部6Bは、その描画エンジンを利用できる。また、後述の実施例で明らかとなるように、描画すべきか否かの制御情報を含むデータが仮想空間提供装置1からクライアント装置2に送信される場合、描画部6Bは、その制御情報に従ってデータを描画する。
操作部6Cは、例えば、ユーザのアバターを仮想空間7内で移動させたり、アバターの表情を変化させたり、アバターの姿勢を変化させるものである。操作部6Cは、例えば、クライアント装置2の備えるキーボードスイッチやポインティングデバイス等の入力機器からの指示に基づいて、アバターの位置や姿勢等を操作する。操作内容は、ビューワ6から仮想空間提供装置1に送信され、仮想空間7内に反映される。
操作部6Cは、検索指示部6Eを含む。検索指示部6Eは、例えば、「猫好き」、「関東在住」等の検索条件を仮想空間提供装置1に指示するものである。さらに、後述の実施例で明らかとなるように、操作部6Cには、ユーザの属するグループを更新等するための指示部を設けることもできる。
コミュニケーション部6Dは、アバター同士の交流を行うものである。例えば、コミュニケーション部6Dは、アバター同士の会話(チャット)、アバター同士の仮想空間内でのメール交換等を実現する。
管理用データベース5の構成を説明する。管理用データベース5は、仮想空間7の管理に使用される各種データを記憶する。例えば、管理用データベース5には、ユーザを管理するためのテーブルと、オブジェクトを管理するためのテーブルと、ユーザの属するグループを管理するためのテーブルとが含まれる。後述の実施例では、ユーザに視認させるオブジェクトを決定するための可視管理テーブルも含まれる。
グループは、それぞれ属性(グループプロパティ)を備えている。各グループには、そのグループ属性に合致するユーザが登録される。例えば、「猫好きユーザのグループ」という属性を有するグループには、猫の好きなユーザが登録される。また、「関東在住ユーザのグループ」という属性を有するグループには、関東在住ユーザが登録される。
つまり、各ユーザの取り得る種々の属性に応じて複数のグループを用意し、各グループのカテゴリに応じてユーザを分類管理する。これにより、ユーザは、自分の興味等に応じた検索条件を入力することにより、自分の興味等に関するグループに属する他ユーザを発見することができる。発見された他ユーザのアバターは、仮想空間7に表示される。
例えば、30代独身男性、音楽が趣味のユーザを例に挙げると、このユーザは、「30代」、「独身」、「男性」、「趣味は音楽」という各種の属性を備えている。このユーザは、例えば、30代ユーザのグループ、独身ユーザのグループ、男性ユーザのグループ、音楽好きユーザのグループにそれぞれ属する。従って、別のユーザが、「音楽」等の検索条件を入力することにより、その音楽好きの30代独身男性のアバターが仮想空間7に表示される。
なお、後述の実施例では、各グループに、そのグループに応じたオブジェクトが対応付けられる。例えば、男性ユーザのグループには、男性用の各種商品等に関するオブジェクトが対応付けられる。この場合、検索条件に合致する他アバター及びオブジェクトを仮想空間7に表示させることができる。
仮想空間7には、検索メニュー8が表示される。検索メニュー8は、例えば、検索条件を入力するための検索条件入力部8Aと、検索実行を指示するためのボタン8Bとを備えている。
ユーザが、入力部8Aに所望の検索キーワードを入力してボタン8Bを操作すると、クライアント装置2から仮想空間提供装置1に検索条件が送信される。仮想空間提供装置1は、上述のように、検索条件に合致する他アバターを仮想空間7に表示させる。即ち、仮想空間提供装置1は、検索条件に合致する他アバターのデータをクライアント装置2に送信し、クライアント装置2の画面に他アバターのみを表示させる。仮想空間提供装置1は、例えば、各ユーザに設定されている属性(ユーザプロパティ)を検索したり、あるいは、各ユーザの属するグループに設定されている属性(グループプロパティ)を検索することにより、検索条件に合致する他ユーザのみを抽出できる。
仮想空間7に配置される各ユーザU1〜U4のアバターのうち、U1は、検索条件を入力するユーザである。ユーザU1が「猫」という検索条件を入力した場合、猫という属性を有するグループに属するユーザU2のアバターのみが表示される。検索条件に合致しない他のユーザU3,U4のアバターは仮想空間7に表示されない。
しかし、後述の実施例では、アバターの描画の可否を制御するための制御情報をアバターデータに付加する。従って、この制御情報を用いることにより、検索条件に合致するユーザのアバターの描画レベルと検索条件に合致しないユーザのアバターの描画レベルとを違えることもできる。例えば、検索条件に合致するユーザU2のアバターを通常通りに表示し、検索条件に合致しないユーザU3,U4のアバターを半透明で表示させることができる。
このように構成される本実施形態では、ユーザの入力する検索条件に基づいて、仮想空間に表示される他ユーザのアバターが制御される。従って、本実施形態によれば、ユーザは、自分の興味や趣味に応じた他ユーザを仮想空間7内で容易に発見することができ、共通の話題で交流することができる。このため、仮想空間7におけるユーザ同士の交流を促進することができ、ユーザの使い勝手も向上する。
また、本実施形態では、検索条件に応じたアバターデータのみを仮想空間提供装置1からクライアント装置2に送信して描画させる。従って、仮想空間提供装置1から送信されるデータを低減することができ、通信ネットワークCN1のトラフィックを増加させずに、個別にカスタマイズされた仮想空間7をユーザに提供することができる。
特に、仮想空間7は、三次元空間(疑似三次元空間の場合もある)として定義されており、アバターは、三次元データとして生成されるため、データサイズが比較的大きい。さらに、アバターは仮想空間7を自在に移動するため、現在も将来も接点の乏しい他ユーザのアバターまでもがクライアント装置2に多数送信される。このため、通信ネットワークCN1のトラフィックが増大し、クライアント装置2のメモリ資源やCPU資源を消費することになる。これに対し、本実施形態では、検索条件に合致したアバターのデータのみをクライアント装置2に転送するため、通信ネットワークCN1やクライアント装置2の負荷が増大することはない。
なお、ユーザが属するグループは、仮想空間提供装置1が自動的に決定してもよいし、ユーザが手動で選択してもよい。あるいは、仮想空間提供装置1が自動的に決定したグループをユーザが手動で修正する構成でもよい。
ユーザの属するグループの数が増加するほど、仮想空間7に表示されるアバターの数は増大する。後述の実施例では、ユーザの属するグループを削減する方法や、所定オブジェクトの保持によってユーザの属するグループを変更させる方法も開示する。以下、本実施形態をより詳細に説明する。
図2は、本実施例による仮想空間提供システムの全体構成を示す説明図である。仮想空間提供システムは、仮想空間提供装置10と、仮想空間提供装置10に通信ネットワークCN10を介して接続される複数のクライアントコンピュータ20とを備える。
仮想空間提供装置10は、例えば、一つ以上の仮想空間提供サーバ30と、仮想空間提供サーバ30に通信ネットワークCN20を介して接続される一つ以上の管理サーバ40と、管理サーバ40によって使用される一つ以上のデータベース50とを備える。通信ネットワークCN10,CN20は、例えば、LAN(Local Area Network)やインターネットのような通信網として構成される。
図1との対応関係を説明すると、仮想空間提供装置10は図1中の仮想空間提供装置1に、クライアントコンピュータ20は図1中のクライアント装置2に、仮想空間提供サーバ30は図1中の仮想空間提供部3に、管理サーバ40は図1中の仮想空間管理部4に、データベース50は図1中の管理用データベース5に、通信ネットワークCN10は図1中の通信ネットワークCN1に、それぞれ対応する。また、図4に示す仮想空間70は図1中の仮想空間7に、図4に示す検索メニュー80は図1中の検索メニュー8に、それぞれ対応する。
仮想空間70を複数のエリアに分割し、各エリア毎に仮想空間提供サーバ30を設けることができる。あるいは、全ての仮想空間提供サーバ30が全てのエリアを担当し、各仮想空間提供サーバ間で負荷を分散させる構成でもよい。管理サーバ40は、例えば、ユーザ管理機能、オブジェクト管理機能、グループ管理機能、可視管理機能、ユーザ操作への対応機能等のように、各機能毎にそれぞれ設けることができる。あるいは、管理サーバ40を各エリア毎に設けることもできる。
さらに、仮想空間70の各エリア毎にそれぞれ仮想空間提供サーバ30を設け、バックグラウンドの処理(ユーザ管理機能やオブジェクト管理機能等)は、複数の管理サーバ40が分担して行う構成でもよい。即ち、フロントエンドはエリア単位で分割し、バックエンドは共通させる構成でもよい。
各管理サーバ40は、例えば、演算処理装置40Aと、メモリ40B及び補助記憶装置40C等を備えるコンピュータ装置である。同様に、各仮想空間提供サーバ30も同様のコンピュータ資源を有するコンピュータ装置である。
図3は、クライアントコンピュータ20と仮想空間提供サーバ30及び管理サーバ40の機能の概要を示すブロック図である。クライアントコンピュータ20は、仮想空間用ビューワ60を備える。このビューワ60は、例えば、描画部61と、操作部62と、通信部63と、コミュニケーション部64とを備える。
描画部61は、仮想空間提供装置10から受信したオブジェクトデータやアバターデータを描画し、クライアントコンピュータの画面に表示させるものである。操作部62は、アバターの移動や姿勢等を操作するものである。操作部62は、検索を指示するための検索指示部65を備えている。この検索指示部65のユーザインターフェースは、検索メニュー80としてユーザに提供される。通信部63は、仮想空間提供装置10と通信を行うものである。コミュニケーション部64は、アバター間でチャットやメール交換を行うためのものである。
仮想空間提供サーバ30は、通信処理部31を備える。通信処理部31は、クライアントコンピュータ20と管理サーバ40との間の通信を担当する。これ以外に、仮想空間提供サーバ30は、例えば、新規ユーザが登録するための登録画面、既存ユーザが仮想空間70にログインするためのログイン画面、仮想空間70に関する注意事項や操作説明等を表示するための画面等をクライアントコンピュータ20に提供する。これらの画面は、クライアントコンピュータ20に設けられたウェブブラウザに表示される。
管理サーバ40は、仮想空間70を管理するものである。管理サーバ40は、例えば、登録処理及びログイン処理部(以下、ログイン等処理)41と、可視制御部42と、表示対象データ送信処理部43と、ユーザ操作への対応処理部44と、ログ管理部45とを備える。管理サーバ40は、各アバターや各オブジェクトのデータも管理する。
ログイン等処理部41は、新規ユーザの登録処理及びログイン処理を行う。ユーザから入力されたユーザ氏名等のデータは、データベース50内のユーザ管理テーブルT10(図6参照)に登録される。ログイン等処理部41は、ユーザから入力される電子メールアドレス等のデータとユーザ管理テーブルT10に登録されたデータとを照合し、ログインの可否を決定する。なお、ユーザ登録時に、そのユーザの属する一つ以上のグループを、自動的にまたは手動操作で設定することができる。その後、ユーザの属するグループは、自動的にまたは手動操作で修正することができる。
可視制御部42は、検索条件に合致するユーザを選択するものである。可視制御部42は、例えば、表示対象抽出処理部42Aと、表示対象決定処理42Bとを備える。表示対象抽出処理42Aは、ユーザから入力される検索条件に合致するアバターを抽出する。表示対象決定処理42Bは、抽出されたアバターのうち、実際にクライアントコンピュータ20の画面に表示させるオブジェクトを決定する。
表示対象データ送信処理部43は、決定されたアバターのデータをクライアントコンピュータ20に送信させる。クライアントコンピュータ20の描画部61は、受信したデータを描画し、クライアントコンピュータ20の画面に表示させる。
ユーザ操作への対応処理部44は、ユーザによるアバター操作の指示に対応するものである。対応処理部44は、例えば、ユーザから指示された位置にアバターを移動させたり、ユーザから指示された通りにアバターの姿勢を変化させる。
ログ管理部45は、仮想空間70を利用するユーザの履歴を管理する。例えば、ログイン時刻、ログアウト時刻、アバターの位置、アバターの操作内容等が、ログとして保存される。
図4は、仮想空間70の一例を示す。仮想空間70には、各ユーザをそれぞれ象徴するアバターが表示される。ここでは、あるユーザU1を自ユーザと呼び、他のユーザを他ユーザと呼ぶ。また、他ユーザのうち検索条件に合致する他ユーザを所定ユーザと呼ぶことにする。また、仮想空間70には、例えば、ペット等の種々のオブジェクト71を表示させることもできる。
クライアントコンピュータ20の画面に表示される仮想空間70は、種々のユーザインターフェースを備えている。チャット欄G1は、自ユーザU1が他ユーザと文字を介して会話するための機能である。通常表示ボタンB1は、そこに位置する全てのアバターやオブジェクトを全て表示させる機能である。アバター絞り込みボタンB2は、検索条件に合致するアバターのみを表示させる機能である。オブジェクト絞り込みボタンB3は、検索条件に合致するオブジェクトのみを表示させる機能である。検索ボタンB4は、検索メニュー80を表示させる機能である。検索メニュー80については後述する。なお、アバター絞り込みボタンB2及びオブジェクト絞り込みボタンB3は、必ずしも必要ではなく、省略も可能である。さらに、例えば、アバターの表情や動作を制御するためのボタンを備えることもできる。また、文字によるチャットに加えて、音声チャットや動画チャットが可能な構成としてもよい。
仮想空間70の場所によっても相違するが、例えば、人気イベントが開催されている会場等では、自ユーザU1のアバターの周囲に多数の他ユーザのアバターが存在する。自ユーザU1は、チャット欄G1を用いて、周囲の他ユーザと交流することができる。
しかし、多数の他ユーザの中から自ユーザU1と何らかの共通属性を有する他ユーザを発見するのは面倒であり、手間がかかる。そこで、自ユーザU1は、検索ボタンB4を操作し、検索メニュー80を仮想空間70に表示させる。
検索メニュー80には、例えば、検索条件を入力するための検索条件入力部81と、検索の実行を指示するための検索実行ボタン82と、検索の結果を表示するための表示部83と、自ユーザU1の属するグループを更新させるための更新指示部84とを設けることができる。
検索条件入力部81には、自ユーザU1の興味や趣味に関するキーワード(検索キーワード)が入力される。論理和や論理積等の論理演算子を入力することもできる。検索結果表示部83では、例えば、検索条件に合致するグループプロパティ(後述の別実施例では、ユーザプロパティ等)を表示させることができる。自ユーザU1は、検索結果表示部83に表示された検索結果の中からいずれか一つまたは複数、あるいは全部を選択することができる。検索結果に満足できない場合、自ユーザU1は、別の検索条件を入力部81に入力して再度の検索を指示することができる。
さらに、検索メニュー80には、検索頻度の高い検索キーワードを順番に表示させるための検索キーワードランキング表示部を設けることもできる。また、検索メニュー80には、自ユーザU1が過去に行った検索の履歴を表示するための検索履歴表示部を設けることもできる。自ユーザU1は、検索キーワードランキング表示部や検索履歴表示部に表示されたキーワードを指定して検索を指示することができる。
図5は、検索後の仮想空間70の表示状態を示す。自ユーザU1が「猫」という検索キーワードを用いて検索した結果、仮想空間70には、猫好きの他ユーザU2,U3のアバターのみが表示される。後述のように、ユーザの属するグループが有するグループプロパティやユーザの有するユーザプロパティを検索キーワードで検索することにより、検索条件に合致するユーザを抽出することができる。
検索キーワードに合致しない他ユーザは、自ユーザU1から見える仮想空間70に表示されない。しかし、検索キーワードに関連する属性に対応付けられた他ユーザU4は、例えば半透明で表示させることもできる。例えば、他ユーザU4は「犬好き」という属性に対応付けられており、「猫好き」というキーワードと「犬好き」という属性との関係が所定値以上大きい場合等に、他ユーザU4を仮想空間70に表示させてもよい。
図6は、管理サーバ40によって使用される各管理テーブルT10〜T30の構成を示す説明図である。これら管理テーブルT10〜T30は、データベース50に記憶されている。
ユーザ管理テーブルT10は、仮想空間70を利用する各ユーザを管理するためのテーブルである。図7に示すように、ユーザ管理テーブルT10は、例えば、ユーザID欄C10と、ユーザ氏名欄C11と、電子メールアドレス欄C12と、ログイン制御フラグ欄C13を備える。図7では図示を省略するが、ユーザ管理テーブルT10は、ユーザのアバターの仮想空間70における位置も管理する。
ユーザID欄C10には、各ユーザを識別するための識別情報であるユーザIDが記憶される。ユーザ氏名欄C11には、ユーザの本名、または、各ユーザが仮想空間70内で使用するアバター名が記憶される。電子メールアドレス欄C12には、ユーザの電子メールアドレスが記憶される。ログイン制御フラグ欄C13には、そのユーザのログインの可否を決定するためのフラグがセットされる。「1」にセットされたユーザは、ログインが許可され、「0」にセットされたユーザは、ログインが禁止される。これ以外に、所定時間だけログインを許可させるためのフラグ等を追加してもよい。また、ユーザ管理テーブルT10には、例えば、パスワードや指紋情報等の生体情報、ユーザの趣味、ユーザの住所等も管理することができる。さらに、ユーザ管理テーブルT10は、各ユーザのアバターの仮想空間70における位置も管理する。
グループ管理テーブルT20は、各ユーザの属するグループを管理するためのテーブルである。グループは、例えば、「猫好きユーザ」、「犬好きユーザ」、「サッカー好きユーザ」、「男性ユーザ」、「女性ユーザ」、「独身ユーザ」、「既婚ユーザ」、「日本人ユーザ」、「欧米人ユーザ」、「中国人ユーザ」、「音楽好きユーザ」、「読書家ユーザ」、「グルメユーザ」、「10代ユーザ」、「20代ユーザ」、「30代ユーザ」、「40代ユーザ」、「50代ユーザ」等のように、ユーザの備えうる各種の属性に応じてそれぞれ用意される。
従って、各ユーザは、少なくとも一つ以上の、いずれかのグループに属する。どのグループに属するかは、最初のログイン時に仮想空間提供装置10が自動的に決定してもよいし、ユーザが手動で選択または修正できるようにしてもよい。また、ユーザがグループを追加できる構成としてもよい。
グループ管理テーブルT20は、図7に示すように、グループID欄C20と、ユーザID欄C21と、グループプロパティ欄C22とを備える。グループID欄C20には、各グループを識別するための識別情報であるグループIDが記憶される。ユーザID欄C21には、各グループに属するユーザのユーザIDが記憶される。グループプロパティ欄C22には、そのグループの属性を示すキーワードが設定される。さらに、例えば、そのグループの属性を示す名称を示す欄、そのグループが作成された日を示す欄、そのグループの作成者を示す欄等を追加してもよい。
オブジェクト管理テーブルT30は、仮想空間70内の各オブジェクトを管理するためのテーブルである。図8に示すように、オブジェクト管理テーブルT30は、例えば、オブジェクトID欄C30と、保有者ID欄C31と、位置情報欄C32と、作成日欄C33とを備える。
オブジェクトID欄C30には、オブジェクトIDが記憶される。保有者ID欄C31には、そのオブジェクトを保有しているユーザのIDが記憶される。位置情報欄C32は、そのオブジェクトが表示される位置が記憶される。位置情報は、仮想空間70内の座標として設定される。オブジェクトの位置は、仮想空間70内の絶対座標として設定してもよいし、相対座標として設定してもよい。
作成日欄C33には、そのオブジェクトが作成された日付が記憶される。日付情報は、西暦年月日及び時分秒の形式で設定することができる。なお、仮想空間70内で時間を管理できればよいので、例えば、一定時間毎にカウントアップするカウンタの値を日付情報として用いてもよい。
図9は、本実施例による動作を示すフローチャートである。なお、以下に示す各フローチャートは、本発明の理解及び実施に必要な程度で、各処理の概要を示しており、実際のコンピュータプログラムとは相違する場合がある。また、いわゆる当業者であれば、図示されたステップを入れ替えたり、削除したり、変更したり、あるいは新たなステップを追加したりすることができるであろう。
クライアントコンピュータ20は、仮想空間提供装置10にアクセスして、ログイン情報を送信する(S10)。ログイン情報とは、仮想空間70にログインするために必要な認証情報である。
管理サーバ40は、クライアントコンピュータ20からログイン情報を受信すると(S11)、ユーザ管理テーブルT10を参照して、そのユーザのログインを許可するか否かを判定する(S12)。ログイン情報がユーザ管理テーブルT10に記憶されているデータと異なる場合、そのユーザのログインは拒否される(S12:NO)。この場合、管理サーバ40は、クライアントコンピュータ20に、ログイン情報に誤りがある旨を警告することができる(S13)。
ログイン情報がユーザ管理テーブルT10に記憶されているデータと一致しても、ログイン制御フラグに「0」が設定されている場合、管理サーバ40は、そのユーザのログインを拒否する(S12:NO)。管理サーバ40は、ログインが禁止されていることをクライアントコンピュータ20に警告することができる(S13)。
ログイン情報がユーザ管理テーブルT10に記憶されたデータと一致しており、かつ、ログイン制御フラグに「1」の設定されているユーザについては、ログインが許可される(S12:YES)。管理サーバ40は、クライアントコンピュータ20にログインが許可された旨を通知する(S14)。このログイン許可通知には、ユーザの選択可能なアバターの位置を含めることができる。例えば、予め用意されている一つまたは複数のログイン地点やユーザが前回ログアウトした地点等を、ユーザが選択可能なログイン地点として提供することができる。
クライアントコンピュータ20は、ログイン許可通知を受領すると(S15)、アバターのログイン位置を選択する(S16)。なお、クライアントコンピュータ20側で、ログを管理しており、前回のログアウト地点を把握している場合等には、ログイン許可通知にログイン可能地点の情報を含ませる必要はない。
クライアントコンピュータ20は、アバターの位置情報とデータ送信要求とを、仮想空間提供装置10に送信する(S17)。このデータ送信要求には、後述のS25で設定される検索条件が含まれる場合がある。管理サーバ40は、クライアントコンピュータ20からアバターの位置情報及びデータ送信要求を受領すると(S18)、入力された条件(位置や検索条件)に対応する表示対象を抽出する(S19)。表示対象とは、アバターやオブジェクトを意味するが、本実施例では、アバターに着目して説明する。
管理サーバ40は、抽出された他ユーザのうち実際に表示させる他ユーザを決定し(S20)、決定された他ユーザのアバターデータをクライアントコンピュータ20に送信させる(S21)。なお、自ユーザのアバターの周囲に位置する各オブジェクトのデータも、クライアントコンピュータ20に送信される(S21)。
クライアントコンピュータ20は、仮想空間提供装置10からデータを受領すると(S22)、そのデータを描画して、クライアントコンピュータ20の画面に他ユーザのアバターやオブジェクトを表示させる(S23)。
ユーザが検索メニュー80を用いて、表示用の検索実行を指示した場合(S24:YES)、または、ユーザがアバターを操作してアバター位置が変化した場合(S25:YES)、クライアントコンピュータ20は、S17に戻る。そして、新たなアバター位置と、検索要求を含むデータ送信要求とが、クライアントコンピュータ20から仮想空間提供装置10に送信される。これにより、ユーザアバターの最新位置の周囲に存在する他アバターのうち、ユーザの希望する他アバターが仮想空間70に表示される。
検索指示が出されず(S24:NO)、かつ、アバター位置が変化しない場合(S25:NO)、クライアントコンピュータ20は、ユーザによる操作内容を仮想空間提供装置10に送信する(S26)。管理サーバ40は、ユーザの操作を仮想空間70に反映させ、その操作内容をログに保存する(S27)。なお、ユーザは、アバターを仮想空間70内で移動させながら、チャット等の別の操作を行うこともできる。
図10は、クライアントコンピュータ20で実行される表示用の検索要求処理を示すフローチャートである。表示用の検索要求処理とは、仮想空間70に表示させる対象を検索させるための処理である。図10では、便宜上、仮想空間提供装置10を管理サーバと表示する。
ユーザは、検索メニュー80を表示させ(S30)、検索キーワードを入力部81に入力し(S31)、検索実行ボタン82を操作する(S32:YES)。クライアントコンピュータ20は、検索キーワードを仮想空間提供装置10に送信する(S33)。
図11で後述するように、検索結果によっては、仮想空間提供装置10から選択要求が発行される場合がある。仮想空間提供装置10から選択要求が発行されなかった場合(S34:NO)、本処理は終了する。仮想空間提供装置10から選択要求を受信した場合(S34:YES)、ユーザは、検索結果の中からいずれか一つまたは複数を選択する(S35)。クライアントコンピュータ20は、ユーザの選択結果を仮想空間提供装置10に送信する(S36)。
図11は、図9中のS19の詳細を示すフローチャートである。管理サーバ40は、データ送信要求に検索条件が含まれているか否かを判定し(S40)、検索条件が含まれていない場合(S40:NO)、通常表示処理を実行する(S43)。通常表示処理とは、検索によって表示対象を選別せずに、視野内に存在する全てのアバター(及びオブジェクト)のデータをクライアントコンピュータ20に送信して、表示させる処理である。
検索条件が含まれている場合(S40:YES)、管理サーバ40は、検索キーワードに基づいて、グループ管理テーブルT20を検索する(S41)。以下の説明では、検索条件を検索キーワードと呼ぶ場合がある。
検索キーワードに合致するグループプロパティを有するグループが検出されない場合(S42:NO)、管理サーバ40は通常表示処理を実行する(S43)。検索キーワードに合致するグループプロパティを有するグループが検出された場合(S42:YES)、管理サーバ40は、複数のグループが検出されたか否かを判定する(S44)。
複数のグループが検出された場合(S44:YES)、管理サーバ40は、クライアントコンピュータ20に選択要求を送信する(S45)。管理サーバ40は、ユーザによる選択結果をクライアントコンピュータ20から受信するまで待機する(S46)。検索結果が一つの場合(S44:NO)、S45及びS46をスキップしてS47に移る。
管理サーバ40は、検索によって検出されたグループ、または、検索結果の中からユーザによって選択されたグループに、ユーザを対応付ける(S47)。つまり、検出されたグループには、検索したユーザのユーザIDが追加される。
ここで、検索精度について検討する。通常の場合、グループプロパティには、システム管理者により正式な表現でキーワードが設定される。これに対し、ユーザは、所望のキーワードを検索キーワードとして使用できる。
例えば、グループプロパティには「猫」と設定されているのに対し、ユーザの指定する検索キーワードが「ぬこ」や「にゃん」のような場合である。固定化されやすいグループプロパティ内のキーワードと、流行に応じて変化する検索キーワードとが対応しない場合、検索精度が低下する。そこで、例えば、類義語辞書や正式な表現に正すための辞書を用いて、検索キーワードに類似するキーワードまで検索範囲を拡張したり、あるいは、正式なキーワードに修正する。検索範囲を拡張する場合、ユーザの意図しないグループが検出される可能性もある。そこで、複数のグループが検出された場合(S44:YES)、その検索結果をユーザに提示し、ユーザに選択させる。
図12は、図9中のS20の詳細を示すフローチャートである。まず、管理サーバ40は、ユーザIDでグループ管理テーブルT20を検索することにより、そのユーザの属する全てのグループを特定する(S50)。
管理サーバ40は、S50で特定されたグループに属する他ユーザを全て検出し(S51)、検出された他ユーザのアバターの位置情報を取得する(S52)。管理サーバ40は、他ユーザのアバターの位置とユーザアバター(図4,図5で述べた自ユーザU1に対応する)の位置とを比較し(S53)、他ユーザのアバターがユーザアバターの所定の視認範囲内に存在するか否かを判定する(S54)。即ち、管理サーバ40は、例えば、ユーザアバター位置を中心とする所定の範囲内に、他ユーザのアバターが存在するか否かを判定する。より具体的には、管理サーバ40は、他ユーザのアバターが自ユーザのクライアントコンピュータ20の画面内に位置するか否かを判定する。
他ユーザのアバターが所定の視認範囲内に存在する場合(S54:YES)、管理サーバ40は、そのアバターを表示対象として選択する(S55)。視認範囲外に位置する他ユーザのアバターは、表示対象として選択されない(S54:NO)。
管理サーバ40は、検索キーワードに合致するグループに属する全ての他ユーザについて、表示の可否を判定したか否かを判定する(S56)。未判定の他ユーザが残っている場合(S56:NO)、管理サーバ40は、判定対象の他ユーザを次の他ユーザに変更し(S57)、S50に戻る。
図13は、ユーザの属するグループを更新させる処理を示すフローチャートである。本処理は、ユーザが所属グループ更新指示部84を操作することにより開始される。上述の通り、本実施例では、ユーザは、検索キーワードに対応するグループに登録されることにより、そのグループに属する他のユーザのアバターを仮想空間70内で視認できる。
従って、ユーザが、異なる検索キーワードを用いて検索を繰り返すほど、そのユーザの属するグループは増加し、仮想空間70に表示されるアバターの数は増加する。このため、ユーザの所望する他ユーザを容易に発見できなくなる可能性がある。そこで、本実施例では、ユーザの属するスケジュールグループを修正できるようにしている。
ユーザが所属グループ更新指示部84を操作すると(S80)、クライアントコンピュータ20は、そのユーザの属しているグループの一覧を管理サーバ40に要求する(S61)。管理サーバ40は、クライアントコンピュータ20からの要求を受信すると、この要求に含まれるユーザIDに基づいてグループ管理テーブルT20を検索し(S62)、そのユーザの属する全てのグループを抽出する(S63)。管理サーバ40は、抽出されたグループの一覧をクライアントコンピュータ20に送信する(S64)。
クライアントコンピュータ20は、管理サーバ40から受信したグループ一覧を画面に表示する(S65)。ユーザは、表示されたグループ一覧の中から削除するグループを一つまたは複数選択することができる。
クライアントコンピュータ20は、削除するグループが選択されると(S66)、削除対象のグループIDを管理サーバ40に送信する(S67)。管理サーバ40は、クライアントコンピュータ20から削除を要求されたグループから、そのユーザのユーザIDを削除し(S68)、グループ管理テーブルT20を更新させる(S69)。これにより、ユーザは、過去に属していたグループから外れて、最近の興味や趣味に応じたグループのみに属することができる。
図14は、通常表示モードと検索表示モードとの相違を模式的に示す。仮想空間70に参加する各ユーザは、例えば、「猫」や「関東」等の各グループのいずれか一つに属している。通常表示モードでは、全てのグループに属するユーザのアバターが仮想空間70に表示される。
これに対し、図14の下側に示すように、検索表示モードでは、ユーザの入力する検索条件に合致するグループに属する他ユーザのみが仮想空間70に表示される。従って、ユーザは、自分と共通の趣味や関心を有する他ユーザに容易に接触できる。
本実施例は上述の構成を備えるため、以下の効果を奏する。本実施例では、ユーザの検索条件に応じて、仮想空間70に表示させる他ユーザのアバターを制御するため、ユーザは、自分と共通の興味や趣味等を有する他ユーザと容易に接触できる。従って、ユーザの使い勝手が向上し、仮想空間70におけるユーザ同士の交流を促進できる。
本実施例では、ユーザの属するグループをユーザが自由に修正できるため、ユーザの最近の興味等に応じた他ユーザとのみ交流することもでき、使い勝手が向上する。
本実施例では、検索条件に合致する他ユーザのアバターデータのみをクライアントコンピュータ20に送信するため、通信ネットワークCN10のトラフィックを増大させたり、クライアントコンピュータ20のコンピュータ資源を浪費せずに、そのユーザに適した仮想空間を提供することができる。
図15〜図18に基づいて第2実施例を説明する。本実施例では、ユーザ管理テーブルT10Aを用いて、ユーザの入力する検索条件に合致する他ユーザを抽出する。なお、本実施例を含む以下の各実施例は、第1実施例の変形例に該当する。従って、以下の説明では、重複した説明を省略し、各実施例の特徴部分を中心に説明する。
図15は、本実施例による他ユーザの抽出方法を模式的に示す説明図である。本実施例のユーザ管理テーブルT10Aは、図16にも示すように、ユーザプロパティ欄C14を備える。ユーザプロパティ欄C14には、そのユーザの属性を示すキーワードが設定されている。キーワードは、ユーザが自由に設定できる構成でもよいし、仮想空間提供装置10が自動的に設定する構成でもよい。あるいは、仮想空間提供装置10によって自動的に設定されるキーワードをユーザが一部修正したり、新たなキーワードを自由に追加できる構成でもよい。
図15に戻る。管理サーバ40は、ユーザから入力される検索条件に基づいてユーザ管理テーブルT10Aを検索することにより、検索キーワードに合致するユーザプロパティを備える他ユーザを全て抽出することができる。そして、管理サーバ40は、抽出された他ユーザのうち、検索したユーザの位置から所定の視認範囲内に位置するユーザをさらに検出し、その検出された他ユーザのアバターデータをクライアントコンピュータ20に送信する。
図17は、本実施例による表示対象の抽出処理を示すフローチャートである。管理サーバ40は、クライアントコンピュータ20から受信するデータ送信要求に検索条件が含まれているか否かを判定する(S100)。検索条件が含まれていない場合(S100:NO)、管理サーバ40は、通常表示処理を実行する(S103)。
検索条件が含まれている場合(S100:YES)、管理サーバ40は、検索キーワードに基づいてユーザ管理テーブルT10Aを検索する(S101)。管理サーバ40は、検索キーワードに合致するユーザプロパティを有する他ユーザを検出できたか否かを判定する(S102)。検索キーワードに合致するキーワードを備える他ユーザを一人も発見できない場合(S102:NO)、管理サーバ40は、通常表示処理を実行する(S103)。
検索キーワードに合致するキーワードを有する他ユーザを発見した場合(S102:YES)、管理サーバ40は、その検出された他ユーザのユーザIDを、メモリ40Bまたは補助記憶装置40Cに記憶させる(S104)。
図18は、表示させる他ユーザのアバターを決定するための処理を示すフローチャートである。このフローチャートは、図12に示すフローチャートと同一のステップS52〜S57を備え、図12に示されるS51が省略されている。
管理サーバ40は、図17のS104で記憶された他ユーザのユーザIDを読込み(S50A)、読み込まれたユーザIDの現在位置と検索したユーザの現在位置とを比較し(S52,S53)、視認範囲内の他ユーザのアバターのみを表示対象として選択する(S54〜S57)。
このように構成される本実施例も第1実施例と同様の効果を奏する。さらに、本実施例では、ユーザ管理テーブルT10Aで管理されるユーザプロパティを検索することにより、ユーザが所望する他ユーザを容易に抽出することができる。従って、本実施例は、グループ管理テーブルT20を用いて他ユーザを抽出する場合よりも構成を簡素化することができる。
また、ユーザプロパティの少なくとも一部に、ユーザが自由に設定可能なキーワードを含めることにより、流行の変化に速やかに追従することができる。
図19〜図21に基づいて第3実施例を説明する。本実施例では、検索条件に合致する他ユーザのアバター及びオブジェクトを抽出して、仮想空間70に表示させる。図19は、本実施例による仮想空間提供装置10が使用する各管理テーブルT10〜T40を示す説明図である。
本実施例では、可視管理テーブルT40が追加されている。可視管理テーブルT40は、ユーザに適したオブジェクトを選択するためのテーブルである。図20に示すように、可視管理テーブルT40は、例えば、オブジェクトID欄C40と、グループID欄C41とを備える。オブジェクトID欄C40には、オブジェクトIDが記憶される。グループID欄C41には、そのオブジェクトが属するグループIDが記憶される。オブジェクトは、複数のグループに属することができる。
さらに、本実施例では、オブジェクト管理テーブル30Aの管理項目に、グループIDが追加されている。つまり、本実施例では、オブジェクトとグループとが予め対応付けられている。
図21は、表示オブジェクトの決定処理を示すフローチャートである。仮想空間70に表示されるアバターを決定する方法は、第1実施例と同様に行うことができるので、説明を省略し、ここでは、オブジェクトを選別する方法を説明する。
管理サーバ40は、検索条件に合致するグループのグループIDに基づいて可視管理テーブルT40を検索することにより、その検索条件に合致するグループに対応付けられているオブジェクトのオブジェクトIDを特定できる。この検索条件に対応するオブジェクトを、以下の説明では、表示可能なオブジェクトとも呼ぶ。
管理サーバ40は、表示可能なオブジェクトの位置情報を、オブジェクト管理テーブルT30Aから取得する(S120)。管理サーバ40は、オブジェクトの位置とアバターの位置とを比較し(S121)、アバターの位置とオブジェクトの位置とが所定の視認範囲内にあるか否かを判定する(S122)。
そのオブジェクトが所定の視認範囲内に存在する場合(S122:YES)、管理サーバ40は、そのオブジェクトをクライアントコンピュータ20の画面に表示させるオブジェクトとして選択する(S123)。
管理サーバ40は、表示可能なオブジェクトのうち全てのオブジェクトについて判定したか否かを判定する(S124)。未判定のオブジェクトが残っている場合(S124:NO)、管理サーバ40は、判定対象のオブジェクトを次のオブジェクトに変更し(S125)、S120に戻る。
表示可能な全オブジェクトについて表示の可否を判定した場合(S124:YES)、管理サーバ40は、S123で選択されたオブジェクトが予め設定される所定範囲内に複数存在するか否かを判定する(S126)。つまり、管理サーバ40は、ユーザに対応するオブジェクトが仮想空間70内で重なり合っているか否かを判定する。
表示が決定されたオブジェクトが所定範囲内に複数存在する場合(S126:YES)、管理サーバ40は、重なり合う各オブジェクトのうち、いずれか一つのオブジェクトを選択して(S1271)、処理を終了する。
重なり合うオブジェクトのうち一つを選択する方法としては、種々の方法を挙げることができる。例えば、各オブジェクトのうち作成日の新しい方を選択できる。または、各オブジェクトに予め優先度が設定されている場合、いずれか優先度の高い方のオブジェクトを選択できる。
このように構成される本実施例も第1実施例と同様の効果を奏する。さらに、本実施例では、検索条件に合致するアバター及びオブジェクトだけを仮想空間70に表示させることができるため、ユーザの使い勝手が向上する。
図22に基づいて第4実施例を説明する。本実施例では、ユーザが検索表示モードで仮想空間70に参加していることを、特別な表示によって他のユーザに通知する。図22は、本実施例における仮想空間70の様子を示す。検索表示モードで仮想空間70に参加しているユーザのアバターには、モードを識別するためのマークM1が表示される。
仮想空間70には、全てのユーザのアバターを視認する通常表示モードのユーザU2〜U4と、検索条件に合致するユーザのアバターのみを視認する検索表示モードのユーザU1とが混在する。例えば、通常表示モードのユーザU4からは、検索表示モードのユーザU1のアバターが見えるが、検索表示モードのユーザU1には通常表示モードのユーザU4のアバターが見えない。ユーザU1とユーザU4とは、共通のグループまたは共通のキーワードを備えていないためである。
従って、この場合、通常表示モードのユーザU4が検索表示モードのユーザU1に接触を試みた場合に、ユーザU1のアバターから応答が無かったり、応答が遅れたりする場合がある。
応答の有無は、チャットシステムの設定によって異なる。例えば、検索条件に合致するユーザとのみチャット可能な設定の場合、通常表示モードのユーザU4がU1に話しかけても、検索表示モードのユーザU1には届かない。これに対し、検索条件に合致するユーザのアバターのみを表示させるが、チャットは全てのユーザと可能である設定の場合、通常表示モードのユーザU4は、検索表示モードのユーザU1と会話可能である。しかし、検索表示モードのユーザU1からは相手が見えないため、コミュニケーションに問題が生じる可能性がある。
そこで、本実施例では、検索表示モードのユーザU1に特別なマークM1を対応付けて表示させることにより、ユーザ間でのトラブルの発生を防止する。なお、通常表示モードのユーザに、通常表示モードである旨のマークを対応付ける構成でもよい。検索表示モードのユーザと通常表示モードのユーザとを明確に区別できる標識または情報を、各ユーザのアバターに対応付けることのできる構成であればよい。このように構成される本実施例も、上記の特別な効果に加えて、第1実施例と同様の効果を奏する。
図23,図24に基づいて第5実施例を説明する。本実施例では、仮想空間提供装置10からクライアントコンピュータ20に、ユーザの視認範囲内の全アバターのデータを送信し、クライアントコンピュータ20側で、表示するアバターを選別する。
図23は、本実施例の仮想空間提供装置10の動作を示す。管理サーバ40は、表示させるアバターを決定した後(S20)、視認範囲内の全てのアバターのデータを、クライアントコンピュータ20に送信させる(S21A)。
仮想空間提供装置10は、図24(d)に示すように、アバターデータD1に描画制御情報D2を対応付けて、クライアントコンピュータ20に送信する。描画制御情報D2は、そのアバターの表示の可否を制御するための情報である。描画制御情報D2に「1」がセットされているアバターは、クライアントコンピュータ20によって描画される。描画制御情報D2に「0」がセットされているアバターは、クライアントコンピュータ20により描画されない。
クライアントコンピュータ20は、仮想空間提供装置10から受信したアバターデータD1及び描画制御情報D2を(S22)、クライアントコンピュータ20内のメモリ装置に保存させる。クライアントコンピュータ20は、描画の許可されたアバターデータのみを描画し、画面に表示させる(S23A)。
図24は、仮想空間提供装置10からクライアントコンピュータ20に送信されるアバターデータの範囲を説明するための図である。図24(a)は、仮想空間70の有する全てのアバターデータ(UID001−UID010)を示す。
図24(b)は、アバターを中心とする視認可能な範囲内(視認範囲内)に存在するアバターデータ(UID001,UID003,UID007,UID010)を示す。図24(c)は、視認範囲内に位置する各アバターデータのうち、検索条件に合致するアバターデータ(UID001,UID010)を示す。
図24(d)は、仮想空間提供装置10からクライアントコンピュータ20に送信されるデータの構成を示す。仮想空間提供装置10は、検索条件に合致するか否かを問わずに、視認範囲内に存在する全てのアバターデータを、クライアントコンピュータ20に送信する。
但し、アバターデータD1には、上述の描画制御情報D2がそれぞれ設定される。視認範囲内に存在するアバターであっても、検索条件に合致しないアバターの描画制御情報D2には「0」がセットされる。視認範囲内に存在し、かつ、検索条件に合致するアバターの描画制御情報D2には「1」がセットされる。
図24(e)は、クライアントコンピュータ20によって描画されるアバターデータを示す。クライアントコンピュータ20は、仮想空間提供装置10から受信した各アバターデータのうち、描画制御情報に「1」がセットされているアバターデータのみを描画して仮想空間70に表示させる。
このように構成される本実施例も第1実施例とほぼ同様の効果を奏する。さらに、本実施例では、視認範囲内の全アバターデータをクライアントコンピュータ20に送信し、クライアントコンピュータ20側で描画するアバターデータを選別する。従って、通信ネットワークCN10を流れるデータ量は第1実施例よりも増大するが、描画制御情報を書き換えるだけで、表示させるか否かを制御することができる。
図25に基づいて第6実施例を説明する。本実施例は、ユーザの現実世界での行動履歴に基づいて、ユーザプロパティを自動的に設定する。本実施例は、第2実施例の変形例に該当する。図25は、本実施例に係る仮想空間提供装置10により実行される、ユーザプロパティ設定処理を示す。
管理サーバ40は、例えば、POS(Point Of Sale)明細データ52A、電子マネー利用データ52B、ポイント利用データ52C等から、ユーザの購買履歴データを取得する(S130)。POS明細データ52Aには、例えば、コンビニエンスストアやスーパーマーケット等でのユーザの購買履歴が含まれている。電子マネー利用データ52Bには、ウェブサイトでの決済に使用される電子マネーのユーザの利用状況が含まれている。ポイント利用データ52Cには、商品やサービスの購入に際して所定割合で付与される、商品やサービスと交換可能なポイントのユーザの利用状況が含まれている。
管理サーバ40は、ユーザの購買履歴データに基づいて、ユーザの購入した商品を抽出する(S131)。各商品には、例えば、JAN(Japanese Article Number)コードのような商品識別コードが、バーコード、二次元バーコード、ICタグのような形態で予め設定されている。従って、商品識別コードからユーザの購入した商品を特定できる。
管理サーバ40は、商品管理データベース53を用いることにより、ユーザの購入した商品にキーワードを設定し(S132)、この商品に設定されたキーワードをユーザプロパティとしてユーザ管理テーブルT10Aに設定する(S133)。
商品管理データベース53は、例えば、商品ID(商品識別コード)と、商品名と、商品の提供者名と、キーワードとを対応付けて管理する。なお、これら以外の管理項目を備えてもよいし、上述した管理項目のうち商品ID及びキーワード以外の管理項目を除外してもよい。
キーワードは、例えば、その商品の特徴や性質、販売顧客層等に基づいて、設定することができる。体脂肪率の低減を特徴とする商品には、例えば、「健康」、「ダイエット」等のキーワードが設定される。
商品提供者のサイトに掲載されている商品の広告宣伝文から、テキストマイニング手法等を用いることにより、一つまたは複数のキーワードを抽出することができる。または、WWWサイトで公開されている日記や掲示板のテキストから、商品に関するキーワードを抽出することもできる。さらには、仮想空間70内で行われた、商品に関するチャットのログデータに基づいて、その商品のキーワードを自動的に抽出することもできる。
なお、有体物の商品に限らず、現実世界でのサービス利用履歴に基づいて、ユーザプロパティを自動的に設定することもできる。例えば、エステサロンを利用したユーザには、「美容」、「ファッション」のようなユーザプロパティを設定できる。
さらに、このようにして自動的にユーザに対応付けられるキーワードの順位を、ユーザの最新の購買履歴(行動履歴)に応じて変動させることもできる。例えば、あるユーザに第1キーワード「音楽」、第2キーワード「教養」、第3キーワード「健康」の3つが設定されている場合、そのユーザが最近「健康」のキーワードを有する商品を購入した場合、第3キーワードであった「健康」を第1キーワードに変更する。「音楽」及び「教養」の各キーワードは、それぞれ順位を1つずつ繰り下げる。
このように構成される本実施例も第1実施例及び第2実施例と同様の効果を奏する。これに加えて、本実施例では、ユーザの現実世界における商品の購買履歴に基づいて、そのユーザのプロパティを自動的に設定する。従って、本実施例では、ユーザの比較的最近の興味や関心等に応じて、そのユーザに適したキーワードを自動的に設定でき、同様の興味や関心を有するユーザからの接触機会を高めることができる。
図26,図27に基づいて第7実施例を説明する。本実施例では、ユーザの仮想空間70での行動履歴に基づいて、ユーザプロパティを自動的に設定する。本実施例も第2実施例の変形例に該当する。図26は、本実施例に係る仮想空間提供装置10により実行される、ユーザプロパティ設定処理のフローチャートである。
管理サーバ40は、ユーザに対応するアバターに関するログデータを、ログデータ45Aから取得する(S140)。管理サーバ40は、S140で取得したログデータから、アバターの保有する各種オブジェクトにそれぞれ設定されているオブジェクトプロパティを取得する(S141)。
アバターは、例えば、上着、ズボン、靴、鞄、眼鏡、腕時計、帽子等の種々のオブジェクトを保持している。これらの各オブジェクトには、予めキーワード(オブジェクトプロパティ)がそれぞれ設定されている。
続いて、管理サーバ40は、アバターの行動履歴に対応するキーワードを取得する(S142)。この方法については、図27で後述する。最後に、管理サーバ40は、オブジェクトプロパティ内のキーワードと、行動履歴に基づくキーワードとを、ユーザプロパティとして設定する(S143)。
なお、S141及びS142で取得されたキーワードの合計が予め設定される上限値を超える場合、予め設定される基準に従って、上限値以内のキーワードに絞り込む。例えば、仮想空間70での行動履歴から得られるキーワードを優先的に使用する。逆に、アバターの保有するオブジェクトから得られるキーワードを優先的に使用してもよい。
図27は、保有オブジェクトや行動履歴に基づいてキーワードを取得する方法(S141,S142)を模式的に示す説明図である。ログデータ45Aは、例えば、ユーザIDと、保有オブジェクトIDと、行動履歴等を対応付けて管理する。
保有オブジェクトIDとは、そのユーザ(アバター)が保持しているオブジェクトのIDである。従って、保有オブジェクトIDに基づいてオブジェクト管理テーブルT30Bを検索することにより、アバターの保有するオブジェクトに関するキーワードを取得することができる。
ログデータ45A内の行動履歴は、仮想空間70におけるアバターの行動や会話等を記録している。行動パターン判別テーブル54は、例えば、指標と、その指標に対応して予め設定されるキーワードとを備える。例えば、仮想空間70に新しい建築物オブジェクトが配置された場合、直ちにその建築物を訪問したユーザには「新しもの好き」等のキーワードが設定される。また、例えば、仮想空間70へのログイン時間に占めるチャット時間の割合が所定値以上多いユーザには、「活動的」等のキーワードが設定される。さらに、例えば、所定期間内のチャット内容に否定的な言葉が所定値以上出現する場合、そのユーザには、「悲観的」等のキーワードが設定される。なお、以上の説明は、本発明の理解のための例示であり、本発明は上述の記載によって限定されない。
このように構成される本実施例も第1実施例、第2実施例及び第6実施例と同様の効果を奏する。
図28に基づいて第8実施例を説明する。本実施例では、アバター(ユーザ)が所定のオブジェクトを保持することにより、所定オブジェクトに対応付けられているグループIDにユーザIDを設定する。これにより、例えば、音楽グループに属するオブジェクトをユーザが保持することで、そのユーザは自動的に音楽グループに属し、音楽グループに対応付けられている他のユーザのアバターが仮想空間70に表示される。
図28は、本実施例に係る仮想空間提供装置10で実行されるグループ変更処理を示すフローチャートである。管理サーバ40は、例えばログデータ45Aに基づいて、アバターの保持するオブジェクトを検査し、アバターが所定のオブジェクトを保持しているか否かを判定する(S150)。
所定のオブジェクトとは、ユーザの属するグループを変化させることのできるオブジェクトである。このような所定オブジェクトには、オブジェクト管理テーブルT30において、所定オブジェクトである旨を示すフラグが設定される。
アバターが所定オブジェクトを保持している場合(S150:YES)、管理サーバ40は、オブジェクト管理テーブルT30を参照することにより、所定オブジェクトに対応付けられているグループIDを検出し、このグループIDにアバターのユーザIDを対応付けて、グループ管理テーブルT20を更新する(S151)。
アバターが所定オブジェクトを保持していない場合(S150:NO)、管理サーバ40は、例えば、ログデータ45Aを用いることにより、所定オブジェクトがアバターから取り外されたか否かを判定する(S152)。所定オブジェクトがアバターから取り外された場合としては、例えば、所定オブジェクトが捨てられた場合、所定オブジェクトが倉庫やトランクのようなオブジェクト保管場所に保管された場合等を挙げることができる。
所定オブジェクトがアバターから取り外された場合(S152:YES)、管理サーバ40は、オブジェクト管理テーブルT30を参照して所定オブジェクトに対応付けられているグループIDを検出する。そして、管理サーバ40は、グループ管理テーブルT20において、所定オブジェクトに関するグループIDに対応付けられているユーザIDを削除し、グループ管理テーブルT20を更新する(S153)。
ユーザの操作するアバターが身につけるオブジェクトについて、図28に示す処理を定期的または不定期に行うことにより、ユーザは、所望のグループに関する所定のオブジェクトを保持するだけで(あるいは、装着するだけで)、そのグループに属する他のユーザのアバターをクライアントコンピュータ20に表示させることができる。
このように構成される本実施例も第1実施例と同様の効果を奏する。さらに、本実施例では、ユーザ(アバター)の保持する所定オブジェクトに対応するグループIDと、そのユーザのユーザIDとを対応付けるようにグループ管理テーブルT20を更新する。従って、ユーザは、所望のグループに対応する所定オブジェクトを保持するだけで、そのグループに属する他のユーザのアバターを表示させることができ、かつ、所定オブジェクトを取り外すだけで、そのグループに属する他のユーザのアバターを視界から消すことができ、ユーザの使い勝手が向上する。
図29に基づいて第9実施例を説明する。本実施例では、ユーザの保持するオブジェクトに応じて、グループ管理テーブルT20を動的に生成または変更する。管理サーバ40は、例えば、ログデータ45Aを用いることにより、ユーザの保持するオブジェクトを検出する(S160)。
管理サーバ40は、検出されたオブジェクトのオブジェクトIDを検索キーとして、オブジェクト管理テーブルT30を検索し(S161)、そのオブジェクトに対応付けられているグループIDを検出する(S162)。
管理サーバ40は、検出されたグループIDを検索キーとしてグループ管理テーブルT20を検索し(S163)、その検出されたグループIDにユーザIDが対応付けられているか否かを判定する(S164)。S162で検出されたグループIDにユーザIDが対応付けられていない場合(S164:NO)、管理サーバ40は、そのグループIDにユーザIDを対応付けて、グループ管理テーブルT20を更新させる(S165)。検出されたグループIDにユーザIDが既に対応付けられている場合(S164:YES)、S165はスキップされる。
管理サーバ40は、ユーザが保持していないオブジェクトに関するグループIDに、そのユーザのIDが対応付けられているか否かを検査し、既に保持していないオブジェクトに関するグループIDからユーザIDを削除して、グループ管理テーブルT20を更新させる(S166)。
このように構成される本実施例は、第1実施例と同様の効果を奏する。さらに、本実施例では、ユーザの保持するオブジェクトに応じて、そのユーザの属するグループを動的に変更する。従って、仮想空間70のアバターが装着しているオブジェクトの種類に応じて、ユーザに見えるアバターの範囲をカスタマイズすることができ、ユーザの使い勝手が向上する。
図30に基づいて第10実施例を説明する。本実施例では、第8実施例で述べた所定オブジェクトをユーザが作成する場合を説明する。管理サーバ40は、クライアントコンピュータ20から所定オブジェクトの生成指示を受領すると(S170)、その生成指示によって指定されたオブジェクトにユーザプロパティを設定する(S171)。例えば、ユーザが眼鏡や名刺のようなオブジェクトを指定すると、その指定されたオブジェクトに、そのユーザのユーザプロパティに設定されているキーワードが設定される。
管理サーバ40は、指定されたオブジェクトに所定オブジェクトである旨を示すフラグを設定する(S172)。本実施例のオブジェクト管理テーブルT30Cは、所定オブジェクトである旨を示すフラグ(情報)と、ユーザプロパティ(正確には、ユーザプロパティのキーワード)とを備える。そして、管理サーバ40は、作成された所定オブジェクトのデータをクライアントコンピュータ20に送信する(S173)。
なお、本発明は、上述した実施の形態に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。例えば、上述の各実施例を適宜組み合わせて使用することができる。
また、例えば、ユーザ管理テーブル、グループ管理テーブル、可視管理テーブル及びオブジェクト管理テーブルの構成は一例であって、他の構成のテーブルを用いて本発明を実現することもできる。
さらに、前記第1実施例では、検索条件に合致する各アバターのうち、クライアントコンピュータの画面に表示される範囲内のアバターのデータを送信する場合を例に挙げて説明した。これに代えて、画面の表示範囲よりも所定サイズだけ大きい範囲内に存在するアバターのデータをクライアントコンピュータ20に送信してもよい。これにより、アバターが移動した場合でも、移動直後の仮想空間を速やかに表示させることができる。
なお、上述した実施形態を、例えば、「通信ネットワークを介して接続される複数のクライアントコンピュータに仮想空間を提供する仮想空間提供装置であって、前記仮想空間に配置される複数の表示対象をそれぞれ管理する表示対象管理部と、前記クライアントコンピュータから入力される検索条件に基づいて、前記各表示対象のうち前記仮想空間に表示させる所定の表示対象を抽出する可視制御部と、前記所定の表示対象に対応するデータを前記クライアントコンピュータに送信することにより、前記所定の表示対象のデータを前記クライアントコンピュータに描画させ、前記仮想空間に表示させる、データ送信部と、を備える仮想空間提供装置。」のように表現することもできる。
1:仮想空間提供装置、2:クライアント装置、3:仮想空間提供部、4:仮想空間管理部、4A:ログイン処理、4B:検索条件に応じた表示対象の抽出処理、4C:データ送信処理、5:管理用データベース、6:仮想空間用ビューワ、6A:通信部、6B:描画部、6C:操作部、6D:コミュニケーション部、6E:検索指示部、7:仮想空間、8:検索メニュー、8A:検索条件入力部、8B:検索実行ボタン、10:仮想空間提供装置、20:クライアントコンピュータ、30:仮想空間提供サーバ、31:通信処理部、40:管理サーバ、40A:演算処理装置、40B:メモリ、40C:補助記憶装置、41:ログイン等処理部、42:可視制御部、42A:表示対象抽出処理部、42B:表示対象決定処理部、43:表示対象データ送信部、44:ユーザ操作への対応処理部、45:ログ管理部、45A:ログデータ、50:データベース、52A:POS明細データ、52B:電子マネー利用データ、52C:ポイント利用データ、53:商品管理データベース、54:行動パターン判別テーブル、60:仮想空間用ビューワ、61:描画部、62:操作部、63:通信部、64:コミュニケーション部、65:検索指示部、70:仮想空間、80:検索メニュー、81:検索条件入力部、82:検索実行ボタン、83:検索結果表示部、84:所属グループ更新指示部、T10,T10A:ユーザ管理テーブル、T20:グループ管理テーブル、T30,T30A,T30B,T30C:オブジェクト管理テーブル、T40:可視管理テーブル。
Claims (15)
- 通信ネットワークを介して接続される複数のクライアントコンピュータに仮想空間を提供する仮想空間提供装置であって、
前記各クライアントコンピュータを利用する各ユーザを管理するユーザ管理部と、
前記クライアントコンピュータから入力される検索条件に基づいて、前記各ユーザのうち前記仮想空間に表示させる所定ユーザを抽出する可視制御部と、
少なくとも前記所定ユーザに対応するアバターのデータを前記クライアントコンピュータに送信することにより、前記所定ユーザのアバターを前記クライアントコンピュータに描画させ、前記仮想空間に前記所定ユーザのアバターを表示させる、データ送信部と、
を備える仮想空間提供装置。 - 予めグループ属性が設定される複数のグループによって前記各ユーザをグループ管理するグループ管理部をさらに備え、
前記可視制御部は、前記検索条件に基づいて前記グループ管理部を検索することにより、前記所定ユーザを抽出する、請求項1に記載の仮想空間提供装置。 - 可視制御部は、前記検索条件に合致する所定グループに、前記検索条件を指示したユーザを対応付けて、前記グループ管理部により管理させる、請求項2に記載の仮想空間提供装置。
- 前記可視制御部は、前記所定グループに属する各ユーザを前記所定ユーザとして抽出する、請求項3に記載の仮想空間提供装置。
- 前記クライアントコンピュータからのグループ更新要求に応じて、このグループ更新要求に係るユーザと前記グループ更新要求で指定されたグループとの対応付けを解除させるためのグループ更新部をさらに備える、請求項4に記載の仮想空間提供装置。
- 前記ユーザ管理部は、前記各ユーザ毎にユーザ属性を設定して管理しており、
前記可視制御部は、前記検索条件に基づいて前記ユーザ管理部を検索することにより、前記所定ユーザを抽出する、請求項1に記載の仮想空間提供装置。 - 前記各ユーザ毎に前記各ユーザ属性を決定して前記ユーザ管理部に設定させるためのユーザ属性設定部であって、前記各ユーザの現実世界における行動履歴または前記各ユーザの仮想空間における行動履歴に基づいて前記各ユーザ属性を決定するユーザ属性設定部を、さらに備える請求項6に記載の仮想空間提供装置。
- 前記仮想空間に配置される複数のオブジェクトのオブジェクトデータをそれぞれ管理するオブジェクト管理部をさらに備え、
前記可視制御部は、前記グループと前記オブジェクト管理部により管理される前記各オブジェクトとを対応付けて管理しており、前記検索条件に基づいて前記グループ管理部及び前記オブジェクト管理部をそれぞれ検索することにより、前記所定ユーザ及び前記仮想空間に表示させる所定オブジェクトをそれぞれ抽出し、かつ、
前記データ送信部は、前記所定ユーザに対応するアバターのデータと前記所定オブジェクトのオブジェクトデータとを、前記クライアントコンピュータに送信することにより、前記所定ユーザのアバター及び前記所定オブジェクトを前記クライアントコンピュータに描画させ、前記所定ユーザのアバター及び前記所定オブジェクトを前記仮想空間に表示させる、請求項2〜請求項5のいずれかに記載の仮想空間提供装置。 - 前記可視制御部は、前記仮想空間において所定範囲内に位置する前記所定のオブジェクトが複数存在する場合には、予め設定された選択基準に基づいて、前記各所定のオブジェクトのうちいずれか一つの所定のオブジェクトを選択する、請求項8に記載の仮想空間提供装置。
- 前記データ送信部は、前記所定ユーザに対応するアバターのデータのみを前記クライアントコンピュータに送信するようになっている、請求項1〜請求項7のいずれかに記載の仮想空間提供装置。
- 前記データ送信部は、前記所定ユーザに対応するアバターのデータと、所定の視認可能範囲内に位置する他のユーザのアバターのデータとを、前記クライアントコンピュータにそれぞれ送信するようになっており、かつ、
前記所定ユーザのアバターのデータには、前記クライアントコンピュータで描画させるための制御情報が対応付けられており、前記他のユーザのアバターのデータには、前記クライアントコンピュータで描画させないための他の制御情報が対応付けられている、請求項1〜請求項7のいずれかに記載の仮想空間提供装置。 - 前記グループ管理部により管理される前記グループと前記ユーザとの対応関係を変更させるための変更部であって、前記対応関係を変更可能なオブジェクトとして予め定義されている対応関係変更オブジェクトを前記ユーザが保持した場合に、その対応関係変更オブジェクトに予め設定されているグループと前記ユーザとを対応付けて前記グループ管理部により管理させる変更部を、さらに備える請求項1〜請求項7のいずれかに記載の仮想空間提供装置。
- 前記グループ管理部は、前記ユーザの保持するオブジェクトに設定されているグループを検出し、この検出されたグループと前記ユーザとを対応付けて管理する、請求項1〜請求項7のいずれかに記載の仮想空間提供装置。
- クライアントコンピュータに仮想空間を提供する方法であって、
前記クライアントコンピュータから前記仮想空間におけるユーザの位置を示すユーザ位置情報及び検索条件とをそれぞれ取得するステップと、
前記検索条件に合致する所定ユーザを検出するステップと、
検出された前記所定ユーザのうち所定の視認可能範囲内に位置する所定ユーザを検出するステップと、
前記所定範囲内に位置する前記所定ユーザに対応するアバターのデータを前記クライアントコンピュータに送信し、前記アバターを前記仮想空間に表示させるステップと、
をそれぞれ実行する仮想空間提供方法。 - 通信ネットワークを介してクライアントコンピュータに接続されるコンピュータに、
前記クライアントコンピュータに仮想空間を提供する仮想空間提供部と、
前記各クライアントコンピュータを利用する各ユーザを管理するユーザ管理部と、
前記クライアントコンピュータから入力される検索条件に基づいて、前記各ユーザのうち前記仮想空間に表示させる所定ユーザを抽出する可視制御部と、
少なくとも前記所定ユーザに対応するアバターのデータを前記クライアントコンピュータに送信することにより、前記所定ユーザのアバターを前記クライアントコンピュータに描画させ、前記仮想空間に前記所定ユーザのアバターを表示させる、データ送信部と、
をそれぞれ実現させるためのコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008067963A JP2009223656A (ja) | 2008-03-17 | 2008-03-17 | 仮想空間提供装置、仮想空間提供システム、仮想空間提供方法及びコンピュータプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008067963A JP2009223656A (ja) | 2008-03-17 | 2008-03-17 | 仮想空間提供装置、仮想空間提供システム、仮想空間提供方法及びコンピュータプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009223656A true JP2009223656A (ja) | 2009-10-01 |
Family
ID=41240353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008067963A Pending JP2009223656A (ja) | 2008-03-17 | 2008-03-17 | 仮想空間提供装置、仮想空間提供システム、仮想空間提供方法及びコンピュータプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009223656A (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011083508A (ja) * | 2009-10-19 | 2011-04-28 | Smile-Lab Co Ltd | ビデオゲーム制御サーバ、ビデオゲーム制御方法、およびビデオゲーム制御プログラム |
JP2013020389A (ja) * | 2011-07-08 | 2013-01-31 | Dowango:Kk | 会場設置ディスプレイシステム |
JP2014199610A (ja) * | 2013-03-29 | 2014-10-23 | 株式会社コナミデジタルエンタテインメント | アプリケーション制御プログラム、アプリケーション制御方法、アプリケーション制御装置 |
WO2015194339A1 (ja) * | 2014-06-17 | 2015-12-23 | 株式会社ディー・エヌ・エー | 音声チャット管理装置及び方法 |
JP5872723B1 (ja) * | 2015-04-30 | 2016-03-01 | 株式会社famitalk | グループ構成員がそれぞれ情報端末を用いて精神的交流をするためのクラウドサービスにおける愛玩アバターの登場 |
JP2018089230A (ja) * | 2016-12-06 | 2018-06-14 | 株式会社コロプラ | 情報処理方法、装置、および当該情報処理方法をコンピュータに実行させるためのプログラム |
US10238968B2 (en) | 2016-12-06 | 2019-03-26 | Colopl, Inc. | Information processing method, apparatus, and system for executing the information processing method |
-
2008
- 2008-03-17 JP JP2008067963A patent/JP2009223656A/ja active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011083508A (ja) * | 2009-10-19 | 2011-04-28 | Smile-Lab Co Ltd | ビデオゲーム制御サーバ、ビデオゲーム制御方法、およびビデオゲーム制御プログラム |
JP2013020389A (ja) * | 2011-07-08 | 2013-01-31 | Dowango:Kk | 会場設置ディスプレイシステム |
JP2014199610A (ja) * | 2013-03-29 | 2014-10-23 | 株式会社コナミデジタルエンタテインメント | アプリケーション制御プログラム、アプリケーション制御方法、アプリケーション制御装置 |
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 |
JP5872723B1 (ja) * | 2015-04-30 | 2016-03-01 | 株式会社famitalk | グループ構成員がそれぞれ情報端末を用いて精神的交流をするためのクラウドサービスにおける愛玩アバターの登場 |
WO2016174967A1 (ja) * | 2015-04-30 | 2016-11-03 | 株式会社famitalk | グループ構成員がそれぞれ情報端末を用いて精神的交流をするためのクラウドサービスにおける愛玩アバターの登場 |
JP2018089230A (ja) * | 2016-12-06 | 2018-06-14 | 株式会社コロプラ | 情報処理方法、装置、および当該情報処理方法をコンピュータに実行させるためのプログラム |
US10238968B2 (en) | 2016-12-06 | 2019-03-26 | Colopl, Inc. | Information processing method, apparatus, and system for executing the information processing method |
US10894211B2 (en) | 2016-12-06 | 2021-01-19 | Colopl, Inc. | Information processing method, apparatus, and system for executing the information processing method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200183966A1 (en) | Creating Real-Time Association Interaction Throughout Digital Media | |
JP6220452B2 (ja) | オブジェクトベースのコンテキストメニューの制御 | |
US11425213B2 (en) | System and method for modifying a preference | |
CA2779448C (en) | Social browsing | |
US20170154040A1 (en) | Systems and methods for an expert-informed information acquisition engine utilizing an adaptive torrent-based heterogeneous network solution | |
JP4473339B1 (ja) | 広告情報提供サーバ、広告情報提供システム、及び広告情報提供プログラム | |
US20160034169A1 (en) | Content visualization | |
JP6212013B2 (ja) | 商品推奨装置及び商品推奨方法 | |
US20140108954A1 (en) | Peer-to-peer access of personalized profiles using content intermediary | |
US20100070501A1 (en) | Enhancing and storing data for recall and use using user feedback | |
US20140280015A1 (en) | Serving advertisements for search preview based on user intents | |
US10417206B2 (en) | Method and system for associating data from different sources to generate a person-centric space | |
JP2009223656A (ja) | 仮想空間提供装置、仮想空間提供システム、仮想空間提供方法及びコンピュータプログラム | |
JP5752070B2 (ja) | 関連情報表示システム、関連情報表示制御装置、端末装置、プログラム、及び関連情報表示方法 | |
JP2007200099A (ja) | アイテム選択支援装置、方法およびプログラム | |
US20130321451A1 (en) | Information processing system, computer readable medium, information processing device, and display method | |
JP4958456B2 (ja) | 画面の表示方法 | |
US20130066822A1 (en) | Promoting content | |
US20130151518A1 (en) | Graphical objects bonding society system and method of operation for a game | |
US20130326382A1 (en) | Information processing system, storing medium, information processing device, and display method | |
JP2013250899A (ja) | 情報処理プログラム、情報処理装置、情報処理システムおよびコンテンツ推薦方法 | |
US10379708B2 (en) | Graphical user interface for a common interest social network | |
Grosser | How the technological design of Facebook homogenizes identity and limits personal representation | |
JP5102662B2 (ja) | 仮想空間提供装置、仮想空間提供システム、仮想空間提供方法及びコンピュータプログラム | |
KR20100052795A (ko) | 정보와 사람을 매개로 한 커뮤니티 운영방법 및 그 장치 |