説明

画像処理システム、画像処理方法、プログラム及び情報記憶媒体

【課題】複数の動画像それぞれのフレーム画像が配置された画面を好適化できる画像処理システムを提供する。
【解決手段】クライアント12のデータ受信部60又はクラウドサービス10の合成画像生成部50は、複数の動画像それぞれのフレーム画像を取得する。クライアント12の画面生成部66は、取得する複数のフレーム画像が含まれる画面を生成する。画面生成部66は、所与の規則に従った設定で各フレーム画像が配置された画面を生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理システム、画像処理方法、プログラム及び情報記憶媒体に関する。
【背景技術】
【0002】
動画像をサーバから端末に送信する技術が存在する。特許文献1には、画像フレーム毎に設定された重要度を動画ストリームのパケットのヘッダに優先度タグとして付加して、パケットの優先度制御機能をもつルータで構成されるネットワークに優先度タグ付きのパケットを送信することで、動画ストリームをネットワークで送受信する場合に、動画ストリームの優先度制御を効果的に行って動画を再生することのできる画像処理システムが開示されている。
【0003】
また、近年、コンピュータネットワークを利用したオンラインゲームが盛んに行われるようになってきている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】米国特許第7734104号明細書
【発明の概要】
【発明が解決しようとする課題】
【0005】
それぞれゲームのプレイ内容を表す複数の動画像が一画面でまとめてプレイヤに提示される際には、例えば、ネットワークの状況やプレイヤが利用する端末の性能(例えば、端末のディスプレイサイズ等)に応じて、画面に含まれる動画像(フレーム画像)の数が変化したり画面の表示態様が変化したりすることがプレイヤにとっては望ましい。
【0006】
また、ゲームの提供者としても、プレイヤに注目してもらいたい動画像の画質が他の動画像の画質よりも高くなる、あるいは、プレイヤに注目してもらいたい動画像が他の動画像よりも大きく表示されることは望ましい。
【0007】
このように、それぞれゲームのプレイ内容を表す複数の動画像が一画面でまとめてプレイヤに提示される際に画面を好適化できることは、ゲームの提供者、ゲームのプレイヤ双方にとって利点がある。
【0008】
本発明は上記課題に鑑みてなされたものであって、それぞれゲームのプレイ内容を表す複数の動画像が一画面でまとめてプレイヤに提示される際に画面を好適化できる画像処理システム、画像処理方法、プログラム及び情報記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【0009】
上記課題を解決するために、本発明に係る画像処理システムは、それぞれゲームのプレイ内容を表す動画像である複数の動画像のフレーム画像が含まれる画面を順次生成する画面生成手段と、前記画面生成手段により生成される画面を順次出力する画面出力手段と、を含み、前記画面生成手段は、所与の規則に従った設定で前記複数のフレーム画像が配置された画面を生成することを特徴とする。
【0010】
また、本発明に係る画像処理方法は、それぞれゲームのプレイ内容を表す動画像である複数の動画像のフレーム画像が含まれる画面を順次生成する画面生成ステップと、前記画面生成手段により生成される画面を順次出力する画面出力ステップと、を含み、前記画面生成ステップでは、所与の規則に従った設定で前記複数のフレーム画像が配置された画面を生成することを特徴とする。
【0011】
また、本発明に係るプログラムは、それぞれゲームのプレイ内容を表す動画像である複数の動画像のフレーム画像が含まれる画面を順次生成する画面生成手段、前記画面生成手段により生成される画面を順次出力する画面出力手段、としてコンピュータを機能させ、前記画面生成手段は、所与の規則に従った設定で前記複数のフレーム画像が配置された画面を生成することを特徴とする。
【0012】
また、上記のプログラムはコンピュータ読み取り可能な情報記憶媒体に記憶することもできる。
【0013】
本発明によると、各フレーム画像が画面に配置される際の設定が、所定の規則に従うので、それぞれゲームのプレイ内容を表す複数の動画像が一画面でまとめてプレイヤに提示される際の画面を好適化できる。
【0014】
本発明の一態様では、前記画面生成手段は、所定の条件を満足するか否かに応じて、前記複数の動画像のフレーム画像が含まれる画面を生成するか、その代わりに前記複数の動画像のフレーム画像のうちの一部が含まれる画面を生成するか、を変えることを特徴とする。
【0015】
また、本発明の一態様では、前記画面生成手段は、所定の条件を満足するか否かに応じて、前記複数の動画像のフレーム画像が含まれる画面を生成するか、その代わりに前記画面が提示されるプレイヤとは異なるプレイヤによるプレイ内容を表す動画像のフレーム画像が含まれない画面を生成するか、を変えることを特徴とする。
【0016】
また、本発明の一態様では、前記各動画像は、複数のプレイヤが参加するゲームについての、当該各プレイヤによるプレイ内容を表す動画像であり、前記画面生成手段は、所定の条件を満足するか否かに応じて、前記ゲームに参加する全プレイヤについての、プレイ内容を表す動画像のフレーム画像が含まれる画面を生成するか、その代わりに前記画面が提示されるプレイヤとは異なるプレイヤによるプレイ内容を表す動画像のフレーム画像が含まれない画面を生成するか、を変えることを特徴とする。
【0017】
また、本発明の一態様では、前記所定の条件は、前記画面の出力先の装置が備えるディスプレイの大きさに関する条件、又は、前記画像処理システムと前記画面の出力先である装置とを接続するネットワークの帯域幅に関する条件であることを特徴とする。
【0018】
また、本発明の一態様では、前記画面生成手段は、前記画面が提示されるプレイヤによるプレイ内容を表す動画像のフレーム画像が他のフレーム画像よりも大きく配置されるよう各フレーム画像が配置された画面、又は、前記画面が提示されるプレイヤによるプレイ内容を表す動画像のフレーム画像が他のフレーム画像よりも画質が高くなるよう各フレーム画像が配置された画面、を生成することを特徴とする。
【0019】
また、本発明の一態様では、前記画面生成手段は、ゲームにおいて所定のイベントが発生した際に、当該ゲームのプレイ内容を表す動画像のフレーム画像の大きさがそれまでに生成された画面に配置された当該動画像のフレーム画像の大きさよりも大きくなる、あるいは、当該ゲームのプレイ内容を表す動画像のフレーム画像の画質がそれまでに生成された画面に配置された当該動画像のフレーム画像の画質よりも高くなるよう、生成する画面の設定を変更することを特徴とする。
【0020】
また、本発明の一態様では、前記画面生成手段は、前記複数の動画像それぞれのフレーム画像が、動画像の閲覧者数に応じた大きさ、又は、画質で配置された画面を生成することを特徴とする。
【0021】
また、本発明の一態様では、前記設定は、画面内におけるフレーム画像の位置、画面内におけるフレーム画像の大きさ、及び、画面に配置される際のフレーム画像の画質、のうちの少なくとも1つについての設定であることを特徴とする。
【図面の簡単な説明】
【0022】
【図1】本実施形態に係るコンピュータネットワークの全体構成の一例を示す図である。
【図2】ゲーム画面の一例を示す図である。
【図3】ゲーム画面の一例を示す図である。
【図4】本実施形態に係るクラウドサービスとクライアントとの関係の一例を示す概念図である。
【図5】本実施形態に係るクラウドサービス及びクライアントで実現される機能の一例を示す機能ブロック図である。
【図6】属性設定対応データの一例を示す図である。
【図7】配信設定データの一例を示す図である。
【図8】フレンド表示画面の一例を示す図である。
【発明を実施するための形態】
【0023】
以下、本発明の一実施形態について図面に基づき詳細に説明する。
【0024】
図1は、本発明の一実施形態に係るコンピュータネットワークの全体構成の一例を示す図である。図1に示すように、インターネットなどのコンピュータネットワーク14には、いずれもコンピュータを中心に構成されたクラウドサービス10、クライアント12(12−1〜12−n)、が接続されている。そして、クラウドサービス10、クライアント12は、互いに通信可能になっている。本実施形態では、クラウドサービス10は、動画像送信装置として機能し、クライアント12は、動画像受信装置として機能する。また、本実施形態では、クラウドサービス10及びクライアント12全体として画像処理システムとして機能する。
【0025】
クライアント12は、クラウドサービス10のユーザが利用するコンピュータであり、例えば、パーソナルコンピュータ、ゲームコンソール、テレビ受像器、携帯型ゲーム装置、携帯情報端末、などである。そして、クライアント12は、例えば、CPU等の制御装置、ROMやRAM等の記憶素子やハードディスクドライブ等の記憶装置、ディスプレイ、スピーカ等の出力装置、ゲームコントローラ、タッチパッド、マウス、キーボード、マイク等の入力装置、ネットワークボード等の通信装置、DVD−ROMやBlu−ray(登録商標)ディスクなどの光ディスク(コンピュータ読み取り可能な情報記憶媒体)を読み取る光ディスクドライブ、等を備えている。
【0026】
また、本実施形態に係るクライアント12は、ウェブブラウザ及びクライアントプログラムが予めインストールされており、これらのアプリケーションプログラムが実行される。
【0027】
クラウドサービス10は、例えば、分散コンピューティング環境であり、互いに通信可能に接続されている複数台のWebアプリケーションサーバ、複数台のデータベースサーバ、複数台のストレージデバイス、などを含んで構成されている。クラウドサービス10に含まれるサーバは、例えば、CPU等の制御部、ROMやRAM等の記憶素子やハードディスクドライブなどである記憶部、ネットワークボードなどの通信インタフェースである通信部、を含んで構成されている。これらの要素は、バスを介して接続される。
【0028】
クラウドサービス10を利用するクライアント12は、クラウドサービス10内に存在するサーバやストレージデバイスなどのリソースの所在を特に意識することなく、クラウドサービス10が提供する各種サービスを利用することができる。
【0029】
本実施形態では、クライアント12が、ウェブブラウザを通じてクラウドサービス10にアクセスし、ユーザID及びパスワードを入力してから、その後に所定のURLにアクセスすると、クライアント12のディスプレイに所定のURLに対応する画面が表示される。なお、ユーザID及びパスワードを入力した後は、クラウドサービス10は、例えば、クッキーを参照することによりクライアント12を利用するユーザのユーザIDを特定することができるようになっている。
【0030】
本実施形態では、例えば、ユーザA、ユーザB、ユーザC、及び、ユーザD、それぞれのクライアント12から、複数人数でのゲームのプレイ(マルチプレイ)の実行の開始要求をクラウドサービス10に送信すると、クラウドサービス10はそのゲームの実行を開始する。以下、ユーザA、ユーザB、ユーザC、及び、ユーザDのユーザIDは、それぞれ、「001」、「002」、「003」、及び、「004」であることとする。そして、このゲームが実行されている間、クラウドサービス10は、このゲームのプレイ内容を表す動画像をエンコードして各クライアント12にストリーミング送信する。すなわち、クラウドサービス10は、このゲームのプレイ内容を表すフレーム画像20を順次各クライアント12にストリーミング送信する。そして、クライアント12は、この動画像を受信し、デコードし、デコードされた動画像のフレーム画像20が配置されたゲーム画面22を生成して、ディスプレイに表示出力する(図2、及び、図3参照)。以下、上述のようにして順次ストリーミング送信される一連のフレーム画像20から構成される、プレイが進行中であるゲームのプレイ内容を表す動画像をプレイ動画像と呼ぶこととする。
【0031】
図2に、ユーザAのクライアント12のディスプレイに表示されるゲーム画面22の一例を示す。図3に、ユーザBのクライアント12のディスプレイに表示されるゲーム画面22の一例を示す。図3では、例えば、ユーザBのプレイ動画像のフレーム画像20が左上に配置されており、ユーザA、ユーザC、及び、ユーザDのプレイ動画像のフレーム画像20が、それぞれ、右上、左下、右下に配置されている。
【0032】
本実施形態では、各ユーザは、プレイ動画像を見ながら、ゲームコントローラのボタンを押下するなどしてゲームを楽しむことができる。本実施形態では、各ユーザ、ゲームコントローラのボタンを押下するなどの、キー入力を行うことにより、ゲームにおけるプレイヤオブジェクトの移動等の操作を行うことができる。
【0033】
図2及び図3に示すように、本実施形態では、複数のユーザが同じゲームをマルチプレイでプレイしている状況であっても、各ユーザのクライアント12のディスプレイには異なるゲーム画面22が表示出力される場合がある。また、本実施形態では、複数のユーザが同じゲームをマルチプレイでプレイしている状況であっても、各ユーザのクライアント12にクラウドサービス10から送信されるプレイ動画像の数が異なる場合がある。
【0034】
また、本実施形態では、例えば、ゲームをプレイしているユーザとは異なるユーザ(ここでは、例えば、ユーザE)のクライアント12から、ユーザA、ユーザB、ユーザC、及び、ユーザDによるゲームのプレイの観戦要求をクラウドサービス10に送信すると、クラウドサービス10は、例えば、上述の4人のユーザによりプレイされているゲームのプレイ動画像をユーザEのクライアント12に配信する。そして、ユーザEのクライアント12は、例えば、ユーザA、ユーザB、ユーザC、及び、ユーザDのプレイ動画像のフレーム画像20が、それぞれ、左上、右上、左下、及び、右下に配置されたゲーム画面22をディスプレイに表示出力する。このようにして、本実施形態では、ユーザEは、上述の4人のユーザがプレイしているゲームのプレイ内容を表すプレイ動画像を閲覧することができる。
【0035】
図4は、本実施形態に係るクラウドサービス10とクライアント12との関係の一例を示す概念図である。本実施形態に係るクラウドサービス10では、例えば、管理プロセス30、サービス提供プロセス32、エミュレータ34が実行される。また、クラウドサービス10に含まれるストレージデバイス等の記憶装置には、予め、各種ゲームプログラムのイメージファイルが記憶されている。ゲームプログラムには、ゲームの識別子であるゲームIDが関連付けられている。
【0036】
サービス提供プロセス32は、例えば、クラウドサービス10に含まれるサーバが、ショッピングサイトやSNS(Social Networking Service)等、クラウドサービス10が提供する種々のサービスを実現するプログラムを起動することで生成されるプロセスである。
【0037】
管理プロセス30は、例えば、クラウドサービス10に含まれるサーバが、クラウドサービス10に含まれるサーバやストレージデバイスにインストールされている管理プログラムを起動することで生成されるプロセスであり、エミュレータ34の所在管理処理、エミュレータ34の起動処理及び停止処理、クライアント12からの要求に応じたクライアント12とエミュレータ34との接続処理及び切断処理、などを実行する。
【0038】
エミュレータ34は、例えば、クラウドサービス10に含まれるサーバやストレージデバイスに記憶されているゲームプログラムを実行するための仮想マシンとして機能するプロセスである。エミュレータ34は、管理プロセス30が、クライアント12からの要求に応じて、クラウドサービス10に含まれるサーバやストレージデバイスにインストールされているエミュレータプログラムを起動することにより生成される。そして、管理プロセス30は、クライアント12からの要求に応じて、クライアント12により指定されたゲームプログラムのイメージファイルを読み込み、エミュレータ34にロードする。このことによって、エミュレータ34上でゲームプログラムが実行されることとなる。なお、エミュレータ34が、クライアント12により指定されたゲームプログラムを自プロセスにロードするようにしてもよい。
【0039】
また、エミュレータ34は、例えば、クライアント12や管理プロセス30からの要求に応じて、エミュレータ34が管理しているエミュレートされたメモリイメージやレジスタ(例えば、プログラムカウンタ等)、エミュレータ34上で動作するゲームプログラムによる入出力アクセスログ、エミュレータ34上で実行されるCPU命令やGPU命令のログなどを出力する。
【0040】
本実施形態では、図4に示すように、1つのエミュレータ34を1つのクライアント12が専有することができる(ゲームプログラムP1参照)。また、1つのエミュレータ34に対して複数のクライアント12が接続可能となっている(ゲームプログラムP2参照)。また、1つのエミュレータ34上で複数のゲームプログラムが実行可能となっている(ゲームプログラムP3、P4参照)。
【0041】
また、本実施形態では、図4に示すように、クライアント12にエミュレータプログラムがインストールされている場合は、管理プロセス30は、クライアント12からの要求に応じて、クライアント12にエミュレータ34の起動指示や停止指示を出力する。クライアント12は、管理プロセス30から受け付ける起動指示に応じて、クライアント12にインストールされているエミュレータプログラムを起動する。また、クライアント12は、管理プロセス30から受け付ける停止指示に応じて、実行中のエミュレータ34を停止する。そして、クライアント12に記憶されているゲームプログラムをクライアント12で実行されているエミュレータ34で実行することもできるようになっている(ゲームプログラムP5参照)。また、クライアント12で実行されているエミュレータ34に対して他のクライアント12から接続できるようになっている(ゲームプログラムP6参照)。
【0042】
また、本実施形態では、図4に示すように、1つのクライアント12が複数のエミュレータ34に接続することもできる(ゲームプログラムP7、P8参照)。
【0043】
図5は、本実施形態に係るクラウドサービス10及びクライアント12で実現される機能の一例を示す機能ブロック図である。なお、図5には、以下の説明と特に関係がある機能が示されているにすぎず、本実施形態に係るクラウドサービス10やクライアント12では、図5に示す機能以外の機能も実現されている。
【0044】
図5に示すように、本実施形態に係るクラウドサービス10は、機能的には、例えば、データ記憶部40、データ受信部42、データ送信部44、配信管理部46、ゲーム実行部48、合成画像生成部50、ゲーム状況監視部52、ネットワーク状況監視部54、を含んで構成される。データ記憶部40は、例えば、クラウドサービス10に含まれるサーバに含まれるメモリやハードディスクドライブ、ストレージデバイス、などといった記憶装置を主として実現される。データ受信部42、データ送信部44は、クラウドサービス10が備えるネットワークボードなどの通信インタフェースを主として実現される。また、ゲーム実行部48は、例えば、エミュレータ34で実現される機能に対応する。その他の要素は、例えば、管理プロセス30で実現される機能に対応する。
【0045】
また、図5に示すように、本実施形態に係るクライアント12は、機能的には、例えば、データ受信部60、データ送信部62、配信設定管理部64、画面生成部66、画面出力部68、を含んで構成される。データ受信部60、データ送信部62は、クライアント12が備えるネットワークボードなどの通信インタフェースを主として実現される。配信設定管理部64、画面生成部66は、クライアント12が備えるCPU等の制御装置を主として実現される。画面出力部68は、クライアント12が備えるディスプレイなどの出力装置を主として実現される。
【0046】
クラウドサービス10は、上述のようにコンピュータを中心に構成されており、プログラムを実行することにより、図5においてクラウドサービス10が担う各機能要素が実現されるようになっている。また、このプログラムは、例えば、CD−ROM、DVD−ROMなどのコンピュータ読み取り可能な情報記憶媒体を介して、あるいは、インターネットなどの通信ネットワークを介してクラウドサービス10に供給される。また、クライアント12も、上述のようにコンピュータを中心に構成されており、上述のクライアントプログラムを実行することにより、図5においてクライアント12が担う各機能要素が実現されるようになっている。また、このプログラムは、例えば、CD−ROM、DVD−ROMなどのコンピュータ読み取り可能な情報記憶媒体を介して、あるいは、インターネットなどの通信ネットワークを介してクライアント12に供給される。
【0047】
配信管理部46は、本実施形態では、例えば、クライアント12からの要求に応じてエミュレータ34を起動したり停止したりする。また、配信管理部46は、クライアント12からの要求に応じた、クライアント12とエミュレータ34との接続処理及び切断処理を実行する。また、配信管理部46は、起動したエミュレータ34へのゲームプログラムのイメージファイルのロードも行う。また、配信管理部46は、エミュレータ34の所在管理処理も実行する。
【0048】
本実施形態では、例えば、クライアント12のデータ送信部62が、クラウドサービス10に、そのクライアント12の属性データに関連付けられた、アクションゲームの、複数人数でのプレイ(マルチプレイ)の実行の開始要求を送信する。クライアント12の属性データは、具体的には、例えば、クライアント12の名称、クライアント12のディスプレイサイズ、クライアント12が備えるCPUの数、クライアント12が備えるCPUの種別、クライアント12が備えるハードディスクドライブの容量、クライアント12が備えるメモリのサイズ、クライアント12の最大通信速度、クライアント12タッチパッドを備えているか否か、クライアント12の種別(パーソナルコンピュータ、ゲームコンソール、テレビ受像器、携帯型ゲーム装置、携帯情報端末、のいずれであるのか)などを示している。ここでは、例えば、ユーザA、ユーザB、ユーザC、及び、ユーザDのクライアント12が、それぞれ、自分のクライアント12の属性データに関連付けられた、アクションゲームのマルチプレイ実行の開始要求を送信する。すると、クラウドサービス10のデータ受信部42が、これらの開始要求を受信する。
【0049】
本実施形態では、データ記憶部40に、予め、図6に例示する属性設定対応データ70が記憶されている。属性設定対応データ70では、上述の属性データが示す属性と、クライアント12に出力されるゲーム画面22の画面構成やクライアント12への動画像の配信方式などといった設定と、が対応付けている。図6に例示する属性設定対応データ70では、クライアント12のディスプレイサイズを示すディスプレイサイズデータとクライアント12が備えるCPUの数を示すCPU数データとの組合せに、配信対象となる少なくとも1つの動画像を示す配信対象動画像データ、合成画像生成部50でのフレーム画像20の合成を行うか否かを示す合成要否データ、及び、ゲーム画面22の画面構成を示す画面構成データが対応付けられている。
【0050】
配信対象動画像データには、例えば、ゲームの実行の開始要求の送信元のクライアント12を利用するユーザ(以下、送信元ユーザと呼ぶ。)のプレイ動画像を配信する(図6には「送信元ユーザ」と示されている。)のか、マルチプレイでのゲームをプレイするプレイヤ全員のプレイ動画像を配信する(図6には「全員」と示されている。)のか、が示されている。
【0051】
本実施形態において、画面構成とは、例えば、プレイ動画像のフレーム画像20が配置されるゲーム画面22内における位置(例えば、ゲーム画面22内においてフレーム画像20の左上端が配置されるX座標及びY座標など)、大きさ(例えば、フレーム画像20の縦横の画素数)、解像度などを指す。そして、本実施形態では、画面構成データに上述の画面構成が示されている。
【0052】
本実施形態では、例えば、属性設定対応データ70において、ディスプレイサイズデータの値「3.8型」には、値が「タイプA」である画面構成データが対応付けられている。タイプAの画面構成とは、例えば、図2に示すような、中央に送信元ユーザのプレイ動画像のフレーム画像20が配置される画面構成を指す。
【0053】
また、本実施形態では、例えば、属性設定対応データ70において、ディスプレイサイズデータの値「42型」と、CPU数データの値「1」との組合せ、及び、ディスプレイサイズデータの値「42型」と、CPU数データの値「2」との組合せには、値が「タイプB」である画面構成データが対応付けられている。タイプBの画面構成とは、例えば、図3に示すような、左上に送信元ユーザのプレイ動画像のフレーム画像20が配置され、右上、右下、左下にそれぞれ他のユーザのプレイ動画像のフレーム画像20がランダムに配置され、送信元ユーザのプレイ動画像のフレーム画像20の大きさが他のユーザのプレイ動画像のフレーム画像20よりも大きく設定された画面構成を指す。このように、画面構成データにおいて、送信元ユーザのフレーム画像20の画面構成と、他のユーザのフレーム画像20の画面構成とが異なるよう設定されていてもよい。
【0054】
そして、クラウドサービス10の配信管理部46は、図7に例示する、動画像の配信に関する設定を示す配信設定データ72を生成する。配信設定データ72には、例えば、クライアント12でのゲーム画面22の画面構成や、配信対象となるプレイ動画像、及び、プレイ動画像のフレーム画像20を合成画像生成部50で合成してからクライアント12に送信するか否か、などといった、動画像の配信方式などが示されている。
【0055】
配信設定データ72は、本実施形態では、例えば、動画像の配信先となるクライアント12を利用するユーザのユーザID、配信対象となる動画像にプレイ内容が表されているユーザのユーザIDである配信動画像対応ユーザID(配信動画像対応ユーザIDは1つであることもあれば複数であることもある。)、フレーム画像20の合成に関する方式を示す合成方式データ(本実施形態では、合成画像生成部50により合成されたフレーム画像20を配信する場合は、「合成後配信」の値が設定され、複数のプレイ動画像がクライアント12に配信され、クライアント12で複数のフレーム画像20に基づいてゲーム画面22が生成される場合は、「合成前配信」の値が設定される。)、ゲーム画面22の画面構成を示す画面構成データ、を含んでいる。
【0056】
本実施形態では、配信管理部46は、例えば、属性設定対応データ70において、各クライアント12から受信した属性データに含まれるディスプレイサイズ及びCPUの数の組合せに対応付けられている配信対象動画像データ、合成要否データ、及び、画面構成データを特定する。そして、配信管理部46は、これらのデータに基づいて、図7に例示する配信設定データ72を生成する。そして、配信管理部46は、生成した配信設定データ72をデータ記憶部40に出力する。
【0057】
本実施形態では、例えば、ユーザAのクライアント12は、ディスプレイサイズが3.8型である携帯型ゲーム端末であり、ユーザB、ユーザC、及び、ユーザDのクライアント12は、ディスプレイサイズが42型であるゲームコンソールであるとする。また、ユーザA、及び、ユーザBのクライアント12のCPUの数は1であり、ユーザC、及び、ユーザDのクライアント12のCPUの数は2であることとする。
【0058】
この場合、配信管理部46は、ユーザAのクライアント12から受信した属性データに、ディスプレイサイズが3.8型であることが示されていることに基づいて、配信対象動画像データの値「送信元ユーザ」、合成要否データの値「不要」、及び、画面構成データの値「タイプA」を特定する。そして、配信管理部46は、このことに基づいて、ユーザIDの値「001」、配信動画像対応ユーザIDの値「001」、及び、画面構成データの値「タイプA」が設定された配信設定データ72を生成する。
【0059】
そして、配信管理部46は、ユーザBのクライアント12から受信した属性データに、ディスプレイサイズが42型であること及びCPUの数が1であることが示されていることに基づいて、配信対象動画像データの値「全員」、合成要否データの値「要」、及び、画面構成データの値「タイプB」を特定する。そして、配信管理部46は、このことに基づいて、ユーザIDの値「002」、配信動画像対応ユーザIDの値「001,002,003,004」、合成方式データの値「合成後配信」及び、画面構成データの値「タイプB」が設定された配信設定データ72を生成する。
【0060】
そして、配信管理部46は、ユーザC、及び、ユーザDのクライアント12から受信した属性データに、ディスプレイサイズが42型であること及びCPUの数が2であることが示されていることに基づいて、配信対象動画像データの値「全員」、合成要否データの値「不要」、及び、図3のゲーム画面22に相当する画面構成データを特定する。そして、配信管理部46は、このことに基づいて、ユーザIDの値「003」、配信動画像対応ユーザIDの値「001,002,003,004」、合成方式データの値「合成前配信」及び、画面構成データの値「タイプB」が設定された配信設定データ72、及び、ユーザIDの値「004」、配信動画像対応ユーザIDの値「001,002,003,004」、合成方式データの値「合成前配信」及び、画面構成データの値「タイプB」が設定された配信設定データ72を生成する。
【0061】
そして、クラウドサービス10のデータ送信部44は、各配信設定データ72を、配信設定データ72に含まれるユーザIDの値に基づいて特定されるクライアント12に送信する。そして、各クライアント12のデータ受信部60は、配信設定データ72を受信する。そして、クライアント12の配信設定管理部64は、受信した配信設定データ72をクライアント12が備える記憶装置に出力する。
【0062】
そして、クラウドサービス10の配信管理部46は、エミュレータ34を起動し、起動したエミュレータ34にアクションゲームのイメージファイルをロードする。そして、配信管理部46は、このエミュレータ34と、ユーザA、ユーザB、ユーザC、及び、ユーザDのクライアント12を接続する。そして、ゲーム実行部48が、ロードされたアクションゲームの実行を開始する。このようにして、本実施形態では、クラウドサービス10が、ユーザA、ユーザB、ユーザC、及び、ユーザDがプレイヤとして参加するアクションゲームのマルチプレイの実行を開始する。
【0063】
本実施形態では、配信設定データ72において、合成方式データの値が設定されていないユーザ、又は、合成方式データの値が「合成前配信」であるユーザについては、クラウドサービス10は、ゲーム実行部48による、アクションゲームの開始以降、所定のゲーム更新時間(例えば、1/60秒)毎に、ゲームの状況を示すゲーム状況データを更新するゲーム状況データ更新処理、ゲーム実行部48による、更新後のゲーム状況データに基づいてゲームのプレイ内容を表すフレーム画像20を生成するフレーム画像生成処理、データ送信部44による、生成されたフレーム画像20をクライアント12に送信するフレーム画像送信処理、の順に、これら3つの処理を実行する。すなわち、クラウドサービス10は、ゲーム更新時間間隔で、上述の3つの処理を順次実行するという処理を繰り返し実行する。
【0064】
また、本実施形態では、配信設定データ72において、合成方式データの値が設定されていないユーザ、又は、「合成後配信」であるユーザについては、クラウドサービス10は、ゲーム実行部48による、アクションゲームの開始以降、所定のゲーム更新時間(例えば、1/60秒)毎に、ゲームの状況を示すゲーム状況データを更新するゲーム状況データ更新処理、ゲーム実行部48による、更新後のゲーム状況データに基づいてゲームのプレイ内容を表すフレーム画像20を生成するフレーム画像生成処理、合成画像生成部50によるフレーム画像生成処理により生成されたフレーム画像20に基づいて合成画像をフレーム画像20として生成する合成画像生成処理、データ送信部44による、合成画像生成処理により生成されたフレーム画像20をクライアント12に送信するフレーム画像送信処理、の順に、これら4つの処理を実行する。すなわち、クラウドサービス10は、ゲーム更新時間間隔で、上述の4つの処理を順次実行するという処理を繰り返し実行する。
【0065】
本実施形態では、ゲーム実行部48は、フレーム画像生成処理において、例えば、更新後のオブジェクト群の位置や向きを示すゲーム状況データに基づいてフレーム画像20を生成する処理を実行する。
【0066】
また、本実施形態では、合成画像生成部50は、上述の合成画像生成処理において、例えば、フレーム画像生成処理により生成されたフレーム画像20を取得して、取得したフレーム画像に基づいて、配信設定データ72に含まれる画面構成データが示す画面構成と同様に各フレーム画像20が配置されるよう合成画像を生成する。本実施形態では、ユーザBのクライアント12への送信対象となるフレーム画像20は、合成画像生成部50が合成したフレーム画像20となる。合成画像生成部50は、例えば、左上にユーザBのプレイ動画像のフレーム画像20が配置され、右上、左下、右下には、その他のユーザのプレイ動画像のフレーム画像20が配置された合成画像を、ユーザBのクライアント12への送信対象となるフレーム画像20として生成する。
【0067】
また、本実施形態では、データ送信部44は、フレーム画像送信処理において、例えば、生成されたフレーム画像20を生成時刻順に順序付けられているフレーム画像20の識別子であるフレームID、及び、そのフレーム画像20にプレイ内容が表されているユーザのユーザIDに関連付けてクライアント12に送信する。
【0068】
本実施形態では、クラウドサービス10のデータ送信部44は、配信設定データ72が示す設定に従って、プレイ動画像のフレーム画像20を各クライアント12に送信する。例えば、クラウドサービス10のデータ送信部44は、ユーザAのクライアント12には、ユーザAによるプレイ内容を表すプレイ動画像のフレーム画像20を送信する。また、例えば、クラウドサービス10のデータ送信部44は、ユーザBのクライアント12には、図3に示すゲーム画面22(図3に示すゲーム画面22に相当するフレーム画像20)を送信する。また、例えば、クラウドサービス10のデータ送信部44は、ユーザC、及び、ユーザDのクライアント12には、ユーザAによるプレイ内容を表すプレイ動画像のフレーム画像20、ユーザBによるプレイ内容を表すプレイ動画像のフレーム画像20、ユーザCによるプレイ内容を表すプレイ動画像のフレーム画像20、及び、ユーザDによるプレイ内容を表すプレイ動画像のフレーム画像20を送信する。このように、本実施形態では、クラウドサービス10のデータ送信部44は、ユーザA、及び、ユーザBのクライアント12に1つのプレイ動画像を配信し、ユーザC、及び、ユーザDのクライアント12に4つのプレイ動画像を配信する。
【0069】
そして、クライアント12のデータ受信部60は、クラウドサービス10から順次送信されるフレーム画像20を受信(取得)する。
【0070】
そして、クライアント12の画面生成部66は、クラウドサービス10から受信した配信設定データ72と、クラウドサービス10から受信したフレーム画像20と、に基づいて、ゲーム画面22を生成する。
【0071】
本実施形態では、例えば、ユーザAのクライアント12の画面生成部66は、図2に示すゲーム画面22を生成する。また、ユーザBのクライアント12の画面生成部66は、クラウドサービス10から送信される、図3に示すゲーム画面22に相当するフレーム画像20をゲーム画面22の中央に配置することによって、図3に示すゲーム画面22を生成する。また、ユーザC、及び、ユーザDのクライアント12の画面生成部66は、配信設定データ72に含まれる画面構成データに基づいて、各フレーム画像20をゲーム画面22に配置することによって、フレーム画像20と配置されている場所との関係が異なる、図3と同様のゲーム画面22を生成する。なお、本実施形態では、ユーザCのクライアント12の画面生成部66は、左上にユーザCのプレイ動画像のフレーム画像20が配置されたゲーム画面22を生成し、ユーザDのクライアント12の画面生成部66は、左上にユーザDのプレイ動画像のフレーム画像20が配置されたゲーム画面22を生成する。
【0072】
そして、各クライアント12の画面出力部68は、自装置の画面生成部66が生成したゲーム画面22をディスプレイに表示出力する。なお、本実施形態では、各クライアント12は、所定のフレームレートで、ゲーム画面22の生成及び表示出力を行う。また、本実施形態では、クライアント12は、関連付けられているフレームID順にフレーム画像20を表示出力する。このようにして、プレイ動画像がクラウドサービス10からクライアント12へストリーミング配信される。
【0073】
以上のように、本実施形態では、クラウドサービス10からユーザA及びユーザBのクライアント12に配信されるプレイ動画像の数は1であり、クラウドサービス10からユーザC及びユーザDのクライアント12に配信されるプレイ動画像の数は4であることとなる。
【0074】
このように、本実施形態では、クラウドサービス10が複数のクライアント12からの要求に応じてこれら複数のクライアント12それぞれを利用するユーザが参加するゲームを実行している場合に、ユーザが利用するクライアント12のディスプレイサイズやCPUの数に応じて、クライアント12に表示出力されるゲーム画面22の画面構成や、クライアント12に配信されるプレイ動画像の数が変わることとなる。また、本実施形態では、同じ画面構成のゲーム画面22が表示出力される場合であっても、ユーザが利用するクライアント12のCPUの数に応じて、フレーム画像20の合成がクラウドサービス10で行われるか、クライアント12で行われるか、が異なることとなる。
【0075】
本実施形態では、ゲーム実行部48は、ゲーム状況更新処理において、例えば、ゲームにおけるプレイヤオブジェクトや敵オブジェクトといったキャラクタオブジェクトなどの位置や向きを示すゲーム状況データを更新する処理を実行する。また、本実施形態では、ゲーム実行部48は、ゲーム状況更新処理において、更新後のオブジェクト間の衝突判定処理や、衝突判定結果に基づく、ゲームステージクリア判定処理、ミス判定処理なども併せて実行する。
【0076】
また、本実施形態では、ゲームの実行中に、クライアント12が、ユーザによるボタンの押下などのキー入力を受け付けた際に、入力に応じたキー情報(例えば、押下されたボタンの種別を示す信号)を、クラウドサービス10に送信する。そして、クラウドサービス10のゲーム実行部48は、このキー情報に応じたゲーム状況データの更新(例えば、押下されたボタンが示す方向へのプレイヤオブジェクトの移動等)を実行する。
【0077】
また、本実施形態では、ゲーム状況監視部52が、例えば、ゲーム実行部48が実行しているゲームのゲーム処理の進行状況を監視する。本実施形態では、予め、ゲームにおいて所定のイベントが発生する時点(具体的には、例えば、ボスキャラクタと遭遇した時点や、ボスキャラクタとの戦いの開始時点等)のフレーム画像20がデータ記憶部40に記憶されている。以下、これらのフレーム画像を判定画像と呼ぶこととする。本実施形態では、ゲーム状況監視部52は、例えば、ゲーム実行部48により生成されるフレーム画像を監視する。そして、ゲーム状況監視部52は、公知の画像処理技術を用いて、監視されたフレーム画像と、データ記憶部40に記憶されているいずれかの判定画像とが一致していることを確認した際に、ボスキャラクタに遭遇した、ボスキャラクタとの戦いが始まったなどといったイベントの発生を判定する。このようにして、本実施形態では、所定のイベントの発生時点を検出することができるようになっている。
【0078】
そして、本実施形態では、ゲーム状況監視部52は、イベントを検出した際に、配信管理部46にその旨を通知する。すると、クラウドサービス10の配信管理部46は、イベントに応じて、配信設定データ72を変更する。
【0079】
本実施形態では、例えば、ユーザCがプレイしているゲームにおいてイベントが発生した旨を、配信管理部46がゲーム状況監視部52から受け付けた際に、配信管理部46は、ユーザCのフレーム画像20のサイズが所定倍(例えば、1.1倍)に拡大されるよう、ユーザIDの値が、「002」、「003」、及び、「004」である配信設定データ72に含まれる画面構成データを変更する。
【0080】
そして、クラウドサービス10のデータ送信部44は、変更後の配信設定データ72をユーザB、ユーザC、及び、ユーザDのクライアント12に送信する。そして、ユーザB、ユーザC、及び、ユーザDのクライアント12の配信設定管理部64は、クライアント12が備える記憶装置に記憶されている配信設定データ72を変更する。本実施形態では、クラウドサービス10及びクライアント12は、配信設定データ72が変更されると、変更後の配信設定データに基づいて、処理を実行するようになる。本実施形態では、例えば、クラウドサービスの合成画像生成部50、及び、クライアント12の画面生成部66は、配信設定データ72が変更された後は、変更後の配信設定データに基づいてゲーム画面22を生成する。
【0081】
このようにして、本実施形態では、ユーザCがプレイしているゲームにおいてイベントが発生した際に、ユーザB、ユーザC、及び、ユーザDのクライアント12のディスプレイに表示出力されるゲーム画面22内における、ユーザCのプレイ動画像のフレーム画像20が占める領域が広くなる。このことによって、各ユーザは、ユーザCにゲームにおけるイベントが発生したことを知ることができる。
【0082】
また、本実施形態では、ネットワーク状況監視部54が、クライアント12とクラウドサービス10と、を接続するコンピュータネットワーク14の通信の状況(例えば、帯域幅)を監視する。そして、ネットワーク状況監視部54は、クライアント12とクラウドサービス10とを接続するコンピュータネットワーク14が所定の上限帯域幅以上となった場合や、所定の下限帯域幅以下となった場合などに、その旨を配信管理部46に通知する。そして、配信管理部46は、例えば、この通知に応じて、配信設定データ72を変更する。
【0083】
本実施形態では、例えば、クラウドサービス10とユーザCのクライアント12とを接続するコンピュータネットワーク14の帯域幅が所定の下限帯域幅未満となったことを、配信管理部46がネットワーク状況監視部54から受け付けた際に、配信管理部46は、ユーザIDの値が「003」である配信設定データ72に含まれる配信動画像対応ユーザIDの値を「003」に変更し、合成方式データの値を削除し、画面構成データの値を「タイプA」に変更する。
【0084】
そして、クラウドサービス10のデータ送信部44は、変更後の配信設定データ72をユーザCのクライアント12に送信する。そして、ユーザCのクライアント12は、クライアント12が備える記憶装置に記憶されている配信設定データ72を変更する。このようにして、本実施形態では、クラウドサービス10とユーザCのクライアント12とを接続するコンピュータネットワーク14の帯域幅が所定の下限帯域幅未満となった際に、ユーザCのクライアント12のディスプレイに表示出力されるゲーム画面22に含まれるフレーム画像20の数が4つから1つに変化するとともに、クラウドサービス10からユーザCのクライアント12に送信されるプレイ動画像の数が4つから1つに減少する。
【0085】
もちろん、クラウドサービス10は、クラウドサービス10とクライアント12とを接続するコンピュータネットワーク14の帯域幅が所定の上限帯域幅以上となった場合に、クライアント12のディスプレイに表示出力されるゲーム画面22に含まれるフレーム画像20の数を増加させたり、クラウドサービス10からクライアント12に送信されるプレイ動画像の数を増加させたりしてもよい。
【0086】
このようにして、本実施形態では、コンピュータネットワーク14の帯域幅が変更するなどといった、クラウドサービス10やクライアント12やコンピュータネットワーク14に関する状況が変化した際に、クライアント12に表示出力されるゲーム画面22の画面構成や、クラウドサービス10からクライアント12に送信されるプレイ動画像の数を変えることができる。なお、クラウドサービス10は、例えば、クラウドサービス10やクライアント12の負荷の変化に応じて、クライアント12に表示出力されるゲーム画面22の画面構成や、クラウドサービス10からクライアント12に送信されるプレイ動画像の数を変えてもよい。
【0087】
また、例えば、クラウドサービス10とユーザCのクライアント12とを接続するコンピュータネットワーク14の帯域幅が所定の下限帯域幅未満となったことを、配信管理部46がネットワーク状況監視部54から受け付けた際に、配信管理部46は、ユーザIDの値が「003」である配信設定データ72に含まれる合成方式データの値を「合成後配信」に変更するようにしてもよい。そして、配信設定データ72の変更後は、クラウドサービス10が、合成画像生成部50により生成される合成画像をフレーム画像20としてユーザCのクライアント12に送信するようにしてもよい。こうすれば、コンピュータネットワーク14の帯域幅が変更するなどといったクラウドサービス10やクライアント12やコンピュータネットワーク14に関する状況が変化した際に、画面構成を変えることなく、フレーム画像20の合成がクラウドサービス10で行われるか、クライアント12で行われるか、が切り替わることとなる。
【0088】
また、本実施形態では、ユーザがクライアント12のタッチパッド等を用いて、フレーム画像20のサイズの変更操作や、フレーム画像20の表示位置の変更操作を実行すると、クライアント12のデータ送信部62が、変更操作に応じた、配信設定データ72の変更要求をクラウドサービス10に送信する。すると、クラウドサービス10のデータ受信部42が変更要求を受け付ける。すると、配信管理部46が、受信した変更要求に応じて、配信設定データ72を変更する。そして、クラウドサービス10のデータ送信部44は、クライアント12に変更後の配信設定データ72を送信する。そして、クライアント12の配信設定管理部64は、この配信設定データ72を受信して、記憶部に記憶されている配信設定データを変更する。また、本実施形態では、例えば、ユーザがマウスなどを用いてフレーム画像20上にポインタを配置した(フォーカスした)際に、クラウドサービス10の配信管理部46が、そのフレーム画像20が大きく表示されるよう配信設定データ72を変更する。
【0089】
なお、本発明は上述の実施形態に限定されるものではない。
【0090】
例えば、上述のようにユーザA、ユーザB、ユーザC、及び、ユーザDの4人がマルチプレイでのゲームをプレイしている場面で、ユーザCがコントローラ等を用いて所定の操作を行った際に、ユーザCのクライアント12のデータ送信部62はクラウドサービス10に、ユーザCの画面の強調表示出力要求を送信し、クラウドサービス10のデータ受信部42がこの強調表示出力要求を受信してもよい。そして、クラウドサービス10の配信管理部46が、この強調表示出力要求に応じて、ユーザCのプレイ動画像のフレーム画像20が強調表示されるよう(例えば、ユーザCのフレーム画像20が拡大表示されるよう、ユーザCのフレーム画像20の周りに枠線等、フレーム画像20を目立たせるハイライト画像が配置されるよう、など)配信設定データ72を変更してもよい。この場合は、上述のように、ユーザB、ユーザC、及び、ユーザDのクライアント12が備える記憶装置に記憶されている配信設定データ72も変更される。そして、ユーザB、ユーザC、及び、ユーザDのクライアント12の画面出力部68は、ユーザCのプレイ動画像のフレーム画像20が強調表示されたゲーム画面22をディスプレイに表示出力する。
【0091】
こうすれば、例えば、ユーザA、ユーザB、ユーザC、及び、ユーザDの4人がマルチプレイでのゲームをプレイしていて、ユーザCが他のユーザに自分のプレイに注目してもらいたくなった場面などに、ユーザCが他のユーザに自分のプレイに注目してもらうよう促すことができる。
【0092】
また、例えば、属性設定対応データ70に含まれる、所定の属性に対応付けられている配信対象動画像データが、配信対象となる動画像の数、あるいは、上限となる配信対象の動画像の数を示していてもよい。具体的には、例えば、配信対象動画像データの値として「2」や、「上限2」などが設定されていてもよい。また、属性設定対応データ70に含まれる画面構成データが、配信対象動画像データに設定されている数のフレーム画像20が配置されたゲーム画面22の画面構成を示していてもよい。
【0093】
そして、例えば、クラウドサービス10が受信した属性データが上述の所定の属性を示している場合に、クラウドサービス10の配信管理部46が、ゲームをプレイしているユーザのうちから、所与の規則に従って選択された、配信対象動画像データが示す配信対象の動画像の数(あるいは、上限数)のユーザID(例えば、送信元ユーザ、及び、他のユーザのうちからランダムに選択されたユーザのユーザID)を示す配信動画像対応ユーザID、及び、上述の画面構成を示す画面構成データが含まれる配信設定データ72を生成してもよい。
【0094】
そして、例えば、4人によるマルチプレイでゲームがプレイされている際に、クライアント12の画面出力部68が、4人のうちから選択された2人のプレイ動画像のフレーム画像20が含まれる(すなわち、2つのフレーム画像20が含まれる)ゲーム画面22をディスプレイに表示出力するようにしてもよい。
【0095】
また、クラウドサービス10の配信管理部46は、例えば、クラウドサービス10を構成するサーバの負荷、予め定められたネットワーク帯域幅、現在のコンピュータネットワーク14の帯域幅、動画像の送信の遅延時間、ジッタ値、コンピュータネットワーク14でのパケットロス率、等に応じた配信設定データ72を生成するようにしてもよい。
【0096】
また、例えば、クラウドサービス10が複数のクライアント12に対して動画像を配信する場合(1つの動画像を配信する場合も複数の動画像を配信する場合も含む)に、クラウドサービス10は、クラウドサービス10を構成するサーバの負荷(CPU)やコンピュータネットワーク14の帯域の負荷と、各ストリーミングの優先度(例えば、クライアント12を利用するユーザが会員であるか非会員であるかなどに基づく優先度)に基づいて、ストリーミングの質を調整する(例えば、クラウドサービス10が、非会員であるユーザのクライアント12に対するストリーミング配信のビットレートを下げたり動画像の画質を下げたりする)ようにしてもよい。
【0097】
また、例えば、クラウドサービス10は、クライアント12にハードウェアデコーダが含まれているか否か、クライアント12に動画像に対応するコーデックがインストールされているか否か、クラウドサービス10における動画像のエンコードの負荷、等の状況に応じて、配信される動画像のビットレートを変更したり、符号化方式を変更したりするようにしてもよい。
【0098】
また、例えば、配信設定データ72は、配信動画像対応ユーザID、合成方式データ、画面構成データ、以外のデータを含んでいてもよいし、配信動画像対応ユーザID、合成方式データ、画面構成データの少なくとも1つを含んでいなくてもよい。配信設定データ72は、例えば、クライアント12が確保すべきバッファサイズ、許容遅延時間、フレームレート、ビットレート、配信プロトコルを示すデータ(例えば、TCPによる配信であるかUDPによる配信であるかを示すデータ)、通信経路などを示すデータを含んでいてもよい。そして、クラウドサービス10のデータ送信部44は、配信設定データ72が示すビットレートや配信プロトコルや通信経路などに従ったプレイ動画像の配信を行うようにしてもよい。また、クライアント12は、配信設定データ72が示すバッファサイズを確保するようにしてもよい。また、クライアント12の画面生成部66は、配信設定データ72が示すフレームレートで画面の生成を行うようにしてもよい。また、クライアント12の画面生成部66は、配信設定データ72が示す解像度でフレーム画像20をゲーム画面22に配置してもよい。
【0099】
また、配信管理部46は、CPUの数やディスプレイサイズ以外の要素(例えば、コンピュータネットワーク14の帯域幅、クラウドサービス10の負荷、クライアント12の名称、CPUの種別、ハードディスク容量、メモリサイズ、最大通信速度、タッチパッドの有無、種別(パーソナルコンピュータ、ゲームコンソール、テレビ受像器、携帯型ゲーム装置、携帯情報端末、のいずれであるのか)等)に基づいて、配信設定データ72が示す値を決定するようにしてもよい。
【0100】
また、例えば、配信管理部46は、フレーム画像20の大きさに応じた解像度の値が設定された配信設定データ72を生成するようにしてもよい。すなわち、ゲーム画面22におけるフレーム画像20の大きさと解像度との間に関連があっても構わない。
【0101】
また、クライアント12は、ゲーム画面22を、ウェブブラウザを介してディスプレイに表示出力してもよいし、クライアントプログラムによって生成される画面としてディスプレイに表示出力するようにしてもよい。
【0102】
また、クラウドサービス10のデータ記憶部40に、配信設定データ72が示す値を算出する数式を示すデータが記憶されていてもよい。そして、クラウドサービス10の配信管理部46が、数式に従って算出される設定値が設定された配信設定データ72を生成するようにしてもよい。
【0103】
また、例えば、クラウドサービス10のデータ送信部44は、以上に挙げた規則とは異なる所与の規則に従って決定される数の動画像を一画面内に配置される動画像としてクライアント12に送信してもよい。そして、クライアント12の画面生成部66は、その決定された数の動画像のフレーム画像20が含まれるゲーム画面22を生成してもよい。また、例えば、クライアント12の画面生成部66は、以上に挙げた規則とは異なる所与の規則に従った設定で複数のフレーム画像20が配置されたゲーム画面22を生成してもよい。
【0104】
また、例えば、上述の実施形態を、他のユーザにより同一のゲームがマルチプレイでプレイされている様子を観戦する場面に応用してもよい。この場合は、ゲーム画面22には、他のユーザのプレイ動画像のフレーム画像20が少なくとも1つ含まれることとなる。例えば、複数のプレイヤによりプレイされているレーシングゲームなどを観戦している場面において、上述の処理を応用して、例えば、ラップタイムが更新された、ファイナルラップに突入した、あるいは、ゴールしたというイベントが発生した際に、そのイベントを発生させたユーザのプレイ動画像のフレーム画像20が大きくなるよう、クラウドサービス10の配信管理部46が、配信設定データ72を変更するようにしてもよい。
【0105】
また、例えば、他のユーザによりプレイされている様々なゲームのプレイ内容を表す複数のプレイ動画像を観戦する場面に応用してもよい。このとき、クラウドサービス10の配信管理部46が、エミュレータ34に対して接続されているクライアント12の数に基づいて算出される、現在プレイ動画像を閲覧しているユーザの数、あるいは、エミュレータ34に対するクライアント12の接続履歴に基づいて算出される、今までにプレイ動画像を閲覧したユーザの数、等に基づいて、配信設定データ72を生成する(例えば、閲覧しているユーザの数が多いプレイ動画像であるほど、フレーム画像20のサイズが大きくなるよう設定された配信設定データ72を生成する)ようにしてもよい。
【0106】
また、例えば、ユーザ自身がゲームを楽しみつつ、他のユーザによりプレイされているゲームの観戦も楽しむような場面に応用してもよい。この場合は、ゲーム画面22には、自らによるプレイの内容を表すプレイ動画像のフレーム画像20と、他のユーザによるプレイの内容を表すプレイ動画像のフレーム画像20と、が含まれることとなる。このとき、配信管理部46は、自らによるプレイの内容を表すプレイ動画像のフレーム画像20のサイズが、他のユーザによるプレイの内容を表すプレイ動画像のフレーム画像20のサイズよりも大きくなるよう、あるいは、自らによるプレイの内容を表すプレイ動画像のフレーム画像20の画質が、他のユーザによるプレイの内容を表すプレイ動画像のフレーム画像20の画質よりも高くなるよう、配信設定データ72を設定してもよい。また、配信管理部46は、自らがプレイしているゲームと同種のゲーム、若しくは、同一のゲームのプレイ動画像のフレーム画像20のサイズが、その他のフレーム画像20のサイズよりも大きくなるよう、又は、自らがプレイしているゲームと同種のゲーム、若しくは、同一のゲームのプレイ動画像のフレーム画像20の画質が、その他のフレーム画像20の画質よりも高くなるよう、配信設定データ72を設定してもよい。このように、画面生成部66が、各フレーム画像20が、そのフレーム画像20にプレイ内容が表されているゲームと、ゲーム画面22が提示されるユーザによりプレイされているゲームと、の関係に応じた設定で配置されたゲーム画面22を生成するようにしてもよい。画面生成部66は、例えば、フレーム画像20にプレイ内容が表されているゲームと、ゲーム画面22が提示されるユーザによりプレイされているゲームとの関係が強いフレーム画像20であるほど画質が高くなるよう各フレーム画像20が配置されたゲーム画面22を生成するようにしてもよい。
【0107】
また、上述の実施形態を、プレイ動画像の配信だけではなく、既に実行されたゲームのプレイ内容を表す動画像であるリプレイ動画像の配信の場面にも応用しても構わない。例えば、クラウドサービス10のデータ記憶部40には、既に実行されたゲームのプレイ内容を表す動画像であるリプレイ動画像が記憶されていてもよい。そして、クラウドサービス10のデータ送信部44は、リプレイ動画像のフレーム画像20をクライアント12に送信するようにしてもよい。すなわち、ゲーム画面22には、リプレイ動画像のフレーム画像20が含まれていても構わない。なお、リプレイ動画像は、SVC(Scalable Video Coding)によりエンコードされた動画像であっても構わない。そして、クラウドサービス10のデータ送信部44は、配信設定データ72が示す配信方式に従った画質や解像度でクライアント12にリプレイ動画像を配信するようにしてもよい。
【0108】
また、例えば、配信管理部46が、ゲーム画面22に含まれる各フレーム画像20の優先度や優先順位を示す配信設定データ72を生成してもよい。そして、クライアント12の画面生成部66が、配信設定データ72が示す優先度や優先順位に基づいて各フレーム画像20をゲーム画面22に配置するようにしてもよい。配信管理部46は、例えば、ユーザ自身がプレイしているゲームの状況を表すプレイ動画像のフレーム画像20が、ユーザが観戦しているゲームの状況を表すプレイ動画像のフレーム画像20よりも高い優先度が設定された配信設定データ72を生成するようにしてもよい。そして、クライアント12の画面生成部66は、この配信設定データ72に基づいて、ゲーム画面22内における、ユーザ自身がプレイしているゲームの状況を表すプレイ動画像のフレーム画像20が、ユーザが観戦しているゲームの状況を表すプレイ動画像のフレーム画像20よりも大きくなるようゲーム画面22を生成するようにしてもよい。
【0109】
また、例えば、図8に示すように、関係するユーザとして登録されているユーザ(以下、フレンドと呼ぶ。)の一覧表示画面であるフレンド表示画面74の表示において、上述の実施形態を応用してもよい。図8に示すフレンド表示画面74では、クラウドサービス10でのゲームを実行しているフレンドについて、フレンドのアバタ画像、フレンドであるユーザのユーザID、そのユーザがプレイしているゲームのゲームタイトル、そのユーザがプレイしているゲームのステージの名称、そのユーザによるゲームの総プレイ時間、そのユーザによる現在のゲームのプレイ動画像のフレーム画像20が含まれている。このフレンド表示画面74は、スクロール可能となっている。フレンド表示画面74がユーザによりスクロールされた際に、クライアント12のデータ送信部62が、フレンド表示画面74に表示されているプレイ動画像だけがクライアント12に表示されるよう、配信設定データ72の変更要求をクラウドサービス10に送信するようにしてもよい。そして、クラウドサービス10が、この変更要求に応じて、フレンド表示画面74に表示されるべきフレーム画像20がクライアント12に送信されるよう配信設定データ72を変更するようにしてもよい。また、ユーザがクライアント12でプレイ動画像のフレーム画像20をクリックことにより、そのプレイ動画像の閲覧を行えたり、プレイ動画像によりプレイされているゲームに参加したりすることができてもよい。
【0110】
また、例えば、クラウドサービス10が、プレイ動画像のフレーム画像20の代わりに、クライアント12から受け付けるキー情報をその受け付けたタイミングを示すデータと関連付けてクライアント12に送信するようにしてもよい。そして、クライアント12の画面生成部66が、キー情報に基づいてゲーム画面22を生成するようにしてもよい。
【0111】
また、例えば、データ記憶部40には、予め、判定画像の代わりに、ゲームにおけるイベントの発生時点における、エミュレータ34が管理しているエミュレートされたメモリイメージの内容やレジスタの値が記憶されていてもよい。そして、ゲーム状況監視部52が、エミュレータ34が管理しているエミュレートされたメモリイメージの内容やレジスタの値を監視して、その監視結果とデータ記憶部40に記憶されている上述のデータとの比較結果に基づいて、ゲームにおけるイベントの発生を検出するようにしてもよい。
【0112】
また、例えば、ゲーム状況データは、例えば、ゲームにおけるパラメータやステータスを示すデータでもよい。また、例えば、クラウドサービス10で実現されている機能が単一のサーバにより実現されていてもよい。また、ゲームプログラムはエミュレータ34上で実行される必要はなく、例えば、クラウドサービス10やクライアント12のシステムソフトウェア(オペレーティングシステム等)上で実行されてもよい。また、クラウドサービス10とクライアント12の役割分担は上述の例には限定されない。
【0113】
また、上記の具体的な数値や文字列や図面中の具体的な数値や文字列は例示であり、これらの数値や文字列には限定されない。
【符号の説明】
【0114】
10 クラウドサービス、12 クライアント、14 コンピュータネットワーク、20 フレーム画像、22 ゲーム画面、30 管理プロセス、32 サービス提供プロセス、34 エミュレータ、40 データ記憶部、42 データ受信部、44 データ送信部、46 配信管理部、48 ゲーム実行部、50 合成画像生成部、52 ゲーム状況監視部、54 ネットワーク状況監視部、60 データ受信部、62 データ送信部、64 配信設定管理部、66 画面生成部、68 画面出力部、70 属性設定対応データ、72 配信設定データ、74 フレンド表示画面。

