(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0010】
図1は、本発明の実施例にかかる情報処理システム1を示す。情報処理システム1は、ユーザ端末である情報処理装置10、情報処理装置14a、14b(以下、区別しない場合には、「情報処理装置14」とよぶ)と、サーバ5とを備える。本実施例において情報処理装置10および情報処理装置14は、同一の構成および機能を備えており、異なるユーザによって操作される。
【0011】
補助記憶装置2は、HDD(ハードディスクドライブ)やフラッシュメモリなどの大容量記憶装置であり、USB(Universal Serial Bus)などによって情報処理装置10と接続する外部記憶装置であってよく、また内蔵型記憶装置であってもよい。出力装置4は、画像を出力するディスプレイおよび音声を出力するスピーカを有するテレビであってよく、またコンピュータディスプレイであってもよい。出力装置4は、情報処理装置10に有線ケーブルで接続されてよく、また無線接続されてもよい。情報処理装置10は、ユーザが操作する入力装置6と無線または有線で接続し、入力装置6はユーザの操作結果を示す操作信号を情報処理装置10に出力する。情報処理装置10は、入力装置6からの操作信号を受け付けるとOS(システムソフトウェア)やアプリケーションの処理に反映し、出力装置4から処理結果を出力させる。入力装置6は複数のプッシュ式の操作ボタンや、アナログ量を入力できるアナログスティック、回動式ボタンなどの複数の入力部を有して構成される。
【0012】
情報処理システム1において情報処理装置10はゲームを実行するゲーム装置であり、入力装置6はゲームコントローラなど情報処理装置10に対してユーザの操作信号を提供する機器である。なお入力装置6は、キーボードやマウスなどの入力インタフェースであってもよい。撮像装置であるカメラ7は出力装置4の近傍に設けられ、出力装置4周辺の空間を撮像する。
図1ではカメラ7が出力装置4の上部に取り付けられている例を示しているが、出力装置4の側方に配置されてもよく、いずれにしても出力装置4の前方でゲームをプレイするユーザを撮像できる位置に配置される。
【0013】
アクセスポイント(以下、「AP」とよぶ)8は、無線アクセスポイントおよびルータの機能を有し、情報処理装置10は、無線または有線経由でAP8に接続して、ネットワーク3上のサーバ5と通信可能に接続する。
【0014】
上記したように、情報処理装置14は、情報処理装置10と同じ構成および機能を有しており、情報処理装置10のユーザとは異なるユーザによって操作される。図示していないが、情報処理装置14は、出力装置4および補助記憶装置2と接続し、入力装置6から入力される操作信号を受け付ける。また情報処理装置14は、アクセスポイントを介してネットワーク3に接続し、サーバ5経由で、またはサーバ5を経由せずに、情報処理装置10と情報データを送受信することができる。
【0015】
サーバ5は、情報処理システム1のユーザに対してネットワークサービスを提供する。サーバ5は物理的に複数台のサーバにより構成されていてもよく、各サーバは、それぞれの機能に応じた主体により保守、管理されてもよい。この例においてサーバ5は、ネットワークサーバ15、管理サーバ16、ログサーバ17およびプレゼンスサーバ18を含んで構成されるが、ネットワークサーバ15、管理サーバ16、ログサーバ17およびプレゼンスサーバ18のそれぞれも複数台のサーバにより構成されてよく、またこれらの各機能の2つ以上を統合したサーバが設けられてもよい。
【0016】
ネットワークサーバ15は、情報処理システム1を利用するユーザを識別するネットワークアカウントを管理しており、ユーザは、ネットワークアカウントを用いて、ネットワークサーバ15が提供するネットワークサービスにサインインする。ユーザは情報処理装置10からネットワークサービスにサインインすることで、ネットワークサーバ15に、ゲームのセーブデータや、またゲームプレイ中に獲得した仮想的な表彰品であるトロフィを登録できる。ネットワークサーバ15は、ユーザごとに、登録したフレンドのネットワークアカウントを管理している。
【0017】
管理サーバ16は、ユーザに対して様々なサービス機能を提供する。具体的に管理サーバ16は、ユーザがプレイ中のゲームに他のユーザを招待するための招待機能や、ユーザ間でメッセージをやり取りするためのメッセージ機能、またゲームセッションを管理するセッション機能などを提供する。管理サーバ16は、これらのサービス機能ごとに用意されてもよく、たとえば招待サーバ、メッセージサーバ、セッションサーバなどが、それぞれの機能を実現するための別個独立した機能サーバとして設けられてもよい。
【0018】
情報処理システム1において、各情報処理装置10,14が、複数のユーザが参加することのできるアプリケーション(マルチプレイヤオンラインアプリケーション)を実行できる。管理サーバ16は、マルチプレイヤオンラインアプリケーション(以下、単に「アプリケーション」ともよぶ)のセッションを作成し、各ユーザが、このセッションに参加することで、複数のユーザで、1つのアプリケーションを楽しめるようになる。
【0019】
セッション作成の一例を説明すると、まずユーザAが、情報処理装置10を用いて、マルチプレイヤオンラインアプリケーションのセッションの作成指示を作成する。このアプリケーションは、チャットやゲームが代表的であるが、他の種類のものであってもよい。このときユーザAは、セッションを識別するためのタイトル(セッション名)も作成する。情報処理装置10が、セッションの作成指示およびセッション名を管理サーバ16に送信すると、管理サーバ16は、アプリケーションのセッションを作成する。具体的に管理サーバ16はセッションを特定する識別情報(以下、「セッションID」と呼ぶ)を発行して、情報処理装置10に返信する。セッションIDは、セッションに参加する他の情報処理装置14が管理サーバ16を介して同期通信をするために利用される、管理サーバ16へ接続するためのURI(Universal Resource Identifier)であってよい。このURIは、セッションサーバとは異なるサーバ(アプリケーションサーバ)を指定するものであってもよい。なお、ここではユーザAの要求にしたがってアプリケーションセッションが生成されることを説明したが、アプリケーションセッションは、別のユーザの要求にしたがって作成されてもよい。
【0020】
以上は、ユーザが自発的にアプリケーションセッションを立ち上げる例であるが、管理サーバ16が、アプリケーションセッションを作成して、情報処理装置10、14のユーザが、そのセッションに参加できるようにしてもよい。またセッションに参加したユーザの情報処理装置10、14は、管理サーバ16経由で、他のユーザの操作情報を取得してもよいが、参加したユーザの情報処理装置10、14同士の間で、直接、操作情報を送受信してもよい。
【0021】
ログサーバ17は、アプリケーションセッションにおける各種データを記録する。以下、ログサーバ17が記録するデータを「記録データ」と呼ぶと、記録データには、アプリケーションのセッションのIDおよびセッション名、アプリケーション名、セッションに参加したユーザを特定する情報などが含まれる。ログサーバ17は、アプリケーションセッションに参加しているユーザの情報処理装置10、14から、ユーザを特定する情報、アプリケーション名、参加しているセッションのIDおよびセッション名などの情報データを取得して、同一のセッションIDに紐付けて、記録データを保持する。なおログサーバ17は、アプリケーションセッションを管理する管理サーバ16から、アプリケーションセッションに関連する情報データを取得してもよく、また、管理サーバ16が、ログサーバ17としての機能を有して、過去のアプリケーションセッションに関連するデータを記録してもよい。
【0022】
プレゼンスサーバ18は、情報処理装置10および情報処理装置14から送信されるプレゼンス情報を管理する。ここでプレゼンス情報とは、情報処理装置10および情報処理装置14がオンラインにあることを示す情報、実行しているアプリケーション(ゲーム)に関する情報を少なくとも含む。情報処理装置10は、自身のプレゼンス情報をプレゼンスサーバ18に送信する一方で、ネットワークサーバ15においてフレンドとして登録している他のユーザが操作する情報処理装置14のプレゼンス情報を取得することができる。
【0023】
図2(a)は、入力装置上面の外観構成を示す。ユーザは左手で左側把持部78bを把持し、右手で右側把持部78aを把持して、入力装置6を操作する。入力装置6の筐体上面には、入力部である方向キー71、アナログスティック77a、77bと、4種の操作ボタン76が設けられている。4種のボタン72〜75には、それぞれを区別するために、異なる色で異なる図形が記されている。すなわち、○ボタン72には赤色の丸、×ボタン73には青色のバツ、□ボタン74には紫色の四角形、△ボタン75には緑色の三角形が記されている。筐体上面上において、方向キー71と操作ボタン76の間の平坦な領域には、タッチパッド79が設けられる。タッチパッド79は、ユーザが押すことで下方に沈み込み、またユーザが手を離すと元の位置に復帰する押下式ボタンとしても機能する。
【0024】
2つのアナログスティック77a、77bの間に機能ボタン80が設けられる。機能ボタン80は、入力装置6の電源をオンし、同時に入力装置6と情報処理装置10とを接続する通信機能をアクティブにするために使用される。なお情報処理装置10のメイン電源がオフとなっている場合、機能ボタン80が押下されると、情報処理装置10は、入力装置6から送信される接続要求を、メイン電源をオンにするための指示としても受け付け、これにより情報処理装置10のメイン電源がオンとなる。入力装置6が情報処理装置10と接続した後は、機能ボタン80は、情報処理装置10にメニュー画面を表示させるためにも使用される。
【0025】
SHAREボタン81は、タッチパッド79と方向キー71の間に設けられる。SHAREボタン81は、情報処理装置10におけるOSないしはシステムソフトウェアに対するユーザからの指示を入力するために利用される。またOPTIONSボタン82は、タッチパッド79と操作ボタン76の間に設けられる。OPTIONSボタン82は、情報処理装置10において実行されるアプリケーション(ゲーム)に対するユーザからの指示を入力するために利用される。SHAREボタン81およびOPTIONSボタン82は、いずれもプッシュ式ボタンとして形成されてよい。
【0026】
図2(b)は、入力装置背面の外観構成を示す。入力装置6の筐体背面の上側には、タッチパッド79が筐体上面から延設されており、筐体背面の下側には、横長の発光部85が設けられる。発光部85は、赤(R)、緑(G)、青(B)のLEDを有し、情報処理装置10から送信される発光色情報にしたがって点灯する。1台の情報処理装置10に対して、複数の入力装置6が接続している場合には、各入力装置6の発光部85が、それぞれ異なる色で発光される。これにより各ユーザは、自分が使用している入力装置6を発光部85の点灯色によって認識できるため、入力装置6を取り違える可能性が低減される。
【0027】
筐体背面において、上側ボタン83a、下側ボタン84aと、上側ボタン83b、下側ボタン84bとが長手方向の左右対称な位置に設けられる。上側ボタン83a、下側ボタン84aは、それぞれユーザ右手の人差し指、中指により操作され、上側ボタン83b、下側ボタン84bは、それぞれユーザ左手の人差し指、中指により操作される。図示されるように発光部85が、右側の上側ボタン83a、下側ボタン84aの並びと、左側の上側ボタン83b、下側ボタン84bの並びの間に設けられることで、各ボタンを操作する人差し指または中指によって隠れることはなく、カメラ7は、点灯した発光部85を好適に撮像することができる。上側ボタン83はプッシュ式ボタンとして構成され、下側ボタン84は回動支持されたトリガー式のボタンとして構成されてよい。
【0028】
図3は、情報処理装置10の機能ブロック図を示す。情報処理装置10は、メイン電源ボタン20、電源ON用LED21、スタンバイ用LED22、システムコントローラ24、クロック26、デバイスコントローラ30、メディアドライブ32、USBモジュール34、フラッシュメモリ36、無線通信モジュール38、有線通信モジュール40、サブシステム50およびメインシステム60を有して構成される。
【0029】
メインシステム60は、メインCPU(Central Processing Unit)、主記憶装置であるメモリおよびメモリコントローラ、GPU(Graphics Processing Unit)などを備える。GPUはゲームプログラムの演算処理に主として利用される。これらの機能はシステムオンチップとして構成されて、1つのチップ上に形成されてよい。メインCPUはOSを起動し、OSが提供する環境下において、補助記憶装置2にインストールされたアプリケーションを実行する機能をもつ。
【0030】
サブシステム50は、サブCPU、主記憶装置であるメモリおよびメモリコントローラなどを備え、GPUを備えない。サブCPUの回路ゲート数は、メインCPUの回路ゲート数よりも少なく、サブCPUの動作消費電力は、メインCPUの動作消費電力よりも少ない。上記したように、サブCPUは、メインCPUがスタンバイ状態にある間に動作するものであり、消費電力を低く抑えるべく、その処理機能を制限されている。なおサブCPUおよびメモリは、別個のチップに形成されてもよい。
【0031】
メイン電源ボタン20は、ユーザからの操作入力が行われる入力部であって、情報処理装置10の筐体の前面に設けられ、情報処理装置10のメインシステム60への電源供給をオンまたはオフするために操作される。以下、メイン電源がオン状態にあるとは、メインシステム60がアクティブ状態にあることを意味し、メイン電源がオフ状態にあるとは、メインシステム60がスタンバイ状態にあることを意味する。電源ON用LED21は、メイン電源ボタン20がオンされたときに点灯し、スタンバイ用LED22は、メイン電源ボタン20がオフされたときに点灯する。
【0032】
システムコントローラ24は、ユーザによるメイン電源ボタン20の押下を検出する。メイン電源がオフ状態にあるときにメイン電源ボタン20が押下されると、システムコントローラ24は、その押下操作を「オン指示」として取得し、一方で、メイン電源がオン状態にあるときにメイン電源ボタン20が押下されると、システムコントローラ24は、その押下操作を「オフ指示」として取得する。
【0033】
メインCPUは補助記憶装置2やROM媒体44にインストールされているゲームプログラムを実行する機能をもつ一方で、サブCPUはそのような機能をもたない。しかしながらサブCPUは補助記憶装置2にアクセスする機能、サーバ5との間でデータを送受信する機能を有している。サブCPUは、このような制限された処理機能のみを有して構成されており、したがってメインCPUと比較して小さい消費電力で動作できる。これらのサブCPUの機能は、メインCPUがスタンバイ状態にある際に実行される。本実施例の情報処理装置10は、メインシステム60のスタンバイ時にはサブシステム50が稼働しているため、ネットワークサーバ15が提供するネットワークサービスに、常時サインインした状態を維持する。
【0034】
クロック26はリアルタイムクロックであって、現在の日時情報を生成し、システムコントローラ24やサブシステム50およびメインシステム60に供給する。
【0035】
デバイスコントローラ30は、サウスブリッジのようにデバイス間の情報の受け渡しを実行するLSI(Large-Scale Integrated Circuit)として構成される。図示のように、デバイスコントローラ30には、システムコントローラ24、メディアドライブ32、USBモジュール34、フラッシュメモリ36、無線通信モジュール38、有線通信モジュール40、サブシステム50およびメインシステム60などのデバイスが接続される。デバイスコントローラ30は、それぞれのデバイスの電気特性の違いやデータ転送速度の差を吸収し、データ転送のタイミングを制御する。
【0036】
メディアドライブ32は、ゲームなどのアプリケーションソフトウェア、およびライセンス情報を記録したROM媒体44を装着して駆動し、ROM媒体44からプログラムやデータなどを読み出すドライブ装置である。ROM媒体44は、光ディスクや光磁気ディスク、ブルーレイディスクなどの読出専用の記録メディアである。
【0037】
USBモジュール34は、外部機器とUSBケーブルで接続するモジュールである。USBモジュール34は補助記憶装置2およびカメラ7とUSBケーブルで接続してもよい。フラッシュメモリ36は、内部ストレージを構成する補助記憶装置である。無線通信モジュール38は、Bluetooth(登録商標)プロトコルやIEEE802.11プロトコルなどの通信プロトコルで、たとえば入力装置6と無線通信する。なお無線通信モジュール38は、ITU(International Telecommunication Union;国際電気通信連合)によって定められたIMT−2000(International Mobile Telecommunication 2000)規格に準拠した第3世代(3rd Generation)デジタル携帯電話方式に対応してもよく、さらには別の世代のデジタル携帯電話方式に対応してもよい。有線通信モジュール40は、外部機器と有線通信し、たとえばAP8を介してネットワーク3に接続する。
【0038】
図4は、情報処理装置10の内部構成を示す。情報処理装置10は、通信処理部102および制御部100を備える。制御部100は、操作受付部110、アプリケーション実行部112、セッション情報通知部114、プレゼンス情報通知部116、取得処理部120、表示処理部122および画面生成部130を有する。画面生成部130は、ホーム画面生成部132、ファンクション画面生成部134およびユーザ画面生成部140を有し、ユーザ画面生成部140は、セッションリスト表示部142、ユーザリスト表示部144、メニュー表示部146およびプロフィール表示部148を有する。通信処理部102は、
図3に示す無線通信モジュール38および有線通信モジュール40の機能を示す。
【0039】
図4において、さまざまな処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、回路ブロック、メモリ、その他のLSIで構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
【0040】
操作受付部110は、入力装置6からの操作信号を受け付ける。アプリケーション実行部112は、マルチプレイヤオンラインアプリケーションを実行する。実行されたアプリケーションは、操作受付部110で受け付けた操作信号を、アプリケーションの処理に反映するとともに、その操作信号を管理サーバ16に送信する。取得処理部120は、管理サーバ16から、他のユーザの操作信号を取得し、アプリケーションは、他のユーザの操作信号を、アプリケーションの処理に反映する。これにより、複数のユーザがアプリケーションを一緒に楽しむことができる。セッション情報通知部114は、セッションID、セッション名、アプリケーション名、ユーザを特定する情報を含むセッション情報を、ログサーバ17に通知する。この通知のタイミングは、アプリケーションセッションに参加したとき、アプリケーションセッションを終了したとき、または、その後の任意のタイミングであってもよい。
【0041】
既述したようにログサーバ17は、アプリケーションセッションに参加したユーザの情報処理装置10、14から、セッション情報を受け取り、セッションIDに紐付けて、情報を記録する。なお、ユーザAがアプリケーションセッションのホストユーザとなっている場合には、ユーザAの情報処理装置10が、セッションID、セッション名、アプリケーション名、および参加したユーザ全員のユーザ特定情報を含むセッション情報をログサーバ17に通知してもよい。またホストではなく、ゲストとして参加したユーザの情報処理装置14が、セッションID、セッション名、アプリケーション名、および参加したユーザ全員のユーザ特定情報を含むセッション情報をログサーバ17に通知してもよい。いずれの場合であっても、ログサーバ17は、セッションID、セッション名、アプリケーション名、およびセッションに参加したユーザ全員を特定する情報を、記録データとして保持する。なお、管理サーバ16が主体的にアプリケーションセッションを作成している場合には、ログサーバ17が、管理サーバ16からセッション情報を取得してもよい。このようにして、ログサーバ17は、過去のアプリケーションセッションに関連する記録データを保持する。
【0042】
次に、情報処理装置10の出力装置4に表示される画面について説明する。
ユーザAが情報処理装置10にログインすると、ホーム画面が表示される。
図5は、ホーム画面の一例を示す。ホーム画面生成部132は、アイコン列の先頭(すなわち左端)に新着情報アイコン330を配置する。ホーム画面生成部132は、ホーム画面を最初に表示させる際、コンテンツエリア314において、新着情報アイコン330をフォーカス状態とする。ホーム画面生成部132は、各アプリケーションおよび各コンテンツに対するユーザのアクセス日時に基づいて、アイコン列の2番目以降に、アクセス日時が現在日時から近い順にコンテンツアイコン326を並べる。またホーム画面生成部132は、新着情報アイコン330がフォーカス状態になった場合に、ライブ情報アイテム332をライブエリア316に配置する。
【0043】
またホーム画面生成部132は、情報処理装置10が提供する複数のシステム機能を示す複数のシステム機能アイコン376の一部をシステムエリア312に配置する。
図5の例では、ストアアイコン376a、通知アイコン376b、フレンドアイコン376c、プロフィールアイコン376f、トロフィーアイコン376gを表示させている。ホーム画面生成部132は、ユーザAが獲得済みのトロフィー数(
図5では「23」)を示すトロフィー数インジケータをトロフィーアイコン376gと対応づけて配置する。またホーム画面生成部132は、ユーザAが未読のメッセージの数(
図5では「6」)を示す未読数インジケータを通知アイコン376bと対応づけて配置する。ホーム画面生成部132は、通知アイコン376bの近傍に、ユーザA宛のメッセージを表示するための表示領域320を形成する。
【0044】
ホーム画面生成部132は、オンラインのフレンドユーザ数、すなわち他の情報処理装置14において現在ログイン中のフレンド数(
図5では「3」)を示すオンライン数インジケータをフレンドアイコン376cと対応づけて配置する。フレンドユーザは、ネットワークサーバ15においてユーザAのフレンドとして登録されているユーザである。
【0045】
フレンドを登録するためには、ユーザAが、特定のユーザに対してフレンドリクエストを送信し、送信先のユーザが、ユーザAのフレンドになることを承認することが必要である。また逆に、ユーザAが、あるユーザからのフレンドリクエストを承認することで、フレンドをネットワークサーバ15に登録することもできる。このようにしてネットワークサーバ15は、各ユーザごとにフレンドを登録している。ユーザは基本的に常時ネットワークサービスにサインインしている状態にあり、ユーザがログインすると、情報処理装置10、14は、そのログイン情報をネットワークサーバ15に通知する。したがってネットワークサーバ15は、ユーザが情報処理装置にログインしているか否かを常時管理している。
【0046】
なおユーザのログイン後は、プレゼンス情報通知部116が、プレゼンス情報をプレゼンスサーバ18に通知する。プレゼンス情報は、情報処理装置10がオンラインにあることを示す情報、および実行しているアプリケーションに関する情報を含んでいる。
【0047】
図5に示すホーム画面において、ユーザがフレンドアイコン376cを選択すると、ファンクション画面生成部134が、フレンドに関するファンクション画面を生成する。
図6は、ホーム画面から遷移したファンクション画面の一例を示す。
図5に示すホーム画面においてユーザがフレンドアイコン376cを選択して決定操作すると、操作受付部110が決定操作を受け付けて、ファンクション画面生成部134に提供し、ファンクション画面生成部134が、
図6に示すファンクション画面を出力装置4に表示する。
【0048】
ファンクション画面生成部134は、システム機能選択エリア372に、複数のシステム機能アイコン376を並べて配置する。ここではストアアイコン376a、通知アイコン376b、フレンドアイコン376c、グループメッセージアイコン376d、パーティーアイコン376e、プロフィールアイコン376f、トロフィーアイコン376g、設定アイコン376h、電源アイコン376iが表示されている。表示処理部122は、ユーザによる入力装置6の横方向(方向キー71の左キーまたは右キー)の操作入力に応じて、フォーカスさせるシステム機能アイコン376を順次切り替え、フォーカスアイコンを強調した態様(大きいサイズ、異なる色等)で表示する。
図6では、フレンドアイコン376cが選択されてフォーカスされ、他のアイコンより強調表示された状態を示している。
【0049】
プレビューエリア374には、オンラインにあるフレンドのプレゼンス情報が表示される。取得処理部120は、ネットワークサーバ15にアクセスして、オンライン状態にあるフレンドを特定する情報(ネットワークアカウント)を取得し、取得したフレンドを特定する情報をプレゼンスサーバ18に送信して、プレゼンスサーバ18から、そのフレンドのプレゼンス情報を取得する。なお、フレンドのオンラインID(ユーザ名)やフレンドのアイコン画像はネットワークサーバ15に登録されており、取得処理部120は、オンラインIDおよびアイコン画像を、ネットワークアカウントとともにネットワークサーバ15から取得することで、ファンクション画面生成部134は、取得したプレゼンス情報を、オンラインIDおよびアイコン画像とともに、プレビューエリア374に表示する。なお、オンラインIDおよびアイコン画像はプレゼンスサーバ18において保持されていてもよく、この場合には、取得処理部120が、プレゼンスサーバ18から、オンラインID、アイコン画像およびプレゼンス情報を取得することができる。
図6に示すプレビューエリア374には、HANAKOがパーティアプリケーションをしていること、JIROがGHIテニスゲームをしていること、RINKOがABCバトルゲームをしていることが、表示されている。なおパーティアプリケーションとは、情報処理システム1において複数人が参加するチャットアプリケーションである。
【0050】
ファンクション画面において、ユーザが、フォーカスされたフレンドアイコン376cを決定操作すると、操作受付部110が決定操作を受け付けて、ユーザ画面生成部140に提供し、ユーザ画面生成部140が、他のユーザに関する画面(以下、フレンド画面と呼ぶ)を生成して、出力装置4に表示する。ユーザ画面生成部140は、フレンドに関する画面を生成する機能を有するが、本実施例では、フレンドに限らず、フレンド以外のユーザに関する画面を生成する機能も有する。具体的にユーザ画面生成部140は、過去のアプリケーションセッションに関連する画面を生成する機能を有し、この機能によれば、過去のアプリケーションセッションに参加したユーザ情報を表示することができる。
【0051】
図7は、ファンクション画面から遷移したフレンド画面の一例を示す。
図6に示すファンクション画面においてユーザがフレンドアイコン376cを選択して決定操作すると、操作受付部110が決定操作を受け付けて、ユーザ画面生成部140に提供し、ユーザ画面生成部140が、
図7に示すフレンド画面を出力装置4に表示する。
【0052】
ユーザ画面生成部140は、出力装置4の表示領域を、メニュー項目を表示するためのメニューエリア400と、選択されたメニュー項目に関連するユーザ情報を表示するためのユーザエリア410とに分割する。メニュー表示部146は、メニューエリア400に、フレンド画面に設定されているメニュー項目を表示する。表示処理部122は、メニュー項目の1つを囲うようにフォーカス枠402を配置する。表示処理部122は、ユーザによる入力装置6の縦方向(方向キー71の上キーまたは下キー)の操作入力に応じて、フォーカス枠402を移動する。
図7に示すフレンド画面では、「オンライン」項目にフォーカス枠402が配置されており、ユーザリスト表示部144は、「オンライン」項目に関連するユーザ情報をユーザエリア410に表示する。
【0053】
メニューエリア400において、「オンライン」項目は、ユーザAのフレンドのうち、オンライン状態にあるフレンドを表示するためのものであり、
図6にも示したように、ユーザリスト表示部144は、3人のフレンドのプレゼンス情報をユーザエリア410に表示する。具体的には、フォーカス枠402が「オンライン」項目に配置されると、取得処理部120は、ネットワークサーバ15にアクセスして、オンライン状態にあるフレンドを特定する情報、そのオンラインIDおよびアイコン画像を取得し、取得したフレンドを特定する情報をプレゼンスサーバ18に送信して、プレゼンスサーバ18から、そのフレンドのプレゼンス情報を取得する。これによりユーザリスト表示部144は、オンライン状態にあるフレンドのプレゼンス情報をユーザエリア410に表示する。
【0054】
メニューエリア400において、「すべて」項目は、ユーザAの全てのフレンドを表示するためのものであり、ここでは125人のフレンドが登録されていることが示される。フォーカス枠402が「すべて」項目に配置されると、取得処理部120は、ネットワークサーバ15にアクセスして、すべてのフレンドのオンラインIDおよびアイコン画像を取得し、またオンライン状態にあるフレンドについては、プレゼンスサーバ18にアクセスして、プレゼンス情報を取得する。これによりユーザリスト表示部144は、フレンドの情報をユーザエリア410に表示することになる。なおユーザエリア410は、所定人数のフレンド情報しか配置できないため、所定人数を超えたフレンドの情報については、ユーザエリア410のフレンド情報をスクロールすることで、ユーザAが確認できる。
【0055】
メニューエリア400において、「一緒に遊んだプレーヤ」(Players Met)項目は、ユーザAが、過去のアプリケーションセッションにおいて一緒にプレイしたユーザを表示するためのものである。フォーカス枠402が「一緒に遊んだプレーヤ」項目に配置されると、取得処理部120は、ログサーバ17にアクセスして、ユーザAが参加したアプリケーションセッションの記録データのうち、アプリケーションセッションに関連する情報を取得する。このときログサーバ17は、アプリケーションセッションが終了した時刻と現在時刻の時間差をアプリケーションセッションごとに導出し、情報処理装置10に送信する。これにより取得処理部120は、少なくとも、セッションID、アプリケーション名、セッションの参加人数、現在時刻との時間差情報をログサーバ17から取得する。
【0056】
図8は、フレンド画面の別の例を示す。ユーザAが入力装置6を操作してフォーカス枠402を「一緒に遊んだプレーヤ」項目に配置すると、取得処理部120が、ログサーバ17から、過去にユーザAが参加したアプリケーションセッションの記録データのうち、少なくとも、セッションID、アプリケーション名、セッションの参加人数、現在時刻との時間差情報を取得する。セッションリスト表示部142は、ユーザAが参加した複数の過去のアプリケーションセッションに関連する情報をメニューエリア400におけるセッションリストエリア404に表示する。ここでセッションリスト表示部142は、アプリケーションセッションに関連する情報として、アプリケーション名、現在時刻との時間差情報、セッションの参加人数を、セッションごとにリスト形式で表示する。本実施例においてセッションリスト表示部142は、複数の過去のアプリケーションセッションに関連する情報をリスト形式で表示するが、他の形式で表示してもよい。
【0057】
図8に示すフレンド画面において、過去のアプリケーションセッションに関連する情報は、「一緒に遊んだプレーヤ」項目の下方に表示される。セッションリストエリア404において、このリストでは、新しいアプリケーションセッションに関連する情報がより上方に配置される。なおセッションリストエリア404は、所定数のセッション関連情報しか配置できないため、所定数を超えたセッション関連情報については、セッションリストエリア404のセッション関連情報をスクロールすることで、ユーザAが確認できる。
【0058】
セッションリストエリア404の最上位に配置されたセッション関連情報は、アプリケーション名が「ABCバトル」で、1時間前にユーザAがセッションを終了し、そのときの参加人数が12人であったことを示している。なお参加人数は、ユーザAがセッションを終了したときの人数であってもよく、ユーザAがセッションに参加したときから終了するまでの間に参加していたユーザの延べ人数であってもよく、またセッション自体の開始から終了までの間に参加したユーザの延べ人数であってもよい。
【0059】
ユーザAがセッションを終了したときの人数を表示するためには、セッション情報通知部114が、セッション終了時に、そのときの参加ユーザを特定する情報をログサーバ17に通知し、ログサーバ17がユーザAに関する記録データとして、その参加ユーザを特定する情報を記録している必要がある。これにより取得処理部120は、セッション終了時の参加人数を、ログサーバ17から取得することができる。またユーザAがセッションに参加したときから終了するまでの間に参加していたユーザの延べ人数を表示するためには、アプリケーション実行部112が、ユーザAの参加から終了までの間にセッションに参加していたユーザを全て記録しておき、セッション情報通知部114が、セッション終了時に、全ての参加ユーザを特定する情報をログサーバ17に通知し、ログサーバ17がユーザAに関する記録データとして、その参加ユーザを特定する情報を記録している必要がある。このように、情報処理装置10側で、参加ユーザを記録することで、ログサーバ17は、ユーザAと一緒にプレイした他のユーザに関する情報を記録することができ、記録データとして、ユーザAの情報処理装置10に送信することが可能となる。
【0060】
セッションリスト表示部142が、セッションリストをセッションリストエリア404に表示することで、ユーザAは、一目で過去に参加したアプリケーションセッションを確認できる。セッションリストエリア404には、現在時刻からの時間差情報も表示することで、ユーザAは、いつのセッションであるかを知ることができ、そのときのセッションが楽しかったか、またはつまらなかったかなどの記憶も容易に思い出せるようになる。またセッションリストエリア404には、フレンド以外のユーザに関する情報も表示されるため、ユーザAは、新たなフレンドを作る機会を得ることもできる。
【0061】
セッションリスト表示部142は、アプリケーションセッションに関連する情報がユーザにより選択されると、アプリケーションセッションの詳細情報が表示されることとなるように、アプリケーションセッションに関連する情報を表示する。具体的にはアプリケーションセッションに関連する情報が選択されると、取得処理部120が、選択されたアプリケーションセッションの詳細情報をサーバ5から取得する処理が対応付けられている。このようにセッションリスト表示部142は、セッション関連情報が選択されると、選択されたアプリケーションセッションの詳細情報を取得して表示する処理を対応付けて、セッション関連情報を表示している。
【0062】
図9は、フレンド画面の別の例を示す。ユーザAが入力装置6を操作してフォーカス枠402を、1つのセッション関連情報に配置すると、取得処理部120が、配置されたセッション関連情報のセッションIDを含む詳細情報取得要求をログサーバ17に送信する。ログサーバ17は、取得要求に含まれるセッションIDをもとに、当該セッションIDに対応付けられた記録データを情報処理装置10に送信する。
【0063】
ユーザリスト表示部144は、セッションエリア420にセッション情報を表示し、セッションエリア420下方の領域に、アプリケーションセッションに参加したユーザを特定する情報を表示する。セッションエリア420には、アプリケーションのアイコン画像、アプリケーション名、セッション名、および現在時刻との時間差情報が表示される。たとえばアイコン画像は、取得処理部120が管理サーバ16から取得してもよい。本実施例においてユーザリスト表示部144は、アプリケーションセッションに参加した複数のユーザを特定する情報をリスト形式で表示するが、他の形式で表示してもよい。
【0064】
ここでセッション名は、アプリケーションセッションのホストユーザが名付けた名称であり、ここではセッション名として「TeamDeathmatchのステージA」が表示されている。このセッション名は、ユーザAがセッションを一意に認識できるものであるため、たとえばユーザAが、アプリケーション「ABCバトル」のセッションに複数回参加した経験がある場合に、時間差情報とセッション名から、セッションを特定することができる。このようにユーザAは、セッション固有の情報である時間差情報とセッション名とを確認することにより、同じアプリケーションのセッションに複数回参加した場合であっても、それぞれを区別できる。
【0065】
ユーザエリア410においては、12人の参加ユーザのうち、5人分のユーザ関連情報430a、430b、430c、430d、430eが表示されている。各ユーザ関連情報は、個別の枠で囲った領域に表示される。上記したようにユーザリスト表示部144は、フレンドに限らず、フレンド以外のユーザのユーザ関連情報430もユーザエリア410に表示する。なお残りの(7人分の)ユーザ関連情報については、画面をスクロールすることで確認できる。以下、個々のユーザ関連情報430について説明する。
【0066】
ユーザ関連情報430aは、オンラインIDが「SHINJI」であり、フレンドであることを示す関係情報432aが付加されている。関係情報432aは、表示領域の右上に配置され、ユーザAとの関係が表示される。この関係情報432aは、取得処理部120によって、フレンドであることを示すステータスデータとしてネットワークサーバ15から取得される。またユーザ関連情報430aには、オンラインマーク434aが付加されている。オンラインマーク434aは、当該ユーザがオンライン状態にあるか、またはオフライン状態にあるかを示すものであり、取得処理部120によりネットワークサーバ15から取得される。ここで白丸のオンラインマーク434は、当該ユーザがオフライン状態にあることを示し、黒丸のオンラインマーク434は、当該ユーザがオンライン状態にあることを示す。SHINJIには白丸のオンラインマーク434aが付加されているため、ユーザAはSHINJIがオフライン状態にあることを確認できる。オンラインマーク434は、当該ユーザがフレンドである場合に限って付加される。
【0067】
ユーザ関連情報430bは、オンラインIDが「KEISUKE」であり、フレンド依頼を送信済みであることを示す関係情報432bが付加されている。この関係情報432bは、取得処理部120によって、フレンド依頼を送信済みであることを示すステータスデータとして管理サーバ16から取得される。このようにユーザ関連情報を表示する際には、取得処理部120が、サーバ5における様々な機能サーバにアクセスして、そのユーザとの関係を示すステータスデータを取得するようにする。ユーザAは、フレンド依頼をKEISUKEに送信しているものの、まだネットワークサーバ15においてKEISUKEはフレンド登録されていない。そのためKEISUKEにはオンラインマーク434が付加されていない。
【0068】
ユーザ関連情報430cは、オンラインIDが「HANAKO」であり、フレンドであることを示す関係情報432cが付加されている。この関係情報432cは、取得処理部120によってステータスデータとしてネットワークサーバ15から取得される。またユーザ関連情報430cには、オンラインマーク434cが付加されている。オンラインマーク434cは、黒丸であり、ユーザAはHANAKOがオンライン状態にあることを確認できる。またユーザ関連情報430cには、HANAKOがパーティアプリケーションをしていることが示されており、この実行中のアプリケーション名は、取得処理部120によってプレゼンスサーバ18から取得される。
【0069】
ユーザ関連情報430dは、オンラインIDが「RINKO」であり、フレンドであることを示す関係情報432dが付加されている。この関係情報432dは、取得処理部120によってステータスデータとしてネットワークサーバ15から取得される。またユーザ関連情報430dには、オンラインマーク434dが付加されている。オンラインマーク434cは、黒丸であり、ユーザAはRINKOがオンライン状態にあることを確認できる。またユーザ関連情報430dには、RINKOがABCバトルゲームをしていることが示されており、この実行中のアプリケーション名は、取得処理部120によってプレゼンスサーバ18から取得される。
【0070】
ユーザ関連情報430eは、オンラインIDが「SASUKE」であることを示している。ユーザAは、SASUKEとはフレンドではなく、またフレンド依頼を送信もしていない。したがって情報処理システム1において、ユーザAとSASUKEとの接点はなく、唯一、1時間前に一緒にABCバトルゲームをプレイしたという関係しかない。しかしながらユーザリスト表示部144が、過去のアプリケーションセッションに参加したユーザとして、SASUKEに関するユーザ関連情報430eを表示することで、ユーザAは、再び、SASUKEにコンタクトをとる機会を得ることができる。なお、たとえばユーザAとSASUKEとの関係性を表現するべく、ユーザAとSASUKEとの間の共通のフレンドの数を関係情報432として表示してもよい。
【0071】
このようにユーザリスト表示部144が、過去のセッションにおいて参加したユーザのユーザ関連情報430をリスト表示することで、ユーザAは、そのときのセッション(TeamDeathmatchのステージA)のチームメンバを確認できるとともに、セッションの参加ユーザに対して、フレンド依頼を送信するなど接触する機会をもつことができる。またユーザ関連情報430を表示する際に、関係情報432も付加することで、ユーザAは、一目で参加ユーザとの関係を確認できるようになる。このとき、関係情報432bのように、まだフレンドの関係にない参加ユーザとの情報も付加することで、ユーザAは、KEISUKEとの将来的な関係も確認できるようになる。
【0072】
フレンド画面における複数のユーザ関連情報430の並び順について説明する。
図9に示すユーザエリア410においては、複数のユーザ関連情報430が、特別な規則なく並べられているが、たとえば、フレンドであるユーザと、フレンドではないユーザとを比較すると、フレンドであるユーザのユーザ関連情報430が上位に配置されるようにしてもよい。また、フレンドの中でも、オンライン状態にあるユーザのユーザ関連情報430が、オフライン状態にあるユーザのユーザ関連情報430よりも上位となるように配置されてよい。またフレンド以外の中では、表示すべき関係情報432をもつユーザが、関係情報432をもたないユーザよりも上位となるように配置されてよい。こうすることでユーザAが関心の高い順番でユーザ関連情報430を並べることができるようになる。
【0073】
図10は、フレンド画面の別の例を示す。ユーザAが入力装置6を操作してフォーカス枠402を、ユーザエリア410におけるユーザ関連情報430aの表示領域に動かす。この状態でユーザが入力装置6の決定ボタンを押すと、プロフィール表示部148が、SHINJIのプロフィール画面を生成する。プロフィール画面においては、SHINJIの自己紹介文や、獲得したトロフィ、フレンドなどに関する情報が表示される。
【0074】
図11は、フレンド画面の別の例を示す。
図10に示すフレンド画面において、ユーザAが入力装置6のOPTIONSボタン82を操作すると、メニュー表示部146が、フレンド画面にメニューエリア440を重畳させてメニュー項目を表示する。ここでは5つのメニュー項目が示されている。
【0075】
ここで、フォーカス枠が配置されている「全員にメッセージを送信する」項目は、アプリケーションに参加したユーザ全員にメッセージを送信するためのものである。セッションリストエリア404において、1つのアプリケーションセッションが選択されている場合に、ユーザAは、入力装置6のOPTIONSボタン82を押下することで、メニュー表示部146が、選択されたセッションのユーザに対するメニュー項目を配置したメニューエリア440を作成する。「全員にメッセージを送信する」項目にフォーカス枠402が配置された状態でユーザが入力装置6の決定ボタンを操作すると、アプリケーション実行部112が、メッセージを他のユーザに送信するためのメッセージアプリケーションを起動する。このメッセージアプリケーションは、セッションに参加した全てのユーザに対してメッセージを送信する機能を有し、「全員にメッセージを送信する」項目が選択されると、参加ユーザ全員のネットワークアカウントを取得して、取得したネットワークアカウントを宛名とするメッセージを、管理サーバ16に送信する。管理サーバ16におけるメッセージ機能は、このメッセージを受けると、参加ユーザのそれぞれにメッセージを送信する。このメッセージはユーザAが自由に作成でき、たとえば「また一緒にABCバトルゲームをプレイしませんか?」というお誘いのメッセージであってよい。
【0076】
また、「全員とパーティでチャットをする」項目は、過去、一緒にパーティアプリケーションに参加したメンバに対して、パーティへの参加を呼びかけるメッセージを送信して、複数人でパーティアプリケーションを実行するためのものである。
図11においては、2時間前にユーザAがパーティアプリケーションを実施しており、セッションリストエリア404においてパーティが選択されて、「全員とパーティでチャットをする」項目にフォーカス枠402が配置された状態でユーザが入力装置6の決定ボタンを操作すると、アプリケーション実行部112が、パーティアプリケーションを起動する。なおパーティに複数人が参加した後は、参加メンバの情報処理装置10が、所定のアプリケーションを起動し、そのセッションにパーティの参加メンバを招待して誘導できる仕組みが構築されてもよい。
【0077】
このように本実施例の情報処理装置10では、アプリケーションセッションに参加した複数のユーザを1つのグループとして扱うことで、グループ内の全てのユーザに、メッセージを一斉送信することができる。このため、過去に、気の合うユーザが偶然にも集まったセッションのメンバーと連絡をとることができ、メッセージのやり取りをした後は、また再び集まって、一緒にアプリケーションをプレイできる。
【0078】
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0079】
実施例において、取得処理部120が、サーバ5から過去のアプリケーションセッションの記録データを取得することを説明したが、過去のアプリケーションセッションの記録データは、補助記憶装置2に蓄積され、取得処理部120は、補助記憶装置2から記録データを取得できるようにしてもよい。また実施例において、フレンド画面における「タグ」項目で設定するグループは、情報処理装置10の補助記憶装置2においてのみ保存されることとしたが、グループに関する情報が情報処理装置10からサーバ5に送信されて、サーバ5においてユーザAに紐付けられて記録されてもよい。
【0080】
実施例においては、情報処理装置10が、フレンド画面の表示機能およびゲーム実行機能を有することを説明したが、ゲーム実行機能は必ずしも有する必要はない。たとえばフレンド画面は、ゲーム実行機能を有しない携帯電話(スマートホン)などで表示されてもよい。
【0081】
フレンド画面における「タグ」項目は、ユーザAが、他のユーザをグルーピングするために使用される。たとえばABCバトルゲームセッションで、熟練度の高いユーザを発見すると、ユーザAは、たとえば「ABCバトルゲームの熟練者」というグループを設定して、そのユーザを登録する。この「タグ」項目で設定するグループは、情報処理装置10においてのみ保存される。ユーザAは、「タグ」項目において設定したグループに対して、メッセージを一斉送信することができる。
【0082】
実施例においてアプリケーションセッションは、セッションサーバがセッションIDを付与することで生成されて、ログサーバ17は、そのセッションIDに対応付けて、参加ユーザに関する情報を記録データとして保持することを説明した。たとえば1つのゲームセッションにおいて、複数チームでバトルするようなゲームの場合、参加ユーザは、いずれかのチームに振り分けられる。このとき、各ユーザの情報処理装置10、14は、自分が所属するチームを特定する情報をセッション情報に含めて、セッション情報通知部114からログサーバ17に通知する。これによりログサーバ17は、各ユーザのチームを特定する情報も記録データとして保持することができる。
図9に示すフレンド画面において、取得処理部120が記録データを取得すると、ユーザリスト表示部144は、ユーザ関連情報430に、チーム情報を含めて表示してもよい。またユーザリスト表示部144は、セッションエリア420において、ユーザAのチーム情報を含めて表示してもよい。
【0083】
変形例では、ログサーバ17が、セッションIDではなく、別の識別情報に対応付けて記録データを保持してもよい。たとえば1つのゲームセッションにおいて、複数チームでバトルするゲームの場合、各チームごとの識別情報が設定されて、ログサーバ17は、その識別情報に紐付けて、記録データを保持してもよい。このように、1つのセッションをいわば複数のセッションに分割することで、実際にユーザAとプレイした他のユーザを精度よく抽出することが可能となる。この機能はアプリケーションによって実現され、たとえばXチームとYチームが対戦するゲームの場合、Xチームに属するユーザは、セッションIDにXチームであることを示す情報を加えた識別情報を、ログサーバ17に記録するための新たなセッションIDとしてログサーバ17に通知し、またYチームに属するユーザは、セッションIDにYチームであることを示す情報を加えた識別情報を、ログサーバ17に記録するための新たなセッションIDとしてログサーバ17に通知する。これにより、同じセッションであっても、Xチーム用のセッションと、Yチーム用のセッションとが区別され、ログサーバ17において、別個のセッションとして管理されるようになる。