以下、本発明の実施形態について図面に基づき詳細に説明する。
図1は、本発明の実施形態に係る通信システムの全体構成図である。同図に示すように、この通信システムでは、インターネット等のコンピュータ通信ネットワーク10に、ユーザ位置管理サーバ12、情報サーバ14、及び複数のユーザ端末(情報処理装置)16が接続されている。ユーザ位置管理サーバ12及び情報サーバ14は、例えば公知のサーバコンピュータを中心に構成されている。また、ユーザ端末16はバッテリ駆動する可搬型のコンピュータゲームシステムであり、図2にその外観を示すように前面にタッチスクリーン16aを備えており、またGPS(Global Positioning System)を利用して当該ユーザ端末16の位置(緯度及び経度)を測定するための測位ユニット16b、携帯電話網を利用したデータ通信を行うための携帯電話通信ユニット16c、及び無線LANを利用したデータ通信を行うための無線LAN通信ユニット16dを内蔵している。ユーザ端末16は、携帯電話通信ユニット16c又は無線LAN通信ユニット16dを通信環境に応じて選択的に利用して、コンピュータ通信ネットワーク10に接続し、ユーザ位置管理サーバ12や情報サーバ14とデータ通信ができるようになっている。
ユーザ端末16は、衛星信号を利用して自機の位置を繰り返し測定し、それらの測位結果を保持している。なお、後述するように、ユーザ端末16は他の方法により測位してもよい。また、ユーザ端末16は、ゲームプログラムの実行実績を示すデータも保持しており、測位結果及びゲームの実行実績のデータは、ユーザ操作に応じて、或いは一定時間毎に自動的に、ユーザ位置管理サーバ12にアップロードされる。ユーザ位置管理サーバ12は、こうして多数のユーザ端末16からアップロードされる測位結果及び実行実績のデータを保持しており、各ユーザ端末16では、こうしてユーザ位置管理サーバ12に保持される情報、及び自機に保持される測位結果に基づいて、タッチスクリーン16aに、ユーザ端末16の移動経路を示す画像(図5参照)を表示するようになっている。
図3は、ユーザ端末16のタッチスクリーン16aに表示されるメインメニュー画像の一例を示している。同画像は、ユーザ端末16を起動し、本アプリケーションプログラムを実行した後に最初に表示されるものであり、台紙を表す台紙20が表されるとともに、その上に配置されたボタン22,24,26,28,32及びメッセージ30も表されている。ボタン22,24,26,28,32及びメッセージ30は台紙20から離間して仮想3次元空間中に配置されており、メインメニュー画像は、同空間に仮想的に配置されたカメラからこれらのオブジェクトを見た様子を示している。この画像は、公知の3次元コンピュータグラフィックスの技術を用いて生成される。このとき、ボタン22,24,26,28,32及びメッセージ30の側には影が描かれ、これにより台紙20の上方(仮想的なカメラ側)に浮いていることをユーザは直ちに理解することができる。本実施形態においては、これら台紙20の上方に浮いているオブジェクトは、タッチスクリーン16aをタップすることによりボタンとしてユーザが操作できるものであることを示している。なお、メインメニュー画像の表示後、本プログラム(表示制御部70)は一定時間毎に各ボタン22,24,26,28,32及びメッセージ30に関連づけられたプログラムが実行可能かどうかを判断しており、実行可能だと判断すると図3に示すようにそれらを台紙20から所定距離(「実行距離」)だけ離間させるようにしている。実行可能と判断するまでは、図4に示されるボタン26のように台紙20に近接させている。具体的には、関連するプログラムが実行可能ではないボタン22,24,26,28,32又はメッセージ30は、台紙20と接しているか、或いは上記実行距離よりも短い距離(「非実行距離」)だけ離間している。
ここで、ボタン22は、上述した移動経路画像を表示させるためのものであり、ボタン24は、後述するフレンド画像を表示させるためのものであり、ボタン26は、ステータス画像を表示させるためのものであり、ボタン28は、設定画像を表示させるためのものである。また、メッセージ30は、各ボタン22,24,26,28に関連する情報を表示するものである。メッセージ30の領域をタップすることにより、メッセージ30の詳細も表示させることができる。また、ボタン32は、上述した測位結果及びゲームの実行実績のデータをユーザ位置管理サーバ12にアップロードするためのものである。このボタン32は、それらデータをアップロード可能な状態になると台紙20から実行距離だけ離間して配置され、それまでは台紙20に接して、或いは非実行距離だけ離間して配置される。データをアップロード可能な状態であるか否かは、携帯電話通信ユニット16c又は無線LANユニット16dによりデータ通信が可能かどうかや、アップロードすべきデータが存在するかどうか、により判断される。
図5は、移動経路画像の一例を示している。同画像は、図4に示されるメインメニュー画像に含まれるボタン22をタップした場合に表示されるものである。移動経路画像全体は、実際は縦長形状であり、タッチスクリーン16aにはその一部に設定される表示範囲のみが表示されている。そして、タッチスクリーン16aに対してユーザがフリックなどの所定の操作を行うことにより、表示範囲を移動させることができ、これにより移動経路画像全体のうち任意の箇所をタッチスクリーン16aに表示させることができる。
ユーザ端末16は、自機位置を繰り返し測定しており、それら測定された位置を保持している。移動経路画像には、保持されている位置を示す住所文字列及び測定日時が表されたレコード枠34が測定順に表されている。すなわち、新しい測定結果ほど上に表されている。これらレコード枠34は台紙46の上方に浮いており、タップ可能である。ここでは、測定された位置を示す情報として、住所文字列及び測定日時が表されたレコード枠34を採用したが、住所文字列のみが表されたレコード枠34であってもよいし、住所文字列のみであってもよい。また、住所文字列は、番地まで表されたものであってもよいし、州、県、市、町、村などの行政区画名のみであってもよい。また、測定された位置を示す情報として、位置を示す図柄が表されたアイコンを採用してもよい。後述するように、これらの情報は、測定された位置を変換することにより得られる。
ユーザ端末16は、測位ユニット16bにより自機位置を繰り返して測定しつつも、新たに測定された位置が既に保持されている最新の位置から所定距離(例えば2km)以上離れているときだけ、当該新たに測定された位置を保持するようにしている。逆に、新たに測定された位置が既に保持されている最新の位置から所定距離未満しか離れていなければ、当該新たに測定された位置を保持しない。さらに、ユーザ端末16においては、測位結果を所定数(例えば20)だけ保持するが、そのうちユーザ端末16の移動経路を表すのに有意義な一部の測位結果を選出する。例えば、前回の測位時刻からの経過時間、前回測位された位置からの距離の増加関数である評価値を各測位結果について計算し、その上位から所定数(例えば10)を選出する。そして、選出された測位結果に対応するレコード枠34のみを移動経路画像に含める。こうすることで、有意な移動のみを移動経路画像に表すことができ、理解しやすい移動経路画像とすることができる。また、無駄な表示を抑制して、タッチスクリーン16aを効率的に利用することができる。
また、各レコード枠34の左端には、状況画像34aが表されている。この状況画像34aは、同じ位置をユーザ位置管理サーバ12にアップロードした他のユーザ端末16の数、ユーザ端末16が測位しユーザ位置管理サーバ12にアップロードした位置を、友人である他のユーザのユーザ端末16も測位しユーザ位置管理サーバ12にアップロードしているか否か、などを示している。これにより各位置に、ユーザ端末16を所持した他のユーザがどのくらいいたか、友人がいたかを、一目で把握できるようにしている。各レコード枠34には、注目すべきゲームプログラムのタイトル36も表される。なお、移動経路画像の右下には、ボタン37も配置される。このボタン37は、タッチスクリーン16aに、後述するランキング画像を表示させるためのものである。
各レコード枠34の左側には、白地又は黒地の足跡画像が表されている。白地の足跡画像は、対応するレコード枠34が一定時間毎に自動的に測位した結果を示すものであることを表している。また、黒地の足跡画像は、対応するレコード枠34がユーザの操作に応じて測位した結果を示すものであることを表している。また、レコード枠34のうち、実線で囲まれたものは、ユーザの操作に応じて測位結果等がアップロードされたことを示しており、実線で囲まれたものは、一定時間毎に行われる自動アップロードによりアップロードされたことを示している。
図5に示されるように、タッチスクリーン16aの画面の左端の縦長領域は、タブ領域42であり、このタブ領域42にはタブ画像38,40が表示される。タブ画像38,40は上から表示順に配置されている。また、タブ領域42の右側は主領域44である。ここには、移動経路画像が配置されている。タブ領域42には複数のタブ画像38,40が表示されており、メインメニュー画像に関連づけられたタブ画像38が一番上に配置されており、現在主領域44に表示されている画像に関連づけられたタブ画像40が一番下に配置されている。各タブ画像38,40には、それらがどの画像に関連づけられているのかを示す画像がアイコンとして表されている。
図6に示されるように、図3に示されるメインメニュー画像においてボタン22をタッチすると、移動経路画像及びそれに連結されたタブ画像40がタッチスクリーン16aの右端から現れる。これら画像は左方向にスライドして、移動経路画像はメインメニュー画像の上に覆い被さる。これにより、主領域44には、メインメニュー画像に代えて移動経路画像が表示されることになる。また、タブ画像40はタブ領域42に進入する。後述する他の画像も同様にしてタッチスクリーン16aに現れる。なお、メインメニュー画像に関連づけられたタブ画像38は、メインメニュー画像以外のいずれかの画像が主領域44に表示される際、タブ領域42の最上部に現れる。
図7は、図5の移動経路画像においてレコード枠34がタップされたときにタッチスクリーン16aに表示されるレーダー画像を示している。レーダー画像も、移動経路画像と同様、タブ画像54とともにタッチスクリーン16aの右端から現れる。レーダー画像の中央には、自らを示す黒丸が表されており、その周囲にはプライバシー設定を「公開」とした他のユーザのアバター画像48が表されている。アバター画像48は台紙50の上に浮くように配置されており、タップ可能である。また、レーダー画像には、プライバシー設定を「非公開」とした他ユーザの存在を暗示する小画像52も表されている。ここで、アバター画像48は、実際に測位ユニット16bにより測定された位置に基づいてタッチスクリーン16aにおける表示位置が決定されている。すなわち、測位ユニット16bにより測定されユーザ位置管理サーバ12にアップロードされた位置に基づいて、自らの位置を基準とした、他の「公開」に係るユーザの相対的位置が算出され、算出される相対的位置に基づいて各アバター画像48のタッチスクリーン16aにおける表示位置が決定される。一方、小画像52のタッチスクリーン16aにおける表示位置は乱数に従って決定されている。
図8は、図7のレーダー画像において、ボタン37をユーザがタップしたときにタッチスクリーン16aに表示されるランキング画像を示している。この画像は、図5の移動経路画像に含まれるボタン37をタップしたときにも表示される。ランキング画像に配置されている各要素は、台紙55の上に配置されている。同図に示すように、ランキング画像には、当該ユーザ端末16のユーザと同じ位置をユーザ位置管理サーバ12にアップロードしたユーザ端末16においてプレイされていたゲームプログラムのタイトルが表示されている。各タイトルは、当該タイトルのゲームプログラムをプレイしたユーザ端末16が多い順に表示されている。各タイトルの右側には、該タイトルのゲームプログラムがプレイされたユーザ端末16の数が表示されている。ランキング画像も全体として縦長形状であり、タッチスクリーン16aにはその一部に設定される表示範囲のみが表示される。そして、タッチスクリーン16aに対してユーザがフリックなどの所定の操作を行うことにより、表示範囲を移動させることができる。
図9は、図8のランキング画像においていずれかのゲームプログラムのタイトル36がタップされたとき、タッチスクリーン16aに表示されるタイトルプロフィール画像を示している。この画像は、図5の移動経路画像や図7のレーダー画像においていずれかのタイトル36がタップされたときにも表示される。タイトルプロフィール画像には、当該ゲームプログラムに関する他のユーザの評価やプレイ状況を示す情報欄が含まれる。情報欄の内容は、例えば情報サーバ14から受信される。タイトルプロフィール画像には台紙57の上に配置されたボタン100,102,104が含まれており、ボタン100がタップされると、ウェブブラウザを起動し、同ゲームタイトルを購入できる電子商取引サイトのウェブページをタッチスクリーン16aに表示する。また、ボタン102がタップされると、ウェブブラウザを起動し、同ゲームタイトルを検索文字として検索サイトにアクセスする。そして、ゲームタイトルに関連する情報を配信しているサイトのリストをタッチスクリーン16aに表示する。また、ボタン104がタップされると、ウェブブラウザを起動し、地図サイトにアクセスする。そして、ゲームタイトルのソフトウェアを販売する店舗の場所を示す地図をタッチスクリーン16aに表示する。タイトルプロフィール画像も縦長形状であり、タッチスクリーン16aにはその一部に設定される表示範囲のみが表示される。そして、タッチスクリーン16aに対してユーザがフリックなどの所定の操作を行うことにより、表示範囲を移動させることができる。
図10は、図3のメインメニュー画像に表されたボタン24をタップしたときにタッチスクリーン16aに表示されるフレンド画像を示している。同図に示すように、フレンド画像には、各友人に関する最新情報が表されている。最新情報は、例えば情報サーバ14から受信される。フレンド画像も縦長形状であり、タッチスクリーン16aにはその一部に設定される表示範囲のみが表示される。そして、タッチスクリーン16aに対してユーザがフリックなどの所定の操作を行うことにより、表示範囲を移動させることができる。フレンド画像にもタブ画像106が連結されている。
図11は、図3のメインメニュー画像に表されたボタン26をタップしたときにタッチスクリーン16aに表示されるステータス画像を示している。ステータス画像は、ユーザ位置管理サーバ12にアップロードした位置の数や総移動距離などの情報を示している。これらの情報は、情報サーバ14から受信されたり、或いはユーザ端末16において算出されたりする。ステータス画像にもタブ画像108が連結されている。
図12は、図3のメインメニュー画像に表されたボタン28をタップしたときにタッチスクリーン16aに表示される設定画像を示している。設定画像にもタブ画像110が連結されている。
設定画像において、「公開設定」と表示された領域をユーザがタップすると、図13に例示する公開設定画像がタッチスクリーン16aに表示される。ここで、「オンラインIDを公開する」と表示された領域の右側に配置されているチェックボックスをユーザがタップすることによって、プライベート設定を「公開」又は「非公開」のいずれかに切り替えることができるようになっている。公開設定画像にもタブ画像112が連結されている。
そして、プライベート設定が「公開」である状態で、ユーザが、公開設定画像のプライバシーエリアと表示された領域をタップすると、図14に例示するプライバシーエリア設定画像がタッチスクリーン16aに表示される。プライバシーエリア設定画像では、ユーザは所定数の(例えば最大5箇所)のプライバシーエリアを設定することができるようになっている。本実施形態では、このとき、プライバシーエリアの中心点の位置座標(緯度及び経度)がユーザ端末16に記憶される。また、プライバシーエリア設定画像にもタブ画像114が連結されている。本実施形態では、直径2kmに相当する円によって、プライバシーエリアの内と外とが区切られている。
ここで、タブ画像を利用して既に表示した画像を主領域44に表示させる手順について説明する。ユーザ端末16では、タブ領域42に表示させたいずれかのタブ画像をタップすることにより、そのタブ画像に関連づけられた画像を主領域44に再度表示させることができる。例えば、図3に示されるメインメニュー画像、図5に示される移動経路画像、図7に示されるレーダー画像、図8に示されるランキング画像、図9に示されるタイトルプロフィール画像がこの順で主領域44に表示された場合、タブ領域42には、上から順にそれらの画像に対応するタブ画像38,40,54,56,58が表示される。このうち、タブ画像54をタップすると、図7に示される表示に戻る。すなわち、ユーザにより指示されたタブ画像54に関連づけられたレーダー画像が再び主領域44に表示される。このとき、タブ領域42から、タップされたタブ画像54より後にタブ領域42に現れたタブ画像56,58は消去される。
具体的には、図15に示すように、タブ画像58が連結された状態でタイトルプロフィール画像は右方向にスライドし、タッチスクリーン16aの右端から消える。また、タブ画像58及びタイトルプロフィール画像の移動が開始された後、それら画像が消える前に、タブ画像56が連結された状態でランキング画像も右方向にスライドし、タッチスクリーンの右端から消える。仮想3次元空間において主領域44に表示される各画像(台紙のオブジェクト)は互いに離間しており、表示順に並べられ、最後に表示された画像が最も仮想カメラ側に近くなっている。また、各画像に関連づけられたタブ画像は、該画像と同一平面に配置されている。このため、主領域44の画像がスライド移動すると、その画像の直前に主領域44に表示されていた画像が現れる。こうして、ユーザにより指示されたタブ画像54に関連づけられたレーダー画像よりも後に主領域44に表示されたタイトルプロフィール画像及びランキング画像を、新しいものから順にタブ画像58,56とともに移動させることにより、ユーザにより指示されたタブ画像54に関連づけられたレーダー画像を再び主領域44に表示させることができる。こうして、主領域44に表示される画像の切り替わってきた様子をユーザに理解させることができる。
また、タブ領域42に表示されたタブ画像38をタップすると、図16に示すように、それに関連づけられたメインメニュー画像が主領域44に再度表示される。このとき、タブ領域42に表示されていたタブ画像38は消去される。また、メインメニュー画像に示されるボタン22,24,26,28のうち、既にタップされたものについては、直前に主領域44に表示されていた画像を縮小したものに代えられる。この縮小画像をタップしても、同様にして移動経路画像、フレンド画像、ステータス画像、設定画像を主領域44に表示させることができる。縮小画像を表示することにより、ユーザがどのような作業をしていたかを直ちに理解させることができる。なお、タブ領域42に所定数を超える数のタブ画像を表示させる場合には、それらを平面的に上下に並べて仮想的に配置するとともに、所定数の隣接するタブ画像のみをタブ領域42に表示させる。そして、タブ領域42をフリックすることにより、他の所定数のタブ画像をタブ領域42に表示できるようにする。こうすれば、任意のタブ画像をフリックによりタブ領域42に表示させ、同タブ画像をタップすることにより、任意の画像を主領域44に再表示させることができる。また、タブ領域42に所定数を超える数のタブ画像を表示させる場合でも、各タブ画像のサイズを小さくしないので、ユーザは容易にそれら画像の上をタップできる。
ここで、図5に示される移動経路画像における各レコード枠34の位置を決定する処理について説明する。図5に示されるように、レコード枠34は左右方向にずれて配置されており、また上下方向に並べて配置されている。そして、左右方向のずれは、測位時刻を示している。また、隣接するレコード枠34の間隔は、それらレコード枠34に対応する位置間の距離及び測位時刻が所定時刻(午前3時)を跨いだかを示している。
すなわち、図17に示すように、レコード枠34の表示位置は、左右方向に所定の幅を有しており、左端が所定の基準時刻、右端がそこから24時間が経過した時刻に対応している。そして、レコード枠34を表示する場合には、同レコード枠34に対応する測位時刻を取得し、その測位時刻が左右方向の幅のうちどこに位置するかを算出する。このとき、左端を上記所定の基準時刻とし、右端をそこから24時間が経過した時刻とし、左端からの距離と上記所定の基準時刻からの経過時間とは線形の関係があるとしてよい。具体的には、端からα%だけ右の位置は、上記所定の基準時刻から24時間×α%だけ経過した時刻に対応させればよい。こうすれば、レコード枠34の左右方向の表示位置を見ただけで、概略の測位時刻を把握できる。
また、図18に示すように、隣接するレコード枠34のそれぞれに対応する位置座標の間隔が所定距離(例えば10km)未満であれば、それらレコード枠34の間隔を零とする。すなわち、両者を隣り合わせに表示する。例えば、図18において、レコード枠34−2及び34−3に対応する位置座標間の距離は、10kmを超えておらず、両者は隙間無く隣接して表示される。
また、隣接するレコード枠34のそれぞれに対応する位置座標の間隔が上記所定距離以上であれば、該所定距離を超える分に応じて間隔を線形に広げる。このとき、レコード枠34の間隔が所定の上限間隔Wmaxを超えないようにする。例えば、図18において、レコード枠34−1及び34−2に対応する位置座標間の距離は、10km以上であり、両者は10kmを超えた値に所定係数を乗じた距離W1(但しW1≦Wmax)だけ離間して表示される。
さらに、隣接するレコード枠34のそれぞれに対応する測位時刻が所定時刻(例えば午前3時)を跨いでいれば、間隔を上限間隔Wmaxの所定割合(例えば20%)だけ広げる。このときも、レコード枠34の間隔が所定の上限間隔Wmaxを超えないようにする。例えば、図18において、レコード枠34−3及び34−4に対応する位置座標間の距離は、10km未満であるが、測位時刻が午前3時を跨いでおり、両者は所定の上限間隔Wmaxの所定割合に相当する距離W2(但しW2≦Wmax)だけ離間している。以上のようにして、レコード枠34の間隔を見ただけで、各レコード枠34のそれぞれに対応する位置座標の間隔や、測位日が分かるようにできる。
以上説明した通信システムの構成について、さらに詳細に説明する。図19及び図20は、ユーザ端末16の機能ブロック図である。図19に示すように、ユーザ端末16は、機能的に測位部60、位置座標記憶部62、設定情報記憶部63、位置座標送信部64、アプリケーション実行部66、ゲーム実績記憶部68、表示制御部70及びアイテム通信部72を含んでいる。表示制御部70は、図20に示すように、移動経路画像生成部70a、フレンド画像生成部70b、ランキング画像生成部70c、レーダー画像生成部70d及びタイトルプロフィール画像生成部70e、ステータス画像生成部70f、設定画像生成部70gを含んでいる。これらの機能は、コンピュータゲームシステムであるユーザ端末16で、本発明の実施形態に係るプログラムが実行されることにより実現される。このプログラムは、コンピュータ通信ネットワーク10を介して他のコンピュータからダウンロードされてもよいし、CD−ROMやDVD−ROMなどのコンピュータ可読情報記憶媒体に格納され、そこからユーザ端末16にインストールされてよい。この場合、ユーザ端末16には媒体からプログラムを読み取るための媒体読取装置が内蔵され、又は外付けされる。
まず、測位部60は測位ユニット16bを中心として構成されており、定期的(例えば30分おき)に測位ユニット16bを起動して衛星信号(GPS信号)を受信し、そこから位置座標(緯度及び経度)を生成する。ユーザが明示的にタッチスクリーン16aを利用して測位を指示した場合にも、測位ユニット16bを起動して衛星信号を受信し、そこから位置座標を生成してよい。或いは、測位部60は、無線LAN通信ユニット16dにより通信可能な無線アクセスポイントの識別情報その他の必要な情報に基づき、ユーザ端末16の位置座標を取得してよい。例えば、コンピュータ通信ネットワーク10に接続された図示しないサーバにおいて無線アクセスポイントの識別情報と位置座標とを関連づけて記憶しておき、測位部60は該サーバに識別情報を送信することで、該識別情報に関連づけられた位置座標を取得する。測位部60からサーバに複数の無線アクセスポイントの識別情報及び各無線アクセスポイントからの電波の強度を送信し、サーバでは、電波強度による重み付けをして各無線アクセスポイントの位置座標を合成することにより、位置座標を算出し、測位部60に返信してもよい。同様に、携帯電話通信ユニット16cにより通信可能な携帯電話基地局の識別情報その他の必要な情報に基づき、ユーザ端末16の位置座標を取得してよい。なお、位置座標を測位部60が取得し、ユーザ位置管理サーバ12に送信する代わりに、無線アクセスポイントや携帯電話基地局の識別情報その他の必要な情報をユーザ位置管理サーバ12に送信し、該ユーザ位置管理サーバ12がそれらの情報に対応する位置座標を取得してもよい。
位置座標記憶部62は、図21に示すように所定数(例えば20)の位置座標及び該位置座標の測定日時を関連づけて記憶するものである。測位部60は、位置座標を生成する度に、位置座標記憶部62に最後に格納された位置座標を読み出し、新たに生成した位置座標と読み出された位置座標との間の距離を算出する。そして、所定距離(例えば2km)以上であれば、新たに生成した位置座標を該位置座標の測定日時とともに位置座標記憶部62に記憶する。このとき、測定日時から所定日数(例えば7日間)を超えている位置座標及び測定日時の組は削除する。また、測定日時から所定日数を超えていない位置座標及び測定日時の組が前記所定数だけ位置座標記憶部62に既に記憶されていれば、最も古い位置座標及び測定日時の組を削除し、代わりに新たに生成した位置座標を測定日時とともに格納する。一方、新たに生成した位置座標と読み出された位置座標との間の距離が所定距離未満であれば、位置座標記憶部62に格納せず破棄する。
アプリケーション実行部66は、ゲームプログラムなどのアプリケーションプログラムを実行する。アプリケーションプログラムは、コンピュータ通信ネットワーク10を介して他のコンピュータからダウンロードされてもよいし、CD−ROMやDVD−ROMなどのコンピュータ可読情報記憶媒体に格納され、そこからユーザ端末16にインストールされてよい。
ゲーム実績記憶部68は、図22に示すようにアプリケーション実行部66で最近実行された所定数(例えば5つ)のゲームプログラムのタイトルID、視聴レベル、総プレイ時間、最終プレイ日時を関連づけて記憶するものである。タイトルIDは、個々のゲームプログラムを識別する情報である。総プレイ時間は、これまで当該ゲームプログラムを遊んだ総時間である。視聴レベルは、ユーザが当該ゲームにどの程度熱中しているかを示す情報であり、当該ゲームプログラムの発売日と現在の日付との差や総プレイ時間などの情報から算出される。最終プレイ日時は、当該ゲームプログラムを最後にプレイした日時(起動日時又は終了日時)である。
設定情報記憶部63は、ユーザに関する設定を表す各種情報が記憶されている。設定情報記憶部63には、具体的には、例えば、ユーザのプライバシー設定(例えば、値は、「公開」又は「非公開」の値をとる。)を表すプライバシー設定データや、最大5つの、プライバシーエリアの中心点の位置座標(緯度及び経度)を表すプライバシーエリア中心位置データが記憶されている。ユーザは、タッチスクリーン16aに表示される公開設定画像や、プライバシーエリア設定画像を操作することによって、設定情報記憶部63に記憶されるプライバシー設定データやプライバシーエリア中心位置データの値の設定を行うことができるようになっている。
位置座標送信部64は、位置座標記憶部62に格納されている複数の位置座標及び測定日時の組、及びゲーム実績記憶部68に記憶されている所定数のゲームプログラムのタイトルID、視聴レベル、総プレイ時間の組を、携帯電話通信ユニット16c又は無線LAN通信ユニット16dを利用してユーザ位置管理サーバ12に送信する。この送信は、ユーザが明示的にタッチスクリーン16aを利用して送信を指示した場合に行ってよい。
ここで、位置座標送信部64による、位置座標等のユーザ位置管理サーバ12への送信処理の一例を図23に例示するフロー図を参照しながら説明する。
まず、位置座標送信部64は、位置座標記憶部62に記憶される各位置座標及び測定日時を読み出す(S101)。そして、位置座標送信部64は、このうちユーザの移動経路を表すのにふさわしい所定数の位置座標及び測定日時の組を、既に説明したようにして選出する(S102)。そして、位置座標送信部64は、S102に示す処理で選出された位置座標及び測定日時の組、及びゲーム実績記憶部68に記憶されている所定数のゲームプログラムのタイトルID、視聴レベル、総プレイ時間の組を、ユーザ位置管理サーバ12に送信する(S103)。S103に示す処理を、匿名モードでの位置座標等のアップロード処理と呼ぶこととする。
そして、位置座標送信部64は、ユーザのプライバシー設定が「公開」であるか否かを判定する(S104)。「公開」でない(すなわち、「非公開」である。)場合は(S104:N)、本処理例に示す処理を終了する。一方、「公開」である場合は(S104:Y)、位置座標送信部64は、S102に示す処理で選出された位置座標及び測定日時の組のうち、本処理例におけるS106以降に示す処理を行っていない組が存在するか否かを確認する(S105)。存在する場合は(S105:Y)、位置座標送信部64は、本処理例に示す処理を行っていない位置座標及び測定日時の組のうちの1つを処理対象となる位置座標及び測定日時の組として選択する(S106)。そして、位置座標送信部64は、S106に示す処理で選択された位置座標がいずれかのプライバシーエリア内に存在するか否かを確認する(S107)。すなわち、位置座標送信部64は、S106に示す処理で選択された位置座標からの距離が所定の距離(例えば、1km)以内である、プライバシーエリア中心位置データの値として設定されている位置座標が存在するか否かを確認する(S107)。存在する場合は(S107:Y)、S105に示す処理へ進む。存在しない場合は(S107:N)、位置座標送信部64は、S106に示す処理で選択された位置座標及び測定日時の組、及びゲーム実績記憶部68に記憶されている所定数のゲームプログラムのタイトルID、視聴レベル、総プレイ時間の組を、ユーザ端末16を利用するユーザのユーザIDに関連付けてユーザ位置管理サーバ12に送信して(S108)、S105に示す処理へ進む。S108に示す処理を、ID公開モードでの位置座標等のアップロード処理と呼ぶこととする。
S105に示す処理において、本処理例におけるS106以降に示す処理を行っていない位置座標及び測定日時の組が存在しないことが確認された場合は(S105:N)、本処理例に示す処理を終了する。
位置座標送信部64は、位置座標記憶部62に格納されている位置座標及び測定日時の複数組をタッチスクリーン16aに表示して、ユーザ位置管理サーバ12に送信してよいかどうか確認すれば好適である。さらに、送信したくない位置座標及び測定日時の組を削除し、残りの組だけユーザ位置管理サーバ12に送信できるようにしてもよい。また、こうした確認を省略する設定をユーザに行わせてもよい。この場合、定期的(例えば1日1回)に位置座標記憶部62に格納されている複数の位置座標及び測定日時の組を自動送信する。
なお、表示制御部70及びアイテム通信部72については後述する。
次に、図24は、ユーザ位置管理サーバ12の機能ブロック図である。同図に示すように、ユーザ位置管理サーバ12は、機能的に位置座標受信部80、領域毎タイトルID記憶部82、領域毎ユーザID記憶部84、ユーザ情報記憶部86、ランキング生成部88、領域毎ランキング記憶部90、ランキング配信部92、近傍ユーザ配信部94及びユーザ情報配信部96を含んでいる。これらの機能は、コンピュータであるユーザ位置管理サーバ12で、本発明の実施形態に係るプログラムが実行されることにより実現される。このプログラムは、コンピュータ通信ネットワーク10を介して他のコンピュータからダウンロードされてもよいし、CD−ROMやDVD−ROMなどのコンピュータ可読情報記憶媒体に格納され、そこからユーザ位置管理サーバ12にインストールされてよい。
位置座標受信部80は、ユーザ端末16の位置座標送信部64から送信される、複数の位置座標及び測定日時の組、及び所定数のゲーム実績データ(プログラムのタイトルID、視聴レベル及び総プレイ時間の組)を受信する。
領域毎タイトルID記憶部82は、図25に示すように、領域ID、時間スロット、所定数(例えば20)のゲーム実績データを関連づけて記憶するものである。領域IDは、管理対象となる領域(例えば地球上の全領域)を多数のメッシュに分割した場合における各メッシュ状領域を特定(指定)する情報である。時間スロットは、所定時間(例えば6時間)の時間範囲を特定する情報である。ゲーム実績データは、タイトルID、視聴レベル、総プレイ時間を含んでいる。すなわち、領域毎タイトルID記憶部82は、領域ID及び時間スロットの組に関連づけて、所定数(例えば20)のゲーム実績データを記憶するものである。位置座標受信部80は、例えば、上述のS103に示すような匿名モードでの位置座標等のアップロード処理によりユーザ端末16から複数の位置座標及び測定日時の組、及び所定数のゲーム実績データを受信すると、受信した各位置座標が含まれる領域の領域IDを導出する。また、受信した各位置座標の測定日時が含まれる時間スロットを導出する。そして、導出された領域ID及び時間スロットの組に関連づけて、ユーザ端末16から受信したゲーム実績データを領域毎タイトルID記憶部82に格納する。このとき、既に所定数のゲーム実績データが領域毎タイトルID記憶部82の該当箇所に記憶されていれば、最も古いゲーム実績データを削除し、代わりに今回受信したゲーム実績データを格納する。
領域毎ユーザID記憶部84は、図26に示すように領域ID毎に、ユーザID、位置座標及び測定日時を関連づけて記憶するものである。位置座標受信部80は、例えば、上述のS108に示すようなID公開モードでの位置座標等のアップロード処理によりユーザ端末16からユーザIDに関連付けられた複数の位置座標及び測定日時の組、及び所定数のゲームプログラムのタイトルID、視聴レベル及び総プレイ時間の組を受信すると、受信した各位置座標が含まれる領域の領域IDを導出する。そして、導出される領域IDに関連づけて、ユーザ端末16を利用しているユーザのユーザID、受信した位置座標及び測定日時を格納する。また、測定日時から一定時間(例えば1週間)が経過している場合には、その位置座標及び測定日時を削除する。
ユーザ情報記憶部86は、図27に示すようにユーザID、最新位置座標、測定日時、所定数(例えば20)のゲーム実績データを関連づけて記憶するものである。位置座標受信部80は、例えば、上述のS108に示すようなID公開モードでの位置座標等のアップロード処理によりユーザIDに関連付けられた複数の位置座標及び測定日時の組、及び所定数のゲーム実績データを受信すると、最後に取得された位置座標及びその測定日時、受信された所定数のゲーム実績データを、ユーザ端末16を利用しているユーザのユーザIDに関連づけてユーザ情報記憶部86に格納する。
ランキング生成部88は、領域毎タイトルID記憶部82の記憶内容に従って、ゲームタイトルのランキングを領域ID毎に生成するものである。例えば、領域ID毎に過去の一定期間(一月など)に含まれる時間スロットに関連づけて、領域毎タイトルID記憶部82に格納されているゲーム実績データの数をタイトルID毎に集計し、その上位10個をランキングとして生成する。このランキングのデータには、タイトルID毎のゲーム実績データ総数(プレイ延べ人数)が含まれる。或いは、領域ID毎に過去の一定期間(一月など)に含まれる時間スロットに関連づけて、領域毎タイトルID記憶部82に格納されているゲーム実績データの視聴レベルをタイトルID毎に平均し、その平均値の上位10個をランキングとして生成する。このランキングのデータにも、タイトルID毎のゲーム実績データ総数(プレイ延べ人数)が含まれる。生成されるランキングのデータは領域IDに関連づけて領域毎ランキング記憶部90に格納される。また、ランキング配信部92は、ユーザ端末16から位置座標を受信すると、該位置座標が含まれる領域の領域IDを導出するとともに、導出される領域IDに関連づけて領域毎ランキング記憶部90に格納されているランキングを読み出し、ユーザ端末16に返信するものである。
近傍ユーザ配信部94は、ユーザ端末16から位置座標及び探索領域の大きさ指定を受信すると、受信される位置座標が含まれる領域を(例えば中心位置に)含むn×n(1×1、3×3、5×5、7×7、9×9、…、25×25等)個の領域群を探索領域とする。ここでnは、ユーザ端末16から受信される、探索領域の大きさ指定に応じて決定される。そして、決定された探索領域を構成する各領域の領域IDに関連づけて領域毎ユーザID記憶部84に記憶されているユーザID及び位置座標の組を読み出し、ユーザ端末16に返信する。
ユーザ情報配信部96は、ユーザ端末16からユーザIDを受信すると、該ユーザIDに関連づけてユーザ情報記憶部86に記憶されている最新位置座標、測定日時、所定数のゲーム実績データを返信する。ユーザ端末16は、特定ユーザが遊んでいるゲームタイトルをタッチスクリーン16aに表示させたい場合に、ユーザ情報配信部96からそれらの情報を受信すればよい。
ここで、ユーザ端末16における各種画面の表示処理について説明する。ユーザ端末16の表示制御部70は、上述のように、移動経路画像生成部70a、フレンド画像生成部70b、ランキング画像生成部70c、レーダー画像生成部70d及びタイトルプロフィール画像生成部70e、ステータス画像生成部70f、設定画像生成部70gを含んでいる。
まず、移動経路画像生成部70aは、図5に示す移動経路画像を生成する。この画像を生成するにあたって、まず移動経路画像生成部70aは、図28に示すように、位置座標記憶部62に記憶される各位置座標及び測定日時を読み出す(S201)。そして、このうちユーザの移動経路を表すのにふさわしい所定数の位置座標及び測定日時の組を、既に説明したようにして選出する(S202)。
次に、最も古い測定日時に対応するレコード枠34を移動経路画像の下部に設定された所定位置に配置する(S203)。そして、次に古い測定日時に対応する位置座標と、その前に測定日時に対応する位置座標と、の距離を算出する(S204)。そして、算出された距離に応じてレコード枠34の間隔を暫定的に決定する(S205)。具体的には、算出された距離が所定基準距離未満であれば暫定的な間隔を零とする。所定基準距離以上であれば暫定的な間隔を、算出された距離から所定基準距離を減算した値に所定係数を乗じた値を暫定的な間隔とする。但し、この暫定的な間隔が上限間隔Wmaxを超えていれば暫定的な間隔をWmaxに置き換える。
さらに、測定日時が所定時刻を跨いだか否かを判断し(S206)、跨いでいれば上記暫定的な間隔に上限間隔Wmaxの所定割合を加算して暫定的な間隔を更新する(S207)。このときも、更新後の間隔が上限間隔Wmaxを超えていれば暫定的な間隔をWmaxに置き換える。こうして更新される暫定的な間隔を最終的な間隔として、レコード枠34の表示位置を決定する。すなわち、1つ前の測定日時に対応する位置座標よりも上側に、S204乃至S207の処理により算出される間隔だけ移動した位置に、レコード枠の表示位置を決定する。このとき、左右方向の位置については、図17に示すようにして測定時刻に従って決定する。そして、すべてのレコード枠34について表示位置を決定するまで、S204乃至S208の処理を繰り返し、その後、決定された表示位置に従って各レコード枠34の画像を生成する。
このとき、各位置座標に対応する住所文字列を取得する。住所文字列は位置座標の範囲に関連づけてユーザ端末16で予め記憶しておいてもよいし、同様にして情報サーバ14で記憶しておいてもよい。後者の場合、情報サーバ14に位置座標を送信すると、その位置座標が含まれる範囲に関連づけられた住所文字列を情報サーバ14が読み出し、それをユーザ端末16に返信する。こうして取得される住所文字列を測定日時とともに移動経路画像に測定日時順に含める。
次に、移動経路画像生成部70aは、S202で選出された各位置座標をユーザ位置管理サーバ12に送信して、ランキングを要求する。これに対してユーザ位置管理サーバ12のランキング配信部92は、受信した位置座標が含まれる領域の領域IDを導出するとともに、導出される領域IDに関連づけて領域毎ランキング記憶部90に格納されているランキングを読み出し、ユーザ端末16に返信する。移動経路画像生成部70aでは、既にユーザ位置管理サーバ12から同じ領域IDに関連づけられたランキングを受信していれば、両ランキングを比較する。そして、最も順位が上がったゲームタイトルや最もランキングの基礎となった数値(ゲーム実績データ総数や視聴レベルの平均値など)が上昇したタイトルを注目タイトルとして、そのタイトル名を移動経路画像に含める(符号36)。また、未だユーザ位置管理サーバ12から同じ領域IDに関連づけられたランキングを受信していなければ、例えば今回受信したランキングにおいて1位のゲームタイトルを注目タイトルとして、そのタイトル名を移動経路画像に含めればよい。
また、移動経路画像生成部70aは、位置座標記憶部62に記憶される各位置座標、及び1×1個の領域を探索領域とする大きさ指定をユーザ位置管理サーバ12に送信して、近傍ユーザの探索を要求する。これに対して、ユーザ位置管理サーバ12の近傍ユーザ配信部94は、受信した位置座標が含まれる領域の領域IDを導出するとともに、この領域IDに関連づけて領域毎ユーザID記憶部84に記憶されている全てのユーザID及び位置座標の組を読み出し、ユーザ端末16に返信する。移動経路画像生成部70aは、各位置座標に対応するユーザIDの数を計数して、その数に応じた状況画像34aを同位置座標に係るレコード枠34内に表示する。
また、ユーザ端末16は、当該ユーザ端末16のユーザの友人のユーザIDを記憶しており、ユーザ位置管理サーバ12の近傍ユーザ配信部94から送信されるユーザIDの中に、当該ユーザ端末16で記憶している友人のユーザIDが含まれていれば、そのユーザIDに対応するレコード枠34内の状況画像34aにより、その旨を表す(例えば状況画像34a内にエクスクラメーション・マークを含める)。
次に、フレンド画像生成部70bは、図10に示すフレンド画像を生成する。フレンド画像を生成する際には、フレンド画像生成部70bは、ユーザ端末16に記憶されている友人のユーザIDを読み出し、それらユーザIDに関連づけられた最新情報を情報サーバ14から受信する。最新情報としては、例えば各ユーザがユーザ端末16その他のコンピュータから入力したメッセージ、ユーザ端末16その他のコンピュータで実行させたゲームプログラムが自動生成する、ゲームプログラムの実行状況(ゲームの進行度合・プレイの巧拙など)を示すメッセージである。そして、それらをフレンド画像の下部領域に含めることで、フレンド画像を完成させる。こうして生成されるフレンド画像はタッチスクリーン16aにより表示される。
ランキング画像生成部70cは、図8に示すランキング画像を生成する。ランキング画像生成部70cは、ユーザに指定された位置座標をユーザ位置管理サーバ12に送信して、ランキング配信部92からランキングのデータを受信する。そして、こうして受信されるランキングのデータに基づいてランキング画像を生成する。生成されるランキング画像はタッチスクリーン16aにより表示される。ランキング画像生成部70cは、位置座標記憶部62に記憶される複数の位置座標(例えば全ての位置座標)に係るランキングのデータを受信するとともに、ランキングを生成する基礎となった各タイトルの数値(ゲーム実績データ総数や視聴レベルの平均値など)をタイトル毎に合計し、その合計値によりランキングを生成し、ランキング画像を生成・表示してもよい。こうすれば、ユーザが訪れた複数位置(例えば移動経路上の全位置)における総合的なランキングを表示できる。もちろん、位置座標記憶部62に記憶される位置座標のうち1つに係るランキングのデータを受信して、そのデータに基づいて1エリアでのランキング画像を生成・表示してもよい。
タイトルプロフィール画像生成部70eは、図9に示すタイトルプロフィール画像を生成する。タイトルプロフィール画像生成部70eは、タイトルIDを情報サーバ14に送信して、情報欄に記載すべき情報を受信する。そして、こうして受信される情報に基づいてタイトルプロフィール画像を生成する。生成されるタイトルプロフィール画像はタッチスクリーン16aにより表示される。
また、ステータス画像生成部70fは、図11に示すステータス画像を生成する。
また、設定画像生成部70gは、図12に示す設定画像、図13に示す公開設定画像、図14に示すプライバシーエリア設定画像を生成する。
設定画像生成部70gは、プライバシーエリア設定画像を生成する際に、まず、情報サーバ14からユーザの現在位置を中心とした所定の大きさの地図を取得する。そして、設定画像生成部70gは、位置座標送信部64により送信されていない位置座標記憶部62に記憶されている位置座標及び測定日時の組のうちから、既に説明したようにして所定数の組を選出する。そして、設定画像生成部70gは、選出された位置座標については、その位置座標に対応する地図上の位置にユーザ端末16を利用するユーザのアバター画像116を配置するとともに、その近傍にその位置座標に関連付けられている測定日時を表す文字列を配置する。また、設定画像生成部70gは、選出されなかった位置座標については、その位置座標に対応する地図上の位置にバツ印の小画像120を配置する。また、設定画像生成部70gは、位置座標送信部64により送信されていない位置座標記憶部62に記憶されている位置座標に対応する地図上の位置を、位置座標に関連付けられている測定日時が早いものから順につないだ曲線(図14の例では点線で表されている。)も地図上に配置する。このようにして生成されたプライバシーエリア設定画像がタッチスクリーン16aに表示されることとなる。このようにして、ユーザは、位置座標等のユーザ位置管理サーバ12への次回の送信の際にどの位置座標等が送信されるのかを知ることができる。そして、設定画像生成部70gは、タッチスクリーン16aの中央に、プライバシーエリアの範囲を表す円形領域122を配置する。
そして、プライバシーエリア設定画像では、ユーザが円形画像122に対するスライド操作を実行することにより、スライドした方向に円形画像122の位置を変えることができるようになっている。また、円形画像122をタップすることにより、円形画像122内の領域がプライバシーエリアとして設定されていない場合は、この領域がプライバシーエリアとして設定され(すなわち、この領域の中心位置の位置座標がプライバシーエリア中心位置データとして記憶され)、円形画像122内の領域がプライバシーエリアとして設定されている場合は、その設定が解除される(すなわち、この領域に対応する設定情報記憶部63に記憶されているプライバシーエリア中心位置データが削除される)。
また、プライバシーエリアの設定が行われた際に、設定画像生成部70gは、上述の選出された各位置座標について、プライバシーエリアの中心位置からの距離が所定の範囲内(例えば1km以内)であるか否かを判定して、所定の範囲内である位置については、プライバシーエリア設定画像において、ユーザ端末16を利用するユーザのアバター画像116を、匿名ユーザを表すアバター画像118に変化させる。また、プライバシーエリアの設定が解除された際には、設定画像生成部70gは、上述の選出された各位置座標について、解除されたプライバシーエリアの中心位置からの距離が所定の範囲内(例えば1km以内)であるか否かを判定して、所定の範囲内である位置については、プライバシーエリア設定画像において、匿名ユーザを表すアバター画像118を、ユーザ端末16を利用するユーザのアバター画像116に変化させる。図14では、円形画像122内の領域がプライバシーエリアとして設定されたプライバシーエリア設定画像が示されている。そのため、円形画像122が占める領域内のアバター画像は、匿名ユーザを表すアバター画像118となっており、円形画像122が占める領域外のアバター画像は、ユーザ端末16のユーザを表すアバター画像116となっている。
このようにして、ユーザは、ID公開モードでの位置座標等のアップロード処理が行われる位置座標、及び、プライバシー設定が「公開」であってもID公開モードでの位置座標等のアップロード処理が行われない位置座標を知ることができることとなる。
レーダー画像生成部70dは、図7に示すレーダー画像を生成する。レーダー画像を生成する際には、レーダー画像生成部70dは、まず位置座標記憶部62に記憶される位置座標のうちユーザにより指定されたもの、及び1×1個の領域を探索領域とする大きさ指定をユーザ位置管理サーバ12に送信して、近傍ユーザの探索を要求する。そして、これに応じてユーザ位置管理サーバ12の近傍ユーザ配信部94から返信されるユーザID及び位置座標を受信する。受信されるユーザIDの数が10未満であれば、次に同じ位置座標を、2×2個の領域を探索領域とする大きさ指定とともにユーザ位置管理サーバに送信し、近傍ユーザの探索を再度要求する。そして、受信されるユーザID及び位置座標の数が10以上となるか、或いは探索領域がM×M個の領域(Mは所定数)となるまで、近傍ユーザの探索を繰り返し実行させる。こうして近傍ユーザ配信部94から受信するユーザID及び位置座標に基づき、レーダー画像を生成する。具体的には、ユーザにより指定された位置座標と、近傍ユーザ配信部94から受信される各位置座標との差を計算し、他ユーザを示す各アバター画像48の表示位置を決定する。すなわち、他のユーザ端末16の自分のユーザ端末16に対する相対的な位置に従って各アバター画像48を表示させる。このようにして、本実施形態では、自らの位置座標とプライバシー設定が公開となっている近傍ユーザの位置座標との距離が、レーダー画像の中心点からのアバター画像48までの距離として概ね表されることとなる。さらに、移動経路画像を生成する際にランキング配信部92から受信しているプレイ延べ人数の総和(全体タイトルのプレイ延べ人数の和)を求めて、その数に応じた小画像52をレーダー画像中にランダムに配置する。本実施形態では、プレイ延べ人数の総和が多ければ多いほど小画像52の数が増えるようになっている。こうして生成されるレーダー画像もタッチスクリーン16aにより表示される。このようにして、本実施形態では、自らの近傍でどの程度のユーザがゲームをプレイしているかがレーダー画像に概ね表されることとなる。
ユーザがレーダー画像中のアバター画像48をタップすると、ユーザ端末16は、そのアバター画像48に対応するユーザIDに関連付けられたユーザ情報配信要求をユーザ位置管理サーバ12に送信する。そして、ユーザ位置管理サーバ12のユーザ情報配信部96は、受け付けた要求に関連付けられているユーザIDに関連づけてユーザ情報記憶部86に記憶されている最新位置座標、測定日時、所定数のゲーム実績データを返信する。そして、ユーザ端末16は、この情報に基づいて生成される画像をタッチスクリーン16aに表示する。
以上のように、本実施形態では、ユーザ位置管理サーバ12は、情報の提供元となるユーザ端末16から取得して領域毎ユーザID記憶部84に記憶された位置座標と、情報の提供先となるユーザ端末16から取得した、情報の提供先となるユーザ端末16のユーザにより指定された位置座標とに応じて、情報の提供元となるユーザ端末16に関する情報を情報の提供先となるユーザ端末16に提供するか否かを制御する。そして、本実施形態では、領域毎ユーザID記憶部84に記憶される情報は、ID公開モードでの位置座標等のアップロード処理により、ユーザ端末16からユーザ位置管理サーバ12に送信される位置座標等に基づいている。さらに、本実施形態では、プライバシーエリア内の位置座標はID公開モードでの位置座標等のアップロード処理では、ユーザ位置管理サーバ12に送信されない。従って、ユーザ位置管理サーバ12による、情報の提供元となるユーザ端末16に関する情報を情報の提供先となるユーザ端末16に提供するか否かの制御には、プライバシーエリア外の位置座標が用いられることとなる。
また、上述のように、本実施形態では、ユーザ端末16からID公開モードで送信された位置座標は、アップロード元のユーザ端末16のユーザに関する情報を他のユーザ端末16に提供するか否かの制御に用いられる。一方、ユーザ端末16から匿名モードで送信された位置座標は、ランキング生成部88によるランキングの生成に用いられるが、アップロード元のユーザ端末16のユーザに関する情報が他のユーザ端末16に提供されるか否かの制御には用いられない。
アイテム通信部72は、ゲームプログラムで利用されるアイテムなどのデータを交換するものである。アプリケーション実行部66は、ゲームプログラムを実行する際にアイテムを発生させると、このアイテムの識別情報(アイテムID)をゲーム実績記憶部68に格納する。アイテム通信部72では、こうしてアイテムIDがゲーム実績記憶部68に格納されると、このアイテムIDを、位置座標記憶部62に記憶されている各位置座標とともにユーザ位置管理サーバ12に送信する。そして、ユーザ位置管理サーバ12では、アイテムID及びユーザIDの組を、各位置座標が含まれる領域の領域IDに関連づけて記憶する。以上のようにして、アイテムIDのアップロードが完了する。
アイテム通信部72は、他のユーザがアップロードしたアイテムIDを受信する処理も行う。この場合、位置座標記憶部62に記憶されている各位置座標をユーザ位置管理サーバ12に送信する。ユーザ位置管理サーバ12では、受信した各位置座標が含まれる領域の領域IDに関連づけて記憶されたアイテムID及びユーザIDの組を返信する。アイテム通信部72は、こうして受信される全てのアイテムIDをゲーム実績記憶部68に記憶させて、それらアイテムIDにより識別されるアイテムがゲームプログラムの中で利用できるようにしてもよい。或いは、自らのユーザIDとアイテムIDとともに受信したユーザIDとに基づいて相性度を計算し、この相性度が一定値以上の場合にのみ、アイテムIDをゲーム実績記憶部68に記憶させて、そのアイテムIDにより識別されるアイテムがゲームプログラムの中で利用できるようにしてもよい。
また、表示制御部70は、上述したようにタッチスクリーン16aのタブ領域42にタブ画像を表示し、このタブ画像がタップされた場合、或いは主領域44に表示された画像中に配置されたボタン等の画像がタップされた場合に、画像切替処理を行う。図29は、この画像切替処理を示すフロー図である。同図に示すように、まずタブ画像がタップされたか(S301)、それ主領域44中のボタン等の画像がタップされたか(S302)を判断する。主領域44中の画像がタップされた場合には、その画像に関連づけられた画像にタブ画像を連結した画像を生成する(S303)。タブ画像は、ユーザにより指示された画像の左端に連結され、上下方向の連結位置は、図30に示す表示画像管理テーブルに従って決定される。すなわち、表示画像管理テーブルは、どの画像をどういう順序で表示させたかを記録するテーブルであり、現在表示しようとしている画像が何番目の画像であるか同テーブルから判断することができる。もし、n番目の画像であれば、タブ画像の縦方向の長さを(n−1)倍した位置に、タブ画像の上端が位置するようにして主領域44に表示する画像に連結する。その後、こうして生成される画像をタッチスクリーン16aの右端から出現させる(S304)。さらに、図27に示される表示画像テーブルを更新する。
一方、タブ画像がタップされた場合には(S301)、タップされたタブ画像以降にタブ領域42に表示されたタブ画像及びそれに関連する画像を消去する(S306)。具体的には、タップされたタブ画像以降にタブ領域42に表示されたタブ画像及びそれに関連する画像を、表示管理テーブルから判断する。そして、表示管理テーブルにおいて順序が後であるタブ画像及びそれに関連する画像から、順に右方向にスライドさせる。こうして、それら画像をタッチスクリーン16aから消去する。その後、消去したタブ画像に対応するレコードを、表示管理テーブルから削除する。
以上説明した通信システムによれば、近距離無線通信を用いずとも、同じ生活圏内にいる他のユーザの存在を実感することができるようになる。また、タッチスクリーン16aに地図を表示させなくても、測位ユニット16bにより測定された位置の軌跡をユーザに分かりやすく表示できる。
なお、本発明は上記実施形態に限定されず、種々の変形実施が可能である。例えば、ID公開モードでの位置座標等のアップロード処理において、位置座標送信部64は、送信の対象となる位置座標がいずれかのプライバシーエリア内に存在する場合は、非公開フラグに関連付けて、ユーザ位置管理サーバ12に送信するようにしてもよい。そして、位置座標受信部80は、この位置座標等を非公開フラグに関連付けて領域毎ユーザID記憶部84に記憶するようにしてもよい。そして、近傍ユーザ配信部94は、非公開フラグに関連付けられているユーザID及び位置座標の組は、ユーザ端末16に返信しないようにしてもよい。さらに、この場合に、ランキング生成部88が、匿名モードでユーザ端末16からユーザ位置管理サーバ12に送信された位置座標等に加え、ID公開モードで位置座標等のアップロード処理によりユーザ端末16からユーザ位置管理サーバ12に送信された位置座標等(非公開フラグに関連付けられている位置座標等も含む)にも基づいて、ゲームタイトルのランキングを生成するようにしてもよい。このようにすれば、匿名モードでユーザ端末16からユーザ位置管理サーバ12に送信された位置座標等だけからランキングを生成する場合よりも詳細なランキングを生成することが可能となる。
また、例えば、プライバシーエリアの大きさや形状がユーザによって設定可能であっても構わない。また、プライバシーエリアの範囲を表すデータは、プライバシーエリア中心位置データに限定されない。例えば、設定情報記憶部63では、プライバシーエリア中心位置データに、プライバシーエリアの大きさや形状を表す情報を関連付けて記憶するようにしてもよい。
また、例えば、以上の説明では、領域毎ユーザID記憶部84には、各領域IDにより識別される領域内の位置座標を所定時間(例えば1週間)内に測位し、ユーザ位置管理サーバ12にアップロードしたユーザのユーザIDが蓄積されている。そして、ユーザ端末16が、位置座標をユーザ位置管理サーバ12に送信すると、近傍ユーザ配信部94が、この位置座標に対応する領域IDを特定するとともに、該領域IDに関連づけて領域毎ユーザID記憶部84に記憶されたユーザID及び位置座標の組を返信する。そして、ユーザ端末16では、この情報に基づいてレーダー画像を生成したり、移動経路画像におけるメッセージを表示したりする。つまり、上記例によると、所定時間(例えば1週間)以内に同じ領域内の位置を測位したユーザ端末16に関する情報がユーザ位置管理サーバ12から提供される。
一方、変形例によると、近傍ユーザ配信部94は、特定された領域IDに関連づけて記憶されたユーザID及び位置座標に加えて、測定日時も返信する。すなわちユーザID、位置座標及び測定日時の組を返信する。ユーザ端末16では、各位置座標の測定日時を位置座標記憶部62から読み出し、測定日時の差が所定時間以内の組を選出し、その組に関する情報を表示する。例えば、その組のユーザIDにより識別されるユーザの情報(例えば最新情報など)を情報サーバ14から受信して表示したり、レーダー画像においてその組のユーザIDに対応するアバター画像48を表示したりする。或いは、その組のユーザIDが、予め記憶されている友人のユーザIDであれば、「友人の足跡を見つけました。」などのメッセージを表示してもよい。このようにすれば、同じ領域内で所定時間以内の差で測位したユーザ端末16に関する情報をタッチスクリーン16aに表示させることができる。また、ユーザ端末16では、測定日時の差、及び位置座標の差を計算して、測定日時の差が所定時間以内であり、且つ位置座標間の距離が所定距離以内である組を選出して、その組に関する情報を表示してもよい。こうすれば、時間的にも場所的にも近接したであろうユーザ端末16に関する情報をタッチスクリーン16aに表示させることができる。
また、他の変形例によると、ユーザ端末16が、位置座標をユーザ位置管理サーバ12に送信すると、近傍ユーザ配信部94が、この位置座標に対応する領域IDを特定するとともに、該領域IDに関連づけて領域毎ユーザID記憶部84に記憶されたユーザID及び位置座標の組を読み出す。そして、ユーザ端末16から送信された位置座標と読み出された位置座標との差が所定距離以内の組を選出する。そして、選出される組をユーザ端末16に返信する。ユーザ端末16では、この情報に基づいてレーダー画像を生成したり、移動経路画像におけるメッセージを表示したりする。こうすれば、所定距離以内で測位したユーザ端末16に関する情報のみをタッチスクリーン16aに表示させることができる。
さらに他の変形例によると、ユーザ端末16は、位置座標とともにその測定日時をユーザ位置管理サーバ12に送信する。近傍ユーザ配信部94は、受信される位置座標に対応する領域IDを特定するとともに、該領域IDに関連づけて領域毎ユーザID記憶部84に記憶されたユーザID、位置座標及び測定日時の組を読み出す。そして、ユーザ端末16から送信された測定日時と読み出された測定日時との差が所定時間以内の組を選出する。そして、選出される組をユーザ端末16に返信する。或いは、測定日時の差が所定時間以内であり、且つ位置座標の差が所定距離以内である組を選出し、選出される組をユーザ端末16に返信する。ユーザ端末16では、返信される情報に基づいてレーダー画像を生成したり、移動経路画像におけるメッセージを表示したりする。こうしても、時間的且つ場所的に近接したであろうユーザ端末16に関する情報をタッチスクリーン16aに表示させることができる。
さらに他の変形例によると、領域毎ユーザID記憶部84は、領域ID及び時間スロットの組毎に、その時間スロット内の日時にその領域IDで識別される領域内の位置を測位したユーザ端末16に係るユーザID、位置座標及び測定日時を記憶する。そして、ユーザ端末16は、位置座標とともにその測定日時をユーザ位置管理サーバ12に送信する。近傍ユーザ配信部94は、受信される位置座標に対応する領域IDを特定するとともに、受信される測定日時に対応する時間スロットを特定する。そして、特定された領域ID及び特定された時間スロットに関連づけて領域毎ユーザID記憶部84に記憶されたユーザID、位置座標及び測定日時の組を返信する。そして、ユーザ端末16では、これらの情報に基づいてレーダー画像を生成したり、移動経路画像におけるメッセージを表示したりする。このようにしても、時間的且つ場所的に近接したであろうユーザ端末16に関する情報をタッチスクリーン16aに表示させることができる。