説明

プログラム、情報記憶媒体、画像処理装置、画像処理方法及びデータ構造

【課題】リプレイデータと、そのリプレイデータに対応する期間に撮像手段により生成される動画像とを連携することができるプログラム、情報記憶媒体、画像処理装置、画像処理方法及びデータ構造を提供する。
【解決手段】リプレイデータ取得部68が、プログラムの実行状況を再現するためのリプレイデータを取得する。撮像動画像取得部70が、リプレイデータによりプログラムの実行状況が再現される再現期間の少なくとも一部を含む撮像期間に撮像手段により生成される撮像動画像を取得する。データ保持部72が、リプレイデータと、撮像動画像と、を対応付けて保持する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、情報記憶媒体、画像処理装置、画像処理方法及びデータ構造に関する。
【背景技術】
【0002】
ゲームのプレイ中に、ユーザがコントローラを操作したタイミングや操作されたボタンなどを示す操作データ(操作ログ)あるいは、各フレームにおけるキャラクタなどのオブジェクトの位置を示す位置データなどの、ゲームの実行状況を再現するためのリプレイデータを生成するゲーム装置が存在する。特許文献1には、ゲームのリプレイを行うことができるゲーム装置が開示されている。そして、このようなゲーム装置には、リプレイデータに基づいてゲームのリプレイ動画像を生成して、ディスプレイなどに表示するものがある。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】米国特許第6724385号明細書
【発明の概要】
【発明が解決しようとする課題】
【0004】
ゲームのリプレイ動画像がディスプレイなどに表示される際に、ユーザがゲームをしている様子を表す動画像が併せて表示されると、リプレイ動画像の鑑賞者は、ゲームのリプレイとともに、ユーザがゲームを楽しんでいたり、熱中していたりする様子も併せて楽しむことができる。
【0005】
ゲーム装置に限らず画像処理装置一般においても、リプレイデータと、そのリプレイデータに対応する期間にカメラなどの撮像手段により生成される動画像とが連携されると、生成される動画像のおもしろさが向上することが期待される。
【0006】
本発明は上記課題に鑑みてなされたものであって、リプレイデータと、そのリプレイデータに対応する期間に撮像手段により生成される動画像とを連携することができるプログラム、情報記憶媒体、画像処理装置、画像処理方法及びデータ構造を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明に係るプログラムは、プログラムの実行状況を再現するためのリプレイデータを取得するリプレイデータ取得手段、前記リプレイデータにより前記プログラムの実行状況が再現される再現期間の少なくとも一部を含む撮像期間に撮像手段により生成される撮像動画像を取得する撮像動画像取得手段、前記リプレイデータと、前記撮像動画像と、を対応付けて保持手段に保持させる手段、としてコンピュータを機能させることを特徴とすることを特徴とする。
【0008】
また、本発明に係る画像処理装置は、プログラムの実行状況を再現するためのリプレイデータを取得するリプレイデータ取得手段と、前記リプレイデータにより前記プログラムの実行状況が再現される再現期間の少なくとも一部を含む撮像期間に撮像手段により生成される撮像動画像を取得する撮像動画像取得手段と、前記リプレイデータと、前記撮像動画像と、を対応付けて保持する保持手段と、を含むことを特徴とする。
【0009】
また、本発明に係る画像処理方法は、プログラムの実行状況を再現するためのリプレイデータを取得するリプレイデータ取得ステップと、前記リプレイデータにより前記プログラムの実行状況が再現される再現期間の少なくとも一部を含む撮像期間に撮像手段により生成される撮像動画像を取得する撮像動画像取得ステップと、前記リプレイデータと、前記撮像動画像と、を対応付けて保持手段に保持させるステップと、を含むことを特徴とする。
【0010】
また、本発明に係るデータ構造は、プログラムの実行状況を再現するためのリプレイデータと、前記リプレイデータに対応する期間の少なくとも一部に撮像手段により生成される撮像動画像と、を有し、前記リプレイデータと前記撮像動画像とが対応付けられている、ことを特徴とする。
【0011】
本発明によると、リプレイデータと撮像動画像とが対応付けて保持されるので、リプレイデータと、そのリプレイデータに対応する期間に撮像手段により生成される撮像動画像とを連携することができる。
【0012】
本発明の一態様に係るプログラムでは、前記リプレイデータと、前記撮像動画像と、に基づいて、再生用動画像を生成する再生用動画像生成手段、として前記コンピュータをさらに機能させることを特徴とする。こうすれば、リプレイデータと撮像動画像とに基づいて再生用動画像が生成されるので、リプレイデータと、そのリプレイデータに対応する期間に撮像手段により生成される撮像動画像とを連携した動画像を生成することができる。
【0013】
この態様に係るプログラムでは、前記再生用動画像生成手段が、前記リプレイデータと前記撮像動画像とに基づく動画像を再生することにより前記再生用動画像を生成してもよい。こうすれば、再生される動画像を再生用動画像の生成に活用することができる。
【0014】
また、本発明の一態様に係るプログラムでは、前記再生用動画像生成手段が、前記リプレイデータに基づいて生成されるリプレイ動画像と、前記撮像動画像と、に基づいて、前記再生用動画像を生成することを特徴とする。こうすれば、再生用動画像の生成に、リプレイデータに基づく動画像を活用することができる。
【0015】
この態様に係るプログラムでは、前記再生用動画像生成手段が、前記リプレイ動画像と前記撮像動画像とを所与の規則に従って合成して再生用動画像を生成してもよい。こうすれば、リプレイ動画像と撮像動画像とが所与の規則に従って合成された再生用動画像を生成することができる。
【0016】
また、この態様に係るプログラムでは、前記再生用動画像生成手段が、前記リプレイ動画像と前記撮像動画像とを、前記リプレイ動画像に基づいて決定される規則に従って合成して再生用動画像を生成してもよい。こうすれば、リプレイ動画像に基づいて決定される規則に従ってリプレイ動画像と撮像動画像とが合成された再生用動画像を生成することができる。
【0017】
また、この態様に係るプログラムでは、ユーザによる操作に応じて、前記リプレイ動画像と前記撮像動画像とを合成する規則を変更する規則変更手段、として前記コンピュータをさらに機能させてもよい。こうすれば、リプレイ動画像と撮像動画像との合成規則をユーザが制御することができる。
【0018】
また、本発明の一態様に係るプログラムでは、動画像を出力する動画像出力サーバに、ユーザからの要求に応じて、前記再生用動画像を当該ユーザの識別子と関連付けて出力する再生用動画像出力手段、として前記コンピュータをさらに機能させることを特徴とする。こうすれば、動画像出力サーバにアクセス可能なユーザが、動画像出力サーバに出力された再生用動画像を閲覧することができる。
【0019】
また、本発明の一態様に係るプログラムでは、前記リプレイデータが、ユーザによる操作の内容を少なくとも示すことを特徴とする。こうすれば、ユーザによる操作の内容に基づく再生用動画像を生成することができる。
【0020】
また、本発明の一態様に係るプログラムでは、前記撮像期間が、前記再現期間よりも長い期間であることを特徴とする。こうすれば、再現期間に含まれない撮像期間に撮像された撮像動画像に基づく再生用動画像を生成することができる。
【0021】
また、上記の各プログラムはコンピュータ読み取り可能な情報記憶媒体に記憶することもできる。
【図面の簡単な説明】
【0022】
【図1】本実施形態に係る画像処理装置として用いられるエンタテインメントシステムのハードウェア構成の一例を示すハードウェア構成図である。
【図2】MPUの詳細の一例を示す詳細構成図である。
【図3A】コントローラの一例を示す斜視図である。
【図3B】コントローラの一例を示す上側面図である。
【図4】本実施形態に係るエンタテインメントシステムの機能の一例を示す機能ブロック図である。
【図5】ゲーム画面の一例を示す図である。
【図6】仮想3次元空間の一例を示す図である。
【図7】本実施形態に係るエンタテインメントシステムで行われる処理のフローの一例を示す図である。
【図8】再生用フレーム画像の一例を示す図である。
【発明を実施するための形態】
【0023】
以下、本発明の一実施形態について図面に基づき詳細に説明する。
【0024】
図1は、本実施形態に係るエンタテインメントシステム(画像処理装置)10のハードウェア構成を示す図である。図1に示すように、エンタテインメントシステム10は、MPU(Micro Processing Unit)11と、メインメモリ20と、画像処理部24と、モニタ26と、入出力処理部28と、音声処理部30と、スピーカ32と、光ディスク読み取り部34と、光ディスク36と、ハードディスクドライブ38と、インタフェース(I/F)40,44と、コントローラ42と、カメラユニット46と、ネットワークインタフェース48と、を含んで構成されるコンピュータシステムである。
【0025】
図2は、MPU11の構成を示す図である。図2に示すように、MPU11は、メインプロセッサ12と、サブプロセッサ14a,14b,14c,14d,14e,14f,14g,14hと、バス16と、メモリコントローラ18と、インタフェース(I/F)22と、を含んで構成される。
【0026】
メインプロセッサ12は、図示しないROM(Read Only Memory)に記憶されるオペレーティングシステム、例えばDVD(Digital Versatile Disk)−ROM等の光ディスク36から読み出されるプログラム及びデータや、通信ネットワークを介して供給されるプログラム及びデータ等に基づいて、各種情報処理を行ったり、サブプロセッサ14a乃至14hに対する制御を行ったりする。
【0027】
サブプロセッサ14a乃至14hは、メインプロセッサ12からの指示に従って、各種情報処理を行ったり、エンタテインメントシステム10の各部を、例えばDVD−ROM等の光ディスク36から読み出されるプログラム及びデータや、通信ネットワークを介して供給されるプログラム及びデータ等に基づいて制御したりする。
【0028】
バス16は、アドレス及びデータをエンタテインメントシステム10の各部でやり取りするためのものである。メインプロセッサ12、サブプロセッサ14a乃至14h、メモリコントローラ18、インタフェース22は、バス16を介して相互にデータ授受可能に接続される。
【0029】
メモリコントローラ18は、メインプロセッサ12及びサブプロセッサ14a乃至14hからの指示に従って、メインメモリ20へのアクセスを行う。メインメモリ20には、光ディスク36やハードディスクドライブ38から読み出されたプログラム及びデータや、通信ネットワークを介して供給されたプログラム及びデータが必要に応じて書き込まれる。メインメモリ20はメインプロセッサ12やサブプロセッサ14a乃至14hの作業用としても用いられる。
【0030】
インタフェース22には画像処理部24及び入出力処理部28が接続される。メインプロセッサ12及びサブプロセッサ14a乃至14hと、画像処理部24又は入出力処理部28と、の間のデータ授受はインタフェース22を介して行われる。
【0031】
画像処理部24は、GPU(Graphical Processing Unit)とフレームバッファとを含んで構成される。GPUは、メインプロセッサ12やサブプロセッサ14a乃至14hから供給される画像データに基づいてフレームバッファに各種画面を描画する。フレームバッファに形成された画面は、所定のタイミングでビデオ信号に変換されてモニタ26に出力される。なお、モニタ26には例えば家庭用テレビ受像機が用いられる。
【0032】
入出力処理部28には、音声処理部30、光ディスク読み取り部34、ハードディスクドライブ38、インタフェース40,44が接続される。入出力処理部28は、メインプロセッサ12及びサブプロセッサ14a乃至14hと、音声処理部30、光ディスク読み取り部34、ハードディスクドライブ38、インタフェース40,44、ネットワークインタフェース48と、の間のデータ授受を制御する。
【0033】
音声処理部30は、SPU(Sound Processing Unit)とサウンドバッファとを含んで構成される。サウンドバッファには、光ディスク36やハードディスクドライブ38から読み出されたゲーム音楽、ゲーム効果音やメッセージなどの各種音声データが記憶される。SPUは、これらの各種音声データを再生してスピーカ32から出力させる。なお、スピーカ32には例えば家庭用テレビ受像機の内蔵スピーカが用いられる。
【0034】
光ディスク読み取り部34は、メインプロセッサ12及びサブプロセッサ14a乃至14hからの指示に従って、光ディスク36に記憶されたプログラムやデータを読み取る。なお、エンタテインメントシステム10は、光ディスク36以外の他のコンピュータ読み取り可能な情報記憶媒体に記憶されたプログラムやデータを読み取り可能に構成してもよい。
【0035】
光ディスク36は例えばDVD−ROM等の一般的な光ディスク(コンピュータ読み取り可能な情報記憶媒体)である。また、ハードディスクドライブ38は一般的なハードディスク装置である。光ディスク36やハードディスクドライブ38には各種プログラムやデータがコンピュータ読み取り可能に記憶される。
【0036】
インタフェース(I/F)40,44は、コントローラ42やカメラユニット46等の各種周辺機器を接続するためのインタフェースである。このようなインタフェースとしては、例えばUSB(Universal Serial Bus)インタフェースが用いられる。
【0037】
コントローラ42は汎用操作入力手段であり、ユーザが各種操作(例えばゲーム操作)を入力するために用いられる。入出力処理部28は、所定時間(例えば1/60秒)ごとにコントローラ42の各部の状態をスキャンし、その結果を表す操作状態をメインプロセッサ12やサブプロセッサ14a乃至14hに供給する。メインプロセッサ12やサブプロセッサ14a乃至14hは、ユーザによって行われた操作の内容をその操作状態に基づいて判断する。なお、エンタテインメントシステム10は複数のコントローラ42を接続可能に構成されており、各コントローラ42から入力される操作状態に基づいて、メインプロセッサ12やサブプロセッサ14a乃至14hが各種処理を実行するようになっている。
【0038】
カメラユニット46は、例えば公知のデジタルカメラを含んで構成され、白黒、グレイスケール又はカラーの撮影画像を所定時間(例えば1/60秒)ごとに入力する。本実施の形態におけるカメラユニット46は、撮影画像をJPEG(Joint Photographic Experts Group)形式の画像データとして入力するようになっている。また、カメラユニット46は、例えばレンズをユーザに向けた状態でモニタ26の上に設置され、ケーブルを介してインタフェース44に接続される。なお、本実施形態では、カメラユニット46は、マイクを備えており、外部の音声を音声データとして入力するようになっている。ネットワークインタフェース48は入出力処理部28とネットワークとに接続されており、エンタテインメントシステム10がネットワークを介して他のエンタテインメントシステム10とデータ通信するのを中継するようになっている。
【0039】
図3Aは、コントローラ42の一例を示す斜視図である。図3Bは、コントローラ42の一例を示す上側面図である。図3Aに示すように、コントローラ42は、コントローラケーブル62によってエンタテインメントシステム10に接続され、表面42aの左側に方向ボタン群60(左方向ボタン60L、右方向ボタン60R、上方向ボタン60U、及び、下方向ボタン60D)及び左操作スティック54が設けられ、右側にボタン群58(左ボタン58L、右ボタン58R、上ボタン58U、及び、下ボタン58D)及び右操作スティック56が設けられている。また、図3Bに示すように、コントローラ42の奥側側面には、表面42a側左右に第1の左ボタン50L、第1の右ボタン50Rがそれぞれ設けられており、裏面側左右に第2の左ボタン52L、第2の右ボタン52Rがそれぞれ設けられている。そして、コントローラ42の筐体左右をユーザが両手で持つと、左手親指が方向ボタン群60及び左操作スティック54に位置し、右手親指がボタン群58及び右操作スティック56に位置するようになっており、右手人指し指又は中指のいずれか少なくとも一方が、第1の右ボタン50R又は第2の右ボタン52Rに位置し、左手人指し指又は中指のいずれか少なくとも一方が、第1の左ボタン50L又は第2の左ボタン52Lに位置するようになっている。
【0040】
方向ボタン群60、ボタン群58、第1の左ボタン50L、第1の右ボタン50R、第2の左ボタン52L、第2の右ボタン52Rは感圧ボタンとして構成されており、圧力センサを備えている。そして、これらのボタンをユーザが押下すると、その押圧力に応じて0〜255の値を有する256段階のディジタル値がエンタテインメントシステム10に入力されるようになっている。つまり、エンタテインメントシステム10では、コントローラ42から入力されるディジタル値が0の場合にはそのボタンが押下されておらず、255の場合には最大押圧力でボタンが押下されていること等を該ディジタル値から判断できるようになっている。
【0041】
左操作スティック54及び右操作スティック56は、コントローラ42の筐体表面に直立したスティック状の操作部材であり、この直立状態から全方位に所定角度だけ傾倒自在となっている。図3Aに示すように、コントローラ42の筐体長手方向をX軸方向(図3Aにおいて右方向を正方向とする。)とし、このX軸方向に直交する筐体奥行き方向をY軸方向(図3Aにおいて手前から奥に向かう方向を正方向とする。)とすると、左操作スティック54の姿勢(操作状態)は、X軸方向及びY軸方向の傾き(姿勢データ(X,Y))として、それぞれ0〜255のディジタル値がエンタテインメントシステム10に入力されるようになっている。具体的には、X=127やX=128付近は、左操作スティック54がX軸方向に傾いていないことを示す。また、X=255は、左操作スティック54がX軸の正方向(図3Aにおいて右方向)に限界まで倒れていることを示す。さらに、X=0は、左操作スティック54がX軸の負方向(図3Aにおいて左方向)に限界まで倒れていることを示す。Y軸方向についても同様である。また、右操作スティック56についても左操作スティック54の場合と同様である。こうして、エンタテインメントシステム10では、左操作スティック54及び右操作スティック56の現在の傾き状態(姿勢)を把握できるようになっている。また、左操作スティック54及び右操作スティック56は、方向ボタン群60やボタン群58等と同様の感圧ボタンとしても構成されており、スティックの軸方向に押下できるようになっている。
【0042】
また、コントローラ42は、内蔵振動子(バイブレータ)を備えている。そして、MPU11からの指示によって、このバイブレータは振動する。
【0043】
ここで、本実施形態に係るエンタテインメントシステム10で実現される機能について説明する。図4は、本実施形態に係るエンタテインメントシステム10で実現される機能の一例を示す機能ブロック図である。
【0044】
図4に示すように、この実施形態に係るエンタテインメントシステム10は、機能的には、プログラム実行部64、リプレイデータ生成部66、リプレイデータ取得部68、撮像動画像取得部70、データ保持部72、再生用動画像生成部74、規則変更部76、再生用動画像出力部78、を含むものとして機能する。なお、エンタテインメントシステム10がこれらの要素をすべて備えている必要はない。データ保持部72は、メインメモリ20やハードディスクドライブ38などといった、エンタテインメントシステム10が備える記憶装置を主として実現される。その他の要素は、MPU11や画像処理部24などといった、エンタテインメントシステム10が備える制御装置を主として実現される。
【0045】
これらの要素は、コンピュータであるエンタテインメントシステム10にインストールされたプログラムを、エンタテインメントシステム10が備えるMPU11などの制御装置で実行することにより実現されている。なお、このプログラムは、例えば、CD−ROM、DVD−ROM等の情報伝達媒体を介して、あるいは、インターネット等の通信ネットワークを介してエンタテインメントシステム10に供給される。
【0046】
プログラム実行部64は、例えば、エンタテインメントシステム10にインストールされているゲームプログラムなどのプログラムを実行する。本実施形態では、例えば、プログラム実行部64が図5に示すゲーム画面80を生成して、モニタ26などに表示出力する。本実施形態では、図5に示すゲーム画面80は、図6に示す、ゲームプログラムが生成する仮想3次元空間82を可視化したものである。図6に示すように、仮想3次元空間82には、例えば、少なくとも1つのブロック84(それぞれのブロック84は、少なくとも1つのポリゴンを含んで構成される。)が配置されている。そして、プログラム実行部64が視点86から視線方向88を見た様子を示す画像をゲーム画面80として、モニタ26に表示出力する。本実施形態では、プログラム実行部64は、例えば、ユーザの操作に応じて、視点86の位置や視線方向88を変更する。もちろん、プログラム実行部64が、ユーザの操作に応じて、仮想3次元空間82内のブロック84の生成、変形、移動、消去などを実行してもよい。
【0047】
リプレイデータ生成部66は、プログラムの実行中に、プログラムの実行状況を再現するためのリプレイデータを生成する。本実施形態では、リプレイデータ生成部66は、ゲーム内の所定のステージに対応するゲームプログラムの実行中に、ユーザによるゲームのプレイ状況(例えば、ステージについてのプレイの進行状況)を再現するためのリプレイデータを生成する。本実施形態では、リプレイデータ生成部66は、上述のステージに対応するゲームプログラムの実行中に受け付けるユーザによる操作の内容を示す操作データを含むリプレイデータを生成する。操作データには、ユーザによる操作が行われた順序を示す順序データが関連付けられていてもよい。また、操作データには、ユーザによる操作のタイミングを示す操作タイミングデータ(例えば、プログラムの実行開始からの経過フレーム数や、経過時間を示す操作タイミングデータ)が関連づけられていてもよい。なお、リプレイデータは、各フレーム又はある時間における、オブジェクト(ブロック84やキャラクタなど)の位置(例えば、座標など)を示していてもよい。
【0048】
本実施形態では、リプレイデータ生成部66は、例えば、プログラム実行部64によるプログラムの実行の開始から終了までの期間(実行期間)についてのリプレイデータを生成する。
【0049】
また、リプレイデータ生成部66は、プログラム実行部64によるプログラムの実行中に発生するイベント(例えば、ゲームにおけるイベント(より具体的には、例えば、パズルが解けたことを示すイベントや、得点が入ったことを示すイベントや、ゲーム内のキャラクタが笑ったことを示すイベントなど)や、外部から受け付けるイベント(例えば、所定の音量以上の音声が、カメラユニット46が備えるマイクから入力されたことを示すイベント)など)の内容を示すイベントデータを含むリプレイデータを生成してもよい。イベントデータには、そのイベントが発生したタイミングを示すイベントタイミングデータが関連づけられていてもよい。
【0050】
リプレイデータ取得部68は、リプレイデータ生成部66が生成するリプレイデータを取得する。
【0051】
撮像動画像取得部70は、リプレイデータによりプログラムの実行状況が再現される再現期間の少なくとも一部を含む撮像期間にカメラユニット46などの撮像手段により生成される撮像動画像を取得する。本実施形態では、撮像動画像取得部70は、上述のステージをユーザがプレイしている様子などを撮像した動画像を取得する。本実施形態では、上述の再現期間は、リプレイデータに含まれる各操作データの生成タイミングを含む期間に対応している。本実施形態では、撮像動画像取得部70は、例えば、カメラユニット46により所定時間毎(例えば、1/60秒毎)に生成される撮像フレーム画像を順次取得する。この場合、撮像動画像は、少なくとも1つの撮像フレーム画像を含むこととなる。なお、撮像動画像取得部70は、取得した撮像動画像を、例えば、メインメモリ20やハードディスクドライブ38などの記憶装置に書き込むようにしてもよい。
【0052】
なお、上述の撮像期間が、プログラムの実行期間に一致している必要はない。具体的には、例えば、ユーザによる上述のステージのプレイが終了した後の所定の長さの時間、又は、ユーザによる上述のステージのプレイが開始される前の所定の長さの時間、の少なくとも一方を含む期間について、撮像動画像取得部70が、カメラユニット46により撮像される動画像を取得するようにしてもよい。このように、カメラユニット46による撮像期間が、プログラムの実行期間を含む、プログラムの実行期間より長い期間であってもよい。
【0053】
データ保持部72は、リプレイデータと撮像動画像とを対応付けて保持する。
【0054】
再生用動画像生成部74は、データ保持部72に保持されているリプレイデータと、撮像動画像と、に基づいて、再生用動画像を生成する。本実施形態では、再生用動画像生成部74は、リプレイデータと撮像動画像とに基づく動画像を再生することにより再生用動画像を生成する。
【0055】
本実施形態では、再生用動画像生成部74は、プログラム実行部64に、上述のステージに対応するゲームプログラムを実行させる。そして、再生用動画像生成部74は、例えば、データ保持部72に保持されているリプレイデータをプログラム実行部64に出力する。そして、プログラム実行部64は、再生用動画像生成部74により出力されるリプレイデータを取得する。そして、プログラム実行部64は、このリプレイデータに基づいて、各フレームについて、上述のゲーム画面50に対応するリプレイフレーム画像を生成する。プログラム実行部64は、具体的には、例えば、リプレイデータに対応する操作信号を受け付けたとみなして(疑似操作信号として受け付けて)、各フレームについて、リプレイフレーム画像を生成する。このようにして、少なくとも1つのリプレイフレーム画像を含む、上述のステージをユーザがプレイしている様子を再現するリプレイ動画像(再現動画像)が生成される。再生用動画像生成部74は、プログラム実行部64に、画像の生成モードを変更する指示を与えてもよい。そして、プログラム実行部64が、ゲーム画面50が示す画像とは表示態様が異なる(例えば、仮想3次元空間82内における視点86や視線方向88が異なる)リプレイフレーム画像を生成してもよい。具体的には、例えば、プログラム実行部64がサッカーゲームのプログラムを実行している場合において、プログラム実行部64が、プレイヤオブジェクトを俯瞰した様子を示すゲーム画面50に対応する、シュートを放ったプレイヤオブジェクトにズームアップされたリプレイフレーム画像を生成するようにしてもよい。
【0056】
再生用動画像生成部74は、リプレイデータに基づいて生成される動画像(例えば、リプレイ動画像(再現動画像))と、撮像動画像と、に基づいて、再生用動画像を生成してもよい。そして、リプレイ動画像は、少なくとも1つのリプレイフレーム画像(例えば、ゲームプログラムのリプレイ画像(再現画像))を含んでいてもよい。
【0057】
規則変更部76は、ユーザによる操作に応じて、リプレイ動画像と撮像動画像とを合成する規則を変更する。規則変更部76の詳細については後述する。
【0058】
ここで、本実施形態におけるエンタテインメントシステム10で所定時間毎に(例えば、1/60秒毎に)実行される処理の流れの一例を、図7に示すフロー図を参照しながら説明する。
【0059】
なお、本実施形態では、上述の実行期間の開始タイミングと上述の撮像期間の開始タイミングとは対応している。そして、上述の実行期間の終了タイミングと上述の撮像期間の終了タイミングとは対応している。そして、下記の処理例では、上述の実行期間の開始からn番目のフレーム(第nフレーム)に対応する処理の流れの一例を説明する。また、データ保持部72には、予めリプレイデータと撮像動画像とが対応付けて保持されている。また、再生用動画像生成部74は、プログラム実行部64に、再現対象となるステージ対応するゲームプログラムを予め実行させている。そして、再生用動画像生成部74は、データ保持部72に保持されているリプレイデータをプログラム実行部64に出力している。
【0060】
まず、再生用動画像生成部74は、プログラム実行部64に、第nフレームにおけるリプレイフレーム画像(すなわち、実行期間の開始から(1/60)×n秒経過時点におけるリプレイフレーム画像)を生成させる(S101)。
【0061】
そして、再生用動画像生成部74は、データ保持部72に保持されている、第nフレームにおける撮像フレーム画像(すなわち、撮像期間の開始から(1/60)×n秒経過時点における撮像フレーム画像)を取得する(S102)。
【0062】
そして、再生用動画像生成部74は、第nフレームにおけるリプレイフレーム画像と第nフレームにおける撮像フレーム画像とを合成して、第nフレームにおける再生用フレーム画像90(図8参照)を生成する(S103)。図8に、再生用フレーム画像90の一例を示す。S103に示す処理の詳細については後述する。
【0063】
そして、再生用動画像生成部74が、第nフレームにおける再生用フレーム画像90を再生(例えば、再生用フレーム画像90をモニタ26に表示出力)する(S104)。
【0064】
そして、再生用動画像生成部74が、第nフレームにおける再生用フレーム画像90をメインメモリ20やハードディスクドライブ38などの記憶装置に記録する(S105)。再生用フレーム画像90は、例えば、再生開始時からの経過時間に対応するフレーム番号や、再生開始からの時間を示すデータなどと関連付けられている。このように、再生用動画像生成部74が、再生する動画像を記録することにより再生用動画像を生成してもよい。
【0065】
上述のS101〜S105に示す処理を、第1フレームから順次最終フレームまで実行する。このようにして、本実施形態では、少なくとも1つの再生用フレーム画像90を含む再生用動画像がメインメモリ20やハードディスクドライブ38などの記憶装置に記録される。
【0066】
再生用動画像生成部74は、例えば、所与の規則に従って、リプレイフレーム画像と撮像フレーム画像とを合成する。再生用動画像生成部74は、具体的には、例えば、リプレイフレーム画像内の所定の領域(例えば、リプレイフレーム画像内の右上の領域)に撮像フレーム画像の縮小画像92を上書きすることによって、再生用フレーム画像90を生成する。また、再生用動画像生成部74は、例えば、リプレイフレーム画像内の領域に、低画質化した撮像フレーム画像の縮小画像92を上書きして再生用フレーム画像90を生成してもよい。また、再生用動画像生成部74は、例えば、再生用フレーム画像90の左下の領域にリプレイフレーム画像の縮小画像92を配置して、再生用フレーム画像90の右上の領域に撮像フレーム画像の縮小画像92を配置することにより、再生用フレーム画像90を生成してもよい。このように、再生用動画像生成部74は、リプレイ動画像と撮像動画像とを所与の規則に従って合成して再生用動画像を生成してもよい。
【0067】
なお、再生用動画像生成部74は、公知の画像処理技術によりリプレイフレーム画像内の、プログラム(例えば、ゲームプログラム)に関する画像が表示されていない領域を特定して、その領域に撮像フレーム画像の縮小画像92を重ね合わせて再生用フレーム画像を生成してもよい。また、再生用動画像生成部74は、リプレイフレーム画像に含まれる画素の分布(例えば、色分布)に基づいて決定される色を決定して、その色になるよう加工した撮像フレーム画像の縮小画像92をリプレイフレーム画像内の領域に上書きして再生用フレーム画像90を生成してもよい。また、再生用動画像生成部74は、リプレイフレーム画像に含まれる画素のバリエーション(例えば、色のバリエーション)に基づいて半透明度を決定して、その半透明度になるよう加工した撮像フレーム画像の縮小画像92をリプレイフレーム画像内の領域に上書きして再生用フレーム画像90を生成してもよい。このように、再生用動画像生成部74は、リプレイ動画像と撮像動画像とを、リプレイ動画像に基づいて決定される規則に従って合成して再生用動画像を生成してもよい。
【0068】
また、リプレイデータ生成部66がイベントデータを生成する際には、再生用動画像生成部74は、イベントデータが示すタイミング(例えば、イベント発生のタイミング)に対応する再生用フレーム画像90に対して、そのイベントの内容に基づく画像効果を加えてもよい。再生用動画像生成部74は、上述の場合に、例えば、再生用フレーム画像90内において撮像フレーム画像の縮小画像92が占める領域を大きくしてもよい。また、再生用動画像生成部74は、上述の場合に、例えば、リプレイフレーム画像に撮像フレーム画像の縮小画像92を上書きして再生用フレーム画像90を生成してもよい。また、再生用動画像生成部74は、上述の場合に、例えば、再生用フレーム画像90に、色を付けたり、吹き出しをつけたり、ずらしたり、などといった加工を行ってもよい。また、再生用動画像生成部74は、上述の場合に、例えば、スロー再生となるよう再生用フレーム画像90を生成(例えば、所定のフレーム数だけ互いに共通する再生用フレーム画像90を生成)してもよい。
【0069】
また、再生用動画像生成部74は、リプレイフレーム画像に基づいて、イベントが発生しているか否かを判断してもよい。そして、イベントが発生していると判断された際に、そのリプレイフレーム画像に対応する再生用フレーム画像90に所定の画像効果を加えてもよい。
【0070】
なお、プログラムの実行期間とカメラユニット46による撮像期間とが対応しない場合には、リプレイフレーム画像に対応する撮像フレーム画像が存在しない場合や、撮像フレーム画像に対応するリプレイフレーム画像が存在しない場合が考えられる。この場合は、再生用動画像生成部74が、存在しない撮像フレーム画像やリプレイフレーム画像を所与の規則に従って補完して(例えば、プログラムの実行期間内の最後のフレームに対応するリプレイフレーム画像や撮像フレーム画像を用いて)再生用フレーム画像90を生成するようにしてもよい。
【0071】
また、本実施形態では、規則変更部76が、ユーザによる操作に応じて(例えば、所定のボタンを押下したことを示す操作信号を受け付けて、その操作に応じて)、リプレイ動画像と撮像動画像とを合成する規則を変更する。具体的には、例えば、規則変更部76は、操作信号に応じて、撮像フレーム画像の縮小画像92を一部に含む再生用フレーム画像90を生成するか、撮像フレーム画像の縮小画像92を含まない再生用フレーム画像90を生成するかを切り替える。このようにすれば、再生用動画像生成部74による動画像の再生中に、ユーザは、再生されている動画像を見ながら、再生用フレーム画像90に撮像フレーム画像の縮小画像92を含めるか否かを切り替えることができる。
【0072】
また、規則変更部76が、操作データに応じて、撮像フレーム画像の縮小画像92を一部に含む再生用フレーム画像90を生成するか、撮像フレーム画像の縮小画像92を含まない再生用フレーム画像90を生成するかを切り替えるようにしてもよい。このようにすれば、プログラム実行部64によるプログラムの実行中に、ユーザが、再生用フレーム画像90に撮像動画像に基づく画像を一部に含めるか否かを切り替えることができる。また、規則変更部76が、ユーザによる操作に応じて、撮像フレーム画像が再生用フレーム画像90内において配置される位置や大きさを変更するようにしてもよい。
【0073】
再生用動画像出力部78は、ユーザからの要求に応じて、記憶装置に記録される再生用動画像を、このユーザの識別子(例えば、ユーザIDやユーザ名)に関連付けて、ネットワークを介してエンタテインメントシステム10と接続されている動画像出力サーバに出力する。再生用動画像出力部78は、具体的には、例えば、動画像配信サイトである動画像出力サーバに、撮像動画像にゲームのリプレイ動画像が合成された再生用動画像をアップロードする。このようにすれば、動画像出力サーバに出力された再生用動画像を、他のユーザに提供することができるので、ゲームのリプレイ動画像を他のユーザも楽しむことができる。なお、このとき、出力を要求するユーザの識別子と、再生用動画像に関連付けられているユーザの識別子と、を比較して、再生用動画像の閲覧をユーザに許可するか否かを制御するようにしてもよい。
【0074】
また、再生用動画像出力部78が、他のユーザのエンタテインメントシステム10に再生用動画像を出力するようにしてもよい。そして、他のユーザからの要求に応じて、そのエンタテインメントシステム10でこの再生用動画像を再生する際に、カメラユニット46が他のユーザがその再生用動画像を鑑賞している様子を撮像して、鑑賞動画像を生成するようにしてもよい。そして、エンタテインメントシステム10が、この鑑賞動画像や、鑑賞動画像と再生用動画像の合成動画像などを再生用動画像の送信元のエンタテインメントシステム10に出力するようにしてもよい。このようにすれば、再生用動画像を作成したユーザが、その再生用動画像を他のユーザが鑑賞している様子を楽しむことができる。なお、エンタテインメントシステム10は、再生用動画像や、鑑賞動画像や、合成動画像を、サーバを介して送受信しても構わない。
【0075】
なお、本発明は上記実施形態に限定されるものではない。
【0076】
例えば、再生用動画像生成部74が、リプレイデータに基づくリプレイ動画像を生成してから、このリプレイ動画像と撮像動画像を合成して再生用動画像を生成するようにしてもよい。
【0077】
また、例えば、リプレイデータが撮像フレーム画像と関連づけられていてもよい。具体的には、例えば、生成されるリプレイデータのうちの少なくとも一部が、撮像動画像に含まれる撮像フレーム画像の順番を示すフレーム番号(例えば、撮像期間の開始からのフレーム数を示すフレーム番号)などと関連づけられていてもよい。そして、再生用動画像生成部74が、リプレイデータに基づいて各フレームのリプレイフレーム画像を順次生成して、このリプレイフレーム画像と、このリプレイフレーム画像を生成する際の基礎となったリプレイデータに関連付けられている撮像フレーム画像と、を合成することにより、再生用フレーム画像90を生成するようにしてもよい。また、撮像動画像に含まれる撮像フレーム画像の少なくとも一部がリプレイデータ(例えば、キャラクタの位置を示すリプレイデータ)の識別子などと関連づけられていてもよい。そして、再生用動画像生成部74が、撮像フレーム画像に含まれるフレーム番号が示す順番に従って撮像フレーム画像を順次再生しつつ、再生される撮像フレーム画像と、この撮像フレーム画像に関連付けられているリプレイデータに基づいて決定される位置に各キャラクタが配置された様子を示すリプレイフレーム画像と、を合成することにより、再生用フレーム画像90を生成するようにしてもよい。
【0078】
また、例えば、再生用動画像生成部74が、リプレイフレーム画像と、そのリプレイフレーム画像に対応するタイミングとは、所定のフレーム数だけタイミングがずれている撮像フレーム画像とに基づいて、再生用フレーム画像90を生成するようにしてもよい。
【0079】
また、例えば、撮像動画像取得部70が、複数のカメラユニット46により生成される複数の撮像動画像を取得するようにしてもよい。そして、規則変更部76が、ユーザからの要求に応じて、合成対象となる撮像動画像(撮像フレーム画像)を切り替えて、再生用動画像生成部74が、この撮像動画像(撮像フレーム画像)に基づく再生用動画像を生成するようにしてもよい。
【0080】
また、再生用動画像生成部74が、複数のエンタテインメントシステム10それぞれで生成された、撮像動画像やリプレイ動画像に基づく再生用動画像を生成するようにしてもよい。再生用動画像生成部74が、具体的には、例えば、複数のリプレイ動画像及び複数の撮像動画像を所与の規則に基づいて合成した再生用動画像を生成するようにしてもよい。
【符号の説明】
【0081】
10 エンタテインメントシステム、11 MPU、12 メインプロセッサ、14a〜14h サブプロセッサ、16 バス、18 メモリコントローラ、20 メインメモリ、22,40,44 インタフェース、24 画像処理部、26 モニタ、28 入出力処理部、30 音声処理部、32 スピーカ、34 光ディスク読み取り部、36 光ディスク、38 ハードディスクドライブ、42 コントローラ、42a 表面、46 カメラユニット、48 ネットワークインタフェース、50L 第1の左ボタン、50R 第1の右ボタン、52L 第2の左ボタン、52R 第2の右ボタン、54 左操作スティック、56 右操作スティック、58 ボタン群、58L 左ボタン、58R 右ボタン、58U 上ボタン、58D 下ボタン、60 方向ボタン群、60L 左方向ボタン、60R 右方向ボタン、60U 上方向ボタン、60D 下方向ボタン、62 コントローラケーブル、64 プログラム実行部、66 リプレイデータ生成部、68 リプレイデータ取得部、70 撮像動画像取得部、72 データ保持部、74 再生用動画像生成部、76 規則変更部、78 再生用動画像出力部、80 ゲーム画面、82 仮想3次元空間、84 ブロック、86 視点、88 視線方向、90 再生用フレーム画像、92 縮小画像。

