(57)【特許請求の範囲】
【請求項１】
仮想空間内に配置される注目キャラクタを、視点となる仮想のカメラによって撮影した画像を生成する画像生成装置であって、
注目キャラクタを含む複数のオブジェクトについての仮想空間内における位置を記憶するオブジェクト位置記憶部と、
注目キャラクタを異なる方向から撮影するために配置される複数のカメラの位置を記憶するカメラ位置記憶部と、
記憶される各カメラの位置および各オブジェクトの位置に基づいて、各カメラと注目キャラクタとの間を遮る障害物となるオブジェクトの有無をそれぞれ判別する障害物判定部と、
障害物がないと判別されたカメラのうち、いずれか１つのカメラを選択するカメラ選択部と、
選択されたカメラを制御して、所定の撮影動作を行わせるカメラ制御部と、
制御された当該カメラによって撮影した画像を生成する画像生成部と、を備え、
前記カメラ選択部は、前記障害物判定部により全てのカメラについて障害物があると判別された場合に、注目キャラクタと障害物との距離が最も遠いカメラを選択し、
前記カメラ制御部は、選択されたカメラを障害物よりも注目キャラクタ側に移動させた後に、撮影動作を行わせる、
ことを特徴とする画像生成装置。
【請求項２】
請求項１に記載の画像生成装置であって、
前記カメラ制御部が撮影動作を開始した後に、前記障害物判定部は、撮影中のカメラと注目キャラクタとの間を遮る障害物の有無を逐次判別し、
障害物があると判別され、注目キャラクタと障害物との距離が基準値以上である場合に、前記カメラ制御部は、カメラを障害物よりも注目キャラクタ側に移動させた後に、撮影動作を継続する、
ことを特徴とする画像生成装置。
【請求項３】
請求項１に記載の画像生成装置であって、
前記カメラ制御部が撮影動作を開始した後に、前記障害物判定部は、各カメラと注目キャラクタとの間を遮る障害物の有無を逐次判別し、
撮影中のカメラと注目キャラクタとの間を遮る障害物があると判別され、注目キャラクタと当該障害物との距離が基準値よりも短い場合に、前記カメラ選択部は、障害物がないと判別された他のカメラのうち、いずれか１つのカメラを再選択し、
前記カメラ制御部は、再選択されたカメラを制御して、撮影動作を継続する、
ことを特徴とする画像生成装置。
【請求項４】
記憶部、演算部、描画部を有しており、仮想空間内に配置される注目キャラクタを、視点となる仮想のカメラによって撮影した画像を生成する画像生成装置における画像生成方法であって、
前記記憶部は、注目キャラクタを含む複数のオブジェクトについての仮想空間内における位置、及び、注目キャラクタを異なる方向から撮影するために配置される複数のカメラの位置を記憶しており、
前記演算部が行う、前記記憶部に記憶される各カメラの位置および各オブジェクトの位置に基づいて、各カメラと注目キャラクタとの間を遮る障害物となるオブジェクトの有無をそれぞれ判別する障害物判定ステップと、
前記演算部が行う、障害物がないと判別されたカメラのうち、いずれか１つのカメラを選択するカメラ選択ステップと、
前記演算部が行う、選択されたカメラを制御して、所定の撮影動作を行わせるカメラ制御ステップと、
前記描画部が行う、制御された当該カメラによって撮影した画像を生成する画像生成ステップと、を備え、
前記カメラ選択ステップでは、前記障害物判定ステップにて全てのカメラについて障害物があると判別された場合に、注目キャラクタと障害物との距離が最も遠いカメラを選択し、
前記カメラ制御ステップでは、選択されたカメラを障害物よりも注目キャラクタ側に移動させた後に、撮影動作を行わせる、
ことを特徴とする画像生成方法。
【請求項５】
注目キャラクタを含む複数のオブジェクトについての仮想空間内における位置を記憶するオブジェクト位置記憶部と、注目キャラクタを異なる方向から撮影するために配置される複数のカメラの位置を記憶するカメラ位置記憶部とを有し、仮想空間内に配置される注目キャラクタを、視点となる仮想のカメラによって撮影した画像を生成するコンピュータを、
記憶される各カメラの位置および各オブジェクトの位置に基づいて、各カメラと注目キャラクタとの間を遮る障害物となるオブジェクトの有無をそれぞれ判別する障害物判定部、
障害物がないと判別されたカメラのうち、いずれか１つのカメラを選択するカメラ選択部、
選択されたカメラを制御して、所定の撮影動作を行わせるカメラ制御部、
制御された当該カメラによって撮影した画像を生成する画像生成部、として機能させ、
前記カメラ選択部は、前記障害物判定部により全てのカメラについて障害物があると判別された場合に、注目キャラクタと障害物との距離が最も遠いカメラを選択し、
前記カメラ制御部は、選択されたカメラを障害物よりも注目キャラクタ側に移動させた後に、撮影動作を行わせる、ように機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、障害物が存在し得る状況においても、注目キャラクタを適切に撮影した画像を生成することのできる画像生成装置、画像生成方法、および、プログラムに関する。
【背景技術】
【０００２】
従来より、３次元表示のアクションゲームやロールプレイングゲーム等を楽しむことのできるゲーム装置（ビデオゲーム装置等）が、家庭用や業務用として開発されている。このような３次元表示のアクションゲーム等では、例えば、視点となる仮想のカメラにより、主人公キャラクタを撮影した（眺めた）画像を生成して表示している。
【０００３】
仮想空間には、主人公キャラクタ以外にも、種々のオブジェクトが配置されるため、主人公キャラクタとカメラとの間に他のオブジェクトが位置してしまう場合も生じ得る。例えば、主人公キャラクタとカメラとの間に樹木のオブジェクトが位置してしまうと、その樹木のオブジェクトが、カメラの視線を遮る障害物となる。
この状態で、そのままカメラから撮影した画像を生成してしまうと、その障害物に主人公キャラクタが隠れた（全部または一部が見えない）画像となり、プレイヤの操作を妨げてしまうことになる。
【０００４】
このような不具合の対策として、主人公キャラクタが障害物に隠れてしまう場合に、障害物の透明度を高めて描画し、主人公キャラクタをより見易くする技術も開示されている（例えば、特許文献１参照）。
【特許文献１】特開平１１−４２３７０号公報  （第５−１２頁、第８図）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述したような３次元表示のアクションゲーム等では、例えば、何らかのイベントが発生した際など、主人公キャラクタをより注目させたい場合に、それまで視点となっていたカメラから、予め撮影位置が定められている演出カメラ（演出用の仮想カメラ）に切り換え、ズームアップやパン等のような演出用の撮影動作によって主人公キャラクタを撮影し、そのような演出画像を表示している。
この演出カメラでは、プレイヤの目を引き付けるための演出画像を表示することが何よりも重要であるため、撮影対象となる主人公キャラクタが障害物によって遮られることは容認できない。そのため、従来では、主人公キャラクタの周りに障害物となり得る他のオブジェクトが存在しない状況（例えば、建物や樹木等がない広い場所など）に限って、このような演出カメラを使用するのが一般的であった。
【０００６】
それでも最近では、プレイヤの進め方に応じて、ゲーム内容（場面や状況等）が多岐に渡るゲームも増えてきており、このような障害物が存在し得る状況でも、演出カメラを用いた表示を行いたいという要求が生まれている。このような要求を満たすためには、例えば、演出カメラによる撮影前に、障害物が存在するかどうかを確認し、障害物が存在する場合に、演出カメラを障害物よりも主人公キャラクタ側に近づけて（移動させて）、障害物に遮られないように撮影することが考えられる。
【０００７】
しかしながら、演出カメラを単純に、障害物よりも主人公キャラクタ側に移動させるようにすると、障害物の位置によっては、演出カメラが主人公キャラクタに近づきすぎてしまう場合も生じてしまう。
その場合、主人公キャラクタが必要以上に大きく表示されてしまい（アップになりすぎてしまい）、演出カメラの役割を十分に果たせないものとなってしまう。
【０００８】
このようなことから、障害物を考慮しつつ、演出カメラによって適切に撮影することのできる技術が求められていた。
【０００９】
本発明は、このような課題を解決するためになされたもので、障害物が存在し得る状況においても、注目キャラクタを適切に撮影した画像を生成することのできる画像生成装置、画像生成方法、および、プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の第１の観点に係る画像生成装置は、仮想空間内に配置される注目キャラクタを、視点となる仮想のカメラによって撮影した画像を生成するゲーム装置であって、オブジェクト位置記憶部、カメラ位置記憶部、障害物判定部、カメラ選択部、カメラ制御部、及び、画像生成部を含んで構成される。
【００１１】
まず、オブジェクト位置記憶部は、注目キャラクタを含む複数のオブジェクトについての仮想空間内における位置を記憶する。また、カメラ位置記憶部は、注目キャラクタを異なる方向から撮影するために配置される複数のカメラの位置を記憶する。障害物判定部は、記憶される各カメラの位置および各オブジェクトの位置に基づいて、各カメラと注目キャラクタとの間を遮る障害物となるオブジェクトの有無をそれぞれ判別する。カメラ選択部は、障害物がないと判別されたカメラのうち、いずれか１つのカメラを選択する。カメラ制御部は、選択されたカメラを制御して、例えば、ズームアップやパン等のような演出用の撮影動作を行わせる。そして、画像生成部は、制御された当該カメラによって撮影した画像を生成する。
【００１２】
すなわち、異なる方向から撮影する複数のカメラを用い、そのうちから、障害物に遮られずに注目キャラクタを撮影可能なカメラを選択して撮影するため、障害物が存在し得る状況においても、注目キャラクタを撮影することが可能となる。
この結果、障害物が存在し得る状況においても、注目キャラクタを適切に撮影した画像を生成することができる。
【００１３】
前記カメラ選択部は、前記障害物判定部により全てのカメラについて障害物があると判別された場合に、注目キャラクタと障害物との距離が最も遠いカメラを選択し、
前記カメラ制御部は、選択されたカメラを障害物よりも注目キャラクタ側に移動させた後に、例えば、演出用の撮影動作を行わせてもよい。
この場合、全てのカメラが障害物に遮られている状況でも注目キャラクタから最も離れた障害物のカメラを選択し、その障害物のぎりぎり前面（視点が障害物を突き抜けて注目キャラクタを撮影できる位置）までカメラを移動させて撮影する。このため、カメラが注目キャラクタに近づき過ぎることがなく、適切な画像を生成することができる。
【００１４】
前記カメラ制御部が例えば、演出用の撮影動作を開始した後に、前記障害物判定部は、撮影中のカメラと注目キャラクタとの間を遮る障害物の有無を逐次判別し、
障害物があると判別され、注目キャラクタと障害物との距離が基準値以上である場合に、前記カメラ制御部は、カメラを障害物よりも注目キャラクタ側に移動させた後に、例えば、演出用の撮影動作を継続してもよい。
この場合、選択したカメラが撮影動作を開始した後に、新たな障害物により遮られる状況が生じても、さらに、その障害物のぎりぎり前面（視点が障害物を突き抜けて注目キャラクタを撮影できる位置）までカメラを移動させて撮影動作を継続する。このため、引き続き、適切な画像を生成することができる。
【００１５】
前記カメラ制御部が演出用の撮影動作を開始した後に、前記障害物判定部は、各カメラと注目キャラクタとの間を遮る障害物の有無を逐次判別し、
撮影中のカメラと注目キャラクタとの間を遮る障害物があると判別され、注目キャラクタと当該障害物との距離が基準値よりも短い場合に、前記カメラ選択部は、障害物がないと判別されたカメラのうち、いずれか１つのカメラを選択すると、障害物がないと判別された他のカメラのうち、いずれか１つのカメラを再選択し、
前記カメラ制御部は、再選択されたカメラを制御して、例えば、演出用の撮影動作を継続してもよい。
この場合、選択したカメラが撮影動作を開始した後に、新たな障害物（注目キャラクタに近い障害物）により遮られる状況が生じても、カメラの再選択を行って他のカメラに切り替える。このため、引き続き、適切な画像を生成することができる。
【００１６】
本発明の第２の観点に係る画像生成方法は、記憶部、演算部、描画部を有しており、仮想空間内に配置される注目キャラクタを、視点となる仮想のカメラによって撮影した画像を生成する画像生成装置における画像生成方法であって、前記記憶部は、注目キャラクタを含む複数のオブジェクトについての仮想空間内における位置、及び、注目キャラクタを異なる方向から撮影するために配置される複数のカメラの位置を記憶しており、障害物判定ステップ、カメラ選択ステップ、カメラ制御ステップ、及び、画像生成ステップを含んで構成される。
【００１７】
障害物判定ステップでは、前記記憶部に記憶される各カメラの位置および各オブジェクトの位置に基づいて、各カメラと注目キャラクタとの間を遮る障害物となるオブジェクトの有無をそれぞれ判別する。カメラ選択ステップでは、障害物がないと判別されたカメラのうち、いずれか１つのカメラを選択する。カメラ制御ステップでは、選択されたカメラを制御して、例えば、演出用の撮影動作を行わせる。画像生成ステップでは、制御された当該カメラによって撮影した画像を生成する。
【００１８】
すなわち、異なる方向から撮影する複数のカメラを用い、そのうちから、障害物に遮られずに注目キャラクタを撮影可能なカメラを選択して撮影するため、障害物が存在し得る状況においても、注目キャラクタを撮影することが可能となる。
この結果、障害物が存在し得る状況においても、注目キャラクタを適切に撮影した画像を生成することができる。
【００１９】
本発明の第３の観点に係るプログラムは、コンピュータ（電子機器を含む。）を、上記の画像生成装置として機能させるように構成する。
【００２０】
このプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記録媒体に記録することができる。
【００２１】
上記プログラムは、当該プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記録媒体は、当該コンピュータとは独立して配布・販売することができる。
【発明の効果】
【００２２】
本発明によれば、障害物が存在し得る状況においても、注目キャラクタを適切に撮影した画像を生成することができる。
【発明を実施するための最良の形態】
【００２３】
以下に本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム装置に本発明が適用される実施形態を説明するが、各種のコンピュータ、ＰＤＡ、携帯電話などの情報処理装置においても同様に本発明を適用することができる。すなわち、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素または全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【００２４】
（実施形態１）
図１は、本発明の実施の形態に係る画像生成装置が実現される典型的なゲーム装置の概要構成を示す模式図である。以下、本図を参照して説明する。
【００２５】
ゲーム装置１００は、ＣＰＵ（Central Processing Unit）１０１と、ＲＯＭ（Read Only Memory）１０２と、ＲＡＭ（Random Access Memory）１０３と、インターフェース１０４と、コントローラ１０５と、外部メモリ１０６と、ＤＶＤ（Digital Versatile Disk）−ＲＯＭドライブ１０７と、画像処理部１０８と、音声処理部１０９と、ＮＩＣ（Network Interface Card）１１０と、を備える。
【００２６】
なお、ゲーム用のプログラムおよびデータを記憶したＤＶＤ−ＲＯＭをＤＶＤ−ＲＯＭドライブ１０７に装着して、ゲーム装置１００の電源を投入することにより、当該プログラムが実行され、本実施形態の画像生成装置が実現される。
【００２７】
ＣＰＵ  １０１は、ゲーム装置１００全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。
【００２８】
ＲＯＭ  １０２には、電源投入直後に実行されるＩＰＬ（Initial Program Loader）が記録され、これが実行されることにより、ＤＶＤ−ＲＯＭに記録されたプログラムをＲＡＭ  １０３に読み出してＣＰＵ  １０１による実行が開始される。また、ＲＯＭ  １０２には、ゲーム装置１００全体の動作制御に必要なオペレーティングシステムのプログラムや各種のデータが記録される。
【００２９】
ＲＡＭ  １０３は、データやプログラムを一時的に記憶するためのもので、ＤＶＤ−ＲＯＭから読み出したプログラムやデータ、その他ゲームの進行やチャット通信に必要なデータが保持される。
【００３０】
インターフェース１０４を介して接続されたコントローラ１０５は、ユーザがゲーム実行の際に行う操作入力を受け付ける。たとえば、コントローラ１０５は、操作入力に従って、文字列（メッセージ）等の入力を受け付ける。
【００３１】
インターフェース１０４を介して着脱自在に接続された外部メモリ１０６には、ゲームの進行状態を示すデータ、チャット通信のログ（記録）のデータなどが書き換え可能に記憶される。ユーザは、コントローラ１０５を介して指示入力を行うことにより、これらのデータを適宜外部メモリ１０６に記録することができる。
【００３２】
ＤＶＤ−ＲＯＭドライブ１０７に装着されるＤＶＤ−ＲＯＭには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データが記録される。ＣＰＵ  １０１の制御によって、ＤＶＤ−ＲＯＭドライブ１０７は、これに装着されたＤＶＤ−ＲＯＭに対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらはＲＡＭ  １０３等に一時的に記憶される。
【００３３】
画像処理部１０８は、ＤＶＤ−ＲＯＭから読み出されたデータをＣＰＵ  １０１や画像処理部１０８が備える画像演算プロセッサ（図示せず）によって加工処理した後、これを画像処理部１０８が備えるフレームメモリ（図示せず）に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され画像処理部１０８に接続されるモニタ（図示せず）へ出力される。これにより、各種の画像表示が可能となる。
【００３４】
なお、画像演算プロセッサは、２次元の画像の重ね合わせ演算やαブレンディング等の透過演算、各種の飽和演算を高速に実行できる。
また、仮想３次元空間に配置され、各種のテクスチャ情報が付加されたポリゴン情報を、Ｚバッファ法によりレンダリングして、所定の視点位置から仮想３次元空間に配置されたポリゴンを俯瞰したレンダリング画像を得る演算の高速実行も可能である。
【００３５】
さらに、ＣＰＵ  １０１と画像演算プロセッサが協調動作することにより、文字の形状を定義するフォント情報にしたがって、文字列を２次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画することが可能である。フォント情報は、ＲＯＭ  １０２に記録されているが、ＤＶＤ−ＲＯＭに記録された専用のフォント情報を利用することも可能である。
【００３６】
音声処理部１０９は、ＤＶＤ−ＲＯＭから読み出した音声データをアナログ音声信号に変換し、これに接続されたスピーカ（図示せず）から出力させる。また、ＣＰＵ  １０１の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、これに対応した音声をスピーカから出力させる。
【００３７】
ＮＩＣ  １１０は、ゲーム装置１００をインターネット等のコンピュータ通信網（図示せず）に接続するためのものであり、ＬＡＮ（Local Area Network）を構成する際に用いられる１０ＢＡＳＥ−Ｔ／１００ＢＡＳＥ−Ｔ規格にしたがうものや、電話回線を用いてインターネットに接続するためのアナログモデム、ＩＳＤＮ（Integrated Services Digital Network）モデム、ＡＤＳＬ（Asymmetric Digital Subscriber Line）モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、これらとＣＰＵ  １０１との仲立ちを行うインターフェース（図示せず）により構成される。
【００３８】
このほか、ゲーム装置１００は、ハードディスク等の大容量外部記憶装置を用いて、ＲＯＭ  １０２、ＲＡＭ  １０３、外部メモリ１０６、ＤＶＤ−ＲＯＭドライブ１０７に装着されるＤＶＤ−ＲＯＭ等と同じ機能を果たすように構成してもよい。
また、ユーザからの文字列の編集入力を受け付けるためのキーボードや、各種の位置の指定および選択入力を受け付けるためのマウスなどを接続する形態も採用することができる。
【００３９】
また、本実施形態のゲーム装置１００にかえて、一般的なコンピュータ（汎用のパーソナルコンピュータ等）を画像生成装置として利用することもできる。たとえば、一般的なコンピュータは、上記ゲーム装置１００と同様に、ＣＰＵ、ＲＡＭ、ＲＯＭ、ＤＶＤ−ＲＯＭドライブ、および、ＮＩＣを備え、ゲーム装置１００よりも簡易な機能を備えた画像処理部を備え、外部記憶装置としてハードディスクを有する他、フレキシブルディスク、光磁気ディスク、磁気テープ等が利用できるようになっている。また、コントローラではなく、キーボードやマウスなどを入力装置として利用する。そして、ゲームプログラムをインストールした後に、そのプログラムを実行させると、画像生成装置として機能する。
【００４０】
（画像生成装置の概要構成）
図２は、本実施形態に係る画像生成装置の概要構成を示す模式図である。この画像生成装置は、一例として、３次元表示のアクションゲームやロールプレイングゲーム等において、所定のイベントが発生した際など、主人公キャラクタに注目させたい場合に、それまで視点となっていた仮想カメラから演出カメラ（演出用の仮想カメラ）に切り換え、注目キャラクタ（注目させたい主人公キャラクタ）について、ズームアップやパン等のような演出用の撮影動作を行う装置である。以下、本図を参照して説明する。
【００４１】
図示するように、画像生成装置２００は、オブジェクト情報記憶部２１０と、操作受付部２２０と、オブジェクト位置管理部２３０と、カメラ位置管理部２４０と、障害物判別部２５０と、カメラリスト２６０と、カメラ選択部２７０と、カメラ制御部２８０と、画像描画部２９０とを備えて構成される。
【００４２】
まず、オブジェクト情報記憶部２１０は、仮想空間内に配置される主人公キャラクタ（プレイヤキャラクタ）、敵キャラクタ、樹木、岩、及び、建物等の各種オブジェクトについての情報を記憶する。具体的には、各オブジェクトについて、３次元モデルやテクスチャといった情報が記憶されている。
なお、ＲＡＭ  １０３等が、このようなオブジェクト情報記憶部２１０として機能しうる。
【００４３】
操作受付部２２０は、プレイヤが操る主人公キャラクタに対する動作指示等の操作入力を受け付ける。例えば、操作受付部２２０は、所定方向に移動する、剣武器を使う（銃を撃ったり、剣を振ったりする）、物を拾う、しゃがむ、伏せる等の動作に対応した複数のボタン（一例として、コントローラ１０５に配置された方向キー，Ａボタン，Ｂボタン，Ｘボタン，Ｙボタン等）の何れかがプレイヤにより押下されることによって、主人公キャラクタに向けた操作入力を受け付ける。
なお、コントローラ１０５がこのような操作受付部２２０として機能しうる。
【００４４】
オブジェクト位置管理部２３０は、主人公キャラクタや敵キャラクタといった仮想空間内で位置が変化するオブジェクトの位置情報（現在位置や向き等）を管理する。例えば、主人公キャラクタは、操作受付部２２０によって受け付けた移動指示等に従って、仮想空間内の位置や向きが変化するため、オブジェクト位置管理部２３０にてその位置情報が管理される。また、敵キャラクタも所定のロジックに従って適宜移動し、仮想空間内の位置等が変化するため、同様に位置情報が管理される。
この他にも、オブジェクト位置管理部２３０は、建物、木、石等のような仮想空間内の位置が変わらないオブジェクトの位置情報も管理する。
なお、ＲＡＭ  １０３及びＣＰＵ  １０１が、このようなオブジェクト位置管理部２３０として機能しうる。
【００４５】
カメラ位置管理部２４０は、異なる方向から主人公キャラクタに臨む複数の演出カメラの位置を記憶する。
具体的にカメラ位置管理部２４０は、図３に示すように、主人公キャラクタＳＣの前方に配置される３つの演出カメラＥＣ１〜ＥＣ３の位置情報を管理する。なお、各演出カメラＥＣ１〜ＥＣ３の方向（撮影方向）は、撮影時に主人公キャラクタＳＣを向くように管理される。なお、図３では、説明を容易にするために、仮想空間における主人公キャラクタＳＣを上方から眺めた平面図で示している。以降の図でも、適宜このような平面図にて説明する。
これら演出カメラＥＣ１〜ＥＣ３の位置情報は、イベントに応じて定まる絶対位置であってもよく、主人公キャラクタＳＣの位置に応じて定まる相対位置であってもよい。
絶対位置の一例として、主人公キャラクタが特別の武器を拾う（入手する）ことにより、イベントが発生する場合では、その武器の初期位置（置いてあった位置等）に対向するようにそれぞれ定められた３つの位置などである。
また、相対位置の一例として、所定時間の経過（例えば、仕掛けた時限爆弾の炸裂等）にイベントが発生する場合では、主人公キャラクタの現在位置から所定距離を離れて対向する３つの位置などである。
なお、ＲＡＭ  １０３及びＣＰＵ  １０１が、このようなカメラ位置管理部２４０として機能しうる。
【００４６】
図２に戻って、障害物判別部２５０は、オブジェクト位置管理部２３０に記憶される各オブジェクトの位置情報及び、カメラ位置管理部２４０に記憶される各演出カメラの位置情報に基づいて、各演出カメラと主人公キャラクタとの間を遮る障害物の有無をそれぞれ判別する。
すなわち、障害物判別部２５０は、図４（ａ）に示すように、演出カメラＥＣ（ＥＣ１〜ＥＣ３）から主人公キャラクタＳＣへ向かう視線ＶＬ上に、障害物となるオブジェクトが存在するかどうかを判別する。
また、障害物判別部２５０は、図４（ｂ）に示すように、演出カメラＥＣを基点に、視線ＶＬと所定の角度θを成す複数の補助視線ＨＬを使用して、各補助視線ＨＬ上に、オブジェクトが存在するかどうかをそれぞれ判別するようにしてもよい。なお、この図４（ｂ）では、説明を容易にするために、水平方向にだけ補助視線ＨＬが広がる様子を示しているが、実際には、垂直方向へも同様に補助視線ＨＬが広がっているものとする。
このように補助視線ＨＬを使用した場合では、障害物により主人公キャラクタの一部が遮られる場合等も判別することができる。
なお、ＣＰＵ  １０１が、このような障害物判別部２５０として機能しうる。
【００４７】
図２に戻って、カメラリスト２６０は、障害物判別部２５０により障害物がないと判別された演出カメラの情報が格納される。
例えば、図５（ａ）に示すように、演出カメラＥＣ２の視線ＶＬ２を遮るように障害物ＳＢがあった場合（視線ＶＬ１，ＶＬ３は遮られない場合）、カメラリスト２６０には、図５（ｂ）に示すように、演出カメラＥＣ１，ＥＣ３の情報が格納される。
つまり、カメラリスト２６０には、障害物に遮られずに主人公キャラクタを撮影することのできる演出カメラの情報が格納されることになる。
なお、ＲＡＭ  １０３が、このようなカメラリスト２６０として機能しうる。
【００４８】
図２に戻って、カメラ選択部２７０は、カメラリスト２６０に格納された演出カメラのうち、１つのカメラを例えば、ランダムに選択する。つまり、障害物がないと判別されたカメラのうち、いずれか１つのカメラを選択する。
なお、全ての演出カメラに障害物があると判別され、カメラリスト２６０に演出カメラの情報が１つも格納されていない場合も生じうる。この場合、カメラ選択部２７０は、主人公キャラクタと障害物との距離が最も遠いものに対応した演出カメラを選択する。
例えば、図６（ａ）に示すように、演出カメラＥＣ１〜ＥＣ３の視線ＶＬ１〜ＶＬ３が全て、障害物ＳＢ１〜ＳＢ３により、それぞれ遮られた状況が生じたとする。この場合、カメラ選択部２７０は、図６（ｂ）に示すように、主人公キャラクタＳＣと障害物ＳＢ１との距離ｄ１、主人公キャラクタＳＣと障害物ＳＢ２との距離ｄ２、主人公キャラクタＳＣと障害物ＳＢ３との距離ｄ３をそれぞれ求める。そして、最も大きい（遠い）距離となる距離ｄ３に対応した演出カメラＥＣ３を選択する。
なお、演出カメラの視線上に複数の障害物が存在する場合も生じうる。この場合、主人公キャラクタに近い方の障害物が距離を求める対象となる。
そして、ＣＰＵ  １０１が、このようなカメラ選択部２７０として機能しうる。
【００４９】
図２に戻って、カメラ制御部２８０は、選択された演出カメラを制御して、演出用の撮影動作を行わせる。
例えば、カメラ制御部２８０は、ズームアップ、パン、揺らす等の演出用の撮影動作を行わせ、主人公キャラクタをプレイヤに注目させる動きのある画像を撮影する。
なお、全ての演出カメラについて障害物があると判別され、上述したカメラ選択部２７０によって、主人公キャラクタと障害物との距離が最も遠い演出カメラが選択されている場合に、カメラ制御部２８０は、選択された演出カメラを障害物よりも主人公キャラクタ側に移動させた後に、演出用の撮影動作を行わせる。
例えば、図７（ａ）のように、演出カメラＥＣ１〜ＥＣ３が障害物ＳＢ１〜ＳＢ３によって遮られている状態では、距離が最も遠い演出カメラＥＣ３が選択されている。この場合、カメラ制御部２８０は、図７（ｂ）に示すように、演出カメラＥＣ３の位置を、実質的な視点（図中のレンズ部）が障害物ＳＢ３を突き抜けて主人公キャラクタＳＣを撮影できる位置まで移動させた後に、演出用の撮影動作を行わせる。つまり、障害物ＳＢ３に遮られずに、かつ、主人公キャラクタＳＣをなるだけ遠くから撮影できる位置まで演出カメラＥＣ３を移動させる。そして、その移動位置から演出動作を開始させる。
そして、ＣＰＵ  １０１が、このようなカメラ制御部２８０として機能しうる。
【００５０】
図２に戻って、画像描画部２９０は、オブジェクト情報記憶部２１０に記憶されたオブジェクトの情報、及び、オブジェクト位置管理部２３０に管理されるキャラクタの位置情報等に従って、仮想空間内（視界内）のオブジェクトを、通常の仮想カメラ、又は、上述したカメラ制御部２８０に制御された演出カメラを視点としたゲーム画像を描画する。
具体的に、所定のイベントが発生し、上述のカメラ選択部２７０により、１つの演出カメラが選択された場合、画像描画部２９０は、カメラ制御部２８０に制御されるその演出カメラを視点とした画像を描画することになる。
例えば、カメラ制御部２８０が制御する演出用の撮影動作がズームアップである場合に、仮想カメラＥＣの視点は、図８（ａ）に示すように、位置Ｘから位置Ｙまで移動することになる。そのため、画像描画部２９０は、図８（ｂ）に示すような、演出カメラＥＣが位置Ｘにて撮影したゲーム画像を描画し、そして、演出カメラＥＣが位置Ｘから位置Ｙまで移動するにつれて、主人公キャラクタＳＣが拡大されて行き（ズームアップされて行き）、やがて、図８（ｃ）に示すような、演出カメラＥＣが位置Ｙにて撮影したゲーム画像を描画する。
この他にも、演出動作がパンや揺らす等である場合も、上記と同様に、画像描画部２９０は、演出カメラの位置や向き（視点位置や視線）に応じた画像を描画することになる。
なお、画像処理部１０８が、このような画像描画部２９０として機能しうる。
【００５１】
（画像生成装置の動作）
図９は、上述した構成の画像生成装置２００において実行される画像生成処理の流れを示すフローチャートである。以下、本図を参照して画像生成装置２００の動作について説明する。この画像生成処理は、例えば、ゲーム実行中において、所定のイベント発生条件を満たした際に、そのイベント処理に先立って実行される。なお、画像生成処理の開始時において、カメラリスト２６０は、クリアされている（何も登録されていない）ものとする。
【００５２】
ゲーム中において、所定のイベント発生要件が満たされると、まず、画像生成装置２００は、演出カメラの位置を設定する（ステップＳ３０１）。
すなわち、カメラ位置管理部２４０には、異なる３方向から主人公キャラクタに臨む複数の演出カメラの位置が設定される。つまり、上述の図３に示すような、主人公キャラクタに対向する各演出カメラＥＣ１〜ＥＣ３の位置情報が、カメラ位置管理部２４０に設定され管理される。なお、これら演出カメラＥＣ１〜ＥＣ３の位置は、上述したように、イベントに応じて定まる絶対位置であってもよく、主人公キャラクタＳＣの位置に応じて定まる相対位置であってもよい。
【００５３】
画像生成装置２００は、各演出カメラと主人公キャラクタとの間を遮る障害物の有無をそれぞれ判別し、障害物のない演出カメラをカメラリスト２６０に登録する（ステップＳ３０２）。
すなわち、障害物判別部２５０は、オブジェクト位置管理部２３０に記憶される各オブジェクトの位置情報及び、カメラ位置管理部２４０に記憶される各演出カメラの位置情報に基づいて、主人公キャラクタへ向かう各演出カメラの視線を遮る障害物の有無をそれぞれ判別する。そして、障害物判別部２５０は、障害物がないと判別した演出カメラの情報をカメラリスト２６０に格納する。
つまり、カメラリスト２６０には、障害物に遮られずに主人公キャラクタを撮影することのできる演出カメラの情報が格納される。なお、全ての演出カメラが障害物により遮られていると判別された場合に、カメラリスト２６０には、演出カメラの情報が１つも格納されないことになる。
【００５４】
画像生成装置２００は、カメラリスト２６０に演出カメラの情報が登録されているか否かを判別する（ステップＳ３０３）。つまり、障害物に遮られずに主人公キャラクタを撮影することのできる演出カメラの情報が１以上カメラリスト２６０に格納されているかどうかを判別する。
画像生成装置２００は、演出カメラの情報がカメラリスト２６０に登録されていると判別すると（ステップＳ３０３；Ｙｅｓ）、後述するステップＳ３０５に処理を進める。
【００５５】
一方、演出カメラの情報が登録されていないと判別した場合に（ステップＳ３０３；Ｎｏ）、画像生成装置２００は、主人公キャラクタと各障害物との距離を求める（ステップＳ３０４）。つまり、全ての演出カメラが障害物によって遮られているため、画像生成装置２００は、上述した図６（ｂ）に示すように、主人公キャラクタＳＣと障害物ＳＢ１との距離ｄ１、主人公キャラクタＳＣと障害物ＳＢ２との距離ｄ２、主人公キャラクタＳＣと障害物ＳＢ３との距離ｄ３をそれぞれ求める。
【００５６】
画像生成装置２００は、１つの演出カメラを選択する（ステップＳ３０５）。
まず、カメラリスト２６０に演出カメラの情報が登録されている場合に、カメラ選択部２７０は、そのリスト中から１つの演出カメラをランダムに選択する。つまり、障害物がないと判別された演出カメラのうち、いずれか１つの演出カメラを選択する。なお、カメラリスト２６０に登録されたのが１つだけの場合、自動的にその演出カメラが選択されることになる。
また、カメラリスト２６０に演出カメラの情報が登録されていない場合に、カメラ選択部２７０は、ステップＳ３０４にて求めた距離（主人公キャラクタと各障害物との距離）のうち、最も大きい（遠い）ものに対応した演出カメラを選択する。例えば、上述した図７（ａ）に示す場合では、主人公キャラクタから最も離れた障害物ＳＢ３に遮られた演出カメラＥＣ３を選択する。
【００５７】
画像生成装置２００は、演出カメラに演出用の撮影動作を行いつつ、その演出カメラから撮影されるゲーム画像を生成する（ステップＳ３０６）。
つまり、カメラ制御部２８０は、選択された演出カメラを制御して、例えば、ズームアップ等の演出用の撮影動作を開始する。なお、カメラリスト２６０に演出カメラの情報が登録されておらず、主人公キャラクタと障害物との距離が最も遠い演出カメラが選択されている場合に、カメラ制御部２８０は、選択された演出カメラを障害物よりも主人公キャラクタ側に移動させた後に、演出用の撮影動作を開始する。例えば、上述した図７（ｂ）に示すように、演出カメラＥＣ３の位置を、実質的な視点（図中のレンズ部）が障害物ＳＢ３を突き抜けて主人公キャラクタＳＣを撮影できる位置まで移動させた後に、演出用の撮影動作を行わせる。
そして、画像描画部２９０は、制御されている演出カメラを視点としたゲーム画像を描画する。
【００５８】
画像生成装置２００は、選択した演出カメラ（撮影動作を行っている演出カメラ）と主人公キャラクタとの間を遮る障害物の有無を判別する（ステップＳ３０７）。
つまり、選択した演出カメラが演出動作中において、その演出カメラと主人公キャラクタとの間に、新たな障害物が存在していないかどうかを判別する。
画像生成装置２００は、障害物がないと判別すると（ステップＳ３０７；Ｎｏ）、後述するステップＳ３１０に処理を進める。
【００５９】
一方、障害物があると判別した場合に（ステップＳ３０７；Ｙｅｓ）、画像生成装置２００は、主人公キャラクタとその障害物との距離が基準値以下であるか否かを判別する（ステップＳ３０８）。
例えば、仮想空間における基準距離を１．５ｍと設定している場合、主人公キャラクタと障害物との距離が、この１．５ｍ以下であるか否かを判別する。なお、この基準距離は、ゲーム中の状況等に応じて、適宜変更されるようにしてもよい。
【００６０】
画像生成装置２００は、主人公キャラクタとその障害物との距離が基準値以下でない、つまり、基準値より大きい（遠い）と判別すると（ステップＳ３０８；Ｎｏ）、後述するステップＳ３１０に処理を進める。つまり、その演出カメラを制御して、演出用の撮影動作を維持する。
その際、カメラ制御部２８０は、演出カメラの位置を、その障害物のぎりぎり前面（視点が障害物を突き抜けて主人公キャラクタを撮影できる位置）まで移動させた後に、演出動作を継続する。なお、障害物が移動している等により、一時的に遮られている状況である場合に、演出カメラの位置を変えずに、演出動作を継続してもよい。つまり、オブジェクト位置管理部２３０を参照して、その障害物（オブジェクト）が移動物であり、かつ、所定の速さ（移動量）にて移動していることを求めると（障害物の移動方向が、演出カメラの視線方向と異なる場合）、カメラ制御部２８０は、演出カメラの位置を変えずに、演出動作を継続する。
【００６１】
一方、主人公キャラクタとその障害物との距離が基準値以下であると判別した場合に（ステップＳ３０８；Ｙｅｓ）、画像生成装置２００は、演出カメラの選択処理を再度行う（ステップＳ３０９）。
すなわち、画像生成装置２００は、上述したステップＳ３０２〜Ｓ３０５と同じ処理を行い、演出カメラを再度選択し直す。
【００６２】
画像生成装置２００は、演出用の撮影動作が終了したか否かを判別する（ステップＳ３１０）。
つまり、カメラ制御部２８０によるズームアップ等の演出動作が完了したかどうかを判別する。
【００６３】
画像生成装置２００は、撮影動作が終了していないと判別すると（ステップＳ３１０；Ｎｏ）、ステップＳ３０６に処理を戻し、上述したステップＳ３０６〜Ｓ３１０の処理を繰り返し実行する。
一方、撮影動作が終了したと判別した場合に（ステップＳ３１０；Ｙｅｓ）、画像生成装置２００は、画像生成処理を終える。
【００６４】
このような画像生成処理によって、障害物が存在し得るような状況でも、３方向からの演出カメラのうち、障害物に遮られずに主人公キャラクタを撮影可能な演出カメラを適切に選択して撮影させることができる。
また、例えば、全ての演出カメラが障害物に遮られている場合でも、主人公キャラクタから最も離れた障害物の演出カメラを選択し、その障害物のぎりぎり前面（視点が障害物を突き抜けて主人公キャラクタを撮影できる位置）まで演出カメラを移動させて主人公キャラクタを撮影する。このため、演出カメラが主人公キャラクタに近づき過ぎることがなく、適切な画像を生成することができる。
この結果、障害物が存在し得る状況においても、注目させたい主人公キャラクタを適切に撮影した画像を生成することができる。
【００６５】
（他の実施形態）
上記の実施形態では、演出カメラのズーム等の演出動作を通常に（従来と同様に）行う場合について説明したが、演出カメラの移動量が規定値よりも大きい場合には、位置補間等により徐々に移動させることを行わずに、瞬時に移動させるようにしてもよい。
例えば、演出カメラの移動量が、一定時間内（例えば、１／６０秒間）に一定距離以上を移動した場合に、演出カメラを補間で移動させるのではなく瞬間移動させる。これにより、カット切り替えを行うように、画像が切り替わる画像を描画することができる。
【００６６】
上記の実施形態では、注目させたいキャラクタを一例として主人公キャラクタとし、この主人公キャラクタを演出カメラによって撮影する場合について説明したが、主人公キャラクタ以外のキャラクタ（ＮＰＣ等や他の動きのあるオブジェクト等でもよい）を注目させたいキャラクタとし、このキャラクタを演出カメラにて撮影するようにしてもよい。
例えば、主人公キャラクタの仲間になるキャラクタＸが登場するイベントが発生する際に、そのキャラクタＸに対して、演出動作を行うような状況も生じうる。この場合も、上記と同様に、キャラクタＸを３方向から臨むように演出カメラを配置する。そして、障害物に遮れずに撮影できる何れかの演出カメラ等を選択し、その演出カメラから演出動作させながら撮影したキャラクタＸの画像を生成するようにする。
この場合も、障害物が存在し得る状況において、注目させたいキャラクタを適切に撮影した画像を生成することができる。
【００６７】
上記の実施形態では、３方向のうちの何れかから撮影できるように演出カメラを３つ配置する場合について説明したが、演出カメラの数は、このような３つに限られるものではなく、２以上であれば適宜適用可能である。
【００６８】
以上説明したように、本発明によれば、障害物が存在し得る状況においても、注目キャラクタを適切に撮影した画像を生成することができる。
【図面の簡単な説明】
【００６９】
【図１】本発明の実施形態に係る情報処理装置の概要構成を示す模式図である。
【図２】本発明の実施形態に係る画像生成装置の概要構成を示す模式図である。
【図３】配置される演出カメラと主人公キャラクタとの関係を説明するための模式図である。
【図４】（ａ），（ｂ）共に、演出カメラの視線を遮る障害物を説明するための模式図である。
【図５】（ａ）が演出カメラと障害物との関係を示す模式図であり、（ｂ）がカメラリストの一例を示す模式図である。
【図６】（ａ），（ｂ）共に、演出カメラと各障害物との関係を説明するための模式図である。
【図７】（ａ），（ｂ）共に、全ての演出カメラが障害物により遮られている場合での、演出カメラの制御を説明するための模式図である。
【図８】（ａ）が演出カメラと主人公キャラクタとの関係を説明するための模式図であり、（ｂ），（ｃ）が生成されるゲーム画像の一例を示す模式図である。
【図９】本発明の実施形態に係る画像生成処理の一例を示すフローチャートである。
【符号の説明】
【００７０】
１００  ゲーム装置
１０１  ＣＰＵ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  インターフェース
１０５  コントローラ
１０６  外部メモリ
１０７  ＤＶＤ−ＲＯＭドライブ
１０８  画像処理部
１０９  音声処理部
１１０  ＮＩＣ
２００  画像生成装置
２１０  オブジェクト情報記憶部
２２０  操作受付部
２３０  オブジェクト位置管理部
２４０  カメラ位置管理部
２５０  障害物判別部
２６０  カメラリスト
２７０  カメラ選択部
２８０  カメラ制御部
２９０  画像描画部
【図１】
0004425963.tif 000002
【図２】
0004425963.tif 000003
【図３】
0004425963.tif 000004
【図４】
0004425963.tif 000005
【図５】
0004425963.tif 000006
【図６】
0004425963.tif 000007
【図７】
0004425963.tif 000008
【図８】
0004425963.tif 000009
【図９】
0004425963.tif 000010