(57)【要約】    【構成】  画像処理システム１０は据置型ゲーム装置１１を含み、据置型ゲーム装置１１に設けられるＲＡＭ１１ｂにはアニメーションデータが記憶される。このアニメーションデータには、画面切替のためのカメラパターンデータの識別情報が記憶される。カメラパターンデータは、注視点データの識別情報が記憶されるアドレスのポインタとカメラ動作プログラムの識別情報が記憶されるアドレスのポインタとを含む。したがって、カメラパターンデータに基づいて仮想カメラの注視点およびカメラ動作が変化され、画面表示が変化される。同じアニメーションデータを繰り返すとき、注視点データの識別情報とカメラ動作プログラムの識別情報とは、ランダムに並べ替えられる。    【効果】  同じアニメーションを繰り返すとき、注視点データおよびカメラ動作プログラムの識別情報を並べ替えるので、同じアニメーションであっても様々な映像を表示することができる。【選択図】  図１
2006039922.tif 000002
【特許請求の範囲】
【請求項１】
仮想３次元画像を生成する３次元画像生成装置であって、
画像を表示する表示手段、
複数の注視点データを記憶した注視点データ記憶手段、
仮想３次元空間において、前記注視点データに基づき、当該仮想３次元空間内の視点から見たときの画像を撮影する仮想カメラを制御するための複数のカメラ制御プログラムを記憶したカメラ制御プログラム記憶手段、
前記カメラ制御プログラムに従って前記仮想カメラを制御するカメラ制御手段、
前記仮想３次元画像を生成するための３次元画像データを記憶した３次元画像データ記憶手段、
前記仮想３次元画像の生成タイミングを時系列で記憶した画像生成シーケンス記憶手段、
前記画像生成シーケンスに従って、いずれか１つの前記注視点データといずれか１つの前記カメラ制御プログラムとを、時系列で順番に複数組指定する指定データを記憶した指定データ記憶手段、
前記画像データ記憶手段に記憶された３次元画像データを用いて、前記画像生成シーケンス記憶手段に記憶された生成タイミングで、前記仮想３次元画像を生成する仮想３次元画像生成手段、
前記仮想３次元画像生成手段によって生成された仮想３次元画像を、前記指定データに従って視点制御された前記仮想カメラによって撮影し、撮影された画像を前記表示手段に表示する２次元画像表示制御手段、および
前記画像生成シーケンスを繰り返す毎に、前記指定データ記憶手段の内容をランダムに更新する指定データ更新手段を備える、仮想３次元画像生成装置。
【請求項２】
前記指定データ記憶手段は、複数の注視点データをそれぞれ示す注視点指示データを、所望のグループ毎に記憶した注視点グループデータ記憶手段を含み、
前記指定データ更新手段は、前記注視点グループデータ記憶手段にグループ毎に記憶された注視点指示データを、各グループ内でランダムに並べ替える、請求項１記載の３次元画像生成装置。
【請求項３】
前記指定データ記憶手段は、複数のカメラ制御プログラムのそれぞれを示すカメラ制御指示データを、所望のグループ毎に記憶したカメラ制御グループデータ記憶手段を含み、
前記指定データ更新手段は、前記カメラ制御グループデータ記憶手段にグループ毎に記憶されたカメラ制御指示データを、各グループ内でランダムに並べ替える、請求項１または２記載の３次元画像生成装置。
【請求項４】
前記画像データ記憶手段は、複数のポリゴンから成る１または複数のオブジェクトを生成するためのオブジェクトデータを記憶し、
前記注視点データは、前記オブジェクトの前記仮想３次元空間上の配置位置に基づいて設定される、請求項１ないし３のいずれかに記載の３次元画像生成装置。
【請求項５】
画像を表示する表示手段と、複数の注視点データを記憶した注視点データ記憶手段と、仮想カメラを制御するための複数のカメラ制御プログラムを記憶したカメラ制御プログラム記憶手段と、仮想３次元画像の生成タイミングを時系列で記憶した画像生成シーケンス記憶手段と、画像生成シーケンスに従っていずれか１つの前記注視点データといずれか１つの前記カメラ制御プログラムとを時系列で順番に複数組指定する指定データを記憶した指定データ記憶手段と、仮想３次元画像を生成するための３次元画像データを記憶した画像データ記憶手段とを備えた３次元画像生成装置の３次元画像生成プログラムであって、
前記３次元画像生成装置のプロセサに、
仮想３次元空間において、前記注視点データに基づき、前記カメラ制御プログラムに従って前記仮想カメラを制御するカメラ制御ステップ、
前記画像データ記憶手段に記憶された３次元画像データを用いて、画像生成シーケンス記憶手段に記憶された生成タイミングで、仮想３次元画像を生成する仮想３次元画像生成ステップ、
前記仮想３次元画像生成ステップによって生成された仮想３次元画像を、前記指定データに従って視点制御された前記仮想カメラによって撮影し、撮影された画像を前記表示手段に表示する２次元画像表示制御ステップ、および
前記画像生成シーケンスを繰り返す毎に、前記指定データ記憶手段の内容をランダムに更新する指定データ更新ステップを実行させる、３次元画像生成プログラム。
【請求項６】
前記指定データ記憶手段は、複数の注視点データをそれぞれ示す注視点指示データを、所望のグループ毎に記憶した注視点グループデータ記憶手段を含み、
前記指定データ更新ステップは、前記注視点グループデータ記憶手段にグループ毎に記憶された注視点指示データを、各グループ内でランダムに並べ替える、請求項５記載の３次元画像生成プログラム。
【請求項７】
前記指定データ記憶手段は、複数の仮想カメラ制御プログラムをそれぞれ示すカメラ制御指示データを、所望のグループ毎に記憶したカメラ制御グループデータ記憶手段をさらに含み、
前記指定データ更新ステップは、前記カメラ制御グループデータ記憶手段に記憶されたカメラ制御指示データを、各グループ内でランダムに並べ替える、請求項５または６記載の３次元画像生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は３次元画像生成装置および３次元画像生成プログラムに関し、特にたとえば、ポリゴンデータを用いて、リアルタイムに合成されるゲームなどの仮想３次元アニメーション画像を生成し、画面表示する、３次元画像生成装置および３次元画像生成プログラムに関する。
【背景技術】
【０００２】
従来、仮想３次元空間を想定して、コンピュータグラフィックスの理論を用いて、ゲームなどのアニメーション画像をポリゴンデータ等から生成することがよく知られている。このようなアニメーション画像は、通常、創作者（クリエータ）が意図した再生手順（シーケンス）のデータに従って生成される。このため、同じアニメーションデータを使用する限りにおいては、同じ画像が毎回表示される。
【０００３】
一方、画像の表示が毎回同じにならないよう、その映像表現のバリエーションを広げる工夫をした技術がある。特許文献１によれば、３次元空間中に存在する物体群から空間の中心（物体群を包含する直方体の重心）を定め、この中心点を基準に注視点などを定める技術が開示されている。これによって、画面上の物体に応じた最適な画像が得られる。
【０００４】
また、特許文献２によれば、プレイヤが操作するキャラクタ（移動体）を表示するとき、プレイヤの腕前（初級か上級か）を考慮して、移動体の種類に応じて視点制御を変更する技術が開示されている。こうすることで、初級者が選ぶであろう移動体のときには、操作し易い視点切替を選択することができ、上級者では、迫力の有る映像が得られる視点切替を選択することができる。
【０００５】
さらに、特許文献３によれば、オブジェクトが移動するコースの特定ポイント毎に、異なる視点制御プログラムを選択できるように設定された技術が開示されている。これによって、コースの状況に相応しい映像が得られる。
【０００６】
そして、特許文献４によれば、実際のカメラで撮影した顔画像を、仮想３次元空間内で生成されたオブジェクトで利用し、その際入力された特徴データに基づいて、相応しいアニメーションを選択して表示する技術が開示されている。
【特許文献１】特開平８−１０６５４５
【特許文献２】特許第３０４６５７８号
【特許文献３】特許第３１２７１３７号
【特許文献４】特開２００４−４６７９３
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に開示された技術では、仮想３次元空間中に物体が多く存在するほど処理負担が大きくなってしまう。さらには、物体を包含する直方体の重心に基づいて視点を決定するので、たとえばアニメーションの創作者（クリエータ）が意図する映像表現と一致しない画像が生成される恐れがある。
【０００８】
また、特許文献２に開示された技術では、あくまでプレイヤの腕前に応じて、選択されるであろう移動体毎に、異なる視点制御を行うようにしているだけであり、同じ移動体を選択したときには、同じ映像が生成されてしまい、プレイヤが映像に飽きてしまう恐れがあった。
【０００９】
さらに、特許文献３に開示された技術では、コースの途中で視点制御プログラムを切り替えるようにしてあるが、あくまでコースの状態とプレイ感覚に相応しい切り替えを行うだけであって、変化に富んだ映像を生成することができなかった。
【００１０】
そして、特許文献４に開示された技術では、オブジェクトの特徴に応じて、相応しいアニメーションが自動的に選択されるようにしてあるため、視聴者がどのようなアニメーションが表示されるのか分からないことから、期待感を持たせることはできる。しかし、一度選択されたアニメーションの映像パターンまで異ならせることはできない。つまり、変化に富んだ映像を生成することができなかった。
【００１１】
それゆえに、この発明の主たる目的は、新規な、３次元画像生成装置および３次元画像生成プログラムすることである。
【００１２】
この発明の他の目的は、同じシーンであっても視聴者が飽きないように配慮されたアニメーションを表示できる、３次元画像生成装置および３次元画像生成プログラムを提供することである。
【００１３】
この発明のその他の目的は、アニメーションの再生において、創作者の意図を反映しながら、変化に富んだ映像を生成できる、３次元画像生成装置および３次元画像生成プログラムを提供することである。
【課題を解決するための手段】
【００１４】
請求項１の発明は、仮想３次元画像を生成する３次元画像生成装置であって、表示手段、注視点データ記憶手段、カメラ制御プログラム記憶手段、カメラ制御手段、３次元画像データ記憶手段、画像生成シーケンス記憶手段、指定データ記憶手段、仮想３次元画像生成手段、２次元画像表示制御手段、および指定データ更新手段を備える。表示手段は、画像を表示する。注視点データ記憶手段は、複数の注視点データを記憶する。カメラ制御プログラム記憶手段は、仮想３次元空間において、注視点データに基づき、当該仮想３次元空間内の視点から見たときの画像を撮影する仮想カメラを制御するための複数のカメラ制御プログラムを記憶する。カメラ制御手段は、カメラ制御プログラムに従って仮想カメラを制御する。３次元画像データ記憶手段は、仮想３次元画像を生成するための３次元画像データを記憶する。画像生成シーケンス記憶手段は、仮想３次元画像の生成タイミングを時系列で記憶する。指定データ記憶手段は、画像生成シーケンスに従って、いずれか１つの注視点データといずれか１つのカメラ制御プログラムとを、時系列で順番に複数組指定する指定データを記憶する。仮想３次元画像生成手段は、画像データ記憶手段に記憶された３次元画像データを用いて、画像生成シーケンス記憶手段に記憶された生成タイミングで、仮想３次元画像を生成する。２次元画像表示制御手段は、仮想３次元画像生成手段によって生成された仮想３次元画像を、指定データに従って視点制御された仮想カメラによって撮影し、撮影された画像を表示手段に表示する。そして、指定データ更新手段は、画像生成シーケンスを繰り返す毎に、指定データ記憶手段の内容をランダムに更新する。
【００１５】
請求項１の発明では、３次元画像生成装置（１１：実施例で相当する参照符号。以下、同じ。）は画像を表示する表示手段（１４）を備えている。注視点データ記憶手段（１１ｂ）は、注視点データを記憶する。また、カメラ制御プログラム記憶手段（１１ｂ）は、仮想３次元空間において、注視点データに基づき、当該仮想３次元空間内の視点から見たときの画像を撮影する仮想カメラを制御するための複数のカメラ制御プログラムを記憶する。カメラ制御手段（１１ａ，Ｓ２９，Ｓ３７，Ｓ４５）は、カメラ制御プログラムに従って仮想カメラを制御する。３次元画像データ記憶手段（１１ｂ）は、仮想３次元画像を生成するための３次元画像データを記憶する。画像生成シーケンス記憶手段（１１ｂ）は、仮想３次元画像の生成タイミングを時系列で記憶する。指定データ記憶手段（１１ｂ）は、画像生成シーケンスに従って、いずれか１つの注視点データといずれか１つのカメラ制御プログラムとを、時系列で順番に複数組指定する指定データを記憶する。仮想３次元画像生成手段（１１ａ）は、画像データ記憶手段（１１ｂ）に記憶された３次元画像データを用いて、画像生成シーケンス記憶手段（１１ｂ）に記憶された生成タイミングで、仮想３次元画像を生成する。２次元画像表示制御手段（１１ａ）は、仮想３次元画像生成手段（１１ａ）によって生成された仮想３次元画像を、指定データに従って視点制御された仮想カメラによって撮影し、撮影された画像を表示手段（１４）に表示する。指定データ更新手段（１１ａ，Ｓ４９）は、画像生成シーケンスを繰り返す毎に（Ｓ４７で“ＹＥＳ”）、指定データ記憶手段（１１ｂ）の内容をランダムに更新する。
【００１６】
請求項１の発明によれば、画像生成シーケンスを繰り返す毎に指定データ記憶手段の内容をランダムに更新するので、再生回数が異なれば、同じ画面切替のタイミングであっても、同じ注視点データや同じカメラ制御プログラムが選択されるのを回避することができる。つまり、変化に富んだアニメーションの画像を表示することができるので、視聴者が映像に飽きてしまうことがない。
【００１７】
請求項２の発明は請求項１に従属し、指定データ記憶手段は、複数の注視点データをそれぞれ示す注視点指示データを、所望のグループ毎に記憶した注視点グループデータ記憶手段を含み、指定データ更新手段は、注視点グループデータ記憶手段にグループ毎に記憶された注視点指示データを、各グループ内でランダムに並べ替える。
【００１８】
請求項２の発明では、注視点グループ記憶手段（１１ｂ）は、複数の注視点データをそれぞれ示す注視点指示データを、所望のグループ毎に記憶する。指定データ更新手段（１１ａ，Ｓ４９）は、注視点グループデータ記憶手段（１１ｂ）に記憶された注視点指示データを、各グループ内でランダムに並べ替える。
【００１９】
請求項２の発明によれば、たとえば、３次元画像生成プログラムの開発者や創作者の意図に従って注視点指示データをグループ化しておけば、各グループ内でランダムに注視点指示データを並べ替えた場合であっても、その意図を反映しながら、アニメーションの画像を変化させることができる。
【００２０】
請求項３の発明は請求項１または請求項２に従属し、指定データ記憶手段は、複数のカメラ制御プログラムのそれぞれを示すカメラ制御指示データを、所望のグループ毎に記憶したカメラ制御グループデータ記憶手段を含み、指定データ更新手段は、カメラ制御グループデータ記憶手段にグループ毎に記憶されたカメラ制御指示データを、各グループ内でランダムに並べ替える。
【００２１】
請求項３の発明では、カメラ制御グループデータ記憶手段（１１ｂ）は、複数のカメラ制御プログラムのそれぞれを示すカメラ制御指示データを、所望のグループ毎に記憶する。指定データ更新手段（１１ａ，Ｓ４９）は、カメラ制御グループデータ記憶手段（１１ｂ）にグループ毎に記憶されたカメラ制御指示データを、各グループ内でランダムに並べ替える。
【００２２】
請求項３の発明によれば、たとえば、３次元画像生成プログラムの開発者や創作者の意図に従ってカメラ制御指示データをグループ化しておけば、各グループ内でランダムにカメラ制御指示データを並べ替えた場合であっても、その意図を反映しながら、アニメーションの画像を変化させることができる。
【００２３】
請求項４の発明は請求項１ないし３のいずれかに従属し、画像データ記憶手段は、複数のポリゴンから成る１または複数のオブジェクトを生成するためのオブジェクトデータを記憶し、注視点データは、オブジェクトの仮想３次元空間上の配置位置に基づいて設定される、請求項１ないし３のいずれかに記載の３次元画像生成装置。
【００２４】
請求項４の発明では、画像データ記憶手段（１１ｂ）は、複数のポリゴンから成る１または複数のオブジェクトを生成するためのオブジェクトデータを記憶する。注視点データは、オブジェクトの仮想３次元空間上の配置位置に基づいて設定される。たとえば、オブジェクトの配置位置を当該オブジェクトの足元の位置に設定しておき、注視点を当該オブジェクトの頭部（顔）の中心位置に設定することが可能である。
【００２５】
請求項４の発明によれば、オブジェクトの配置位置に基づいて注視点が設定されるので、アニメーションの創作者の意図を反映し易くすることができる。
【００２６】
請求項５の発明は、画像を表示する表示手段と、複数の注視点データを記憶した注視点データ記憶手段と、仮想カメラを制御するための複数のカメラ制御プログラムを記憶したカメラ制御プログラム記憶手段と、仮想３次元画像の生成タイミングを時系列で記憶した画像生成シーケンス記憶手段と、画像生成シーケンスに従っていずれか１つの注視点データといずれか１つのカメラ制御プログラムとを時系列で順番に複数組指定する指定データを記憶した指定データ記憶手段と、仮想３次元画像を生成するための３次元画像データを記憶した画像データ記憶手段とを備えた３次元画像生成装置の３次元画像生成プログラムである。この３次元画像生成プログラムは、３次元画像生成装置のプロセサに、カメラ制御ステップ、３次元画像生成ステップ、２次元画像表示制御ステップ、および指定データ更新ステップを実行させる。カメラ制御ステップは、仮想３次元空間において、注視点データに基づき、カメラ制御プログラムに従って仮想カメラを制御する。仮想３次元画像生成ステップは、画像データ記憶手段に記憶された３次元画像データを用いて、画像生成シーケンス記憶手段に記憶された生成タイミングで、仮想３次元画像を生成する。２次元画像表示制御ステップは、仮想３次元画像生成ステップによって生成された仮想３次元画像を、指定データに従って視点制御された仮想カメラによって撮影し、撮影された画像を表示手段に表示する。そして、指定データ更新ステップは、画像生成シーケンスを繰り返す毎に、指定データ記憶手段の内容をランダムに更新する。
【００２７】
請求項５の発明においても、請求項１の発明と同様に、変化に富んだアニメーションの画像を表示することができる。
【発明の効果】
【００２８】
この発明によれば、画面切替制御の内容を、アニメーションの再生の度に変化させるので、毎回同じアニメーションが生成されることが無い。つまり、変化に富んだ映像を生成でき、視聴者が飽きるのを防止することができる。
【００２９】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【発明を実施するための最良の形態】
【００３０】
図１を参照して、この実施例の画像処理システム１０は、コントローラ１２が接続された据置型ゲーム装置１１を含む。この据置型ゲーム装置１１は、３次元画像生成装置（後述するＣＲＴ１４を含む。）および３次元画像生成プログラムを備えている。据置型ゲーム装置１１にはコントローラ１２が接続される。このコントローラ１２は、操作スイッチ１２ａおよびジョイスティック１２ｂを備える。操作スイッチ１２ａは、主にメニュー選択画面での決定操作に使用される。ジョイスティック１２ｂは、主にメニュー選択画面での方向指示操作や選択項目の変更操作に使用される。
【００３１】
据置型ゲーム装置１１を３次元画像生成装置として機能させるためのプログラムすなわち３次元画像生成プログラムは、ディスク型のＲＯＭのような外部記憶媒体１３から供給（ロード）される。据置型ゲーム装置１１には、ＣＲＴ（モニタ）１４が接続される。ＣＲＴ１４は典型的にはテレビモニタであり、このＣＲＴ１４には上述の３次元画像生成プログラムの処理によって作成される３次元画像（キャラクタ画像を含む。）が表示される。たとえば、操作者は、ＣＲＴ１４に表示される３次元画像を見ながら、コントローラ１２を操作してキャラクタ画像の形状を変更することができる。また、ＣＲＴ１４にはスピーカ１４ａが設けられ、このスピーカ１４ａからは、キャラクタ画像に関連するキャラクタ音声、ゲーム音楽（ＢＧＭ）などのゲームに必要な音が出力される。
【００３２】
なお、据置型ゲーム装置１１には、メモリカードのような外部データ記憶媒体１５が接続されてもよい。キャラクタ生成処理の途中経過（途中データ）を外部データ記憶媒体１５に記憶させれば、キャラクタ生成処理の一時的な中断が可能となる。また、キャラクタ生成処理の結果（結果データ）を外部データ記憶媒体１５に記憶されることもできる。
【００３３】
画像処理システム１０は、撮像装置として機能する携帯型ゲーム装置２０を含む。携帯型ゲーム装置２０は、携帯型ゲーム装置本体２１と撮像カートリッジ２２とを含む。携帯型ゲーム装置本体２１は、操作スイッチ２１ａを有する。被写体を撮影するとき、操作者は、操作スイッチ２１ａをシャッタボタンとして使用する。携帯型ゲーム装置２０はまた、ＬＣＤモニタ２１ｂを備える。ＬＣＤモニタ２１ｂは、携帯型ゲーム装置本体２１で処理されたプログラムの結果を画像として表示する。
【００３４】
撮像カートリッジ２２には、撮像ユニット２２ａが設けられる。撮像カートリッジ２２のＲＯＭ２２ｂ（図２参照）には、携帯型ゲーム装置本体２１を撮像装置として機能させるためのプログラムおよびデータが記憶されている。撮像ユニット２２ａによって撮影された画像データは、撮像カートリッジ２２のバックアップＲＡＭ（またはフラッシュメモリ）２２ｃ（図２参照）に記憶される。携帯型ゲーム装置２０は、接続ケーブル１６を介して据置型ゲーム装置１１に接続される。バックアップＲＡＭ２２ｃに記憶された画像データは、据え置き型ゲーム装置１１で使用することができる。
【００３５】
図２は、画像処理システム１０の電気的な構成を示すブロック図である。据置型ゲーム装置１１は、その全体制御を司るＣＰＵ１１ａを内蔵している。このＣＰＵ１１ａには、ＲＡＭ１１ｂが接続される。ＲＡＭ１１ｂには、ＣＰＵ１１ａによって処理されるプログラムやデータが一時的に記憶される。
【００３６】
ＣＰＵ１１ａにはまた、画像処理ユニット１１ｃおよび音声処理ユニット１１ｇがさらに接続されている。画像処理ユニット１１ｃは、ＣＰＵ１１ａからの指示に基づいて、ＲＡＭ１１ｂに記憶された画像データを処理する。画像処理ユニット１１ｃによって生成された画像データは、ビデオエンコーダ１１ｄを介してＣＲＴ１４から出力される。音声処理ユニット１１ｇは、ＣＰＵ１１ａからの指示に基づいて、ＲＡＭ１１ｂに記憶された音声データを処理する。音声処理ユニット１１ｃによって生成された音声データは、ＣＲＴ１４に設けられるスピーカ１４ａから出力される。
【００３７】
ＣＰＵ１１ａにはさらに、インタフェース１１ｅが接続される。インタフェース１１ｅは、ＲＡＭ１１ｂにも接続される。コントローラ１２は、インタフェース１１ｅを介してＣＰＵ１１ａに接続される。インタフェース１１ｅにはまた、ディスクドライブユニット１１ｆが接続される。外部記憶媒体１３のデータは、ＣＰＵ１１ａの指示に基づいて、ディスクドライブユニット１１ｆによって読み取られる。読み取られたデータは、ＲＡＭ１１ｂに転送される。プログラム処理によって得られたデータを保存するとき、このデータは、ＲＡＭ１１ｂから読み出され、インタフェース１１ｅを介して外部データ記憶媒体（たとえばメモリカード）１５に転送される。
【００３８】
携帯型ゲーム装置本体２１は、ＣＰＵ２１ｃを内蔵する。ＣＰＵ２１ｃは、ＲＡＭ２１ｄと接続される。ＲＡＭ２１ｄには、ＣＰＵ２１ｃのプログラム処理によって得られたデータが一時的に記憶される。画像処理ユニット２１ｅは、ＣＰＵ２１ｃおよびＲＡＭ２１ｄと接続される。画像処理ユニット２１ｅは、ＣＰＵ２１ｃの指示に基づいて、ＲＡＭ２１ｄに一時記憶された画像データを処理し、処理された画像データをＶＲＡＭ２１ｆに格納する。ＶＲＡＭ２１ｆに格納された画像データは、ＬＣＤドライバ２１ｇを介してＬＣＤモニタ２１ｂから出力される。
【００３９】
撮像カートリッジ２２は、コネクタを介して携帯型ゲーム装置本体２１に着脱可能とされる。また、撮像カートリッジ２２は、上述の撮像ユニット２２ａ，ＲＯＭ２２ｂおよびバックアップＲＡＭ２２ｃ、並びに、携帯型ゲーム装置本体２１と接続するためのインタフェース２２ｄを備える。
【００４０】
携帯型ゲーム装置本体２１のＣＰＵ２１ｃは、インタフェース２１ｈを介して、撮像カートリッジ２２にアクセスする。すなわち、ＣＰＵ２１ｃは、ＲＯＭ２２ｂに記憶されたプログラムおよびデータに基づいて、撮像ユニット２２ａを駆動し、かつ所定の処理によって撮像データを生成する。なお、生成された撮像データをバックアップメモリ２２ｃに保存するようにすれば、この画像データを他の携帯型ゲーム装置で使用することができる。
【００４１】
たとえば、操作者が操作スイッチ２１ａを操作すると、撮像ユニット２２ａによって撮影された被写体の画像データ（たとえば、顔画像データ）に所定の処理が施され、処理後の画像データがバックアップＲＡＭ２２ｃに格納される。この画像データは、キャラクタ画像の顔部分に貼り付けるためのテクスチャデータとして用いることができる。また、操作者が操作スイッチ２１ａを操作することのより、被写体の特徴、この実施例では、“性別”，“体型”，“性格”および“年齢”が決定され、これに対応するデータ（被写体特徴データ）が画像データに関連づけてＲＡＭ２２ｃに格納される。こうして得られた画像データ（顔画像データ）および被写体特徴データは、操作者が操作スイッチ２１ａを操作することにより、接続ケーブル１６を介して据置型ゲーム装置１１に送信することができる。
【００４２】
図３は据置型ゲーム装置１１に設けられたＲＡＭ１１ｂのメモリマップ３０である。この図３を参照して分かるように、ＲＡＭ１１ｂは、プログラム記憶領域３２およびデータ記憶領域３４に区分される。プログラム記憶領域３２は、３次元画像生成プログラム（３２ａ〜３２ｇ）および３次元画像表示プログラム（３２ｈ）を記憶する。３次元画像生成プログラムは、オブジェクト生成プログラム３２ａ、アニメーション選択プログラム３２ｂ、カメラ処理プログラム３２ｃ、カメラ制御プログラム３２ｄ、画面切替制御プログラム３２ｅ、２次元画像生成プログラム３２ｆおよび画面切替データ更新プログラム３２ｇによって構成される。
【００４３】
オブジェクト生成プログラム３２ａは、オブジェクト画像データ（図４参照）を用いて、仮想３次元空間内に存在するオブジェクトを生成するためのプログラムである。アニメーション選択プログラム３２ｂは、予め用意されているアニメーションデータ（図４参照）を選択するためのプログラムである。カメラ処理プログラム３２ｃは、アニメーションデータに含まれる画面切替タイミングで、当該画面切替タイミングに対応して記憶されたカメラパターンの識別情報を読み出し、読み出した識別情報が示すカメラパターンに設定される注視点情報およびカメラ制御情報が示す注視点およびカメラ動作プログラムに従って仮想カメラ（図示せず）を制御（視点制御）するように、カメラ制御プログラム３２ｄを設定する。
【００４４】
ここで、注視点情報は、仮想カメラが撮影すべき被写体すなわち３次元仮想空間に存在するオブジェクトの注視点を示す指定データが記憶された記憶領域を示すポインタであり、カメラ制御情報は、カメラ動作プログラムを示す指定データが記憶された記憶領域を示すポインタである。なお、注視点およびカメラ動作プログラムについては、後で詳細に説明する。
【００４５】
カメラ制御プログラム３２ｄは、カメラ処理プログラム３２ｃで設定された注視点およびカメラ制御に従ってカメラ動作（仮想カメラの動作）を制御するためのプログラムである。この実施例では、カメラ制御プログラム３２ｄは、第１カメラ動作プログラム３２２，第２カメラ動作プログラム３２４，…によって構成される。ここで、カメラ動作プログラムは、仮想カメラの動作を制御するためのプログラムであり、仮想カメラの向き、ズーム（ズームイン／ズームアウト）および回転（左回転、右回転）の少なくとも１つを制御するためのプログラムである。したがって、カメラ制御プログラム３２ｄは、カメラ処理プログラム３２ｃで設定されたカメラ動作プログラムに従う動作で、同じくカメラ処理プログラム３２ｃで設定された注視点に仮想カメラが向くように、仮想カメラの視点制御を行うのである。
【００４６】
画面切替制御プログラム３２ｅは、アニメーション選択プログラム３２ｂによって選択されたアニメーションデータに含まれる画面切替タイミング（切替制御位置）で、画面切替データ（図４参照）に従って画像を切り替えるためのプログラムである。２次元画像生成プログラム３２ｆは、３次元仮想空間を視点から見た３次元画像を２次元画像に変換（投影変換）するためのプログラムである。つまり、３次元仮想空間を仮想カメラで撮影した画像を生成するためのプログラムである。
【００４７】
画面切替データ更新プログラム３２ｇは、アニメーションデータに従うアニメーションの表示が終了し、当該アニメーションの表示を繰り返すときに、画面切替データ記憶領域４８の内容、すなわち当該画面切替データ記憶領域４８に含まれる注視点指示データ記憶領域４８ａ（図４参照）およびカメラ制御指示データ記憶領域４８ｂ（図４参照）の内容を、ランダムに更新するためのプログラムである。具体的には、注視点指示データ記憶領域４８ａ内にグループ毎に記憶された注視点データの識別情報を、各グループ内でランダムに並べ替えるとともに、カメラ制御指示データ記憶領域４８ｂ内にグループ毎に記憶されたカメラ動作プログラムの識別情報を、各グループ内でランダムに並べ替える。画像表示プログラム３２ｈは、２次元画像生成プログラム３２ｆに従って生成された２次元画像をＣＲＴ１４に表示するためのプログラムである。
【００４８】
図４は図３に示したデータ記憶領域３４の具体的な内容を示す図解図である。この図４を参照して、データ記憶領域３４は、注視点データ記憶領域４０、オブジェクト画像データ記憶領域４２、アニメーションシーケンスデータ記憶領域４４、カメラパターンデータ記憶領域４６、画面切替データ記憶領域４８およびその他のデータ記憶領域５０によって構成される。
【００４９】
注視点データ記憶領域４０は、第１注視点データ４０ａ、第２注視点データ４０ｂ、…を記憶する。これらの注視点データは、たとえば、３次元仮想空間に存在する人物キャラクタやアニメキャラクタ等のキャラクタ（オブジェクト）であり、所望のオブジェクトに対して所望の位置に設定される注視点についての座標（３次元座標）のデータ（以下、「座標データ」という。）である。
【００５０】
たとえば、注視点はキャラクタ（オブジェクト）の頭部に設定することができるが、これに限定される必要はなく、オブジェクト毎に異なる位置に設定することも可能である。また、注視点は、所望のオブジェクトに１つだけ設定されるものではなく、たとえば一人の人物（オブジェクト）について、頭部、胴部および左腕、右腕などに別々の注視点データを設定してもよい。
【００５１】
オブジェクト画像データ記憶領域４２には、第１オブジェクトデータ４２ａ、第２オブジェクトデータ４２ｂ、…が記憶される。各オブジェクトデータは、当該オブジェクトの画像を生成するためのポリゴンデータおよびテクスチャデータを含む。たとえば、第１オブジェクトデータ４２ａは、ポリゴンデータ４２０およびテクスチャデータ４２２によって構成される。また、第２オブジェクトデータ４２ｂは、ポリゴンデータ４２４およびテクスチャデータ４２６によって構成される。ただし、各ポリゴンデータは複数のポリゴンについてのデータであり、また、各テクスチャデータは複数のテクスチャについてのデータである。
【００５２】
アニメーションシーケンスデータ記憶領域４４には、第１アニメーションデータ４４ａ、第２アニメーションデータ４４ｂ、…が記憶される。アニメーションデータは、３次元空間に存在するオブジェクトのそれぞれに、３次元画像生成プログラムの開発者や創作者の意図した動作をさせるためのデータである。たとえば、ライブ会場を想定した３次元仮想空間において、１または複数のオブジェクトに楽器を演奏させたり、歌を歌わせたりするような動作をさせることができる。また、公園を想定した３次元仮想空間において、１または複数のオブジェクトに遊具（ブランコ、鉄棒、すべり台など）で遊ばせたり、複数のオブジェクが集まって鬼ごっこをしたりするような動作をさせることもできる。つまり、アニメーションデータは、１または複数のオブジェクトについてのアニメーションを実行するためのデータである。また、アニメーションデータには、画面を生成する（切り替える）ためのタイミングを指定する画面切替タイミングが記憶されており、この画面切替タイミングとしては、上述したように、カメラパターンデータ（パターンデータ）の識別情報（ラベル）が記憶される。
【００５３】
カメラパターンデータ記憶領域４６は、パターンαデータ４６ａ、パターンβデータ４６ｂ、…などを記憶する。パターンデータは、画面切替データ記憶領域４８に含まれる注視点データおよびカメラ制御プログラムを指定するためのポインタであり、固定的に決定されている。このパターンデータの識別情報（ラベル）が、上述したアニメーションデータの画面切替タイミングに対応して記憶（記録）されている。したがって、画面切替タイミングで、当該画面切替タイミングに対応するパターンデータが示す注視点データおよびカメラ制御プログラムが読み出され、これに従って仮想カメラが制御される。詳しく説明すると、パターンデータに含まれるポインタが示すアドレスに記憶された注視点データの識別情報およびカメラ動作プログラムの識別情報が後述する画面切替データ記憶領域４８から読み出され、各識別情報が示す注視点データおよびカメラ動作プログラムが設定される。仮想カメラは、設定されたカメラ動作プログラムに従ってその動作を制御されるとともに、設定された注視点データが示す注視点を向くように制御される。このようにして、仮想カメラの動作が制御（視点制御）されるのである。
【００５４】
画面切替データ記憶領域４８は、画面生成または画面切替のためのデータ（画面切替データ）を記憶する領域であり、さらに、注視点指示データ記憶領域４８ａおよびカメラ制御指示データ記憶領域４８ｂが設けられる。注視点データ記憶領域４８ａは注視点データを指定（指示）するための識別情報を記憶し、カメラ制御プログラム記憶領域４８ｂはカメラ動作プログラムを指定（指示）するための識別情報を記憶する。この実施例では、注視点データの識別情報およびカメラ動作プログラムの識別情報は、それぞれ、複数用意されており、画像生成プログラムの開発者ないし創作者の意図する集まりでグループ分けされている。
【００５５】
なお、図４においては、説明の都合上、識別情報として、オブジェクト名およびカメラ動作プログラムの名称を記載してある。
【００５６】
たとえば、注視点指示データ記憶領域４８ａでは、グループＡとして、ポインタＰＡ−１が示すアドレスに第１オブジェクト（たとえば、第１注視点データ）の識別情報が記憶され、ポインタＰＡ−２が示すアドレスに第４オブジェクト（たとえば、第４注視点データであり、図４では省略してある。）の識別情報などが記憶される。また、同じく注視点指示データ記憶領域４８ａでは、グループＢとして、ポインタＰＢ−１が示すアドレスに第ｎオブジェクト（たとえば、第ｎ注視点データであり、図４では省略してある。）の識別情報が記憶され、ポインタＰＢ−２が示すアドレスに第２オブジェクト（たとえば、第２注視点データ）の識別情報が記憶される。
【００５７】
なお、図４で各グループ内に複数の指示データを記載しているが、グループ内の指示データは１つでもよく（この場合は、毎回同じ指示データが選択される）、一方、指示データが増えれば増えるほど、並べ替えられる指示データの要素が増加するので、より多くのランダムなアニメーションを表示することができるようになる。
【００５８】
また、カメラ制御指示データ記憶領域４８ｂでは、グループＡとして、ポインタＣＡ−１が示すアドレスに第１カメラ動作プログラムの識別情報が記憶され、ポインタＣＡ−２が示すアドレスに第２カメラ動作プログラムの識別情報が記憶される。また、同じくカメラ制御指示データ記憶領域４８ｂでは、グループＢとして、ポインタＣＢ−１が示すアドレスに第ｎカメラ動作プログラム（図３では省略した。）の識別情報が記憶され、ポインタＣＢ−２が示すアドレスに第５カメラ動作プログラム（図３では省略した。）の識別情報などが記憶される。
【００５９】
なお、カメラ動作プログラムの識別情報も、注視点データの識別情報と同様に、各グループ内に少なくとも２つ以上記憶される。
【００６０】
その他のデータ記憶領域５０は、画像生成プログラムおよび画像表示プログラムの実行により発生するデータやフラグを一時記憶する等に用いられる領域である。
【００６１】
図５はＣＲＴ１４に表示される画面（アニメーション画像）の一例を示す図解図である。この図５では、ＣＲＴ１４の画面中央に存在する人物Ａ（たとえば、第１オブジェクト）の顔が、その左右に存在する人物Ｂ（たとえば、第２オブジェクト）および人物Ｃ（たとえば、第３オブジェクト）の顔よりも大きく表示されている。このような画面を表示する場合には、たとえば、注視点は人物Ａすなわち第１オブジェクトである。また、このような場合には、図６に示すように、仮想３次元空間内に第１オブジェクト〜第３オブジェクトが配置されている。この図６に示すような状態では、第１オブジェクトは、第２オブジェクトおよび第３オブジェクトよりも仮想カメラに近い位置に配置されている。また、仮想カメラが、点線で示す位置から実線で示す位置に、所定の角度だけ左回転したとする。したがって、この場合には、画面切替タイミングにおいては、カメラパターンデータに従って、第１オブジェクトの注視点データが選択され、仮想カメラを左回転させるカメラ動作プログラムが選択されたことが分かる。
【００６２】
なお、図５においては、動画像を表示することができないため、図６に示したように、仮想カメラが動作した後の画面を示してある。
【００６３】
図７は図４に示した画面切替データ記憶領域４８（画面切替データ）の具体例を示す図解図であり、図８は図７に示す画面切替データに基づいて、或るアニメーションデータに従う時系列（画像生成のシーケンス）に対するＣＲＴ１４の画面表示の変化（切替）を説明するための図解図である。
【００６４】
図８に示すように、切替制御位置αには、カメラパターンα（パターンα）のラベルが記憶される。このカメラパターンαには、図４に示したように、注視点情報としてポインタＰＡ−１が設定され、カメラ動作情報としてポインタＣＡ−１が設定されている。したがって、ここでは、ポインタＰＡ−１が示すアドレスに記憶されたオブジェクト（注視点データ）の識別情報が取得され、ポインタＣＡ−１が示すアドレスに記憶されたカメラ動作プログラムの識別情報が取得される。
【００６５】
図７に示す例では、分かり易く示すために、注視点データの識別情報としては、人物オブジェクトの名称が記憶されているものとし、また、カメラ動作プログラムの識別情報としては、カメラ動作の名称が記憶されているものとしてある。したがって、カメラパターンαに従うと、図７に示すように、注視点データの識別情報として「ケイコ」が取得され、カメラ制御プログラムの識別情報として「ズームイン」が取得される。この取得された内容（注視点およびカメラ動作プログラム）に従って仮想カメラが視点制御され、図８の右上段に示すように、「ケイコ」の顔が次第に拡大された（ズームインされた）画面がＣＲＴ１４に表示される。
【００６６】
なお、図８においては、動画を表示することができないため、カメラ動作が制御された後の画面を示してある。以下、同様である。
【００６７】
次に、図８に示す切替制御位置βには、カメラパターンβのラベルが記憶される。このカメラパターンβには、図４に示したように、注視点情報としてポインタＰＢ−１が設定され、カメラ動作情報としてポインタＣＡ−１が設定されている。したがって、ここでは、ポインタＰＢ−１が示すアドレスに記憶されたオブジェクト（注視点データ）の識別情報が取得され、ポインタＣＡ−１が示すアドレスに記憶されたカメラ動作プログラムの識別情報が取得される。したがって、カメラパターンβに従うと、図７に示すように、注視点データの識別情報として「タカシ」が取得され、カメラ動作プログラムの識別情報として「ズームイン」が取得される。この取得された内容（注視点およびカメラ動作プログラム）に従って仮想カメラが視点制御され、図８の右中段に示すように、「タカシ」の顔が次第に拡大された（ズームされた）画面がＣＲＴ１４に表示される。
【００６８】
なお、このようにカメラパターンαとカメラパターンβにおいて、同じポインタＣＡ−１を指定することができるので、意図的に切替制御位置において同じカメラ動作をさせたちという制作者の意図も反映させることができる。
【００６９】
さらに、図８に示す切替制御位置γでは、カメラパターンγのラベルが記憶される。このカメラパターンγには、図４では省略したが、注視点情報としてポインタＰＡ−２が設定され、カメラ動作情報としてポインタＣＣ−１が設定されている。したがって、ここでは、ポインタＰＡ−２が示すアドレスに対応して記憶されたオブジェクト（注視点データ）の識別情報が取得され、ポインタＣＣ−１が示すアドレスに記憶されたカメラ動作プログラムの識別情報が取得される。したがって、カメラパターンγに従うと、図７に示すように、注視点データの識別情報として「ノリコ」が取得され、カメラ動作プログラムの識別情報として「右回転」が取得される。この取得された内容（注視点およびカメラ動作プログラム）に従って仮想カメラが視点制御され、図８の右下段に示すように、「ノリコ」の顔を撮影しつつ、仮想カメラを右回転させた状態の画面がＣＲＴ１４に表示される。
【００７０】
このようにして、アニメーションデータに従って画面表示が変化されるのであるが、カメラパターンは固定であるため、何ら手当てを施さない場合には、同じアニメーションデータに従って画面表示を繰り返すと、同じ映像が何度も表示されることになる。たとえば、このような画面表示をゲームに適用した場合には、同じ場面では同じ画像が表示されることとなり、ユーザないしプレイヤは映像に飽きてしまい、さらには、ゲーム自体への興味が減退してしまう恐れがある。
【００７１】
これを回避するため、この実施例では、同じアニメーションデータに従う画面表示のシーケンスが繰り返されるとき、次のシーケンスが開始される直前に、画面切替データ記憶領域４８の内容を更新するようにしてある。ただし、画面生成プログラムの開発者や創作者の意図を反映した画面表示をするために、注視点データの識別情報やカメラ動作プログラムの識別情報はグループ化されており、各グループ内でランダムに識別情報を並べ替えるようにしてある。この点で、注視点データの識別情報のグループは或る時点において表示したい所望の被写体の集まりと言え、また、カメラ動作プログラムの識別情報のグループは所望の演出に必要なカメラ動作の集まりであると言える。
【００７２】
以下、具体的に説明することにする。図９（Ａ）は或るアニメーションデータに従う１回目の再生（画面表示）に用いられる画面切替データ（画面切替データ記憶領域４８）の例を示し、図９（Ｂ）は当該アニメーションデータに従う２回目の再生に用いられる画面切替データの例を示す。上述したように、図９（Ｂ）の画面切替データは、或るアニメーションデータに従う１回目の再生が終了した後、当該アニメーションデータに従う２回目の再生を開始するに先立って、図９（Ａ）に示す画面切替データの内容（画面切替データ記憶領域４８）を更新したものである。
【００７３】
なお、図示は省略するが、３回目以降の再生においても、再生を繰り返す直前に、画面切替データの内容を更新する点は同様である。
【００７４】
図９（Ａ）および図９（Ｂ）を参照して、注視点指示データ記憶領域４８ａおよびカメラ制御指示データ記憶領域４８ｂの内容を１回目の再生と２回目の再生とで対比すると、各グループ内の識別情報が並べ替えられているのが分かる。これは、識別情報を、ランダムに並べ替えるようにしてあるためである。つまり、この実施例では、「ランダムに並べ替える」とは、前回（並べ替える前）とは必ず異なる注視点やカメラ動作プログラムが選択されるように、識別情報を並べ替えることを意味する。
【００７５】
図９（Ａ）に示すような画面切替データ（画面切替データ記憶領域４８）を用いて画面表示（再生）を行うと、図１０（Ａ）に示すように、画面切替制御タイミングに対応するカメラパターンに従って画面表示が変化される。ただし、図９（Ａ）に示す画面切替データは図７に示す画面切替データと同じであるため、図７および図８に示した場合と同じアニメーションデータに従って画面表示される場合には、図１０（Ａ）に示すように、図８に示した場合と同様に、画面表示が行われる。この場合の画面表示についての詳細な内容は、図７および図８を用いて既に説明したため、重複した説明は省略する。
【００７６】
図９（Ｂ）に示すような画面切替データを用いて再生を行うと、図１０（Ｂ）に示すように、画面表示が変化される。ただし、図１０（Ｂ）は２回目の再生であり、図１０（Ａ）に示す１回目の再生が終了した後に、同じアニメーションデータに従って実行される。つまり、同じアニメーションデータに従うため、切替制御位置α，β，γに対応して記憶されるカメラパターンのラベルは同じである。しかし、上述したように、画面切替データの内容が更新されているため、異なる画面（映像）が表示される。
【００７７】
具体的には、２回目の再生では、切替制御位置αにはカメラパターンαのラベルが記憶されており、上述したように、当該カメラパターンαには、注視点情報としてポインタＰＡ−１が設定され、カメラ動作情報としてポインタＣＡ−１が設定されている。このカメラパターンαに従うと、図９（Ｂ）に示すように、ポインタＰＡ−１が示すアドレスに記憶された「ノリコ」が取得され、ポインタＣＡ−１が示すアドレスに記憶された「ズームアウト」が取得される。したがって、図１０（Ｂ）の上段に示すように、「ノリコ」の顔が次第に小さくなるように、仮想カメラがズームアウトされる。
【００７８】
また、切替制御位置βにはカメラパターンβのラベルが記憶されており、上述したように、当該カメラパターンβには、注視点情報としてポインタＰＢ−１が設定され、カメラ動作情報としてポインタＣＡ−１が設定されている。このカメラパターンβに従うと、図９（Ｂ）に示すように、ポインタＰＢ−１が示すアドレスに記憶された「アキラ」が取得され、ポインタＣＡ−１が示すアドレスに記憶された「ズームアウト」が取得される。したがって、図１０（Ｂ）の中段に示すように、「アキラ」の顔（全身）が次第に小さくなるように、仮想カメラがズームアウトされる。
【００７９】
さらに、切替制御位置γにはカメラパターンγのラベルが記憶されており、上述したように、当該カメラパターンγには、注視点情報としてポインタＰＡ−２が設定され、カメラ制御情報としてポインタＣＣ−１が設定されている。このカメラパターンγに従うと、図９（Ｂ）に示すように、ポインタＰＡ−２が示すアドレスに記憶された「ケイコ」が取得され、ポインタＣＣ−１が示すアドレスに記憶された「左回転」が取得される。したがって、図１０（Ｂ）の下段に示すように、「ケイコ」の顔を左から正面を撮影するように、仮想カメラが左回転される。
【００８０】
なお、図１０（Ａ）および図１０（Ｂ）においても、動画像を表現することはできないため、カメラ制御の後の画面を示してある。
【００８１】
このように、同じアニメーションデータに従って繰り返し画面（映像）を表示する場合であっても、回が異なる毎に、画面切替データ（画面切替データ記憶領域４８）を更新するので、同じタイミングで同じ画面が表示されるのを回避することができる。ただし、上述したように、画面切替データの内容を、ランダムに並べ替えるようにしてあるため、或る画面切替のタイミングにおいては、前回と今回とで同じ画面が表示されることもあるが、映像全体としては異なるため、繰り返し再生されても、ユーザが飽きてしまうことはない。
【００８２】
具体的には、図２に示したＣＰＵ１１ａが図１１に示すフロー図に従って画面生成・表示処理を実行する。図１１を参照して、ＣＰＵ１１ａは処理を開始すると、ステップＳ１で、初期設定を実行する。たとえば、メニュー画面を表示して、アニメーションデータを決定するためのシチュエーション（たとえば、ライブハウス，公園）を、ユーザに選択させたり、当該シチュエーションに登場する人物（オブジェクト）を選択させたりする。また、シチュエーションや登場人物の選択が終了した後に、アニメーション表示（画面表示）を開始するか否かを選択するためのスタートメニューを表示する。
【００８３】
次のステップＳ３では、アニメーション表示するかどうかを判断する。つまり、スタートメニューでアニメーション表示の開始が選択されたかどうかを判断する。アニメーション表示の開始が選択されていなければ、ステップＳ３で“ＮＯ”となり、そのままステップＳ１に戻る。しかし、アニメーション表示の開始が選択されれば、ステップＳ５でアニメーションを選択する。つまり、初期設定において選択されたシチュエーションに対応するアニメーションデータをＲＡＭ１１ｂのデータ記憶領域３４に設けられるアニメーションシーケンスデータ記憶領域４４から選択する。
【００８４】
続いて、ステップＳ７で、後述するアニメーション処理（図１２および図１３参照）を実行し、ステップＳ９で、画面生成・表示処理を終了するかどうかを判断する。つまり、このステップＳ９では、ユーザによってアニメーション表示の終了が指示されたかどうかを判断するのである。ステップＳ９で“ＮＯ”であれば、つまりアニメーション表示の終了でなければ、そのままステップＳ１に戻る。一方、ステップＳ９で“ＹＥＳ”であれば、つまりアニメーション表示の終了であれば、画像生成・表示処理を終了する。
【００８５】
なお、図示は省略するが、アニメーション表示が開始されると、仮想カメラで撮影される映像がＣＲＴ１４に表示される。
【００８６】
図１２および図１３は、図１１に示したステップＳ７のアニメーション処理を示すフロー図である。図１２に示すように、ＣＰＵ１１ａはアニメーション処理を開始すると、ステップＳ２１で、アニメーションの初期設定を行う。ここでは、たとえば、ユーザによって選択された登場人物の初期の配置位置を設定する。つまり、登場人物の初期の配置位置に対応する位置座標をデータ記憶領域３４の注視点データ記憶領域４０に記憶する。その後、各登場人物すなわち各オブジェクトの位置座標はアニメーションデータに従って更新される。
【００８７】
次のステップＳ２３では、図１１に示したステップＳ５で選択されたアニメーションデータを読み出す。そして、ステップＳ２５で、切替制御位置αに対応して記憶されたラベルが示すカメラパターンαを読み出す。この実施例では、上述したように、カメラパターンαには、注視点情報としてポインタＰＡ−１が設定され、カメラ制御情報としてポインタＣＡ−１が設定されている（図４参照）。つまり、ステップＳ２５では、これらのポインタを読み出すのである。以下、同様である。
【００８８】
次のステップＳ２７では、カメラパターンαが指定する注視点情報（ポインタＰＡ−１）から実際の注視点を特定する。つまり、ポインタＰＡ−１が示すアドレスに記憶されたオブジェクト（注視点データ）の識別情報に基づいて、注視点データ記憶領域４０から当該注視点データすなわち座標データを取得する。次に、ステップＳ２９で、カメラパターンαが指定するカメラ動作情報（ポインタＣＡ−１）に対応するカメラ制御プログラムに従って、カメラパターンαが指定する実際の注視点に対して視点制御を行う。したがって、上述したように、１回目の再生では、「ケイコ」が次第に拡大するように、画面表示される。
【００８９】
続いて、ステップＳ３１で、アニメーションデータを読み出し、ステップＳ３３で、カメラパターンβを読み出す。上述したように、カメラパターンβには、注視点情報としてポインタＰＢ−１が設定され、カメラ動作情報としてポインタＣＡ−１が設定されており、これらのポインタが読み出される。
【００９０】
次のステップＳ３５では、カメラパターンβが指定する注視点情報（ＰＢ−１）から実際の注視点を特定する。注視点の特定は、上述のステップＳ２７と同じであるため、重複した説明は省略する。続いて、ステップＳ３７では、カメラパターンβが指定するカメラ動作制御情報（ＣＡ−１）に対応する実際のカメラ制御プログラムに従って、カメラパターンβが指定する実際の注視点に対して視点制御を行う。したがって、上述したように、１回目の再生では、「タカシ」の顔が次第に大きくなるように画面表示される。
【００９１】
図１３に示すように、ステップＳ３７に続いて、アニメーションデータを読み出し、アニメーションデータに記憶されたカメラパターンに従って視点制御を行う処理が、記憶されたカメラパターン（画面切替位置）の数（厳密には、カメラパターンの総数−３）と同じ回数だけ、上述と同様に行われる。そして、ステップＳ３９で、アニメーションデータを読み出し、ステップＳ４１で最終のカメラパターンを読み出す。次にステップＳ４３で、最終のカメラパターンが指定する注視点情報から実際の注視点を特定し、ステップＳ４５で、最終のカメラパターンが指定するカメラ動作情報に対応する実際のカメラ制御プログラムに従って、最終のカメラパターンが指定する実際の注視点に対して視点制御を行う。
【００９２】
そして、ステップＳ４７で、アニメーションを繰り返すかどうかを判断する。つまり、当該アニメーションデータに従う画面表示を続けて行うかどうかを判断する。ここで、“ＮＯ”であれば、つまりアニメーションを繰り返さない場合には、そのままアニメーション処理をリターンする。一方、“ＹＥＳ”であれば、つまりアニメーションを繰り返す場合には、ステップＳ４９で、注視点情報およびカメラ動作情報の識別情報をグループ毎にランダムに並べ替えて、図１２に示したステップＳ２１に戻る。
【００９３】
なお、図示は省略したが、アニメーションデータに従って、３次元仮想空間に存在するオブジェクトの動作は制御される。また、仮想カメラで捉えた映像（画像）は、視点変換された後、２次元画像として、ＣＲＴ１４に表示される。したがって、視点制御により得られる画像をＣＲＴ１４に表示することができるのである。
【００９４】
この実施例によれば、アニメーションを繰り返す場合には、注視点情報とカメラ制御情報との画面切替データの内容を更新するので、全く同じアニメーションが表示されてしまうのを防止することができる。言い換えると、ユーザを飽きさせない画面表示が可能である。
【００９５】
また、この実施例によれば、画像生成プログラムの開発者や創作者の意図でグループ化した注視点データの識別情報とカメラ動作プログラムの識別情報とを各グループ内で並べ替えるだけなので、当該開発者等の意図を反映しながら、変化に富んだ映像を生成することが可能である。
【００９６】
さらに、この実施例によれば、オブジェクトの配置位置に基づいて注視点が設定されるので、アニメーションの創作者の意図を反映し易くすることができる。
【００９７】
なお、この実施例では、注視点データの識別情報とカメラ動作プログラムの識別情報とをグループ分けして、アニメーションデータに従う画面表示を繰り返すときに、両方の識別情報を各グループ内でランダムに並べ替えるようにしたが、いずれか一方の識別情報を並べ替えるようにしても、回が異なる毎に、異なる映像を表示することができる。
【００９８】
また、この実施例では、毎回異なる注視点およびカメラ動作プログラムが選択されるようにするため、その識別情報をランダムに並べ替えるようにしたが、すべての切替制御位置において、必ずしも異なる注視点およびカメラ制御プログラムが選択されることを創作者が意図しない場合には、それらの識別情報をシャッフルするようにしてもよい。つまり、一部（或るグループ内）の識別情報の並びがシャッフルする前とシャッフルした後とで同じであってもよい。
【００９９】
さらに、この実施例では、画像生成装置および画像生成プログラムを据置型ゲーム装置に適用した場合について説明したが、携帯型ゲーム装置や画像生成機能を備える他の装置（機器）に適用することも可能である。
【図面の簡単な説明】
【０１００】
【図１】図１はこの発明の画像生成装置を適用した据置型ゲーム装置を備える画像処理システムの構成を示す図解図である。
【図２】図２は図１に示す画像処理システムの電気的な構成を示すブロック図である。
【図３】図３は図１および図２に示す据置型ゲーム装置に設けられるＲＡＭのメモリマップを示す図解図である。
【図４】図４は図３に示すメモリマップに含まれるデータ記憶領域の具体例を示した図解図である。
【図５】図５は図１および図２に示すＣＲＴの表示画面の一例を示す図解図である。
【図６】図６は図５に示す表示画面が出力される場合の仮想３次元空間におけるオブジェクトの配置および仮想カメラの動作を説明するための図解図である。
【図７】図７は図４に示す画面切替データ記憶領域の具体例を示す図解図である。
【図８】図８は図７の画面切替データ記憶領域に記憶された注視点データの識別情報とカメラ動作プログラムの識別情報とに基づいて或るアニメーションデータに従う画面表示の変化を説明するための図解図である。
【図９】図９は１回目の再生と２回目の再生とにおける画面切替データ記憶領域の例を示す図解図である。
【図１０】図１０は図９に示した画面切替データ記憶領域に記憶された注視点データの識別情報とカメラ動作プログラムの識別情報とを用いた場合の画面表示の例を示す図解図である。
【図１１】図１１は図２に示す据置型ゲーム装置のＣＰＵの画面生成・表示処理を示すフロー図である。
【図１２】図１２は図２に示す据置型ゲーム装置のＣＰＵのアニメーション処理の一部を示すフロー図である。
【図１３】図１３は図１２に示すフロー図に後続するアニメーション処理の他の一部を示すフロー図である。
【符号の説明】
【０１０１】
１０  …画像処理システム
１１  …据置型ゲーム装置
１２  …コントローラ
１３  …据置型ゲーム装置用外部記憶媒体
１４  …ＣＲＴ
２０  …携帯型ゲーム装置
２１ａ  …操作スイッチ
２１ｂ  …ＬＣＤモニタ
２２ａ  …撮像ユニット
【図１】
2006039922.tif 000003
【図２】
2006039922.tif 000004
【図３】
2006039922.tif 000005
【図４】
2006039922.tif 000006
【図５】
2006039922.tif 000007
【図６】
2006039922.tif 000008
【図７】
2006039922.tif 000009
【図８】
2006039922.tif 000010
【図９】
2006039922.tif 000011
【図１０】
2006039922.tif 000012
【図１１】
2006039922.tif 000013
【図１２】
2006039922.tif 000014
【図１３】
2006039922.tif 000015