【特許請求の範囲】
【請求項1】
プログラムの実行状況を再現するためのリプレイデータを取得するリプレイデータ取得手段、
前記リプレイデータにより前記プログラムの実行状況が再現される再現期間の少なくとも一部を含む撮像期間に撮像手段により生成される撮像動画像を取得する撮像動画像取得手段、
前記リプレイデータと、前記撮像動画像と、を対応付けて保持手段に保持させる手段、
としてコンピュータを機能させることを特徴とするプログラム。
【請求項2】
前記リプレイデータと、前記撮像動画像と、に基づいて、再生用動画像を生成する再生用動画像生成手段、として前記コンピュータをさらに機能させる、
ことを特徴とする請求項1に記載のプログラム。
【請求項3】
前記再生用動画像生成手段が、前記リプレイデータと前記撮像動画像とに基づく動画像を再生することにより前記再生用動画像を生成する、
ことを特徴とする請求項2に記載のプログラム。
【請求項4】
前記再生用動画像生成手段が、前記リプレイデータに基づいて生成されるリプレイ動画像と、前記撮像動画像と、に基づいて、前記再生用動画像を生成する、
ことを特徴とする請求項2又は3に記載のプログラム。
【請求項5】
前記再生用動画像生成手段が、前記リプレイ動画像と前記撮像動画像とを所与の規則に従って合成して再生用動画像を生成する、
ことを特徴とする請求項4に記載のプログラム。
【請求項6】
前記再生用動画像生成手段が、前記リプレイ動画像と前記撮像動画像とを、前記リプレイ動画像に基づいて決定される規則に従って合成して再生用動画像を生成する、
ことを特徴とする請求項5に記載のプログラム。
【請求項7】
ユーザによる操作に応じて、前記リプレイ動画像と前記撮像動画像とを合成する規則を変更する規則変更手段、として前記コンピュータをさらに機能させる、
ことを特徴とする請求項5又は6に記載のプログラム。
【請求項8】
動画像を出力する動画像出力サーバに、ユーザからの要求に応じて、前記再生用動画像を当該ユーザの識別子と関連付けて出力する再生用動画像出力手段、として前記コンピュータをさらに機能させる、
ことを特徴とする請求項2から7のいずれか一項に記載のプログラム。
【請求項9】
前記リプレイデータが、ユーザによる操作の内容を少なくとも示す、
ことを特徴とする請求項1から8のいずれか一項に記載のプログラム。
【請求項10】
前記撮像期間が、前記再現期間よりも長い期間である、
ことを特徴とする請求項1から9のいずれか一項に記載のプログラム。
【請求項11】
請求項1から10のいずれか一項に記載のプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。
【請求項12】
プログラムの実行状況を再現するためのリプレイデータを取得するリプレイデータ取得手段と、
前記リプレイデータにより前記プログラムの実行状況が再現される再現期間の少なくとも一部を含む撮像期間に撮像手段により生成される撮像動画像を取得する撮像動画像取得手段と、
前記リプレイデータと、前記撮像動画像と、を対応付けて保持する保持手段と、
を含むことを特徴とする画像処理装置。
【請求項13】
プログラムの実行状況を再現するためのリプレイデータを取得するリプレイデータ取得ステップと、
前記リプレイデータにより前記プログラムの実行状況が再現される再現期間の少なくとも一部を含む撮像期間に撮像手段により生成される撮像動画像を取得する撮像動画像取得ステップと、
前記リプレイデータと、前記撮像動画像と、を対応付けて保持手段に保持させるステップと、
を含むことを特徴とする画像処理方法。
【請求項14】
プログラムの実行状況を再現するためのリプレイデータと、
前記リプレイデータに対応する期間の少なくとも一部に撮像手段により生成される撮像動画像と、を有し、
前記リプレイデータと前記撮像動画像とが対応付けられている、
ことを特徴とするデータ構造。

【図1】
image rotate

【図2】
image rotate

【図3A】
image rotate

【図3B】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2010−214028(P2010−214028A)
【公開日】平成22年9月30日(2010.9.30)
【国際特許分類】
【出願番号】特願2009−67337(P2009−67337)
【出願日】平成21年3月19日(2009.3.19)
【出願人】(395015319)株式会社ソニー・コンピュータエンタテインメント (871)
【Fターム(参考)】