動画生成装置
【課題】 仮想三次元空間を仮想カメラによって撮像して二次元動画を生成する際に、その処理の煩雑さを回避することのできる装置を提供する。
【手段】 個別二次元動画生成手段ITG1、ITG2・・・ITGnは、仮想カメラ・パラメータCP1、CP2・・・CPnにしたがって、仮想三次元空間データTD1、TD2・・・TDnを仮想カメラによって撮像し、個別二次元動画を生成する。二次元動画重畳手段62は、重畳パラメータLPにしたがって、生成された各個別二次元動画を重ね合わせて、目的とする二次元動画を生成する。表示制御手段64は、生成された二次元動画を、表示装置に表示するよう制御する。
【手段】 個別二次元動画生成手段ITG1、ITG2・・・ITGnは、仮想カメラ・パラメータCP1、CP2・・・CPnにしたがって、仮想三次元空間データTD1、TD2・・・TDnを仮想カメラによって撮像し、個別二次元動画を生成する。二次元動画重畳手段62は、重畳パラメータLPにしたがって、生成された各個別二次元動画を重ね合わせて、目的とする二次元動画を生成する。表示制御手段64は、生成された二次元動画を、表示装置に表示するよう制御する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、仮想三次元空間に設定した視点から見た二次元動画を生成する装置に関するものである。
【背景技術】
【0002】
仮想三次元空間にオブジェクトを配置し、これを仮想的なカメラによって撮像し、二次元動画を生成する方法がある(たとえば、特許文献1)。この方法によれば、カメラの視点や視線を変更することで、様々な二次元動画を生成することができる。
【0003】
ただし、仮想三次元空間のオブジェクトを仮想カメラにて撮像し、二次元動画を生成するためにはレンダリング処理を行わねばならず、処理負担が大きかった。したがって、画面書き換えを早くすると(すなわちフレームレートを上げると)上記処理が間に合わないため、画面全体のフレームレートを落とさなければならず、動画品質が劣化する場合もあった。
【0004】
このような問題を解決するため、特許文献1や特許文献2では、高いフレームレートで表示する特定のオブジェクトを設け、他のオブジェクトについては低いフレームレートで表示を行う技術が開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2008−229170号公報
【特許文献2】特開2006−164168号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上記のような従来技術においては、次のような問題点があった。
【0007】
仮想三次元空間に設定した視点から見た二次元動画を生成する場合、仮想三次元空間における各オブジェクトの配置や移動と、視点位置および視線方向を精度よく制御しなければ、所望の二次元動画を得ることができない。たとえば、図1に示すように、画面上において背景2が左から右へ移動し、人物4が画面の中央において上から下へ移動するような二次元動画6を生成する場合について考える。
【0008】
このような二次元動画6を生成しようとする場合、図2に示すような背景が立体的に配置された仮想三次元空間8を設定し、仮想カメラ10を矢印12の方向に移動させながら撮像して二次元動画を生成する。なお、ここで、カメラを固定し仮想三次元空間を移動させると処理負担が大きくなるので、仮想カメラ10を移動させるようにしている。さらに、この仮想三次元空間8において、移動する仮想カメラ10とともに矢印12の方向に移動し、しかも、その移動につれて上から下へ移動する人物4をオブジェクトとして生成しなければならない。
【0009】
また、レンダリング処理などに起因した処理負担から、画面のフレームレートを落とさなければならず、動画品質が劣化するという問題については、前述のように、特定のオブジェクトのみ高いフレームレートで表示を行うという解決が提案されている(特許文献1、特許文献2)。
【0010】
しかし、特許文献1や特許文献2の技術を用いた場合、仮想三次元空間に配置されたオブジェクト毎に、どのようなフレームレートで表示を行うのかを設定しなければならず、作業が繁雑であった。
【0011】
この発明は、上記のような問題点を解決し、仮想三次元空間を仮想カメラによって撮像して二次元動画を生成する際に、その処理の煩雑さを回避することのできる装置を提供することを目的とする。
【課題を解決するための手段】
【0012】
(1)(2)この発明に係る動画生成装置は、オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データと、仮想カメラの撮像条件を定める仮想カメラ・パラメータとを記録する記録部と、前記仮想カメラ・パラメータに基づいて、前記仮想複数次元空間のそれぞれを、前記複数の仮想カメラによって撮像した個別二次元動画を生成する個別二次元動画生成手段と、前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成する二次元動画重畳手段と、生成された二次元動画を、所定のフレームレートにて表示する表示制御手段とを備えている。
【0013】
したがって、この装置において表示するための二次元動画を作成する際に、複数の仮想複数次元空間を撮像した個別二次元動画を重畳して行うことができ、作成効率がよい。
【0014】
(3)この発明に係る動画生成装置は、仮想複数次元空間が、少なくとも仮想三次元空間または仮想二次元空間を含むことを特徴としている。
【0015】
したがって、仮想三次元空間または仮想二次元空間に基づく動画を生成することができる。
【0016】
(4)この発明に係る動画生成装置は、個別二次元動画生成手段が、前記仮想カメラによって撮像した個別二次元動画に加えて、前記仮想カメラを用いずに、前記仮想複数次元空間である仮想二次元空間に基づいて個別二次元動画を生成することを特徴としている。
【0017】
したがって、仮想カメラが設定された仮想複数次元空間による個別二次元動画と、仮想カメラが設定されていない仮想二次元空間による個別二次元動画を重ね合わせた二次元動画を生成することができる。
【0018】
(5)この発明に係る動画生成装置は、記録部には、前記仮想複数次元空間を前記仮想カメラによって撮像した個別二次元動画を重ね合わせる際の条件を定める重畳パラメータが記録されており、二次元動画重畳手段は、前記重畳パラメータに基づいて、個別二次元動画を重ね合わせることを特徴としている。
【0019】
したがって、重畳パラメータにより重ね合わせ時の条件などを設定することができる。
【0020】
(6)この発明に係る動画生成装置は、仮想カメラおよび前記仮想カメラ・パラメータは、仮想複数次元空間毎に設けられており、仮想複数次元空間毎に設けられた前記各仮想カメラ・パラメータは、少なくとも異なる視点または異なる視線を有することを特徴としている。
【0021】
したがって、この装置において表示するための二次元動画を作成する際に、仮想複数次元空間毎に異なる視点などを設定して、複雑な二次元動画を容易に作成することができる。
【0022】
(7)この発明に係る動画生成装置は、各仮想カメラ・パラメータは、対応する各仮想複数次元空間に対して、前記各仮想カメラが、異なる動きを行って撮像を行うよう設定されることを特徴としている。
【0023】
したがって、この装置において表示するための二次元動画を作成する際に、仮想複数次元空間毎に異なるカメラの動きを設定して、複雑な二次元動画を容易に作成することができる。
【0024】
(8)この発明に係る動画生成装置は、記録部は、前記各仮想カメラをオンにするかオフにするかを設定する仮想カメラ・フラグを記録しており、各二次元動画重畳手段は、前記仮想カメラ・フラグの内容に基づいて、前記二次元動画重畳手段が各個別二次元動画を重畳する際に、当該個別二次元動画を重畳するか否かを制御することを特徴としている。
【0025】
したがって、この装置において表示するための二次元動画を作成する際に、カメラ・フラグをオンまたはオフするだけで、容易に所望の二次元動画を得ることができる。
【0026】
(9)この発明に係る動画生成装置は、記録部は、前記各仮想カメラをオンにするかオフにするかを設定する仮想カメラ・フラグを記録しており、各個別二次元動画生成手段は、前記仮想カメラ・フラグの内容に基づいて、対応する前記個別二次元動画を生成するか否かを制御することを特徴としている。
【0027】
したがって、この装置において表示するための二次元動画を作成する際に、カメラ・フラグをオンまたはオフするだけで、容易に所望の二次元動画を得ることができる。
【0028】
(10)この発明に係る動画生成装置は、個別二次元動画生成手段は、所定の時間間隔で前記個別二次元動画を生成し、前記記録部は、前記各個別二次元動画を、前記所定時間間隔に合致するように生成するか、前記所定時間間隔の整数倍に合致するように生成するかを定めるハーフフレーム・パラメータを記録しており、前記個別二次元動画生成手段は、ハーフフレーム・パラメータにしたがって、前記個別二次元動画を生成し、前記二次元動画生成手段は、対象となる所定時間間隔のために生成された前記個別二次元動画が存在する場合にはこれを用い、存在しない場合に前の所定時間間隔のために生成された前記個別二次元動画を用いて、目的とする二次元動画を生成することを特徴としている。
【0029】
したがって、表示品質を維持しつつ、処理速度を向上させることができる。
【0030】
(11)この発明に係る動画生成装置は、目的とする二次元動画は、前記個別二次元動画を、奥から手前に順次重ねたものとして構成され、前記時間間隔に整数倍に合致するよう生成される前記所定の個別二次元動画は、前記奥から所定番目までの個別二次元動画であることを特徴としている。
【0031】
したがって、重畳処理を容易に行うことができる。
【0032】
(12)この発明に係る動画生成装置は、重畳された個別二次元動画の組み合わせをシーンとして定義し、当該シーンの連続によってフローを定義して記録する定義部と、定義部に記録されたフローに含まれるシーンを順次読み出して、前記個別二次元動画生成手段、前記二次元動画重畳手段、前記表示制御手段により、二次元動画を表示する制御を行わせるフロー制御手段とをさらに備え、前記シーンの定義において、シーンを構成する個別二次元動画を指定する際に、先行するシーンと同じ個別二次元動画を用いる指示が含まれることを特徴としている。
【0033】
したがって、シーンを構成する個別二次元動画に変更があった場合であっても、対応が容易である。
【0034】
(13)この発明に係る動画生成装置は、重畳された個別二次元動画の組み合わせをシーンとして定義し、当該シーンの連続によってフローを定義して記録する定義部と、定義部に記録されたフローに含まれるシーンを順次読み出して、前記個別二次元動画生成手段、前記二次元動画重畳手段、前記表示制御手段により、二次元動画を表示する制御を行わせるフロー制御手段とをさらに備え、前記記録部は、前記シーン毎、前記仮想複数次元空間データ毎に、各仮想カメラをオンにするかオフにするかを設定する仮想カメラ・フラグを記録しており、前記個別二次元動画生成手段は、前記仮想カメラ・フラグがオンである場合には、対応する当該仮想複数次元空間データを当該仮想カメラによって撮像し、前記仮想カメラ・フラグがオフである場合には、対応する仮想複数次元空間データを、他の仮想複数次元空間データのための仮想カメラによって撮像することを特徴としている。
【0035】
したがって、シーン毎に仮想カメラ・フラグを設定し、当該仮想三次元空間データに対する固有の仮想カメラを用いるか、他の仮想三次元空間データに対する仮想カメラを用いるかを設定することができる。
【0036】
(14)この発明に係る動画生成装置は、オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データと、仮想カメラの撮像条件を定める仮想カメラ・パラメータと、前記仮想複数次元空間を前記仮想カメラによって撮像した個別二次元動画を重ね合わせる際の条件を定める重畳パラメータとを記録する記録部を有するコンピュータが動画を生成する方法であって、前記仮想カメラ・パラメータに基づいて、前記仮想複数次元空間のそれぞれを、前記複数の仮想カメラによって撮像した個別二次元動画を生成し、前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成し、生成された二次元動画を、所定のフレームレートにて表示することを特徴としている。
【0037】
したがって、この装置において表示するための二次元動画を作成する際に、複数の仮想複数次元空間を撮像した個別二次元動画を重畳して行うことができ、作成効率がよい。
【0038】
(15)(16)この発明に係る動画生成装置は、オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部と、前記仮想複数次元空間のそれぞれに基づいて個別二次元動画を生成する個別二次元動画生成手段と、前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成する二次元動画重畳手段と、生成された二次元動画を、所定のフレームレートにて表示する表示制御手段とを備えたことを特徴としている。
【0039】
したがって、この装置において表示するための二次元動画を作成する際に、複数の仮想複数次元空間に対応する個別二次元動画を重畳して行うことができ、作成効率がよい。
【0040】
(17)この発明に係る動画生成装置は、仮想複数次元空間は、仮想二次元空間であることを特徴としている。
【0041】
したがって、仮想二次元空間に基づく動画を生成することができる。
【0042】
(18)この発明に係る動画生成装置は、個別二次元動画生成手段は、所定の時間間隔で前記個別二次元動画を生成し、前記記録部は、前記各個別二次元動画を、前記所定時間間隔に合致するように生成するか、前記所定時間間隔の整数倍に合致するように生成するかを定めるハーフフレーム・パラメータを記録しており、前記個別二次元動画生成手段は、ハーフフレーム・パラメータにしたがって、前記個別二次元動画を生成し、前記二次元動画生成手段は、対象となる所定時間間隔のために生成された前記個別二次元動画が存在する場合にはこれを用い、存在しない場合に前の所定時間間隔のために生成された前記個別二次元動画を用いて、目的とする二次元動画を生成することを特徴としている。
【0043】
したがって、表示品質を維持しつつ、処理速度を向上させることができる。
【0044】
(19)この発明に係る動画生成装置は、目的とする二次元動画は、前記個別二次元動画を、奥から手前に順次重ねたものとして構成され、前記時間間隔に整数倍に合致するよう生成される前記所定の個別二次元動画は、前記奥から所定番目までの個別二次元動画であることを特徴としている。
【0045】
したがって、重畳処理を容易に行うことができる。
【0046】
(20)この発明に係る動画生成装置は、重畳された個別二次元動画の組み合わせをシーンとして定義し、当該シーンの連続によってフローを定義して記録する定義部と、定義部に記録されたフローに含まれるシーンを順次読み出して、前記個別二次元動画生成手段、前記二次元動画重畳手段、前記表示制御手段により、二次元動画を表示する制御を行わせるフロー制御手段とをさらに備え、前記シーンの定義において、シーンを構成する個別二次元動画を指定する際に、先行するシーンと同じ個別二次元動画を用いる指示が含まれることを特徴としている。
【0047】
したがって、シーンを構成する個別二次元動画に変更があった場合であっても、対応が容易である。
【0048】
(21)この発明に係る動画生成方法は、オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データと前記仮想複数次元空間を前記仮想カメラによって撮像した個別二次元動画を重ね合わせる際の条件を定める重畳パラメータとを記録する記録部を有するコンピュータが動画を生成する方法であって、前記仮想複数次元空間のそれぞれに基づいて個別二次元動画を生成し、前記重畳パラメータに基づいて、前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成し、生成された二次元動画を、所定のフレームレートにて表示することを特徴としている。
【0049】
したがって、シーンを構成する個別二次元動画に変更があった場合であっても、対応が容易である。
【0050】
(22)(23)この発明に係る動画データ・パラメータ作成方法は、オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部と、前記複数の仮想複数次元空間を撮像する仮想カメラの撮像パラメータを設定するための仮想カメラ・パラメータ設定手段と、前記複数の仮想複数次元空間を仮想カメラによって撮像した各個別二次元動画を重畳する際のパラメータを設定する重畳パラメータ設定手段とを備えたことを特徴としている。
【0051】
したがって、二次元動画を作成する際に、複数の仮想三次元空間を撮像した個別二次元動画を重畳して行うことができ、作成効率がよい。
【0052】
(24)この発明に係る動画データ・パラメータ作成方法は、オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部を有するコンピュータが、動画データ・パラメータを作成する方法であって、前記コンピュータは、前記複数の仮想複数次元空間を撮像する仮想カメラの撮像パラメータを設定して記録し、前記複数の仮想複数次元空間を仮想カメラによって撮像した各個別二次元動画を重畳する際のパラメータを設定して記録することを特徴としている。
【0053】
したがって、二次元動画を作成する際に、複数の仮想三次元空間を撮像した個別二次元動画を重畳して行うことができ、作成効率がよい。
【0054】
「記録部」は、仮想複数次元空間データや仮想カメラ・パラメータなどを記録することの可能なROM、メモリ、ハードディスクなどをいい、実施形態においては、ROM78がこれに対応する。
【0055】
「個別二次元動画生成手段」は、実施形態においては、VDP76によって実行されるステップS3がこれに対応する。
【0056】
「二次元動画重畳手段」は、実施形態においては、VDP76によって実行されるステップS4がこれに対応する。
【0057】
「表示制御手段」は、実施形態においては、VDP76によるディスプレイへの表示処理がこれに対応する。
【0058】
「二次元動画重畳手段」は、実施形態においては、図8の重畳パラメータを用いたVDP76による重ね合わせ処理がこれに対応する。
【0059】
「仮想カメラ・パラメータ設定手段」は、実施形態においては、ステップS33やステップS51がこれに対応する。
【0060】
「重畳パラメータ設定手段」は、実施形態においては、ステップS36やステップS52がこれに対応する。
【0061】
「プログラム」とは、CPU等により直接実行可能なプログラムだけでなく、ソース形式のプログラム、圧縮処理がされたプログラム、暗号化されたプログラム等を含む概念である。
【図面の簡単な説明】
【0062】
【図1】仮想三次元空間を撮像して、二次元動画を生成するための処理を説明する図である。
【図2】仮想三次元空間を撮像して、二次元動画を生成するための処理を説明する図である。
【図3】本発明の一実施形態による動画生成装置において再生する二次元動画の内容を説明するための図である。
【図4】本発明の一実施形態による動画生成装置の機能ブロック図である。
【図5】図4の動画生成装置のハードウエア構成を示す図である。
【図6】動画生成プログラム80のフローチャートである。
【図7】仮想カメラ・パラメータCP1の例を示す図である。
【図8】重畳パラメータの例を示す図である。
【図9】フラグ・テーブルの例を示す図である。
【図10】仮想カメラを用いずに、仮想二次元空間データをそのまま個別二次元動画として用いる場合の例を示す図である。
【図11】フルフレームにおける、個別二次元動画の重畳処理を示す図である。
【図12】ハーフフレームにおける、個別二次元動画の重畳処理を示す図である。
【図13】他の実施形態による動画生成装置の機能ブロック図である。
【図14】動画生成プログラム80のフローチャートである。
【図15】ハーフフレーム・パラメータの例である。
【図16】フルフレームとハーフレームが混在する場合の表示処理を示す図である。
【図17】フルフレームとハーフレームが混在する場合の表示処理を示す図である。
【図18】シーンテーブルの例である。
【図19】他の実施形態によるシーンテーブルの例である。
【図20】仮想三次元空間毎、シーン毎に仮想カメラ・フラグを設定した場合の実施形態を示す図である。
【図21】動画データ・パラメータ作成装置の機能ブロック図である。
【図22】動画データ・パラメータ作成装置のハードウエア構成を示す図である。
【図23】動画データ・パラメータ作成プログラム124のフローチャートである。
【図24】他の実施形態による、動画データ・パラメータ作成プログラムのフローチャートである。
【図25】シーン毎に仮想三次元空間データと仮想カメラ視点・視線方向データを記録した状態を示す図である。
【発明を実施するための形態】
【0063】
1.第一の実施形態
1.1動画生成装置の概要
図3に、この発明の一実施形態による動画生成装置の概念図を示す。この実施形態では、図3Aおよび図3Bに示すように、2つの仮想三次元空間20、22を設けている。
【0064】
図3Aに示す仮想三次元空間20には、多数のオブジェクトからなる背景40が配置されている。仮想三次元空間20には、仮想カメラ30が配置され、矢印50の方向に移動しながら撮像を行う。したがって、仮想カメラ30によって生成される個別二次元動画は、背景40が、左から右へ移動したものとなる。
【0065】
図3Bに示す仮想三次元空間22には、多数のオブジェクトからなる人物42が配置されている。仮想三次元空間22には、仮想カメラ32が固定して配置されている。人物42は、矢印52の方向に移動する。したがって、仮想カメラ32によって生成される個別二次元動画は、人物42が、上から下へ移動したものとなる。
【0066】
仮想三次元空間20に対応する個別二次元動画と、仮想三次元空間22に対応する個別二次元動画を、時間的なタイミングを合致させつつ重ね合わせることにより、目的とする二次元動画を生成することができる。ここでは、背景が左から右へ移動しつつ、人物が画面中央にて上から下へ移動するような二次元動画を得ることができる。
【0067】
図4に、この実施形態による動画生成装置の機能ブロック図を示す。記録部60には、仮想三次元空間データTD1、TD2・・・TDn、仮想カメラ・パラメータCP1、CP2・・・CPn、重畳パラメータLPが記録されている。仮想カメラ・パラメータCP1、CP2・・・CPnは、経過時間毎の仮想カメラの視点・視線方向を定めたものである。重畳パラメータLPは、個別二次元動画を重畳する際のパラメータを定めたものである。
【0068】
個別二次元動画生成手段ITG1は、仮想カメラ・パラメータCP1にしたがって、仮想三次元空間データTD1を仮想カメラによって撮像し、個別二次元動画を生成する。同様に、個別二次元動画生成手段ITG2・・・ITGnは、仮想カメラ・パラメータCP2・・・CPnにしたがって、仮想三次元空間データTD2・・・TDnを仮想カメラによって撮像し、それぞれの個別二次元動画を生成する。
【0069】
二次元動画重畳手段62は、重畳パラメータLPにしたがって、生成された各個別二次元動画を重ね合わせて、目的とする二次元動画を生成する。表示制御手段64は、生成された二次元動画を、表示装置(図示せず)に表示するよう制御する。
【0070】
1.2ハードウエア構成
図5に、図4に示す動画生成装置のハードウエア構成例を示す。CPU70には、ワークメモリ72、ビデオメモリ(VRAM)74が接続されている。さらに、VRAM74には、ビデオ・ディスプレイ・プロセッサ(VDP)76が接続されている。VDP76には、ディスプレイ(図示せず)が接続されている。また、ワークメモリ72には、ROM78が接続されている。
【0071】
ROM78には、動画生成プログラム80、仮想三次元空間データTD1・・・TDn、仮想カメラ・パラメータCP1・・・CPn、重畳パラメータLPが記録されている。動画生成プログラム80は、仮想三次元空間データTD1・・・TDn、仮想カメラ・パラメータCP1・・・CPn、重畳パラメータLPとともにワークメモリ72にコピーされた後、実行される。
【0072】
図6に、動画生成プログラム80のフローチャートを示す。CPU70は、
仮想三次元空間データTD1および仮想カメラ・パラメータCP1を指定し、VDP76に与える。VDP76は、仮想三次元空間データTD1のための仮想カメラ・パラメータCP1に基づいて仮想カメラの視点・視線を決定し、仮想三次元空間データTD1によって示される仮想空間を、仮想カメラによって撮像した二次元動画を生成する。
【0073】
1.3動画生成プログラムの処理
図6に、動画生成プログラム80のフローチャートを示す。CPU70は、仮想三次元空間データTD1を、VDP76に対して指定する(ステップS1)。つまり、いずれの仮想三次元空間データを用いるかを指定する。続いて、CPU70は、仮想三次元空間データTD1に対応する仮想カメラ・パラメータCP1を、VDP76に対して指定する(ステップS2)。つまり、CPU70は、仮想カメラパラメータCP1に基づいて、仮想カメラを移動させながら(あるいは固定したままで)撮像を行うように、VDP76に指令を与える。
【0074】
これを受けて、VDP76は、仮想カメラ・パラメータCP1に基づいて、仮想三次元空間を撮像し、個別二次元動画を生成する(ステップS3)。なお、ステップS3は、CPU70ではなく、VDP76によって行われる処理である。
【0075】
仮想カメラ・パラメータCP1の例を、図7に示す。この例では、フレーム番号によって時間経過を表している。まず、フレーム番号1(開始フレーム)における仮想カメラの視点は、XYZ直交座標のx1、y1、z1として定められている。また、視線方向は、X軸周りの回転α1、Y軸周りの回転β1、Z軸周りの回転γ1として定められている。したがって、フレーム番号1の時点においては、仮想カメラの視点はx1、y1、z1、視線方向はα1、β1、γ1に設定することになる。
【0076】
なお、この実施形態では、視点と視線方向をまとめた仮想カメラ・パラメータを設けている。しかし、視点だけの仮想カメラ・パラメータと視線方向だけの仮想カメラパラメータを組み合わせて用いるようにしてもよい。このように、視点と視線方向を分けて用意することにより、たとえば視点(または視線方向)が一定の場合には、視線方向(または視点)の仮想カメラパラメータのみを用いることができ、効率がよい。
【0077】
以上のようにして、VDP76は、仮想三次元空間を仮想カメラによって撮像し、個別二次元動画の1フレーム分の画像を生成する。VDP76は、生成した個別二次元動画の1フレーム画像を、VRAM74に書き込む(ステップS4)。たとえば、図3Aに示すような背景を撮像した個別二次元動画の1フレーム画像が、VRAM74に書き込まれることになる。
【0078】
次に、CPU70は、上記個別二次元動画に重ね合わせて表示すべき他の個別二次元動画があるかどうかを判断する(ステップS5)。あれば、上記のステップS1以下を実行する。これにより、仮想三次元空間データTD2によって表される仮想三次元空間を撮像した個別二次元動画の1フレームが生成される。この際、仮想カメラ・パラメータCP2(詳細は示していない)が用いられる。生成された個別二次元動画の1フレームは、VRAM74に転送される。
【0079】
たとえば、図3Bに示すような人物を撮像した個別二次元動画の1フレーム画像が、VRAM74に書き込まれることになる。これにより、すでに書き込まれていた背景画像の上に、人物が重畳されて上書きされることになる。
【0080】
上記の処理を繰り返し、重畳すべき全ての個別二次元動画の1フレームがVRAM74に書き込まれ、目的とする二次元動画の1フレームが完成することになる。
【0081】
VDP76は、予め定められたフレームレートによって決定される1フレームの時間が経過すると、VRAM74に重畳して書き込まれた二次元動画の1フレームを、ディスプレイ(図示せず)に表示するよう制御する。
【0082】
次に、CPU70は、表示すべきフレーム数に達したかどうかを判断する(ステップS6)。達していなければ、CPU70は、目的とする二次元動画の次のフレーム(ここではフレーム番号2)を生成する処理を行う。つまり、ステップS1以下を実行する。
【0083】
ステップS1、S2において、CPU70は、VDP76に対し、仮想三次元空間データTD1および仮想カメラパラメータCP1を指定し、仮想三次元空間に基づく個別二次元動画の1フレームを生成するように指示する。
【0084】
なお、仮想三次元空間データTD1に変化がない場合には、すでに生成済みの仮想三次元空間をそのまま用いることができる。しかし、時間経過と共に、仮想三次元空間データTD1の内容が変化するように設定されている場合には、新たに仮想三次元空間を指定する必要がある。
【0085】
図7においては、フレーム番号2の時の、仮想カメラの視点、視線方向は定められていない。CPU70は、次のようにして、フレーム番号2の時の仮想カメラの視点、視線方向を決定する。
【0086】
CPU70は、仮想カメラパラメータCP1の次のキーフレームを読み出す。ここでは、フレーム番号18が、次のキーフレームであることがわかる。フレーム番号18の時点においては、仮想カメラの視点はx2、y2、z2、視線方向はα2、β2、γ2に設定することになる。
【0087】
CPU70は、フレーム番号1の視点x1、y1、z1、視線方向α1、β1、γ1からスタートして、フレーム番号18の視点x2、y2、z2、視線方向α2、β2、γ2に至るまで、なめらかに視点・視線方向が変化するように、仮想カメラの視点・視線方向を制御する。すなわち、フレーム番号2〜17の視点・視線方向を補完して算出する。このようにして、フレーム番号2の時の、仮想カメラの視点、視線方向を決定してVDP76に与える。
【0088】
たとえば、図3Aの例では、仮想カメラ30の視点は、フレーム番号2の時点で、矢印50に示す方向に移動した位置となる。以上のようにして、VDP76は、仮想三次元空間を仮想カメラによって撮像し、個別二次元動画の1フレーム分の画像を生成する。VDP76は、生成した個別二次元動画の1フレーム画像を、VRAM74に書き込む(ステップS3)。たとえば、図3Aに示すような背景について、矢印50の方向に移動した位置から撮像した個別二次元動画の1フレーム画像が、VRAM74に書き込まれることになる。
【0089】
次に、CPU70は、上記個別二次元動画に重ね合わせて表示すべき他の個別二次元動画があるかどうかを判断する(ステップS5)。あれば、上記のステップS1以下を実行する。これにより、仮想三次元空間データTD2によって表される仮想三次元空間を撮像した個別二次元動画の1フレームが生成され、VRAM74に書き込まれる。
【0090】
たとえば、図3Bに示すような矢印52の方向に移動する人物を、固定した仮想カメラ32によって撮像した個別二次元動画の1フレーム画像が、VRAM74に書き込まれることになる。これにより、すでに書き込まれていた背景画像の上に、人物が重畳されて上書きされることになる。なお、各個別二次元動画の透過性などについて、CPU70は、図8に示すような重畳パラメータLPにしたがって重ね合わせを行う。
【0091】
図8は、たとえば、透過率の重畳パラメータを示している(その他のパラメータについては省略する)。0%であれば、重ね合わせた時に、下の画像が全く見えなくなる。50%であれば、下の画像が透けて見える状態となる。100%であれば、重ね合わせた画像は見えず、下の画像だけが見えることになる。
【0092】
図において、フレーム番号1〜17までは、仮想カメラVC1の個別二次元動画は0%、仮想カメラVC2の個別二次元動画は0%・・・仮想カメラVCnの個別二次元動画は50%である。フレーム番号18〜80までは、仮想カメラVC1の個別二次元動画は0%、仮想カメラVC2の個別二次元動画は70%・・・仮想カメラVCnの個別二次元動画は50%である。CPU70は、この重畳パラメータLPにしたがって重ね合わせを行う。
【0093】
上記の処理を繰り返し、重畳すべき全ての個別二次元動画の1フレームがVRAM74に書き込まれ、目的とする二次元動画の1フレーム(フレーム番号2)が完成することになる。
【0094】
VDP76は、予め定められたフレームレートによって決定される1フレームの時間が経過すると、VRAM74に重畳して書き込まれた二次元動画の1フレームを、ディスプレイ(図示せず)に表示するよう制御する。
【0095】
以上のようにして、1フレーム毎にディスプレイ上の表示が更新され、目的とする二次元動画が表示されることになる。
【0096】
この実施形態では、仮想三次元空間データTD1〜TDnに基づく個別二次元動画を順次重ね合わせて目的とする二次元動画を得ている。したがって、目的とする二次元動画を作成する際に、各個別二次元動画に対応する仮想三次元空間データTD1〜TDnと仮想カメラ・パラメータCP1〜CPnを、それぞれ分離して制作することができ、効率化を図ることができる。たとえば、背景、人物、図柄に分けて仮想三次元空間データ、仮想カメラ・パラメータを生成することができる。なお、ここで図柄とは、パチンコ遊技機などで用いる当たり/はずれを示す数字をいう。
【0097】
さらに、背景を、複数の二次元動画に対応する仮想三次元空間データ、仮想カメラ・パラメータに分けて制作してもよい。人物、図柄についても同様である。
【0098】
1.4その他の実施形態
(1)上記実施形態では、ROM78に記録された仮想三次元空間データTD1〜TDnの全てについて個別二次元動画を生成し、これらを重ね合わせて目的とする二次元動画を生成するようにしている。しかし、いずれの仮想三次元空間データについて個別二次元動画を生成するかを定めるフラグを設け、フラグの立っている仮想三次元空間データの個別二次元動画のみを重ね合わせて、目的とする二次元動画を得るようにしてもよい。
【0099】
たとえば、ROM78に、図9のようなフラグテーブルを記録することで、これを実現することができる。図において、仮想カメラVC1、VC2・・・VCnは、それぞれ、仮想三次元空間データTD1〜TDnに対応する仮想カメラを表す。
【0100】
CPU70は、このフラグテーブルにしたがって、いずれのタイミングで、いずれの仮想カメラVC1、VC2・・・VCnをONにするか、すなわち、いずれの仮想三次元空間データTD1〜TDnについて個別二次元動画を生成するかを決定する。図9の例であれば、フレーム番号1〜17までは、仮想カメラVC1・・・仮想カメラVCnからの個別二次元動画を重ね合わせて、目的とする二次元動画を生成する。さらに、フレーム番号18〜80までは、仮想カメラVC2・・・仮想カメラVCnからの個別二次元動画を重ね合わせて、目的とする二次元動画を生成する。以後も同様である。
【0101】
なお、フラグがOFFとなっている仮想カメラに対応する個別二次元動画は生成する必要はないが、処理に余裕があるのであれば、フラグがOFFとなっている仮想カメラに対応する個別二次元動画も含めて生成し、重ね合わせの際にフラグがONとなっている仮想カメラに対応する個別二次元動画のみを用いるようにしてもよい。
【0102】
また、上記では、フレームによってフラグのONとOFFを変えるようにしているが、全てのフレームを通じてフラグのON、OFFを固定するようにしてもよい。
【0103】
(2)上記実施形態では、仮想三次元空間データTD1に対応する個別二次元動画、仮想三次元空間データTD2に対応する個別二次元動画・・・仮想三次元空間データTDnに対応する個別二次元動画という順番で、順次重ね合わせを行うようにしている。しかし、どのような順番で重ね合わせを行うかについて、重畳パラメータLPにおいて定めておき、これにしたがった順番にて重ね合わせを行うようにしてもよい。
【0104】
(3)上記実施形態では、重畳パラメータLPに基づいて重ね合わせを行うようにしたが、重畳パラメータLPを設けず、単純に重ね合わせを行うようにしてもよい。
【0105】
(4)上記実施形態では、重畳パラメータLPとして透過率を示したが、重ね合わせの位置、重ね合わせ時の回転角、重ね合わせ時の縮小・拡大率などをパラメータとしてもよい。
【0106】
(5)上記実施形態では、仮想三次元空間毎に仮想カメラを設けているが、全ての仮想三次元空間に共通する一つの仮想カメラを設けるようにしてもよい。
【0107】
(6)上記実施形態では、仮想カメラのフラグがOFFとなっている仮想三次元空間データについての個別二次元動画は生成しないようにしている。しかし、仮想カメラのフラグがOFFとなっている場合、重ね合わせ時の順番において、直前の仮想三次元空間データのための仮想カメラがONであれば(直前の仮想カメラがOFFであれば、ONとなっている仮想カメラまでさかのぼって)、その仮想カメラを用いて個別二次元動画を生成するようにしてもよい。
【0108】
(7)上記実施形態では、仮想複数次元空間として仮想三次元空間を例として説明した。しかし、仮想二次元空間や仮想四次元空間などを仮想カメラにて撮像し、個別二次元動画を生成するようにしてもよい。また、仮想二次元空間を撮像した個別二次元動画と、仮想三次元空間を撮像した個別二次元動画とを重畳して目的とする二次元動画を得るようにしてもよい。
【0109】
(8)上記実施形態では、各仮想複数次元空間を仮想カメラによって撮像して個別二次元動画を得るようにしている。しかし、仮想二次元空間を対象とする場合には、仮想カメラによって撮像を行わず、仮想二次元空間データ自体を個別二次元動画として用いるようにしてもよい。たとえば、仮想二次元空間データとして、他のプログラムなどで生成された動画データを用いる場合には、このようにすることができる。なお、この実施形態では、輪郭情報、テクスチャ情報などを有する動画データを用いるようにしている。
【0110】
図10に、その一例を示す。仮想三次元空間データTD1、TD2、TD4による仮想三次元空間および仮想二次元空間データTD3による仮想二次元空間が設けられている。仮想三次元空間データTD1、TD2、TD4による仮想三次元空間は、仮想カメラ10によって撮像され、個別二次元動画データが生成される。これに対し、仮想二次元空間データTD3は、それ自体が二次元動画データ(輪郭情報、テクスチャ情報などを含むデータ)である。したがって、仮想カメラ10によって撮像しなくとも、これをそのまま個別二次元動画データとすることができる。つまり、仮想三次元空間データTD1、TD2、TD4による仮想三次元空間を撮像した個別二次元動画データと、仮想二次元空間データTD3自体としての個別二次元動画データとを重畳して、目的とする二次元動画を得るようにしている。
【0111】
なお、上記では、一部の個別二次元動画データとして(仮想カメラによる撮像をせず)仮想二次元空間データをそのまま用いるようにしているが、全ての個別二次元動画として仮想二次元空間データをそのまま用いて重畳を行い、目的とする二次元動画を得るようにしてもよい。
【0112】
2.第二の実施形態
2.1動画生成装置の概要
図11、図12を用いて、他の実施形態による動画生成装置の概念を示す。図11は、上記第一の実施形態による個別二次元動画を重ね合わせて目的とする二次元動画を得る処理を示したものである。
【0113】
まず、VDP76により、背景の1フレームが生成されてVRAM74に書き込まれる。次に、人物(キャラクタ)の1フレームが生成されてVRAM74に書き込まれる。次に、図柄の1フレーム1が生成されてVRAM74に書き込まれる。このようにして、目的とする二次元動画の1フレームがRAM74に生成され、フレームレートによって定まる1フレームの時間になると、VDP76によって表示処理が行われる。以上の処理が、フレーム毎に繰り返される。
【0114】
しかしながら、たとえば背景のポリゴン数が多いなどの理由で、その1フレームの生成処理に時間を要すると、VDP76による表示処理までに、VRM74への動画の書き込みが間に合わないことがある。このような事態が生じると、図柄が正しく表示されないこととなり好ましくない。すなわち、VRAM74への画面書き込みが間に合わないと、アニメーション更新のタイミングが狂い、見た目に不自然な動きとなってしまう。
【0115】
そこで、この実施形態では、図12に示すような手法を採用して、上記の問題を解決した。この実施形態では、2つの画面のための領域を有するVRAM74を用いる。まず、背景の1フレームが生成されてVRAM74の1面に書き込まれる。この時に、この背景の1フレームは、VRAM74の2面にもコピーして書き込まれる。次に、人物(キャラクタ)の1フレームが生成されてVRAM74の1面に書き込まれる。次に、図柄の1フレーム1が生成されてVRAM74の1面に書き込まれる。これにより、目的とする二次元動画の1フレームがRAM74の1面に生成され、フレームレートによって定まる1フレームの時間が経過すると、VDP76によってディスプレイ上に表示するよう表示処理が行われる。
【0116】
VRAM74の1面への書き込みが終了すると、VRAM74の2面に予めコピーしておいた背景の1フレームを用いて、次のフレームの二次元動画が生成される。人物(キャラクタ)の1フレームが生成されてVRAM74の2面に書き込まれる、次に、図柄の1フレームが生成されてVRAM74の2面に書き込まれる。つまり、背景については、このタイミングでは、仮想三次元空間に基づく個別二次元動画の生成処理を行わず、前フレームのものをそのまま用いるようにしている。したがって、背景については、2フレームに1回だけ表示する画像の更新が行われることになる。
【0117】
上記のようにすることで、処理負担を大幅に軽減することができる。また、背景動画に変化が少ない場合には、2フレームに1回の書き換えであっても、画像品質の劣化は目立たない。
【0118】
図13に、この実施形態による動画生成装置の機能ブロック図を示す。図4の機能ブロック図と比べると、記録部60に、ハーフフレーム・パラメータHPが記録されている点が異なる。個別二次元動画生成手段ITG1〜ITGnは、このハーフフレーム・パラメータHPにしたがって、個別二次元動画を毎フレームに生成するか(フルフレーム)、2フレームに1回生成するか(ハーフフレーム)を決定する。
【0119】
二次元動画重畳手段62は、ハーフフレームに指定されている個別二次元動画については、1フレーム目は生成された個別二次元動画を用い、2フレーム目は1フレーム目と同じものをコピーして用い、動画の重ね合わせを行う。他の処理については、第一の実施形態と同様である。
【0120】
2.2ハードウエア構成
ハードウエア構成は、第一の実施形態と同様である。ただし、ROM78に、ハーフフレーム・パラメータLPが記録されている点が異なる。また、VRAM74には、少なくとも2画面分の記憶領域が設けられていなければならない。
【0121】
2.3動画生成プログラムの処理
図14に、動作生成プログラム80のフローチャートを示す。CPU70は、ハーフフレーム・パラメータHPを参照し、対象となる仮想三次元空間データがハーフフレームであるかどうかを判断する(ステップS11)。ここで、ハーフフレーム・パラメータHPの例を、図15に示す。
【0122】
ハーフフレーム・パラメータHPが「0」であれば、全ての個別二次元動画をフルフレームにて表示する。「1」であれば、個別二次元動画I1(仮想三次元空間データTD1に対応)をハーフフレーム、他の個別二次元動画をフルフレームにて表示する。「2」であれば、個別二次元動画I1、I2(仮想三次元空間データTD1、TD2に対応)をハーフフレーム、他の個別二次元動画をフルフレームにて表示する。
【0123】
ここでは、ハーフフレーム・パラメータHPが「1」であったとして説明を行う。したがって、CPU70は、仮想三次元空間データTD1に対応する個別二次元動画I1をハーフフレームで表示すべきことがわかる。CPU70は、ステップS12に進む。
【0124】
ステップS12において、CPU70は、現在のフレームにおいて、個別二次元動画を生成すべきかどうかを判断する(ステップS12)。ハーフフレーム処理を行う場合、複数フレームに1回だけ個別二次元動画を生成すればよいからである。ここでは、生成タイミングであるとして説明を進める。したがって、ステップS13に進む。
【0125】
CPU70は、VDP76に対し、仮想三次元空間データTD1に基づいて、個別二次元動画I1を生成し、VRAM72の第1面に記録するよう指示する(ステップS13、図6のステップS1〜S4参照)。さらに、VDP76に対し、上記生成した個別二次元動画I1を、VRAM72の第2面にも記録するように指示する(ステップS14)。
【0126】
ここでは、仮想三次元空間データTD1が背景を表すものであるとする。上記処理の結果、図16Aに示すように、VRAM72の第1面に背景の個別二次元動画が記録される。さらに、図16Bに示すように、VRAM72の第2面に、当該背景の個別二次元動画がコピーされる。
【0127】
次に、CPU70は、重畳すべき他の仮想三次元空間があるかどうかを判断する(ステップS15)。あれば、次の仮想三次元空間データTD2(人物)を対象として、ステップS11以下を実行する。
【0128】
CPU70は、ハーフフレーム・パラメータHPを参照し、対象となる仮想三次元空間データTD2がハーフフレームであるかどうかを判断する(ステップS11)。ここでは、ハーフフレーム・パラメータHPは「1」であるので、仮想三次元空間データTD2は、フルフレームであることがわかる。したがって、CPU70は、ステップS17に進む。
【0129】
ステップS17において、CPU70は、VDP76に対し、仮想三次元空間データTD2に基づいて、個別二次元動画I2を生成し、VRAM72の第1面に上書きして記録するよう指示する(ステップS17、図6のステップS1〜S4参照)。
【0130】
次に、CPU70は、重畳すべき他の仮想三次元空間があるかどうかを判断する(ステップS15)。ここでは、仮想三次元空間データTD3があるので、これを対象として、ステップS11以下を実行する。
【0131】
ハーフフレーム・パラメータHPより、仮想三次元空間データTD3はフルフレームとすべきことがわかるので、CPU70は、ステップS17に進む。
【0132】
ステップS17において、CPU70は、VDP76に対し、仮想三次元空間データTD3に基づいて、個別二次元動画I3を生成し、VRAM72の第1面に上書きして記録するよう指示する(ステップS17、図6のステップS1〜S4参照)。
【0133】
以上のようにして、図16Cに示すように、VRAM72の第1面に、背景、人物、図柄の個別二次元動画が重ねられ、目的とする二次元動画が生成される。表示すべきタイミングになると、VDP76は、VRAM72の第1面の二次元動画を表示する。
【0134】
所定フレームに達していなければ(ステップS16)、CPU70は、次の仮想三次元空間データTD1を対象として、ステップS10以下を実行する。まず、ステップS10において、VRAM74の描画先領域の切り替えを行う。次に、ステップS11において、CPU70は、仮想三次元空間データTD1がハーフフレームであるかどうかを判断する。ここでは、仮想三次元空間データTD1はハーフフレームであるから、ステップS12に進む。
【0135】
ステップS12において、CPU70は、個別二次元動画を生成すべきタイミングであるかどうかを判断する。ここでは、前フレームにて生成しているので、今回のフレームでは生成すべきタイミングでないことがわかる。
【0136】
したがって、CPU70は、ステップS13、S14を実行せず、ステップS15に進む。
【0137】
ステップS15では、CPU70は、重畳すべき他の仮想三次元空間があるかどうかを判断する(ステップS15)。ここでは、仮想三次元空間データTD2があるので、これを対象として、ステップS11以下を実行する。
【0138】
ハーフフレーム・パラメータHPより、仮想三次元空間データTD2はフルフレームとすべきことがわかるので、CPU70は、ステップS17に進む。
【0139】
ステップS17において、CPU70は、VDP76に対し、仮想三次元空間データTD2に基づいて、個別二次元動画I2を生成し、VRAM72の第2面に上書きして記録するよう指示する(ステップS17、図6のステップS1〜S4参照)。なお、VRAM72の第2面には、すでに、個別二次元動画I1が記録されているので、その上に記録されることになる。
【0140】
さらに、ステップS11以下が実行され、CPU70は、VDP76に指示を行って、仮想三次元空間データTD3に基づいて、個別二次元動画I3を生成させ、VRAM72の第2面に上書きして記録させる(ステップS17、図6のステップS1〜S4参照)。
【0141】
以上のようにして、図16Dに示すように、VRAM72の第2面に、背景、人物、図柄の個別二次元動画が重ねられ、目的とする二次元動画が生成される。表示すべきタイミングになると、VDP76は、VRAM72の第2面の二次元動画を表示する。
【0142】
上記のようにして、処理負担が大きく動きの小さい背景についてはハーフフレーム、人物や、図柄についてはフルフレームにて表示を行うことができる。
【0143】
2.4その他の実施形態
(1)上記実施形態では、図15に示すように、画面の奥にある個別二次元動画から所定数の個別二次元動画までをハーフフレームとして設定するようにしている。これにより、処理の迅速化を図っている。
【0144】
しかし、個別二次元動画毎に、ハーフフレームとするかフルフレームとするかを定めるようにしてもよい。この場合には、ハーフフレームにて書き換える個別二次元動画の数だけ記録領域を確保しておく必要がある。たとえば、個別二次元動画I1、個別二次元動画I2、個別二次元動画I3の順で、重畳していくとし、個別二次元動画I1、I3をハーフフレーム、個別二次元動画I2をフルフレームにて更新する場合を、図17を参照して説明する。
【0145】
まず、VRAM72の第一面に個別二次元動画I1が記録される(図17A)。この時、CPU70は、VDP76によって、この個別二次元動画I1を、バッファにコピーさせる。生成された個別二次元動画I2が、VRAM72の第一面に記録される(図17B)。さらに、個別二次元動画I3が、VRAM72の第一面に記録される(図17C)。この時、CPU70は、VDP76に対し、この個別二次元動画I3を、バッファにコピーするよう指示する。このようにして、VRAM72の第一面に1番目のフレームの二次元動画が生成されて、表示される。
【0146】
続いて、個別二次元動画I1は、ハーフフレームであるから、バッファから読み出して、VRAM72の第二面にコピーされる(図17D)。個別二次元動画I2は、フルフレームであるから、生成処理が行われ、VRAM72の第二面に記録される(図17E)。さらに、個別二次元動画I3は、ハーフフレームであるから、バッファから読み出して、VRAM72の第二面にコピーされる(図17D)。このようにして、VRAM72の第二面に2番目のフレームの二次元動画が生成されて、表示される。
【0147】
(2)図18に、示すように、シーンテーブルを記録部60に記録しておき、CPU70が、これを参照して、各個別二次元動画を重畳するようにしてもよい。図18において、レイヤー1は最も奥に配置される個別二次元動画であり、レイヤー2はその手前に配置される個別二次元動画であり、レイヤー3はその手前に配置される個別二次元動画であり、レイヤーNは最も手前に配置される個別二次元動画である。
【0148】
シーン001は最初に表示されるシーン、シーン002は次に表示されるシーン、シーン003はさらにその次に表示されるシーン・・・である。なお、図示していないが、各シーンは、いずれのフレームからいずれのフレームまで表示されるものであるかのタイムラインも記録されている。背景A、背景B、予告1、予告2、リーチ演出などは、それぞれ、個別二次元動画を示している。
【0149】
たとえば、シーン001においては、背景Aのみが表示される。シーン002においては、背景Bのみが表示される。シーン003においては、背景Aに予告1が重畳されて表示される。
【0150】
このように、シーンテーブルを用いることで、表示内容の制御を容易に行うことができる。このように、シーンテーブルは有用であるが、たとえば、図18において、背景Aを背景Cに変更する必要が生じると、シーン001、003、004、007を変更しなければならず、煩雑である。
【0151】
そこで、図19に示すように、「継続」という属性を導入している。「継続」は、当該レイヤーにおける再生を継続するという指示である。図19においては、シーン101(1行目)は、図18のシーン001に対応する。シーン102(2行目)は、シーン002に対応する。
【0152】
次のシーン101(3行目)では、背景Aが設定されている。シーン103(4行目)に「継続」が指示されているので、直前の背景Aが引き継がれる。シーン101と103が、図18のシーン003に対応する。さらに、シーン104(5行目)に「継続」が指示されているので、背景Aが引き継がれる。シーン104は、シーン004に対応する。
【0153】
次のシーン102(6行目)では、背景Bが設定され、続くシーン103では、「継続」が指示されているので、図18のシーン005と同じ効果を達成している。以下、シーン104(7行目)はシーン006に対応し、シーン101(8行目)、105(9行目)はシーン007に対応し、シーン102(10行目)、105(11行目)はシーン008に対応する。
【0154】
図19においては、使用するシーンの種類が5つでよいというメリットがある。また、背景Aを背景Cに変更する場合には、シーン101のみを変更するだけでこれを達成することができる。
【0155】
(3)上記実施形態では、いずれの個別二次元動画をハーフフレームとするかは、予め、記録されたハーフフレーム・パラメータによって決定している。しかし、CPU70が、レンダリング処理などに要する時間を仮想三次元空間データから推測し、処理時間が不足しそうであれば、その不足の程度に応じて、ハーフフレームにて処理する個別二次元動画を増減するようにしてもよい。このようにすれば、ハーフフレーム・パラメータを予め設定しておく必要はない。
【0156】
(4)上記実施形態では、図9に示すように、フレームにより、各仮想カメラVC1、VC2・・・VCnのオン・オフを切り替えるようにしている。しかし、図20に示すように、上記のシーン毎に、カメラのオン・オフを切り替えるようにしてもよい。
【0157】
図20においては、左側に奥の仮想三次元空間、右側に手前の仮想三次元空間が示されている。ここで、仮想カメラ・フラグがONとなっていれば、当該仮想三次元空間データのために設定されているカメラにより、個別二次元動画が撮像される。たとえば、シーン001の背景A−1については、背景A−1の仮想三次元空間のために設定されているカメラにより、個別二次元動画が生成される。
【0158】
また、仮想三次元空間の欄に設定がなされていないもの(「なし」と記述されているもの)については、個別二次元動画が生成されない。シーン003の「なし」となっている部分がその例である。
【0159】
さらに、仮想三次元空間の欄にデータの設定がなされており、カメラがオフとなっているものについては、左側の仮想三次元空間のために設定されているカメラを用いて、撮像が行われる。たとえば、シーン002の「背景D」「OFF」となっている部分がその例であり、背景Dの仮想三次元空間が、背景Bのために設定されているカメラによって撮像される。
【0160】
上記のようにして、各仮想三次元空間を仮想カメラによって撮像した個別二次元画像が生成され、重畳される。
【0161】
なお、この実施形態では、仮想三次元空間が設定されており仮想カメラ・フラグがオフの場合、重ね合わせ時に奥側となる仮想三次元空間の仮想カメラを用いて撮像するようにしている。しかし、図9の例のように、それぞれの仮想三次元空間について、独立して仮想カメラ・フラグを設定するようにしてもよい。
【0162】
(5)なお、仮想カメラ・フラグとしてONとCONTとOFFの3つの状態を示すようにしてもよい。仮想カメラ・フラグが「ON」であれば、対応する仮想三次元空間データのために用意されている仮想カメラを用いて撮像を行う。仮想カメラ・フラグが「OFF」であれば、当該仮想三次元空間データについて撮像を行わない。仮想カメラ・フラグが「CONT」であれば、対応する仮想三次元空間データのために用意されている仮想カメラではなく、直前に用いていた仮想カメラを用いて撮像を行う。
【0163】
また、直前に用いていた仮想カメラではなく、指定された他の仮想三次元空間データのために用意されている仮想カメラを用いるようにしてもよい。
【0164】
(6)また、仮想カメラ・フラグを用いることにより、各仮想三次元空間データに基づく個別二次元動画を合成して所望の動画を得ることができ、また、複数の仮想三次元空間データであっても、同一の仮想カメラを指定することにより同一仮想空間として扱うことができる。
【0165】
(7)図10を用いて説明した例についても、第二の実施形態のように、一部の個別二次元動画をハーフフレームとすることができる。つまり、仮想カメラによる撮像を行わず、仮想二次元空間データを個別二次元動画データとする場合においても、VDP76においてテクスチャ処理などを行わねばならず、処理時間を要する。したがって、仮想二次元空間データを個別二次元動画データとして用いる場合であっても、選択的にハーフフレーム処理を行うメリットがある。
【0166】
(8)第一の実施形態における変形実施形態は、本実施形態においても適用することができる。また、本実施形態における変形実施形態は、第一の実施形態においても適用することができる。
【0167】
3.第三の実施形態
3.1動画データ・パラメータ作成装置
図21に、この発明の一実施形態による動画データ・パラメータ作成装置の機能ブロック図を示す。この装置は、前記第一の実施形態、第二の実施形態の動画生成装置において用いるための仮想三次元空間データ、仮想カメラ・パラメータ、重畳パラメータなどを生成するための装置である。
【0168】
記録部100には、仮想三次元空間データTD1、TD2・・・TDnが記録される。仮想カメラ・パラメータ設定手段PG1、仮想カメラ・パラメータ設定手段PG2・・・仮想カメラ・パラメータ設定手段PGnは、各仮想三次元空間を撮像する仮想カメラのパラメータを設定する。重畳パラメータ設定手段102は、仮想カメラ・パラメータ設定手段PG1、PG2・・・PGnのそれぞれによって設定された仮想カメラ・パラメータによって生成される各個別二次元動画を重畳する際のパラメータを設定するものである。
【0169】
図22に、動画データ・パラメータ作成装置のハードウエア構成を示す。CPU110には、メモリ112、VRAM114、キーボード/マウス120、ハードディスク122が接続されている。VRAM114には、VDP116を介してディスプレイ118が接続されている。
【0170】
図23に、動画データ・パラメータ作成プログラム124のフローチャートを示す。CPU110は、キーボード/マウス120からの操作者による入力に基づき、仮想三次元空間データTD1を生成する(ステップS31)。これは、所定の仮想三次元空間内に、所望のオブジェクトを配置することによって行われる。仮想三次元空間データTD1の生成は、3Dデザインを行うソフトウエアを、動画データ・パラメータ作成プログラム124から呼び出すことによって実現することができる。
【0171】
これにより、たとえば、図3Aに示すような、背景を表現する仮想三次元空間データTD1が生成される。続いて、CPU110は、生成した仮想三次元空間データTD1を、ハードディスク122に記録する(ステップS32)。
【0172】
さらに、CPU70は、キーボード/マウス120からの操作者による入力に基づき、仮想カメラの視点およびその移動、視線方向およびその移動などのパラメータを設定する(ステップS33)。たとえば、図7に示すような仮想カメラ・パラメータを設定する。
【0173】
なお、この設定の際、操作者は、キーボード/マウス120から、設定した仮想カメラによって撮像された個別二次元動画をディスプレイ118に表示するように指令を与えることができる。表示指令を受けたCPU110は、VDP116に対して指令を与え、VDP116は、設定された仮想カメラ・パラメータによって仮想カメラから撮像した個別二次元動画を生成し、VRAM114に所定の間隔(フレームレート)で書き込む。これにより、VDP116は、所定のフレームレートで書き込まれる個別二次元動画を、ディスプレイ118に表示する。
【0174】
上記のようにして、操作者は、当該設定による個別二次元動画をディスプレイ118において確認しながら設定値を決定することができる。
【0175】
上記のようにして、たとえば、図3Aに示すように、仮想カメラを、時間経過とともに矢印50の方向に移動させるように設定することができる。CPU110は、このようにして決定された仮想カメラ・パラメータをハードディスク122に記録する(ステップS34)。
【0176】
さらに、他の仮想三次元空間データについても仮想カメラ・パラメータを生成する(ステップS35)。
【0177】
次に、CPU110は、操作者によるキーボード/マウス120からの指令に応じて、個別二次元動画を重畳する際の重畳パラメータを生成する(ステップS36)。
【0178】
この設定の際、操作者は、キーボード/マウス120から、重畳パラメータに基づいて各個別二次元動画を重畳し、ディスプレイ118に表示するように指令を与えることができる。個別二次元動画の重畳処理は、第一の実施形態、第二の実施形態における処理と同様である。
【0179】
上記のようにして、操作者は、当該重畳パラメータによって重畳した個別二次元動画をディスプレイ118において確認しながら設定値を決定することができる。
【0180】
次に、CPU110は、操作者によるキーボード/マウス120からの指令に応じて、ハーフフレーム・パラメータの生成を行う(ステップS37)。
【0181】
この設定の際、操作者は、キーボード/マウス120から、ハーフフレーム・パラメータに基づいて各個別二次元動画の書き換えを制御し、ディスプレイ118に表示するように指令を与えることができる。ハーフフレーム・パラメータに基づく表示処理は、第一の実施形態、第二の実施形態における処理と同様である。
【0182】
上記のようにして、操作者は、ハーフフレーム・パラメータによって表示処理を行った二次元動画をディスプレイ118において確認しながら設定値を決定することができる。確認の結果、処理負担が大きく、二次元動画が適切に表示されない場合には、ハーフフレームにて処理をする個別二次元動画を増やし、適切な表示がなされるように、ハーフフレーム・パラメータを修正する。
【0183】
このように、仮想三次元空間を複数設け、それぞれの仮想三次元空間に対応して仮想カメラを設けることにより、背景動画の制作と人物動画の制作とを分離して行い、合体させて所望の二次元動画を得ることが可能となる。また、仮想カメラの視点・視線を仮想三次元空間毎に異ならせたり、仮想カメラの移動を仮想三次元空間毎に異ならせることにより、複雑な動きのある二次元動画も容易に生成することができる。
【0184】
なお、この動画データ・パーメータ作成装置では、フラグテーブルやシーンテーブルを生成することもできる。
【0185】
3.2その他の実施形態
上記実施形態では、動画データ・パラメータ作成プログラム124において、仮想カメラの視点およびその移動、視線方向およびその移動などのパラメータを設定するようにしている。しかし、各仮想三次元空間データTD1、TD2・・・TDnの生成時に、併せて、仮想カメラの視点およびその移動、視線方向およびその移動を決定し、これを予めハードディスク122に記録するようにしてもよい。
【0186】
この場合、たとえば、動画データ・パラメータ作成プログラム124のフローチャートは、図24に示すようなものとなる。なお、この実施形態では、図25に示すように、1つのシーンに関するデータSN1として、仮想三次元空間データTD11、仮想カメラ視点・視線方向データEP11、仮想三次元空間データTD12、仮想カメラ視点・視線方向データEP12・・・仮想三次元空間データTD1n、仮想カメラ視点・視線方向データEP1nをまとめて記録している。他のシーンに関するデータSN2・・・についても同様である。
【0187】
CPU110は、操作者の入力に応じ、上記シーン毎のデータSN1、SN2のそれぞれを構成する仮想三次元空間データ毎に、仮想カメラ・フラグを設定する(ステップS51)。たとえば、図20に示すように、各シーンの仮想三次元空間毎に、仮想カメラ・フラグのオンとオフを設定する。
【0188】
続いて、CPU110は、操作者の入力に応じ、重畳パラメータLPの設定を行う(ステップS52)。さらに、CPU110は、操作者の入力に応じ、ハーフフレームパラメータの設定を行う(ステップS53)。
【0189】
全てのシーンについて、上記ステップS51〜S53が実行されると、CPU110は、設定された上記各パラメータにしたがって、動画の再生を行う(ステップS54)。動画再生処理は、第一の実施形態、第二の実施形態に示した処理と同様である。
【0190】
再生された動画を見た操作者が、修正要の入力を行うと、CPU110は、ステップS51以下を繰り返し実行する。操作者が、修正不要の入力を行うと、CPU110は、ステップS51〜S53にて設定された各パラメータを、ハードディスク122に記録する(ステップS56)。
【技術分野】
【0001】
この発明は、仮想三次元空間に設定した視点から見た二次元動画を生成する装置に関するものである。
【背景技術】
【0002】
仮想三次元空間にオブジェクトを配置し、これを仮想的なカメラによって撮像し、二次元動画を生成する方法がある(たとえば、特許文献1)。この方法によれば、カメラの視点や視線を変更することで、様々な二次元動画を生成することができる。
【0003】
ただし、仮想三次元空間のオブジェクトを仮想カメラにて撮像し、二次元動画を生成するためにはレンダリング処理を行わねばならず、処理負担が大きかった。したがって、画面書き換えを早くすると(すなわちフレームレートを上げると)上記処理が間に合わないため、画面全体のフレームレートを落とさなければならず、動画品質が劣化する場合もあった。
【0004】
このような問題を解決するため、特許文献1や特許文献2では、高いフレームレートで表示する特定のオブジェクトを設け、他のオブジェクトについては低いフレームレートで表示を行う技術が開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2008−229170号公報
【特許文献2】特開2006−164168号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上記のような従来技術においては、次のような問題点があった。
【0007】
仮想三次元空間に設定した視点から見た二次元動画を生成する場合、仮想三次元空間における各オブジェクトの配置や移動と、視点位置および視線方向を精度よく制御しなければ、所望の二次元動画を得ることができない。たとえば、図1に示すように、画面上において背景2が左から右へ移動し、人物4が画面の中央において上から下へ移動するような二次元動画6を生成する場合について考える。
【0008】
このような二次元動画6を生成しようとする場合、図2に示すような背景が立体的に配置された仮想三次元空間8を設定し、仮想カメラ10を矢印12の方向に移動させながら撮像して二次元動画を生成する。なお、ここで、カメラを固定し仮想三次元空間を移動させると処理負担が大きくなるので、仮想カメラ10を移動させるようにしている。さらに、この仮想三次元空間8において、移動する仮想カメラ10とともに矢印12の方向に移動し、しかも、その移動につれて上から下へ移動する人物4をオブジェクトとして生成しなければならない。
【0009】
また、レンダリング処理などに起因した処理負担から、画面のフレームレートを落とさなければならず、動画品質が劣化するという問題については、前述のように、特定のオブジェクトのみ高いフレームレートで表示を行うという解決が提案されている(特許文献1、特許文献2)。
【0010】
しかし、特許文献1や特許文献2の技術を用いた場合、仮想三次元空間に配置されたオブジェクト毎に、どのようなフレームレートで表示を行うのかを設定しなければならず、作業が繁雑であった。
【0011】
この発明は、上記のような問題点を解決し、仮想三次元空間を仮想カメラによって撮像して二次元動画を生成する際に、その処理の煩雑さを回避することのできる装置を提供することを目的とする。
【課題を解決するための手段】
【0012】
(1)(2)この発明に係る動画生成装置は、オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データと、仮想カメラの撮像条件を定める仮想カメラ・パラメータとを記録する記録部と、前記仮想カメラ・パラメータに基づいて、前記仮想複数次元空間のそれぞれを、前記複数の仮想カメラによって撮像した個別二次元動画を生成する個別二次元動画生成手段と、前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成する二次元動画重畳手段と、生成された二次元動画を、所定のフレームレートにて表示する表示制御手段とを備えている。
【0013】
したがって、この装置において表示するための二次元動画を作成する際に、複数の仮想複数次元空間を撮像した個別二次元動画を重畳して行うことができ、作成効率がよい。
【0014】
(3)この発明に係る動画生成装置は、仮想複数次元空間が、少なくとも仮想三次元空間または仮想二次元空間を含むことを特徴としている。
【0015】
したがって、仮想三次元空間または仮想二次元空間に基づく動画を生成することができる。
【0016】
(4)この発明に係る動画生成装置は、個別二次元動画生成手段が、前記仮想カメラによって撮像した個別二次元動画に加えて、前記仮想カメラを用いずに、前記仮想複数次元空間である仮想二次元空間に基づいて個別二次元動画を生成することを特徴としている。
【0017】
したがって、仮想カメラが設定された仮想複数次元空間による個別二次元動画と、仮想カメラが設定されていない仮想二次元空間による個別二次元動画を重ね合わせた二次元動画を生成することができる。
【0018】
(5)この発明に係る動画生成装置は、記録部には、前記仮想複数次元空間を前記仮想カメラによって撮像した個別二次元動画を重ね合わせる際の条件を定める重畳パラメータが記録されており、二次元動画重畳手段は、前記重畳パラメータに基づいて、個別二次元動画を重ね合わせることを特徴としている。
【0019】
したがって、重畳パラメータにより重ね合わせ時の条件などを設定することができる。
【0020】
(6)この発明に係る動画生成装置は、仮想カメラおよび前記仮想カメラ・パラメータは、仮想複数次元空間毎に設けられており、仮想複数次元空間毎に設けられた前記各仮想カメラ・パラメータは、少なくとも異なる視点または異なる視線を有することを特徴としている。
【0021】
したがって、この装置において表示するための二次元動画を作成する際に、仮想複数次元空間毎に異なる視点などを設定して、複雑な二次元動画を容易に作成することができる。
【0022】
(7)この発明に係る動画生成装置は、各仮想カメラ・パラメータは、対応する各仮想複数次元空間に対して、前記各仮想カメラが、異なる動きを行って撮像を行うよう設定されることを特徴としている。
【0023】
したがって、この装置において表示するための二次元動画を作成する際に、仮想複数次元空間毎に異なるカメラの動きを設定して、複雑な二次元動画を容易に作成することができる。
【0024】
(8)この発明に係る動画生成装置は、記録部は、前記各仮想カメラをオンにするかオフにするかを設定する仮想カメラ・フラグを記録しており、各二次元動画重畳手段は、前記仮想カメラ・フラグの内容に基づいて、前記二次元動画重畳手段が各個別二次元動画を重畳する際に、当該個別二次元動画を重畳するか否かを制御することを特徴としている。
【0025】
したがって、この装置において表示するための二次元動画を作成する際に、カメラ・フラグをオンまたはオフするだけで、容易に所望の二次元動画を得ることができる。
【0026】
(9)この発明に係る動画生成装置は、記録部は、前記各仮想カメラをオンにするかオフにするかを設定する仮想カメラ・フラグを記録しており、各個別二次元動画生成手段は、前記仮想カメラ・フラグの内容に基づいて、対応する前記個別二次元動画を生成するか否かを制御することを特徴としている。
【0027】
したがって、この装置において表示するための二次元動画を作成する際に、カメラ・フラグをオンまたはオフするだけで、容易に所望の二次元動画を得ることができる。
【0028】
(10)この発明に係る動画生成装置は、個別二次元動画生成手段は、所定の時間間隔で前記個別二次元動画を生成し、前記記録部は、前記各個別二次元動画を、前記所定時間間隔に合致するように生成するか、前記所定時間間隔の整数倍に合致するように生成するかを定めるハーフフレーム・パラメータを記録しており、前記個別二次元動画生成手段は、ハーフフレーム・パラメータにしたがって、前記個別二次元動画を生成し、前記二次元動画生成手段は、対象となる所定時間間隔のために生成された前記個別二次元動画が存在する場合にはこれを用い、存在しない場合に前の所定時間間隔のために生成された前記個別二次元動画を用いて、目的とする二次元動画を生成することを特徴としている。
【0029】
したがって、表示品質を維持しつつ、処理速度を向上させることができる。
【0030】
(11)この発明に係る動画生成装置は、目的とする二次元動画は、前記個別二次元動画を、奥から手前に順次重ねたものとして構成され、前記時間間隔に整数倍に合致するよう生成される前記所定の個別二次元動画は、前記奥から所定番目までの個別二次元動画であることを特徴としている。
【0031】
したがって、重畳処理を容易に行うことができる。
【0032】
(12)この発明に係る動画生成装置は、重畳された個別二次元動画の組み合わせをシーンとして定義し、当該シーンの連続によってフローを定義して記録する定義部と、定義部に記録されたフローに含まれるシーンを順次読み出して、前記個別二次元動画生成手段、前記二次元動画重畳手段、前記表示制御手段により、二次元動画を表示する制御を行わせるフロー制御手段とをさらに備え、前記シーンの定義において、シーンを構成する個別二次元動画を指定する際に、先行するシーンと同じ個別二次元動画を用いる指示が含まれることを特徴としている。
【0033】
したがって、シーンを構成する個別二次元動画に変更があった場合であっても、対応が容易である。
【0034】
(13)この発明に係る動画生成装置は、重畳された個別二次元動画の組み合わせをシーンとして定義し、当該シーンの連続によってフローを定義して記録する定義部と、定義部に記録されたフローに含まれるシーンを順次読み出して、前記個別二次元動画生成手段、前記二次元動画重畳手段、前記表示制御手段により、二次元動画を表示する制御を行わせるフロー制御手段とをさらに備え、前記記録部は、前記シーン毎、前記仮想複数次元空間データ毎に、各仮想カメラをオンにするかオフにするかを設定する仮想カメラ・フラグを記録しており、前記個別二次元動画生成手段は、前記仮想カメラ・フラグがオンである場合には、対応する当該仮想複数次元空間データを当該仮想カメラによって撮像し、前記仮想カメラ・フラグがオフである場合には、対応する仮想複数次元空間データを、他の仮想複数次元空間データのための仮想カメラによって撮像することを特徴としている。
【0035】
したがって、シーン毎に仮想カメラ・フラグを設定し、当該仮想三次元空間データに対する固有の仮想カメラを用いるか、他の仮想三次元空間データに対する仮想カメラを用いるかを設定することができる。
【0036】
(14)この発明に係る動画生成装置は、オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データと、仮想カメラの撮像条件を定める仮想カメラ・パラメータと、前記仮想複数次元空間を前記仮想カメラによって撮像した個別二次元動画を重ね合わせる際の条件を定める重畳パラメータとを記録する記録部を有するコンピュータが動画を生成する方法であって、前記仮想カメラ・パラメータに基づいて、前記仮想複数次元空間のそれぞれを、前記複数の仮想カメラによって撮像した個別二次元動画を生成し、前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成し、生成された二次元動画を、所定のフレームレートにて表示することを特徴としている。
【0037】
したがって、この装置において表示するための二次元動画を作成する際に、複数の仮想複数次元空間を撮像した個別二次元動画を重畳して行うことができ、作成効率がよい。
【0038】
(15)(16)この発明に係る動画生成装置は、オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部と、前記仮想複数次元空間のそれぞれに基づいて個別二次元動画を生成する個別二次元動画生成手段と、前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成する二次元動画重畳手段と、生成された二次元動画を、所定のフレームレートにて表示する表示制御手段とを備えたことを特徴としている。
【0039】
したがって、この装置において表示するための二次元動画を作成する際に、複数の仮想複数次元空間に対応する個別二次元動画を重畳して行うことができ、作成効率がよい。
【0040】
(17)この発明に係る動画生成装置は、仮想複数次元空間は、仮想二次元空間であることを特徴としている。
【0041】
したがって、仮想二次元空間に基づく動画を生成することができる。
【0042】
(18)この発明に係る動画生成装置は、個別二次元動画生成手段は、所定の時間間隔で前記個別二次元動画を生成し、前記記録部は、前記各個別二次元動画を、前記所定時間間隔に合致するように生成するか、前記所定時間間隔の整数倍に合致するように生成するかを定めるハーフフレーム・パラメータを記録しており、前記個別二次元動画生成手段は、ハーフフレーム・パラメータにしたがって、前記個別二次元動画を生成し、前記二次元動画生成手段は、対象となる所定時間間隔のために生成された前記個別二次元動画が存在する場合にはこれを用い、存在しない場合に前の所定時間間隔のために生成された前記個別二次元動画を用いて、目的とする二次元動画を生成することを特徴としている。
【0043】
したがって、表示品質を維持しつつ、処理速度を向上させることができる。
【0044】
(19)この発明に係る動画生成装置は、目的とする二次元動画は、前記個別二次元動画を、奥から手前に順次重ねたものとして構成され、前記時間間隔に整数倍に合致するよう生成される前記所定の個別二次元動画は、前記奥から所定番目までの個別二次元動画であることを特徴としている。
【0045】
したがって、重畳処理を容易に行うことができる。
【0046】
(20)この発明に係る動画生成装置は、重畳された個別二次元動画の組み合わせをシーンとして定義し、当該シーンの連続によってフローを定義して記録する定義部と、定義部に記録されたフローに含まれるシーンを順次読み出して、前記個別二次元動画生成手段、前記二次元動画重畳手段、前記表示制御手段により、二次元動画を表示する制御を行わせるフロー制御手段とをさらに備え、前記シーンの定義において、シーンを構成する個別二次元動画を指定する際に、先行するシーンと同じ個別二次元動画を用いる指示が含まれることを特徴としている。
【0047】
したがって、シーンを構成する個別二次元動画に変更があった場合であっても、対応が容易である。
【0048】
(21)この発明に係る動画生成方法は、オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データと前記仮想複数次元空間を前記仮想カメラによって撮像した個別二次元動画を重ね合わせる際の条件を定める重畳パラメータとを記録する記録部を有するコンピュータが動画を生成する方法であって、前記仮想複数次元空間のそれぞれに基づいて個別二次元動画を生成し、前記重畳パラメータに基づいて、前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成し、生成された二次元動画を、所定のフレームレートにて表示することを特徴としている。
【0049】
したがって、シーンを構成する個別二次元動画に変更があった場合であっても、対応が容易である。
【0050】
(22)(23)この発明に係る動画データ・パラメータ作成方法は、オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部と、前記複数の仮想複数次元空間を撮像する仮想カメラの撮像パラメータを設定するための仮想カメラ・パラメータ設定手段と、前記複数の仮想複数次元空間を仮想カメラによって撮像した各個別二次元動画を重畳する際のパラメータを設定する重畳パラメータ設定手段とを備えたことを特徴としている。
【0051】
したがって、二次元動画を作成する際に、複数の仮想三次元空間を撮像した個別二次元動画を重畳して行うことができ、作成効率がよい。
【0052】
(24)この発明に係る動画データ・パラメータ作成方法は、オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部を有するコンピュータが、動画データ・パラメータを作成する方法であって、前記コンピュータは、前記複数の仮想複数次元空間を撮像する仮想カメラの撮像パラメータを設定して記録し、前記複数の仮想複数次元空間を仮想カメラによって撮像した各個別二次元動画を重畳する際のパラメータを設定して記録することを特徴としている。
【0053】
したがって、二次元動画を作成する際に、複数の仮想三次元空間を撮像した個別二次元動画を重畳して行うことができ、作成効率がよい。
【0054】
「記録部」は、仮想複数次元空間データや仮想カメラ・パラメータなどを記録することの可能なROM、メモリ、ハードディスクなどをいい、実施形態においては、ROM78がこれに対応する。
【0055】
「個別二次元動画生成手段」は、実施形態においては、VDP76によって実行されるステップS3がこれに対応する。
【0056】
「二次元動画重畳手段」は、実施形態においては、VDP76によって実行されるステップS4がこれに対応する。
【0057】
「表示制御手段」は、実施形態においては、VDP76によるディスプレイへの表示処理がこれに対応する。
【0058】
「二次元動画重畳手段」は、実施形態においては、図8の重畳パラメータを用いたVDP76による重ね合わせ処理がこれに対応する。
【0059】
「仮想カメラ・パラメータ設定手段」は、実施形態においては、ステップS33やステップS51がこれに対応する。
【0060】
「重畳パラメータ設定手段」は、実施形態においては、ステップS36やステップS52がこれに対応する。
【0061】
「プログラム」とは、CPU等により直接実行可能なプログラムだけでなく、ソース形式のプログラム、圧縮処理がされたプログラム、暗号化されたプログラム等を含む概念である。
【図面の簡単な説明】
【0062】
【図1】仮想三次元空間を撮像して、二次元動画を生成するための処理を説明する図である。
【図2】仮想三次元空間を撮像して、二次元動画を生成するための処理を説明する図である。
【図3】本発明の一実施形態による動画生成装置において再生する二次元動画の内容を説明するための図である。
【図4】本発明の一実施形態による動画生成装置の機能ブロック図である。
【図5】図4の動画生成装置のハードウエア構成を示す図である。
【図6】動画生成プログラム80のフローチャートである。
【図7】仮想カメラ・パラメータCP1の例を示す図である。
【図8】重畳パラメータの例を示す図である。
【図9】フラグ・テーブルの例を示す図である。
【図10】仮想カメラを用いずに、仮想二次元空間データをそのまま個別二次元動画として用いる場合の例を示す図である。
【図11】フルフレームにおける、個別二次元動画の重畳処理を示す図である。
【図12】ハーフフレームにおける、個別二次元動画の重畳処理を示す図である。
【図13】他の実施形態による動画生成装置の機能ブロック図である。
【図14】動画生成プログラム80のフローチャートである。
【図15】ハーフフレーム・パラメータの例である。
【図16】フルフレームとハーフレームが混在する場合の表示処理を示す図である。
【図17】フルフレームとハーフレームが混在する場合の表示処理を示す図である。
【図18】シーンテーブルの例である。
【図19】他の実施形態によるシーンテーブルの例である。
【図20】仮想三次元空間毎、シーン毎に仮想カメラ・フラグを設定した場合の実施形態を示す図である。
【図21】動画データ・パラメータ作成装置の機能ブロック図である。
【図22】動画データ・パラメータ作成装置のハードウエア構成を示す図である。
【図23】動画データ・パラメータ作成プログラム124のフローチャートである。
【図24】他の実施形態による、動画データ・パラメータ作成プログラムのフローチャートである。
【図25】シーン毎に仮想三次元空間データと仮想カメラ視点・視線方向データを記録した状態を示す図である。
【発明を実施するための形態】
【0063】
1.第一の実施形態
1.1動画生成装置の概要
図3に、この発明の一実施形態による動画生成装置の概念図を示す。この実施形態では、図3Aおよび図3Bに示すように、2つの仮想三次元空間20、22を設けている。
【0064】
図3Aに示す仮想三次元空間20には、多数のオブジェクトからなる背景40が配置されている。仮想三次元空間20には、仮想カメラ30が配置され、矢印50の方向に移動しながら撮像を行う。したがって、仮想カメラ30によって生成される個別二次元動画は、背景40が、左から右へ移動したものとなる。
【0065】
図3Bに示す仮想三次元空間22には、多数のオブジェクトからなる人物42が配置されている。仮想三次元空間22には、仮想カメラ32が固定して配置されている。人物42は、矢印52の方向に移動する。したがって、仮想カメラ32によって生成される個別二次元動画は、人物42が、上から下へ移動したものとなる。
【0066】
仮想三次元空間20に対応する個別二次元動画と、仮想三次元空間22に対応する個別二次元動画を、時間的なタイミングを合致させつつ重ね合わせることにより、目的とする二次元動画を生成することができる。ここでは、背景が左から右へ移動しつつ、人物が画面中央にて上から下へ移動するような二次元動画を得ることができる。
【0067】
図4に、この実施形態による動画生成装置の機能ブロック図を示す。記録部60には、仮想三次元空間データTD1、TD2・・・TDn、仮想カメラ・パラメータCP1、CP2・・・CPn、重畳パラメータLPが記録されている。仮想カメラ・パラメータCP1、CP2・・・CPnは、経過時間毎の仮想カメラの視点・視線方向を定めたものである。重畳パラメータLPは、個別二次元動画を重畳する際のパラメータを定めたものである。
【0068】
個別二次元動画生成手段ITG1は、仮想カメラ・パラメータCP1にしたがって、仮想三次元空間データTD1を仮想カメラによって撮像し、個別二次元動画を生成する。同様に、個別二次元動画生成手段ITG2・・・ITGnは、仮想カメラ・パラメータCP2・・・CPnにしたがって、仮想三次元空間データTD2・・・TDnを仮想カメラによって撮像し、それぞれの個別二次元動画を生成する。
【0069】
二次元動画重畳手段62は、重畳パラメータLPにしたがって、生成された各個別二次元動画を重ね合わせて、目的とする二次元動画を生成する。表示制御手段64は、生成された二次元動画を、表示装置(図示せず)に表示するよう制御する。
【0070】
1.2ハードウエア構成
図5に、図4に示す動画生成装置のハードウエア構成例を示す。CPU70には、ワークメモリ72、ビデオメモリ(VRAM)74が接続されている。さらに、VRAM74には、ビデオ・ディスプレイ・プロセッサ(VDP)76が接続されている。VDP76には、ディスプレイ(図示せず)が接続されている。また、ワークメモリ72には、ROM78が接続されている。
【0071】
ROM78には、動画生成プログラム80、仮想三次元空間データTD1・・・TDn、仮想カメラ・パラメータCP1・・・CPn、重畳パラメータLPが記録されている。動画生成プログラム80は、仮想三次元空間データTD1・・・TDn、仮想カメラ・パラメータCP1・・・CPn、重畳パラメータLPとともにワークメモリ72にコピーされた後、実行される。
【0072】
図6に、動画生成プログラム80のフローチャートを示す。CPU70は、
仮想三次元空間データTD1および仮想カメラ・パラメータCP1を指定し、VDP76に与える。VDP76は、仮想三次元空間データTD1のための仮想カメラ・パラメータCP1に基づいて仮想カメラの視点・視線を決定し、仮想三次元空間データTD1によって示される仮想空間を、仮想カメラによって撮像した二次元動画を生成する。
【0073】
1.3動画生成プログラムの処理
図6に、動画生成プログラム80のフローチャートを示す。CPU70は、仮想三次元空間データTD1を、VDP76に対して指定する(ステップS1)。つまり、いずれの仮想三次元空間データを用いるかを指定する。続いて、CPU70は、仮想三次元空間データTD1に対応する仮想カメラ・パラメータCP1を、VDP76に対して指定する(ステップS2)。つまり、CPU70は、仮想カメラパラメータCP1に基づいて、仮想カメラを移動させながら(あるいは固定したままで)撮像を行うように、VDP76に指令を与える。
【0074】
これを受けて、VDP76は、仮想カメラ・パラメータCP1に基づいて、仮想三次元空間を撮像し、個別二次元動画を生成する(ステップS3)。なお、ステップS3は、CPU70ではなく、VDP76によって行われる処理である。
【0075】
仮想カメラ・パラメータCP1の例を、図7に示す。この例では、フレーム番号によって時間経過を表している。まず、フレーム番号1(開始フレーム)における仮想カメラの視点は、XYZ直交座標のx1、y1、z1として定められている。また、視線方向は、X軸周りの回転α1、Y軸周りの回転β1、Z軸周りの回転γ1として定められている。したがって、フレーム番号1の時点においては、仮想カメラの視点はx1、y1、z1、視線方向はα1、β1、γ1に設定することになる。
【0076】
なお、この実施形態では、視点と視線方向をまとめた仮想カメラ・パラメータを設けている。しかし、視点だけの仮想カメラ・パラメータと視線方向だけの仮想カメラパラメータを組み合わせて用いるようにしてもよい。このように、視点と視線方向を分けて用意することにより、たとえば視点(または視線方向)が一定の場合には、視線方向(または視点)の仮想カメラパラメータのみを用いることができ、効率がよい。
【0077】
以上のようにして、VDP76は、仮想三次元空間を仮想カメラによって撮像し、個別二次元動画の1フレーム分の画像を生成する。VDP76は、生成した個別二次元動画の1フレーム画像を、VRAM74に書き込む(ステップS4)。たとえば、図3Aに示すような背景を撮像した個別二次元動画の1フレーム画像が、VRAM74に書き込まれることになる。
【0078】
次に、CPU70は、上記個別二次元動画に重ね合わせて表示すべき他の個別二次元動画があるかどうかを判断する(ステップS5)。あれば、上記のステップS1以下を実行する。これにより、仮想三次元空間データTD2によって表される仮想三次元空間を撮像した個別二次元動画の1フレームが生成される。この際、仮想カメラ・パラメータCP2(詳細は示していない)が用いられる。生成された個別二次元動画の1フレームは、VRAM74に転送される。
【0079】
たとえば、図3Bに示すような人物を撮像した個別二次元動画の1フレーム画像が、VRAM74に書き込まれることになる。これにより、すでに書き込まれていた背景画像の上に、人物が重畳されて上書きされることになる。
【0080】
上記の処理を繰り返し、重畳すべき全ての個別二次元動画の1フレームがVRAM74に書き込まれ、目的とする二次元動画の1フレームが完成することになる。
【0081】
VDP76は、予め定められたフレームレートによって決定される1フレームの時間が経過すると、VRAM74に重畳して書き込まれた二次元動画の1フレームを、ディスプレイ(図示せず)に表示するよう制御する。
【0082】
次に、CPU70は、表示すべきフレーム数に達したかどうかを判断する(ステップS6)。達していなければ、CPU70は、目的とする二次元動画の次のフレーム(ここではフレーム番号2)を生成する処理を行う。つまり、ステップS1以下を実行する。
【0083】
ステップS1、S2において、CPU70は、VDP76に対し、仮想三次元空間データTD1および仮想カメラパラメータCP1を指定し、仮想三次元空間に基づく個別二次元動画の1フレームを生成するように指示する。
【0084】
なお、仮想三次元空間データTD1に変化がない場合には、すでに生成済みの仮想三次元空間をそのまま用いることができる。しかし、時間経過と共に、仮想三次元空間データTD1の内容が変化するように設定されている場合には、新たに仮想三次元空間を指定する必要がある。
【0085】
図7においては、フレーム番号2の時の、仮想カメラの視点、視線方向は定められていない。CPU70は、次のようにして、フレーム番号2の時の仮想カメラの視点、視線方向を決定する。
【0086】
CPU70は、仮想カメラパラメータCP1の次のキーフレームを読み出す。ここでは、フレーム番号18が、次のキーフレームであることがわかる。フレーム番号18の時点においては、仮想カメラの視点はx2、y2、z2、視線方向はα2、β2、γ2に設定することになる。
【0087】
CPU70は、フレーム番号1の視点x1、y1、z1、視線方向α1、β1、γ1からスタートして、フレーム番号18の視点x2、y2、z2、視線方向α2、β2、γ2に至るまで、なめらかに視点・視線方向が変化するように、仮想カメラの視点・視線方向を制御する。すなわち、フレーム番号2〜17の視点・視線方向を補完して算出する。このようにして、フレーム番号2の時の、仮想カメラの視点、視線方向を決定してVDP76に与える。
【0088】
たとえば、図3Aの例では、仮想カメラ30の視点は、フレーム番号2の時点で、矢印50に示す方向に移動した位置となる。以上のようにして、VDP76は、仮想三次元空間を仮想カメラによって撮像し、個別二次元動画の1フレーム分の画像を生成する。VDP76は、生成した個別二次元動画の1フレーム画像を、VRAM74に書き込む(ステップS3)。たとえば、図3Aに示すような背景について、矢印50の方向に移動した位置から撮像した個別二次元動画の1フレーム画像が、VRAM74に書き込まれることになる。
【0089】
次に、CPU70は、上記個別二次元動画に重ね合わせて表示すべき他の個別二次元動画があるかどうかを判断する(ステップS5)。あれば、上記のステップS1以下を実行する。これにより、仮想三次元空間データTD2によって表される仮想三次元空間を撮像した個別二次元動画の1フレームが生成され、VRAM74に書き込まれる。
【0090】
たとえば、図3Bに示すような矢印52の方向に移動する人物を、固定した仮想カメラ32によって撮像した個別二次元動画の1フレーム画像が、VRAM74に書き込まれることになる。これにより、すでに書き込まれていた背景画像の上に、人物が重畳されて上書きされることになる。なお、各個別二次元動画の透過性などについて、CPU70は、図8に示すような重畳パラメータLPにしたがって重ね合わせを行う。
【0091】
図8は、たとえば、透過率の重畳パラメータを示している(その他のパラメータについては省略する)。0%であれば、重ね合わせた時に、下の画像が全く見えなくなる。50%であれば、下の画像が透けて見える状態となる。100%であれば、重ね合わせた画像は見えず、下の画像だけが見えることになる。
【0092】
図において、フレーム番号1〜17までは、仮想カメラVC1の個別二次元動画は0%、仮想カメラVC2の個別二次元動画は0%・・・仮想カメラVCnの個別二次元動画は50%である。フレーム番号18〜80までは、仮想カメラVC1の個別二次元動画は0%、仮想カメラVC2の個別二次元動画は70%・・・仮想カメラVCnの個別二次元動画は50%である。CPU70は、この重畳パラメータLPにしたがって重ね合わせを行う。
【0093】
上記の処理を繰り返し、重畳すべき全ての個別二次元動画の1フレームがVRAM74に書き込まれ、目的とする二次元動画の1フレーム(フレーム番号2)が完成することになる。
【0094】
VDP76は、予め定められたフレームレートによって決定される1フレームの時間が経過すると、VRAM74に重畳して書き込まれた二次元動画の1フレームを、ディスプレイ(図示せず)に表示するよう制御する。
【0095】
以上のようにして、1フレーム毎にディスプレイ上の表示が更新され、目的とする二次元動画が表示されることになる。
【0096】
この実施形態では、仮想三次元空間データTD1〜TDnに基づく個別二次元動画を順次重ね合わせて目的とする二次元動画を得ている。したがって、目的とする二次元動画を作成する際に、各個別二次元動画に対応する仮想三次元空間データTD1〜TDnと仮想カメラ・パラメータCP1〜CPnを、それぞれ分離して制作することができ、効率化を図ることができる。たとえば、背景、人物、図柄に分けて仮想三次元空間データ、仮想カメラ・パラメータを生成することができる。なお、ここで図柄とは、パチンコ遊技機などで用いる当たり/はずれを示す数字をいう。
【0097】
さらに、背景を、複数の二次元動画に対応する仮想三次元空間データ、仮想カメラ・パラメータに分けて制作してもよい。人物、図柄についても同様である。
【0098】
1.4その他の実施形態
(1)上記実施形態では、ROM78に記録された仮想三次元空間データTD1〜TDnの全てについて個別二次元動画を生成し、これらを重ね合わせて目的とする二次元動画を生成するようにしている。しかし、いずれの仮想三次元空間データについて個別二次元動画を生成するかを定めるフラグを設け、フラグの立っている仮想三次元空間データの個別二次元動画のみを重ね合わせて、目的とする二次元動画を得るようにしてもよい。
【0099】
たとえば、ROM78に、図9のようなフラグテーブルを記録することで、これを実現することができる。図において、仮想カメラVC1、VC2・・・VCnは、それぞれ、仮想三次元空間データTD1〜TDnに対応する仮想カメラを表す。
【0100】
CPU70は、このフラグテーブルにしたがって、いずれのタイミングで、いずれの仮想カメラVC1、VC2・・・VCnをONにするか、すなわち、いずれの仮想三次元空間データTD1〜TDnについて個別二次元動画を生成するかを決定する。図9の例であれば、フレーム番号1〜17までは、仮想カメラVC1・・・仮想カメラVCnからの個別二次元動画を重ね合わせて、目的とする二次元動画を生成する。さらに、フレーム番号18〜80までは、仮想カメラVC2・・・仮想カメラVCnからの個別二次元動画を重ね合わせて、目的とする二次元動画を生成する。以後も同様である。
【0101】
なお、フラグがOFFとなっている仮想カメラに対応する個別二次元動画は生成する必要はないが、処理に余裕があるのであれば、フラグがOFFとなっている仮想カメラに対応する個別二次元動画も含めて生成し、重ね合わせの際にフラグがONとなっている仮想カメラに対応する個別二次元動画のみを用いるようにしてもよい。
【0102】
また、上記では、フレームによってフラグのONとOFFを変えるようにしているが、全てのフレームを通じてフラグのON、OFFを固定するようにしてもよい。
【0103】
(2)上記実施形態では、仮想三次元空間データTD1に対応する個別二次元動画、仮想三次元空間データTD2に対応する個別二次元動画・・・仮想三次元空間データTDnに対応する個別二次元動画という順番で、順次重ね合わせを行うようにしている。しかし、どのような順番で重ね合わせを行うかについて、重畳パラメータLPにおいて定めておき、これにしたがった順番にて重ね合わせを行うようにしてもよい。
【0104】
(3)上記実施形態では、重畳パラメータLPに基づいて重ね合わせを行うようにしたが、重畳パラメータLPを設けず、単純に重ね合わせを行うようにしてもよい。
【0105】
(4)上記実施形態では、重畳パラメータLPとして透過率を示したが、重ね合わせの位置、重ね合わせ時の回転角、重ね合わせ時の縮小・拡大率などをパラメータとしてもよい。
【0106】
(5)上記実施形態では、仮想三次元空間毎に仮想カメラを設けているが、全ての仮想三次元空間に共通する一つの仮想カメラを設けるようにしてもよい。
【0107】
(6)上記実施形態では、仮想カメラのフラグがOFFとなっている仮想三次元空間データについての個別二次元動画は生成しないようにしている。しかし、仮想カメラのフラグがOFFとなっている場合、重ね合わせ時の順番において、直前の仮想三次元空間データのための仮想カメラがONであれば(直前の仮想カメラがOFFであれば、ONとなっている仮想カメラまでさかのぼって)、その仮想カメラを用いて個別二次元動画を生成するようにしてもよい。
【0108】
(7)上記実施形態では、仮想複数次元空間として仮想三次元空間を例として説明した。しかし、仮想二次元空間や仮想四次元空間などを仮想カメラにて撮像し、個別二次元動画を生成するようにしてもよい。また、仮想二次元空間を撮像した個別二次元動画と、仮想三次元空間を撮像した個別二次元動画とを重畳して目的とする二次元動画を得るようにしてもよい。
【0109】
(8)上記実施形態では、各仮想複数次元空間を仮想カメラによって撮像して個別二次元動画を得るようにしている。しかし、仮想二次元空間を対象とする場合には、仮想カメラによって撮像を行わず、仮想二次元空間データ自体を個別二次元動画として用いるようにしてもよい。たとえば、仮想二次元空間データとして、他のプログラムなどで生成された動画データを用いる場合には、このようにすることができる。なお、この実施形態では、輪郭情報、テクスチャ情報などを有する動画データを用いるようにしている。
【0110】
図10に、その一例を示す。仮想三次元空間データTD1、TD2、TD4による仮想三次元空間および仮想二次元空間データTD3による仮想二次元空間が設けられている。仮想三次元空間データTD1、TD2、TD4による仮想三次元空間は、仮想カメラ10によって撮像され、個別二次元動画データが生成される。これに対し、仮想二次元空間データTD3は、それ自体が二次元動画データ(輪郭情報、テクスチャ情報などを含むデータ)である。したがって、仮想カメラ10によって撮像しなくとも、これをそのまま個別二次元動画データとすることができる。つまり、仮想三次元空間データTD1、TD2、TD4による仮想三次元空間を撮像した個別二次元動画データと、仮想二次元空間データTD3自体としての個別二次元動画データとを重畳して、目的とする二次元動画を得るようにしている。
【0111】
なお、上記では、一部の個別二次元動画データとして(仮想カメラによる撮像をせず)仮想二次元空間データをそのまま用いるようにしているが、全ての個別二次元動画として仮想二次元空間データをそのまま用いて重畳を行い、目的とする二次元動画を得るようにしてもよい。
【0112】
2.第二の実施形態
2.1動画生成装置の概要
図11、図12を用いて、他の実施形態による動画生成装置の概念を示す。図11は、上記第一の実施形態による個別二次元動画を重ね合わせて目的とする二次元動画を得る処理を示したものである。
【0113】
まず、VDP76により、背景の1フレームが生成されてVRAM74に書き込まれる。次に、人物(キャラクタ)の1フレームが生成されてVRAM74に書き込まれる。次に、図柄の1フレーム1が生成されてVRAM74に書き込まれる。このようにして、目的とする二次元動画の1フレームがRAM74に生成され、フレームレートによって定まる1フレームの時間になると、VDP76によって表示処理が行われる。以上の処理が、フレーム毎に繰り返される。
【0114】
しかしながら、たとえば背景のポリゴン数が多いなどの理由で、その1フレームの生成処理に時間を要すると、VDP76による表示処理までに、VRM74への動画の書き込みが間に合わないことがある。このような事態が生じると、図柄が正しく表示されないこととなり好ましくない。すなわち、VRAM74への画面書き込みが間に合わないと、アニメーション更新のタイミングが狂い、見た目に不自然な動きとなってしまう。
【0115】
そこで、この実施形態では、図12に示すような手法を採用して、上記の問題を解決した。この実施形態では、2つの画面のための領域を有するVRAM74を用いる。まず、背景の1フレームが生成されてVRAM74の1面に書き込まれる。この時に、この背景の1フレームは、VRAM74の2面にもコピーして書き込まれる。次に、人物(キャラクタ)の1フレームが生成されてVRAM74の1面に書き込まれる。次に、図柄の1フレーム1が生成されてVRAM74の1面に書き込まれる。これにより、目的とする二次元動画の1フレームがRAM74の1面に生成され、フレームレートによって定まる1フレームの時間が経過すると、VDP76によってディスプレイ上に表示するよう表示処理が行われる。
【0116】
VRAM74の1面への書き込みが終了すると、VRAM74の2面に予めコピーしておいた背景の1フレームを用いて、次のフレームの二次元動画が生成される。人物(キャラクタ)の1フレームが生成されてVRAM74の2面に書き込まれる、次に、図柄の1フレームが生成されてVRAM74の2面に書き込まれる。つまり、背景については、このタイミングでは、仮想三次元空間に基づく個別二次元動画の生成処理を行わず、前フレームのものをそのまま用いるようにしている。したがって、背景については、2フレームに1回だけ表示する画像の更新が行われることになる。
【0117】
上記のようにすることで、処理負担を大幅に軽減することができる。また、背景動画に変化が少ない場合には、2フレームに1回の書き換えであっても、画像品質の劣化は目立たない。
【0118】
図13に、この実施形態による動画生成装置の機能ブロック図を示す。図4の機能ブロック図と比べると、記録部60に、ハーフフレーム・パラメータHPが記録されている点が異なる。個別二次元動画生成手段ITG1〜ITGnは、このハーフフレーム・パラメータHPにしたがって、個別二次元動画を毎フレームに生成するか(フルフレーム)、2フレームに1回生成するか(ハーフフレーム)を決定する。
【0119】
二次元動画重畳手段62は、ハーフフレームに指定されている個別二次元動画については、1フレーム目は生成された個別二次元動画を用い、2フレーム目は1フレーム目と同じものをコピーして用い、動画の重ね合わせを行う。他の処理については、第一の実施形態と同様である。
【0120】
2.2ハードウエア構成
ハードウエア構成は、第一の実施形態と同様である。ただし、ROM78に、ハーフフレーム・パラメータLPが記録されている点が異なる。また、VRAM74には、少なくとも2画面分の記憶領域が設けられていなければならない。
【0121】
2.3動画生成プログラムの処理
図14に、動作生成プログラム80のフローチャートを示す。CPU70は、ハーフフレーム・パラメータHPを参照し、対象となる仮想三次元空間データがハーフフレームであるかどうかを判断する(ステップS11)。ここで、ハーフフレーム・パラメータHPの例を、図15に示す。
【0122】
ハーフフレーム・パラメータHPが「0」であれば、全ての個別二次元動画をフルフレームにて表示する。「1」であれば、個別二次元動画I1(仮想三次元空間データTD1に対応)をハーフフレーム、他の個別二次元動画をフルフレームにて表示する。「2」であれば、個別二次元動画I1、I2(仮想三次元空間データTD1、TD2に対応)をハーフフレーム、他の個別二次元動画をフルフレームにて表示する。
【0123】
ここでは、ハーフフレーム・パラメータHPが「1」であったとして説明を行う。したがって、CPU70は、仮想三次元空間データTD1に対応する個別二次元動画I1をハーフフレームで表示すべきことがわかる。CPU70は、ステップS12に進む。
【0124】
ステップS12において、CPU70は、現在のフレームにおいて、個別二次元動画を生成すべきかどうかを判断する(ステップS12)。ハーフフレーム処理を行う場合、複数フレームに1回だけ個別二次元動画を生成すればよいからである。ここでは、生成タイミングであるとして説明を進める。したがって、ステップS13に進む。
【0125】
CPU70は、VDP76に対し、仮想三次元空間データTD1に基づいて、個別二次元動画I1を生成し、VRAM72の第1面に記録するよう指示する(ステップS13、図6のステップS1〜S4参照)。さらに、VDP76に対し、上記生成した個別二次元動画I1を、VRAM72の第2面にも記録するように指示する(ステップS14)。
【0126】
ここでは、仮想三次元空間データTD1が背景を表すものであるとする。上記処理の結果、図16Aに示すように、VRAM72の第1面に背景の個別二次元動画が記録される。さらに、図16Bに示すように、VRAM72の第2面に、当該背景の個別二次元動画がコピーされる。
【0127】
次に、CPU70は、重畳すべき他の仮想三次元空間があるかどうかを判断する(ステップS15)。あれば、次の仮想三次元空間データTD2(人物)を対象として、ステップS11以下を実行する。
【0128】
CPU70は、ハーフフレーム・パラメータHPを参照し、対象となる仮想三次元空間データTD2がハーフフレームであるかどうかを判断する(ステップS11)。ここでは、ハーフフレーム・パラメータHPは「1」であるので、仮想三次元空間データTD2は、フルフレームであることがわかる。したがって、CPU70は、ステップS17に進む。
【0129】
ステップS17において、CPU70は、VDP76に対し、仮想三次元空間データTD2に基づいて、個別二次元動画I2を生成し、VRAM72の第1面に上書きして記録するよう指示する(ステップS17、図6のステップS1〜S4参照)。
【0130】
次に、CPU70は、重畳すべき他の仮想三次元空間があるかどうかを判断する(ステップS15)。ここでは、仮想三次元空間データTD3があるので、これを対象として、ステップS11以下を実行する。
【0131】
ハーフフレーム・パラメータHPより、仮想三次元空間データTD3はフルフレームとすべきことがわかるので、CPU70は、ステップS17に進む。
【0132】
ステップS17において、CPU70は、VDP76に対し、仮想三次元空間データTD3に基づいて、個別二次元動画I3を生成し、VRAM72の第1面に上書きして記録するよう指示する(ステップS17、図6のステップS1〜S4参照)。
【0133】
以上のようにして、図16Cに示すように、VRAM72の第1面に、背景、人物、図柄の個別二次元動画が重ねられ、目的とする二次元動画が生成される。表示すべきタイミングになると、VDP76は、VRAM72の第1面の二次元動画を表示する。
【0134】
所定フレームに達していなければ(ステップS16)、CPU70は、次の仮想三次元空間データTD1を対象として、ステップS10以下を実行する。まず、ステップS10において、VRAM74の描画先領域の切り替えを行う。次に、ステップS11において、CPU70は、仮想三次元空間データTD1がハーフフレームであるかどうかを判断する。ここでは、仮想三次元空間データTD1はハーフフレームであるから、ステップS12に進む。
【0135】
ステップS12において、CPU70は、個別二次元動画を生成すべきタイミングであるかどうかを判断する。ここでは、前フレームにて生成しているので、今回のフレームでは生成すべきタイミングでないことがわかる。
【0136】
したがって、CPU70は、ステップS13、S14を実行せず、ステップS15に進む。
【0137】
ステップS15では、CPU70は、重畳すべき他の仮想三次元空間があるかどうかを判断する(ステップS15)。ここでは、仮想三次元空間データTD2があるので、これを対象として、ステップS11以下を実行する。
【0138】
ハーフフレーム・パラメータHPより、仮想三次元空間データTD2はフルフレームとすべきことがわかるので、CPU70は、ステップS17に進む。
【0139】
ステップS17において、CPU70は、VDP76に対し、仮想三次元空間データTD2に基づいて、個別二次元動画I2を生成し、VRAM72の第2面に上書きして記録するよう指示する(ステップS17、図6のステップS1〜S4参照)。なお、VRAM72の第2面には、すでに、個別二次元動画I1が記録されているので、その上に記録されることになる。
【0140】
さらに、ステップS11以下が実行され、CPU70は、VDP76に指示を行って、仮想三次元空間データTD3に基づいて、個別二次元動画I3を生成させ、VRAM72の第2面に上書きして記録させる(ステップS17、図6のステップS1〜S4参照)。
【0141】
以上のようにして、図16Dに示すように、VRAM72の第2面に、背景、人物、図柄の個別二次元動画が重ねられ、目的とする二次元動画が生成される。表示すべきタイミングになると、VDP76は、VRAM72の第2面の二次元動画を表示する。
【0142】
上記のようにして、処理負担が大きく動きの小さい背景についてはハーフフレーム、人物や、図柄についてはフルフレームにて表示を行うことができる。
【0143】
2.4その他の実施形態
(1)上記実施形態では、図15に示すように、画面の奥にある個別二次元動画から所定数の個別二次元動画までをハーフフレームとして設定するようにしている。これにより、処理の迅速化を図っている。
【0144】
しかし、個別二次元動画毎に、ハーフフレームとするかフルフレームとするかを定めるようにしてもよい。この場合には、ハーフフレームにて書き換える個別二次元動画の数だけ記録領域を確保しておく必要がある。たとえば、個別二次元動画I1、個別二次元動画I2、個別二次元動画I3の順で、重畳していくとし、個別二次元動画I1、I3をハーフフレーム、個別二次元動画I2をフルフレームにて更新する場合を、図17を参照して説明する。
【0145】
まず、VRAM72の第一面に個別二次元動画I1が記録される(図17A)。この時、CPU70は、VDP76によって、この個別二次元動画I1を、バッファにコピーさせる。生成された個別二次元動画I2が、VRAM72の第一面に記録される(図17B)。さらに、個別二次元動画I3が、VRAM72の第一面に記録される(図17C)。この時、CPU70は、VDP76に対し、この個別二次元動画I3を、バッファにコピーするよう指示する。このようにして、VRAM72の第一面に1番目のフレームの二次元動画が生成されて、表示される。
【0146】
続いて、個別二次元動画I1は、ハーフフレームであるから、バッファから読み出して、VRAM72の第二面にコピーされる(図17D)。個別二次元動画I2は、フルフレームであるから、生成処理が行われ、VRAM72の第二面に記録される(図17E)。さらに、個別二次元動画I3は、ハーフフレームであるから、バッファから読み出して、VRAM72の第二面にコピーされる(図17D)。このようにして、VRAM72の第二面に2番目のフレームの二次元動画が生成されて、表示される。
【0147】
(2)図18に、示すように、シーンテーブルを記録部60に記録しておき、CPU70が、これを参照して、各個別二次元動画を重畳するようにしてもよい。図18において、レイヤー1は最も奥に配置される個別二次元動画であり、レイヤー2はその手前に配置される個別二次元動画であり、レイヤー3はその手前に配置される個別二次元動画であり、レイヤーNは最も手前に配置される個別二次元動画である。
【0148】
シーン001は最初に表示されるシーン、シーン002は次に表示されるシーン、シーン003はさらにその次に表示されるシーン・・・である。なお、図示していないが、各シーンは、いずれのフレームからいずれのフレームまで表示されるものであるかのタイムラインも記録されている。背景A、背景B、予告1、予告2、リーチ演出などは、それぞれ、個別二次元動画を示している。
【0149】
たとえば、シーン001においては、背景Aのみが表示される。シーン002においては、背景Bのみが表示される。シーン003においては、背景Aに予告1が重畳されて表示される。
【0150】
このように、シーンテーブルを用いることで、表示内容の制御を容易に行うことができる。このように、シーンテーブルは有用であるが、たとえば、図18において、背景Aを背景Cに変更する必要が生じると、シーン001、003、004、007を変更しなければならず、煩雑である。
【0151】
そこで、図19に示すように、「継続」という属性を導入している。「継続」は、当該レイヤーにおける再生を継続するという指示である。図19においては、シーン101(1行目)は、図18のシーン001に対応する。シーン102(2行目)は、シーン002に対応する。
【0152】
次のシーン101(3行目)では、背景Aが設定されている。シーン103(4行目)に「継続」が指示されているので、直前の背景Aが引き継がれる。シーン101と103が、図18のシーン003に対応する。さらに、シーン104(5行目)に「継続」が指示されているので、背景Aが引き継がれる。シーン104は、シーン004に対応する。
【0153】
次のシーン102(6行目)では、背景Bが設定され、続くシーン103では、「継続」が指示されているので、図18のシーン005と同じ効果を達成している。以下、シーン104(7行目)はシーン006に対応し、シーン101(8行目)、105(9行目)はシーン007に対応し、シーン102(10行目)、105(11行目)はシーン008に対応する。
【0154】
図19においては、使用するシーンの種類が5つでよいというメリットがある。また、背景Aを背景Cに変更する場合には、シーン101のみを変更するだけでこれを達成することができる。
【0155】
(3)上記実施形態では、いずれの個別二次元動画をハーフフレームとするかは、予め、記録されたハーフフレーム・パラメータによって決定している。しかし、CPU70が、レンダリング処理などに要する時間を仮想三次元空間データから推測し、処理時間が不足しそうであれば、その不足の程度に応じて、ハーフフレームにて処理する個別二次元動画を増減するようにしてもよい。このようにすれば、ハーフフレーム・パラメータを予め設定しておく必要はない。
【0156】
(4)上記実施形態では、図9に示すように、フレームにより、各仮想カメラVC1、VC2・・・VCnのオン・オフを切り替えるようにしている。しかし、図20に示すように、上記のシーン毎に、カメラのオン・オフを切り替えるようにしてもよい。
【0157】
図20においては、左側に奥の仮想三次元空間、右側に手前の仮想三次元空間が示されている。ここで、仮想カメラ・フラグがONとなっていれば、当該仮想三次元空間データのために設定されているカメラにより、個別二次元動画が撮像される。たとえば、シーン001の背景A−1については、背景A−1の仮想三次元空間のために設定されているカメラにより、個別二次元動画が生成される。
【0158】
また、仮想三次元空間の欄に設定がなされていないもの(「なし」と記述されているもの)については、個別二次元動画が生成されない。シーン003の「なし」となっている部分がその例である。
【0159】
さらに、仮想三次元空間の欄にデータの設定がなされており、カメラがオフとなっているものについては、左側の仮想三次元空間のために設定されているカメラを用いて、撮像が行われる。たとえば、シーン002の「背景D」「OFF」となっている部分がその例であり、背景Dの仮想三次元空間が、背景Bのために設定されているカメラによって撮像される。
【0160】
上記のようにして、各仮想三次元空間を仮想カメラによって撮像した個別二次元画像が生成され、重畳される。
【0161】
なお、この実施形態では、仮想三次元空間が設定されており仮想カメラ・フラグがオフの場合、重ね合わせ時に奥側となる仮想三次元空間の仮想カメラを用いて撮像するようにしている。しかし、図9の例のように、それぞれの仮想三次元空間について、独立して仮想カメラ・フラグを設定するようにしてもよい。
【0162】
(5)なお、仮想カメラ・フラグとしてONとCONTとOFFの3つの状態を示すようにしてもよい。仮想カメラ・フラグが「ON」であれば、対応する仮想三次元空間データのために用意されている仮想カメラを用いて撮像を行う。仮想カメラ・フラグが「OFF」であれば、当該仮想三次元空間データについて撮像を行わない。仮想カメラ・フラグが「CONT」であれば、対応する仮想三次元空間データのために用意されている仮想カメラではなく、直前に用いていた仮想カメラを用いて撮像を行う。
【0163】
また、直前に用いていた仮想カメラではなく、指定された他の仮想三次元空間データのために用意されている仮想カメラを用いるようにしてもよい。
【0164】
(6)また、仮想カメラ・フラグを用いることにより、各仮想三次元空間データに基づく個別二次元動画を合成して所望の動画を得ることができ、また、複数の仮想三次元空間データであっても、同一の仮想カメラを指定することにより同一仮想空間として扱うことができる。
【0165】
(7)図10を用いて説明した例についても、第二の実施形態のように、一部の個別二次元動画をハーフフレームとすることができる。つまり、仮想カメラによる撮像を行わず、仮想二次元空間データを個別二次元動画データとする場合においても、VDP76においてテクスチャ処理などを行わねばならず、処理時間を要する。したがって、仮想二次元空間データを個別二次元動画データとして用いる場合であっても、選択的にハーフフレーム処理を行うメリットがある。
【0166】
(8)第一の実施形態における変形実施形態は、本実施形態においても適用することができる。また、本実施形態における変形実施形態は、第一の実施形態においても適用することができる。
【0167】
3.第三の実施形態
3.1動画データ・パラメータ作成装置
図21に、この発明の一実施形態による動画データ・パラメータ作成装置の機能ブロック図を示す。この装置は、前記第一の実施形態、第二の実施形態の動画生成装置において用いるための仮想三次元空間データ、仮想カメラ・パラメータ、重畳パラメータなどを生成するための装置である。
【0168】
記録部100には、仮想三次元空間データTD1、TD2・・・TDnが記録される。仮想カメラ・パラメータ設定手段PG1、仮想カメラ・パラメータ設定手段PG2・・・仮想カメラ・パラメータ設定手段PGnは、各仮想三次元空間を撮像する仮想カメラのパラメータを設定する。重畳パラメータ設定手段102は、仮想カメラ・パラメータ設定手段PG1、PG2・・・PGnのそれぞれによって設定された仮想カメラ・パラメータによって生成される各個別二次元動画を重畳する際のパラメータを設定するものである。
【0169】
図22に、動画データ・パラメータ作成装置のハードウエア構成を示す。CPU110には、メモリ112、VRAM114、キーボード/マウス120、ハードディスク122が接続されている。VRAM114には、VDP116を介してディスプレイ118が接続されている。
【0170】
図23に、動画データ・パラメータ作成プログラム124のフローチャートを示す。CPU110は、キーボード/マウス120からの操作者による入力に基づき、仮想三次元空間データTD1を生成する(ステップS31)。これは、所定の仮想三次元空間内に、所望のオブジェクトを配置することによって行われる。仮想三次元空間データTD1の生成は、3Dデザインを行うソフトウエアを、動画データ・パラメータ作成プログラム124から呼び出すことによって実現することができる。
【0171】
これにより、たとえば、図3Aに示すような、背景を表現する仮想三次元空間データTD1が生成される。続いて、CPU110は、生成した仮想三次元空間データTD1を、ハードディスク122に記録する(ステップS32)。
【0172】
さらに、CPU70は、キーボード/マウス120からの操作者による入力に基づき、仮想カメラの視点およびその移動、視線方向およびその移動などのパラメータを設定する(ステップS33)。たとえば、図7に示すような仮想カメラ・パラメータを設定する。
【0173】
なお、この設定の際、操作者は、キーボード/マウス120から、設定した仮想カメラによって撮像された個別二次元動画をディスプレイ118に表示するように指令を与えることができる。表示指令を受けたCPU110は、VDP116に対して指令を与え、VDP116は、設定された仮想カメラ・パラメータによって仮想カメラから撮像した個別二次元動画を生成し、VRAM114に所定の間隔(フレームレート)で書き込む。これにより、VDP116は、所定のフレームレートで書き込まれる個別二次元動画を、ディスプレイ118に表示する。
【0174】
上記のようにして、操作者は、当該設定による個別二次元動画をディスプレイ118において確認しながら設定値を決定することができる。
【0175】
上記のようにして、たとえば、図3Aに示すように、仮想カメラを、時間経過とともに矢印50の方向に移動させるように設定することができる。CPU110は、このようにして決定された仮想カメラ・パラメータをハードディスク122に記録する(ステップS34)。
【0176】
さらに、他の仮想三次元空間データについても仮想カメラ・パラメータを生成する(ステップS35)。
【0177】
次に、CPU110は、操作者によるキーボード/マウス120からの指令に応じて、個別二次元動画を重畳する際の重畳パラメータを生成する(ステップS36)。
【0178】
この設定の際、操作者は、キーボード/マウス120から、重畳パラメータに基づいて各個別二次元動画を重畳し、ディスプレイ118に表示するように指令を与えることができる。個別二次元動画の重畳処理は、第一の実施形態、第二の実施形態における処理と同様である。
【0179】
上記のようにして、操作者は、当該重畳パラメータによって重畳した個別二次元動画をディスプレイ118において確認しながら設定値を決定することができる。
【0180】
次に、CPU110は、操作者によるキーボード/マウス120からの指令に応じて、ハーフフレーム・パラメータの生成を行う(ステップS37)。
【0181】
この設定の際、操作者は、キーボード/マウス120から、ハーフフレーム・パラメータに基づいて各個別二次元動画の書き換えを制御し、ディスプレイ118に表示するように指令を与えることができる。ハーフフレーム・パラメータに基づく表示処理は、第一の実施形態、第二の実施形態における処理と同様である。
【0182】
上記のようにして、操作者は、ハーフフレーム・パラメータによって表示処理を行った二次元動画をディスプレイ118において確認しながら設定値を決定することができる。確認の結果、処理負担が大きく、二次元動画が適切に表示されない場合には、ハーフフレームにて処理をする個別二次元動画を増やし、適切な表示がなされるように、ハーフフレーム・パラメータを修正する。
【0183】
このように、仮想三次元空間を複数設け、それぞれの仮想三次元空間に対応して仮想カメラを設けることにより、背景動画の制作と人物動画の制作とを分離して行い、合体させて所望の二次元動画を得ることが可能となる。また、仮想カメラの視点・視線を仮想三次元空間毎に異ならせたり、仮想カメラの移動を仮想三次元空間毎に異ならせることにより、複雑な動きのある二次元動画も容易に生成することができる。
【0184】
なお、この動画データ・パーメータ作成装置では、フラグテーブルやシーンテーブルを生成することもできる。
【0185】
3.2その他の実施形態
上記実施形態では、動画データ・パラメータ作成プログラム124において、仮想カメラの視点およびその移動、視線方向およびその移動などのパラメータを設定するようにしている。しかし、各仮想三次元空間データTD1、TD2・・・TDnの生成時に、併せて、仮想カメラの視点およびその移動、視線方向およびその移動を決定し、これを予めハードディスク122に記録するようにしてもよい。
【0186】
この場合、たとえば、動画データ・パラメータ作成プログラム124のフローチャートは、図24に示すようなものとなる。なお、この実施形態では、図25に示すように、1つのシーンに関するデータSN1として、仮想三次元空間データTD11、仮想カメラ視点・視線方向データEP11、仮想三次元空間データTD12、仮想カメラ視点・視線方向データEP12・・・仮想三次元空間データTD1n、仮想カメラ視点・視線方向データEP1nをまとめて記録している。他のシーンに関するデータSN2・・・についても同様である。
【0187】
CPU110は、操作者の入力に応じ、上記シーン毎のデータSN1、SN2のそれぞれを構成する仮想三次元空間データ毎に、仮想カメラ・フラグを設定する(ステップS51)。たとえば、図20に示すように、各シーンの仮想三次元空間毎に、仮想カメラ・フラグのオンとオフを設定する。
【0188】
続いて、CPU110は、操作者の入力に応じ、重畳パラメータLPの設定を行う(ステップS52)。さらに、CPU110は、操作者の入力に応じ、ハーフフレームパラメータの設定を行う(ステップS53)。
【0189】
全てのシーンについて、上記ステップS51〜S53が実行されると、CPU110は、設定された上記各パラメータにしたがって、動画の再生を行う(ステップS54)。動画再生処理は、第一の実施形態、第二の実施形態に示した処理と同様である。
【0190】
再生された動画を見た操作者が、修正要の入力を行うと、CPU110は、ステップS51以下を繰り返し実行する。操作者が、修正不要の入力を行うと、CPU110は、ステップS51〜S53にて設定された各パラメータを、ハードディスク122に記録する(ステップS56)。
【特許請求の範囲】
【請求項1】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データと、仮想カメラの撮像条件を定める仮想カメラ・パラメータとを記録する記録部と、
前記仮想カメラ・パラメータに基づいて、前記仮想複数次元空間のそれぞれを、前記複数の仮想カメラによって撮像した個別二次元動画を生成する個別二次元動画生成手段と、
前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成する二次元動画重畳手段と、
生成された二次元動画を、所定のフレームレートにて表示する表示制御手段と、
を備えた動画生成装置。
【請求項2】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データと、仮想カメラの撮像条件を定める仮想カメラ・パラメータとを記録する記録部を有するコンピュータを、
前記仮想カメラ・パラメータに基づいて、前記仮想複数次元空間のそれぞれを、前記複数の仮想カメラによって撮像した個別二次元動画を生成する個別二次元動画生成手段と、
前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成する二次元動画重畳手段と、
生成された二次元動画を、所定のフレームレートにて表示する表示制御手段として機能させるための動画生成プログラム。
【請求項3】
請求項1の装置または請求項2のプログラムにおいて、
前記仮想複数次元空間は、少なくとも仮想三次元空間または仮想二次元空間を含むことを特徴とする装置またはプログラム。
【請求項4】
請求項1〜3のいずれかの装置またはプログラムにおいて、
前記個別二次元動画生成手段は、前記仮想カメラによって撮像した個別二次元動画に加えて、前記仮想カメラを用いずに、前記仮想複数次元空間である仮想二次元空間に基づいて個別二次元動画を生成することを特徴とする装置またはプログラム。
【請求項5】
請求項1〜4のいずれかの装置またはプログラムにおいて、
前記記録部には、前記仮想複数次元空間を前記仮想カメラによって撮像した個別二次元動画を重ね合わせる際の条件を定める重畳パラメータが記録されており、
前記二次元動画重畳手段は、前記重畳パラメータに基づいて、個別二次元動画を重ね合わせることを特徴とする装置またはプログラム。
【請求項6】
請求項1〜5のいずれかの装置またはプログラムにおいて、
前記仮想カメラおよび前記仮想カメラ・パラメータは、仮想複数次元空間毎に設けられており、
仮想複数次元空間毎に設けられた前記各仮想カメラ・パラメータは、少なくとも異なる視点または異なる視線を有することを特徴とする装置またはプログラム。
【請求項7】
請求項6の装置またはプログラムにおいて、
前記各仮想カメラ・パラメータは、対応する各仮想複数次元空間に対して、前記各仮想カメラが、異なる動きを行って撮像を行うよう設定されることを特徴とする装置またはプログラム。
【請求項8】
請求項1〜7のいずれかの装置またはプログラムにおいて、
前記記録部は、前記各仮想カメラをオンにするかオフにするかを設定する仮想カメラ・フラグを記録しており、
前記各二次元動画重畳手段は、前記仮想カメラ・フラグの内容に基づいて、前記二次元動画重畳手段が各個別二次元動画を重畳する際に、当該個別二次元動画を重畳するか否かを制御することを特徴とする装置またはプログラム。
【請求項9】
請求項1〜8のいずれかの装置またはプログラムにおいて、
前記記録部は、前記各仮想カメラをオンにするかオフにするかを設定する仮想カメラ・フラグを記録しており、
前記各個別二次元動画生成手段は、前記仮想カメラ・フラグの内容に基づいて、対応する前記個別二次元動画を生成するか否かを制御することを特徴とする装置またはプログラム。
【請求項10】
請求項1〜9のいずれかの装置またはプログラムにおいて、
前記個別二次元動画生成手段は、所定の時間間隔で前記個別二次元動画を生成し、
前記記録部は、前記各個別二次元動画を、前記所定時間間隔に合致するように生成するか、前記所定時間間隔の整数倍に合致するように生成するかを定めるハーフフレーム・パラメータを記録しており、
前記個別二次元動画生成手段は、ハーフフレーム・パラメータにしたがって、前記個別二次元動画を生成し、
前記二次元動画生成手段は、対象となる所定時間間隔のために生成された前記個別二次元動画が存在する場合にはこれを用い、存在しない場合に前の所定時間間隔のために生成された前記個別二次元動画を用いて、目的とする二次元動画を生成することを特徴とする装置またはプログラム。
【請求項11】
請求項10の装置またはプログラムにおいて、
前記目的とする二次元動画は、前記個別二次元動画を、奥から手前に順次重ねたものとして構成され、
前記時間間隔に整数倍に合致するよう生成される前記所定の個別二次元動画は、前記奥から所定番目までの個別二次元動画であることを特徴とする装置またはプログラム。
【請求項12】
請求項1〜11のいずれかの装置またはプログラムにおいて、
重畳された個別二次元動画の組み合わせをシーンとして定義し、当該シーンの連続によってフローを定義して記録する定義部と、
定義部に記録されたフローに含まれるシーンを順次読み出して、前記個別二次元動画生成手段、前記二次元動画重畳手段、前記表示制御手段により、二次元動画を表示する制御を行わせるフロー制御手段とをさらに備え、
前記シーンの定義において、シーンを構成する個別二次元動画を指定する際に、先行するシーンと同じ個別二次元動画を用いる指示が含まれることを特徴とする装置またはプログラム。
【請求項13】
請求項1〜7、10、11のいずれかの装置またはプログラムにおいて、
重畳された個別二次元動画の組み合わせをシーンとして定義し、当該シーンの連続によってフローを定義して記録する定義部と、
定義部に記録されたフローに含まれるシーンを順次読み出して、前記個別二次元動画生成手段、前記二次元動画重畳手段、前記表示制御手段により、二次元動画を表示する制御を行わせるフロー制御手段とをさらに備え、
前記記録部は、前記シーン毎、前記仮想複数次元空間データ毎に、各仮想カメラをオンにするかオフにするかを設定する仮想カメラ・フラグを記録しており、
前記個別二次元動画生成手段は、前記仮想カメラ・フラグがオンである場合には、対応する当該仮想複数次元空間データを当該仮想カメラによって撮像し、前記仮想カメラ・フラグがオフである場合には、対応する仮想複数次元空間データを、他の仮想複数次元空間データのための仮想カメラによって撮像することを特徴とする装置またはプログラム。
【請求項14】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データと、仮想カメラの撮像条件を定める仮想カメラ・パラメータと、前記仮想複数次元空間を前記仮想カメラによって撮像した個別二次元動画を重ね合わせる際の条件を定める重畳パラメータとを記録する記録部を有するコンピュータが動画を生成する方法であって、
前記仮想カメラ・パラメータに基づいて、前記仮想複数次元空間のそれぞれを、前記複数の仮想カメラによって撮像した個別二次元動画を生成し、
前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成し、
生成された二次元動画を、所定のフレームレートにて表示することを特徴とする方法。
【請求項15】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部と、
前記仮想複数次元空間のそれぞれに基づいて個別二次元動画を生成する個別二次元動画生成手段と、
前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成する二次元動画重畳手段と、
生成された二次元動画を、所定のフレームレートにて表示する表示制御手段と、
を備えた動画生成装置。
【請求項16】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部を有するコンピュータを、
前記仮想複数次元空間のそれぞれに基づいて個別二次元動画を生成する個別二次元動画生成手段と、
前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成する二次元動画重畳手段と、
生成された二次元動画を、所定のフレームレートにて表示する表示制御手段として機能させるための動画生成プログラム。
【請求項17】
請求項15の装置または請求項16のプログラムにおいて、
前記仮想複数次元空間は、仮想二次元空間であることを特徴とする装置またはプログラム。
【請求項18】
請求項15〜17のいずれかの装置またはプログラムにおいて、
前記個別二次元動画生成手段は、所定の時間間隔で前記個別二次元動画を生成し、
前記記録部は、前記各個別二次元動画を、前記所定時間間隔に合致するように生成するか、前記所定時間間隔の整数倍に合致するように生成するかを定めるハーフフレーム・パラメータを記録しており、
前記個別二次元動画生成手段は、ハーフフレーム・パラメータにしたがって、前記個別二次元動画を生成し、
前記二次元動画生成手段は、対象となる所定時間間隔のために生成された前記個別二次元動画が存在する場合にはこれを用い、存在しない場合に前の所定時間間隔のために生成された前記個別二次元動画を用いて、目的とする二次元動画を生成することを特徴とする装置またはプログラム。
【請求項19】
請求項18の装置またはプログラムにおいて、
前記目的とする二次元動画は、前記個別二次元動画を、奥から手前に順次重ねたものとして構成され、
前記時間間隔に整数倍に合致するよう生成される前記所定の個別二次元動画は、前記奥から所定番目までの個別二次元動画であることを特徴とする装置またはプログラム。
【請求項20】
請求項15〜19のいずれかの装置またはプログラムにおいて、
重畳された個別二次元動画の組み合わせをシーンとして定義し、当該シーンの連続によってフローを定義して記録する定義部と、
定義部に記録されたフローに含まれるシーンを順次読み出して、前記個別二次元動画生成手段、前記二次元動画重畳手段、前記表示制御手段により、二次元動画を表示する制御を行わせるフロー制御手段とをさらに備え、
前記シーンの定義において、シーンを構成する個別二次元動画を指定する際に、先行するシーンと同じ個別二次元動画を用いる指示が含まれることを特徴とする装置またはプログラム。
【請求項21】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データと前記仮想複数次元空間を前記仮想カメラによって撮像した個別二次元動画を重ね合わせる際の条件を定める重畳パラメータとを記録する記録部を有するコンピュータが動画を生成する方法であって、
前記仮想複数次元空間のそれぞれに基づいて個別二次元動画を生成し、
前記重畳パラメータに基づいて、前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成し、
生成された二次元動画を、所定のフレームレートにて表示することを特徴とする方法。
【請求項22】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部と、
前記複数の仮想複数次元空間を撮像する仮想カメラの撮像パラメータを設定するための仮想カメラ・パラメータ設定手段と、
前記複数の仮想複数次元空間を仮想カメラによって撮像した各個別二次元動画を重畳する際のパラメータを設定する重畳パラメータ設定手段と、
を備えたことを特徴とする動画データ・パラメータ作成装置。
【請求項23】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部を有するコンピュータを、
前記複数の仮想複数次元空間を撮像する仮想カメラの撮像パラメータを設定するための仮想カメラ・パラメータ設定手段と、
前記複数の仮想複数次元空間を仮想カメラによって撮像した各個別二次元動画を重畳する際のパラメータを設定する重畳パラメータ設定手段として機能させるための動画データ・パラメータ作成プログラム。
【請求項24】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部を有するコンピュータが、動画データ・パラメータを作成する方法であって、前記コンピュータは、
前記複数の仮想複数次元空間を撮像する仮想カメラの撮像パラメータを設定して記録し、
前記複数の仮想複数次元空間を仮想カメラによって撮像した各個別二次元動画を重畳する際のパラメータを設定して記録することを特徴とする動画データ・パラメータ作成方法。
【請求項1】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データと、仮想カメラの撮像条件を定める仮想カメラ・パラメータとを記録する記録部と、
前記仮想カメラ・パラメータに基づいて、前記仮想複数次元空間のそれぞれを、前記複数の仮想カメラによって撮像した個別二次元動画を生成する個別二次元動画生成手段と、
前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成する二次元動画重畳手段と、
生成された二次元動画を、所定のフレームレートにて表示する表示制御手段と、
を備えた動画生成装置。
【請求項2】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データと、仮想カメラの撮像条件を定める仮想カメラ・パラメータとを記録する記録部を有するコンピュータを、
前記仮想カメラ・パラメータに基づいて、前記仮想複数次元空間のそれぞれを、前記複数の仮想カメラによって撮像した個別二次元動画を生成する個別二次元動画生成手段と、
前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成する二次元動画重畳手段と、
生成された二次元動画を、所定のフレームレートにて表示する表示制御手段として機能させるための動画生成プログラム。
【請求項3】
請求項1の装置または請求項2のプログラムにおいて、
前記仮想複数次元空間は、少なくとも仮想三次元空間または仮想二次元空間を含むことを特徴とする装置またはプログラム。
【請求項4】
請求項1〜3のいずれかの装置またはプログラムにおいて、
前記個別二次元動画生成手段は、前記仮想カメラによって撮像した個別二次元動画に加えて、前記仮想カメラを用いずに、前記仮想複数次元空間である仮想二次元空間に基づいて個別二次元動画を生成することを特徴とする装置またはプログラム。
【請求項5】
請求項1〜4のいずれかの装置またはプログラムにおいて、
前記記録部には、前記仮想複数次元空間を前記仮想カメラによって撮像した個別二次元動画を重ね合わせる際の条件を定める重畳パラメータが記録されており、
前記二次元動画重畳手段は、前記重畳パラメータに基づいて、個別二次元動画を重ね合わせることを特徴とする装置またはプログラム。
【請求項6】
請求項1〜5のいずれかの装置またはプログラムにおいて、
前記仮想カメラおよび前記仮想カメラ・パラメータは、仮想複数次元空間毎に設けられており、
仮想複数次元空間毎に設けられた前記各仮想カメラ・パラメータは、少なくとも異なる視点または異なる視線を有することを特徴とする装置またはプログラム。
【請求項7】
請求項6の装置またはプログラムにおいて、
前記各仮想カメラ・パラメータは、対応する各仮想複数次元空間に対して、前記各仮想カメラが、異なる動きを行って撮像を行うよう設定されることを特徴とする装置またはプログラム。
【請求項8】
請求項1〜7のいずれかの装置またはプログラムにおいて、
前記記録部は、前記各仮想カメラをオンにするかオフにするかを設定する仮想カメラ・フラグを記録しており、
前記各二次元動画重畳手段は、前記仮想カメラ・フラグの内容に基づいて、前記二次元動画重畳手段が各個別二次元動画を重畳する際に、当該個別二次元動画を重畳するか否かを制御することを特徴とする装置またはプログラム。
【請求項9】
請求項1〜8のいずれかの装置またはプログラムにおいて、
前記記録部は、前記各仮想カメラをオンにするかオフにするかを設定する仮想カメラ・フラグを記録しており、
前記各個別二次元動画生成手段は、前記仮想カメラ・フラグの内容に基づいて、対応する前記個別二次元動画を生成するか否かを制御することを特徴とする装置またはプログラム。
【請求項10】
請求項1〜9のいずれかの装置またはプログラムにおいて、
前記個別二次元動画生成手段は、所定の時間間隔で前記個別二次元動画を生成し、
前記記録部は、前記各個別二次元動画を、前記所定時間間隔に合致するように生成するか、前記所定時間間隔の整数倍に合致するように生成するかを定めるハーフフレーム・パラメータを記録しており、
前記個別二次元動画生成手段は、ハーフフレーム・パラメータにしたがって、前記個別二次元動画を生成し、
前記二次元動画生成手段は、対象となる所定時間間隔のために生成された前記個別二次元動画が存在する場合にはこれを用い、存在しない場合に前の所定時間間隔のために生成された前記個別二次元動画を用いて、目的とする二次元動画を生成することを特徴とする装置またはプログラム。
【請求項11】
請求項10の装置またはプログラムにおいて、
前記目的とする二次元動画は、前記個別二次元動画を、奥から手前に順次重ねたものとして構成され、
前記時間間隔に整数倍に合致するよう生成される前記所定の個別二次元動画は、前記奥から所定番目までの個別二次元動画であることを特徴とする装置またはプログラム。
【請求項12】
請求項1〜11のいずれかの装置またはプログラムにおいて、
重畳された個別二次元動画の組み合わせをシーンとして定義し、当該シーンの連続によってフローを定義して記録する定義部と、
定義部に記録されたフローに含まれるシーンを順次読み出して、前記個別二次元動画生成手段、前記二次元動画重畳手段、前記表示制御手段により、二次元動画を表示する制御を行わせるフロー制御手段とをさらに備え、
前記シーンの定義において、シーンを構成する個別二次元動画を指定する際に、先行するシーンと同じ個別二次元動画を用いる指示が含まれることを特徴とする装置またはプログラム。
【請求項13】
請求項1〜7、10、11のいずれかの装置またはプログラムにおいて、
重畳された個別二次元動画の組み合わせをシーンとして定義し、当該シーンの連続によってフローを定義して記録する定義部と、
定義部に記録されたフローに含まれるシーンを順次読み出して、前記個別二次元動画生成手段、前記二次元動画重畳手段、前記表示制御手段により、二次元動画を表示する制御を行わせるフロー制御手段とをさらに備え、
前記記録部は、前記シーン毎、前記仮想複数次元空間データ毎に、各仮想カメラをオンにするかオフにするかを設定する仮想カメラ・フラグを記録しており、
前記個別二次元動画生成手段は、前記仮想カメラ・フラグがオンである場合には、対応する当該仮想複数次元空間データを当該仮想カメラによって撮像し、前記仮想カメラ・フラグがオフである場合には、対応する仮想複数次元空間データを、他の仮想複数次元空間データのための仮想カメラによって撮像することを特徴とする装置またはプログラム。
【請求項14】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データと、仮想カメラの撮像条件を定める仮想カメラ・パラメータと、前記仮想複数次元空間を前記仮想カメラによって撮像した個別二次元動画を重ね合わせる際の条件を定める重畳パラメータとを記録する記録部を有するコンピュータが動画を生成する方法であって、
前記仮想カメラ・パラメータに基づいて、前記仮想複数次元空間のそれぞれを、前記複数の仮想カメラによって撮像した個別二次元動画を生成し、
前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成し、
生成された二次元動画を、所定のフレームレートにて表示することを特徴とする方法。
【請求項15】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部と、
前記仮想複数次元空間のそれぞれに基づいて個別二次元動画を生成する個別二次元動画生成手段と、
前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成する二次元動画重畳手段と、
生成された二次元動画を、所定のフレームレートにて表示する表示制御手段と、
を備えた動画生成装置。
【請求項16】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部を有するコンピュータを、
前記仮想複数次元空間のそれぞれに基づいて個別二次元動画を生成する個別二次元動画生成手段と、
前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成する二次元動画重畳手段と、
生成された二次元動画を、所定のフレームレートにて表示する表示制御手段として機能させるための動画生成プログラム。
【請求項17】
請求項15の装置または請求項16のプログラムにおいて、
前記仮想複数次元空間は、仮想二次元空間であることを特徴とする装置またはプログラム。
【請求項18】
請求項15〜17のいずれかの装置またはプログラムにおいて、
前記個別二次元動画生成手段は、所定の時間間隔で前記個別二次元動画を生成し、
前記記録部は、前記各個別二次元動画を、前記所定時間間隔に合致するように生成するか、前記所定時間間隔の整数倍に合致するように生成するかを定めるハーフフレーム・パラメータを記録しており、
前記個別二次元動画生成手段は、ハーフフレーム・パラメータにしたがって、前記個別二次元動画を生成し、
前記二次元動画生成手段は、対象となる所定時間間隔のために生成された前記個別二次元動画が存在する場合にはこれを用い、存在しない場合に前の所定時間間隔のために生成された前記個別二次元動画を用いて、目的とする二次元動画を生成することを特徴とする装置またはプログラム。
【請求項19】
請求項18の装置またはプログラムにおいて、
前記目的とする二次元動画は、前記個別二次元動画を、奥から手前に順次重ねたものとして構成され、
前記時間間隔に整数倍に合致するよう生成される前記所定の個別二次元動画は、前記奥から所定番目までの個別二次元動画であることを特徴とする装置またはプログラム。
【請求項20】
請求項15〜19のいずれかの装置またはプログラムにおいて、
重畳された個別二次元動画の組み合わせをシーンとして定義し、当該シーンの連続によってフローを定義して記録する定義部と、
定義部に記録されたフローに含まれるシーンを順次読み出して、前記個別二次元動画生成手段、前記二次元動画重畳手段、前記表示制御手段により、二次元動画を表示する制御を行わせるフロー制御手段とをさらに備え、
前記シーンの定義において、シーンを構成する個別二次元動画を指定する際に、先行するシーンと同じ個別二次元動画を用いる指示が含まれることを特徴とする装置またはプログラム。
【請求項21】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データと前記仮想複数次元空間を前記仮想カメラによって撮像した個別二次元動画を重ね合わせる際の条件を定める重畳パラメータとを記録する記録部を有するコンピュータが動画を生成する方法であって、
前記仮想複数次元空間のそれぞれに基づいて個別二次元動画を生成し、
前記重畳パラメータに基づいて、前記仮想複数次元空間に対応する前記各個別二次元動画を重畳し、目的とする二次元動画を生成し、
生成された二次元動画を、所定のフレームレートにて表示することを特徴とする方法。
【請求項22】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部と、
前記複数の仮想複数次元空間を撮像する仮想カメラの撮像パラメータを設定するための仮想カメラ・パラメータ設定手段と、
前記複数の仮想複数次元空間を仮想カメラによって撮像した各個別二次元動画を重畳する際のパラメータを設定する重畳パラメータ設定手段と、
を備えたことを特徴とする動画データ・パラメータ作成装置。
【請求項23】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部を有するコンピュータを、
前記複数の仮想複数次元空間を撮像する仮想カメラの撮像パラメータを設定するための仮想カメラ・パラメータ設定手段と、
前記複数の仮想複数次元空間を仮想カメラによって撮像した各個別二次元動画を重畳する際のパラメータを設定する重畳パラメータ設定手段として機能させるための動画データ・パラメータ作成プログラム。
【請求項24】
オブジェクトが配置された仮想複数次元空間を表す複数の仮想複数次元空間データを記録する記録部を有するコンピュータが、動画データ・パラメータを作成する方法であって、前記コンピュータは、
前記複数の仮想複数次元空間を撮像する仮想カメラの撮像パラメータを設定して記録し、
前記複数の仮想複数次元空間を仮想カメラによって撮像した各個別二次元動画を重畳する際のパラメータを設定して記録することを特徴とする動画データ・パラメータ作成方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【公開番号】特開2012−128630(P2012−128630A)
【公開日】平成24年7月5日(2012.7.5)
【国際特許分類】
【出願番号】特願2010−279073(P2010−279073)
【出願日】平成22年12月15日(2010.12.15)
【出願人】(598088066)アイレムソフトウェアエンジニアリング株式会社 (3)
【Fターム(参考)】
【公開日】平成24年7月5日(2012.7.5)
【国際特許分類】
【出願日】平成22年12月15日(2010.12.15)
【出願人】(598088066)アイレムソフトウェアエンジニアリング株式会社 (3)
【Fターム(参考)】
[ Back to top ]