JP2005141638A - 情報処理装置および方法、並びに、コンピュータプログラムおよび記録媒体 - Google Patents
情報処理装置および方法、並びに、コンピュータプログラムおよび記録媒体 Download PDFInfo
- Publication number
- JP2005141638A JP2005141638A JP2003379797A JP2003379797A JP2005141638A JP 2005141638 A JP2005141638 A JP 2005141638A JP 2003379797 A JP2003379797 A JP 2003379797A JP 2003379797 A JP2003379797 A JP 2003379797A JP 2005141638 A JP2005141638 A JP 2005141638A
- Authority
- JP
- Japan
- Prior art keywords
- item
- virtual
- user
- module
- information
- 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.)
- Withdrawn
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
【課題】記憶容量の無駄を防止する。
【解決手段】 携帯型ユーザ端末1は、インタネット6を介してダウンロードサーバ16と接続している。携帯型ユーザ端末1は、仮想アイテムのモジュールを実行することによって、その仮想アイテムで構成される仮想世界を表示する。携帯型ユーザ端末1は、仮想世界を表示するときに、仮想アイテムのモジュールがインストールされているかどうかを確認する。携帯型ユーザ端末1は、表示しようとする仮想アイテムのモジュールがインストールされていないとき、インタネット6を介して、ダウンロードサーバ16に接続し、そのモジュールをダウンロードしてインストールする。本発明は、例えば、仮想世界を表示するビューア等に適用できる。
【選択図】図2
【解決手段】 携帯型ユーザ端末1は、インタネット6を介してダウンロードサーバ16と接続している。携帯型ユーザ端末1は、仮想アイテムのモジュールを実行することによって、その仮想アイテムで構成される仮想世界を表示する。携帯型ユーザ端末1は、仮想世界を表示するときに、仮想アイテムのモジュールがインストールされているかどうかを確認する。携帯型ユーザ端末1は、表示しようとする仮想アイテムのモジュールがインストールされていないとき、インタネット6を介して、ダウンロードサーバ16に接続し、そのモジュールをダウンロードしてインストールする。本発明は、例えば、仮想世界を表示するビューア等に適用できる。
【選択図】図2
Description
本発明は、情報処理装置および方法、並びに、コンピュータプログラムおよび記録媒体に関し、特に、例えば、仮想世界(仮想空間)を表示するときに、その表示に必要なモジュール(プログラム)だけをインストールすることができるようにする情報処理装置および方法、並びに、コンピュータプログラムおよび記録媒体に関する。
例えば、インタネットに代表されるコンピュータネットワーク上に構築された仮想世界に複数のユーザが同時に参加し、リアルタイムなコミュニケーションを実現する方法として、仮想世界に仮想宅を建築したり、他のユーザと共にゲームを進めることができるオンライン(ネットワーク)型ロールプレイングゲームがある。このようなゲームのソフトウェア(アプリケーション)としては、例えば、Ultima OnlineやEver Questなどがある。
ゲームにおいて使用されるアイテムに付随する機能を実現するすべてのモジュール(プログラム)は、一般に、ゲームのプログラムの初回のインストールのときに、コンピュータに組み込まれる(インストールされる)。また、新たなアイテムに付随する新たな機能を実現するモジュールは、例えば、アップデートモジュールという形で、WEBサーバ上などで公開され、ユーザは、そのアップデートモジュールをコンピュータにダウンロードし、例えば、インストール済みのプログラムに、いわゆるパッチをあてる形で組み込む。あるいは、アップデートモジュールは、例えば、ゲームのプログラムの起動時に、コンピュータが自動アップデート処理を実行することにより、コンピュータにダウンロードされてインストールされる。
図1は、従来のプログラムのインストール方法を説明する図である。
コンピュータであるユーザ端末に、例えば、ゲームのプログラムをインストールした場合、ユーザ端末には、ゲームにおいてまだユーザが取得していないアイテム(未取得アイテム)に付随する機能を実現するモジュールもインストールされる。図1では、5つの未取得アイテムA乃至Eのモジュールがインストールされている。但し、アイテムA乃至Eは、いずれも未取得アイテムであるため、それらの機能を実現するモジュールはすべて無効化されている。そして、ユーザがゲームを進めて、例えば、アイテムAを取得すると、図1に斜線を付して示すように、そのモジュールが有効化され、アイテムAの機能を使用することが可能となる。
また、ゲームの提供者において、新たなアイテムに付随する新たな機能を実現するアップデートモジュールがWEBサーバに公開された場合、ユーザは、そのアップデートモジュールをダウンロードして、ユーザ端末にインストールすることができる。アップデートモジュールのダウンロードおよびインストールは、手動でも、また、いわゆる自動アップデートによっても行うことができる。ここで、図1では、新たなアイテムF乃至Hに付随する機能を実現するアップデートモジュールがさらにインストールされている。但し、アイテムF乃至Hも、未取得アイテムであるため、それらの機能を実現するモジュール(アップデートモジュール)は、すべて無効化されている。そして、ユーザがゲームを進めて、例えば、アイテムHを取得すると、図1に斜線を付して示すように、そのモジュールが有効化され、アイテムHの機能を使用することが可能となる。
このように、ユーザは、ゲームの提供者側が提供するモジュールA乃至Hのすべてをユーザ端末にインストールすることとなる。
なお、上述のように、ユーザ端末にアイテムA乃至Hのモジュールをあらかじめインストールしておき、ユーザがアイテムを取得することによって、そのアイテムのモジュールを有効化する技術は、例えば、特許文献1に開示されている。
従来のプログラムのインストール(アップデート)では、ユーザによるアイテムの取得と、そのアイテムのモジュールのインストールとが同期していないため、即ち、ユーザがアイテムを取得することとは関係なく、種々のアイテムのモジュールがインストールされるため、ユーザ端末において、プログラム等のインストール先であるハードディスク等の記録媒体の記録領域が、実行されないモジュール(プログラム)によって、いわば無駄に占有される事態が生じていた。
また、ゲームの提供者においては、アップデートモジュールを提供する場合には、例えば、そのリリースをアナウンスして、ユーザに、ダウンロードとインストールを行ってもらう必要がある。アップデートモジュールのリリースが頻繁に行われることは、ユーザに煩雑さを感じさせることとなるため、ゲームの提供者は、追加が予想される多くの機能を実現するアップデートモジュールを用意しなければならず、その作業負担は大となる。
さらに、初回にインストールされるプログラムに、追加が予想される多くの機能を実現するモジュールを含めておく方法もあるが、この方法においても、ゲームの提供者(製作者)の負担は大となる。
そして、初回にインストールされるプログラムや、アップデートモジュールに多くの機能を含めておくことは、上述したように、そのプログラム等がインストールされる記録媒体の記録領域を、無駄に占有することになる。
そこで、例えば、ユーザが必要とするモジュールだけを、ユーザが選択して、ユーザ端末にダウンロードし、インストールする方法が考えられる。
即ち、例えば、WEBサーバ上において、所定の機能を実現するモジュールをアップロードし、その中からユーザそれぞれが必要なものを選択してもらって、ユーザ端末にダウンロード、インストールしてもらう方法が考えられる。
しかしながら、この方法では、ユーザは、WEBサーバ上に公開された多数のモジュールの中から、必要なものを探し出して選択しなければならず、ユーザの負担が大になる。
また、ユーザ端末にモジュールをダウンロードしてインストールした場合に、そのダウンロードおよびインストール(されたモジュール)によって、どのような機能(価値)が新たに追加されたのか、ユーザが即座に認識することができないことがあった。
本発明はこのような状況に鑑みてなされたものであり、モジュールを、そのモジュールが必要なときにインストールするとともに、そのインストールにより得られる機能をユーザが容易に認識することができるようにするものである。
本発明の情報処理装置は、物を象徴する仮想アイテムを少なくとも表示するモジュールによって、仮想世界を構成する仮想アイテムを表示させる表示制御手段と、仮想世界が表示されるときに、仮想世界を構成する仮想アイテムのモジュールがインストールされているかどうかを確認する確認手段と、仮想アイテムのモジュールがインストールされていないとき、ネットワークを介して、そのモジュールをダウンロードしてインストールするインストール手段とを備えることを特徴とする。
仮想アイテムのモジュールは、その仮想アイテムが象徴する物の機能も実現するものとすることができる。
仮想アイテムは、仮想アイテムの種別を表す識別子で特定される場合、インストール手段には、仮想アイテムの識別子に基づいて、その仮想アイテムのモジュールをダウンロードさせることができる。
本発明の情報処理方法は、物を象徴する仮想アイテムを少なくとも表示するモジュールによって、仮想世界を構成する仮想アイテムを表示させる表示制御ステップと、仮想世界が表示されるときに、仮想世界を構成する仮想アイテムのモジュールがインストールされているかどうかを確認する確認ステップと、仮想アイテムのモジュールがインストールされていないとき、ネットワークを介して、そのモジュールをダウンロードしてインストールするインストールステップとを含むことを特徴とする。
本発明のコンピュータプログラムは、物を象徴する仮想アイテムを少なくとも表示するモジュールによって、仮想世界を構成する仮想アイテムを表示させる表示制御ステップと、仮想世界が表示されるときに、仮想世界を構成する仮想アイテムのモジュールがインストールされているかどうかを確認する確認ステップと、仮想アイテムのモジュールがインストールされていないとき、ネットワークを介して、そのモジュールをダウンロードしてインストールするインストールステップとを含むことを特徴とする。
本発明の記録媒体は、物を象徴する仮想アイテムを少なくとも表示するモジュールによって、仮想世界を構成する仮想アイテムを表示させる表示制御ステップと、仮想世界が表示されるときに、仮想世界を構成する仮想アイテムのモジュールがインストールされているかどうかを確認する確認ステップと、仮想アイテムのモジュールがインストールされていないとき、ネットワークを介して、そのモジュールをダウンロードしてインストールするインストールステップとを含むことを特徴とするコンピュータプログラムが記録されている。
本発明によれば、物を象徴する仮想アイテムを少なくとも表示するモジュールによって、仮想世界を構成する仮想アイテムが表示される。また、仮想世界が表示されるときに、仮想世界を構成する仮想アイテムのモジュールがインストールされているかどうかが確認され、仮想アイテムのモジュールがインストールされていないとき、ネットワークを介して、そのモジュールがダウンロードされインストールされる。
本発明によれば、モジュールを、そのモジュールが必要なときにインストールすることができる。
また、本発明によれば、モジュールがインストールされることにより得られる機能をユーザが容易に認識することができる。
以下に本発明の最良の形態を説明するが、開示される発明と実施の形態との対応関係を例示すると、次のようになる。なお、本明細書中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
さらに、この記載は、明細書に記載されている発明のすべてを意味するものでもない。換言すれば、この記載は、明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割されたり、補正により出現し、追加される発明の存在を否定するものではない。
本発明によれば、情報処理装置が提供される。この情報処理装置は、
ネットワークに接続される情報処理装置において、
物を象徴する仮想アイテムを少なくとも表示するモジュールによって、仮想世界を構成する前記仮想アイテムを表示させる表示制御手段(例えば、図26のステップS157の処理)と、
前記仮想世界が表示されるときに、前記仮想世界を構成する前記仮想アイテムの前記モジュールがインストールされているかどうかを確認する確認手段(例えば、図26のステップS152の処理)と、
前記仮想アイテムの前記モジュールがインストールされていないとき、前記ネットワークを介して、そのモジュールをダウンロードしてインストールするインストール手段(例えば、図26のステップS154の処理)と
を備えることを特徴とする。
ネットワークに接続される情報処理装置において、
物を象徴する仮想アイテムを少なくとも表示するモジュールによって、仮想世界を構成する前記仮想アイテムを表示させる表示制御手段(例えば、図26のステップS157の処理)と、
前記仮想世界が表示されるときに、前記仮想世界を構成する前記仮想アイテムの前記モジュールがインストールされているかどうかを確認する確認手段(例えば、図26のステップS152の処理)と、
前記仮想アイテムの前記モジュールがインストールされていないとき、前記ネットワークを介して、そのモジュールをダウンロードしてインストールするインストール手段(例えば、図26のステップS154の処理)と
を備えることを特徴とする。
前記仮想アイテムの前記モジュールは、その仮想アイテムが象徴する物の機能も実現することができる。
前記仮想アイテムが、前記仮想アイテムの種別を表す識別子で特定される場合、前記インストール手段には、前記仮想アイテムの識別子に基づいて、その仮想アイテムのモジュールをダウンロードさせることができる。
本発明によれば、情報処理方法が提供される。この情報処理方法は、
ネットワークに接続される情報処理装置の情報処理方法において、
物を象徴する仮想アイテムを少なくとも表示するモジュールによって、仮想世界を構成する前記仮想アイテムを表示させる表示制御ステップ(例えば、図26のステップS157の処理)と、
前記仮想世界が表示されるときに、前記仮想世界を構成する前記仮想アイテムの前記モジュールがインストールされているかどうかを確認する確認ステップ(例えば、図26のステップS152の処理)と、
前記仮想アイテムの前記モジュールがインストールされていないとき、前記ネットワークを介して、そのモジュールをダウンロードしてインストールするインストールステップ(例えば、図26のステップS154の処理)と
を含むことを特徴とする。
ネットワークに接続される情報処理装置の情報処理方法において、
物を象徴する仮想アイテムを少なくとも表示するモジュールによって、仮想世界を構成する前記仮想アイテムを表示させる表示制御ステップ(例えば、図26のステップS157の処理)と、
前記仮想世界が表示されるときに、前記仮想世界を構成する前記仮想アイテムの前記モジュールがインストールされているかどうかを確認する確認ステップ(例えば、図26のステップS152の処理)と、
前記仮想アイテムの前記モジュールがインストールされていないとき、前記ネットワークを介して、そのモジュールをダウンロードしてインストールするインストールステップ(例えば、図26のステップS154の処理)と
を含むことを特徴とする。
本発明によれば、コンピュータプログラムが提供される。このコンピュータプログラムは、
ネットワークに接続されるコンピュータに実行させるコンピュータプログラムにおいて、
物を象徴する仮想アイテムを少なくとも表示するモジュールによって、仮想世界を構成する前記仮想アイテムを表示させる表示制御ステップ(例えば、図26のステップS157の処理)と、
前記仮想世界が表示されるときに、前記仮想世界を構成する前記仮想アイテムの前記モジュールがインストールされているかどうかを確認する確認ステップ(例えば、図26のステップS152の処理)と、
前記仮想アイテムの前記モジュールがインストールされていないとき、前記ネットワークを介して、そのモジュールをダウンロードしてインストールするインストールステップ(例えば、図26のステップS154の処理)と
を含むことを特徴とする。
ネットワークに接続されるコンピュータに実行させるコンピュータプログラムにおいて、
物を象徴する仮想アイテムを少なくとも表示するモジュールによって、仮想世界を構成する前記仮想アイテムを表示させる表示制御ステップ(例えば、図26のステップS157の処理)と、
前記仮想世界が表示されるときに、前記仮想世界を構成する前記仮想アイテムの前記モジュールがインストールされているかどうかを確認する確認ステップ(例えば、図26のステップS152の処理)と、
前記仮想アイテムの前記モジュールがインストールされていないとき、前記ネットワークを介して、そのモジュールをダウンロードしてインストールするインストールステップ(例えば、図26のステップS154の処理)と
を含むことを特徴とする。
このコンピュータプログラムは、記録媒体に記録することができる。
以下、本発明を適用した仮想空間操作システムについて、図面を参照して説明する。
この仮想空間操作システムは、情報処理装置である携帯型ユーザ端末の画面に、ユーザ専用の仮想的な空間(以下、仮想宅、または仮想部屋と記述する)をCG(Computer Graphic)として表示させることができ、仮想宅内に設けられるパーソナルコンピュータアイテムやテレビジョン受像機アイテム等を操作することにより、ユーザの住居に実在するホームネットワークに接続されたパーソナルコンピュータ(以下、PCと記述する)、テレビジョン受像機(以下、TVと記述する)、オーディオ機器等の各種電子機器を制御できるようにするものである。
また、仮想空間遠隔操作システムは、他のユーザ専用の仮想宅に訪問したり、他のユーザとリアルタイムにメッセージを交換したり、他のユーザとアイテムの交換を行ったり、同一の仮想宅を共用している複数のユーザ間でコンテンツデータ(楽曲などのオーディオデータ、静止画または動画のビデオデータ、プログラムデータ等)を共用したりすることを実現するものである。
図2は、本発明を適用した仮想空間遠隔操作システムの第1実施の形態の構成例を示している。この仮想空間遠隔操作システムは、ユーザ側の機器とサービス提供者側の機器に分類できる。
はじめに、ユーザ側の機器について説明する。携帯型ユーザ端末1は、例えば、PC、PDA(Personal Digital Assistant)、携帯電話機などから成り、内蔵されたCPU31(Central Processing Unit)が仮想宅ビューアプログラム51を実行する(図5にて後述する)ことにより、基地局5および公共性があるネットワークとしてのインタネット6を介して任意のサーバ等に接続し、以下に述べる動作を実現する。
ユーザAによって使用される携帯型ユーザ端末1は、ユーザID(Identification)およびパスワードを、基地局5およびインタネット6を介して、サービス提供者側のデータベースサーバ15に送信して接続する。携帯型ユーザ端末1は、データベースサーバ15から、ユーザAが操作して要求した、ユーザAの仮想宅の情報やサービス提供者側が提供する仮想世界の公共施設の情報等を受信し、その情報に基づいて仮想世界の画像を画面上に表示する。仮想宅の画像には、ユーザAの住居(以下、ユーザA宅と記述する)に実在するPC12やTV13それぞれに対応するPCアイテムやTVアイテムが表示される。
携帯型ユーザ端末1は、画面上に表示される仮想宅のPCアイテムやTVアイテムに対するユーザAの操作に対応し、基地局5およびインタネット6を介して、ユーザA宅の宅内ネットワーク2を構成するホームサーバ11に接続し、認証処理が行われた後、宅内ネットワーク2に接続されたPC12やTV13を制御するための制御信号を送信することができる。
さらに、携帯型ユーザ端末1は、ホームサーバ11を制御して、PC12に保持されているコンテンツデータを、インタネット6を介して取得することができる。
ユーザAの住居には、ホームサーバ11を中心とする宅内ネットワーク2が設けられている。
ホームサーバ11は、グローバルIP(Internet Protocol)アドレスを有している。したがって、ホームサーバ11に対して、携帯型ユーザ端末1などがインタネット6を介してアクセスすることができる。ホームサーバ11には、ユーザAに固有のユーザIDおよびパスワード、並びにユーザAが使用する携帯型ユーザ端末1に固有の機器IDおよびパスワードが登録されており、インタネット6を介してアクセスが発生した場合、認証処理を実行するようになされている。すなわち、ホームサーバ11は、ユーザAが予め機器IDおよびパスワードが登録されている携帯型ユーザ端末1を使用し、正確なユーザIDおよびパスワードを入力したときだけ、インタネット6を介する携帯型ユーザ端末1からのアクセスを許可するようになされている。
なお、ホームサーバ11に登録可能なユーザ端末の数を数台に制限したり、または、同一のユーザIDおよびパスワードによってアクセスが許可されるユーザ端末の数を1台に制限したりすれば、不正なアクセスによりコンテンツが取得されてしまうことを抑止することができる。
また、上述したホームサーバ11が、アクセス発生時に実行する認証処理を、後述するデータベースサーバ15で代行してもかまわない。この場合、データベースサーバ15には、各ユーザ宅のホームサーバに対する不正なアクセスに利用されたユーザIDおよびパスワード、並びに機器IDおよびパスワードの情報を蓄積することができるので、不正なアクセスをより効果的に抑止することができる。また、一人のユーザが複数の宅内ネットワークを有している場合などにおいて、ユーザID、機器ID等の登録に要する手間を一度で済ませることができる。
ホームサーバ11は、携帯型ユーザ端末1からインタネット6を介して送信された、宅内ネットワーク2のPC12やTV13を制御するための制御信号を受信し、UPnP(Universal Plug and Play)等のミドルウェアを実行することにより、PC12やTV13を制御するための制御信号を、データバス14を介してPC12やTV13に中継する。
また、ホームサーバ11は、携帯型ユーザ端末1からの要求に対応し、例えば、PC12に保持されているコンテンツデータを、インタネット6を介して携帯型ユーザ端末1に送信する。
ユーザA宅のPC12は、携帯型ユーザ端末1と同様に、インタネット6を介して、サービス提供者側のデータベースサーバ15に接続し、ユーザAの仮想宅の情報やサービス提供者側が提供する仮想世界の公共施設の情報等を取得して、その情報に基づいて仮想世界の画像を画面上に表示する。また、PC12は、表示される仮想宅のTVアイテム等に対するユーザの操作に対応して、ホームサーバ11に接続されているTV13等を制御するための制御信号をデータパス上に送信する。
ユーザAは、携帯型ユーザ端末1の他、例えば、ユーザAの会社などに設置された、携帯型ユーザ端末1とは別のPC3を操作して仮想世界にアクセスすることができる。
ユーザAは、PC3から、携帯型ユーザ端末1と同一のユーザAのユーザIDおよびパスワードを、インタネット6を介してデータベースサーバ15に送信する。データベースサーバ15は、PC3からのユーザAのユーザIDとパスワードとに基づいて、ユーザAからのアクセスであることを認識し、PC3にユーザAの仮想宅の情報などを送信する。PC3は、データベースサーバ15からのユーザAの仮想宅の情報などを受信し、その仮想宅の情報を反映させた仮想宅を画面に表示する。即ち、ユーザAは、PC3を操作して、携帯型ユーザ端末1と同様に、仮想世界に参加し、他のユーザ専用の仮想宅に訪問したり、他のユーザとリアルタイムにメッセージを交換したり、他のユーザとアイテムの交換を行ったり、同一の仮想宅を共有したりすることができる。また、PC3は、携帯型ユーザ端末1と同様にして、ホームサーバ11にアクセスするもできる。
ユーザBによって使用されるPC4は、携帯型ユーザ端末1と同様に、インタネット6を介して、サービス提供者側のデータベースサーバ15に接続し、サービス提供者側が提供するユーザBの仮想宅の情報や仮想世界の公共施設の情報に基づいて、ユーザBの仮想宅の画像等を画面上に表示する。また、PC4は、ユーザB宅の宅内ネットワークに接続して、ユーザBの仮想宅に表示されるPCアイテムやTVアイテムに対するユーザBの操作に対応し、インタネット6を介して、ユーザB宅のホームサーバに接続されているPC(いずれも不図示)等を制御するための制御信号を送信する。
なお、ユーザ側の機器としては、ユーザAの携帯型ユーザ端末1や、PC3、PC12、ユーザBのPC4以外の携帯型ユーザ端末やPCが存在するが、それらの図示は省略する。
次にサービス提供者側の機器について説明する。サービス提供者側の機器は、データベースサーバ15、ダウンロードサーバ16、ユーザ端末間通信中継サーバ17、EPGサーバ18、オーディオサーバ19で構成されている。
データベースサーバ15は、インタネット6および基地局5を介して、携帯型ユーザ端末1、PC3、PC4、またはPC12の画面に、ユーザAやユーザBの仮想宅の情報や、仮想世界の公共施設等の情報を提供する。
ここで、仮想世界には、現実世界に存在する実際の物(実物)に対応する仮想的な物である仮想アイテムが存在する。仮想アイテムとしては、例えば、仮想的な時計や、カレンダ、PC(Personal Computer)、TV(Television)、その他の物があり、その物(実物)を象徴する画像で表現される。
また、仮想アイテムには、その仮想アイテムが象徴する実際の物が有する機能と同様の機能を持たせることができる。仮想アイテムの画像の表示や仮想アイテムの機能は、モジュール(プログラム)によって実現することができる。即ち、仮想アイテムのモジュールは、少なくとも、その仮想アイテム(の画像)を表示するのに必要なプログラムを含んでいる。そして、仮想アイテムのモジュールには、さらに、その仮想アイテムが象徴する物の機能を実現するのに必要なプログラムも含ませることができる。なお、ここでは、仮想アイテムの機能というときは、その仮想アイテムが象徴する物の機能と、その仮想アイテムを表示する機能を意味することとする。
ここで、以下、適宜、仮想アイテムを、単に、アイテムという。
データベースサーバ15は、仮想世界に参加するユーザの認証に用いられる情報を記憶する認証DB21、後述するサーバ側最新世代番号を記憶する世代番号DB22、仮想世界で用いられるアイテムに関するアイテム情報を、そのアイテムを所有しているユーザごとに分けて記憶するアイテム管理DB23、および仮想世界の公共施設の情報(公共施設のアイテムに関するアイテム情報)などを記憶する公的空間DB24を有している。
認証DB21は、ユーザそれぞれの認証情報を記憶しており、さらに、セッション情報を記憶する。認証情報は、ユーザ個人のユーザIDおよびパスワードを含んでいる。データベースサーバ15は、ログイン処理時、例えば、携帯型ユーザ端末1やPC3が送信するユーザAの認証情報を、認証DB21に記憶されているユーザAの認証情報と比較し、ユーザAを特定する認証処理を行なう。データベースサーバ15は、認証処理によりユーザAのアクセスであると認識した場合、ユーザAのセッション情報(以下、セッション情報Aと記載する)を生成し、生成したセッション情報Aを、ログインを要求してきた携帯型ユーザ端末1またはPC3へ送信する。また、データベースサーバ15は、生成したセッション情報Aを認証DB21に記憶する。一方、セッション情報Aを受信した携帯型ユーザ端末1またはPC3は、サービス提供者側にアクセスする場合、データベースサーバ15にセッション情報Aを送信する。データベースサーバ15は、セッション情報Aを受信し、セッション情報AからユーザAのアクセスであることを認識する。
世代管理DB22は、認証DB21に認証情報が記憶されているユーザそれぞれのサーバ側最新世代番号を記憶している。サーバ側最新世代番号とは、ユーザが仮想世界において所有するアイテムの更新回数を表す番号である。データベースサーバ15は、ユーザが仮想世界で所有しているアイテムが更新(追加、削除、変更)されると、そのユーザのサーバ側最新世代番号を1だけインクリメントする。即ち、例えば、後述するように、携帯型ユーザ端末1から、ユーザAのアイテムを更新した旨の通知があった場合や、ユーザAが新規アイテムを取得した場合などのアイテムの更新が生じた場合に、ユーザAのサーバ側最新世代番号は、データベースサーバ15によって1だけインクリメントされる。
アイテム管理DB23は、ユーザそれぞれが仮想世界で所有するアイテムのアイテム情報を記憶している。データベースサーバ15は、アイテム管理DB23に記憶されているアイテム情報を、必要に応じて、携帯型ユーザ端末1やPC3等に適宜送信する。また、データベースサーバ15は、必要に応じて、アイテム管理DB23のアイテム情報を更新する。
公的空間DB24は、サービス提供者側が提供する仮想世界の公共施設などの公共の情報、即ち、すべてのユーザに提供しうる情報(アイテムのアイテム情報)を記憶している。例えば、ユーザAが、携帯型ユーザ端末1を操作して、仮想宅の外などの仮想世界の公共施設に移動する要求をした場合、データベースサーバ15は、公的空間DB24に記憶している公共施設の情報などを、携帯型ユーザ端末1に送信する。
ダウンロードサーバ16は、例えば、アイテムのアイテムIDに対応付けて、そのアイテムのモジュールを記憶している。ダウンロードサーバ16は、例えば、携帯型ユーザ端末1から、基地局5およびインタネット6を介して、モジュールのダウンロードの要求があると、そのモジュールを、インタネット6および基地局5を介して携帯型ユーザ端末1に送信する。同様に、ダウンロードサーバ16は、例えば、PC3から、インタネット6を介して、モジュールのダウンロードの要求があると、そのモジュールを、インタネット6を介してPC3に送信する。
ユーザ端末間通信中継サーバ17は、仮想世界に参加する複数のユーザに関わる処理を実行する。例えば、ユーザ端末間通信中継サーバ17は、複数のユーザ間で行われるチャットを管理したり、あるユーザの仮想宅が複数のユーザによって共有されるときに生成されるカンファレンスの同期情報を管理したりする。ここで、カンファレンスの同期情報とは、仮想宅を共有する複数のユーザの集合(カンファレンス)に属するユーザ間で、ほぼリアルタイムに通信される各種データをいう。
EPG(Electronic Program Guide)サーバ18は、インタネット6を介して接続してきた携帯型ユーザ端末1などからの要求に対応して、テレビジョン放送番組の番組表および各番組の情報を含むEPG情報を供給する。
オーディオサーバ19は、いわゆる、インタネットラジオの放送サーバであり、インタネット6を介して接続してきた携帯型ユーザ端末1などからの要求に対応して、オーディオのストリームデータを供給する。
なお、サービス提供者側のサーバ(データベースサーバ15、ダウンロードサーバ16、ユーザ端末間中継サーバ17、EPGサーバ18、およびオーディオサーバ19)は、必ずしも、図示されたようにそれぞれ別個に設けなくてもよく、データベースサーバ15乃至オーディオサーバ19のうちのいくつかを、適宜、統合してもよい。
また、データベースサーバ15に設けたデータベース(認証DB21、世代管理DB22、アイテム管理DB23、公的空間DB24)は、必ずしも、図示されたように別個に設けなくてもよい。さらに、認証DB21や世代管理DB22等は、それぞれ別個のサーバに設けて管理することができる。
図3は、図2の世代管理DB22に記憶されている内容を説明するための図である。
世代管理DB22には、ユーザを一意に特定するためのユーザIDと、そのユーザのサーバ側最新世代番号とが対応付けられて記憶される。従って、データベースサーバ15は、任意のユーザのサーバ側最新世代番号を、そのユーザのユーザIDによって一意に特定することができる。即ち、例えば、データベースサーバ15は、ユーザAが携帯型ユーザ端末1からユーザAのユーザIDに基づいてアクセスした場合と、ユーザAがPC3からユーザAのユーザIDに基づいてアクセスした場合のいずれの場合も、同一のサーバ側最新世代番号を特定することができる。
データベースサーバ15は、例えば、ユーザのアイテムが更新された旨の情報を受信すると、そのユーザのユーザIDによって特定されるサーバ側最新世代番号を1だけインクリメントすることにより更新する。
図4は、図2のアイテム管理DB23に記憶されているアイテム情報を説明するための図である。
アイテム管理DB23には、ユーザそれぞれについて、ユーザが仮想世界で所有しているアイテムのアイテム情報が記憶される。即ち、アイテム管理DB23は、ユーザIDに対応付けて、そのユーザIDによって特定されるユーザが仮想世界で所有している仮想アイテムのアイテム情報を記憶する。なお、図4は、ある1つのユーザIDに対応付けられているアイテム情報を示している。
アイテム情報は、そのアイテム情報に対応付けられているユーザIDのユーザが仮想世界で所有しているアイテムについて、そのアイテムのアイテムID、そのアイテムのオブジェクトID、そのアイテムの世代番号、および、そのアイテムの付属情報が対応付けられて構成されている。
アイテムIDは、アイテムの種別を一意に特定するための識別子である。
ここで、例えば、アイテムが特定の机である場合、その机のアイテムを、複数のユーザそれぞれが所有していることや、同一のユーザが、その机のアイテムを複数所有していることがある。この複数のユーザそれぞれが所有している特定の机のアイテムや、同一のユーザが所有している複数の特定の机のアイテムには、いずれも、同一のアイテムIDが付されており、これらの区別は、後述するオブジェクトIDによって行われる。
なお、アイテムIDとしては、例えば、そのアイテムIDが表す種別のアイテムの機能を実行するモジュール(以下、適宜、アイテムのモジュールともいう)を特定する情報、即ち、例えば、そのアイテムのモジュールを提供する、インタネット6上のサイトのURL(Uniform Resource Locator)を含む情報などを採用することができる。
オブジェクトIDは、アイテムの実体を一意に特定するための識別子(オブジェクト識別子)である。ユーザが仮想世界で所有しているアイテムそれぞれには、アイテムを、その種別に関係なく区別するためのオブジェクトIDが付加されている。
即ち、例えば、ユーザAが、ある特定の机のアイテムを複数所有している場合、その複数のアイテムのアイテムIDは同一であるが、その複数のアイテムのアイテムそれぞれには、それらを個別に区別するために、ユニークなオブジェクトIDが付されている。
世代番号には、対応するオブジェクトIDで特定されるアイテムが更新された時点の、サーバ側最新世代番号が付される。
即ち、例えば、携帯型ユーザ端末1において、ユーザAが仮想世界で所有するアイテムに何らかの更新が生じると、その更新があった旨のイベント(以下、適宜、更新イベントという)が、携帯型ユーザ端末1からデータベースサーバ15に送信される。データベースサーバ15は、ユーザAの更新イベントを受信すると、ユーザAのユーザIDに対応付けられているサーバ側最新世代番号を1だけインクリメントし、さらに、ユーザAのユーザIDに対応付けられているアイテム管理DB23のアイテム情報のうちの、更新イベントによって更新が報知されたアイテムのものを更新する。そして、データベースサーバ15は、その更新したアイテム情報における世代番号を、サーバ側最新世代番号に更新する。
なお、上述のように、サーバ側最新世代番号は、データベースサーバ15によってインクリメントされるため、アイテム情報の世代番号は、そのアイテム情報に対応するアイテムが更新された時期が新しいほど、大きな値となる。従って、データベースサーバ15は、アイテム情報の世代番号から、アイテムが更新された順番を認識することができる。
付属情報には、対応するオブジェクトIDで特定されるアイテムのいわば付随的な情報が登録される。アイテムの付随的な情報としては、例えば、アイテムが設置されている位置や、ステータス等がある。なお、付属情報には、その他、例えば、対応するアイテムのモジュールを提供するサーバの情報などを含ませることができる。
データベースサーバ15は、図3の世代管理DB22と図4のアイテム管理DB23とを用いて、各ユーザが仮想世界で所有するアイテムを管理する。
即ち、例えば、データベースサーバ15は、ユーザAが所有するアイテムが携帯型ユーザ端末1で更新され、その更新を通知する更新イベントを、携帯型ユーザ端末1から受信した場合、ユーザAのサーバ側最新世代番号を1だけインクリメントする。また、データベースサーバ15は、更新イベントによって更新が通知されたアイテムのアイテム情報の世代番号を、サーバ側最新世代番号に置き換える(更新する)。さらに、データベースサーバ15は、携帯型ユーザ端末1からの更新イベントに基づいて、更新が通知されたアイテムの付属情報を更新する。
同様に、例えば、データベースサーバ15は、ユーザAが所有するアイテムが携帯型ユーザ端末1とは別のPC3で更新され、その更新を通知する更新イベントを、PC3から受信した場合、ユーザAのサーバ側最新世代番号を1だけインクリメントする。また、データベースサーバ15は、更新イベントによって更新が通知されたアイテムのアイテム情報の世代番号を、サーバ側最新世代番号に置き換える(更新する)。さらに、データベースサーバ15は、PC3からの更新イベントに基づいて、更新が通知されたアイテムの付属情報を更新する。
従って、データベースサーバ15は、ユーザAが携帯型ユーザ端末1およびPC3のいずれを操作して、ユーザAが仮想世界で所有するアイテムを更新しても、世代管理DB22に登録されているユーザAのサーバ側最新世代番号、およびアイテム管理DBに登録されているユーザAのアイテム情報を更新することができる。
図5は、図2の携帯型ユーザ端末1の構成例を示している。
携帯型ユーザ端末1は、CPU31を内蔵している。CPU31にはバス34を介して、入出力インタフェース35が接続されている。バス34には、ROM(Read Only Memory)32およびRAM(Random Access Memory)33が接続されている。
入出力インタフェース35には、音声などを出力する出力部36、ユーザAが操作してコマンドを入力するキーボード、タッチパネルなどの入力デバイスよりなる操作入力部37、仮想宅などの画像を表示するCRT(Cathode Ray Tube)またはLCD(Liquid Crystal Display)等よりなる表示部38、各種のプログラムおよび各種のデータを記憶するハードディスクドライブなどよりなる記憶部39、並びに基地局5およびインタネット6を介して通信を行う通信部40が接続されている。また、入出力インタフェース35には、磁気ディスク42、光ディスク43、光磁気ディスク44、および半導体メモリ45などの記録媒体に対してデータを読み書きするドライブ41が接続されている。
記憶部39に記憶されている各種プログラムには、例えば、図5では、既にRAM33にロードされている仮想宅ビューアプログラム51、さらには、ユーザAが仮想世界で所有するアイテムの機能を実現するモジュールのうち、携帯型ユーザ端末1にすでにインストールされているモジュール(プログラム)などがある。
CPU31は、例えば、記憶部39にすでに記憶されている仮想宅ビューアプログラム51、並びに、仮想宅ビューアプログラム51に付随するアイテム管理ファイル52、および端末最新世代番号53を読み出して、RAM33にロードする。さらに、CPU31は、RAM33にロードされた仮想宅ビューアプログラム51を実行することにより、表示部38にユーザAの仮想宅等を表示させる仮想宅ビューア54を実現する。
仮想宅ビューア54は、サービス提供装置(データベースサーバ15、ダウンロードサーバ16、ユーザ端末間中継サーバ17、EPGサーバ18、オーディオサーバ19)が提供する仮想世界の情報を処理する。また、仮想宅ビューア54は、ユーザAが携帯型ユーザ端末1を操作して要求した情報に基づき、サービス提供装置にユーザAの要求を送信する。
また、仮想宅ビューア54は、アイテム管理ファイル52と、データベースサーバ15によって提供される、アイテム管理DB23に記憶されているアイテム情報に基づき、必要に応じて、ダウンロードサーバ16からモジュールをダウンロードし、記憶部39にインストールする。
ここで、仮想宅ビューア54は、記憶部39に記憶(インストール)されているアイテムのモジュールを実行することにより、携帯型ユーザ端末1の画面に、ユーザAの仮想宅を表示させる。
なお、アイテム管理ファイル52および端末最新世代番号53については、後述する。
図6は、図5の携帯型ユーザ端末1のRAM33にロードされているアイテム管理ファイル52を説明するための図である。
アイテム管理ファイル52には、ユーザAが携帯型ユーザ端末1において、最後にアイテムを更新したときの、ユーザAの仮想宅のアイテムそれぞれのアイテム情報が登録されている。アイテム情報は、アイテム管理DB23のアイテム情報と同一のフォーマットであり、アイテムのアイテムID、そのアイテムのオブジェクトID、そのアイテムの世代番号、および、そのアイテムの付属情報が対応付けられて構成されている。
アイテム管理ファイル52には、データベースサーバ15から送信されてくるアイテム情報が登録される。また、ユーザAの仮想宅のアイテムは、付属情報に基づいて表示される。
なお、図5の携帯型ユーザ端末1のRAM33に記憶されている端末最新世代番号53には、携帯型ユーザ端末1がデータベースサーバ15にアクセスしたときにデータベースサーバ15から携帯型ユーザ端末1に送信されてくるユーザAのサーバ側最新世代番号がセット(コピー)される。後述するように、データベースサーバ15の世代管理DB22に記憶されているユーザAのサーバ側最新世代番号と、携帯型ユーザ端末1の端末最新世代番号53とを比較することにより、データベースサーバ15のアイテム管理DB23に記憶されているユーザAのアイテム情報と、携帯型ユーザ端末1のアイテム管理ファイル52に記述されているアイテム情報との一致性、即ち、アイテム管理ファイル52に記述されているアイテム情報が、アイテム管理DB23に記憶されているユーザAのアイテム情報と同一であるか否かを判定することができる。
図7は、図2のPC12の構成例を示している。PC12は、CPU61を内蔵している。CPU61にはバス64を介して、入出力インタフェース65が接続されている。バス64には、ROM62およびRAM63が接続されている。
入出力インタフェース65には、音声などを出力する出力部66、ユーザAが操作してコマンドを入力するキーボード、マウスなどの入力デバイスよりなる操作入力部67、仮想宅などの画像を表示するCRTまたはLCD等よりなる表示部68、各種のプログラムおよび各種のデータを収納するハードディスクドライブなどよりなる記憶部69、並びにホームサーバ11との通信や、ホームサーバ11およびインタネット6を介するサービス提供者側の機器と通信を行う通信部70が接続されている。
また、入出力インタフェース65には、磁気ディスク74、光ディスク75、光磁気ディスク76、および半導体メモリ77などの記録媒体に対してデータを読み書きするドライブ73、並びに、テレビジョン放送等のAV(Audio- Visual)信号をエンコードし、またデコードするビデオエンコーダ/デコーダ71が接続されている。ビデオエンコーダ/デコーダ71には、テレビジョン放送を受信するチューナ72が内蔵されている。
CPU61は、例えば、記憶部69にすでに記憶されている仮想宅ビューアプログラム81(さらには、必要に応じて、図示せぬ端末最新世代番号、およびアイテム管理ファイル)、HDDビデオレコーダプログラム82、オーディオデータ配信サービスプログラム83、および写真データ配信サービスプログラム84をRAM63にロードする。さらに、CPU61は、記憶部69からRAM63にロードされた仮想宅ビューアプログラム81、ハードディスク(HDD)ビデオレコーダプログラム82、オーディオデータ配信サービスプログラム83、写真データ配信サービスプログラム84をそれぞれ実行する。
図8は、図7のRAM63にロードされた各アプリケーション(仮想宅ビューアプログラム81、HDDビデオレコーダプログラム82、オーディオデータ配信サービスプログラム83、および写真データ配信サービスプログラム84)を実行することにより提供される機能を示している。
仮想宅ビューア91は、仮想宅ビューアプログラム81が実行されることにより、その機能が実現される。
仮想宅ビューア91は、仮想宅内のTVアイテムなどに対するユーザAの操作に対応して、TV13などを制御するための制御信号を、ホームサーバ11に出力する。さらに、仮想宅ビューア91は、後述するオーディオデータ配信サービス93と同様に、配信されるオーディオデータの音声を再生することができる。
HDD(Hard Disk Drive)ビデオレコーダ92は、HDDビデオレコーダプログラム82が実行されることによりその機能が実現される。HDDビデオレコーダ92は、ビデオエンコーダ/デコーダ71を制御して、テレビジョン放送等のAV信号をエンコードさせ、得られた符号化データを記憶部69に記憶させる。また、HDDビデオレコーダ92は、記憶部69から符号化データを読み出させてデコードさせ、そのデコードにより得られるAV信号の画像を表示部68に表示させ、音声を出力部66から出力させる。あるいは、HDDビデオレコーダ92は、AV信号を、データバス14を介してTV13に供給させる。
オーディオデータ配信サービス93は、オーディオデータ配信サービスプログラム83が実行されることによりその機能が実現される。オーディオデータ配信サービス93は、オーディオサーバ17などから取得したオーディオデータを再生し、対応する音声を出力部66から出力させる。
写真データ配信サービス94は、写真データ配信サービスプログラム84が実行されることによりその機能が実現される。写真データ配信サービス94は、例えば、記憶部69に記憶されている画像データの画像を表示部68に表示させたり、複数の画像データのサムネイル画像(縮小画像)の一覧を表示部68に表示させたりする。
図9は、図2のPC3の構成例を示している。
図9において、CPU231乃至半導体メモリ245、および仮想宅ビューアプログラム251乃至仮想宅ビューア254は、図5のCPU31乃至半導体メモリ45、および仮想宅ビューアプログラム51乃至仮想宅ビューア54とそれぞれ同様に構成されるため、その説明は省略する。
但し、図9のPC3におけるアイテム管理ファイル252と端末最新世代番号253は、図5の携帯型ユーザ端末1におけるアイテム管理ファイル52と端末最新世代番号253と同一ではない場合がある。
なお、ユーザBによって操作されるPC4の構成例は、図5に示した携帯型ユーザ端末1の構成例、または図9に示したPC3の構成例と同様であるので、その説明は省略する。
また、ホームサーバ11、データベースサーバ15、およびダウンロードサーバ16も、図7に示したPC12等と同様に構成されるので、それぞれの構成例の説明は省略する。但し、ホームサーバ11、データベースサーバ15、およびダウンロードサーバ16には、PC12等とは異なるプログラムがインストールされており、それぞれに内蔵されるCPUがそのプログラムを実行することにより、後述する各種の処理を実行する。
なお、各プログラムは各種記憶媒体を用いて配布されてもよいし、インタネット6等のネットワークを介して配布されてもよい。
図10は、図2の携帯型ユーザ端末1におけるプログラム(モジュール)のインストール方法を説明する図である。
例えば、ユーザAがコンピュータである携帯型ユーザ端末1の記憶部39に、仮想世界の提供を受けるためのプログラムである仮想宅ビューアプログラム51をインストールした場合、携帯型ユーザ端末1には、例えば、仮想世界に仮想宅を所有するためのアプリケーション(モジュール)のみがインストールされ、付属的なアイテムのモジュールは、一切インストールされない。
ユーザAが携帯型ユーザ端末1を操作して仮想宅ビューアプログラム51を実行した場合、携帯型ユーザ端末1においては、仮想宅を表示させるための仮想宅ビューア54の機能が実現される。
仮想宅ビューア54は、携帯型ユーザ端末1の画面に仮想宅を表示させる場合、実際(現実世界)の物を象徴する(仮想)アイテムを表示するモジュールを実行する。即ち、例えば、仮想宅ビューア54は、携帯型ユーザ端末1の画面に仮想部屋を表示させる場合、仮想部屋を構成する仮想的な壁や、床、ドア、窓などのアイテムのモジュールを実行することによって、それらのアイテムから構成される仮想部屋を表示する。また、例えば、仮想宅ビューア54は、仮想部屋に、仮想的な時計である時計アイテムが存在する場合、時計アイテムのモジュールを実行することによって、仮想部屋に時計アイテムを表示する。このように、仮想宅ビューア54は、仮想アイテムのモジュールを実行して、携帯型ユーザ端末1の画面に仮想部屋を表示させる。仮想宅ビューア54は、これらモジュールを、記憶部39から読み出して実行する。
しかしながら、例えば、仮想宅ビューア54が、あるアイテムAを表示しようとするとき、アイテムAのモジュールAが記憶部39にインストールされていない場合がある。例えば、ユーザAが初回に仮想宅ビューアプログラム51を実行した場合には、仮想部屋を構成するアイテムのモジュールがまだ記憶部39にインストールされていない。仮想宅ビューア54は、アイテムAを表示しようとするとき、アイテムAのモジュールAが記憶部39にインストールされているかどうかを確認する。そして、仮想宅ビューア54は、アイテムAを表示するためのモジュールAがインストールされていない場合には、インタネット6を介してモジュールAをダウンロードする。さらに、仮想宅ビューア54は、モジュールAを記憶部39にインストールし、モジュールAを実行してアイテムAを表示させる。なお、すでにモジュールAがインストールされている場合には、仮想宅ビューア54は、記憶部39にインストールされているモジュールAを実行することによって、アイテムAを表示する。
その後、仮想宅ビューア54が、例えば、アイテムHを追加して表示しようとするときに、アイテムHのモジュールHが記憶部39にインストールされていないことがある。即ち、例えば、ユーザAが仮想世界で他のユーザからアイテムの譲渡を受けた場合など、ユーザAが仮想世界で仮想アイテムを追加する操作をした場合には、その仮想アイテムのモジュールがまだ記憶部39にインストールされていないことがある。仮想宅ビューア54は、アイテムHを表示しようとするときも、アイテムHのモジュールが記憶部39にインストールされているかどうかを確認する。そして、仮想宅ビューア54は、アイテムHのモジュールHがまだインストールされていない場合には、インタネット6を介してモジュールHをダウンロードする。さらに、仮想宅ビューア54は、モジュールHを記憶部39にインストールして実行することにより、アイテムHを表示させる。なお、すでにモジュールHがインストールされている場合には、仮想宅ビューア54は、記憶部39にインストールされているモジュールHを実行することによりアイテムHを表示する。
なお、アイテムのモジュールは、そのアイテムが象徴する物の機能も実現する。例えば、時計アイテムを表示するモジュールは、時計の画像を表示する機能と、時刻を計時する機能とを実現する。従って、仮想宅ビューア54が時計アイテムのモジュールを実行することにより、ユーザAの仮想部屋に時計の機能が追加される。即ち、仮想部屋には、時計アイテム(画像)が表示されるが、その画像としては、実際の時刻を計時している時計の画像が表示される。
以上のように、仮想宅ビューア54は、携帯型ユーザ端末1の画面にアイテムを表示するときに、そのアイテムのモジュールが記憶部39にインストールされているかどうかを確認する。そして、仮想宅ビューア54は、表示しようとしているアイテムの中に、モジュールがインストールされていないアイテムがある場合、インタネット6を介してそのアイテムのモジュールをダウンロードし、記憶部39にインストールする。従って、ユーザAがアイテムを取得すること(携帯型ユーザ端末1の画面にアイテムが表示されること)と、そのアイテムのモジュールをダウンロードしてインストールすることとが連動して行われる。そのため、ユーザは、携帯型ユーザ端末1の画面に表示されたアイテムの画像から、追加された機能を容易に認識することができる。さらに、携帯型ユーザ端末1の記憶部39の記憶領域が無駄に占有されることを防止することができる。
なお、図2のPC3等においても、携帯型ユーザ端末1の場合と同様のプログラムのインストール方法で、記憶部239にモジュールが追加される。
次に、携帯型ユーザ端末1のCPU31がRAM33にロードされた仮想宅ビューアプログラム51を実行したときに行われる一連の処理について説明する。
図11は、仮想宅ビューアプログラム51を起動したときに、携帯型ユーザ端末1の画面に表示されるユーザAの仮想宅の外観の例を示している。
携帯型ユーザ端末1の画面上には、仮想宅ビューア54の仮想宅ビューアウィンドウ101が表示される。この仮想宅ビューアウィンドウ101の上部には、ウィンドウを閉じるとき押下される「終了」ボタン102、仮想宅ビューアウィンドウ101のサイズを最大化するとき、または仮想宅ビューアウィンドウ101のサイズを最大化の状態から元のサイズに戻すとき押下される「最大化」ボタン103、および仮想宅ビューアウィンドウ101を最小化するとき押下される「最小化」ボタン104が設けられている。
仮想宅ビューアウィンドウ101は、仮想宅の画像が表示されるメインパネル105、メインパネル105に表示されている複数のアイテム(実際の物を象徴する画像であるアイテムも含む)のうち、ユーザによって選択されているアイテムに関連する情報などが表示されるコントロールパネル106、およびチャットやメールのテキストや時事ニュースなどが表示されるコミュニケーションパネル107に区分されている。
仮想宅ビューアプログラム51が起動されると、画面上のメインパネル105には、図11に示すように、ユーザAの仮想宅の外観が表示される。この画像の表示には、あらかじめ記憶部39などに記憶されていた画像が用いられる。コントロールパネル106には、パスワード入力欄108、および「家の中」ボタン109が表示される。
ユーザAにより、パスワード入力欄108にログイン用のパスワードが入力され、「家の中」ボタン109が押下されたことに対応し、データベースサーバ15に対してログイン処理の要求を行う。
ログイン処理について、図12のフローチャートを参照して説明する。
以下、携帯型ユーザ端末1の動作の主語を仮想宅ビューア54(図5)と、PC3の動作の主語を仮想宅ビューア254(図9)と、それぞれ記述する。
ステップS1において、仮想宅ビューア54は、基地局5およびインタネット6を介して、データベースサーバ15にアクセスし、認証要求と、ユーザAのユーザIDおよびパスワードを送信する。
ステップS11において、データベースサーバ15は、基地局5およびインタネット6を介して、仮想宅ビューア54からの認証要求と、ユーザAのユーザIDおよびパスワードとを受信する。データベースサーバ15は、認証DB21に記憶しているユーザAの認証情報と、仮想宅ビューア54からのユーザAのユーザIDおよびパスワードとから、アクセス権の真偽を確認し、ユーザID等の正当性を確認、即ち、認証を行う。ステップS11からステップS12に進み、データベースサーバ15は、ステップS11でユーザAの認証が成功した場合、ユーザA専用のセッション情報Aを生成し、認証DB21にセッション情報Aを記憶させる。ステップS12からS13に進み、データベースサーバ15は、インタネット6および基地局5を介して、仮想宅ビューア54に、認証応答とともに、セッション情報Aを送信する。
ステップS2において、仮想宅ビューア54は、データベースサーバ15からの認証応答、およびセッション情報Aを受信する。その後、仮想宅ビューア54は、基地局5およびインタネット6を介して、データベースサーバ15にアイテム情報の取得を要求するとともに、セッション情報A、および、携帯型ユーザ端末1の端末最新世代番号53を送信する。
ステップS14において、データベースサーバ15は、仮想宅ビューア54からのアイテム情報の取得の要求、セッション情報A、および端末最新世代番号53を受信する。そして、データベースサーバ15は、受信したセッション情報Aを確認し、ユーザAからのアクセスであることを認識して、ステップS15に進む。ステップS15において、データベースサーバ15は、仮想宅ビューア54からの端末最新世代番号53と、世代管理DB22に記憶しているユーザAのサーバ側最新世代番号とを比較する。ここで、データベースサーバ15は、セッション情報Aから、ユーザAのユーザIDを認識し、そのユーザIDに対応するサーバ側最新世代番号を、世代管理DB22から読み出すことで、ユーザAのサーバ側最新世代番号を取得する。
データベースサーバ15は、端末最新世代番号53とユーザAのサーバ側最新世代番号とが一致した場合、即ち、アイテム管理DB23に記憶されているユーザAのアイテム情報と、携帯型ユーザ端末1に記憶されているアイテム管理ファイル52のアイテム情報とが一致し、従って、携帯型ユーザ端末1のアイテム管理ファイル52のアイテム情報に、アイテム管理DB23のユーザAのアイテム情報と比較して更新されていないアイテム情報がないことを確認することができた場合、ステップS15からS16に進む。ステップS16において、データベースサーバ15は、インタネット6および基地局5を介して、仮想宅ビューア54にアイテム情報の取得の要求に対する応答と、アイテム管理ファイル52の中に、携帯型ユーザ端末1が更新していないアイテム情報はない旨を表す「更新なし」の旨を送信する。
なお、データベースサーバ15は、端末最新世代番号53とユーザAのユーザAのサーバ側最新世代番号とに差があった場合、即ち、アイテム管理ファイル52の中に、携帯型ユーザ端末1が更新していないアイテム情報があることが確認された場合、ステップS15から図26のステップS145に進み、以下、後述する処理が行われる。
ステップS3において、仮想宅ビューア54は、データベースサーバ15からのアイテム情報の取得の要求に対する応答と、「更新なし」の旨とを受信する。そして、仮想宅ビューア54は、データベースサーバ15から「更新なし」の旨を受信した場合、アイテム管理ファイル52に記憶されているアイテム情報を取得する(読み出す)。
ステップS3からS4に進み、仮想宅ビューア54は、アイテム管理ファイル52に登録されているアイテム情報に基づいて、記憶部39に記憶している、各アイテムのモジュールを実行する。これにより、仮想宅ビューア54は、仮想宅ビューアウィンドウ101にユーザAの仮想宅を構成するアイテムを表示し、ログイン処理が終了する。
なお、データベースサーバ15は、仮想宅ビューア54がデータベースサーバ15へログインした場合、ユーザ端末間通信中継サーバ17に仮想宅ビューア54がログインした旨を通知する。ユーザ端末間通信中継サーバ17は、データベースサーバ15からの通知を受けて、自身を仮想宅ビューア54からのアクセスを受信する状態にする。
図13は、図12のログイン処理が終了した後の仮想宅ビューアウィンドウ101の画面を示している。
仮想宅ビューアウィンドウ101には、メインパネル105、コントロールパネル106、コミュニケーションパネル107が表示されている。コントロールパネル106には、ユーザAによって選択されているアイテムに関連する情報などが表示されるが、いまの場合、ユーザAによってアイテムが選択されていないので、コントロールパネル106には、仮想宅の状態(築日数、累計ログイン時間、壁の種類、床の種類など)が表示されている。コミュニケーションパネル107には、時事ニュースが表示されている。また、コミュニケーションパネル107の右側には、そこに表示されたニュース欄をスクロールするためのスクロールボタン108が表示されている。
メインパネル105には、ユーザAの仮想宅内である仮想部屋の画像が表示されている。仮想宅ビューア54は、アイテム管理ファイル52のアイテム情報に基づき、記憶部39にインストールされている、そのアイテム情報に応答するアイテムのモジュールを実行することにより、メインパネル105に、そのアイテムから構成されるユーザAの仮想宅を表示させる。
メインパネル105に表示されているアイテムについて、図14を参照して説明する。
メインパネル105には、仮想宅、マスコット121、ドアアイテム122、ポストアイテム123、電話アイテム124、PCアイテム125、TVアイテム126、ソファアイテム127,128、テーブルアイテム129、植物アイテム130、ゴミ箱アイテム131、クローゼットアイテム132、カーテンアイテム133が表示されている。これらアイテムは、アイテムそれぞれのモジュールが実行されることにより表示され、また、そのアイテムが象徴する物の機能が実現される。
なお、仮想宅は、ドアアイテム122等の他、窓や、床、壁等から構成される。これらの窓や、床、壁等もアイテムであり、そのアイテムのモジュールが実行されることにより表示される。
マスコット121は、現在表示されている場所に訪れているという印象をユーザに喚起し、また、他のユーザが自分の仮想宅を訪問していることを視認できるようにするもので、仮想部屋で自律的に行動したり、ユーザAの代理として他のユーザの仮想宅に訪問したりする。即ち、例えば、マスコット121のモジュールには、マスコット121を表示する機能、他のユーザの仮想宅を訪問する際にアイテムを運搬する機能などが備えられている。
ここで、ユーザAは、仮想宅を構成する窓や、床、壁紙等の(アイテムの)模様や形状を選択したり、また仮想宅の外観を設定したりすることができる。即ち、例えば、仮想宅を構成する窓、床、壁等のアイテムのモジュールには、それらアイテムの模様や形を設定して表示させる機能等が備えられている。
ドアアイテム122は、ユーザAが携帯型ユーザ端末1を操作して指示するログアウトの要求や、他のユーザの仮想宅に訪問する要求を受付ける。電話アイテム124は、例えば、ユーザAが携帯型ユーザ端末1を操作して指示する他のユーザとチャットをする要求を受付ける。即ち、例えば、ドアアイテム122や電話アイテム124のモジュールには、アイテムを表示する機能、データベースサーバ15にユーザAの要求を送信する機能等が備えられている。さらに、ドアアイテム122のモジュールは、ユーザAの仮想部屋に他のユーザが入室できないように設定する(施錠する)機能を備えている。
ポストアイテム123は、ユーザA宛のメール等が届けられたイベントを通知する。即ち、例えば、ポストアイテム123のモジュールには、ポストアイテム123を表示する機能、ユーザA宛のメール等が届けられたイベントがあったときに、ポストアイテム123の表示を変更させてユーザAにメール等の受信を知らせる機能等が備えられている。
PCアイテム125は、携帯型ユーザ端末1が図1に示したユーザA宅に実在するホームサーバ11と接続されている場合、ユーザA宅に実在するPC12の機能と同一の機能を提供する。同様に、TVアイテム126は、ユーザA宅に実在するTV13の画面に表示されているテレビ画像と同一のテレビ画像を表示する。即ち、例えば、PCアイテム125やTVアイテム126のモジュールには、アイテムそれぞれを表示する機能、遠隔地にある他のPCやTV等を仮想的に実現する機能が備えられている。
ソファアイテム127,128、テーブルアイテム129、および植物アイテム130は、仮想部屋の装飾に相当する。即ち、例えば、ソファアイテム127,128、およびテーブルアイテム129それぞれのモジュールには、アイテムそれぞれを表示する機能が備えられている。また、例えば、植物アイテム130のモジュールには、植物アイテム130を成長させる機能等が備えられている。
ゴミ箱アイテム131は、削除されたアイテム等を一時保管する。即ち、例えば、ゴミ箱アイテム131のモジュールには、ゴミ箱アイテム131を表示する機能、削除されたアイテム等を一定期間保管した後に削除する機能等が備えられている。
クローゼットアイテム132は、他のアイテムを収納する。即ち、例えば、クローゼットアイテム132のモジュールには、クローゼットアイテム132を表示する機能、指定された他のアイテムを表示させない(収納する)機能等が備えられている。
カーテンアイテム133は、ユーザAが携帯型ユーザ端末1を操作して指示するカーテンの開閉量に応じて仮想宅の窓を覆う。即ち、例えば、カーテンアイコン133のモジュールには、カーテンの開閉量を設定して、カーテンアイコン133を表示する機能等が備えられている。
ユーザAは、例えば、上述の仮想部屋に設置した任意のアイテムをドラッグアンドドロップすることにより、そのアイテムの配置を変更することができる。また、例えば、ユーザAは、任意のアイテムをダブルクリックする毎に、そのアイテムの向きを、左斜め前向きまたは右斜め前向きに交互に切り替えることができる(ただし、向きを切り替えることができないアイテムもある)。さらに、例えば、ユーザAは、仮想部屋のテーブルアイテム129をドラッグし、クローゼットアイテム132の上へドロップすることにより、メインパネル105上のテーブルアイテム129を非表示とすることができる。この場合、ユーザAは、クローゼットアイテム132を選択することにより、クローゼットアイテム132にテーブルアイテム129が収納されていることを確認することができる。
仮想宅ビューア54は、ユーザAがアイテムの配置を変更した場合、それら変更履歴を例えば、RAM33等に記憶させる。
図15は、ユーザAによって、メインパネル105のドアアイテム122が選択されたときの仮想宅ビューアウィンドウ101の画面を示している。
図15のコントロールパネル106には、ドアアイテム122のプロパティが表示される。ドアアイテム122のプロパティには、ユーザAが外出する先である「移動する」リストが表示され、リストにはそれぞれ、「友達の家」ボタン141、「センタタワー」ボタン142、「家の外」ボタン143が表示される。
「移動する」リストには、仮想世界においてユーザAが移動することができる移動先が表示される。移動先が所定の数を超えている場合、移動先の表示をスクロールさせるためのスクロールボタン(不図示)が表示される。
また、コントロールパネル106に表示されるドアアイテム122のプロパティには、ユーザAの仮想宅の鍵の状態を変更するための、「施錠」ボタン144、および、仮想宅からログアウトするための「終了」ボタン145が表示される。ユーザAは、「施錠」ボタン144を押下することにより、仮想宅に設置されたドアアイテム122の鍵の状態を変更することができる。
「終了」ボタン145は、ユーザAが仮想宅ビューア54を終了するときに押下され、押下されたことにより、仮想宅ビューア54は、ログアウト処理を開始する。なお、ログアウト処理は、「終了」ボタン145、または、仮想宅ビューアウィンドウ101の「終了」ボタン102が押下された場合に開始される。
なお、図15に示したような、ドアアイテム122が選択されたときの、そのプロパティの表示は、仮想宅ビューア54が、ドアアイテム122のモジュールを実行することによって行われる。他のアイテムのプロパティの表示も同様である。
仮想宅ビューア54を終了するときのログアウト処理について、図16のフローチャートを参照して説明する。
ステップS71において、仮想宅ビューア54は、基地局5およびインタネット6を介して、データベースサーバ15にアイテム情報更新の要求、図12のステップS2で取得したセッション情報A、端末最新世代番号53、およびアイテムの変更履歴を送信する。即ち、仮想宅ビューア54は、図12のログイン処理を行った後からステップS71の処理を実行する間に、更新されたアイテムについて、そのアイテムのアイテムID、およびオブジェクトID、並びに、そのアイテムが配置された位置やステータスなどの付属情報をアイテムの変更履歴として記憶する。仮想宅ビューア54は、そのアイテムの変更履歴を、ステップS71でデータベースサーバ15に送信する。
ステップS81において、データベースサーバ15は、基地局5およびインタネット6を介して、仮想宅ビューア54からのアイテム情報更新の要求、セッション情報A、端末最新世代番号53、およびアイテムの変更履歴を、更新イベントとして受信する。データベースサーバ15は、受信したセッション情報Aを確認し、ユーザAからのアクセスであることを認識する。
ステップS81からS82に進み、データベースサーバ15は、セッション情報Aから、ユーザAのユーザIDを認識し、そのユーザIDに対応するサーバ側最新世代番号を、世代管理DB22から読み出すことで、ユーザAのサーバ側最新世代番号を取得する。そして、データベースサーバ15は、仮想宅ビューア54からのアイテム情報更新の要求に応じて、ユーザAのサーバ側最新世代番号を1だけインクリメントし、世代管理DB22に記憶させる。
ステップS82からS83に進み、データベースサーバ15は、セッション情報Aから、認識したユーザAのユーザIDに対応するアイテム情報を、アイテム管理DB23から読み出すことで、ユーザAのアイテム情報を取得する。そして、データベースサーバ15は、仮想宅ビューア54からのアイテムの変更履歴に従って、ユーザAのアイテム情報を更新する。即ち、データベースサーバ15は、仮想宅ビューア54からのアイテムの変更履歴から、ユーザAが仮想世界で取得したことにより追加されたアイテムのアイテムID、オブジェクトID、および付属情報を確認し、アイテム管理DB23に、ユーザAのアイテム情報として追加する。さらに、データベースサーバ15は、追加したアイテム情報の世代番号として、ユーザAのサーバ側最新世代番号を登録する。
なお、アイテム管理DB23に記憶されているユーザAのアイテム情報の中に、仮想宅ビューア54からのアイテムの変更履歴から認識されるオブジェクトIDと同一のオブジェクトIDのものが存在する場合には、データベースサーバ15は、そのオブジェクトIDが同一のアイテム情報に、仮想宅ビューア54からの変更履歴から認識した付属情報を上書きし、さらに、そのアイテム情報の世代番号を、ユーザAのサーバ側最新世代番号に更新する。
ステップS83からS84に進み、データベースサーバ15は、仮想宅ビューア54からの端末最新世代番号53と、ユーザAのサーバ側最新世代番号とを比較し、アイテム管理DB23に記憶されたユーザAのアイテム情報の中から、端末最新世代番号53より大きく、かつユーザAのサーバ側最新世代番号以下の世代番号が付されたアイテム情報を、アイテム更新情報として取得する。さらに、データベースサーバ15は、インタネット6および基地局5を介して、仮想宅ビューア54にアイテム情報更新の要求に対する応答、ユーザAのサーバ側最新世代番号、およびアイテム更新情報を送信する。
ステップS72において、仮想宅ビューア54は、インタネット6および基地局5を介して、データベースサーバ15からのアイテム情報更新の要求に対する応答、ユーザAのサーバ側最新世代番号、およびアイテム更新情報を受信する。さらに、仮想宅ビューア54は、アイテム更新情報に基づいて、携帯型ユーザ端末1のアイテム管理ファイル52を更新する。即ち、仮想宅ビューア54は、データベースサーバ15からのアイテム更新情報に含まれているオブジェクトIDと同一のオブジェクトIDを有するアイテム情報がアイテム管理ファイル52に登録されている場合、そのオブジェクトIDが同一のアイテム情報を、アイテム更新情報で上書きすることにより更新する。また、仮想宅ビューア54は、アイテム更新情報のオブジェクトIDと同一のオブジェクトIDのアイテム情報がアイテム管理ファイル52に登録されていない場合、そのアイテム更新情報をアイテム情報として、アイテム管理ファイル52に追加登録する。その後、仮想宅ビューア54は、端末最新世代番号53を、データベースサーバ15からのサーバ側最新世代番号によって上書きすることにより更新する。
また、仮想宅ビューア54は、ステップS72において、基地局5およびインタネット6を介して、データベースサーバ15にログアウトの要求と、セッション情報Aとを送信する。
ステップS85において、データベースサーバ15は、仮想宅ビューア54からのログアウトの要求と、セッション情報Aとを受信する。データベースサーバ15は、認証DB21に登録したセッション情報Aを削除し、これ以降、再度ログインされるまでの間、ユーザAからのアクセスを拒絶するように自身を設定する。また、データベースサーバ15は、インタネット6および基地局5を介して、仮想宅ビューア54にログアウトが完了した通知を送信し、仮想宅ビューア54は、その通知を受信する。
ステップS73において、仮想宅ビューア54は、ユーザ端末間中継サーバ17にログアウトを要求する。
ステップS91において、ユーザ端末間中継サーバ17は、仮想宅ビューア54からのログアウトの要求を受信する。ユーザ端末間通信中継サーバ17は、ユーザAからのログアウトの要求に従って、これ以降、再度ログインされるまでの間、ユーザAからのアクセスを拒絶するように自身を設定する。そして、ユーザ端末間通信中継サーバ17は、インタネット6および基地局5を介して、仮想宅ビューア54にログアウト処理が完了した旨を通知し、ログアウト処理が終了する。
なお、仮想宅ビューア54は、図16に示したログアウト処理を行うときにアイテムの変更履歴がない場合、即ち、データベースサーバ15にアイテム情報の更新を要求すべきアイテムがない場合、図16のステップS71をスキップする。この場合のログアウト処理は、ステップS72において仮想宅ビューア54がデータベースサーバ15にログアウトを要求する処理から開始される。
また、データベースサーバ15は、仮想宅ビューア54からのアイテムの変更履歴に、複数のアイテムに関する変更履歴が含まれている場合にも、ステップS82において、ユーザAのサーバ側最新世代番号を1だけインクリメントする。この場合、ステップS83で更新される複数のアイテム情報の世代番号は、同一の値となる。但し、データベースサーバ15は、複数のアイテムに関する変更履歴が含まれている場合、ユーザAのサーバ側最新世代番号をアイテムそれぞれについて1ずつインクリメントするようにしてもよい。
さらに、仮想宅ビューア54は、ユーザAが携帯型ユーザ端末1を操作してアイテムを取得、またはアイテムの位置やステータスの情報を変更する毎に、データベースサーバ15に、アイテム情報更新の要求と、アイテムの変更履歴とを送信することができる。しかしながら、仮想宅ビューア54が、アイテムを追加する毎に、データベースサーバ15にアイテム情報の更新を要求すると、データベースサーバ15の負担が大となる。そのため、例えば、仮想宅ビューア54では、ログイン時からログアウト時までの間に追加されたアイテムを記憶しておき、ログアウト時に、その記憶しているアイテムの変更履歴を、データベースサーバ15にまとめて送信するのが望ましい。
上述にように、ユーザAは、携帯型ユーザ端末1を操作して、携帯型ユーザ端末1の画面にユーザAの仮想宅を表示させて、仮想世界に参加することができる。同様に、ユーザAは、携帯型ユーザ端末1とは別の端末であるPC3を操作して、PC3の画面にユーザAの仮想宅を表示させて、仮想世界に参加することもできる。
即ち、PC3では、ユーザAによって仮想宅ビューアプログラム251が起動されることにより、仮想宅ビューア254の機能が実現される。仮想宅ビューア254は、ログイン処理を実行することにより、ユーザAの仮想宅を画面に表示する。即ち、仮想宅ビューア254は、データベースサーバ15に、ユーザAのユーザIDとパスワードとを送信する。データベースサーバ15は、仮想宅ビューア254からのユーザIDとパスワードを確認し、ユーザAからのアクセスであることを認証する。これにより、仮想宅ビューア254は、画面にユーザAの仮想宅を表示させる。
図17は、ログイン処理が終了した直後の、PC3のRAM233にロードされているアイテム管理ファイル252と、端末最新世代番号253の例を示している。
仮想宅ビューア254は、アイテム管理ファイル252に登録されているアイテム情報に基づいて、PC3の画面にユーザAの仮想宅を表示させる。アイテム管理ファイル252に登録されているアイテム情報は、図6で説明したアイテム管理ファイル52における場合と同様に、アイテムID、オブジェクトID、世代番号、および付属情報が対応付けられて構成されている。
図18は、仮想宅ビューアプログラム251を起動してログイン処理が終了した直後に、PC3の画面に表示されるユーザAの仮想宅を示している。
PC3の画面上には、仮想宅ビューア254の仮想宅ビューアウィンドウ301が表示される。仮想宅ビューアウィンドウ101と同様に、仮想宅ビューアウィンドウ301の上部には、ウィンドウを閉じるとき押下される「終了」ボタン302、仮想宅ビューアウィンドウ301のサイズを最大化するとき、または仮想宅ビューアウィンドウ301のサイズを最大化の状態から元のサイズに戻すとき押下される「最大化」ボタン303、および仮想宅ビューアウィンドウ301を最小化するとき押下される「最小化」ボタン304が設けられている。
仮想宅ビューアウィンドウ301は、仮想宅の画像が表示されるメインパネル305、メインパネル305に表示されている複数のアイテムのうち、ユーザによって選択されているアイテムに関連する情報などが表示されるコントロールパネル306、およびチャットやメールのテキストや時事ニュースなどが表示されるコミュニケーションパネル307に区分されている。
また、メインパネル305に表示されているユーザAの仮想宅を構成するアイテムそれぞれは、図14で説明した携帯型ユーザ端末1のメインパネル105に表示されたユーザAの仮想宅を構成するアイテムそれぞれと同一である。
なお、図18のPC3のメインパネル105に表示されているマスコット321乃至カーテンアイコン333は、図14に示した携帯型ユーザ端末1のメインパネル105に表示されたマスコット121乃至カーテンアイテム133とそれぞれ対応している。
ここで、図17のアイテム管理ファイル252の先頭行のアイテム情報は、図18の植物アイコン330のアイテム情報で、アイテムIDが「ID_15(植物)」に、オブジェクトIDが「obj1」に、世代番号が「624」に、付属情報が「位置:A−2」、「向き:左前」、および「ステータス:葉っぱ6枚」に、それぞれなっている。図17に示した第2行目のアイテム情報は、図18のソファアイテム327のアイテム情報で、アイテムIDが「ID_11(ソファ)」に、オブジェクトIDが「obj2」に、世代番号が「620」に、付属情報が「位置:D−3」、および「向き:左前」に、それぞれなっている。図17に示した第3行目のアイテム情報は、図18のソファアイテム328のアイテム情報で、アイテムIDが「ID_11(ソファ)」に、オブジェクトIDが「obj3」に、世代番号が「631」に、付属情報が「位置:B−2」、および「向き:右後ろ」に、それぞれなっている。
仮想宅ビューア254は、図17の先頭行のアイテム情報を読み出し、アイテム情報に基づいてメインパネル305にアイテムを表示させる。即ち、仮想宅ビューア254は、アイテムIDの「ID_15(植物)」から、実行するモジュールを特定し、記憶部239に記憶されている「ID_15」で特定されるモジュールを実行する。「ID_15」のモジュールが実行されることにより、植物アイテム330が表示される。また、仮想宅ビューア254は、付属情報の「位置:A−2」、および「向き:左前」から、植物アイテム330を表示する位置と向きとを特定して、仮想部屋に配置する。さらに、付属情報の「ステータス:葉っぱ6枚」から、植物アイテム330のステータスを特定して、そのステータスに基づいて、植物アイテム330を表示させる。
また、仮想宅ビューア254は、図17の第2行目のアイテム情報を読み出し、アイテム情報に基づいてメインパネル305にアイテムを表示させる。即ち、仮想宅ビューア254は、アイテムIDの「ID_11」から、実行するモジュールを特定し、記憶部239に記憶されている「ID_11」で特定されるモジュールを実行する。「ID_11」のモジュールが実行されることにより、オブジェクトIDが「obj2」で特定されるソファアイテム327が表示される。また、仮想宅ビューア254は、付属情報の「位置:D−3」、「向き:左前」から、ソファアイテム327を表示する位置と向きとを特定して、仮想部屋に配置する。
さらに、仮想宅ビューア254は、図17の第3行目のアイテム情報を読み出し、アイテム情報に基づいてメインパネル305にアイテムを表示させる。即ち、仮想宅ビューア254は、アイテムIDの「ID_11」から、実行するモジュールを特定し、記憶部239に記憶されている「ID_11」で特定されるモジュールを実行する。「ID_11」のモジュールが実行されることにより、オブジェクトIDが「obj3」で特定されるソファアイテム328が表示される。また、仮想宅ビューア254は、付属情報の「位置:B−2」、「向き:右後ろ」から、ソファアイテム328を表示する位置と向きとを特定して、仮想部屋に配置する。
以下同様に、仮想宅ビューア254は、アイテム管理ファイル252に登録されているアイテム情報に基づいて、アイテムのモジュールを実行し、メインパネル305に仮想宅を構成するアイテムを表示させる。
また、PC3の端末最新世代番号253は、前回のログアウト処理(図16)のときにデータベースサーバ15から受信した最新のサーバ側最新世代番号になっている。図17にアイテム管理ファイル254とともに示した端末最新世代番号253は「631」になっている。
ここで、端末最新世代番号253には、図16で説明したように、サーバ側最新世代番号が、ログアウト時にコピーされる。従って、ユーザAがログイン後、まだログアウトしていなければ、ユーザAのサーバ側最新世代番号は、端末最新世代番号253と同一の「631」になっている。
図19は、図18と同様に、PC3の画面に表示される仮想宅ビューアウィンドウ301を示している。
図19においては、図18に示したユーザAの仮想宅に、カレンダアイテム334が追加されて表示されている。即ち、図19は、ユーザAが図18に示した状態において、PC3を操作して、例えば、仮想世界の公共施設でカレンダの機能を追加するカレンダアイテム334を購入し、あるいは、他のユーザからカレンダアイテム334の譲渡を受ける等して、カレンダアイテム334を取得した場合の、仮想宅ビューアウィンドウ301を示している。この場合、仮想宅ビューア254は、カレンダアイテム334を、仮想宅ビューアウィンドウ301のユーザAの仮想部屋に、追加して表示する。
即ち、仮想宅ビューア254は、例えば、その表示をするのに必要なモジュールがPC3にインストールされていないカレンダアイテム334の譲渡を、他のユーザBのPC4から受けた場合、PC4からカレンダアイテム334のアイテム情報を取得する。そして、仮想宅ビューア254は、そのアイテム情報により、カレンダアイテム334のモジュールを特定し、ダウンロードサーバ16からPC3に、カレンダアイテム334のモジュールをダウンロードして、記憶部239にインストールする。さらに、仮想宅ビューア254は、記憶部239にインストールしたカレンダアイテム334のモジュールを実行することにより、ユーザAの仮想部屋にカレンダアイテム334を表示し、ユーザAにカレンダの機能を提供する。
ユーザが仮想世界で取得するアイテムには、そのアイテムから容易に連想される実際の機能を付加することができる。例えば、カレンダアイテム334は、年、月、日、さらには、必要に応じて、曜日、六曜(六輝)などを表示する機能を追加することができる。この表示の機能は、カレンダアイテム334のモジュールが実行されることで実現される。さらに、カレンダアイテム334においては、「スケジュール帳」の機能を含めることができる。また、例えば、時計アイテム(不図示)の機能には、ユーザに時刻を提供する機能や、アラームの機能を含めることができる。
仮想宅ビューア254は、例えば、ユーザAがカレンダアイテム334を選択した場合、図19に示すように、コントロールパネル306にカレンダアイテム334のプロパティを表示する。カレンダアイテム334のプロパティには、「スケジュール帳」を表示させるときに選択される「スケジュール」ボタン338、および、コントロールパネル306の表示を閉じて、図18のコントロールパネル306に示したのと同様の、ユーザAの仮想宅の情報を表示するときに選択される「閉じる」ボタン339が表示されている。
仮想宅ビューア254は、ユーザAが「スケジュール」ボタン338を選択すると、仮想宅ビューアウィンドウ301に「スケジュール帳」を表示させる。
図20は、図19のカレンダアイテム334のプロパティから「スケジュール」ボタン201が選択され、「スケジュール帳」が表示された状態の仮想宅ビューアウィンドウ301の画面を示している。
メインパネル305には、表示する月を変更するときに操作される「表示月変更」ボタン361と362とが表示されている。また、スケジュールを入力する入力欄363が表示されている。さらに、画面に表示されていない日を表示させるためのスクロールボタン364が表示されている。コントロールパネル306には、入力欄363に入力したスケジュールを決定するときに操作される「決定」ボタン371、および、「スケジュール帳」を閉じて仮想宅の画像に戻るときに操作される「閉じる」ボタン372が表示されている。ユーザAは、入力欄363にスケジュールとしてコメントを入力し、「決定」ボタン371を選択することにより、「スケジュール帳」に、スケジュールを登録することができる。
なお、「スケジュール帳」にスケジュールが登録されている日については、カレンダアイテム334において、スケジュールが登録されていない日と異なる表示パターン(例えば、丸印を付したり、反転表示にしたりなど)で表示を行うようにすることができる。
ユーザAがPC3においてカレンダアイテム334を取得した後に、図16のログアウト処理が実行された場合、PC3のアイテム管理ファイル252と、データベースサーバ15のアイテム管理DB23とに、カレンダアイテム334のアイテム情報が追加される。
即ち、仮想宅ビューア254は、図18に示した状態から図19に示した状態のように、新たなカレンダアイテム334を取得した場合、その新たに取得したカレンダアイテム334のアイテムID、オブジェクトID、カレンダアイテム334が設置されている位置等の付属情報を、アイテムの変更履歴として記憶する。その後、ユーザAによってPC3において、ログアウトの要求がされた場合、仮想宅ビューア254は、データベースサーバ15に、図16のログアウト処理で説明したように、アイテム情報更新の要求とアイテムの変更履歴とを送信する。
データベースサーバ15は、仮想宅ビューア254からのアイテム情報更新の要求と、アイテムの変更履歴とを受信した場合、図16のステップS81乃至S84の処理を行い、世代管理DB22に記憶しているユーザAのサーバ側最新世代番号を1だけインクリメントし、さらに、アイテム管理DB23に記憶しているユーザAのアイテム情報にカレンダアイテム334のアイテム情報を追加する。
図21は、カレンダアイテム334のアイテム情報が追加された後の、ユーザAのサーバ側最新世代番号と、アイテム管理DB23に記憶されているユーザAのアイテム情報とを示している。
仮想宅ビューア254からのアイテム情報更新の要求がされる直前のユーザAのサーバ側最新世代番号が、例えば、図17および図18で説明したように、「631」であったとすると、データベースサーバ15は、仮想宅ビューア254からのアイテム情報更新の要求を受信することにより、ユーザAのサーバ側新世代番号を1だけインクリメントすることにより、図21に示すように、「632」とする。
アイテム管理DB23には、図19に示したユーザAの仮想宅を構成するアイテムすべてのアイテム情報が登録されている。即ち、図21に示したアイテム管理DB23のユーザAのアイテム情報は、最下行を除いて、図17のアイテム管理ファイル252のアイテム情報と同一となっている。
具体的には、図21の先頭行のアイテム情報は、図19の植物アイコン330のアイテム情報で、アイテムIDが「ID_15(植物)」に、オブジェクトIDが「obj1」に、世代番号が「624」に、付属情報が「位置:A−2」、「向き:左前」、および「ステータス:葉っぱ6枚」に、それぞれなっている。図21の第2行目のアイテム情報は、図19のソファアイテム327のアイテム情報で、アイテムIDが「ID_11(ソファ)」に、オブジェクトIDが「obj2」に、世代番号が「620」に、付属情報が「位置:D−3」、および「向き:左前」に、それぞれなっている。図21の第3行目のアイテム情報は、図19のソファアイテム328のアイテム情報で、アイテムIDが「ID_11(ソファ)」に、オブジェクトIDが「obj3」に、世代番号が「631」に、付属情報が「位置:B−2」、および「向き:右後ろ」に、それぞれなっている。
アイテム管理DB23には、以下同様に、ユーザAのアイテム情報が登録されている。そして、図21の最下行のアイテム情報は、仮想宅ビューア254からのアイテムの変更履歴に基づいて追加登録された図19のカレンダアイテム334のアイテム情報であり、アイテムIDが「ID_51(カレンダ)」に、オブジェクトIDが「obj15」に、付属情報が「位置:D−4、右の壁」に、それぞれなっている。また、カレンダアイテム334のアイテム情報の世代番号は、そのアイテム情報が追加登録されたときのユーザAのサーバ側最新世代番号である「632」になっている。
データベースサーバ15は、図16のステップS84で説明したように、アイテムの変更履歴に基づいて、カレンダアイテム334のアイテム情報をアイテム管理DB23に追加登録した後、ユーザAのサーバ側最新世代番号(いまの場合、「632」)、および、更新されたアイテムであるカレンダアイテム334のアイテム情報をアイテム更新情報として、仮想宅ビューア254に送信する。そして、仮想宅ビューア254は、データベースサーバ15からのユーザAのサーバ側最新世代番号と、アイテム更新情報とを受信し、端末最新世代番号253を、ユーザAのサーバ側最新世代番号に更新し、アイテム更新情報であるカレンダアイテム334のアイテム情報をアイテム管理ファイル52に登録する。
図22は、カレンダアイテム334のアイテム情報が追加された後の、PC3の端末最新世代番号253と、PC3のアイテム管理ファイル252に登録されているアイテム情報とを示している。
端末最新世代番号253は、データベースサーバ15からのユーザAのサーバ側最新世代番号である「632」に更新されている。
また、PC3のアイテム管理ファイル252には、図17に示したPC3のアイテム管理ファイル252に、カレンダアイテム334のアイテム情報が追加登録されている。即ち、図22に示したPC3のアイテム管理ファイル252の最下行のアイテム情報は、データベースサーバ15からのアイテム更新情報に基づいて登録したカレンダアイテム334のアイテム情報であり、アイテムIDが「ID_51(カレンダ)」に、オブジェクトIDが「obj15」に、世代番号が「632」に、付属情報が「位置:D−4、右の壁」に、それぞれなっている。
なお、PC3の端末最新世代番号253は、最新の更新がされたカレンダアイテム334のアイテム情報(アイテム更新情報)とともにデータベースサーバ15から送信されてくるユーザAのサーバ側最新世代番号に更新されるので、カレンダアイテム334のアイテム情報の世代番号と同一の「632」ともなっている。このカレンダアイテム334のアイテム情報の世代番号は、アイテム管理ファイル252に登録されているアイテム情報の世代番号のうちの、最大値「632」であり、従って、端末最新世代番号253は、アイテム管理ファイル252の世代番号のうちの最大値と一致する。
いま、上述のように、ユーザAがPC3によって、カレンダアイテム334を取得し、これにより、データベースサーバ15のユーザAのサーバ側最新世代番号「631」から「632」に1だけインクリメントされるとともに、アイテム管理DB23のユーザAのアイテム情報にカレンダアイテム334のアイテム情報が追加登録されたとする。さらに、PC3のアイテム管理ファイル253にカレンダアイテム334のアイテム情報が追加登録されるとともに、PC3の端末最新世代番号253が「631」から「632」に更新されたとする。
ところで、上述のように、ユーザAがPC3によってカレンダアイテム334を取得した場合には、そのPC3におけるアイテム管理ファイル252と端末最新世代番号253は更新されるが、携帯型ユーザ端末1のアイテム管理ファイル52と、端末最新世代番号53とは更新されない。
図23は、携帯型ユーザ端末1のアイテム管理ファイル52と、端末最新世代番号53とを示している。
いまの場合、図23に示した携帯型ユーザ端末1のアイテム管理ファイル52は、図17に示したPC3のアイテム管理ファイル252と同一であり、カレンダアイテム334のアイテム情報が登録されていない。また、図23に示した携帯型ユーザ端末1の端末最新世代番号53も、図17に示したPC3の端末最新世代番号253と同一であり、「631」である。なお、図23のアイテム管理ファイル53に登録されているアイテム情報は、図18と同一なので、その説明を省略する。
携帯型ユーザ端末1において、PC3における場合と同様に、図23のアイテム管理ファイル52のアイテム情報に基づいて、仮想部屋を表示すると、その仮想部屋は、図18に示したように、カレンダアイテムがないものとなる。
しかしながら、ユーザAは、PC3によって、図19に示したように、カレンダアイテムをすでに取得しており、PC3によってデータベースサーバ15にアクセスした後、そのPC3と異なる携帯型ユーザ端末1によってデータベースサーバ15にアクセスしたときに、PC3において取得したカレンダアイテムが仮想部屋に存在しないことは、ユーザAに違和感を感じさせることになる。
ところで、上述したことから、アイテム管理DB23のユーザAのアイテム情報は、ユーザAの仮想部屋における最新のアイテム情報に関する情報となっており、さらに、ユーザAのアイテム管理ファイルのアイテム情報が、アイテム管理DB23のユーザAのアイテム情報と一致する場合には、端末最新世代番号と、サーバ側最新世代番号とが一致する。一方、ユーザAのアイテム管理ファイルのアイテム情報が、アイテム管理DB23のユーザAのアイテム情報と一致しない場合には、端末最新世代番号と、サーバ側最新世代番号とが一致しない。
そこで、携帯型ユーザ端末1は、端末最新世代番号53と、サーバ側最新世代番号とが一致しないとき、アイテム管理ファイル52のアイテム情報を、アイテム管理DB23のユーザAのアイテム情報に一致するように更新し、さらに、端末最新世代番号53を、サーバ側最新世代番号に更新する。そして、携帯型ユーザ端末1は、更新後のアイテム管理ファイル52のアイテム情報に基づいて、仮想部屋を表示することにより、PC3でログアウト直前に表示されていたのと同一の仮想部屋を表示する。
図24は、そのようにして携帯型ユーザ端末1の画面に表示される仮想宅ビューアウィンドウ101を示している。
図24のメインパネル105に表示された仮想部屋は、図19で示したPC3のメインパネル305に表示された仮想部屋と同一になっており、カレンダアイテム134が追加されて表示されている。
図25は、図24に示したユーザAの仮想部屋が表示されるときの、携帯型ユーザ端末1のアイテム管理ファイル52と、端末最新世代番号53とを示している。
アイテム管理ファイル52には、図21に示したアイテム管理DB23のユーザAのアイテム情報と同一のアイテム情報が登録されている。また、端末最新世代番号53は、図21のユーザAの端末最新世代番号と同一の「632」になっている。
携帯型ユーザ端末1の仮想宅ビューア54が、上述のように、アイテム管理ファイル52を更新し、その更新後のアイテム管理ファイル52のアイテム情報に基づいて仮想部屋を表示する処理について、図26のフローチャートを参照して説明する。
データベースサーバ15は、ユーザAが所有しているアイテムが更新された旨を通知する更新イベントが発生した場合、ステップS141において、世代管理DB22に記憶されているユーザAのサーバ側最新世代番号を1だけインクリメントする。即ち、図16のステップS82で説明したように、データベースサーバ15は、ユーザAのサーバ側最新世代番号を更新する。ここで、更新イベントには、例えば、図16のステップS71で説明したアイテム情報更新の要求などがある。
ステップS141からS142に進み、データベースサーバ15は、更新イベントに対応して、アイテム管理DB23に記憶されているユーザAのアイテム情報を更新する。即ち、データベースサーバ15は、例えば、図16のステップS83で説明したように、アイテム管理DB23に記憶しているユーザAのアイテム情報を更新する。
一方、ステップS151において、仮想宅ビューア54は、図12のステップS2に置ける場合と同様に、基地局5およびインタネット6を介して、データベースサーバ15にアイテム情報を取得する要求とともに、セッション情報A、および携帯型ユーザ端末1の端末最新世代番号53を送信する。
なお、ステップS151の処理は、図12のステップS2の処理として、ログイン時に行う他、任意のタイミングで行うことが可能である。但し、ユーザAがログインしている必要がある。
ステップS143において、データベースサーバ15は、基地局5およびインタネット6を介して、仮想宅ビューア54からのアイテム情報を取得する要求、セッション情報A、および端末最新世代番号53を受信する。データベースサーバ15は、セッション情報Aを確認し、ユーザAからのアクセスであることを認識する。ステップS143からS144に進み、データベースサーバ15は、セッション情報Aから、ユーザAのユーザIDを認識し、そのユーザIDに対応するサーバ側最新世代番号を、世代管理DB22から読み出すことで、ユーザAのサーバ側最新世代番号を取得する。そして、データベースサーバ15は、ユーザAのサーバ側最新世代番号と、仮想宅ビューア54からの端末最新世代番号53とを比較する。
ユーザAのサーバ側最新世代番号と端末最新世代番号53とが一致する場合、即ち、アイテム管理ファイル52とアイテム管理DB23とが一致する場合、ステップS144から図12のステップS16に進み、データベースサーバ15は、アイテム情報の取得の要求に対する応答と、携帯型ユーザ端末1が更新していないアイテム情報はない旨を表す「更新なし」を送信する。図12のステップS16から図12のステップS3に進み、仮想宅ビューア54は、データベースサーバ15からのアイテム情報の取得の要求に対する応答と、「更新なし」の旨とを受信する。そして、仮想宅ビューア54は、データベースサーバ15から「更新なし」の旨を受信した場合、アイテム管理ファイル52に記憶されているアイテム情報を取得する(読み出す)。図12のステップS3から図12のステップS4に進み、仮想宅ビューア54は、アイテム管理ファイル52に登録されているアイテム情報に基づいて、記憶部39に記憶している、各アイテムのモジュールを実行する。これにより、仮想宅ビューア54は、仮想宅ビューアウィンドウ101にユーザAの仮想部屋を表示する。
一方、ユーザAのサーバ側最新世代番号と端末最新世代番号53とが一致しない場合、即ち、アイテム管理ファイル52とアイテム管理DB23とが一致しない場合、ステップS144から145に進み、データベースサーバ15は、アイテム更新情報を取得する。即ち、データベースサーバ15は、アイテム管理DB23に記憶されているユーザAのアイテム情報から、世代番号が端末最新世代番号53より大きく、かつユーザAのサーバ側最新世代番号以下のアイテム情報を検索することにより取得し、アイテム更新情報とする。
ステップS145からS146に進み、データベースサーバ15は、インタネット6および基地局5を介して、仮想宅ビューア54にアイテム情報の取得の要求に応答するとともに、アイテム更新情報、およびユーザAのサーバ側最新世代番号を送信する。
ステップS152において、仮想宅ビューア54は、インタネット6および基地局5を介して、データベースサーバ15からのアイテム情報の取得の要求に対する応答、アイテム更新情報、サーバ側最新世代番号を受信する。仮想宅ビューア54は、アイテム更新情報に対応するアイテムのモジュールが、携帯型ユーザ端末1のローカルキャッシュとしての記憶部39にインストールされているかどうかを確認する。仮想宅ビューア54は、アイテム更新情報に対応するアイテムのモジュールが記憶部39にまだインストールされていない場合、ステップS153に進み、基地局5およびインタネット6を介して、ダウンロードサーバ16にモジュールのダウンロードの要求と、アイテム更新情報に対応するアイテムのアイテムIDとを送信する。
なお、アイテムIDが、そのアイテムIDで特定されるモジュールが記憶されているURLを含むとした場合、仮想宅ビューア54は、アイテムIDに含まれるURLに基づいて、インタネット6に接続することにより、そのモジュールが記憶されているインタネット6上のサイト、例えば、ダウンロードサーバ16にアクセスする。
ステップS131において、ダウンロードサーバ16は、インタネット6を介して、仮想宅ビューア54からのモジュールのダウンロードの要求と、アイテムIDとを受信する。ダウンロードサーバ16は、アイテムIDで特定されるアイテムのモジュールを取得する。
ステップS131からS132に進み、ダウンロードサーバ16は、インタネット6および基地局5を介して、仮想宅ビューア54にモジュールのダウンロードの要求に対する応答と、ステップS131で取得したモジュールとを送信する。
ステップS154において、仮想宅ビューア54は、基地局5およびインタネット6を介して、ダウンロードサーバ16からのモジュールのダウンロードの要求に対する応答を受信するとともに、モジュールをダウンロードする。さらに、仮想宅ビューア54は、ダウンロードサーバ16からダウンロードしたモジュールを記憶部39にインストールする。
ステップS154からS155に進み、仮想宅ビューア54は、ステップS152で受信したデータベースサーバ15からのアイテム更新情報に基づいて、アイテム管理ファイル52に登録しているアイテム情報の更新を行う。
ステップS155からS156に進み、仮想宅ビューア54は、端末最新世代番号53を、ステップS152で受信したデータベースサーバ15からのサーバ側最新世代番号に更新する。
ステップS156からS157に進み、仮想宅ビューア54は、アイテム管理ファイル52に登録されているアイテム情報に基づいて、記憶部39に記憶されているアイテムのモジュールを実行し、これにより、メインパネル105にユーザAの仮想宅を表示させ、処理が終了する。
なお、ステップS152において、仮想宅ビューア54は、アイテム更新情報に対応するアイテムのモジュールが、ローカルキャッシュである記憶部39にすでにインストールされている場合、ステップS153およびS154の処理をスキップする。アイテム更新情報に対応するアイテムのモジュールが、記憶部39にすでにインストールされている場合としては、例えば、ユーザAが、仮想世界で所有しているアイテムをユーザBに譲渡したことにより、そのアイテムのアイテム情報が削除され、かつ、そのアイテムのモジュールがアンインストールされないままで、その後、再びそのアイテムと同一のアイテムを仮想世界で取得する場合がある。なお、アイテムが譲渡された場合に、そのアイテムのアイテム情報を削除する他、そのアイテムの付属情報に削除(譲渡)された旨を登録することもできる。
上述のように、データベースサーバ15において、サーバ側最新世代番号と端末最新世代番号53とを比較し、その比較結果に基づいて、アイテムの更新があった旨、またはなかった旨を、仮想宅ビューア54に送信するとともに、仮想宅ビューア54において、アイテムの更新があった旨を受信した場合には、その更新されたアイテムのモジュールをダウンロードしてインストールするようにしたので、新しい価値や新しい機能を実現する機能追加モジュールをリリースする度に、そのモジュールの追加のアナウンスをする必要がなくなるため、モジュールの提供者は、必要に応じて、機能追加モジュールをリリースすることができる。
ユーザにおいても、機能追加モジュールのダウンロードやインストールを意識することなく、そのアプリケーション(例えば、仮想宅ビューアプログラム51)に、必要とする機能を、必要とするタイミングで追加することができる。
さらに、ユーザAが仮想世界で取得(選択)していないアイテムについては、モジュールをダウンロードしないため、記憶部39に無駄なモジュールがインストールされることを防止することができる。
図27は、本発明を適用した仮想空間遠隔操作システムの第2実施の形態の構成例を示している。
図27では、ユーザAが使用する携帯型ユーザ端末1またはユーザAが使用するPC3、ユーザBが使用するPC4等が、図2のデータベースサーバ15としても機能する。従って、図27において、例えば、携帯型ユーザ端末1は、データベースサーバ15との間で通信を行わない点が、図2における場合と異なるだけであるため、その説明は省略する。
以上のように、ユーザが仮想世界でアイテムを取得することに連動して、そのアイテムに対応するモジュールをインストールするようにしたので、即ち、仮想世界が表示されるときに、仮想世界を構成する仮想アイテムのモジュールがインストールされているかどうかを確認し、仮想アイテムのモジュールがインストールされていないとき、インターネット6などのネットワークを介して、そのモジュールをダウンロードしてインストールするようにしたので、必要としないモジュールがインストールされることによって、無駄に記憶領域が消費されることを防止することができる。
また、ユーザは、現実世界において物を取得する場合と同様に、仮想世界において、アイテムを取得するという行為によって、そのアイテムが象徴する実際の物の機能を享受することができるので、直感的で分かりやすいユーザインタフェースを提供することができる。
さらに、インストールされるモジュールによって実現される機能は、そのモジュールに対応するアイテムが象徴する実際の物の機能(あるいは、その物から連想される機能)であるため、ユーザは、アイテムを見ることにより、どのような機能のモジュールがインストールされるかを容易に認識することができる。
また、仮想宅ビューア54は、アイテムを表示しようとするときに、ユーザが特に操作を行わなくても、その表示しようとするアイテムのモジュールを、必要に応じてダウンロードしてインストールするので、ユーザの負担、および機能追加モジュールをリリースするときのアナウンス等の、モジュールの提供者側の負担を軽減することができる。
なお、携帯型ユーザ端末1のユーザAは、サービス提供者が提供する仮想世界で取得したアイテムを、他のユーザである、例えば、PC4のユーザBに譲渡する(受け渡す)ことができる。その際、携帯型ユーザ端末1では、ユーザBに譲渡するアイテムに対応するモジュールを、PC4に送信し、PC4では、そのモジュールを受信(ダウンロード)してインストールすることができる。または、PC4は、譲渡対象のアイテムに対応するモジュールをダウンロードサーバ16からダウンロードしてインストールすることができる。さらに、携帯型ユーザ端末1では、ユーザBに譲渡したアイテムに対応するモジュールをアンインストールすることができる。
ここで、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
1 携帯型ユーザ端末, 2 宅内ネットワーク, 3、4、12 PC, 6 インタネット, 11 ホームサーバ, 13 TV, 15 データベースサーバ, 16 ダウンロードサーバ,17 ユーザ端末間通信中継サーバ, 18 EPGサーバ, 19 オーディオサーバ, 21 認証DB, 22 世代管理DB, 23 アイテム管理DB, 24 公的空間DB, 31、61、231 CPU, 42、72、242 磁気ディスク, 43、73、243 光ディスク, 44、74、244 光磁気ディスク, 45、75、245 半導体メモリ, 51、81、251 仮想宅ビューアプログラム, 52、252 アイテム管理ファイル, 53、253 端末最新世代番号, 54、91、254 仮想宅ビューア
Claims (6)
- ネットワークに接続される情報処理装置において、
物を象徴する仮想アイテムを少なくとも表示するモジュールによって、仮想世界を構成する前記仮想アイテムを表示させる表示制御手段と、
前記仮想世界が表示されるときに、前記仮想世界を構成する前記仮想アイテムの前記モジュールがインストールされているかどうかを確認する確認手段と、
前記仮想アイテムの前記モジュールがインストールされていないとき、前記ネットワークを介して、そのモジュールをダウンロードしてインストールするインストール手段と
を備えることを特徴とする情報処理装置。 - 前記仮想アイテムの前記モジュールは、その仮想アイテムが象徴する物の機能も実現する
ことを特徴とする請求項1に記載の情報処理装置。 - 前記仮想アイテムは、前記仮想アイテムの種別を表す識別子で特定され、
前記インストール手段は、前記仮想アイテムの識別子に基づいて、その仮想アイテムのモジュールをダウンロードする
ことを特徴とする請求項1に記載の情報処理装置。 - ネットワークに接続される情報処理装置の情報処理方法において、
物を象徴する仮想アイテムを少なくとも表示するモジュールによって、仮想世界を構成する前記仮想アイテムを表示させる表示制御ステップと、
前記仮想世界が表示されるときに、前記仮想世界を構成する前記仮想アイテムの前記モジュールがインストールされているかどうかを確認する確認ステップと、
前記仮想アイテムの前記モジュールがインストールされていないとき、前記ネットワークを介して、そのモジュールをダウンロードしてインストールするインストールステップと
を含むことを特徴とする情報処理方法。 - ネットワークに接続されるコンピュータに実行させるコンピュータプログラムにおいて、
物を象徴する仮想アイテムを少なくとも表示するモジュールによって、仮想世界を構成する前記仮想アイテムを表示させる表示制御ステップと、
前記仮想世界が表示されるときに、前記仮想世界を構成する前記仮想アイテムの前記モジュールがインストールされているかどうかを確認する確認ステップと、
前記仮想アイテムの前記モジュールがインストールされていないとき、前記ネットワークを介して、そのモジュールをダウンロードしてインストールするインストールステップと
を含むことを特徴とするコンピュータプログラム。 - ネットワークに接続されるコンピュータに実行させるコンピュータプログラムが記録されている記録媒体において、
物を象徴する仮想アイテムを少なくとも表示するモジュールによって、仮想世界を構成する前記仮想アイテムを表示させる表示制御ステップと、
前記仮想世界が表示されるときに、前記仮想世界を構成する前記仮想アイテムの前記モジュールがインストールされているかどうかを確認する確認ステップと、
前記仮想アイテムの前記モジュールがインストールされていないとき、前記ネットワークを介して、そのモジュールをダウンロードしてインストールするインストールステップと
を含むことを特徴とするコンピュータプログラムが記録されている記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003379797A JP2005141638A (ja) | 2003-11-10 | 2003-11-10 | 情報処理装置および方法、並びに、コンピュータプログラムおよび記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003379797A JP2005141638A (ja) | 2003-11-10 | 2003-11-10 | 情報処理装置および方法、並びに、コンピュータプログラムおよび記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005141638A true JP2005141638A (ja) | 2005-06-02 |
Family
ID=34689735
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003379797A Withdrawn JP2005141638A (ja) | 2003-11-10 | 2003-11-10 | 情報処理装置および方法、並びに、コンピュータプログラムおよび記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005141638A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010123126A (ja) * | 2008-11-20 | 2010-06-03 | Sony Computer Entertainment Inc | デジタルブロードキャストと連動して仮想アイテムの状態を変更する方法 |
JP2015058076A (ja) * | 2013-09-17 | 2015-03-30 | 株式会社バンダイナムコゲームス | プログラム及びサーバ |
JP2017200607A (ja) * | 2017-07-06 | 2017-11-09 | 株式会社スクウェア・エニックス | オンラインゲームサーバ、オンラインゲームプログラム、および端末用プログラム |
KR20180000867U (ko) * | 2018-03-12 | 2018-03-28 | 파킹클라우드 주식회사 | 가상 요소를 중개하기 위한 중개 서버 및 시스템 |
JP2023045779A (ja) * | 2021-09-22 | 2023-04-03 | 任天堂株式会社 | ゲームプログラム、ゲームシステム、ゲーム装置、およびゲーム処理方法 |
JP2023178627A (ja) * | 2022-06-06 | 2023-12-18 | グリー株式会社 | 情報処理システム、情報処理方法、及びプログラム |
-
2003
- 2003-11-10 JP JP2003379797A patent/JP2005141638A/ja not_active Withdrawn
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010123126A (ja) * | 2008-11-20 | 2010-06-03 | Sony Computer Entertainment Inc | デジタルブロードキャストと連動して仮想アイテムの状態を変更する方法 |
US9646008B2 (en) | 2008-11-20 | 2017-05-09 | Sony Interactive Entertainment Inc. | Modifying virtual item states in conjunction with digital broadcast |
JP2015058076A (ja) * | 2013-09-17 | 2015-03-30 | 株式会社バンダイナムコゲームス | プログラム及びサーバ |
JP2017200607A (ja) * | 2017-07-06 | 2017-11-09 | 株式会社スクウェア・エニックス | オンラインゲームサーバ、オンラインゲームプログラム、および端末用プログラム |
KR20180000867U (ko) * | 2018-03-12 | 2018-03-28 | 파킹클라우드 주식회사 | 가상 요소를 중개하기 위한 중개 서버 및 시스템 |
KR200486347Y1 (ko) | 2018-03-12 | 2018-05-04 | 파킹클라우드 주식회사 | 가상 요소를 중개하기 위한 중개 서버 및 시스템 |
JP2023045779A (ja) * | 2021-09-22 | 2023-04-03 | 任天堂株式会社 | ゲームプログラム、ゲームシステム、ゲーム装置、およびゲーム処理方法 |
JP7290697B2 (ja) | 2021-09-22 | 2023-06-13 | 任天堂株式会社 | ゲームプログラム、ゲームシステム、ゲーム装置、およびゲーム処理方法 |
JP2023178627A (ja) * | 2022-06-06 | 2023-12-18 | グリー株式会社 | 情報処理システム、情報処理方法、及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8307201B2 (en) | Information processing system, service providing apparatus and method, information processing apparatus and method, recording medium, and program | |
KR100980547B1 (ko) | 정보 처리 시스템, 서비스 제공 장치 및 방법, 정보 처리장치 및 방법, 기록 매체, 및 프로그램 | |
CN103221932B (zh) | 设备协作服务执行装置、设备协作服务执行方法 | |
CN102695084B (zh) | 从第二显示装置进行的设备加入处理 | |
CN1838599B (zh) | 认证和个人内容发送方法及其显示设备和服务器 | |
US20060123081A1 (en) | Method and system for seamless portability by profile sharing | |
CN104903900A (zh) | 文件共享系统和方法 | |
JP2004501462A (ja) | スマート電子機器のトークンに基づくパーソナル化 | |
US8615162B2 (en) | Content reproduction device | |
JP6107196B2 (ja) | 管理システム、管理方法及びプログラム | |
CN102695082B (zh) | 在第二显示装置上提供频繁被访问服务或资产列表的方法 | |
CN102609374A (zh) | 用于操作设备的设备控制装置的系统和方法 | |
US20170026337A1 (en) | Communication management system, communication terminal, communication system, and recording medium storing control program | |
JP2005141638A (ja) | 情報処理装置および方法、並びに、コンピュータプログラムおよび記録媒体 | |
US20150006699A1 (en) | Communication management system, communication terminal, communication system, and recording medium storing control program | |
US9634898B2 (en) | Communication management system, communication terminal, communication system, and recording medium storing control program | |
JP4749674B2 (ja) | 情報処理装置、携帯端末、情報処理プログラム、このプログラムを記録したコンピュータ読取可能な記録媒体、携帯端末制御プログラム、及びこのプログラムを記録したコンピュータ読取可能な記録媒体 | |
JP5977586B2 (ja) | 情報処理システム、情報処理装置、情報処理方法およびプログラム | |
JP4551093B2 (ja) | サービス提供用サーバコンピュータ | |
JP4801760B2 (ja) | 情報処理装置、携帯端末、情報処理プログラム、このプログラムを記録したコンピュータ読取可能な記録媒体、携帯端末制御プログラム、及びこのプログラムを記録したコンピュータ読取可能な記録媒体 | |
CN108370456A (zh) | 信息处理方法和显示装置 | |
JP6315123B2 (ja) | 管理システム、管理方法及びプログラム | |
KR100694396B1 (ko) | 프로그램 예약 녹화 설정 시스템 및 방법 | |
US20110296491A1 (en) | Account server and network access method using the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20070206 |