【特許請求の範囲】
【請求項1】
それぞれゲームのプレイ内容を表す動画像である複数の動画像のフレーム画像が含まれる画面を順次生成する画面生成手段と、
前記画面生成手段により生成される画面を順次出力する画面出力手段と、を含み、
前記画面生成手段は、所与の規則に従った設定で前記複数のフレーム画像が配置された画面を生成する、
ことを特徴とする画像処理システム。
【請求項2】
前記画面生成手段は、所定の条件を満足するか否かに応じて、前記複数の動画像のフレーム画像が含まれる画面を生成するか、その代わりに前記複数の動画像のフレーム画像のうちの一部が含まれる画面を生成するか、を変える、
ことを特徴とする請求項1に記載の画像処理システム。
【請求項3】
前記画面生成手段は、所定の条件を満足するか否かに応じて、前記複数の動画像のフレーム画像が含まれる画面を生成するか、その代わりに前記画面が提示されるプレイヤとは異なるプレイヤによるプレイ内容を表す動画像のフレーム画像が含まれない画面を生成するか、を変える、
ことを特徴とする請求項2に記載の画像処理システム。
【請求項4】
前記各動画像は、複数のプレイヤが参加するゲームについての、当該各プレイヤによるプレイ内容を表す動画像であり、
前記画面生成手段は、所定の条件を満足するか否かに応じて、前記ゲームに参加する全プレイヤについての、プレイ内容を表す動画像のフレーム画像が含まれる画面を生成するか、その代わりに前記画面が提示されるプレイヤとは異なるプレイヤによるプレイ内容を表す動画像のフレーム画像が含まれない画面を生成するか、を変える、
ことを特徴とする請求項1に記載の画像処理システム。
【請求項5】
前記所定の条件は、前記画面の出力先の装置が備えるディスプレイの大きさに関する条件、又は、前記画像処理システムと前記画面の出力先である装置とを接続するネットワークの帯域幅に関する条件である、
ことを特徴とする請求項2から4のいずれか一項3に記載の画像処理システム。
【請求項6】
前記画面生成手段は、前記画面が提示されるプレイヤによるプレイ内容を表す動画像のフレーム画像が他のフレーム画像よりも大きく配置されるよう各フレーム画像が配置された画面、又は、前記画面が提示されるプレイヤによるプレイ内容を表す動画像のフレーム画像が他のフレーム画像よりも画質が高くなるよう各フレーム画像が配置された画面、を生成する、
ことを特徴とする請求項1から5のいずれか一項に記載の画像処理システム。
【請求項7】
前記画面生成手段は、ゲームにおいて所定のイベントが発生した際に、当該ゲームのプレイ内容を表す動画像のフレーム画像の大きさがそれまでに生成された画面に配置された当該動画像のフレーム画像の大きさよりも大きくなる、あるいは、当該ゲームのプレイ内容を表す動画像のフレーム画像の画質がそれまでに生成された画面に配置された当該動画像のフレーム画像の画質よりも高くなるよう、生成する画面の設定を変更する、
ことを特徴とする請求項1から6のいずれか一項に記載の画像処理システム。
【請求項8】
前記画面生成手段は、前記複数の動画像それぞれのフレーム画像が、動画像の閲覧者数に応じた大きさ、又は、画質で配置された画面を生成する、
ことを特徴とする請求項1から7のいずれか一項に記載の画像処理システム。
【請求項9】
前記設定は、画面内におけるフレーム画像の位置、画面内におけるフレーム画像の大きさ、及び、画面に配置される際のフレーム画像の画質、のうちの少なくとも1つについての設定である、
ことを特徴とする請求項1から8のいずれか一項に記載の画像処理システム。
【請求項10】
それぞれゲームのプレイ内容を表す動画像である複数の動画像のフレーム画像が含まれる画面を順次生成する画面生成ステップと、
前記画面生成手段により生成される画面を順次出力する画面出力ステップと、を含み、
前記画面生成ステップでは、所与の規則に従った設定で前記複数のフレーム画像が配置された画面を生成する、
ことを特徴とする画像処理方法。
【請求項11】
それぞれゲームのプレイ内容を表す動画像である複数の動画像のフレーム画像が含まれる画面を順次生成する画面生成手段、
前記画面生成手段により生成される画面を順次出力する画面出力手段、としてコンピュータを機能させ、
前記画面生成手段は、所与の規則に従った設定で前記複数のフレーム画像が配置された画面を生成する、
ことを特徴とするプログラム。
【請求項12】
請求項11に記載のプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2012−85876(P2012−85876A)
【公開日】平成24年5月10日(2012.5.10)
【国際特許分類】
【出願番号】特願2010−235924(P2010−235924)
【出願日】平成22年10月20日(2010.10.20)
【出願人】(310021766)株式会社ソニー・コンピュータエンタテインメント (417)
【Fターム(参考)】