以下、本発明の一実施形態について図面に基づき詳細に説明する。
図1は、本発明の一実施形態に係るゲームシステム1の全体構成の一例を示す図である。図1に示すように、本実施形態に係るゲームシステム1は、いずれもコンピュータを中心に構成されたサーバ10とクライアント12(12−1〜12−n)とを含んでいる。サーバ10、クライアント12は、インターネットなどのコンピュータネットワーク14に接続されている。そして、サーバ10、クライアント12は、互いに通信可能になっている。
サーバ10は、クライアント12間で行われるデータのやりとりを中継するサーバコンピュータである。サーバ10は、図1に示すように、例えば、制御部10aと、記憶部10bと、通信部10cと、を含む。制御部10aは、例えばCPU等のプログラム制御デバイスであって、記憶部10bに記憶されたプログラムに従って各種の情報処理を実行する。記憶部10bは、例えばROMやRAM等の記憶素子やハードディスクドライブなどである。通信部10cは、例えばコンピュータネットワーク14を介してクライアント12との間でデータを授受するためのネットワークボードなどの通信インタフェースである。サーバ10は、通信部10cを経由してクライアント12との間で情報の送受信を行う。
クライアント12は、ユーザが利用するコンピュータであり、例えば、パーソナルコンピュータ、ゲームコンソール、テレビ受像機、携帯型ゲーム装置、携帯情報端末、などである。本実施形態では、クライアント12には、ユーザがプレイするゲームのプログラムがインストールされている。そして、当該クライアント12のユーザは、当該ゲームのプレイヤとして当該ゲームをプレイする。クライアント12は、例えば、制御部12aと、記憶部12bと、通信部12cと、出力部12dと、入力部12eと、を含む。制御部12aは、例えばCPU等のプログラム制御デバイスであって、記憶部12bに記憶されたプログラムに従って各種の情報処理を実行する。本実施形態に係る制御部12aには、CPUから供給されるグラフィックスコマンドやデータに基づいてフレームバッファに画像を描画するGPU(Graphics Processing Unit)も含まれている。記憶部12bは、例えばROMやRAM等の記憶素子やハードディスクドライブなどである。記憶部12bには、制御部12aによって実行されるプログラムなどが記憶される。また、本実施形態に係る記憶部12bには、GPUにより画像が描画されるフレームバッファの領域が確保されている。通信部12cは、例えばコンピュータネットワーク14を介してサーバ10との間でデータを授受するための通信インタフェースである。クライアント12は、通信部12cを経由してサーバ10や他のクライアント12との間で情報の送受信を行う。出力部12dは、例えば制御部12aから入力される指示に従って情報を表示出力するディスプレイ等の表示部や音声出力するスピーカ等の音声出力部である。入力部12eは、例えばユーザが行った操作の内容を制御部12aに出力するゲームコントローラ、タッチパッド、マウス、キーボード、マイク、カメラ等である。
本実施形態では、クライアント12のユーザがプレイヤとして参加しているゲームのプレイ中に、当該ゲームのプレイ内容を示すプレイ画像が所定のフレームレートで当該クライアント12のディスプレイに表示される。そして、ディスプレイに表示されるプレイ画像のコピー、すなわちフレームバッファに描画されるプレイ画像のコピーが、クライアント12の記憶部に設けられた、最大で15分間の動画像が記憶可能なリングバッファ領域に順次書き込まれる。
そして本実施形態では、当該ゲームのプレイ中に、図2に例示するキャプチャ条件データにおいて設定されているイベントが発生すると、当該イベントに応じたプレイ画像あるいは一連のプレイ画像から構成される動画像がキャプチャされる。また、本実施形態では、ユーザによるキャプチャ操作が行われた際にも、プレイ画像あるいは一連のプレイ画像から構成される動画像がキャプチャされるようになっている。プレイ画像がキャプチャされた場合は、キャプチャされたプレイ画像はキャプチャ画像として記憶部12bに記憶される。動画像がキャプチャされた場合は、当該動画像はエンコードされた上でキャプチャ動画像として記憶部12bに記憶される。キャプチャ動画像は複数のフレーム画像から構成されている。なお一連のプレイ画像がディスプレイに表示される際のフレームレートと記憶部12bに記憶されるキャプチャ動画像のフレームレートとは同じであっても異なっていてもよい。このようにしてクライアント12の記憶部12bに記憶されたキャプチャ画像又はキャプチャ動画像は、画像投稿サイトなどのインターネット上の各種サイトにアップロードできるようになっている。そしてこのようにしてアップロードされたキャプチャ画像又はキャプチャ動画像は一般に公開される。
キャプチャ条件データは、プレイ画像をキャプチャする条件となるイベントや、イベントの発生タイミングとプレイ画像のキャプチャタイミングとの関係を管理するためのデータである。キャプチャ条件データはクライアント12の記憶部12bに記憶される。
図2は、プレイヤAが使用するクライアント12の記憶部に記憶されているキャプチャ条件データの一例を示す図である。図2に示すように、キャプチャ条件データには、キャプチャ条件ID、設定プレイヤID、編集可否データ、発生状況データ、タイトルデータ、イベントデータ、キャプチャ画像種別データ、タイミング関係データが含まれる。
キャプチャ条件IDは、キャプチャ条件データの識別情報である。
設定プレイヤIDは、当該キャプチャ条件データを設定したプレイヤの識別情報である。
編集可否データは、当該キャプチャ条件データが記憶されているクライアント12のユーザによって当該キャプチャ条件データの更新や削除が可能であるか否かを示すデータである。可能である場合は編集可否データの値として「可」が設定され、不可能である場合は編集可否データの値として「不可」が設定される。
発生状況データは、当該キャプチャ条件データにおいて設定されているイベントが発生したか否かを示すデータである。発生済である場合は発生状況データの値として「発生済」が設定され、未発生である場合は発生状況データの値として「未発生」が設定される。
タイトルデータは、プレイ画像がキャプチャされる対象となるゲームのタイトルを示すデータである。
イベントデータは、当該キャプチャ条件データにおいて設定されているイベントを示すデータである。本実施形態では、イベントデータは、キャプチャ条件データにおいて当該イベントデータに関連付けられているタイトルデータが示すタイトルのゲームにおいて発生するイベントを示す。
キャプチャ画像種別データは、キャプチャされる画像の種別を示すデータである。本実施形態では、キャプチャ画像種別データの値として「動画像」又は「静止画像」が設定される。キャプチャ画像種別データの値が「動画像」である場合は動画像であるキャプチャ動画像が記憶部12bに記憶され、「静止画像」である場合は静止画像であるキャプチャ画像が記憶部12bに記憶される。
タイミング関係データは、当該キャプチャ条件データに含まれるイベントデータが示すイベントの発生タイミングとプレイ画像のキャプチャタイミングとの関係を示すデータである。タイミング関係データは、例えば、当該キャプチャ条件データに含まれるイベントデータが示すイベントの発生タイミングとプレイ画像のキャプチャタイミングとの差を示す。
例えばキャプチャ条件IDが「0001」であるキャプチャ条件データに関しては、タイミング関係データに、イベントの発生したタイミングの3分前がプレイ画像のキャプチャの開始タイミングであることが示されている。また当該キャプチャ条件データに関しては、タイミング関係データに、イベントの発生したタイミングの3分後がプレイ画像のキャプチャの終了タイミングであることが示されている。
また例えばキャプチャ条件IDが「0002」であるキャプチャ条件データに関しては、タイミング関係データに、イベントの発生したタイミングがプレイ画像のキャプチャの開始タイミングであることが示されている。また当該キャプチャ条件データに関しては、タイミング関係データに、イベントの発生したタイミングの5分後がプレイ画像のキャプチャの終了タイミングであることが示されている。
また例えばキャプチャ条件IDが「0003」であるキャプチャ条件データに関しては、タイミング関係データに、イベントの発生したタイミングの5分前がプレイ画像のキャプチャの開始タイミングであることが示されている。また当該キャプチャ条件データに関しては、タイミング関係データに、イベントの発生したタイミングの5分後がプレイ画像のキャプチャの終了タイミングであることが示されている。
また例えばキャプチャ条件IDが「0004」であるキャプチャ条件データに関しては、タイミング関係データに、イベントの発生したタイミングがプレイ画像のキャプチャタイミングであることが示されている。
キャプチャ条件IDが「0001」、「0002」、又は、「0003」であるキャプチャ条件データの例のように、タイミング関係データが、イベントの発生タイミングとプレイ画像のキャプチャの開始タイミングや終了タイミングとの関係を示していてもよい。例えばタイミング関係データがイベントの発生タイミングとプレイ画像のキャプチャの開始タイミングとの差やイベントの発生タイミングとプレイ画像のキャプチャの終了タイミングとの差を示していてもよい。これらの場合は、キャプチャ動画像が記憶部12bに記憶されることとなる。
また、キャプチャ条件IDが「0001」、又は、「0003」であるキャプチャ条件データの例のように、プレイ画像のキャプチャの開始タイミングが、イベントの発生タイミングよりも前のタイミングであっても構わない。本実施形態では、上述のようにプレイ画像のコピーが、クライアント12の記憶部12bに設けられたリングバッファ領域に書き込まれる。そのため、当該リングバッファ領域に記憶されている、イベントの発生前に表示されたプレイ画像のコピーをキャプチャ画像としてクライアント12の記憶部12bに記憶することができるようになっている。このようにして本実施形態では、イベントの発生タイミングよりも前のタイミングからプレイ画像をキャプチャすることができることとなる。
以下、キャプチャ条件データに設定されている値の表示や設定についてさらに説明する。図3は、プレイヤAが使用するクライアント12のディスプレイに表示される一覧表示画面の一例を示す図である。当該一覧表示画面には、キャプチャ条件データに設定されている値が表示される。当該一覧表示画面は、システム画面が表示されている際又はゲームのプレイ中にユーザが所定の操作を行うとディスプレイに表示される。また本実施形態では、クライアント12の記憶部12bに記憶されているキャプチャ条件データに基づいて生成される一覧表示画面が、当該クライアント12のディスプレイに表示される。
一覧表示画面には、それぞれキャプチャ条件データに対応付けられるキャプチャ条件情報CCIが縦に並んで配置されている。ユーザは一覧表示画面に配置されているプルダウンメニューを操作することで、キャプチャ条件情報CCIの配置順序を変更できるようになっている。図3に例示するキャプチャ条件情報CCIは、上から順にそれぞれキャプチャ条件IDが「0001」、「0002」、「0003」、及び、「0004」であるキャプチャ条件データに対応付けられる。キャプチャ条件情報CCIには、プレイヤアイコンPI、タイトル文字列TS、及び、イベント文字列ISが含まれる。プレイヤアイコンPIは、キャプチャ条件データに含まれる設定プレイヤIDに対応付けられるアイコンである。図3には、プレイヤAに対応付けられるプレイヤアイコンPIa、及び、プレイヤBに対応付けられるプレイヤアイコンPIbが配置されている。タイトル文字列TSは、キャプチャ条件データに含まれるタイトルデータが示すタイトルを表す文字列である。イベント文字列ISは、キャプチャ条件データに含まれるイベントデータが示すイベントを表す文字列である。
なお本実施形態では、キャプチャ条件情報CCIに含まれる要素の表示態様、ここでは例えば、プレイヤアイコンPI、タイトル文字列TS、及び、イベント文字列ISの表示態様は、キャプチャ条件データに含まれる発生状況データの値に応じたものとなっている。具体的には例えば、発生状況データの値が「未発生」であるキャプチャ条件データに対応付けられる要素の明度は、発生状況データの値が「発生済」であるキャプチャ条件データに対応付けられる要素の明度より高いものとなっている。
また、編集可否データの値が「不可」であるキャプチャ条件データに対応付けられるキャプチャ条件情報CCIには、ロックアイコンLIが配置される。
また一覧表示画面には、新規作成リンクNLが配置されている。ユーザが当該新規作成リンクNLを選択する操作を行うと、図4に示す登録画面がディスプレイに表示される。図4に示す登録画面でユーザは、プルダウンメニューを操作することで、キャプチャ条件データに含まれるタイトルデータの値、イベントデータの値、キャプチャ画像種別データの値、タイミング関係データの値を設定できるようになっている。
ここで、ユーザが登録画面に配置されている登録ボタンRBを選択する操作を行ったとする。すると、登録画面において設定されたタイトルデータの値、イベントデータの値、キャプチャ画像種別データの値、及び、タイミング関係データの値を含む新規のキャプチャ条件データが生成されて、クライアント12の記憶部12bに記憶される。本実施形態では、当該キャプチャ条件データに含まれるキャプチャ条件IDとして、当該クライアント12の記憶部12bに記憶されているいずれのキャプチャ条件データに含まれるキャプチャ条件IDとも重複しない一意の値が設定される。また、当該キャプチャ条件データに含まれる設定プレイヤIDとしては、当該クライアント12のユーザの識別情報が設定される。また、当該キャプチャ条件データに含まれる編集可否データの値としては「可」が設定される。そして当該キャプチャ条件データに含まれる発生状況データの値としては「未発生」が設定される。
また、図4に示す登録画面が表示されている際に、ユーザが当該登録画面に配置されているアップロードボタンULBを選択する操作を行ったとする。すると、上述のようにして新規のキャプチャ条件データが生成されて、クライアント12の記憶部12bに記憶されるとともに、当該キャプチャ条件データがサーバ10に送信される。当該キャプチャ条件データを受信したサーバ10は、当該キャプチャ条件データに含まれるキャプチャ条件IDを振り直す。ここでは例えば、当該キャプチャ条件IDを、当該サーバ10の記憶部10bに記憶されているいずれのキャプチャ条件データに含まれるキャプチャ条件IDとも重複しない一意の値に振り直す。そして、サーバ10は、キャプチャ条件IDが振り直されたキャプチャ条件データをサーバ10の記憶部10bに記憶させる。
このようにして、サーバ10に記憶されたキャプチャ条件データは、当該キャプチャ条件データの送信元であるクライアント12以外のクライアント12に送信される。
また本実施形態では、サーバ10の管理者等がサーバ10にキャプチャ条件データを記憶させることができるようになっている。このようにしてサーバ10に記憶されたキャプチャ条件データは、サーバ10と通信可能なクライアント12に送信される。
キャプチャ条件データをサーバ10から受信したクライアント12は、当該キャプチャ条件データに含まれるキャプチャ条件IDを振り直す。ここでは例えば、当該キャプチャ条件IDを、当該クライアント12の記憶部12bに記憶されているいずれのキャプチャ条件データに含まれるキャプチャ条件IDとも重複しない一意の値に振り直す。また、当該キャプチャ条件データに含まれる編集可否データの値を「不可」に変更する。そして、当該クライアント12は、キャプチャ条件IDが振り直されたキャプチャ条件データを当該クライアントの記憶部12bに記憶させる。このようにして、本実施形態では、クライアント12の記憶部12bに記憶される、当該クライアント12のユーザであるプレイヤとは異なるプレイヤによって登録されたキャプチャ条件データについては、編集可否データの値として「不可」が設定されることとなる。
また、図4に示す登録画面が表示されている際に、ユーザが当該登録画面に配置されているキャンセルボタンCBを選択する操作を行うと、図3に示す一覧表示画面がディスプレイに表示される。
また本実施形態では一覧表示画面に配置されたキャプチャ条件情報CCIはリンクとなっている。そして、ユーザがキャプチャ条件情報CCIを選択する操作を行うと、図5や図6に例示する、当該キャプチャ条件情報CCIに対応付けられるキャプチャ条件データの編集画面がディスプレイに表示される。
図5は、ユーザが図3に示す一覧表示画面において上から2つめのキャプチャ条件情報CCIを選択する操作を行った際にディスプレイに表示される編集画面の一例を示す図である。当該編集画面には、選択されたキャプチャ条件情報CCIに対応付けられるキャプチャ条件データに含まれる設定プレイヤIDに対応付けられるプレイヤアイコンPIが配置されている。図5の例では、プレイヤアイコンPIaが配置されている。ここで、設定されている値を変更した上で、更新ボタンUBを選択する操作をユーザが行うと、クライアント12の記憶部12bに記憶されている当該キャプチャ条件データに含まれるイベントデータ等の値が、編集画面において設定されている値に変更される。
また、図5に示す編集画面が表示されている際に、ユーザが当該編集画面に配置されている削除ボタンDBを選択する操作を行うと、クライアント12の記憶部12bに記憶されている当該キャプチャ条件データが記憶部12bから削除される。また、図5に示す編集画面が表示されている際に、ユーザが当該編集画面に配置されているキャンセルボタンCBを選択する操作を行うと、図3に示す一覧表示画面がディスプレイに表示される。
図6は、ユーザが図3に示す一覧表示画面において上から4つめのキャプチャ条件情報CCIを選択する操作を行った際にディスプレイに表示される編集画面の一例を示す図である。当該編集画面にも、選択されたキャプチャ条件情報CCIに対応付けられるキャプチャ条件データに含まれる設定プレイヤIDに対応付けられるプレイヤアイコンPIが配置されている。図6の例では、プレイヤアイコンPIbが配置されている。また当該編集画面には、ロックアイコンLIが配置されている。本実施形態では、ユーザは編集可否データの値が「不可」であるキャプチャ条件データの値を変更することができない。そのため、図6に示す編集画面ではプレイヤAは選択されたキャプチャ条件情報CCIに対応付けられるキャプチャ条件データの編集を行えないようになっている。ここで、ユーザが当該編集画面に配置されているOKボタンOBを選択する操作を行うと、図3に示す一覧表示画面がディスプレイに表示される。
本実施形態において、キャプチャ条件データに含まれるタイトルデータが示すタイトルのゲームのプレイ中に、当該キャプチャ条件データに含まれるイベントデータが示すイベントが発生したとする。すると、当該イベントの発生タイミングと、当該キャプチャ条件データに含まれるタイミング関係データの値とに基づいて特定されるキャプチャタイミングのプレイ画像がキャプチャされることとなる。そしてクライアント12の記憶部12bに記憶されている、当該キャプチャ条件データに含まれる発生状況データの値が「未発生」である場合は「発生済」に更新される。なお本実施形態では、当該キャプチャ条件データに含まれるキャプチャ画像種別データが示す種別の画像、ここでは静止画像又は動画像がキャプチャされる。例えばプレイヤAが、ゲームAのプレイ中にマップ1にてドラゴンを倒したとする。この場合、当該ドラゴンを倒すイベントの発生タイミングの3分前から3分後までの一連のプレイ画像から構成される動画像がキャプチャ動画像として、プレイヤAが使用するクライアント12の記憶部12bに記憶されることとなる。当該キャプチャは、キャプチャ条件IDが「0001」であるキャプチャ条件データに基づくものである。
ここで、キャプチャ条件データに含まれるイベントデータが示すイベントが発生した際に、当該キャプチャ条件データに含まれる発生状況データの値が「未発生」である場合にプレイ画像がキャプチャされるようにしてもよい。一方、当該キャプチャ条件データに含まれる発生状況データの値が「発生済」である場合はプレイ画像がキャプチャされないようにしてもよい。こうすれば、キャプチャ条件データに含まれるイベントデータが示すイベントが一度発生すると、プレイ画像のキャプチャが行われないこととなる。なお、発生状況データの値が「発生済」であるキャプチャ条件データについて、ユーザからの要求に応じて当該発生状況データの値が「発生済」から「未発生」に変更されても構わない。この場合は、当該発生状況データを含むキャプチャ条件データに含まれるイベントデータが示すイベントが発生した際には、プレイ画像が再度キャプチャされることとなる。このようにすれば、例えばユーザがキャプチャされた画像に不満がある場合などに、プレイ画像のキャプチャを再度行うことができることとなる。
また、キャプチャ条件データに含まれる発生状況データの値が「未発生」であるか「発生済」であるかに関わらず、当該キャプチャ条件データに含まれるイベントデータが示すイベントが発生する度に、プレイ画像がキャプチャされるようにしてもよい。またあるいは、キャプチャ条件データに含まれるイベントデータが示すイベントが発生した回数が所定回数に達した場合に、プレイ画像のキャプチャが行われるようにしてもよい。
このように本実施形態では、キャプチャ条件データが記憶部12bに記憶されていれば、当該キャプチャ条件データに基づいてプレイ画像のキャプチャが行われる。そのため本実施形態によれば、ゲームのプレイ中に発生するイベントに応じたタイミングのプレイ画像を的確にキャプチャすることができることとなる。
また本実施形態では、ユーザがキャプチャ条件データの値、特にイベントデータの値及びタイミング関係データの値を設定可能である。そのため、ユーザはイベントが発生した際に、当該イベントの発生タイミングと所望の時間的関係にあるプレイ画像をキャプチャできる。
また本実施形態では、上述のようにイベントの発生前のタイミングから始まる一連のプレイ画像から構成される動画像をキャプチャすることができる。そのため、イベントの発生に応じて、当該イベントが発生するに至った過程をキャプチャ動画像として記録できる。
また本実施形態では上述のように、他のプレイヤによって設定されたイベントの発生タイミングとプレイ画像のキャプチャタイミングとの関係に基づくプレイ画像のキャプチャを行える。そのため本実施形態によれば、自らが求めるプレイ画像のキャプチャを他のプレイヤに依頼することができる。
また本実施形態では上述の通りクライアント12の記憶部12bには複数のキャプチャ条件データが記憶される。そのため場合によっては複数のキャプチャ条件データについてのイベントの発生に応じて特定される、プレイ画像がキャプチャされる期間の少なくとも一部が重複することがある。以下、プレイ画像がキャプチャされる期間をキャプチャ期間と呼ぶこととする。この場合は、特定される複数のキャプチャ期間の始期のうち最も早いタイミングから、当該複数のキャプチャ期間の終期のうち最も遅いタイミングまでのプレイ画像が1つのキャプチャ動画像としてキャプチャされることとなる。
例えば図7Aに示すように、2つのキャプチャ条件データのそれぞれに含まれるイベントデータが示すイベントが日時t1に発生したとする。そして一方のキャプチャ条件データにおいて設定されているキャプチャ期間がイベントの発生タイミングのP1/2前からP1/2後までであることとする。そして他方のキャプチャ条件データにおいて設定されているキャプチャ期間がイベントの発生タイミングのP2/2前からP2/2後までであることとする。ここで、P1<P2であることとする。この場合は、日時t1−P2/2から日時t1+P2/2までの期間Pに表示されるプレイ画像から構成されるキャプチャ動画像が記憶されることとなる。
この場合において、例えば図7Bに示すように、一方のキャプチャ条件データにおいて設定されているキャプチャ期間がイベントの発生タイミングからP1後までであることとする。また他方のキャプチャ条件データにおいて設定されているキャプチャ期間がイベントの発生タイミングからP2までであることとする。この場合は、日時t1から日時t1+P2までの期間Pに表示されるプレイ画像から構成されるキャプチャ動画像が記憶されることとなる。
また2つのイベントの発生タイミングが異なることもある。例えば、図7Cに示すように、2つのキャプチャ条件データに含まれるイベントデータが示すイベントのそれぞれが日時t1、及び、日時t2に発生したとする。そして日時t1に発生したイベントを示すイベントデータを含むキャプチャ条件データにおいて設定されているキャプチャ期間がイベントの発生タイミングのP1/2前からP1/2後までであることとする。そして日時t2に発生したイベントを示すイベントデータを含むキャプチャ条件データにおいて設定されているキャプチャ期間がイベントの発生タイミングのP2/2前からP2/2後までであることとする。ここで、P1<P2であることとする。この場合は、日時t1−P1/2から日時t2+P2/2までの期間Pに表示されるプレイ画像から構成されるキャプチャ動画像が記憶されることとなる。
この場合において、例えば図7Dに示すように、日時t1に発生したイベントを示すイベントデータを含むキャプチャ条件データにおいて設定されているキャプチャ期間がイベントの発生タイミングからP1後までであることとする。また日時t2に発生したイベントを示すキャプチャ条件データにおいて設定されているキャプチャ期間がイベントの発生タイミングからP2までであることとする。この場合は、日時t1から日時t2+P2までの期間Pに表示されるプレイ画像から構成されるキャプチャ動画像が記憶されることとなる。
同様に、例えば図7Eに示すように、日時t1に発生したイベントを示すイベントデータを含むキャプチャ条件データにおいて設定されているキャプチャ期間がイベントの発生タイミングからP1後までであることとする。また日時t2に発生したイベントを示すキャプチャ条件データにおいて設定されているキャプチャ期間がイベントの発生タイミングのP2/2前からP2/2後までであることとする。この場合は、日時t1から日時t2+P2/2までの期間Pに表示されるプレイ画像から構成されるキャプチャ動画像が記憶されることとなる。
本実施形態では、キャプチャ動画像又はキャプチャ画像は、メタデータに関連付けられて記憶部12bに記憶される。ここでメタデータには、例えばファイル名、キャプチャ条件データに含まれるイベントデータの値、イベントの発生タイミングを示す日時などが含まれる。
また本実施形態では、上述のように複数のイベントに対応付けられる1つのキャプチャ動画像が記憶される場合には、当該キャプチャ動画像には複数のイベントのそれぞれに対応付けられるメタデータが関連付けられる。この場合、それぞれのメタデータには、対応付けられるキャプチャ条件データに含まれるイベントデータの値、イベントの発生タイミングを示す日時が含まれる。当該メタデータにはさらに、対応付けられるキャプチャ条件データに対応付けられるキャプチャ期間の始期及び終期に対応する、キャプチャ動画像内における位置を示すデータが含まれていてもよい。キャプチャ動画像内における位置は、例えば、キャプチャ動画像を構成する画像のフレーム番号等で表現される。このようにして本実施形態では、発生した複数のイベントに対応付けられる1つのキャプチャ動画像が記憶されても、メタデータに基づいて、当該キャプチャ動画像からそれぞれのイベントに対応付けられる部分を切り出せるようになっている。なお上述のようにキャプチャ条件データに含まれるイベントデータが示すイベントが発生する度にプレイ画像がキャプチャされる場合には、何回目のイベントの発生であるかを示すデータがメタデータに含まれるようにしてもよい。
また、ユーザから受け付ける要求に応じて、図8に示すような、キャプチャ動画像又はキャプチャ画像の一覧であるキャプチャ一覧画面が表示されるようにしてもよい。図8に例示するキャプチャ一覧画面には、それぞれキャプチャ動画像又はキャプチャ画像に対応付けられる4つのキャプチャ情報CIが配置されている。そして本実施形態では、ユーザがキャプチャ情報CIを選択する操作を行うと、当該キャプチャ情報CIに対応付けられるキャプチャ動画像の再生、又は当該キャプチャ情報CIに対応付けられるキャプチャ画像の表示が行われる。
キャプチャ情報CIには、例えば、キャプチャ動画像又はキャプチャ画像のファイル名、イベントが発生したステージ名などといったキャプチャ動画像又はキャプチャ画像に関する情報、キャプチャ理由、キャプチャ日時、が配置されている。キャプチャ情報CIは、例えば上述のメタデータに基づいて生成される。本実施形態では例えば、メタデータに含まれる上述のイベントデータの値がキャプチャ理由としてキャプチャ一覧画面に配置される。また例えばメタデータに含まれる上述のイベントの発生タイミングを示す日時がキャプチャ日時としてキャプチャ一覧画面に配置される。また、図8に示すように、キャプチャ理由として、何回目のイベントの発生であるかを示す情報が配置されてもよい。また、図8の例では、キャプチャ条件データに基づくキャプチャについてはキャプチャ理由を表す文字列が括弧で囲まれている。一方、ユーザのキャプチャ操作に応じたキャプチャについては、キャプチャ理由として「ユーザが撮影」という文字列が配置されている。
以下、キャプチャ条件データの設定及びプレイ画像のキャプチャについてさらに説明する。
図9は、本実施形態に係るクライアント12で実現される機能の一例を示す機能ブロック図である。なお、本実施形態に係るクライアント12で、図9に示す機能のすべてが実現される必要はなく、また、図9に示す機能以外の機能が実現されていても構わない。
本実施形態に係るクライアント12は、機能的には例えば、キャプチャ条件データ記憶部20、キャプチャ条件データ受付部22、キャプチャ条件データ管理部24、キャプチャ条件データ送信部26、ゲーム処理実行部28、検出部30、キャプチャタイミング特定部32、キャプチャ制御部34、キャプチャ画像記憶部36、キャプチャ通知部38、を含んでいる。キャプチャ条件データ記憶部20、キャプチャ画像記憶部36は、記憶部12bを主として実装される。キャプチャ条件データ受付部22は、通信部12cを主として実装される。キャプチャ条件データ送信部26は、通信部12cを主として実装される。キャプチャ制御部34は、制御部12a及び記憶部12bを主として実装される。キャプチャ通知部38は、通信部12c及び出力部12dを主として実装される。その他の機能は、制御部12aを主として実装される。
そして、以上の機能は、コンピュータであるクライアント12にインストールされた、以上の機能に対応する指令を含むプログラムを、クライアント12の制御部で実行することにより実装されている。このプログラムは、例えば、光ディスク、磁気ディスク、磁気テープ、光磁気ディスク、フラッシュメモリ等のコンピュータ読み取り可能な情報記憶媒体を介して、あるいは、インターネットなどのコンピュータネットワークを介してクライアント12に供給される。
キャプチャ条件データ記憶部20は、図2に例示する上述のキャプチャ条件データを記憶する。本実施形態では、クライアント12のキャプチャ条件データ記憶部20に記憶されるキャプチャ条件データは当該クライアント12に対応付けられるものになっている。そして本実施形態では、クライアント12によって、キャプチャ条件データ記憶部20に記憶されているキャプチャ条件データは互いに異なっている。
キャプチャ条件データ受付部22は、ゲームをプレイするユーザとは異なるユーザからキャプチャ条件データを受け付ける。本実施形態では、クライアント12のキャプチャ条件データ受付部22は、当該クライアント12を使用するユーザとは異なるユーザやサーバ10の管理者等によってサーバ10に登録されたキャプチャ条件データをサーバ10から受信する。なお、キャプチャ条件データ受付部22が、例えば所定の時間間隔でサーバ10の記憶部10bに新規のキャプチャ条件データが登録されたか否かを問い合わせてもよい。この場合は、サーバ10は、新規に登録されたキャプチャ条件データを当該クライアント12に送信する。
キャプチャ条件データ管理部24は、キャプチャ条件データ受付部22が受け付けたキャプチャ条件データをキャプチャ条件データ記憶部20に記憶させる。また本実施形態ではキャプチャ条件データ管理部24は、例えば、図4に例示する登録画面に対する入力内容に基づいてキャプチャ条件データを生成して、当該キャプチャ条件データをキャプチャ条件データ記憶部20に記憶させる。キャプチャ条件データ管理部24は、キャプチャ条件データをサーバ10から受け付けた際には、上述のようにしてキャプチャ条件IDが振り直されたキャプチャ条件データをキャプチャ条件データ記憶部20に記憶させる。また、キャプチャ条件データの更新操作が行われた際は、キャプチャ条件データ管理部24は、キャプチャ条件データ記憶部20に記憶されている当該キャプチャ条件データを更新する。また、キャプチャ条件データの削除操作が行われた際には、キャプチャ条件データ管理部24は、キャプチャ条件データ記憶部20に記憶されている当該キャプチャ条件データを削除する。
キャプチャ条件データ送信部26は、キャプチャ条件データをサーバ10に送信する。本実施形態では、例えば、ユーザが図4に例示する登録画面に配置されているアップロードボタンULBを選択する操作を行った際に、キャプチャ条件データ管理部24が新規のキャプチャ条件データを生成してクライアント12の記憶部12bに記憶させる。そして、キャプチャ条件データ送信部26が当該キャプチャ条件データをサーバ10に送信する。サーバ10は、上述のようにしてキャプチャ条件IDが振り直されたキャプチャ条件データをサーバ10に記憶させることによって、当該キャプチャ条件データを登録する。登録されたキャプチャ条件データは、上述のようにして、当該キャプチャ条件データの送信元のクライアント12とは異なるクライアント12のキャプチャ条件データ受付部22が受信する。
なお、編集画面を介してキャプチャ条件データの更新が行われた際に、キャプチャ条件データ送信部26が更新されたキャプチャ条件データをサーバ10に送信してもよい。そして、当該キャプチャ条件データの送信元のクライアント12とは異なるクライアント12のキャプチャ条件データ受付部22が当該キャプチャ条件データを受信してもよい。そして、当該キャプチャ条件データを受信したクライアント12のキャプチャ条件データ管理部24が、キャプチャ条件データ記憶部20に記憶されているキャプチャ条件データの値を、受信したキャプチャ条件データの値に更新してもよい。
また、編集画面を介してキャプチャ条件データの削除が行われた際に、キャプチャ条件データ送信部26が、削除されたキャプチャ条件データのキャプチャ条件IDをサーバ10に送信してもよい。そして、当該キャプチャ条件IDの送信元のクライアント12とは異なるクライアント12のキャプチャ条件データ受付部22が当該キャプチャ条件IDを受信してもよい。そして、当該キャプチャ条件IDを受信したクライアント12のキャプチャ条件データ管理部24が、キャプチャ条件データ記憶部20に記憶されている、当該キャプチャ条件IDを含むキャプチャ条件データを削除してもよい。
ゲーム処理実行部28は、クライアント12にインストールされているゲームのプログラムを実行する。そして上述のように、ゲーム処理実行部28は、所定のフレームレートでプレイ画像を生成してディスプレイに表示させる。またゲーム処理実行部28は、上述のように表示されるプレイ画像のコピーをリングバッファ領域に書き込む。
検出部30は、ゲームのプレイ中に発生するイベントを検出する。本実施形態では、検出部30は、ゲーム処理実行部28によるゲームのプログラムの実行に伴い、当該ゲームにおいて発生したイベントを検出する。なお検出部30は、イベントが発生した際にゲーム処理実行部28が通知する、当該イベントが発生した旨を受け付けることで当該イベントを検出してもよい。また検出部30は、所定のフレームレートでイベントの発生の有無を確認することで当該イベントを検出してもよい。
キャプチャタイミング特定部32は、検出部30によるイベントの検出に応じて、タイミング関係データに基づいて、当該検出に応じたキャプチャタイミングを特定する。本実施形態では、キャプチャタイミング特定部32は、例えば、キャプチャ条件データ記憶部20に記憶されているキャプチャ条件データにおいて、検出部30が検出するイベントを示すイベントデータに関連付けられているタイミング関係データを特定する。そしてキャプチャタイミング特定部32は、特定されるタイミング関係データと、イベントが検出されるタイミングと、に基づいて、当該検出に応じたキャプチャタイミングを特定する。なお、キャプチャタイミング特定部32は、上述のように当該検出に応じたプレイ画像のキャプチャの開始タイミングや終了タイミングを特定してもよい。また、キャプチャタイミング特定部32は、ゲームをプレイするユーザとは異なるユーザから受け付けるタイミング関係データに基づいて、当該検出に応じたキャプチャタイミングを特定してもよい。またキャプチャタイミング特定部32は、当該検出に応じたキャプチャ期間を特定してもよい。
キャプチャ制御部34は、キャプチャタイミング特定部32により特定されるキャプチャタイミングのプレイ画像がキャプチャされるよう制御する。本実施形態では、キャプチャ制御部34は例えば、特定されるキャプチャタイミングに表示されるプレイ画像、あるいは特定されるキャプチャタイミングに表示されたプレイ画像をキャプチャしてキャプチャ画像記憶部36に記憶させる。ここで、上述のように、キャプチャ条件データに含まれるキャプチャ画像種別データの値が「動画像」である場合は、キャプチャ動画像を記憶させ、「静止画像」である場合は、キャプチャ画像を記憶させる。また、キャプチャ制御部34は、上述のようにキャプチャ動画像又はキャプチャ画像にメタデータを関連付けて、キャプチャ画像記憶部36に記憶させる。また、図7A〜図7Eに示すように、互いに異なる複数のイベントの検出のそれぞれについて特定される当該検出に応じたキャプチャ期間の少なくとも一部が重複する場合がある。この場合に、キャプチャ制御部34は、特定される複数のキャプチャ期間の始期のうち最も早いタイミングから、当該複数のキャプチャ期間の終期のうち最も遅いタイミングまでのプレイ画像が1つの動画像としてキャプチャされるよう制御してもよい。また、キャプチャ制御部34は、上述の場合に複数のキャプチャ期間のそれぞれについてのキャプチャ動画像を統合するようにしてもよい。
キャプチャ画像記憶部36は、キャプチャ制御部34がキャプチャした画像を記憶する。本実施形態では、メタデータに関連付けられたキャプチャ動画像やキャプチャ画像を記憶する。
キャプチャ通知部38は、プレイ画像がキャプチャされた際にその旨をディスプレイに表示させる。またキャプチャ通知部38は、他のユーザから受け付けたキャプチャ条件データに基づいてプレイ画像がキャプチャされた際にその旨を当該他のユーザが使用するクライアント12に送信してもよい。またこの場合に、キャプチャ通知部38が、プレイ画像がキャプチャされたことが記述された電子メールを当該他のユーザのメールアドレス宛に送信しても構わない。また当該他のユーザが所有するスマートフォンに、プレイ画像がキャプチャされた旨の通知を受信可能なアプリケーションがインストールされていてもよい。そしてキャプチャ通知部38は、プレイ画像がキャプチャされた際に、当該アプリケーションの接続先であるネットワークサービス経由でプレイ画像がキャプチャされた旨を当該他のユーザに通知してもよい。またキャプチャ通知部38は、この場合に、キャプチャ画像又はキャプチャ動画像を当該他のユーザが使用するクライアント12に送信してもよい。また本実施形態では、キャプチャ通知部38は、図8に例示するキャプチャ一覧画面の生成及びディスプレイへの表示を行う。
また、キャプチャ条件データに基づいて記憶されたキャプチャ画像やキャプチャ動画像が画像投稿サイトなどの各種サイトにアップロードされた際に、当該サイトのURLが、当該キャプチャ条件データの値を設定したユーザに送信されてもよい。
なお、本発明は上述の実施形態に限定されるものではない。
例えばイベントとキャプチャタイミングとの関係が予め定められていてもよい。具体的には例えば、イベントデータとタイミング関係データとを関連付けたデータがキャプチャ条件データ記憶部20に予め記憶されていてもよい。そして、キャプチャ条件データ管理部24が、イベントの指定の受付に応じて、当該イベントを示すイベントデータと、当該イベントデータに関連付けられているタイミング関係データと、を含むキャプチャ条件データを生成してもよい。そしてキャプチャ条件データ管理部24が、当該キャプチャ条件データを、キャプチャ条件データ記憶部20に記憶させるようにしてもよい。このようにすれば、ユーザはイベントの発生タイミングとプレイ画像のキャプチャタイミングとの関係を指定することなく、予め設定された当該関係に従って、プレイ画像がキャプチャされることとなる。
また、キャプチャ動画像がライブストリーミング配信されても構わない。例えば、キャプチャ動画像がクライアント12の記憶部12bに記憶されるのではなく、バッファリングされた上で、ライブストリーミングサービスを提供するサイトにアップロードされて公開されても構わない。そして当該サイトのURLがキャプチャ条件データを設定したユーザのクライアント12に送信されるようにしてもよい。
また、サーバ10が複数の筐体から構成されていてもよい。また、サーバ10とクライアント12との役割分担は上述のものに限定されない。また、サーバ10とクライアント12とは一体であってもよい。
例えばクライアント12にインストールされたブラウザを介してプレイ画像が表示される、サーバサイドで実行されるゲームのプログラムにおけるプレイ画像のキャプチャに本実施形態を応用してもよい。例えば、サーバ10でゲームのプログラムが実行される際に、サーバ10が、当該ゲームのプレイ中に発生するイベントの検出、当該検出に応じたキャプチャタイミングの特定、プレイ画像のキャプチャを行ってもよい。あるいはサーバ10が、特定されるキャプチャタイミングに関連付けてプレイ画像のキャプチャ指示をクライアント12に通知してもよい。そして、クライアント12が当該キャプチャ指示に応じてプレイ画像をキャプチャしてもよい。この場合は、サーバ10は、キャプチャは行っていないが、特定されるキャプチャタイミングにプレイ画像がキャプチャされるよう制御していることとなる。
また例えば、サーバ10が、発生を検出したイベントをクライアント12に通知してもよい。そして、クライアント12が、当該検出に応じたキャプチャタイミングの特定及びプレイ画像のキャプチャを行ってもよい。
また例えば、キャプチャ条件データは、以上説明したものの他の、クライアント12にインストールされているシステムプログラムによって使用されているパラメータや、プレイされるゲームにおいて使用されているパラメータが組み合わされたものであってもよい。
ここでシステムプログラムによって使用されるパラメータの例としては、ユーザID、ユーザの所属リージョン、ユーザのゲーマランク(トロフィーランク・ゲーマスコア)、保有しているゲームタイトル名などが挙げられる。システム内において管理されているパラメータの例としてはその他、特定のゲームのプレイ時間、撮影時間(プレイ画像のキャプチャ時間)などが挙げられる。
また、プレイされるゲームにおいて使用されているパラメータの例としては、特定のゲームのトロフィーの取得数、攻撃相手を倒した数、コンボ数、スコア、ベストタイムなどが挙げられる。プレイされるゲームにおいて管理されているパラメータの例としてはその他、ゲーム内でのマップID、ロケーションID、敵オブジェクトID、アイテムオブジェクトID、イベントID、トロフィーIDなどが挙げられる。プレイされるゲームにおいて管理されているパラメータの例としてはその他、ゲーム内での取得アイテムオブジェクトの数、クリア回数、トロフィーの取得タイミング、起動時間、攻撃相手を倒した数やスコア数の変動が挙げられる。また、プレイされるゲームにおいて管理されているパラメータの例としてはその他、クライアント12とサーバ10との間でのトランザクションの変動、ボイスチャットでの音量や話者数の変動などが挙げられる。
また、上記の具体的な文字列や図面中の具体的な文字列は例示であり、これらの文字列には限定されない。