(57)【特許請求の範囲】
【請求項１】
表示装置に画像を表示するゲーム装置のコンピュータで実行されるゲームプログラムであって、
前記コンピュータに、
所定のゲーム中または当該ゲーム開始前に、被写体を撮像している撮像装置から顔画像を取得して第１記憶領域に一時的に記憶する画像取得ステップと、
前記第１記憶領域に記憶された顔画像を含むキャラクタオブジェクトである第１キャラクタオブジェクトを作成するステップと、
前記所定のゲームにおいて前記第１キャラクタオブジェクトに関連するゲームを、プレイヤの操作に応じて進行させる第１のゲーム処理ステップと、
前記第１キャラクタオブジェクトに関連するゲームでの成功を判定する判定ステップと、
前記判定ステップにおいてゲームでの成功が少なくとも判定された場合、前記第１記憶領域に記憶された前記顔画像を、第２記憶領域に蓄積的に保存するステップと、
前記判定ステップにおいてゲームが成功しなかったと判定された場合、前記第１記憶領域に記憶された前記顔画像を廃棄するステップとを実行させる、ゲームプログラム。
【請求項２】
前記画像取得ステップでは、前記所定のゲームの開始前に、前記顔画像が取得されて前記第１記憶領域に一時的に記憶される、請求項１に記載のゲームプログラム。
【請求項３】
前記コンピュータに、
前記第２記憶領域に保存された顔画像から自動的にまたはプレイヤにより選択された顔画像を含む第２キャラクタオブジェクトを作成するステップを、さらに実行させ、
前記第１のゲーム処理ステップでは、前記所定のゲームにおいて前記第２キャラクタオブジェクトに関連するゲームを、プレイヤの操作に応じてさらに進行させる、請求項１または２に記載のゲームプログラム。
【請求項４】
前記コンピュータに、
前記第２記憶領域に保存された顔画像から自動的にまたはプレイヤにより選択された顔画像を含む第２キャラクタオブジェクトを作成するステップと、
前記第２キャラクタオブジェクトに関連するゲームを、プレイヤの操作に応じて進行させる第２のゲーム処理ステップとを、さらに実行させる、請求項１または２に記載のゲームプログラム。
【請求項５】
前記ゲーム装置は、前記撮像装置から画像を取得可能であり、
前記画像取得ステップでは、前記所定のゲームの開始前に、前記撮像装置から前記顔画像が取得される、請求項２から４のいずれか１項に記載のゲームプログラム。
【請求項６】
前記ゲーム装置は、前記撮像装置として、前記表示装置の表示面の外面前方方向を撮像する第１の撮像装置、および前記表示装置の表示面の背面方向を撮像する第２の撮像装置から画像を取得可能であり、
前記画像取得ステップは、
前記第２の撮像装置の撮像による顔画像の取得より、前記第１の撮像装置の撮像による顔画像を優先的に取得するステップと、
前記第１の撮像装置からの顔画像が前記第２記憶領域に保存された後に、前記第２の撮像装置の撮像による顔画像の取得を許容するステップとを含む、請求項５に記載のゲームプログラム。
【請求項７】
前記第２記憶領域に保存された顔画像の属性を特定するステップと、
前記第２記憶領域に保存された顔画像から特定された属性とは異なる属性に該当する顔
画像の取得をプレイヤに促すステップとを、前記コンピュータにさらに実行させる、請求項１から６のいずれか１項に記載のゲームプログラム。
【請求項８】
前記第１のゲーム処理ステップは、プレイヤの操作に応じてキャラクタオブジェクトを攻撃することによって前記第１キャラクタオブジェクトに関連するゲームを進行させるステップを含み、
前記第１のゲーム処理ステップでは、前記第１キャラクタオブジェクトへの攻撃が前記第１キャラクタオブジェクトに関連するゲームを成功させるために有効な攻撃とされ、前記第２キャラクタオブジェクトに対する攻撃が当該ゲームの成功に対して無効な攻撃とされる、請求項３に記載のゲームプログラム。
【請求項９】
前記第２キャラクタオブジェクトに含まれる顔画像とは異なる顔画像を含む第３キャラクタオブジェクトを作成するステップを、さらに前記コンピュータに実行させ、
前記第２のゲーム処理ステップは、プレイヤの操作に応じてキャラクタオブジェクトを攻撃することによって前記第２キャラクタオブジェクトに関連するゲームを進行させるステップを含み、
前記第２のゲーム処理ステップでは、前記第２キャラクタオブジェクトへの攻撃が前記第２キャラクタオブジェクトに関連するゲームを成功させるために有効な攻撃とされ、前記第３キャラクタオブジェクトに対する攻撃が当該ゲームの成功に対して無効な攻撃とされる、請求項４に記載のゲームプログラム。
【請求項１０】
前記第１記憶領域に記憶された顔画像を含み、前記第１キャラクタオブジェクトよりも寸法の小さい第３キャラクタオブジェクトを作成するステップと、
前記第１記憶領域に記憶された顔画像とは異なる顔画像を含み、前記第１キャラクタオブジェクトよりも寸法の小さい第４キャラクタオブジェクトを作成するステップとを、前記コンピュータにさらに実行させ、
前記第１のゲーム処理ステップは、
プレイヤの操作に応じてキャラクタオブジェクトを攻撃することによって前記第１キャラクタオブジェクトに関連するゲームを進行させるステップと、
前記第４キャラクタオブジェクトが攻撃を受けた場合、前記第１キャラクタオブジェクトに含まれる顔画像の変形を進行させるステップと、
前記第３キャラクタオブジェクトが攻撃を受けた場合、前記第１キャラクタオブジェクトに含まれる顔画像が前記第１記憶領域に記憶された元の顔画像に近づくように、前記変形を後退させるステップとを含む、請求項３に記載のゲームプログラム。
【請求項１１】
前記第２キャラクタオブジェクトに含まれる顔画像と同じ顔画像を含み、前記第２キャラクタオブジェクトよりも寸法の小さい第３キャラクタオブジェクトを作成するステップと、
前記第２キャラクタオブジェクトに含まれる顔画像と異なる顔画像を含み、前記第２キャラクタオブジェクトよりも寸法の小さい第４キャラクタオブジェクトを作成するステップとを、前記コンピュータにさらに実行させ、
前記第２のゲーム処理ステップは、
プレイヤの操作に応じてキャラクタオブジェクトを攻撃することによって前記第２キャラクタオブジェクトに関連するゲームを進行させるステップと、
前記第４キャラクタオブジェクトが攻撃を受けた場合、前記第２キャラクタオブジェクトに含まれる顔画像の変形を進行させるステップと、
前記第３キャラクタオブジェクトが攻撃を受けた場合、前記第２キャラクタオブジェクトに含まれる顔画像が前記第２記憶領域に保存された元の顔画像に近づくように、前記変形を後退させるステップとを含む、請求項４に記載のゲームプログラム。
【請求項１２】
前記第１キャラクタオブジェクトを作成するステップでは、前記第１記憶領域に記憶された顔画像を変形させた顔画像を含むキャラクタオブジェクトが、前記第１キャラクタオブジェクトとして作成され、
前記第１のゲーム処理ステップは、前記第１キャラクタオブジェクトに関連するゲームが成功であったときに、前記変形させた顔画像を前記第１記憶領域に記憶された元の顔画像に復帰させるステップを含む、請求項１から１１のいずれか１項に記載のゲームプログラム。
【請求項１３】
前記第２キャラクタオブジェクトを作成するステップでは、前記第２記憶領域に保存された顔画像を変形させた顔画像が含むキャラクタオブジェクトが、前記第２キャラクタオブジェクトとして作成され、
前記第２のゲーム処理ステップは、前記第２キャラクタオブジェクトに関連するゲームが成功であったときに、前記変形させた顔画像を前記第２記憶領域に保存された元の顔画像に復帰させるステップを含む、請求項４に記載のゲームプログラム。
【請求項１４】
前記画像取得ステップでは、前記所定のゲーム中に、前記顔画像が取得されて前記第１記憶領域に一時的に記憶され、
前記第１のゲーム処理ステップでは、前記所定のゲーム中に前記顔画像が取得され前記第１キャラクタオブジェクトが作成されたことに応じて、当該所定のゲームに当該第１キャラクタオブジェクトを登場させて前記第１キャラクタオブジェクトに関連するゲームを進行させる、請求項１に記載のゲームプログラム。
【請求項１５】
前記撮像装置によって撮像された撮像画像を取得する撮像画像取得ステップと、
前記撮像画像取得ステップにおいて取得された撮像画像を背景として、前記所定のゲームに登場する仮想キャラクタオブジェクトが配置された表示画像を生成する表示画像生成ステップと、
前記表示画像生成ステップにおいて生成された画像を前記表示装置に表示する表示制御ステップとを、さらに前記コンピュータに実行させ、
前記画像取得ステップでは、前記所定のゲーム中に前記表示装置に表示されている前記撮像画像から少なくとも１つの顔画像が抽出されて前記第１記憶領域に一時的に記憶される、請求項１４に記載のゲームプログラム。
【請求項１６】
前記表示画像生成ステップでは、前記画像取得ステップにおいて抽出された顔画像の前記撮像画像における位置と重なって前記表示装置に表示されるように、前記第１キャラクタオブジェクトを配置して前記表示画像を生成する、請求項１５に記載のゲームプログラム。
【請求項１７】
前記撮像画像取得ステップでは、前記撮像装置によってリアルタイムに撮像された実世界の撮像画像が繰り返し取得され、
前記表示画像生成ステップでは、前記撮像画像取得ステップにおいて繰り返し取得された撮像画像が順次背景として設定され、
前記画像取得ステップでは、順次背景として設定される前記撮像画像から、既に抽出された前記顔画像に対応する顔画像が繰り返し取得され、
前記第１キャラクタオブジェクトを作成するステップでは、前記画像取得ステップにおいて繰り返し取得される顔画像を含むように前記第１キャラクタオブジェクトが繰り返し作成され、
前記表示画像生成ステップでは、前記画像取得ステップにおいて繰り返し取得されている顔画像の前記撮像画像における位置と重なって前記表示装置に表示されるように、前記繰り返し作成されている前記第１キャラクタオブジェクトが配置されて前記表示画像が生成される、請求項１６に記載のゲームプログラム。
【請求項１８】
表示装置を接続可能な画像処理装置であって、
所定のゲーム中または当該ゲーム開始前に、被写体を撮像している撮像装置から顔画像を取得して第１記憶領域に一時的に記憶する画像取得手段と、
前記第１記憶領域に記憶された顔画像を含むキャラクタオブジェクトを作成する手段と、
前記所定のゲームにおいて前記キャラクタオブジェクトに関連するゲームを、前記表示装置に表示してプレイヤの操作に応じて進行させるゲーム処理手段と、
前記キャラクタオブジェクトに関連するゲームでの成功を判定する判定手段と、
前記判定手段においてゲームでの成功が少なくとも判定された場合、前記第１記憶領域に記憶された前記顔画像を、第２記憶領域に蓄積的に保存する手段と、
前記判定手段においてゲームが成功しなかったと判定された場合、前記第１記憶領域に記憶された前記顔画像を廃棄する手段とを備える、画像処理装置。
【請求項１９】
表示装置と、
所定のゲーム中または当該ゲーム開始前に、被写体を撮像している撮像装置から顔画像を取得して第１記憶領域に一時的に記憶する画像取得手段と、
前記第１記憶領域に記憶された顔画像を含むキャラクタオブジェクトを作成する手段と、
前記所定のゲームにおいて前記キャラクタオブジェクトに関連するゲームを、前記表示装置に表示してプレイヤの操作に応じて進行させるゲーム処理手段と、
前記キャラクタオブジェクトに関連するゲームでの成功を判定する判定手段と、
前記判定手段においてゲームでの成功が少なくとも判定された場合、前記第１記憶領域に記憶された前記顔画像を、第２記憶領域に蓄積的に保存する手段と、
前記判定手段においてゲームが成功しなかったと判定された場合、前記第１記憶領域に記憶された前記顔画像を廃棄する手段とを備える、画像処理装置。
【請求項２０】
画像を含む情報を表示装置に表示する画像処理システムであって、
所定のゲーム中または当該ゲーム開始前に、被写体を撮像している撮像装置から顔画像を取得して第１記憶領域に一時的に記憶する画像取得手段と、
前記第１記憶領域に記憶された顔画像を含むキャラクタオブジェクトを作成する手段と、
前記所定のゲームにおいて前記キャラクタオブジェクトに関連するゲームを、前記表示装置に表示してプレイヤの操作に応じて進行させるゲーム処理手段と、
前記キャラクタオブジェクトに関連するゲームでの成功を判定する判定手段と、
前記判定手段においてゲームでの成功が少なくとも判定された場合、前記第１記憶領域に記憶された前記顔画像を、第２記憶領域に蓄積的に保存する手段と、
前記判定手段においてゲームが成功しなかったと判定された場合、前記第１記憶領域に記憶された前記顔画像を廃棄する手段とを有する、画像処理システム。
【請求項２１】
表示装置に画像を表示するコンピュータが実行する画像処理方法であって、前記コンピュータが
所定のゲーム中または当該ゲーム開始前に、被写体を撮像している撮像装置から顔画像を取得して第１記憶領域に一時的に記憶する画像取得ステップと、
前記第１記憶領域に記憶された顔画像を含むキャラクタオブジェクトを作成するステップと、
前記所定のゲームにおいて前記キャラクタオブジェクトに関連するゲームを、プレイヤの操作に応じて進行させるゲーム処理ステップと、
前記キャラクタオブジェクトに関連するゲームでの成功を判定する判定ステップと、
前記判定ステップにおいてゲームでの成功が少なくとも判定された場合、前記第１記憶領域に記憶された前記顔画像を、第２記憶領域に蓄積的に保存するステップと、
前記判定ステップにおいてゲームが成功しなかったと判定された場合、前記第１記憶領域に記憶された前記顔画像を廃棄するステップとを実行する、画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲームプログラム、画像処理装置、画像処理システム、および画像処理方法に関する。
【背景技術】
【０００２】
従来、実世界と仮想世界とを合成した画像を表示する装置が提案されている（例えば、特許文献１参照）。また、実世界で得られる情報である、ユーザ画像を用いたゲーム等の情報処理技術も提案されている（例えば、特許文献２参照）。この技術では、ゲーム進行中に、画像データに含まれるユーザ画像（人間の顔領域の画像など）が予め定められた条件を満足するタイミングで、画像データが撮像される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−７２６６９号公報
【特許文献２】特開２０１０−１４２５９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
顔領域の画像（以下、顔画像）は、人、あるいは、生物の最も特徴的な部分の画像であり、実世界を仮想の世界に反映するための情報として極めて有用である。しかしながら、従来の技術では、実世界での状況を仮想の世界に反映できるという顔画像の特徴が十分に生かされていなかった。
【０００５】
本発明の目的は、ユーザによる顔画像の取得、収集等を支援するとともに、顔画像により実世界を反映した仮想の世界を表現することができるようにすることである。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明は例えば以下のような構成を採用し得る。なお、特許請求の範囲の記載を解釈する際に、特許請求の範囲の記載によってのみその範囲が解釈されるべきであることが理解され、特許請求の範囲の記載と本欄の記載とが矛盾する場合には、特許請求の範囲の記載が優先する。
【０００７】
本発明のゲームプログラムの一構成例は、表示装置に画像を表示するゲーム装置のコンピュータで実行される。上記ゲームプログラムは、画像取得ステップ、第１キャラクタオブジェクトを作成するステップ、第１のゲーム処理ステップ、判定ステップ、および第２記憶領域に蓄積的に保存するステップを、コンピュータに実行させる。画像取得ステップは、所定のゲーム中または当該ゲーム開始前に、顔画像を取得して第１記憶領域に一時的に記憶する。第１キャラクタオブジェクトを作成するステップは、第１記憶領域に記憶された顔画像を含むキャラクタオブジェクトである第１キャラクタオブジェクトを作成する。第１のゲーム処理ステップは、所定のゲームにおいて第１キャラクタオブジェクトに関連するゲームを、プレイヤの操作に応じて進行させる。判定ステップは、第１キャラクタオブジェクトに関連するゲームでの成功を判定する。第２記憶領域に蓄積的に保存するステップは、判定ステップにおいてゲームでの成功が少なくとも判定された場合、第１記憶領域に記憶された顔画像を、第２記憶領域に蓄積的に保存する。
【０００８】
上記によれば、プレイヤは、ゲームでの成功が判定されるまでは、ゲーム中またはゲーム開始前に取得して一時的に第１記憶領域に記憶された顔画像を第２記憶領域に保存できず、緊張感を味わうことになる。一方、ゲームでの成功が判定された場合に、第２記憶領域に顔画像が保存されることで、例えば、第１のゲーム処理ステップでのゲームが終了した後でも取得した顔画像の活用が可能となるようにすれば、プレイヤは、極めて熱心に集中力を持って第１のゲーム処理ステップでのゲームに取り組むことになる。
【０００９】
また、上記画像取得ステップでは、所定のゲームの開始前に、顔画像が取得されて第１記憶領域に一時的に記憶されてもよい。
【００１０】
上記によれば、所定のゲームの開始前に取得された顔画像を第２記憶領域に保存する対象として第１のゲーム処理ステップでのゲームを行うことができる。
【００１１】
また、上記ゲームプログラムは、第２キャラクタオブジェクトを作成するステップを、さらにコンピュータに実行させてもよい。第２キャラクタオブジェクトを作成するステップは、第２記憶領域に保存された顔画像から自動的にまたはプレイヤにより選択された顔画像を含む第２キャラクタオブジェクトを作成する。この場合、第１のゲーム処理ステップでは、所定のゲームにおいて第２キャラクタオブジェクトに関連するゲームを、プレイヤの操作に応じてさらに進行させてもよい。
【００１２】
上記によれば、第２記憶領域に保存された顔画像をゲームに活用できるようになる。したがって、今回の所定のゲームにおいて取得した顔画像を含むキャラクタオブジェクトと前回までに保存した顔画像を含むキャラクタオブジェクトとに関連するゲームを進行できるため、ゲームにおいて多様な表現が可能となる。
【００１３】
また、上記ゲームプログラムは、第２キャラクタオブジェクトを作成するステップおよび第２のゲーム処理ステップを、さらにコンピュータに実行させてもよい。第２キャラクタオブジェクトを作成するステップは、第２記憶領域に保存された顔画像から自動的にまたはプレイヤにより選択された顔画像を含む第２キャラクタオブジェクトを作成する。第２のゲーム処理ステップは、第２キャラクタオブジェクトに関連するゲームを、プレイヤの操作に応じて進行させる。
【００１４】
上記によれば、プレイヤは、第２記憶領域に保存された顔画像から選択された顔画像を含む第２キャラクタオブジェクトを作成し、第２のゲーム処理ステップでのゲームを実行できる。すなわち、プレイヤは、第１のゲーム処理ステップでゲームに成功したことによって保存した顔画像を活用して、第２のゲーム処理ステップでのゲームを楽しむことができる。この場合に、ゲームに登場するキャラクタオブジェクトには、プレイヤの操作で選択されたまたは自動的に選択された顔画像が含まれるので、プレイヤは実世界のイメージを簡易に仮想の世界に持ち込むことができる。
【００１５】
また、上記ゲーム装置は、撮像装置から画像を取得可能であってもよい。この場合、画像取得ステップでは、所定のゲームの開始前に、撮像装置から顔画像が取得されてもよい。
【００１６】
上記によれば、撮像装置で撮像した顔画像を含むキャラクタオブジェクトをゲームに登場させることができるとともに、撮像装置で撮像した顔画像を蓄積的に保存することができる。
【００１７】
また、上記ゲーム装置は、撮像装置として、表示装置の表示面の外面前方方向を撮像する第１の撮像装置、および表示装置の表示面の背面方向を撮像する第２の撮像装置から画像を取得可能であってもよい。この場合、画像取得ステップは、第２の撮像装置の撮像による顔画像の取得より、第１の撮像装置の撮像による顔画像を優先的に取得するステップと、第１の撮像装置からの顔画像が第２記憶領域に保存された後に、第２の撮像装置の撮像による顔画像の取得を許容するステップとを含んでもよい。
【００１８】
上記によれば、表示装置の表示面の外面前方方向を撮像する第１の撮像装置での顔画像取得が優先的に実行されるので、表示装置の表示面を見る、ゲーム装置のプレイヤ等の顔画像が優先して取得される可能性が高くなる。したがって、ゲーム装置のプレイヤ等が特定されない状態で、表示装置の表示面の背面方向を撮像する第２の撮像装置から画像を取得するという行為を制限できる可能性が高まる。
【００１９】
また、上記ゲームプログラムは、顔画像の属性を特定するステップおよび顔画像の取得をプレイヤに促すステップを、コンピュータにさらに実行させてもよい。顔画像の属性を特定するステップは、第２記憶領域に保存された顔画像の属性を特定する。顔画像の取得をプレイヤに促すステップは、第２記憶領域に保存された顔画像から特定された属性とは異なる属性に該当する顔画像の取得をプレイヤに促す。
【００２０】
上記によれば、蓄積的に保存される顔画像の属性偏りを少なくして、様々な属性の顔画像を蓄積的に保存することを望むプレイヤを支援できる。
【００２１】
また、上記第１のゲーム処理ステップは、プレイヤの操作に応じてキャラクタオブジェクトを攻撃することによって第１キャラクタオブジェクトに関連するゲームを進行させるステップを含んでいてもよい。この場合、第１のゲーム処理ステップでは、第１キャラクタオブジェクトへの攻撃が第１キャラクタオブジェクトに関連するゲームを成功させるために有効な攻撃とされ、第２キャラクタオブジェクトに対する攻撃が当該ゲームの成功に対して無効な攻撃とされてもよい。
【００２２】
上記によれば、プレイヤは、第１のゲーム処理ステップによるゲームにおいて、第２キャラクタオブジェクトに対する攻撃を抑制することが必要となるため、第１キャラクタオブジェクトを選別して攻撃することになる。したがって、プレイヤは、第１キャラクタオブジェクトを正確に認識することを要求され、集中力を求められることになる。
【００２３】
また、上記ゲームプログラムは、第３キャラクタオブジェクトを作成するステップを、さらにコンピュータに実行させてもよい。第３キャラクタオブジェクトを作成するステップは、第２キャラクタオブジェクトに含まれる顔画像とは異なる顔画像を含む第３キャラクタオブジェクトを作成する。この場合、第２のゲーム処理ステップは、プレイヤの操作に応じてキャラクタオブジェクトを攻撃することによって第２キャラクタオブジェクトに関連するゲームを進行させるステップを含んでいてもよい。第２のゲーム処理ステップでは、第２キャラクタオブジェクトへの攻撃が第２キャラクタオブジェクトに関連するゲームを成功させるために有効な攻撃とされ、第３キャラクタオブジェクトに対する攻撃が当該ゲームの成功に対して無効な攻撃とされてもよい。
【００２４】
上記によれば、プレイヤは、第２のゲーム処理ステップによるゲームにおいて、第３キャラクタオブジェクトに対する攻撃を抑制することが必要となるため、第２キャラクタオブジェクトを選別して攻撃することになる。したがって、プレイヤは、第２キャラクタオブジェクトを正確に認識することを要求され、集中力を求められることになる。
【００２５】
また、上記ゲームプログラムは、第３キャラクタオブジェクトを作成するステップおよび第４キャラクタオブジェクトを作成するステップを、コンピュータにさらに実行させてもよい。第３キャラクタオブジェクトを作成するステップは、第１記憶領域に記憶された顔画像を含み、第１キャラクタオブジェクトよりも寸法の小さい第３キャラクタオブジェクトを作成する。第４キャラクタオブジェクトを作成するステップは、第１記憶領域に記憶された顔画像とは異なる顔画像を含み、第１キャラクタオブジェクトよりも寸法の小さい第４キャラクタオブジェクトを作成する。この場合、第１のゲーム処理ステップは、プレイヤの操作に応じてキャラクタオブジェクトを攻撃することによって第１キャラクタオブジェクトに関連するゲームを進行させるステップと、第４キャラクタオブジェクトが攻撃を受けた場合、第１キャラクタオブジェクトに含まれる顔画像の変形を進行させるステップと、第３キャラクタオブジェクトが攻撃を受けた場合、第１キャラクタオブジェクトに含まれる顔画像が第１記憶領域に記憶された元の顔画像に近づくように、変形を後退させるステップとを含んでいてもよい。
【００２６】
上記によれば、プレイヤは、第１キャラクタオブジェクトと第３キャラクタオブジェクトと第４キャラクタオブジェクトとを正確に認識することを要求され、集中力を求められることになる。特に、取得した顔画像がプレイヤと親密な関係のある人の顔画像の場合に、プレイヤはますます熱心に第１のゲーム処理ステップでのゲームに取り組むことができる。
【００２７】
また、上記ゲームプログラムは、第３キャラクタオブジェクトを作成するステップおよび第４キャラクタオブジェクトを作成するステップを、コンピュータにさらに実行させてもよい。第３キャラクタオブジェクトを作成するステップは、第２キャラクタオブジェクトに含まれる顔画像と同じ顔画像を含み、第２キャラクタオブジェクトよりも寸法の小さい第３キャラクタオブジェクトを作成する。第４キャラクタオブジェクトを作成するステップは、第２キャラクタオブジェクトに含まれる顔画像と異なる顔画像を含み、第２キャラクタオブジェクトよりも寸法の小さい第４キャラクタオブジェクトを作成する。この場合、第２のゲーム処理ステップは、プレイヤの操作に応じてキャラクタオブジェクトを攻撃することによって第２キャラクタオブジェクトに関連するゲームを進行させるステップと、第４キャラクタオブジェクトが攻撃を受けた場合、第２キャラクタオブジェクトに含まれる顔画像の変形を進行させるステップと、第３キャラクタオブジェクトが攻撃を受けた場合、第２キャラクタオブジェクトに含まれる顔画像が第２記憶領域に保存された元の顔画像に近づくように、変形を後退させるステップとを含んでいてもよい。
【００２８】
上記によれば、プレイヤは、第２キャラクタオブジェクトと第３キャラクタオブジェクトと第４キャラクタオブジェクトとを正確に認識することを要求され、集中力を求められることになる。
【００２９】
また、上記第１キャラクタオブジェクトを作成するステップでは、第１記憶領域に記憶された顔画像を変形させた顔画像を含むキャラクタオブジェクトが、第１キャラクタオブジェクトとして作成されてもよい。この場合、第１のゲーム処理ステップは、第１キャラクタオブジェクトに関連するゲームが成功であったときに、変形させた顔画像を第１記憶領域に記憶された元の顔画像に復帰させるステップを含んでいてもよい。
【００３０】
上記によれば、例えば、取得した顔画像がプレイヤと親密な関係にある人の顔画像の場合に、変形した顔画像を元の顔画像に戻すために、プレイヤはますます熱心に第１のゲーム処理ステップでのゲームに取り組むことができる。
【００３１】
また、上記第２キャラクタオブジェクトを作成するステップでは、第２記憶領域に保存された顔画像を変形させた顔画像が含むキャラクタオブジェクトが、第２キャラクタオブジェクトとして作成されてもよい。この場合、第２のゲーム処理ステップは、第２キャラクタオブジェクトに関連するゲームが成功であったときに、変形させた顔画像を第２記憶領域に保存された元の顔画像に復帰させるステップを含んでいてもよい。
【００３２】
上記によれば、例えば、取得した顔画像がプレイヤと親密な関係にある人の顔画像の場合に、変形した顔画像を元の顔画像に戻すために、プレイヤはますます熱心に第２のゲーム処理ステップでのゲームに取り組むことができる。
【００３３】
また、上記画像取得ステップでは、所定のゲーム中に、顔画像が取得されて第１記憶領域に一時的に記憶されてもよい。この場合、第１のゲーム処理ステップでは、所定のゲーム中に顔画像が取得され第１キャラクタオブジェクトが作成されたことに応じて、当該所定のゲームに当該第１キャラクタオブジェクトを登場させて第１キャラクタオブジェクトに関連するゲームを進行させてもよい。
【００３４】
上記によれば、所定のゲーム中に取得された顔画像を第２記憶領域に保存する対象として第１のゲーム処理ステップでのゲームを行うことができる。
【００３５】
また、上記ゲームプログラムは、撮像画像取得ステップ、表示画像生成ステップ、および表示制御ステップを、さらにコンピュータに実行させてもよい。撮像画像取得ステップは、上記実カメラによって撮像された撮像画像を取得する。表示画像生成ステップは、撮像画像取得ステップにおいて取得された撮像画像を背景として、所定のゲームに登場する仮想キャラクタオブジェクトが配置された表示画像を生成する。表示制御ステップは、表示画像生成ステップにおいて生成された画像を表示装置に表示する。この場合、画像取得ステップでは、所定のゲーム中に表示装置に表示されている撮像画像から少なくとも１つの顔画像が抽出されて第１記憶領域に一時的に記憶されてもよい。
【００３６】
上記によれば、背景として表示されている実世界の撮像画像に含まれる顔画像がキャラクタオブジェクトとして登場し、当該キャラクタオブジェクトに関連するゲームでの成功によって、当該顔画像を蓄積的に保存することができる。
【００３７】
また、上記表示画像生成ステップでは、画像取得ステップにおいて抽出された顔画像の撮像画像における位置と重なって表示装置に表示されるように、第１キャラクタオブジェクトを配置して表示画像を生成してもよい。
【００３８】
上記によれば、第１キャラクタオブジェクトをあたかも撮像画像内から出現したように表現することができ、第１キャラクタオブジェクトが実カメラで撮像された実空間に存在しているような画像を表示することができる。
【００３９】
また、上記撮像画像取得ステップでは、実カメラによってリアルタイムに撮像された実世界の撮像画像が繰り返し取得されてもよい。上記表示画像生成ステップでは、撮像画像取得ステップにおいて繰り返し取得された撮像画像が順次背景として設定されてもよい。上記画像取得ステップでは、順次背景として設定される撮像画像から、既に抽出された顔画像に対応する顔画像が繰り返し取得されてもよい。上記第１キャラクタオブジェクトを作成するステップでは、画像取得ステップにおいて繰り返し取得される顔画像を含むように第１キャラクタオブジェクトが繰り返し作成されてもよい。そして、上記表示画像生成ステップでは、画像取得ステップにおいて繰り返し取得されている顔画像の撮像画像における位置と重なって表示装置に表示されるように、繰り返し作成されている第１キャラクタオブジェクトが配置されて表示画像が生成されてもよい。
【００４０】
上記によれば、実カメラの撮像位置や撮像方向が変化しても当該変化に応じて第１キャラクタオブジェクトを配置することができ、顔画像を取得した被写体である人物の位置や表情が変化しても当該変化を第１キャラクタオブジェクトに反映することができるため、あたかもリアルタイムに撮像された撮像画像で表現された実空間内に第１キャラクタオブジェクトが存在しているように表示することができる。
【００４１】
また、上記ゲーム装置は、非一時的にデータを記憶する記憶手段に記憶されている画像データを利用可能であってもよい。この場合、画像取得ステップでは、所定のゲーム開始前に記憶手段に記憶されている画像データから、少なくとも１つの顔画像が抽出されて第１記憶領域に一時的に記憶されてもよい。
【００４２】
上記によれば、ゲーム装置に予め格納されている画像データから顔画像が取得されるため、別のアプリケーション等によって予め取得されている顔画像（例えば、カメラ撮像アプリケーションによって撮影された画像や通信アプリケーションによって他の装置から受信した画像に含まれる顔画像）を、取得対象とすることができる。
【００４３】
また、本発明は、上記各ステップを実行する手段を備える画像処理装置および画像処理システムや上記各ステップで行われる動作を含む画像処理方法の形態で実施されてもよい。
【発明の効果】
【００４４】
本発明によれば、ユーザによる顔画像の取得、収集等を支援するとともに、顔画像により実世界を反映した仮想の世界を表現することを可能にする。
【図面の簡単な説明】
【００４５】
【図１】開いた状態におけるゲーム装置１０の一例を示す正面図
【図２】開いた状態におけるゲーム装置１０の一例を示す側面図
【図３Ａ】閉じた状態におけるゲーム装置１０の一例を示す左側面図
【図３Ｂ】閉じた状態におけるゲーム装置１０の一例を示す正面図
【図３Ｃ】閉じた状態におけるゲーム装置１０の一例を示す右側面図
【図３Ｄ】閉じた状態におけるゲーム装置１０の一例を示す背面図
【図４】ユーザがゲーム装置１０を両手で把持する様子の一例を示す図
【図５】ユーザがゲーム装置１０を片手で把持する様子の一例を示す図
【図６】ゲーム装置１０の内部構成の一例を示すブロック図
【図７】一覧表示された顔画像の例
【図８】一覧表示された顔画像の他の例
【図９】顔画像を敵オブジェクトにはめ込む処理の画面例
【図１０】顔画像選択画面を例示する図
【図１１】図１のゲーム装置で本実施形態における画像処理プログラムを実行することに応じて、メインメモリに記憶される各種データの一例を示す図
【図１２】顔画像管理情報のデータ構造の一例
【図１３】取得済みの顔画像を属性によって分類した集計表の例
【図１４】第１の実施形態に係るゲーム装置１０の動作の一例を示すフローチャート
【図１５】顔画像取得処理の詳細処理の一例を示すフローチャート
【図１６】第２の実施形態に係るゲーム装置１０の動作の一例を示すフローチャート
【図１７】一覧表示処理の詳細処理の一例を示すフローチャート
【図１８】配役決定処理の詳細処理の一例を示すフローチャート
【図１９Ａ】顔画像管理支援処理１の詳細処理例を示すフローチャート
【図１９Ｂ】顔画像管理支援処理２の詳細処理例を示すフローチャート
【図１９Ｃ】顔画像管理支援処理３の詳細処理例を示すフローチャート
【図２０Ａ】画像処理プログラムの一例である仮想空間の概要を示す図
【図２０Ｂ】スクリーンモデルとαテクスチャの関係を示す図
【図２１】仮想空間の一例を示す図
【図２２】画像処理プログラムの一例であるゲームプログラムにおいて定義される仮想の３次元空間（ゲーム世界）を示す図
【図２３】画像処理プログラムを実行する装置の一例であるゲーム装置の上側ＬＣＤに表示される表示形態例の各処理段階の一例を示す図
【図２４】画像処理プログラムを実行する装置の一例であるゲーム装置の上側ＬＣＤに表示される表示形態例の各処理段階の一例を示す図
【図２５】画像処理プログラムを実行する装置の一例であるゲーム装置の上側ＬＣＤに表示される表示形態例の各処理段階の一例を示す図
【図２６】画像処理プログラムを実行する装置の一例であるゲーム装置の上側ＬＣＤに表示される表示形態例の各処理段階の一例を示す図
【図２７Ａ】影オブジェクトのシルエットモデルを上から見た一例を示す図
【図２７Ｂ】影オブジェクトのシルエットモデルの一例を示す図
【図２８】各オブジェクトの不透明度の一例を示す図
【図２９】画像処理プログラムを実行することによってゲーム装置が画像処理する動作の一例を示すフローチャート
【図３０】画像処理プログラムの敵オブジェクト関連処理の詳細な動作の一例を示すサブルーチンのフローチャート
【図３１】画像処理プログラムの弾オブジェクト関連処理の詳細な動作の一例を示すサブルーチンのフローチャート
【図３２Ａ】画像処理プログラムの表示画像の更新処理（第１の描画方法）の詳細な動作の一例を示すサブルーチンのフローチャート
【図３２Ｂ】本実施形態における画像処理プログラムの表示画像の更新処理（第２の描画方法）の詳細な動作の一例を示すサブルーチンのフローチャート
【図３３】第１の描画方法におけるレンダリング処理の一例を説明するための説明図
【図３４】図３３の各オブジェクトの位置関係を説明するための説明図
【図３５】カメラ画像をレンダリングする処理の一例を説明するための説明図
【図３６】カメラ画像をレンダリングする際の座標の一例を説明するための説明図
【図３７】仮想空間をレンダリングする処理の一例を説明するための説明図
【図３８】図３７の各オブジェクトの位置関係説明するための説明図
【図３９】仮想空間をレンダリングする際の境界面の座標の一例を説明するための説明図
【図４０】画像処理プログラムにより生成される表示画像の一例を示す図
【図４１】第２の実施形態に係るゲーム装置の画面の例
【図４２】第２の実施形態に係るゲーム装置の動作の一例を示すフローチャート
【図４３】第３の実施形態に係るゲーム装置の画面の例
【図４４】第３の実施形態に係るゲーム装置の動作の一例を示すフローチャート
【図４５】第４の実施形態に係る画面の一例
【図４６】第４の実施形態に係るゲーム装置の動作の一例を示すフローチャート
【図４７】第５の実施形態に係るゲーム装置の上側ＬＣＤに表示される画面の一例を示す図
【図４８】第５の実施形態に係るゲーム装置の上側ＬＣＤに表示される画面の一例を示す図
【図４９】第５の実施形態に係る画像処理プログラムを実行することによって行われるゲーム中顔画像取得処理の詳細な動作の一例を示すサブルーチン
【図５０】図４９のステップ２０２で行われる未出現処理の詳細な動作の一例を示すサブルーチン
【図５１】図４９のステップ２０８で行われる出現済処理の詳細な動作の一例を示すサブルーチン
【発明を実施するための形態】
【００４６】
（第１の実施形態）
以下、本発明に係る一実施形態としての画像処理プログラムを実行する画像処理装置について具体例を挙げて説明する。ただし、以下に挙げる実施形態は例示であり、本発明は以下の実施形態の構成に限定されない。
【００４７】
なお、以下に挙げる実施形態において、コンピュータが処理するデータをグラフや自然言語を用いて例示しているが、より具体的には、コンピュータが認識可能な疑似言語、コマンド、パラメータ、マシン語、配列等で指定される。本発明は、データの表現方法を限定するものではない。
【００４８】
＜ハードウェアの構成例＞
まず、図面を参照して、本実施形態に係る画像処理プログラムを実行する画像処理装置の一例として携帯型のゲーム装置１０について説明する。ただし、本発明に係る画像処理装置は、ゲーム装置に限定されるものではない。本発明に係る画像処理装置は、例えば、汎用コンピュータ等、任意のコンピュータシステムであればよい。
【００４９】
なお、以下に示される本実施形態に係る画像処理プログラムはゲームプログラムであるが、本発明に係る画像処理プログラムはゲームプログラムに限定されるものではない。本発明の画像処理プログラムは、任意のコンピュータシステムで実行されることによって適用することができる。また、本実施形態の各処理をネットワーク化された複数の装置で分散処理してもよいし、サーバで主要な処理を行った後、端末に処理結果を配信するネットワークシステムや、いわゆるクラウドネットワークで実施してもよい。
【００５０】
図１、図２、図３Ａ、図３Ｂ、図３Ｃ、および図３Ｄは、ゲーム装置１０の外観の一例を示す平面図である。図１−図３Ｄに示されるゲーム装置１０は、撮像部（カメラ）を内蔵しており、当該撮像部によって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータを保存したりすることが可能である。また、ゲーム装置１０は、交換可能なメモリカード内に記憶されたゲームプログラム、または、サーバや他のゲーム装置からネットワークを介して受信したゲームプログラムを実行可能である。また、ゲーム装置１０は、仮想空間に設定された仮想カメラで撮像したときの画像を、コンピュータグラフィックス処理により生成して画面に表示すこともできる。なお、本明細書においては、カメラによって画像データを取り込むことを「撮像」と記し、撮像した画像データを記憶することを「撮影」と記す。
【００５１】
図１−図３Ｄに示されるゲーム装置１０は、下側ハウジング１１および上側ハウジング２１を有する。下側ハウジング１１と上側ハウジング２１とは、ヒンジ構造により開閉可能（折り畳み可能）に連結されている。すなわち、上側ハウジング２１は、下側ハウジング１１に対して回動（揺動）自在に取り付けられている。これにより、ゲーム装置１０は、上側ハウジング２１が下側ハウジング１１に対して密着した状態となる閉状態（図３Ａ，図３Ｃ）と、上側ハウジング２１が下側ハウジング１１に対して回動し、密着場外が解除された状態（開状態）との２つの形態を有する。上側ハウジング２１の回動は、図２に示すように、開状態において、上側ハウジング２１と下側ハウジング１１とが略平行となる位置まで許容される（図２参照）。
【００５２】
図１は、開いた状態（開状態）におけるゲーム装置１０の一例を示す正面図である。ゲーム装置１０の下側ハウジング１１および上側ハウジング２１のそれぞれは、平面形状が長手方向（横方向（左右方向）：図中ｘ方向）と短手方向（（上下方向）：図中ｙ方向）とを有する横長の長方形である板状に形成されている。上側ハウジング２１の長手方向の下側の外縁部と、下側ハウジング１１の長手方向の上側の外縁部とがヒンジ構造により回動可能に連結されている。ユーザがゲーム装置１０を使用する際には、通常、ゲーム装置１０は開状態にされる。そして、ユーザがゲーム装置１０を保管する際には、ゲーム装置１０は閉状態にされる。また、上側ハウジング２１は、下側ハウジング１１との連結部分に生じる摩擦力により、下側ハウジング１１との間でユーザが所望する角度をなして停止した状態を維持することができる。つまり、ゲーム装置１０は、上側ハウジング２１を下側ハウジング１１に対して所望角度で静止させることができる。一般に、上側ハウジング２１に設けられた画面の視認性の観点から、上側ハウジング２１は、下側ハウジング１１との間で、直角または鈍角をなす位置まで開いた状態とされる。以降、ゲーム装置１０の閉状態において、上側ハウジング２１と下側ハウジング１１とのそれぞれの対向面を内側面、または、主面と称する。また、上側ハウジング２１と下側ハウジング１１とのそれぞれの内側面（主面）とは反対側の面を、外側面と称する。
【００５３】
ゲーム装置１０の下側ハウジング１１の上側長辺部分には、下側ハウジング１１の内側面（主面）１１Ｂに対して垂直な方向（図中ｚ方向）に突出した突起部（軸受け部）１１Ａが設けられる。また、上側ハウジング２１の下側長辺部分には、上側ハウジング２１の下側面から当該下側面に垂直な方向に突起する突起部（軸受け部）２１Ａが設けられる。突起部１１Ａ，２１Ａ，１１Ａ内には、例えば、一方の突起部１１Ａから突起部２１Ａを貫通し他方の突起部１１Ａまでｘ方向に延びる回動軸（図示せず）が収容されており、この回動軸を中心に、上側ハウジング２１が下側ハウジング１１に対して相対的に回動自在となっている。このようにして、下側ハウジング１１と上側ハウジング２１とが、折り畳み可能に接続される。
【００５４】
図１に示される下側ハウジング１１の内側面１１Ｂには、下側ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）１２、タッチパネル１３、各操作ボタン１４Ａ〜１４Ｌ、アナログスティック１５、第１ＬＥＤ１６Ａ、および、マイクロフォン用孔１８が設けられる。
【００５５】
下側ＬＣＤ１２は下側ハウジング１１に収納される。下側ＬＣＤ１２の平面形状は横長の長方形であり、その長辺方向が下側ハウジング１１の長手方向（図１中ｘ方向）に一致するように配置される。下側ＬＣＤ１２は、下側ハウジング１１の内側面（主面）中央に設けられる。下側ハウジング１１の内側面に設けられた開口部から下側ＬＣＤ１２の画面が露出する。ゲーム装置１０を使用しない場合には上記閉状態としておくことによって、下側ＬＣＤ１２の画面が汚れたり傷ついたりすることを防止することができる。下側ＬＣＤ１２の画素数は、一例として、３２０ｄｏｔ×２４０ｄｏｔ（横×縦）である。下側ＬＣＤ１２は、後述する上側ＬＣＤ２２とは異なり、画像を（立体視可能ではなく）平面的に表示する表示装置である。なお、第１の実施形態では表示装置としてＬＣＤを用いているが、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置など、他の表示装置を利用してもよい。また、下側ＬＣＤ１２として、所望の解像度を有する表示装置を利用することができる。
【００５６】
タッチパネル１３はゲーム装置１０の入力装置の一つである。タッチパネル１３は、下側ＬＣＤ１２の画面上を覆うように装着されている。第１の実施形態では、タッチパネル１３は、抵抗膜方式のタッチパネルが用いられる。ただし、タッチパネル１３は、抵抗膜方式に限らず、例えば、静電容量方式等、任意の押圧式のタッチパネルを用いることができる。また、第１の実施形態では、タッチパネル１３は、下側ＬＣＤ１２の解像度と同解像度（検出精度）のものが利用される。ただし、必ずしもタッチパネル１３の解像度と下側ＬＣＤ１２の解像度とが一致している必要はない。
【００５７】
各操作ボタン１４Ａ〜１４Ｌは、所定の入力を行うための入力装置である。下側ハウジング１１の内側面（主面）には、各操作ボタン１４Ａ〜１４Ｌのうち、十字ボタン１４Ａ（方向入力ボタン１４Ａ）、ボタン１４Ｂ、ボタン１４Ｃ、ボタン１４Ｄ、ボタン１４Ｅ、電源ボタン１４Ｆ、セレクトボタン１４Ｊ、ＨＯＭＥボタン１４Ｋ、およびスタートボタン１４Ｌが設けられる。
【００５８】
十字ボタン１４Ａは、十字の形状を有しており、少なくとも上下左右の方向を指示するボタンを有している。十字ボタン１４Ａは、下側ＬＣＤ１２より左側の領域中の下部領域に設けられる。十字ボタン１４Ａは、下側ハウジング１１を把持した左手の親指で操作可能な位置に設計される。
【００５９】
ボタン１４Ｂ、ボタン１４Ｃ、ボタン１４Ｄ、およびボタン１４Ｅの４つのボタンは、下側ＬＣＤ１２より右側の領域中の上部に、十字状に配置されて設けられる。ボタン１４Ｂ、ボタン１４Ｃ、ボタン１４Ｄ、およびボタン１４Ｅは、下側ハウジング１１を把持するユーザの右手の親指が自然と位置するところに設置される。電源ボタン１４Ｆは、下側ＬＣＤ１２の右側の領域中の下部に配置される。
【００６０】
セレクトボタン１４Ｊ、ＨＯＭＥボタン１４Ｋ、およびスタートボタン１４Ｌは、それぞれ、下側ＬＣＤ１２の下側領域に設置される。
【００６１】
ボタン１４Ａ〜１４Ｅ、セレクトボタン１４Ｊ、ＨＯＭＥボタン１４Ｋ、およびスタートボタン１４Ｌには、ゲーム装置１０によって実行されるプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン１４Ａは、選択操作やゲーム中のキャラクタの移動操作等に用いられる。例えば、各操作ボタン１４Ｂ〜１４Ｅは、決定操作やキャンセル操作等に用いられる。また、電源ボタン１４Ｆは、ゲーム装置１０の電源をオン／オフするために用いられる。
【００６２】
アナログスティック１５は、方向を指示するデバイスである。アナログスティック１５は、下側ハウジング１１の内側面（主面）の下側ＬＣＤ１２より左側の領域中の上部に設けられる。すなわち、アナログスティック１５は十字ボタン１４Ａの上方に設けられる。また、アナログスティック１５は、下側ハウジング１１を把持した左手の親指で操作可能な位置に設計される。アナログスティック１５が上部領域に設けられたことにより、下側ハウジング１１を把持するユーザの左手の親指が自然と位置するところにアナログスティック１５が配置される。そして、十字ボタン１４Ａは、下側ハウジング１１を把持するユーザの左手の親指を少し下にずらした位置に配置される。それゆえ、ユーザは、下側ハウジング１１を把持する左手の親指を上下に動かすだけで、アナログスティック１５と十字ボタン１４Ａを操作することができる。アナログスティック１５は、そのキートップが、下側ハウジング１１の内側面に平行にスライドするように構成されている。アナログスティック１５は、ゲーム装置１０が実行するプログラムに応じて機能する。例えば、３次元仮想空間に所定のオブジェクトが登場するゲームがゲーム装置１０によって実行される場合、アナログスティック１５は、当該所定のオブジェクトを３次元仮想空間内で移動させるための入力装置として機能する。この場合において、所定のオブジェクトは、アナログスティック１５のキートップがスライドした方向に移動される。なお、アナログスティック１５として、上下左右および斜め方向の任意の方向に所定量だけ傾倒することでアナログ入力を可能としたものを用いてもよい。
【００６３】
なお、ボタン１４Ｂ、ボタン１４Ｃ，ボタン１４Ｄ、およびボタン１４Ｅの４つのボタンとアナログスティック１５とは、下側ＬＣＤ１２を挟んで、左右対称な位置に配置される。これにより、ゲームプログラムによっては、例えば、左利きの人が、ボタン１４Ｂ、ボタン１４Ｃ，ボタン１４Ｄ、およびボタン１４Ｅの４つのボタンを使用して方向指示入力をすることも可能である。
【００６４】
第１ＬＥＤ１６Ａ（図１）は、ゲーム装置１０の電源のＯＮ／ＯＦＦ状態をユーザに通知する。第１ＬＥＤ１６Ａは、下側ハウジング１１の内側面（主面）と下側ハウジング１１の下側面とが共有する端部の右側に設けられる。これによって、ユーザは、ゲーム装置１０の開閉状態にかかわらず、第１ＬＥＤ１６Ａの点灯の有無を視認することができる。
【００６５】
マイクロフォン用孔１８は、音声入力装置としてのゲーム装置１０に内蔵されるマイクロフォン用の孔である。内蔵されたマイクロフォンは、マイクロフォン用孔１８から外部の音を検出する。マイクロフォンおよびマイクロフォン用孔１８は、下側ハウジング１１の内側面（主面）の電源ボタン１４Ｆの下方に設けられる。
【００６６】
下側ハウジング１１の上側面には、タッチペン２８の挿入口１７（図１、図３Ｄにおいて点線で示される）が設けられている。挿入口１７から、タッチパネル１３に対する操作を行うために用いられるタッチペン２８を収納することができる。なお、タッチパネル１３を用いた入力は、通常タッチペン２８を用いて行われる。但し、タッチペン２８の代わりにユーザの指を用いることもできる。
【００６７】
下側ハウジング１１の上側面にはゲーム装置１０とゲームプログラムを記録した外部メモリ４５を挿入するための挿入口１１Ｄ（図１、図３Ｄにおいて点線で示される）が設けられる。挿入口１１Ｄの内部には、外部メモリ４５と内部回路とを電気的に着脱自在に接続するためのコネクタ（図示せず）が設けられる。外部メモリ４５がゲーム装置１０に接続されることにより、内部回路に含まれるプロセッサによって所定のゲームプログラムが実行される。なお、上記コネクタおよび挿入口１１Ｄは、下側ハウジング１１の他の側面（例えば、右側面等）に設けられてもよい。
【００６８】
図１に示される上側ハウジング２１の内側面２１Ｂには、スピーカ孔２１Ｅ、上側ＬＣＤ２２、内側撮像部２４、３Ｄ調整スイッチ２５、および３Ｄインジケータ２６が設けられる。内側撮像部２４が、第１の撮像装置の一例である。
【００６９】
上側ＬＣＤ２２は、立体視可能な画像を表示することが可能な表示装置である。上側ＬＣＤ２２は、実質的に同一の表示領域を用いて左目用画像と右目用画像とを表示することが可能である。具体的には、上側ＬＣＤ２２は、左目用画像と右目用画像とが所定単位で（例えば、１列ずつ）横方向に交互に表示される方式の表示装置である。なお、上側ＬＣＤ２２は、左目用画像と右目用画像とが交互に表示される方式の表示装置であってもよい。また、上側ＬＣＤ２２は、裸眼立体視可能な表示装置である。この場合、上側ＬＣＤ２２は、横方向に交互に表示される左目用画像と右目用画像とを左目および右目のそれぞれに分解して見えるようにレンチキュラー方式やパララックスバリア方式（視差バリア方式）のものが用いられる。第１の実施形態では、上側ＬＣＤ２２は、パララックスバリア方式の表示装置とする。上側ＬＣＤ２２は、右目用画像と左目用画像とを用いて、裸眼で立体視可能な画像（立体画像）を表示する。すなわち、上側ＬＣＤ２２は、視差バリアを用いてユーザの左目に左目用画像をユーザの右目に右目用画像をそれぞれ視認させることにより、ユーザにとって立体感のある立体画像（立体視可能な画像）を表示することができる。また、上側ＬＣＤ２２は、上記視差バリアを無効にすることが可能であり、視差バリアを無効にした場合は、画像を平面的に表示することができる（上述した立体視とは反対の意味で平面視の画像を表示することができる。すなわち、表示された同一の画像が右目にも左目にも見えるような表示モードである。）。このように、上側ＬＣＤ２２は、立体視可能な画像を表示する立体表示モードと、画像を平面的に表示する（平面視画像を表示する）平面表示モードとを切り替えることが可能な表示装置である。この表示モードの切り替えは、後述する３Ｄ調整スイッチ２５によって行われる。
【００７０】
上側ＬＣＤ２２は、上側ハウジング２１に収納される。上側ＬＣＤ２２は、横長の長方形であり、長辺方向が上側ハウジング２１の長辺方向に一致する状態で、上側ハウジング２１の中央に配置される。上側ＬＣＤ２２の画面の面積は、一例として下側ＬＣＤ１２の画面の面積よりも大きく設定される。具体的には、上側ＬＣＤ２２の画面は、下側ＬＣＤ１２の画面よりも横長に設定される。すなわち、上側ＬＣＤ２２の画面のアスペクト比における横幅の割合は、下側ＬＣＤ１２の画面のアスペクト比における横幅の割合よりも大きく設定される上側ＬＣＤ２２の画面は、上側ハウジング２１の内側面（主面）２１Ｂに設けられ、上側ハウジング２１の内側面２１Ｂに設けられた開口部から上側ＬＣＤ２２の画面が露出する。また、上側ハウジング２１の内側面は、透明なスクリーンカバー２７によって覆われている。スクリーンカバー２７は、上側ＬＣＤ２２の画面を保護するとともに、上側ＬＣＤ２２と上側ハウジング２１の内側面と一体的にさせ、これにより統一感を持たせている。上側ＬＣＤ２２の画素数は、一例として８００ｄｏｔ×２４０ｄｏｔ（横×縦）である。第１の実施形態では、上側ＬＣＤ２２は液晶表示装置であるとして説明される。ただし、これに限らず、例えば、ＥＬを利用した表示装置などが利用されてもよい。また、上側ＬＣＤ２２として、任意の解像度の表示装置を利用することができる。
【００７１】
スピーカ孔２１Ｅは、ゲーム装置１０の音声出力装置としてのスピーカ４４からの音声を出力するための孔である。スピーカ２１Ｅは、上側ＬＣＤを挟んで左右対称に設置される。後述するスピーカ４４からの音声がこのスピーカ孔２１Ｅから出力される。
【００７２】
内側撮像部２４は、上側ハウジング２１の内側面２１Ｂの内向きの法線方向を撮像方向とする撮像部である。内側撮像部２４は、所定の解像度を有する撮像素子と、レンズとを含む。撮像素子は、例えば、ＣＣＤイメージセンサやＣＭＯＳイメージセンサ等である。レンズは、ズーム機構を有するものでもよい。
【００７３】
内側撮像部２４は、上側ハウジング２１の内側面２１Ｂの、上側ＬＣＤ２２の画面の上端よりも上方に配置され、上側ハウジング２１の左右方向に関して中央の位置（上側ハウジング２１（上側ＬＣＤ２２の画面）を左右に２等分する線の線上）に配置される。このように内側撮像部２４が配置されることによって、ユーザが上側ＬＣＤ２２を正視した際、内側撮像部２４によってユーザの顔を正面から撮像することができる。外側左撮像部２３ａおよび外側右撮像部２３ｂについては、後述される。
【００７４】
３Ｄ調整スイッチ２５は、スライドスイッチであり、上述のように上側ＬＣＤ２２の表示モードを切り替えるために用いられるスイッチである。また、３Ｄ調整スイッチ２５は、上側ＬＣＤ２２に表示された立体視可能な画像（立体画像）の立体感を調整するために用いられる。３Ｄ調整スイッチ２５は、ゲーム装置１０の開閉状態に関わらずユーザが視認できるように、上側ハウジング２１の内側面２１Ｂと右側面とが共有する端部に設けられる。３Ｄ調整スイッチ２５は、所定方向（例えば、上下方向）の任意の位置にスライド可能なスライダを有しており、当該スライダの位置に応じて上側ＬＣＤ２２の表示モードが設定される。
【００７５】
例えば、３Ｄ調整スイッチ２５のスライダが最下点位置に配置されている場合、上側ＬＣＤ２２が平面表示モードに設定され、上側ＬＣＤ２２の画面には平面画像が表示される。なお、上側ＬＣＤ２２を立体表示モードのままとして、左目用画像と右目用画像とを同一の画像とすることにより平面表示してもよい。一方、上記最下点位置より上側にスライダが配置されている場合、上側ＬＣＤ２２は立体表示モードに設定される。この場合、上側ＬＣＤ２２の画面には立体視可能な画像が表示される。ここで、スライダが上記最下点位置より上側に配置されている場合、スライダの位置に応じて、立体画像の見え方が調整される。具体的には、スライダの位置に応じて、右目用画像および左目用画像における横方向の位置のずれ量が調整される。
【００７６】
３Ｄインジケータ２６は、上側ＬＣＤ２２が立体表示モードか否かを示す。例えば、３Ｄインジケータ２６は、ＬＥＤであり、上側ＬＣＤ２２の立体表示モードが有効の場合に点灯する。３Ｄインジケータ２６は、上側ハウジング２１の内側面２１Ｂに設けられ、上側ＬＣＤ２２の画面近傍に設けられる。このため、ユーザが上側ＬＣＤ２２の画面を正視した場合、ユーザは３Ｄインジケータ２６を視認しやすい。したがって、ユーザは、上側ＬＣＤ２２の画面を視認している状態でも、上側ＬＣＤ２２の表示モードを容易に認識することができる。
【００７７】
図２は、開状態におけるゲーム装置１０の一例を示す右側面図である。下側ハウジング１１の右側面には、第２ＬＥＤ１６Ｂと、無線スイッチ１９と、Ｒボタン１４Ｈとが設けられている。第２ＬＥＤ１６Ｂは、点灯により、ゲーム装置１０の無線通信の確立状況をユーザに通知する。ゲーム装置１０は、他の機器との間で無線通信を行うことが可能であり、第２ＬＥＤ１６Ｂは、他の機器との無線通信が確立している場合に点灯する。ゲーム装置１０は、例えば、ＩＥＥＥ８０２．１１．ｂ／ｇの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。無線スイッチ１９は、この無線通信の機能を有効／無効にする。Ｒボタン１４Ｈについては、後述される。
【００７８】
図３Ａは、閉じた状態（閉状態）におけるゲーム装置１０の一例を示す左側面図である。図３Ａに示される下側ハウジング１１の左側面には、開閉可能なカバー部１１Ｃと、Ｌボタン１４Ｈと、音量ボタン１４Ｉとが設けられる。音量ボタン１４Ｉは、ゲーム装置１０が備えるスピーカ４４の音量を調整するためのボタンである。
【００７９】
カバー部１１Ｃの内側には、ゲーム装置１０とデータ保存用外部メモリ４６（図１参照）とを電気的に接続するためのコネクタ（図示せず）が設けられる。データ保存用外部メモリ４６は、上記コネクタに着脱自在に装着される。データ保存用外部メモリ４６は、例えば、ゲーム装置１０によって撮像された画像のデータを記憶（保存）するために用いられる。なお、上記コネクタおよびカバー部１１Ｃは、下側ハウジング１１の右側面に設けられてもよい。Ｌボタン１４Ｈについては後述される。
【００８０】
図３Ｂは、閉状態におけるゲーム装置１０の一例を示す正面図である。図３Ｂに示される上側ハウジング２１の外側面には、外側左撮像部２３ａ、外側右撮像部２３ｂ、および第３ＬＥＤ２９が設けられる。
【００８１】
外側左撮像部２３ａおよび外側右撮像部２３ｂは、それぞれ所定の共通の解像度を有する撮像素子（例えば、ＣＣＤイメージセンサやＣＭＯＳイメージセンサ等）と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。外側左撮像部２３ａおよび外側右撮像部２３ｂの撮像方向は、いずれも外側面２１Ｄの外向きの法線方向である。すなわち、外側左撮像部２３ａの撮像方向および外側右撮像部２３ｂの撮像方向（カメラの視軸）は、平行である。以降、外側左撮像部２３ａおよび外側右撮像部２３ｂをまとめて、外側撮像部２３と称する。外側撮像部２３が、第２の撮像装置の一例である。
【００８２】
外側撮像部２３を構成する外側左撮像部２３ａおよび外側右撮像部２３ｂは、上側ＬＣＤ２２の画面の横方向に並べて配置される。すなわち、２つの外側左撮像部２３ａおよび外側右撮像部２３ｂを結んだ直線が上側ＬＣＤ２２の画面の横方向に配置されるように、外側左撮像部２３ａおよび外側右撮像部２３ｂが配置される。また、ユーザが上側ハウジング２１を下側ハウジング１１に対して所定角度（例えば９０°）揺動させ、上側ＬＣＤ２２の画面を正面から視認した場合に、外側左撮像部２３ａは画面を視認するユーザの左側に位置し、外側右撮像部２３ｂはユーザの右側に位置する（図１参照）。外側左撮像部２３ａおよび外側右撮像部２３ｂの間隔は、人間の両目の間隔程度に設定され、例えば、３０ｍｍ〜７０ｍｍの範囲で設定されてもよい。なお、外側左撮像部２３ａおよび外側右撮像部２３ｂの間隔は、この範囲に限らない。なお、第１の実施形態においては、外側左撮像部２３ａおよび外側右撮像部２３ｂは、上側ハウジング２１に固定されており、撮像方向を変更することはできない。
【００８３】
外側左撮像部２３ａおよび外側右撮像部２３ｂは、上側ＬＣＤ２２（上側ハウジング２１）の上側ＬＣＤ２２を左右に２等分する線に対して対称の位置にそれぞれ配置される。また、外側左撮像部２３ａおよび外側右撮像部２３ｂは、上側ハウジング２１を開いた状態において、上側ハウジング２１の上部であって、上側ＬＣＤ２２の画面の上端よりも上方の位置の裏側に配置される（図１参照）。すなわち、外側左撮像部２３ａおよび外側右撮像部２３ｂは、上側ハウジング２１の外側面であって、上側ＬＣＤ２２を外側面に投影した場合、投影した上側ＬＣＤ２２の画面の上端よりも上方に配置される。
【００８４】
このように、外側左撮像部２３ａおよび外側右撮像部２３ｂが上側ＬＣＤ２２の短手方向中央線に対して線対称に配置されることにより、ユーザが上側ＬＣＤ２２を正視した場合に、外側撮像部２３それぞれの撮像方向をユーザの左右の目それぞれの視線方向と一致させることができる。また、外側撮像部２３は、上側ＬＣＤ２２の画面の上端より上方の裏側の位置に配置されるため、外側撮像部２３と上側ＬＣＤ２２とが上側ハウジング２１の内部で干渉することがない。さらに、外側左撮像部２３ａおよび外側右撮像部２３ｂは、図３Ｂにおいて点線で示される上側ハウジング２１の内側面に設けられた内側撮像部２４を上側ハウジング２１の外側面に投影した場合、当該投影された内側撮像部２４を挟んで左右対称に設けられる。したがって、外側撮像部２３を上側ＬＣＤ２２の画面の裏側に配置する場合や、内側撮像部２４の裏側に外側撮像部２３を配置する場合に比べて、上側ハウジング２１を薄く構成することが可能となる。
【００８５】
外側左撮像部２３ａと外側右撮像部２３ｂとは、ゲーム装置１０が実行するプログラムによって、ステレオカメラとして使用することが可能である。また、プログラムによっては、２つの外側撮像部（外側左撮像部２３ａおよび外側右撮像部２３ｂ）のいずれか一方を単独で用いて、外側撮像部２３を非ステレオカメラとして使用可能である。外側撮像部２３ａおよび２３ｂをステレオカメラとして機能させるプログラムが実行されている場合、外側左撮像部２３ａは、ユーザの左目で視認される左目用画像を撮像し、外側右撮像部２３ｂは、ユーザの右目で視認される右目用画像を撮像する。また、プログラムによっては、２つの外側撮像部（外側左撮像部２３ａおよび外側右撮像部２３ｂ）で撮像した画像を合成してまたは補完的に使用することにより撮像範囲を広げた撮像を行うことも可能である。また、外側撮像部２３ａと２３ｂとの一方を用いて撮像された単一の画像から、視差を有する左目用画像および右目用画像を生成して、あたかも２つのカメラで撮像されたかのような疑似ステレオ画像を生成することもできる。この疑似ステレオ画像の生成において、仮想カメラ間の距離は、適宜設定可能とされる。
【００８６】
第３ＬＥＤ２９は、外側撮像部２３が作動している場合に点灯し、外側撮像部２３が作動していることを報知する。第３ＬＥＤ２９は、上側ハウジング２１の外側面の外側撮像部２３の近傍に設けられる。
【００８７】
図３Ｃは、閉状態におけるゲーム装置１０の一例を示す右側面図である。図３Ｄは、閉状態におけるゲーム装置１０の一例を示す背面図である。
【００８８】
図３Ｄに示される下側ハウジング１１の上側面には、Ｌボタン１４ＧおよびＲボタン１４Ｈが設けられている。Ｌボタン１４Ｇは、下側ハウジング１１の上面の左端部に設けられ、Ｒボタン１４Ｈは、下側ハウジング１１の上面の右端部に設けられる。Ｌボタン１４ＧおよびＲボタン１４Ｈは、ゲーム装置１０が実行するプログラムに応じた機能が適宜割り当てられる。例えば、Ｌボタン１４ＧおよびＲボタン１４Ｈは、上述の各撮像部のシャッターボタン（撮影指示ボタン）として機能する。
【００８９】
なお、図示は省略するが、下側ハウジング１１には、ゲーム装置１０の電源となる充電式電池が収納され、下側ハウジング１１の側面（例えば、上側面）に設けられた端子を介して当該電池を充電することができる。
【００９０】
図４および図５は、それぞれ、ゲーム装置１０の使用状態の一例を示す。図４は、ユーザがゲーム装置１０を両手で把持する様子の一例を示す図である。
【００９１】
図４に示される例において、ユーザは、下側ＬＣＤ１２および上側ＬＣＤ２２がユーザの方向を向く状態で、両手の掌と中指、薬指および小指とで下側ハウジング１１の側面および外側面（内側面の反対側の面）を把持する。このように把持することで、ユーザは、下側ハウジング１１を把持したまま、各操作ボタン１４Ａ〜１４Ｅおよびアナログスティック１５に対する操作を左右の親指で行い、Ｌボタン１４ＧおよびＲ１４Ｈに対する操作を左右の人差し指で行うことができる。
【００９２】
図５は、ユーザがゲーム装置１０を片手で把持する様子の一例を示す図である。図５に示される例において、タッチパネル１３に対して入力を行う場合には、ユーザは下側ハウジング１１を把持していた一方の手を離して他方の手のみで下側ハウジング１１を把持する。これによって、当該一方の手でタッチパネル１３に対する入力を行うことができる。
【００９３】
図６は、ゲーム装置１０の内部構成の一例を示すブロック図である。ゲーム装置１０は、上述した各構成部に加えて、情報処理部３１、メインメモリ３２、外部メモリインターフェイス（外部メモリＩ／Ｆ）３３、データ保存用外部メモリＩ／Ｆ３４、データ保存用内部メモリ３５、無線通信モジュール３６、ローカル通信モジュール３７、リアルタイムクロック（ＲＴＣ）３８、加速度センサ３９、角速度センサ４０、電源回路４１、およびインターフェイス回路（Ｉ／Ｆ回路）４２等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて下側ハウジング１１（または上側ハウジング２１でもよい）内に収納される。
【００９４】
情報処理部３１は、所定のプログラムを実行するためのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１１、画像処理を行うＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１２等を含む情報処理手段である。第１の実施形態では、所定のプログラムがゲーム装置１０内のメモリ（例えば外部メモリＩ／Ｆ３３に接続された外部メモリ４５やデータ保存用内部メモリ３５）に記憶されている。情報処理部３１のＣＰＵ３１１は、当該所定のプログラムを実行することによって、後述する画像処理やゲーム処理を実行する。なお、情報処理部３１のＣＰＵ３１１によって実行されるプログラムは、他の機器との通信によって他の機器から取得されてもよい。また、情報処理部３１は、ＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）３１３を含む。情報処理部３１のＧＰＵ３１２は、情報処理部３１のＣＰＵ３１１からの命令に応じて画像を生成し、ＶＲＡＭ３１３に描画する。そして、情報処理部３１のＧＰＵ３１２は、ＶＲＡＭ３１３に描画された画像を上側ＬＣＤ２２および／または下側ＬＣＤ１２に出力し、当該画像は上側ＬＣＤ２２および／または下側ＬＣＤ１２に表示される。
【００９５】
情報処理部３１には、メインメモリ３２、外部メモリＩ／Ｆ３３、データ保存用外部メモリＩ／Ｆ３４、およびデータ保存用内部メモリ３５が接続される。外部メモリＩ／Ｆ３３は、外部メモリ４５を着脱自在に接続するためのインターフェイスである。また、データ保存用外部メモリＩ／Ｆ３４は、データ保存用外部メモリ４６を着脱自在に接続するためのインターフェイスである。
【００９６】
メインメモリ３２は、情報処理部３１（ＣＰＵ３１１）のワーク領域やバッファ領域として用いられる揮発性の記憶手段である。すなわち、メインメモリ３２は、画像処理やゲーム処理で用いられる各種データを一時的に記憶したり、外部（外部メモリ４５や他の機器等）から取得されるプログラムを一時的に記憶したりする。第１の実施形態では、メインメモリ３２として例えばＰＳＲＡＭ（Ｐｓｅｕｄｏ−ＳＲＡＭ）を用いる。
【００９７】
外部メモリ４５は、情報処理部３１によって実行されるプログラムを記憶するための不揮発性の記憶手段である。外部メモリ４５は、例えば読み取り専用の半導体メモリで構成される。外部メモリ４５が外部メモリＩ／Ｆ３３に接続されると、情報処理部３１は外部メモリ４５に記憶されたプログラムを読み込むことができる。情報処理部３１が読み込んだプログラムを実行することにより、所定の処理が行われる。データ保存用外部メモリ４６は、不揮発性の読み書き可能なメモリ（例えばＮＡＮＤ型フラッシュメモリ）で構成され、所定のデータを格納するために用いられる。例えば、データ保存用外部メモリ４６には、外側撮像部２３で撮像された画像や他の機器で撮像された画像が記憶される。データ保存用外部メモリ４６がデータ保存用外部メモリＩ／Ｆ３４に接続されると、情報処理部３１はデータ保存用外部メモリ４６に記憶された画像を読み込み、上側ＬＣＤ２２および／または下側ＬＣＤ１２に当該画像を表示することができる。
【００９８】
データ保存用内部メモリ３５は、読み書き可能な不揮発性メモリ（例えばＮＡＮＤ型フラッシュメモリ）で構成され、所定のデータを格納するために用いられる。例えば、データ保存用内部メモリ３５には、無線通信モジュール３６を介した無線通信によってダウンロードされたデータやプログラムが格納される。
【００９９】
無線通信モジュール３６は、例えばＩＥＥＥ８０２．１１．ｂ／ｇの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。また、ローカル通信モジュール３７は、所定の通信方式（例えば赤外線通信）により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール３６およびローカル通信モジュール３７は、情報処理部３１に接続される。情報処理部３１は、無線通信モジュール３６を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール３７を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【０１００】
情報処理部３１には、加速度センサ３９が接続される。加速度センサ３９は、３軸（本実施形態では、ｘｙｚ軸）方向に沿った直線方向の加速度（直線加速度）の大きさを検出する。加速度センサ３９は、例えば下側ハウジング１１の内部に設けられる。加速度センサ３９は、図１に示されるように、下側ハウジング１１の長辺方向をｘ軸、下側ハウジング１１の短辺方向をｙ軸、下側ハウジング１１の内側面（主面）に対して垂直な方向をｚ軸として、ゲーム装置１０の各軸方向へ生じる直線加速度の大きさをそれぞれ検出する。なお、加速度センサ３９は、例えば静電容量式の加速度センサとするが、他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ３９は１軸または２軸方向を検出する加速度センサであってもよい。情報処理部３１は、加速度センサ３９が検出した加速度を示すデータ（加速度データ）を受信して、ゲーム装置１０の姿勢や動きを算出する。
【０１０１】
情報処理部３１には、角速度センサ４０が接続される。角速度センサ４０は、ゲーム装置１０の３軸（本実施形態では、ｘｙｚ軸）周りに生じる角速度をそれぞれ検出し、検出した角速度を示すデータ（角速度データ）を情報処理部３１へ出力する。角速度センサ４０は、例えば下側ハウジング１１の内部に設けられる。情報処理部３１は、角速度センサ４０から出力された角速度データを受信して、ゲーム装置１０の姿勢や動きを算出する。
【０１０２】
情報処理部３１には、ＲＴＣ３８および電源回路４１が接続される。ＲＴＣ３８は、時間をカウントして情報処理部３１に出力する。情報処理部３１は、ＲＴＣ３８によって計時された時間に基づき現在時刻（日付）を計算する。電源回路４１は、ゲーム装置１０が有する電源（下側ハウジング１１に収納される上記充電式電池）からの電力を制御し、ゲーム装置１０の各部品に電力を供給する。
【０１０３】
情報処理部３１には、Ｉ／Ｆ回路４２が接続される。Ｉ／Ｆ回路４２には、マイク４３、スピーカ４４、およびタッチパネル１３が接続される。具体的には、Ｉ／Ｆ回路４２には、図示しないアンプを介してスピーカ４４が接続される。マイク４３は、ユーザの音声を検知して音声信号をＩ／Ｆ回路４２に出力する。アンプは、Ｉ／Ｆ回路４２からの音声信号を増幅し、音声をスピーカ４４から出力させる。Ｉ／Ｆ回路４２は、マイク４３およびスピーカ４４（アンプ）の制御を行う音声制御回路と、タッチパネル１３の制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するＡ／Ｄ変換およびＤ／Ａ変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル１３からの信号に基づいて所定の形式のタッチ位置データを生成して情報処理部３１に出力する。タッチ位置データは、タッチパネル１３の入力面において入力が行われた位置（タッチ位置）の座標を示す。なお、タッチパネル制御回路は、タッチパネル１３からの信号の読み込み、およびタッチ位置データの生成を所定時間に１回の割合で行う。情報処理部３１は、タッチ位置データを取得することにより、タッチパネル１３に対して入力が行われたタッチ位置を知ることができる。
【０１０４】
操作ボタン１４は、上記各操作ボタン１４Ａ〜１４Ｌからなり、情報処理部３１に接続される。操作ボタン１４から情報処理部３１へは、各操作ボタン１４Ａ〜１４Ｉに対する入力状況（押下されたか否か）を示す操作データが出力される。情報処理部３１は、操作ボタン１４から操作データを取得することによって、操作ボタン１４に対する入力に応じた処理を実行する。
【０１０５】
下側ＬＣＤ１２および上側ＬＣＤ２２は、情報処理部３１に接続される。下側ＬＣＤ１２および上側ＬＣＤ２２は、情報処理部３１（ＧＰＵ３１２）の指示にしたがって画像を表示する。第１の実施形態では、情報処理部３１は、手書き画像入力操作用の画像を下側ＬＣＤ１２に表示させ、外側撮像部２３および内側撮像部２４のいずれかから取得した画像を上側ＬＣＤ２２に表示させる。すなわち、情報処理部３１は、上側ＬＣＤ２２に外側撮像部２３で撮像した右目用画像と左目用画像とを用いた立体画像（立体視可能な画像）を表示させたり、内側撮像部２４で撮像した平面画像を上側ＬＣＤ２２に表示させたり、上側ＬＣＤ２２に外側撮像部２３で撮像した右目用画像および左目用画像の一方を用いた平面画像を表示させたりする。
【０１０６】
具体的には、情報処理部３１は、上側ＬＣＤ２２のＬＣＤコントローラ（図示せず）と接続され、当該ＬＣＤコントローラに対して視差バリアのＯＮ／ＯＦＦを制御する。上側ＬＣＤ２２の視差バリアがＯＮになっている場合、情報処理部３１のＶＲＡＭ３１３に格納された（外側撮像部２３で撮像された）右目用画像と左目用画像とが、上側ＬＣＤ２２に出力される。より具体的には、ＬＣＤコントローラは、右目用画像について縦方向に１ライン分の画素データを読み出す処理と、左目用画像について縦方向に１ライン分の画素データを読み出す処理とを交互に繰り返すことによって、ＶＲＡＭ３１３から右目用画像と左目用画像とを読み出す。これにより、右目用画像および左目用画像が、画素を縦に１ライン毎に並んだ短冊状画像に分割され、分割された右目用画像の短冊状画像と左目用画像の短冊状画像とが交互に配置された画像が、上側ＬＣＤ２２の画面に表示される。そして、上側ＬＣＤ２２の視差バリアを介して当該画像がユーザに視認されることによって、ユーザの右目に右目用画像が、ユーザの左目に左目用画像が視認される。以上により、上側ＬＣＤ２２の画面には立体視可能な画像が表示される。
【０１０７】
外側撮像部２３および内側撮像部２４は、情報処理部３１に接続される。外側撮像部２３および内側撮像部２４は、情報処理部３１の指示にしたがって画像を撮像し、撮像した画像データを情報処理部３１に出力する。第１の実施形態では、情報処理部３１は、外側撮像部２３および内側撮像部２４のいずれか一方に対して撮像指示を行い、撮像指示を受けた撮像部が画像を撮像して画像データを情報処理部３１に送る。具体的には、ユーザによるタッチパネル１３や操作ボタン１４を用いた操作によって使用する撮像部が選択される。そして、撮像部が選択されたことを情報処理部３１（ＣＰＵ３１１）が検知し、情報処理部３１が外側撮像部２３または内側撮像部２４に対して撮像指示を行う。
【０１０８】
外側撮像部２３および内側撮像部２４は、情報処理部３１（ＣＰＵ３１１）からの指示によって起動されると、例えば、１秒間に６０枚の速度で撮像する。外側撮像部２３または内側撮像部２４によって撮像された撮像画像は、順次、情報処理部３１に送られ、情報処理部３１（ＧＰＵ３１２）によって上側ＬＣＤ２２または下側ＬＣＤ１２に表示される。撮像画像は、情報処理部３１に出力されると、ＶＲＡＭ３１３に格納され、上側ＬＣＤ２２または下側ＬＣＤ１２に出力された後、所定のタイミングで削除される。このように、例えば、１秒間に６０枚の速度で、撮像し、撮像した画像を表示することによって、ゲーム装置１０は、外側撮像部２３および内側撮像部２４の撮像範囲内の景色をリアルタイムに上側ＬＣＤ２２または下側ＬＣＤ１２に表示することができる。
【０１０９】
３Ｄ調整スイッチ２５は、情報処理部３１に接続される。３Ｄ調整スイッチ２５は、スライダの位置に応じた電気信号を情報処理部３１に送信する。
【０１１０】
３Ｄインジケータ２６は、情報処理部３１に接続される。情報処理部３１は、３Ｄインジケータ２６の点灯を制御する。例えば、情報処理部３１は、上側ＬＣＤ２２が立体表示モードである場合、３Ｄインジケータ２６を点灯させる。
【０１１１】
＜機能の説明＞
次に、ゲーム装置１０が実行するゲーム処理の一例の概要を説明する。ゲーム装置１０は、ユーザ（以下、プレイヤともいう）の操作にしたがって、内側撮像部２４、あるいは、外側撮像部２３等を通じて、例えば、人の顔画像を取得して保存することにより、顔画像を収集する機能を提供する。顔画像の収集にあたって、ユーザは、取得した顔画像を用いたゲーム（第１のゲーム）を実行し、そのゲームの結果が成功であった場合に、ユーザは取得した画像を保存することができる。なお、ユーザは、保存する対象となる顔画像を、上記第１のゲームを実行する前に内側撮像部２４または外側撮像部２３等によって撮像された画像や、上記第１のゲームを実行する前に別のアプリケーションによって取得されている画像や、上記第１のゲームの実行中に内側撮像部２４または外側撮像部２３等によって撮像される画像等から取得することができる。ゲーム装置１０は、後述するように、ゲーム処理を実行中にアクセス可能なセーブデータ記憶域Ｄｏ（図１１参照）に、上記第１のゲーム前または上記第１のゲーム中に取得した顔画像を保存する。そして、ユーザは、ゲーム装置１０に対して同様の操作を繰り返して、複数の顔画像を収集し、セーブデータ記憶域Ｄｏに追加し、蓄積することができる。セーブデータ記憶域Ｄｏは、ゲーム実行中のゲーム装置１０がアクセス可能な領域であるので、取得された顔画像がセーブデータ記憶域Ｄｏに保存されることによって、後の処理においても利用可能な状態となる。さらに、ゲーム装置１０は、セーブデータ記憶域Ｄｏに蓄積したデータを読み出すことにより、第１のゲームの結果として収集した顔画像の一覧を表示する。そして、ゲーム装置１０は、表示した顔画像の一覧の中からユーザが選択した顔画像、あるいは、ゲーム装置１０が自動的に選択した顔画像を用いてゲーム（第２のゲーム）を実行する。
【０１１２】
ゲーム装置１０が実行するゲーム（第１のゲーム、第２のゲーム）は、例えば、敵オブジェクトＥＯに照準を合わせて攻撃を行い、敵オブジェクトＥＯを破壊するゲームである。そして、第１の実施形態では、例えば、ユーザが取得し、セーブデータ記憶域Ｄｏ保存納前の顔画像、あるいはセーブデータ記憶域Ｄｏ保存納後の顔画像が敵オブジェクトＥＯ等のキャラクタオブジェクトのテクスチャとなって、敵オブジェクトＥＯ等にマッピングされる。
【０１１３】
まず、第１の実施形態における第１のゲーム実行段階では、ユーザは、例えば、カメラのような撮像部を介して所望の顔画像を取得し、第１のゲームを実行できる。そして、ユーザは、第１のゲームで成功することにより、取得した顔画像をセーブデータ記憶域Ｄｏに蓄積的に保存し、一覧表示し、第２のゲームに利用できる。ここで、蓄積的にとは、ユーザが新たな顔画像を取得し、さらに、第１のゲームで成功することによって、新たな顔画像が追加されることをいう。
【０１１４】
そして、第２のゲームの実行段階では、ユーザは、収集した顔画像の中から所望の顔画像を選択して敵オブジェクトＥＯを作成することができる。そして、ユーザは、所望の顔画像を用いて作成した敵オブジェクトＥＯを用いたゲーム、例えば、作成した敵オブジェクトＥＯを破壊するゲームを実行することができる。ただし、ユーザの操作によらず、ゲーム装置１０が自動的に、セーブデータ記憶域Ｄｏから、例えば、ランダムに顔画像を選択し、敵オブジェクトＥＯ等を作成してもよい。なお、第１のゲームの実行段階においても、すでにセーブデータ記憶域Ｄｏに収集済みの顔画像を用いてキャラクタオブジェクトを作成し、セーブデータ記憶域Ｄｏに保存前の顔画像を用いたキャラクタオブジェクトとともに、ゲームに登場させてもよい。なお、以下で、複数の敵オブジェクトＥＯをそれぞれ区別する場合には、敵オブジェクトＥＯ１、ＥＯ２のように呼ぶ。一方、敵オブジェクトＥＯ１、ＥＯ２等を総称的に呼ぶ場合、および、複数の敵オブジェクトを区別する必要がない文脈では、敵オブジェクトＥＯのように呼ぶ。
【０１１５】
次に、図７〜図１０を参照して、第１の実施形態に係るゲーム装置１０の表示例を説明する。図７は、ゲーム装置１０の上側ＬＣＤ２２に一覧表示された顔画像の例である。上述のように、ユーザは、第１のゲームで成功することにより、取得した顔画像を保存し、図７のように一覧表示できる。一覧表示される顔画像は、例えば、内側撮像部２４、外側左撮像部２３ａ、外側右撮像部２３ｂ等によって取得された画像データを人の顔面の３次元モデルにテクスチャマッピングしたものである。例えば、複数のポリゴンを組み合わせて形成した３次元モデルの表面に、画像データがテクスチャとして貼り付けられる。ただし、ゲーム装置１０が実行するゲームでは、顔画像は、３次元モデルにテクスチャマッピングされたものに限定される訳ではない。例えば、ゲーム装置１０は、単純な２次元画素配列に保持される画像データを顔画像として表示するようにしてもよい。また、図７のように一覧表示された顔画像のうち、いずれか１つ以上が単純な２次元画素配列に保持される顔画像であり、残りが３次元モデルにテクスチャマッピングされた顔画像であってもよい。
【０１１６】
図７では、顔画像Ｇ１は、太線Ｌ１で囲まれている。太線Ｌ１は、顔画像Ｇ１が選択状態にあることを示している。選択状態とは、例えば、ユーザが操作ボタン１４等を操作することによって、処理対象として選択された状態にあることをいう。選択状態は、フォーカスされた状態とも呼ばれる。ユーザが、例えば、操作ボタン１４を押下するごとに、選択状態の顔画像は、左から右、上から下に移動する。例えば、図７の状態で、ユーザが、十字ボタン１４Ａを右方向に押下することで、選択状態の顔画像は、顔画像Ｇ１から顔画像Ｇ２、顔画像Ｇ２から顔画像Ｇ３のように、右方向に遷移する。選択状態の顔画像が遷移するとは、上側ＬＣＤ２２の画面上では、太線Ｌ１で取り囲まれる顔画像が変更されていくことをいう。
【０１１７】
なお、図７で、顔画像の横の並びを１つの段と呼ぶことにする。この１つの段において右端の顔画像Ｇ４が選択状態にあって、さらに、ユーザが、十字ボタン１４Ａを右方向に押下すると、選択状態の顔画像は、次の下段の左下の顔画像Ｇ５となる。逆に、例えば、下段の左下の顔画像Ｇ５が選択状態にある場合に、ユーザが、十字ボタン１４Ａを左方向に押下することで、選択状態の顔画像は、顔画像Ｇ５から顔画像Ｇ４、顔画像Ｇ４から顔画像Ｇ３のように、上方向、右方向に遷移する。
【０１１８】
ただし、選択状態の変更は、十字ボタン１４Ａの左右への押下に限定される訳でなく、上下への押下によって、選択状態が変更されるようにしてもよい。また、選択状態の変更は、十字ボタン１４Ａの押下に限定される訳ではなく、他の操作ボタン１４、例えば、操作ボタン１４Ｂ（Ａボタン）を押下することによって、選択対象の画像を変更するようにしてもよい。また、下側ＬＣＤ１２上のタッチパネル１３の操作によって、選択状態の顔画像を切り替えるようにしてもよい。例えば、ゲーム装置１０は、上側ＬＣＤ２２に表示される顔画像の一覧と同様の顔画像の一覧を下側ＬＣＤ１２に表示しておく。そして、ゲーム装置１０は、タッチパネル１３への操作を検知することによって、どの顔画像が選択状態になったかを検知するようにしてもよい。そして、ゲーム装置１０は、選択状態になった顔画像、例えば、顔画像Ｇ１を太線Ｌ１で取り囲んで表示するようにすればよい。
【０１１９】
以上のように、ユーザは、上側ＬＣＤ２２に表示される、図７で例示される画面により、現在取得済みの顔画像の一覧を閲覧できる。また、ユーザは、現在取得済みの画面一覧から所望の顔画像を選択状態とすることができる。そして、例えば、所定の決定ボタン、例えば、下側ＬＣＤ１２に表示された決定ボタンなどをタッチパネル１３あるいは操作ボタン１４などで選択することで、選択状態を確定することができる。また、例えば、ユーザがボタン１４Ｃ（Ｂボタンともいう）を押下することで、上側ＬＣＤ２２の顔画像の一覧画面が閉じて、図示しないメニュー選択待ちの画面を表示するようにしてもよい。
【０１２０】
図８は、一覧表示された顔画像の他の例である。図８の例では、顔画像Ｇ２が選択状態にあり、太線Ｌ２で囲まれている。図８の例では、顔画像Ｇ２が選択状態になると、顔画像Ｇ２と関連がある顔画像が反応している。例えば、顔画像Ｇ０の近傍にハートマークが表示され、かつ、顔画像Ｇ０が片目を閉じて、選択状態にある顔画像Ｇ２に向かって視線を送っている。また、例えば、顔画像Ｇ３、顔画像Ｇ７なども、選択状態にある顔画像Ｇ２に顔を向けて、視線を送っている。
【０１２１】
ただし、選択状態にされた顔画像と関連性のある顔画像の反応は、顔を向ける、近傍にハートマークが表示され、片目を閉じて視線を送る、顔を向けて視線を送る、等の動作だけに限定される訳ではない。例えば、関連のある顔画像が、笑う、声を発する等の反応を示してもよい。逆に、選択状態にされた顔画像と関連のない顔画像が、笑っている表情から、笑わない表情に変わるようにしてもよい。また、選択状態にされた顔画像と関連のない顔画像が、選択状態にされた顔画像の方向と逆の方向を向くようにしてもよい。
【０１２２】
ここで、関連のある顔画像は、例えば、顔画像取得の段階で定義しておくようにしてもよい。例えば、顔画像を分類するためのグループを事前に設定しておき、顔画像が取得されるときに、取得される顔画像がどのグループに属するかをユーザが入力するようにしてもよい。また、例えば、ゲームの進行に応じて、顔画像のグループを定義し、顔画像を分類するようにしてもよい。例えば、顔画像Ｇ０を用いて、ゲームを進行中に、新たに顔画像Ｇ１が取得されたような場合に、顔画像Ｇ０と顔画像Ｇ１とを同一のグループに属する関連のある顔画像同士であると決定してもよい。
【０１２３】
図８のように、１つの顔画像、例えば、顔画像Ｇ２が操作ボタン１４等によって選択状態にされたときに、他の顔画像Ｇ０、Ｇ３、Ｇ７などが反応すると、取得された顔画像間の親近感などを表現できるようになる。すなわち、単に収集した顔画像をグループに分けて分類するというのではなく、顔画像の表情、反応によって、複数の顔画像間での親近性を表現でき、実世界の人と人との関連性、親密度等を仮想のゲーム装置１０の世界で表現できる。
【０１２４】
図９および図１０は、顔画像をゲームキャラクタの１つである、敵オブジェクトＥＯにはめ込む処理の画面例である。図９は、敵オブジェクトＥＯの頭部選択画面の例である。例えば、ゲーム装置１０の下側ＬＣＤ１２に表示されるメニューから、タッチパネル１３への操作で、ユーザが「ボスを選ぶ」というメニューのリストを選択すると、図９のような、ゲーム装置１０に用意されている敵オブジェクトＥＯの頭部形状の一覧が表示される。ただし、このような操作は、タッチパネル１３による操作に限定される訳ではなく、例えば、操作ボタン１４等による操作で、図９のような頭部形状の一覧が表示されるようにしてもよい。
【０１２５】
図９では、頭部形状Ｈ１、Ｈ２、Ｈ３の３種類が選択可能に表示されている。例えば、頭部形状Ｈ１は、３次元モデルで形成された顔面部分Ｈ１２と、顔面部分Ｈ１２を取り囲む周辺部分Ｈ１３とを含む。図７、図８で示したように、３次元モデルである顔面部分Ｈ１２に、顔画像をテクスチャマッピングすることで、ゲームに登場する敵オブジェクトＥＯが形成される。
【０１２６】
周辺部分Ｈ１３は、ゲームに登場する敵オブジェクトＥＯの特徴を暗示した形状とすればよい。例えば、周辺部分Ｈ１３が、兜（カブト）を模倣した形状であれば、敵オブジェクトＥＯの好戦的なイメージを表現できる。図９では、２行４列の頭部形状の一覧表に、３種類の頭部形状Ｈ１、Ｈ２、Ｈ３が例示されており、それら以外は、未定義のマークＨ０が表示されている。したがって、頭部形状Ｈ１−Ｈ３は、あくまでも例示であり、頭部形状の種類が３種類に限定される訳ではない。例えば、ゲームプログラムのバージョンアップ媒体、あるいは、インターネット上でゲームのパーツを提供するウェブサイトなどから、新たな頭部形状を追加できるようにしておいてもよい。
【０１２７】
図９では、「ボス」というラベルＬＢにより、頭部形状Ｈ１がユーザによって、選択状態になっていることが示されている。ラベルＬＢは、例えば十字ボタン１４Ａ等によって、移動可能である。ユーザが十字ボタン１４Ａ等の操作によって、ラベルＬＢを移動することで、例えば、頭部形状Ｈ２、あるいはＨ３を選択状態とすることができる。そして、いずれかの頭部形状を選択状態とした後、ユーザが、操作ボタン１４Ｂ（Ａボタン）などを押下することで、選択状態を決定するようにすればよい。選択状態を決定することで、ラベルＬＢが配置され、選択状態となっている頭部形状、例えば、図９の例では、頭部形状Ｈ１の選択が確定する。なお、図９の画面が上側ＬＣＤ２２に表示されているときに、ユーザが操作ボタン１４Ｃ（Ｂボタン）を押下することで、敵オブジェクトＥＯの頭部選択画面が閉じられ、前の操作画面に戻るようにすればよい。
【０１２８】
図１０は、顔画像選択画面を例示する図である。例えば、図９の敵オブジェクトＥＯの頭部選択画面が上側ＬＣＤ２２に表示されているときに、ユーザが操作ボタン１４Ｂ（Ａボタン）などを押下することで、頭部形状の選択状態を決定すると、図１０の画面が表示される。図１０の画面は、図７および図８と同様であるが、選択状態となった顔画像に図９で選択された頭部形状の周辺部分Ｈ１３が付加される点で、図７および図８と相違する。
【０１２９】
図１０の画面において、ユーザが、十字ボタン１４Ａ等を操作することによって、選択対象の顔画像を変更することができる。すなわち、ユーザは、選択状態の顔画像を顔画像Ｇ０からＧ１へ、さらに、顔画像Ｇ１からＧ２へというように、移動可能である。そして、選択状態とされた顔画像は、頭部形状の顔面部分にテクスチャマッピングされて表示される。例えば、図１０の例では、図９の画面で選択された頭部形状Ｈ１の顔面部分Ｈ１２に、顔画像Ｇ２がテクスチャマッピングされ、周辺部分Ｈ１３と組み合わせて表示される。
【０１３０】
このような周辺部分Ｈ１３と顔画像Ｇ２との組み合わせが表示されることによって、敵オブジェクトＥＯが一時的に作成される。ユーザは、一時的に表示される敵オブジェクトＥＯによって、ゲームで対決する敵のイメージを想像することになる。ユーザは、十字ボタン１４Ａ等を操作することによって、選択対象の顔画像を変更することで、敵オブジェクトＥＯの顔画像を取り替えることができる。すなわち、ユーザは、敵オブジェクトＥＯの顔を次々に取り替えて、ゲームで戦うイメージに合致する敵オブジェクトＥＯを作成できる。
【０１３１】
すなわち、ゲーム装置１０では、例えば、上記のように第１のゲームで成功することにより収集され、セーブデータ記憶域Ｄｏに蓄積された顔画像が次の第２のゲームに使用される。すなわち、ゲーム装置１０では、収集した顔画像を用いて作成した敵オブジェクトＥＯを用いたゲーム処理が実行される。例えば、ゲーム装置１０は、ユーザの操作にしたがって、ゲームの実行前に配役決定処理を呼ばれる処理を実行し、ユーザのイメージに合致する敵オブジェクトＥＯを生成する。あるいは、ゲーム装置１０は、ゲームの実行前に自動的に、敵オブジェクトＥＯを生成する。「自動的に」とは、例えば、ゲーム装置１０が収集された顔画像から顔画像を必要数、すなわち、ゲームに登場する敵オブジェクトＥＯの数だけ、ランダムに選択して、敵オブジェクトＥＯを生成することができることをいう。また、例えば、ゲーム装置１０は、ユーザが過去に実行したゲーム処理の履歴から、ユーザの特性、指向などから、次にユーザが望むと推定される顔画像を選択して、敵オブジェクトＥＯを作成してもよい。ゲーム装置１０は、顔画像とともに、顔画像の被写体の属性、例えば、年齢、性別、交友関係（家族、友人、職場・学校・地域などでの交流関係）、被写体がペット等の生物である場合の被写体の所有関係などを基に、現時点までのユーザによるゲームの実行履歴から、次に用いる顔画像を選択してもよい。また、例えば、ゲーム装置１０は、過去に実行したゲームにおけるユーザの成績から、次に用いる顔画像を選択してもよい。
【０１３２】
ゲーム装置１０は、このようなユーザの操作による指定、あるいは、ゲーム装置１０の処理によって、作成された敵オブジェクトＥＯを用いたゲーム処理（第２のゲーム）を実行する。なお、ここでは、一例として、敵オブジェクトＥＯという呼び名で説明するが、ゲームに登場するキャラクタオブジェクトとしては、敵対関係にあるオブジェクトに限定されず、味方のキャラクタオブジェクトでもよい。また、敵味方という関係が存在するゲームに限定されず、ユーザ自身を模擬したプレイヤオブジェクトが登場するゲームでもよい。また、例えば、ゲームを実行するユーザを支援する、エージェントと呼ばれるオブジェクトが登場するゲームであってもよい。
【０１３３】
ゲーム装置１０は、以上のような敵オブジェクトＥＯ等、様々なキャラクタオブジェクトが登場するゲームを実行する。このゲームに登場するキャラクタオブジェクトには、ユーザが第１のゲームで成功することにより収集した顔画像が、テクスチャマッピング等の手法により貼り付けられている。したがって、ゲーム装置１０で実行されるゲームでは、ユーザ自身が収集した顔画像を含むキャラクタオブジェクトが登場する。このため、様々なキャラクタオブジェクトに、顔画像のような、人、あるいは、生物の特徴を象徴する部分の画像を用いることにより、ユーザは、その顔画像の人、あるいはその顔画像の生物との実世界の関係を反映したゲームを実行できる。例えば、愛情、好意、好感、逆に憎悪などの感情を込めたゲームを実行できるのである。
【０１３４】
なお、図１０の顔画像選択画面でも、図８と同様に、１つの顔画像が選択対象なったときに、選択対象とされている顔画像に関連する他の顔画像が反応を示すようにすればよい。例えば、図１０の例では、選択対象とされ、頭部形状Ｈ１の周辺部分１３と組み合わせられた顔画像Ｇ２に対して、関連する顔画像、例えば、顔画像Ｇ４が顔を向けて微笑み、視線を送っている。また、顔画像Ｇ５が、顔画像Ｇ２に対して、顔を上向きに上げて、うらやむような視線を送っている。また、顔画像Ｇ８およびＧ９も顔画像Ｇ２の方向に視線を向けている。一方、図１０では、顔画像Ｇ４、Ｇ５、Ｇ８、Ｇ９以外は、顔画像Ｇ２が選択対象とされたことに対して、反応を見せていない。このような反応の相違によって、複数の顔画像同士の親近関係を表現できる。このように、ゲーム装置１０は、顔画像がユーザと特定の関係ある場合、例えば、複数の友人グループに属するような場合など、実世界の人と人との親密さの関係をゲーム装置１０が表現する仮想の世界に持ち込み、描写することを可能としている。
【０１３５】
＜各種データの一例＞
図１１は、画像処理プログラムを実行することに応じて、メインメモリ３２に記憶される各種データの一例を示す図である。
【０１３６】
なお、ゲーム装置１０の処理を実行するためのプログラムは、ゲーム装置１０に内蔵されるメモリ（例えば、データ保存用内部メモリ３５）、外部メモリ４５、または、データ保存用外部メモリ４６に含まれており、ゲーム装置１０の電源がオンになったときに、内蔵メモリから、または外部メモリＩ／Ｆ３３やデータ保存用外部メモリＩ／Ｆ３４を介して外部メモリ４５またはデータ保存用外部メモリ４６からメインメモリ３２に読み出されて、ＣＰＵ３１１によって実行される。
【０１３７】
図１１において、メインメモリ３２には、内蔵メモリ、外部メモリ４５、またはデータ保存用外部メモリ４６から読み出されたプログラムや画像処理において生成される一時的なデータが記憶される。図１１において、メインメモリ３２のデータ記憶領域には、操作データＤａ、実カメラ画像データＤｂ、実世界画像データＤｃ、境界面データＤｄ、奥壁画像データＤｅ、敵オブジェクトデータＤｆ、弾オブジェクトデータＤｇ、得点データＤｈ、動きデータＤｉ、仮想カメラデータＤｊ、レンダリング画像データＤｋ、および表示画像データＤｌ、照準カーソル画像データＤｍ、管理データＤｎ、セーブデータ記憶域Ｄｏ等が格納される。また、メインメモリ３２のプログラム記憶領域には、画像処理プログラムを構成する各種プログラム群Ｐａが記憶される。
【０１３８】
《操作データＤａ》
操作データＤａは、ユーザがゲーム装置１０を操作した操作情報を示すデータである。操作データＤａは、操作子データＤａ１および角速度データＤａ２を含んでいる。操作子データＤａ１は、ユーザがゲーム装置１０の操作ボタン１４やアナログスティック１５等の操作子を操作したことを示すデータである。角速度データＤａ２は、角速度センサ４０によって検出された角速度を示すデータである。例えば、角速度データＤａ２には、角速度センサ４０が検出したｘ軸周りの角速度を示すｘ軸周り角速度データ、ｙ軸周りの角速度を示すｙ軸周り角速度データ、およびｚ軸周りの角速度を示すｚ軸周り角速度データが含まれる。例えば、操作ボタン１４やアナログスティック１５からの操作データや角速度センサ４０からの角速度データは、ゲーム装置１０が処理する時間単位（例えば、１／６０秒）毎に取得され、当該取得に応じて操作子データＤａ１および角速度データＤａ２に格納されて更新される。
【０１３９】
なお、後述するゲーム処理（例えば、図２０Ａ以下の処理等）では、操作子データＤａ１および角速度データＤａ２が処理周期である１フレーム毎にそれぞれ更新される例を用いて説明するが、他の処理周期で更新されてもかまわない。例えば、操作ボタン１４やアナログスティック１５等の操作子をユーザが操作したことを検出する周期毎に操作子データＤａ１を更新し、当該更新された操作子データＤａ１を処理周期毎に利用する態様でもかまわない。また、角速度センサ４０の角速度検出周期毎に角速度データＤａ２を更新し、当該更新された角速度データＤａ２を処理周期毎に利用する態様でもかまわない。この場合、操作子データＤａ１や角速度データＤａ２を更新するそれぞれの周期と、処理周期とが異なることになる。
【０１４０】
《実カメラ画像データＤｂ》
実カメラ画像データＤｂは、外側撮像部２３および内側撮像部２４のいずれかが撮像した実カメラ画像を示すデータである。後述する処理の説明においては、実カメラ画像を取得するステップにおいて外側撮像部２３および内側撮像部２４のいずれかが撮像した実カメラ画像を用いて、実カメラ画像データＤｂを更新する態様を用いる。なお、外側撮像部２３または内側撮像部２４が撮像し、撮像された実カメラ画像を用いて実カメラ画像データＤｂを更新する周期は、ゲーム装置１０における処理の単位時間（例えば、１／６０秒）と同じでもいいし、当該単位時間より短い時間でもかまわない。ゲーム装置１０における処理の周期より実カメラ画像データＤｂを更新する周期が短い場合、後述する処理とは独立して適宜実カメラ画像データＤｂを更新してもかまわない。この場合、後述する実カメラ画像を取得するステップにおいて、実カメラ画像データＤｂが示す最新の実カメラ画像を常に用いて処理すればよい。以下、本実施形態では、実カメラ画像データＤｂは、外側撮像部２３（例えば、外側左撮像部２３ａ）により撮像した実カメラ画像を示すデータであるとする。
【０１４１】
《実世界画像データＤｃ》
後述するゲーム処理、例えば、図１４のステップ１８のゲーム実行の処理、さらに具体的には、図２０Ａ以降に示す処理では、ゲーム装置１０の実カメラ（外側撮像部２３または内側撮像部２４）が撮像した実カメラ画像をテクスチャマッピングする境界面３が導入される。実世界画像データＤｃは、ゲーム装置１０の実カメラ（外側撮像部２３または内側撮像部２４）が撮像した実カメラ画像を用いて、境界面３上に存在しているように見える実世界画像を生成するためのデータである。後述する第１の描画方法では、例えば、実世界画像データＤｃは、実世界画像を境界面（仮想カメラの表示範囲のスクリーンオブジェクト）に貼り付けるための実カメラ画像のテクスチャデータを含んでいる。また、後述する第２の描画方法では、例えば、実世界画像データＤｃは、実世界画像を生成するための平面ポリゴンのデータ、当該平面ポリゴンにマッピングするための実カメラ画像のテクスチャデータ、および当該平面ポリゴンの仮想空間上の位置（後述する実世界描画用カメラからの位置）を示すデータ等を含んでいる。
【０１４２】
《境界面データＤｄ》
境界面データＤｄは、上記実世界画像データＤｃと合わせて、境界面３上に存在しているように見える実世界画像を生成するためのデータである。第１の描画方法では、例えば、境界面データＤｄは、スクリーンオブジェクトに関するデータであり、境界面３を構成する各点の状態（例えば、開口の有無）を示す開口判定用データ（後述するαテクスチャのデータに相当する）、境界面３の仮想空間上の配置位置（境界面３の仮想空間上の座標）を示すデータ等を含んでいる。また、第２の描画方法では、例えば、境界面データＤｄは、上記実世界画像の平面ポリゴンに開口を表現するためのデータであり、境界面３を構成する各点の状態（例えば、開口の有無）を示す開口判定用データ（後述するαテクスチャのデータに相当する）、境界面３の仮想空間上の配置位置（境界面３の仮想空間上の座標）を示すデータ等を含んでいる。境界面３の仮想空間上の配置位置を示すデータは、例えば、上記球体表面の条件式（仮想空間上における球体表面を定義する関係式）であり、境界面３の仮想空間上の存在範囲を示す。
【０１４３】
開口状態を示す開口判定用データは、例えば、各点のアルファ値（不透明度）を設定可能な２次元（例えば、２０４８ピクセル×３８４ピクセル等の矩形形状）のテクスチャデータである。アルファ値は、“０”が最小で“１”が最大の、“０”から“１”までの値である。アルファ値は、“０”で透明を示し、“１”で不透明を示す。開口判定用データは、開口判定用データに「０」が格納されている位置は開口状態であり、「１」が格納されている位置は開口ではない状態であることを示すことができる。アルファ値は、例えば、ゲーム装置１０内部で生成されるゲーム世界の画像、あるいは上側ＬＣＤ２２における画素または複数の画素からなる画素ブロック単位に設定することができる。本実施形態では、非開口領域には、「０を超える１未満の所定値（本実施形態においては０．２が設定される）」が格納される。このデータは、実世界画像に適用するときには使用されない。実世界画像に適用する場合、開口判定用データに格納されたアルファ値「０．２」は「１」として取り扱われる。なお、当該アルファ値「０．２」は、前述の敵オブジェクトＥＯの影ＥＳの描画時に使用される。ただし、当該アルファ値の設定、およびアルファ値の取り得る値の範囲は、本発明の画像処理プログラムを限定するものではない。
【０１４４】
本実施形態における画像処理プログラムは、第１の描画方法では、この開口判定用データのうち仮想カメラの視空間の範囲に対応する領域と、境界面３に貼り付けられる実世界画像のテクスチャの色情報（画素値）とを掛け算することによって、開口を有する実世界画像を生成することができる。また、第２の描画方法では、この開口判定用データのうち仮想世界描画用カメラの視空間の範囲に対応する領域と、実世界画像（具体的には、上記実世界画像データＤｃを用いて後述する平行投影によりレンダリングされた実カメラ画像のレンダリング画像データ）の色情報（画素値）とを掛け算することによって、開口を有する実世界画像を生成することができる。なぜなら、開口位置に格納されたアルファ値「０」と当該位置における実世界画像の色情報とが掛け算されることによって、実世界画像の色情報の値が「０」（完全に透明な状態）となるからである。
【０１４５】
なお、第１の描画方法では、後述するとおり、当該開口判定用データが適用された実世界画像のオブジェクトを含んだ各仮想オブジェクトの仮想空間画像がレンダリングされることにより上側ＬＣＤ２２に表示される画像が生成される。
【０１４６】
また、第２の描画方法では、具体的には、後述するとおり、当該開口判定用データを考慮して仮想空間画像がレンダリングされる。すなわち、開口判定用データに基づいて、各仮想オブジェクトの境界面に対する優先度（実世界画像に対する優先度）が判定され、各仮想オブジェクトがレンダリングされることにより仮想空間画像として生成される。そして、このようにして生成された実世界画像と仮想空間画像とを合成することで、上側ＬＣＤ２２に表示される画像が生成される。
【０１４７】
また、本実施形態における画像処理プログラムでは、境界面３の形状は球体表面である（図２０Ａおよび図２０Ｂ参照）。そして、本実施形態における開口判定用データの形状は、矩形形状としてよい。この矩形形状の開口判定用データを、図２０Ａおよび図２０Ｂで図示したような球体表面の中央部にマッピングすることにより、開口判定用データの各点と境界面の各点とを対応させることができる。
【０１４８】
なお、本実施形態において開口判定用データは図２０Ａで示す球体表面の中央部に対応するデータのみであるため、仮想カメラ（第２の描画方法では、仮想世界描画用カメラ）の向きによっては、開口判定用データが存在しない場合がある。このように開口判定用データが存在しない場合は、実世界画像はそのまま描画される。すなわち、α値としては「１」が設定されているとして描画される。
【０１４９】
境界面３上に作成される開口の画像処理については後述する。
【０１５０】
《奥壁画像データＤｅ》
奥壁画像データＤｅは、第２空間２に存在する奥壁ＢＷに関するデータである。例えば、奥壁画像データＤｅは、奥壁ＢＷの画像を生成するための画像データ、および当該奥壁ＢＷを定義するポリゴンモデルの仮想空間上の位置を示すデータ等を含んでいる。
【０１５１】
奥壁ＢＷを定義するポリゴンモデルは、典型的には、仮想カメラ（第２の描画方法では、仮想世界描画用カメラ）の位置から伸びる鉛直軸を中心として、図２０Ａで示す球体の半径より大きな半径を有し、図２０Ａで示す球体の中央部と同じ形状のモデルである。すなわち、奥壁ＢＷを定義するモデルは、境界面３を内含する。また、境界面３に形成される開口予定位置の背後に配置される平面ポリゴンであってもよい。また、境界面３に開口が形成される毎に、第２空間２においてその開口の投影面を定義する平面ポリゴンが配置されるようにしてもよい。
【０１５２】
奥壁ＢＷのポリゴンモデルに貼り付けられる画像データ（テクスチャ）は、任意でよい。もっとも、この画像データは、実世界画像の背後に存在する別の空間（第２空間２）を表現するため、宇宙空間，空，水中を示す画像のような非現実を表現する画像であると、プレイヤに対して、現実空間の向こうに非現実な空間があるかのような不思議な感覚を喚起できることで好ましい。例えば、本実施形態のゲームを部屋の中でプレイしているときには、部屋の向こうに非現実な空間があるかのような感覚を与えることができる。また、奥壁のテクスチャは、砂漠、荒野のような普段目にすることのない風景を表現するものであってもよい。このように、奥壁ＢＷのテクスチャの選択によって、ゲーム世界の背景として表現された現実画像の背後に潜む別世界に対する所望のイメージをプレイヤに知らしめることができる。
【０１５３】
また、例えば、当該画像データが、宇宙の画像等の繰り返し表現を用いることができる画像であれば、画像データ（テクスチャ）のデータサイズを小さくすることができる。また、当該画像データが、このような画像であれば、仮想空間上の奥壁ＢＷの描画されるべき位置を特定しなくても、奥壁ＢＷの画像を描画することができる。なぜなら、繰り返し表現を用いることができる画像であれば、描画される画像は位置に依らない（ポリゴンモデル全体に繰り返しパターンを表現できる）からである。
【０１５４】
なお、本実施形態において、後述する描画の優先度はアルファ値によって定められるため、当該画像データにはアルファ値が定められているものとする。本実施形態では、当該画像データに定められているアルファ値は「１」であるとする。
【０１５５】
《敵オブジェクトデータＤｆ》
敵オブジェクトデータＤｆは、敵オブジェクトＥＯに関するデータであり、実体データＤｆ１、シルエットデータＤｆ２、および開口形状データＤｆ３を含んでいる。
【０１５６】
実体データＤｆ１は、敵オブジェクトＥＯの実体を描画するためのデータであり、例えば、敵オブジェクトＥＯの実体の３次元形状を定義したポリゴンモデルと、当該ポリゴンモデルにマッピングするためのテクスチャデータである。当該テクスチャデータは、例えば、ゲーム装置１０の各撮像部で撮像したユーザ等の顔写真等であってもよい。なお、本実施形態において、後述する描画の優先度はアルファ値によって定められるため、当該テクスチャデータにはアルファ値が定められているものとする。本実施形態では、当該テクスチャデータに定められているアルファ値は「１」であるとする。
【０１５７】
シルエットデータＤｆ２は、第２空間２に存在する敵オブジェクトＥＯの影を実世界画像上に半透明で描画するためのデータであり、ポリゴンモデルとそのポリゴンモデルに貼り付けられるテクスチャデータとを含む。例えば、このシルエットモデルは、前述したように、８枚の平面ポリゴンを含み、第２空間２に存在する敵オブジェクトＥＯの位置と同じ位置に配置される。このテクスチャが貼り付けられたシルエットモデルを仮想世界描画用カメラから見て実世界画像上に半透明などで描画することにより、第２空間２に存在する敵オブジェクトＥＯの影を表現できる。また、シルエットデータＤｆ２のテクスチャデータは、例えば、図２７Ａおよび図２７Ｂに示すように、敵オブジェクトＥＯを各方向からみた画像であってもよい（例えば、８枚の平面ポリゴン）。さらに、当該画像は、敵オブジェクトＥＯのシルエットモデルを簡素化した画像であってもよい。なお、本実施形態において、後述する描画の優先度はアルファ値によって定められるため、シルエットモデルに貼り付けられるテクスチャデータにはアルファ値が定められているものとする。本実施形態では、当該テクスチャデータに定められているアルファ値は、影画像部分について「１」であり、影画像がない部分（周囲の部分）について「０」であるとする。
【０１５８】
開口形状データＤｆ３は、敵オブジェクトＥＯが第１空間１と第２空間２とを往来する際に境界面３上に生成する開口の形状に関するデータである。本実施形態では、開口形状データＤｆ３は、開口を生成する境界面３上の位置に対応する開口判定用データの位置におけるアルファ値を「０」にするためのデータである。例えば、開口形状データＤｆ３は、生成する開口の形状に合わせた、アルファ値「０」のテクスチャデータである。なお、本実施形態では、開口判定用データに対して、上記敵オブジェクトＥＯが境界面３を通った位置に対応する箇所を中心として、当該開口形状データＤｆ３の形状分だけアルファ値「０」に設定する。敵オブジェクトＥＯが境界面３上に開口を生成する際の画像処理については後述する。
【０１５９】
《弾オブジェクトデータＤｇ》
弾オブジェクトデータＤｇは、プレイヤの攻撃操作に応じて発射される弾オブジェクトＢＯに関するデータである。例えば、弾オブジェクトデータＤｇは、弾オブジェクトＢＯを描画するためのポリゴンモデルおよび弾画像（テクスチャ）データ、弾オブジェクトＢＯの配置方向や配置位置を示すデータ、および弾オブジェクトＢＯの移動速度や移動方向（例えば、移動速度ベクトル）を示すデータ等を含んでいる。なお、本実施形態において、後述する描画の優先度はアルファ値によって定められるため、弾画像データにはアルファ値が定められているものとする。本実施形態では、弾画像データに定められているアルファ値は「１」であるとする。
【０１６０】
《得点データＤｈ》
得点データＤｈは、敵オブジェクトＥＯが登場するゲームの得点を示すデータである。例えば、上述のとおり、ゲームの得点は、攻撃操作によって敵オブジェクトＥＯを退治することによって加点され、敵オブジェクトＥＯがユーザの位置（つまり、仮想空間上における仮想カメラの配置位置）に到達することによって減点される。
【０１６１】
《動きデータＤｉ》
動きデータＤｉは、実空間におけるゲーム装置１０の動きを示すデータである。一例として、ゲーム装置１０の動きは、角速度センサ４０によって検出された角速度によって算出される。
【０１６２】
《仮想カメラデータＤｊ》
仮想カメラデータＤｊは、仮想空間に設置される仮想カメラに関するデータである。第１の描画方法では、例えば、仮想カメラデータＤｊは、仮想カメラの仮想空間上の配置方向や配置位置を示すデータを含んでいる。また、第２の描画方法では、例えば、仮想カメラデータＤｊは、実世界描画用カメラの仮想空間上の配置方向や配置位置を示すデータと、仮想世界描画用カメラの仮想空間上の配置方向や配置位置を示すデータのそれぞれを含む。そして、例えば、第１の描画方法における仮想カメラおよび第２の描画方法における仮想世界描画用カメラの仮想空間上の配置方向や配置位置を示すデータは、動きデータＤｉが示すゲーム装置１０の動き（角速度）に応じて変化する。さらに、仮想カメラデータＤｊは、仮想カメラの画角（描画範囲）データを含んでいる。これによって、第１の描画方法における仮想カメラおよび第２の描画方法における仮想世界描画用カメラの位置および向きの変化に応じて、境界面３上の描画範囲（描画位置）が変化する。
【０１６３】
《レンダリング画像データＤｋ》
レンダリング画像データＤｋは、後述する処理によりレンダリングされた画像に関するデータである。
【０１６４】
第１の描画方法では、実世界画像を仮想空間上のオブジェクトとしてレンダリングするため、レンダリング画像データＤｋは、仮想空間のレンダリング画像データを含む。仮想空間のレンダリング画像データは、敵オブジェクトＥＯ、弾オブジェクトＢＯ、実世界画像がテクスチャとして貼られた境界面３（スクリーンオブジェクト）、奥壁ＢＷが配置された仮想空間を仮想カメラにより透視投影でレンダリングすることによって得られる仮想世界画像を示すデータである。
【０１６５】
他方、第２の描画方法では、実世界画像と仮想世界画像を別々の仮想カメラでレンダリングするため、レンダリング画像データＤｋは、実カメラ画像のレンダリング画像データおよび仮想空間のレンダリング画像データを含んでいる。実カメラ画像のレンダリング画像データは、実カメラ画像のテクスチャがマッピングされた平面ポリゴンを、実世界画像描画用カメラにより平行投影でレンダリングすることによって得られる実世界画像を示すデータである。仮想空間のレンダリング画像データは、敵オブジェクトＥＯ、弾オブジェクトＢＯ、境界面３、奥壁ＢＷが配置された仮想空間を仮想世界描画用カメラにより透視投影でレンダリングすることによって得られる仮想世界画像を示すデータである。
【０１６６】
《表示画像データＤｌ》
表示画像データＤｌは、上側ＬＣＤ２２に表示される表示画像を示すデータである。第１の描画方法では、例えば、上側ＬＣＤ２２に表示される表示画像は、仮想空間のレンダリング処理により生成される。また、第２の描画方法では、例えば、上側ＬＣＤ２２に表示される表示画像は、上記カメラ画像のレンダリング画像データと仮想空間のレンダリング画像データとを後述する方法で合成することによって生成される。
【０１６７】
《照準カーソル画像データＤｍ》
照準カーソル画像データＤｍは、上側ＬＣＤ２２に表示される照準カーソルＡＬの画像データである。当該画像データは、任意のデータでよい。
【０１６８】
なお、本実施形態では、描画に用いられる各オブジェクトに関するデータ（境界面データＤｄ、奥壁画像データＤｅ、実体データＤｆ１、シルエットデータＤｆ２、弾画像データ）は、描画の優先度を定める優先度情報を含んでいる。本実施形態では、当該優先度情報は、アルファ値が用いられているとする。当該アルファ値と画像処理の関係については後述する。
【０１６９】
また、本実施形態では、描画に用いる各オブジェクトに関するデータは、核オブジェクト間でデプス判定を行うか否かを示すデータが含まれている。当該データは、上述のとおり、敵オブジェクトＥＯ、弾オブジェクトＢＯ、半透明の敵オブジェクト、エフェクトオブジェクト、スクリーンオブジェクト（境界面３）との間は、互いにデプス判定が有効となるように設定されている。また、当該データは、「影用の平面ポリゴン（シルエットデータＤｆ２）と敵オブジェクトＥＯ（実体データＤｆ１）の間」「影用の平面ポリゴン（シルエットデータＤｆ２）と弾オブジェクトＢＯの間」「影用の平面ポリゴン（シルエットデータＤｆ２）と半透明の敵オブジェクトの間」「影用の平面ポリゴン（シルエットデータＤｆ２）とエフェクトオブジェクトの間」は、互いにデプス判定が有効となるように設定されている。さらに、当該データは、影用の平面ポリゴン（シルエットデータＤｆ２）とスクリーンオブジェクト（境界面データＤｄ）との間は、デプス判定が無効となるように設定されている。
【０１７０】
《管理データＤｎ》
管理データＤｎは、収集した顔画像等、ゲーム装置１０が処理するデータ、あるいは、ゲーム装置１０が蓄積したデータ等を管理するためのデータである。管理データＤｎは、例えば、顔画像管理情報Ｄｎ１、顔画像属性集計表Ｄｎ２等を含む。顔画像管理情報Ｄｎ１には、個々の顔画像のデータの記憶先（例えば、メインメモリ３２等のアドレス）、顔画像の取得元（例えば、内側撮像部２４、外側撮像部２３）、顔画像の属性（例えば、顔画像の被写体の性別、年齢等）、顔画像と関連する他の顔画像の情報等が格納される。また、顔画像属性集計表Ｄｎ２には、ユーザが現在収集済みの顔画像の属性ごとの収集点数が格納される。例えば、収集した顔画像の被写体を性別、年代等で分類したときの、それぞれの分類ごとの収集実績値が格納される。顔画像管理情報Ｄｎ１、顔画像属性集計表Ｄｎ２のデータ構造例については後述する。
【０１７１】
《セーブデータ記憶域Ｄｏ》
セーブデータ記憶域Ｄｏは、情報処理部３１が、ゲームプログラム等の画像処理プログラムを実行するときに、情報処理部３１が処理対象とするデータ、情報処理部３１が処理した結果のデータ等を保存する領域である。一例としては、本実施形態では、ゲーム装置１０が、内側撮像部２４、外側撮像部２３、無線通信モジュール３６、ローカル通信モジュール３７等を介して、ゲーム装置１０が取得した顔画像のデータが保存される。本実施形態では、例えば、ゲーム装置１０が取得した顔画像がメインメモリ３２に一時的に記憶された状態で、情報処理部３１は第１のゲームを実行する。そして、ユーザの操作にしたがって、ユーザが第１のゲームで成功したと判断されたときに、情報処理部３１は、メインメモリ３２に一時的に記憶された顔画像をセーブデータ記憶域Ｄｏに保存する。セーブデータ記憶域Ｄｏに保存された顔画像は、以降のゲーム処理等で利用可能となる。
【０１７２】
セーブデータ記憶域Ｄｏの構造に特に限定はない。例えば、セーブデータ記憶域Ｄｏは、通常のメモリと同一の物理アドレス空間におかれて、情報処理部３１からアクセスできるようにしてもよい。また、例えば、情報処理部３１が、必要なタイミングで所定のブロック単位、あるいはページ単位で確保（割付、アロケートなどともいう）可能としておいてもよい。また、例えば、セーブデータ記憶域Ｄｏは、コンピュータのファイルシステムと同様に、ブロックを接続するポイントのような管理情報で接続される構造としてもよい。
【０１７３】
さらに、セーブデータ記憶域Ｄｏは、例えば、ゲーム装置１０で実行されるプログラムごとに個別の領域が確保されるようにしてもよい。したがって、一のゲームプログラムがメインメモリ３２にローディングされたときに、情報処理部３１は、ゲームプログラムの管理情報などを基に、セーブデータ記憶域Ｄｏにアクセス（データを入出力）するようにしてもよい。
【０１７４】
さらにまた、一のプログラムのセーブデータ記憶域Ｄｏが、他のプログラムを実行中の情報処理部３１からアクセス可能としてもよい。このようにすることで、一のプログラムで処理したデータを他のプログラムに引き渡すことを可能としてもよい。例えば、後述する第１のゲームを実行された結果として、セーブデータ記憶域Ｄｏに保存された顔画像のデータを第２のゲームを実行中の情報処理部３１が読み出して、キャラクタオブジェクトを作成できるようにしてもよい。なお、セーブデータ記憶域Ｄｏは、第２記憶領域の一例である。
【０１７５】
＜各種データの構造＞
図１２および図１３を参照して、ゲーム装置１０内で、顔画像を管理するデータ構造の一例を説明する。
【０１７６】
図１２は、ゲーム装置１０に保存された顔画像を管理する顔画像管理情報Ｄｎ１のデータ構造の一例である。ゲーム装置１０は、保存した顔画像のデータを顔画像管理情報Ｄｎ１に記録することで、例えば、図７、図８のような形式で、顔画像の一覧を上側ＬＣＤ２２の画面などに表示できるようになる。顔画像管理情報Ｄｎ１は、例えば、顔画像ごとに１レコード用意される情報として作成される。顔画像管理情報Ｄｎ１は、例えば、データ保存用内部メモリ３５、データ保存用外部メモリ４６などに保存される。図１２で、レコード１により、レコードの要素を例示する。また、図１２では、レコード２以降の詳細は省略している。また、情報処理部３１は、例えば、図示しないが、顔画像管理情報Ｄｎ１の総レコード数、すなわち、取得した顔画像の総数をデータ保存用内部メモリ３５、データ保存用外部メモリ４６などに保存しておけばよい。
【０１７７】
図１２の例では、顔画像管理情報Ｄｎ１は、例えば、顔画像識別情報、顔画像データのアドレス、顔画像の取得先、性別の推定、年齢の推定、関連顔画像情報１−Ｎ等を有している。ただし、図１２は顔画像管理情報Ｄｎ１の一例であり、顔画像管理情報が図１２に例示された要素に限定される訳ではない。
【０１７８】
顔画像識別情報は、保存された顔画像をユニークに識別する情報である。顔画像識別情報は、例えば、通し番号でもよい。
【０１７９】
顔画像データのアドレスは、例えば、顔画像のデータが格納されるデータ保存用内部メモリ３５あるいはデータ保存用外部メモリ４６等のアドレスである。ただし、例えば、ＯＳ（オペレーティングシステム）によってファイルシステムが構築されている記憶媒体に顔画像データが格納される場合には、顔画像データのアドレスとして、ファイルシステム中のパス名、ファイル名などを設定するようにしてもよい。
【０１８０】
顔画像の取得元は、例えば、顔画像を取得した撮像装置を識別する情報である。顔画像の取得元としては、例えば、内側撮像部２４、外側左撮像部２３ａ、および外側右撮像部２３ｂを識別する情報が設定される。ただし、顔画像取得のために、外側左撮像部２３ａおよび外側右撮像部２３ｂの両方が使用された場合には、両方を示す情報が設定される。また、例えば、内側撮像部２４、外側左撮像部２３ａ、および外側右撮像部２３ｂ以外に、例えば、ゲーム装置１０外の他の撮像装置で顔画像が取得された場合には、その旨を示す情報（例えば「他」）が設定される。ゲーム装置１０外の他の撮像装置で顔画像が取得される場合とは、例えば、外部メモリインターフェイス３３、無線通信モジュール３６、ローカル通信モジュール３７等を通じて、ゲーム装置１０と同様の他のゲーム装置１０で撮像した画像を取得した場合などである。また、外部メモリインターフェイス３３、無線通信モジュール３６等を通じて、ゲーム装置１０以外のカメラで得られた画像、スキャナで得られた画像、ビデオ機器からの映像等の画像を取得した場合も含まれる。
【０１８１】
性別の推定は、顔画像が男性か女性かを示す情報である。性別の推定は、例えば、後述する他の実施形態に示す処理したがって実行すればよい。年齢推定は、顔画像の人の年齢を示す情報である。年齢の推定は、例えば、後述する他の実施形態に示す処理したがって実行すればよい。
【０１８２】
関連画像の識別情報１−Ｎは、それぞれ、当該顔画像と関連する他の顔画像を示す情報である。例えば、関連画像の識別情報１−Ｎは、最大Ｎ個の他の関連する顔画像の顔画像識別情報を設定すればよい。関連する他の顔画像は、例えば、ＧＵＩを通じたユーザ操作によって、指定されるようにしてもよい。例えば、新たに、顔画像が取得されたときに、取得された顔画像と関連する顔画像１以上をユーザが操作ボタン１４等によって選択対象とした上で、関連画像設定を指示するＧＵＩの操作を情報処理部３１が検出するようにすればよい。あるいは、単に、本人、友人、同僚、他人等、ゲーム装置１０が用意した分類によって、取得された顔画像を分類するようにしてもよい。そして、同一の分類に属する顔画像を関連画像の識別情報１−Ｎを用いてリンクするようにしてもよい。ただし、ゲーム装置１０が用意した分類で顔画像を分類する場合には、関連顔画像の識別情報１−Ｎのエントリを用意する代わりに、単に、「顔画像の分類」という要素を設け、本人、友人、同僚、他人等設定するようにしてもよい。また、図１２では、関連画像の識別情報１からＮとして、固定数で示したが、Ｎの数を可変数としてもよい。その場合には、設定済みの数Ｎを顔画像管理情報Ｄｎ１に保持するようにすればよい。さらに、例えば、関連する顔画像の間で、顔画像管理情報Ｄｎ１のレコードとレコードとをポインタのチェーンで接続するようにしてもよい。
【０１８３】
図１３に、顔画像属性集計表Ｄｎ２のデータ構造例を示す。顔画像属性集計表Ｄｎ２は、取得済みの顔画像を属性によって分類し、分類された画像数を集計した表である。以下、顔画像属性集計表Ｄｎ２を単に集計表ともいう。情報処理部３１は、例えば、データ保存用内部メモリ３５、データ保存用外部メモリ４６等に、図１３の集計表を保存している。図１３の例では、集計表は、性別（男性、女性）、年齢層（１０歳未満、１０代、２０代、３０代、４０代、５０代、６０代、７０以上）との組み合わせによって分類された各行に、顔画像取得数を記憶している。すなわち、図１３の表の各行は、性別、年齢、および顔画像取得数という要素を含む。顔画像取得数には、取得済みの顔画像が分類され、その取得数が集計されている。ただし、顔画像の分類、あるいは属性が、図１３に例示した性別、あるいは年齢層に限定されるわけではない。
【０１８４】
＜処理フローの例＞
図１４から図１９により、ゲーム装置１０の情報処理部３１で実行される画像処理プログラムによる動作例を説明する。まず、ゲーム装置１０の電源（電源ボタン１４Ｆ）がＯＮにされると、ＣＰＵ３１１によってブートプログラム（図示せず）が実行され、これにより内蔵メモリまたは外部メモリ４５やデータ保存用外部メモリ４６に格納されているプログラムがメインメモリ３２においてＣＰＵ３１１が実行可能な形式で展開される。ここで、ＣＰＵ３１１が実行可能な形式とは、例えば、ＣＰＵ３１１の機械命令が所定の処理順で記述され、メインメモリ３２の適切なアドレスに配置され、ＣＰＵ３１１の機械命令を処理する制御部から読み出し可能な形式をいう。実行可能な形式で展開することを単にロードするともいう。なお、図１４〜図１９においては、第１の実施形態に直接関連しない処理についての記載を省略する。
【０１８５】
図１４は、情報処理部３１による動作の一例を示すフローチャートである。情報処理部３１は、電源ＯＮの後の一連の処理の後、ユーザの操作、例えば、下側ＬＣＤ１２に表示されるグラフィカルユーザインターフェイス（以下、ＧＵＩ）、例えば、メニューあるいは、アイコンなどのグラフィックオブジェクトに対するタッチパネル１３あるいは操作ボタン１４を通じた操作を検出すると、図１４の処理を実行する。以下、ＧＵＩに対するタッチパネル１３あるいは操作ボタン１４を通じたユーザの操作を単に、「ＧＵＩに対する操作」という。図１４の例では、情報処理部３１は、ユーザの操作待ちとなる（ステップ８）。以下、図面中では、「ステップ」を「Ｓ」と略称する。
【０１８６】
次に、ユーザの操作を検出すると、情報処理部３１は、ステップ９以下の処理を実行する。例えば、ユーザのＧＵＩに対する操作が、「内側撮像部２４による顔画像の取得」の指示である場合（ステップ９でＹｅｓの場合）、情報処理部３１は、顔画像取得処理１を実行する（ステップ１０）。ここで、「内側撮像部２４による顔画像の取得」の指示とは、例えば、ＧＵＩ等を通じたユーザに操作によって内側撮像部２４を用いた取得の指示をいう。その後、情報処理部３１は、制御をステップ１９に進める。顔画像取得処理１については、図１５を参照して後述する。一方、ユーザのＧＵＩに対する操作が「内側撮像部２４による顔画像の取得」の指示でない場合（ステップ９でＮｏの場合）には、情報処理部３１は、制御をステップ１１に進める。
【０１８７】
次に、例えば、ユーザのＧＵＩに対する操作が、「外側撮像部２３による顔画像の取得」の指示である場合（ステップ１１でＹｅｓの場合）、情報処理部３１は、顔画像取得処理２を実行する（ステップ１２）。その後、情報処理部３１は、制御をステップ１９に進める。ここで、「外側撮像部２３による顔画像の取得」の指示とは、例えば、ＧＵＩ等を通じたユーザに操作によって外側撮像部２３を用いた取得の指示をいう。顔画像取得処理２については、図１６を参照して後述する。一方、ユーザのＧＵＩに対する操作が「外側撮像部２３による顔画像の取得」の指示でない場合（ステップ１１でＮｏの場合）には、情報処理部３１は、制御をステップ１３に進める。
【０１８８】
次に、ユーザのＧＵＩに対する操作が収集した顔画像の一覧表示の指示である場合（ステップ１３でＹｅｓの場合）、情報処理部３１は、一覧表示処理を実行する（ステップ１４）。その後、情報処理部３１は、制御をステップ１９に進める。一覧表示処理については、図１７を参照して後述する。一方、ユーザのＧＵＩに対する操作が収集した顔画像の一覧表示の指示でない場合（ステップ１３でＮｏの場合）には、情報処理部３１は、制御をステップ１５に進める。
【０１８９】
ユーザのＧＵＩに対する操作が配役の決定指示である場合（ステップ１５でＹｅｓの場合）、情報処理部３１は、配役決定処理を実行する（ステップ１６）。その後、情報処理部３１は、制御をステップ１９に進める。配役決定処理については、図１８を参照して後述する。一方、ユーザのＧＵＩに対する操作が配役の決定指示でない場合（ステップ１５でＮｏの場合）には、情報処理部３１は、制御をステップ１７に進める。
【０１９０】
ユーザの操作がゲームの実行指示である場合（ステップ１７でＹｅｓの場合）、情報処理部３１は、ゲームを実行する（ステップ１８）。ステップ１８の処理が第２のゲーム処理ステップの一例である。ゲーム装置１０は、ステップ１６の配役決定処理で作成された敵オブジェクトＥＯ等、様々なキャラクタオブジェクトが登場するゲーム処理を実行する。ゲームの種類に限定はない。例えば、ステップ１８で実行されるゲームは、ユーザが配役決定処理で作成された敵オブジェクトＥＯと戦闘を行うゲームでもよい。この場合に、例えば、ユーザは、ステップ１０の顔画像取得処理１、ステップ１２の顔画像取得処理２で収集され、ステップ１４の一覧表示処理で表示された顔画像の敵オブジェクトＥＯと戦闘をすることになる。また、例えば、このゲームは、ユーザを象徴するプレイヤオブジェクトが様々な関門、障害等を乗り越えて進む冒険ゲームでもよい。また、このゲームは、歴史上の登場人物が登場する戦争シミュレーション、プレイヤオブジェクトが登場する経営シミュレーション、プレイヤオブジェクトが登場する乗り物等の運転シミュレーション等のゲームでもよい。また、ゲームは、小説の原作をモデルにした、上記キャラクタオブジェクトが登場するノベルゲームでもよい。また、ゲームは、ユーザが物語に登場する主人公や登場人物を操作し、その役割を演じて遊ぶロールプレイングゲーム（ＲＰＧ）と呼ばれるものでもよい。また、ゲームは、単に、登場するエージェントによってユーザが支援を受けて何らかのトレーニングを行うものでもよい。
【０１９１】
このようなゲーム処理に登場するキャラクタオブジェクトには、ユーザがステップ１０の第１のゲームで成功することにより収集した顔画像が、テクスチャマッピング等の手法により貼り付けられている。したがって、ステップ１８で実行されるゲームでは、ユーザ自身が収集した顔画像を含むキャラクタオブジェクトが登場する。このため、様々なキャラクタオブジェクトについて、顔画像という、人、あるいは生物などを象徴する部分の画像を用いることにより、ユーザは、その顔画像の人（あるいは生物）との実世界の関係を反映したゲームを実行できる。例えば、愛情、好意、好感、逆に憎悪などの感情を込めたゲーム処理を実行できるのである。
【０１９２】
一方、ユーザの操作がゲームの実行指示でない場合（ステップ１７でＮｏの場合）には、情報処理部３１は、制御をステップ１９に進める。
【０１９３】
そして、情報処理部３１は、処理を終了するか否かを判定する。情報処理部３１は、ＧＵＩを通じて処理を終了する指示を検出すると、図１４の処理を終了する。一方、情報処理部３１は、ＧＵＩを通じて、終了しない指示（例えば、再実行指示）を検出すると、顔画像管理支援処理１を実行する（ステップ１Ａ）。顔画像管理支援処理１は、例えば、すでに取得済みの顔画像を基に、次に取得する顔画像の属性等に関して、ユーザに情報を提供し、ユーザの顔画像取得を支援する処理である。顔画像管理支援処理１については、図１９Ａにより、詳細処理例を後述する。その後、情報処理部３１は、制御をステップ８に戻す。
【０１９４】
図１５は、顔画像取得処理１（図１４のステップ１０）の詳細処理の一例を示すフローチャートである。この処理では、情報処理部３１は、まず、顔画像管理支援処理２を実行する（ステップ１００）。顔画像管理支援処理２は、例えば、すでに取得済みの顔画像を基に、次に取得する顔画像の属性等に関して、ユーザに情報を提供し、ユーザの顔画像取得を支援する処理である。顔画像管理支援処理２の詳細処理例については、図１９Ｂにより後述する。
【０１９５】
次に、情報処理部３１は、顔画像取得処理を実行する（ステップ１０１）。情報処理部３１のＣＰＵ３１１は、画像取得手段の一例として、ステップ１０１の処理を実行する。
【０１９６】
情報処理部３１は、例えば、内側撮像部２４、外側左撮像部２３ａ、および／または外側右撮像部２３ｂを通じて撮像される画像を所定の周期で取り込み、上側ＬＣＤ２２に表示する。この場合の表示周期は、ゲーム装置１０における処理の単位時間（例えば、１／６０秒）と同じでもいいし、当該単位時間より短い時間でもかまわない。ゲーム装置１０の電源がオンとなり画像処理プログラムがロードされた直後、あるいは、図１４の処理起動直後の初期状態では、情報処理部３１は、例えば、内側撮像部２４からの画像を上側ＬＣＤ２２に表示する。なお、下側ＬＣＤ１２には、例えば、内側撮像部２４、外側左撮像部２３ａ、および外側右撮像部２３ｂの少なくとも１つ（外側左撮像部２３ａ、外側右撮像部２３ｂの両方を使用する場合も含む）を選択するための撮像部選択ＧＵＩが用意されている。図１５の処理では、ユーザは、撮像部選択ＧＵＩにより自在に使用する撮像部を切り替えることができるものする。以下、初期状態または撮像部選択ＧＵＩへの操作によって、撮像に使用されている内側撮像部２４、外側左撮像部２３ａ、および／または外側右撮像部２３ｂを単に撮像部ということにする。
【０１９７】
例えば、内側撮像部２４が使用されている場合には、ユーザが上側ハウジング２１を開いた状態で、上側ハウジング２１の内側面２１Ｂに顔を向けると、上側ＬＣＤ２２には、ユーザの顔が写し出される。そして、ユーザが、例えば、Ｒボタン１４Ｈ（またはＬボタン１４Ｇ）を押下すると、情報処理部３１は、上側ＬＣＤ２２に写し出された内側撮像部２４からの画像をデータとして取得し、メインメモリ３２に一時的に記憶する。この時点では、この画像のデータはメインメモリ３２上に存在するのみであり、後述するセーブデータ記憶域Ｄｏに保存されていない。このメインメモリ３２上のデータは、後述のステップ１０６によるゲームで利用されるのみであり、後述するように、ゲームが成功せずに終了した場合には廃棄される。メインメモリ３２が第１データ記憶域の一例である。
【０１９８】
なお、本実施形態の処理では、ステップ１０１で取得した顔画像を敵オブジェクトＥＯの顔面部分等にテクスチャマッピングし、ゲームを実行する。そのため、ステップ１０１の処理では、撮像部から取得した画像のうち、特に、顔部分を切り出して顔画像を取得することが望ましい。本実施形態では、例えば、以下の処理が実行されるものとする。（１）情報処理部３１は、取得された画像中から顔の輪郭を検出する。顔の輪郭は、目の間隔と、目と口の位置関係とから推定する。すなわち、情報処理部３１は、目と口の配置から、標準的な顔の寸法を用いて、顔の輪郭と、背景との境界線を認識する。境界線は、例えば、微分処理（輪郭強調）、平均処理（平滑化演算）等の通常の画像処理を組み合わせることで取得できる。なお、顔の輪郭検出の方法は周知の他の方法で行ってもかまわない。（２）情報処理部３１は、得られた顔画像を拡大または縮小することによって、敵オブジェクトＥＯの頭部形状の顔面部の寸法に合わせ込む。この処理によれば、ある程度、寸法にばらつきがある顔画像についても、ゲーム装置１０で取得し、敵オブジェクトＥＯに貼り付けることを可能にする。
【０１９９】
ただし、本実施形態のゲーム装置１０において、顔画像を取得する処理が上記手順に限定される訳ではない。例えば、顔画像を取得する際に、任意距離から、任意の寸法で、画像を取得する代わりに、目標とする寸法の顔画像を撮像部から取得するようにしてもよい。例えば、被写体から得られる顔画像の目と目の距離が、所定画素数の近傍となるように、被写体と距離を確立した上で、取得するようにしてもよい。例えば、情報処理部３１が、被写体との距離を誘導すればよい。また、被写体と距離を確立した上で、情報処理部３１が、例えば、撮像部の視軸方向に対する被写体の顔の角度を調整するように被写体となる人、あるいは撮像者であるユーザを誘導してもよい。さらに、ユーザが、例えば、Ｒボタン１４Ｈ（またはＬボタン１４Ｇ）を押下することによって画像を保存する代わりに、被写体との距離および撮像部の視軸方向に対する顔の角度の調整が完了したと判断できたときに、情報処理部３１が、画像を保存するようにしてもよい。例えば、情報処理部３１が、上側ＬＣＤ２２に、被写体の顔画像と重畳して、目の位置と、口の位置合わせの目標位置を示すマークを表示してもよい。そして、撮像部から取得した被写体の両目および口の位置が、両目および口に対応する目標位置のマークから所定の許容差の範囲に収まったときに、情報処理部３１が、画像をメモリに保存するようにしてもよい。
【０２００】
なお、情報処理部３１は、ステップ１０１での顔画像の取得するとき、図１３の顔画像属性集計表Ｄｎ２の該当する行の顔画像取得数を更新する。該当する行とは、例えば、後述する図１９Ｂのステップ１００２で推定された性別、年齢に相当する属性の行をいう。
【０２０１】
次に、情報処理部３１は、ステップ１０１の処理によって取得された画像を、例えば、上側ＬＣＤ２２に表示する（ステップ１０２）。
【０２０２】
次に、情報処理部３１は、敵オブジェクトＥＯの選択処理を実行する（ステップ１０３）。ここでは、情報処理部３１は、ユーザに敵オブジェクトＥＯの頭部形状の選択を促す。例えば、図９に示したような頭部形状の一覧を表示し、ＧＵＩを通じて、ユーザの選択を受け付けるようにすればよい。そして、情報処理部３１は、取得された顔画像を敵オブジェクトＥＯのテクスチャに設定し（ステップ１０４）、敵オブジェクトＥＯを生成する（ステップ１０５）。ステップ１０５で生成される敵オブジェクトが第１キャラクタオブジェクトの一例である。情報処理部３１は、キャラクタオブジェクトを作成する手段の一例として、ステップ１０５の処理を実行する。
【０２０３】
そして、情報処理部３１は、生成された敵オブジェクトＥＯを用いたゲームを実行する（ステップ１０６）。情報処理部３１のＣＰＵ３１１は、第１のゲーム処理手段の一例として、ステップ１０６の処理を実行する。ここで、ゲームの種類は問わない。ゲームは、例えば、敵オブジェクトＥＯとの戦いを模擬するゲームである。また、ゲームは、例えば、敵オブジェクトＥＯと得点の多寡を競うゲームであってもよい。そして、ゲームの実行後、情報処理部３１は、ユーザがゲームにおいて成功したか否かを判定する（ステップ１０７）。情報処理部３１は、成功または不成功を判定する手段の一例として、ステップ１０７の処理を実行する。成功とは、例えば、ユーザが、敵オブジェクトＥＯと戦うゲームにおいて、敵オブジェクトＥＯに勝利した場合である。また、成功とは、例えば、敵オブジェクトＥＯと得点の多寡を競うゲームにおいて、ユーザが敵オブジェクトＥＯよりも多い得点を得た場合である。また、成功とは、例えば、敵オブジェクトＥＯが設定した障害等をユーザが克服していくゲームで、ユーザがゴールにたどり着いた場合であってもよい。
【０２０４】
なお、ステップ１０６のゲームには、ステップ１０１で取得した顔画像を含むキャラクタオブジェクトの他、過去にすでに収集済みの顔画像を用いたキャラクタオブジェクトを登場させるようにしてもよい。例えば、過去にすでに収集済みの顔画像が、敵オブジェクトＥＯあるいは味方のオブジェクトに貼り付けられて登場することで、ユーザは、実世界の人間関係等を反映したゲームを行うことができる。
【０２０５】
ユーザがゲームで成功した場合には、情報処理部３１は、前述のステップ１０１で取得したメインメモリ３２上の顔画像のデータを当該ゲームのセーブデータ記憶域Ｄｏにこれまでに保存された顔画像データに加えて保存する（ステップ１０９）。情報処理部３１のＣＰＵ３１１は、保存する手段の一例として、ステップ１０９の処理を実行する。当該ゲームのセーブデータ記憶域Ｄｏは、当該ゲームを実行する情報処理部３１が書き込みおよび読み出し可能な、例えば、メインメモリ３２、データ保存用内部メモリ３５、データ保存用外部メモリ４６等に構築される記憶領域である。新たな顔画像のデータが当該ゲームのセーブデータ記憶域Ｄｏに格納されることにより、当該ゲームを実行する情報処理部３１は、上側ＬＣＤ２２の画面に、例えば、図７、図８で説明した顔画像の一覧に追加して、新たな顔画像のデータを表示できるようになる。このように、図１５の処理によれば、ユーザは、ステップ１０１で取得した顔画像をゲームのセーブデータ記憶域Ｄｏに保存するために、ゲーム（第１のゲーム）を実行する。そのゲームには、例えば、ユーザが現在までにセーブデータ記憶域Ｄｏにこれまでに保存された顔画像を用いたキャラクタオブジェクトを登場させることで、ゲーム装置１０でゲームを実行するユーザは、実世界の人間関係等を反映しつつ、新たな顔画像を収集し、セーブデータ記憶域Ｄｏに追加できるのである。
【０２０６】
このとき、情報処理部３１は、新たに、当該ゲームのセーブデータ記憶域Ｄｏに保存された顔画像を管理するため、図１２で説明した顔画像管理情報Ｄｎ１を生成し、データ保存用内部メモリ３５あるいはデータ保存用外部メモリ４６に保存する。すなわち、情報処理部３１は、新たに顔画像識別情報を生成し、顔画像管理情報Ｄｎ１のレコードに設定する。また、新たに、当該ゲームのセーブデータ記憶域Ｄｏに保存された顔画像のアドレス等を顔画像データのアドレスに設定する。さらに、顔画像の取得元、性別の推定、年齢の推定、関連する顔画像の識別情報１−Ｎなどを設定する。
【０２０７】
さらに、情報処理部３１は、セーブデータ記憶域Ｄｏに追加した顔画像の属性を推定し、図１３で説明した顔画像属性集計表Ｄｎ２の集計結果を更新するようにしてもよい。すなわち、情報処理部３１は、新たに、セーブデータ記憶域Ｄｏに追加した顔画像の性別、年齢等を推定し、顔画像属性集計表Ｄｎ２の集計結果に反映するようにしてもよい。
【０２０８】
さらに、情報処理部３１は、例えば、当該ゲームのセーブデータ記憶域Ｄｏに格納されたデータの複製、変更、無線通信モジュール３６を通じたデータの転送等をユーザに許容するようにしてもよい。そして、情報処理部３１は、ユーザのＧＵＩを通じた操作または操作ボタン１４を通じた操作にしたがって、セーブデータ記憶域Ｄｏに格納された顔画像の保存、複製、変更、転送等を実行すればよい。
【０２０９】
一方、ユーザがゲームで成功しなかった場合には、情報処理部３１は、ゲームを再試行するか否かをユーザに問い合わせる（ステップ１０８）。例えば、上側ＬＣＤ２２に、再試行するか否かの問い合わせのメッセージを表示し、下側ＬＣＤ１２上のＧＵＩ（肯定、否定のアイコン、メニュー等）へのタッチパネル１３を通じた操作、あるいは操作ボタン１４等による操作により、ユーザの選択を受け付ける。ユーザが再試行を指示した場合には、情報処理部３１は、制御をステップ１０６に戻す。一方、ユーザが再試行を指示しなかった場合には、情報処理部３１は、ステップ１０１で取得された顔画像を廃棄し（ステップ１１０）、処理を終了する。なお、ゲームに成功しなかった場合に、情報処理部３１は、ステップ１０８での再試行の指示を待たずにステップ１０１で取得した顔画像を廃棄するようにしてもよい。
【０２１０】
以下、図１６を参照して、顔画像取得処理２（図１４のステップ１２）の詳細処理例について説明する。この処理では、顔画像取得処理において、２つの外側撮像部２３（外側左撮像部２３ａおよび外側右撮像部２３ｂ）よりも先に内側撮像部２４による顔画像取得をするように、ユーザを誘導する処理例を説明する。ゲーム装置１０がユーザに内側撮像部２４による顔画像取得を先に実行させるのは、内側撮像部２４による顔画像取得によって、例えば、ゲーム装置１０の持ち主等を明確化し、ゲーム装置１０の他人による使用を制限できる可能性を高めるためである。
【０２１１】
図１６により、ゲーム装置１０の情報処理部３１で実行される画像処理プログラムによる動作例を説明する。この処理では、情報処理部３１は、まず、内側撮像部２４による顔画像取得が済みか否かを判定する（ステップ１２１）。内側撮像部２４による顔画像取得済みか否かは、例えば、図１２に示した顔画像管理情報Ｄｎ１により、顔画像の取得先として、内側撮像部２４が設定されているレコードがあるか否かによって判定すればよい。また、例えば、ゲーム装置１０に、内側撮像部２４によるゲーム装置１０の持ち主の顔画像をゲーム装置１０に登録する機能が設けられている場合には、持ち主の顔画像が登録済みか否かで判定してもよい。
【０２１２】
内側撮像部２４による顔画像が取得済みでない場合（ステップ１２１でＮｏの場合）には、情報処理部３１は、ユーザに対して内側撮像部２４による顔画像取得処理を先に実行するように促し（ステップ１２４）、当該サブルーチンによる処理を終了する。より具体的には、例えば、「ゲーム装置１０では内側撮像部２４による顔画像が取得済みでないと外側撮像部２３による顔画像取得処理が実行できない」旨のメッセージを上側ＬＣＤ２２に表示する。あるいは、情報処理部３１は、持ち主の顔画像をまず登録することをユーザに要求するようにしてもよい。
【０２１３】
一方、内側撮像部２４による顔画像取得済みの場合（ステップ１２１でＹｅｓの場合）には、情報処理部３１は、顔画像管理支援処理３を実行する（ステップ１２２）。顔画像管理支援処理３については、図１９Ｃを参照して後述する。そして、情報処理部３１は、外側撮像部２３による顔画像取得処理を実行する（ステップ１２３）。例えば、外側撮像部２３が使用されている場合には、上側ハウジング２１を開いた状態で、ユーザが上側ハウジング２１の外側面２１Ｄを他の人物の顔に向けると、上側ＬＣＤ２２には当該他の人物の顔が写し出される。そして、ユーザが、例えば、Ｒボタン１４Ｈ（またはＬボタン１４Ｇ）を押下すると、情報処理部３１は、上側ＬＣＤ２２に写し出された外側撮像部２３からの画像をデータとして取得し、メインメモリ３２に一時的に記憶する。この時点では、この画像のデータはメインメモリ３２上に存在するのみであり、セーブデータ記憶域Ｄｏに保存されていない。このメインメモリ３２上のデータは、後述のステップ１２９によるゲームで利用されるのみであり、後述するように、ゲームが成功せずに終了した場合には廃棄される。
【０２１４】
なお、本実施形態の処理では、ステップ１２３で取得した顔画像も敵オブジェクトＥＯの顔面部分等にテクスチャマッピングし、ゲームを実行することが可能である。そのため、ステップ１２３の処理では、上記ステップ１０１と同様の処理によって、撮像部から取得した画像のうち、特に、顔部分を切り出して顔画像を取得することが望ましい。また、情報処理部３１は、ステップ１２３での顔画像の取得においても、図１３の顔画像属性集計表Ｄｎ２の該当する行の顔画像取得数を更新する。該当する行とは、例えば、後述する図１９Ｃのステップ１２０２で推定された性別、年齢に相当する属性の行をいう。
【０２１５】
次に、情報処理部３１は、ステップ１２３の処理によって取得された画像を、例えば、上側ＬＣＤ２２に表示する（ステップ１２５）。
【０２１６】
次に、情報処理部３１は、敵オブジェクトＥＯの選択処理を実行する（ステップ１２６）。ここでは、情報処理部３１は、ユーザに敵オブジェクトＥＯの頭部形状の選択を促す。例えば、図９に示したような頭部形状の一覧を表示し、ＧＵＩを通じて、ユーザの選択を受け付けるようにすればよい。そして、情報処理部３１は、取得された顔画像を敵オブジェクトＥＯのテクスチャに設定し（ステップ１２７）、敵オブジェクトＥＯを生成する（ステップ１２８）。ステップ１２８で生成される敵オブジェクトも第１キャラクタオブジェクトの一例である。情報処理部３１は、キャラクタオブジェクトを作成する手段の一例として、ステップ１２８の処理を実行する。
【０２１７】
そして、情報処理部３１は、生成された敵オブジェクトＥＯを用いたゲームを実行する（ステップ１２９）。情報処理部３１のＣＰＵ３１１は、第１のゲーム処理手段の一例として、ステップ１２９の処理を実行する。上記ステップ１２９で行われるゲームは、上記ステップ１０６と同様である。すなわち、上記ステップ１２９で行われるゲームの種類は様々であり、例えば、敵オブジェクトＥＯとの戦いを模擬するゲームや、敵オブジェクトＥＯと得点の多寡を競うゲームが考えられる。そして、ゲームの実行後、情報処理部３１は、ユーザがゲームにおいて成功したか否かを判定する（ステップ１３０）。情報処理部３１は、成功または不成功を判定する手段の一例として、ステップ１３０の処理を実行する。成功とは、例えば、ユーザが、敵オブジェクトＥＯと戦うゲームにおいて、敵オブジェクトＥＯに勝利した場合である。また、成功とは、例えば、敵オブジェクトＥＯと得点の多寡を競うゲームにおいて、ユーザが敵オブジェクトＥＯよりも多い得点を得た場合である。また、成功とは、例えば、敵オブジェクトＥＯが設定した障害等をユーザが克服していくゲームで、ユーザがゴールにたどり着いた場合であってもよい。
【０２１８】
なお、ステップ１２９で実行するゲームには、ステップ１２３で取得した顔画像を含むキャラクタオブジェクトの他、過去にすでに収集済みの顔画像を用いたキャラクタオブジェクトを登場させるようにしてもよい。例えば、過去にすでに収集済みの顔画像が、敵オブジェクトＥＯあるいは味方のオブジェクトに貼り付けられて登場することで、ユーザは、実世界の人間関係等を反映したゲームを行うことができる。
【０２１９】
ユーザがゲームで成功した場合には、情報処理部３１は、前述のステップ１２３で取得したメインメモリ３２上の顔画像のデータを当該ゲームのセーブデータ記憶域Ｄｏにこれまでに保存された顔画像データに加えて保存し（ステップ１３２）、当該サブルーチンによる処理を終了する。情報処理部３１のＣＰＵ３１１は、保存する手段の一例として、ステップ１３２の処理を実行する。新たな顔画像のデータが当該ゲームのセーブデータ記憶域Ｄｏに格納されることにより、当該ゲームを実行する情報処理部３１は、上側ＬＣＤ２２の画面に、例えば、図７および図８で説明した顔画像の一覧に追加して、新たな顔画像のデータを表示できるようになる。このように、図１６の処理によれば、ユーザは、ステップ１２３で取得した顔画像をゲームのセーブデータ記憶域Ｄｏに保存するために、ゲーム（第１のゲーム）を実行する。そのゲームには、例えば、ユーザが現在までにセーブデータ記憶域Ｄｏにこれまでに保存された顔画像を用いたキャラクタオブジェクトを登場させることで、ゲーム装置１０でゲームを実行するユーザは、実世界の人間関係等を反映しつつ、新たな顔画像を収集し、セーブデータ記憶域Ｄｏに追加できるのである。
【０２２０】
このとき、情報処理部３１は、上記ステップ１０における顔画像取得処理１と同様に、新たに、当該ゲームのセーブデータ記憶域Ｄｏに保存された顔画像を管理するため、図１２で説明した顔画像管理情報Ｄｎ１を生成し、データ保存用内部メモリ３５あるいはデータ保存用外部メモリ４６に保存する。すなわち、情報処理部３１は、新たに顔画像識別情報を生成し、顔画像管理情報Ｄｎ１のレコードに設定する。また、新たに、当該ゲームのセーブデータ記憶域Ｄｏに保存された顔画像のアドレス等を顔画像データのアドレスに設定する。さらに、顔画像の取得元、性別の推定、年齢の推定、関連する顔画像の識別情報１−Ｎなどを設定する。さらに、情報処理部３１は、セーブデータ記憶域Ｄｏに追加した顔画像の属性を推定し、図１３で説明した顔画像属性集計表Ｄｎ２の集計結果を更新するようにしてもよい。すなわち、情報処理部３１は、新たに、セーブデータ記憶域Ｄｏに追加した顔画像の性別、年齢等を推定し、顔画像属性集計表Ｄｎ２の集計結果に反映するようにしてもよい。さらに、情報処理部３１は、例えば、当該ゲームのセーブデータ記憶域Ｄｏに格納されたデータの複製、変更、無線通信モジュール３６を通じたデータの転送等をユーザに許容するようにしてもよい。そして、情報処理部３１は、ユーザのＧＵＩを通じた操作または操作ボタン１４を通じた操作にしたがって、セーブデータ記憶域Ｄｏに格納された顔画像の保存、複製、変更、転送等を実行すればよい。
【０２２１】
一方、ユーザがゲームで成功しなかった場合には、情報処理部３１は、ゲームを再試行するか否かをユーザに問い合わせる（ステップ１３１）。例えば、上側ＬＣＤ２２に、再試行するか否かの問い合わせのメッセージを表示し、下側ＬＣＤ１２上のＧＵＩ（肯定、否定のアイコン、メニュー等）へのタッチパネル１３を通じた操作、あるいは操作ボタン１４等による操作により、ユーザの選択を受け付ける。ユーザが再試行を指示した場合には、情報処理部３１は、制御をステップ１２９に戻す。一方、ユーザが再試行を指示しなかった場合には、情報処理部３１は、ステップ１２３で取得された顔画像を廃棄し（ステップ１３３）、当該サブルーチンによる処理を終了する。なお、ゲームに成功しなかった場合に、情報処理部３１は、ステップ１３１での再試行の指示を待たずにステップ１２３で取得した顔画像を廃棄するようにしてもよい。
【０２２２】
図１７は、一覧表示処理（図１４のステップ１４）の詳細処理の一例を示すフローチャートである。この処理では、情報処理部３１は、まず、登録済みの顔画像をデータ保存用内部メモリ３５またはデータ保存用外部メモリ４６のセーブデータ記憶域Ｄｏから読み出し、上側ＬＣＤ２２に表示する（ステップ１４０）。より具体的には、情報処理部３１は、セーブデータ記憶域Ｄｏに保存された顔画像管理情報Ｄｎ１から、それぞれの顔画像データのアドレスを取得する。そして、データ保存用内部メモリ３５内またはデータ保存用外部メモリ４６等のアドレスから、顔画像を読み出し、上側ＬＣＤ２２に表示すればよい。
【０２２３】
次に、情報処理部３１は、ユーザの操作待ちとなる（ステップ１４１）。そして、ユーザの操作によって、顔画像が選択状態にあるか否かを判定する（ステップ１４２）。顔画像が選択状態にあるか否かは、図７および図８に示したように、上側ＬＣＤ２２に顔画像の一覧が表示されているときに、ユーザが操作ボタン１４等を押下した後の操作状態、あるいはＧＵＩを通じた操作状態等で判断される。なお、選択状態にある顔画像は、図７および図８に示したように、例えば、太線Ｌ１や太線Ｌ２等で囲まれて表示される。
【０２２４】
そして、いずれかの顔画像が選択状態にある場合に、情報処理部３１は、顔画像管理情報Ｄｎ１（図１２参照）を用いて、選択状態にある顔画像と関連する顔画像を検索する（ステップ１４３）。
【０２２５】
そして、情報処理部３１は、検索された顔画像の視線を選択状態にある顔画像に向ける等、検索された顔画像が反応する処理を実行する（ステップ１４４）。検索された顔画像が反応する処理は、例えば、以下の手順で実行できる。例えば、事前に、目の向きを図８の他の顔画像に向ける複数の目のパターン、顔の向きを図８の他の顔画像に向ける複数の顔のパターン等を用意しておく。そして、検索された顔画像の位置と、選択状態にある顔画像の位置との関係から、該当する目の向き、顔の向きのパターンを選択する。そして、すでに表示中の顔画像の目の向き、顔の向きのパターン等に代えて、該当する顔画像の目の向き、顔の向きのパターン等を表示すればよい。すなわち、検索された顔画像の位置と、選択状態にある顔画像の位置との関係から決定される目の部分の画像を元の顔画像の目の部分と入れ替えればよい。また、顔の向きを変える場合には、顔画像全体を入れ替えて表示してもよい。また、例えば、目の向きについて、予め、所定の角度、例えば、１５度単位で、３６０度方向に向きを変えるパターンを用意しておいてもよい。そして、選択状態にある顔画像と検索された顔画像のとの位置関係から、角度を決定し、決定した角度に最も近い角度の目のパターンを選択するようにしてもよい。
【０２２６】
さらに、顔の向きについては、画面の法線方向に向く場合を０度して、左右方向に、例えば、３０度、６０度、９０度等の角度で向きを変えた顔画像のパターンを用意する。また、上下方向に、例えば、３０度程度向きを変えたパターンを用意する。さらに、左右方向で９０度の角度で向きを変えた顔画像に対して、さらに、上下方向、つまり斜め上（例えば、１５度上、３０度上、４５度上等）、斜め下（例えば、１５度下、３０度下、４５度下方向等）に、向きを変えたパターン等を用意しておけばよい。そして、選択状態にある顔画像と検索された顔画像のとの位置関係から、角度を決定し、該当する角度に最も近い顔の角度を選択するようにすればよい。さらに、親密さを強調するため、３次元モデルのアニメーションによって片目をつぶる等の表情を表示すればよい。また、ハートマーク等を用意しておき、選択状態にある顔画像に関連する顔画像の近傍に表示するようにしてもよい。
【０２２７】
ステップ１４２の判定で、顔画像が選択状態にない場合には、情報処理部３１は、その他の処理を実行する（ステップ１４５）。その他の処理とは、例えば、下側ＬＣＤ１２上の他のＧＵＩに対する操作、顔画像の選択に用いる操作ボタン１４（ボタン１４ａ、１４ｂ、１４ｃ等）以外の操作ボタン１４に対する処理などである。その後、情報処理部３１は、処理を終了するか否かを判定する（ステップ１４６）。例えば、情報処理部３１は、図８の画面が表示されているときに、ボタン１４ｃ（Ｂボタン）の押下を検知すると、「戻る」の指示がなされたと判断し、図１７の処理を終了する。処理を終了しない場合には、情報処理部３１は、制御をステップ１４０に戻す。
【０２２８】
図１８は、配役決定処理（図１４のステップ１６）の詳細処理の一例を示すフローチャートである。この処理では、情報処理部３１は、まず、敵オブジェクトＥＯの頭部形状の一覧を表示する（ステップ１６０）。なお、ここでは、敵オブジェクトＥＯを例に説明するが、敵オブジェクトＥＯ以外の他のキャラクタオブジェクトを生成する場合も、処理は、以下と同様である。情報処理部３１は、予め、例えば、ゲーム装置１０の出荷前、画像処理プログラムのインストール時、あるいは、バージョンアップ時に、敵オブジェクトＥＯの頭部形状をデータ保存用内部メモリ３５に格納する。情報処理部３１は、現在、データ保存用内部メモリ３５に格納されている敵オブジェクトＥＯの頭部形状を読み出し、図９に例示するような配置で表示する。
【０２２９】
次に、情報処理部３１は、ユーザのＧＵＩまたは操作ボタン１４等による選択操作を検出し、敵オブジェクトＥＯの頭部形状の選択を受け付ける（ステップ１６１）。敵オブジェクトＥＯの頭部形状の選択が終了すると、次に、情報処理部３１は、顔画像一覧を表示する（ステップ１６２）。そして、情報処理部３１は、ユーザのＧＵＩまたは操作ボタン１４等による選択操作を検出し、顔画像の選択を受け付ける（ステップ１６３）。なお、図１８の処理例では、ステップ１６３において、選択操作を検出することで、情報処理部３１は、顔画像を決定する。しかし、このような処理に代えて、情報処理部３１が自動的に顔画像を決定するようにしてもよい。例えば、情報処理部３１がセーブデータ記憶域Ｄｏに蓄積された顔画像から、ランダムに顔画像を選択してもよい。また、情報処理部３１が、ゲーム装置１０でのユーザのゲームの履歴をメインメモリ３２、外部メモリ４５，データ保存用外部メモリ４６，データ保存用内部メモリ３５等に保存しておき、そのユーザの履歴から推定されるユーザの特性、指向等にしたがって、顔画像を選択してもよい。例えば、過去にユーザが顔画像を選択した頻度比率にしたがって、次に選択すべき顔画像を決定してもよい。
【０２３０】
そして、情報処理部３１は、選択された顔画像を敵オブジェクトＥＯのテクスチャに設定する（ステップ１６４）。そして、選択された顔画像を敵オブジェクトＥＯの顔面部分にテクスチャマッピングすることにより、敵オブジェクトＥＯを生成する（ステップ１６５）。ステップ１６５で生成される敵オブジェクトが第２キャラクタオブジェクトの一例である。そして、情報処理部３１は、生成した敵オブジェクトＥＯを上側ＬＣＤ２２の画面に、例えば、図１０の敵オブジェクトＥＯのような態様で表示する。
【０２３１】
さらに、情報処理部３１は、関連する顔画像が反応する処理を実行する（ステップ１６６）。この処理は、図１７のステップ１４３およびステップ１４４の処理と同様である。さらに、情報処理部３１は、生成した敵オブジェクトＥＯを確定するか否かをユーザのＧＵＩに対する操作にしたがって判定する（ステップ１６７）。そして、敵オブジェクトＥＯを確定しない場合、情報処理部３１は、制御をステップ１６２に戻し、顔画像の選択を受け付ける。ただし、敵オブジェクトＥＯを確定しない場合、情報処理部３１は、制御をステップ１６０に戻し、敵オブジェクトＥＯの頭部形状の選択を受け付けるようにしてもよい。一方、敵オブジェクトＥＯを確定する場合、情報処理部３１は、処理を終了する。情報処理部３１は、この確定した敵オブジェクトＥＯを用いて、図１４のステップ１８のゲーム処理を実行する。ただし、図１８には明示されていないが、敵オブジェクトＥＯを確定しないで、図１８の処理を終了するように、ＧＵＩのメニュー等を用意するようにしてもよい。
【０２３２】
図１９Ａは、顔画像管理支援処理１（図１４のステップ１Ａ）の詳細処理例を示すフローチャートである。この処理では、情報処理部３１は、顔画像属性集計表Ｄｎ２から取得済みの顔画像の属性を読み出す（ステップ１Ａ１）。そして、情報処理部３１は、読み出した顔画像属性集計表Ｄｎ２から、未取得の属性または顔画像取得数の少ない属性を検索する。未取得の属性とは、例えば、図１３に例示した表で、顔画像取得数が０の属性をいう。また、顔画像取得数の少ない属性とは、例えば、図１３に例示した表中の顔画像取得数をソーティングキーとして、ソーティングしたときに、顔画像取得数が下位から所定の順位に含まれる属性をいう。
【０２３３】
次に、情報処理部３１は、ユーザに対して、未取得の属性に該当する顔画像の取得を促す処理を実行する（ステップ１Ａ２）。例えば、情報処理部３１は、図１３に例示した表から、属性「男性」、属性「１０歳代」、および用語「画像取得数０」を組み合わせたメッセージを下側ＬＣＤ１２または上側ＬＣＤ２２に表示すればよい。また、例えば、情報処理部３１は、属性「男性」、属性「１０歳代」および用語「画像取得数が少ない」を組み合わせたメッセージを表示してもよい。ただし、表示する属性の組み合わせ（図１３の表の行）の数は、１件に限られず、２件以上を表示してもよい。そして、例えば、ユーザによる操作ボタン１４Ｂ（Ａボタン）の押下を検知したときに、情報処理部３１は、図１９Ａの処理を終了すればよい。すると、その後、情報処理部３１は、図１４のステップ８に制御を戻す。
【０２３４】
なお、ここでは、図１９Ａに示した顔画像管理支援処理１を図１４の終了判定時（ステップ１Ａ）の詳細処理例として説明した。しかし、顔画像管理支援処理１は、ゲーム実行後、終了判定時（ステップ１Ａ）のタイミングでの実行に限定されるわけではない。例えば、情報処理部３１は、一覧表示処理（ステップ１４）、配役決定処理（ステップ１６）、ゲーム実行（ステップ１８）等の処理中に、ユーザに顔画像の取得を促すために、顔画像管理支援処理１を実行してもよい。
【０２３５】
図１９Ｂは、顔画像管理支援処理２（図１５のステップ１００）の詳細処理例を示すフローチャートである。この処理では、情報処理部３１は、まず、取得画像数を参照し、取得画像の有無を判定する（ステップ１０００）。情報処理部３１は、取得画像数を、例えば、顔画像管理情報Ｄｎ１のレコード数として、メインメモリ３２、外部メモリ４５、データ保存用外部メモリ４６、データ保存用内部メモリ３５等に記憶しておけばよい。
【０２３６】
そして、取得画像がない場合（ステップ１０００の判定でＮｏの場合）、情報処理部３１は、処理を終了する。一方、取得画像がある場合（ステップ１０００の判定でＹｅｓの場合）、情報処理部３１は、制御をステップ１００１に進める。そして、情報処理部３１は、顔画像の取得要求を受け付ける（ステップ１００１）。情報処理部３１は、例えば、内側撮像部２４あるいは、外側撮像部２３を通じて、上側ＬＣＤ２２に顔画像が写し出されている状態で、Ｌボタン１４ＧまたはＲボタン１４Ｈによる取得指示を受け付けた場合に、顔画像の取得要求を認識する。
【０２３７】
すると、情報処理部３１は、内側撮像部２４あるいは、外側撮像部２３を通じて取得され、上側ＬＣＤ２２に顔画像が写し出されている顔画像の属性、例えば、性別と年齢を推定する（ステップ１００２）。例えば、性別は、顔画像に含まれる頬骨、顎骨を含む骨格の大きさ、顔の寸法から推定できる。すなわち、情報処理部３１は、目と目の距離、および目と口の距離に対する、顔の輪郭の相対寸法（例えば、顔の幅、目と顎の距離等）を算出する。そして、相対寸法が統計的に得られている男性平均値に近い場合に、顔画像が男性であると判定すればよい。また、例えば、相対寸法が統計的に得られている男性平均値に近い場合に、顔画像が男性であると判定すればよい。
【０２３８】
また、情報処理部３１は、性別ごとに、年齢層（例えば、１０歳未満、１０代、２０代、３０代、４０代、５０代、６０代、７０以上等）ごとに、顔のパーツの平均の位置、および、顔の部分におけるしわの本数等の特徴情報を事前に記憶しておけばよい。そして、情報処理部は、例えば、外側撮像部２３を通じて取得され、上側ＬＣＤ２２に顔画像が写し出されている顔画像の上記特徴情報を算出し、算出した特徴情報が最も近い年齢層を推定すればよい。ただし、以上の性別と年齢の特定についての説明は例示であり、性別と年齢の判定は、上記の処理に限定される訳ではない。ステップ１００２の処理では、従来から提案されている様々な性別判定技術、年齢特定技術を適用できる。
【０２３９】
次に、情報処理部３１は、ユーザに対して、未取得の属性の顔画像取得を促す（ステップ１００３）。例えば、情報処理部３１は、上側ＬＣＤ２２に、未取得の属性の顔画像取得を促すメッセージを表示すればよい。この処理は、図１９Ａの処理と同様である。そして、情報処理部３１は、ユーザの操作によって、取得対象の顔画像が変更されたか否かを判定する（ステップ１００４）。例えば、情報処理部３１は、内側撮像部２４あるいは、外側撮像部２３を通じて取得される画像に含まれる顔画像の特徴、例えば、目と目の距離、目と口の距離が変化した場合に、取得対象の顔画像が変更されたと判定する。また、例えば、単に、Ｌボタン１４ＧまたはＲボタン１４Ｈによる取得指示が解除され、再び、Ｌボタン１４ＧまたはＲボタン１４Ｈによる取得指示がなされた場合に、情報処理部３１は、取得対象の顔画像が変更されたと判定してもよい。そして、取得対象の顔画像が変更された場合に、情報処理部３１は、制御をステップ１００２に戻す。
【０２４０】
一方、取得対象の顔画像が変更されなかった場合に、情報処理部３１は、そのまま処理を終了する。ここで、取得対象の顔画像が変更されなかった場合とは、例えば、ユーザがＧＵＩ、あるいは、操作ボタン１４Ｃ（Ｂボタン）等によって、顔画像管理支援処理２を終了した場合である。また、例えば、取得対象の顔画像が変更されない状態が所定時間持続した場合等に、情報処理部３１は、取得対象の顔画像が変更されなかったと判定してもよい。この場合には、情報処理部３１は、制御を図１５のステップ１０１に進め、顔画像取得処理を実行する。なお、すでに、図１５のステップ１０１の処理で説明したように、情報処理部３１は、図１３の顔画像属性集計表Ｄｎ２の該当する行の顔画像取得数を更新する。
【０２４１】
また、ステップ１００４の判定処理で、取得対象の顔画像が変更されなかった場合とは、例えば、目と目の距離、目と口の距離の変化量が許容値以内である場合である。また、例えば、単に、Ｌボタン１４ＧまたはＲボタン１４Ｈによる取得指示が解除されることなく、そのまま所定時間、取得指示が継続した場合に、情報処理部３１は、取得指示が解除されなかったと判断してよい。
【０２４２】
図１９Ｃは、顔画像管理支援処理３（図１６のステップ１２２）の詳細処理例を示すフローチャートである。図１９Ｃの処理（ステップ１２０１からステップ１２０４）は、図１９Ｂの処理のステップ１００１からステップ１００４と同様であるので、その説明を省略する。
【０２４３】
図１９Ａから図１９Ｃの処理によれば、情報処理部３１は、未取得の属性に該当する顔画像を優先して取得をするように、ユーザを誘導する。このような処理によって、極力、属性の偏りのない顔画像取得を望むユーザの顔画像収集処理を支援することができる。
【０２４４】
なお、本実施形態では、年齢層を１０歳未満、１０代、２０代、３０代、４０代、５０代、６０代、７０以上のように分類する処理例を示した。しかし、本発明の実施は、このような年齢層の分類に限定される訳ではない。例えば、さらに細かく年齢層を分類するようにしてもよい。また、逆に、子供、大人、老人等のように、粗く年齢層を分類するようにしてもよい。
【０２４５】
本実施形態では、Ｌボタン１４ＧまたはＲボタン１４Ｈによる取得指示を受け付けた場合に、情報処理部３１が顔画像の取得要求を認識した。しかし、そのような処理に代えて、例えば、本実施形態で説明したように、情報処理部３１が、目標とする寸法の顔画像を撮像部から取得するために、ゲーム装置１０と顔との距離、撮像部の視軸と顔との角度等を誘導するような処理において、顔画像の属性、例えば、性別、年齢を推定してもよい。すなわち、このような誘導処理のため、例えば、情報処理部３１が、リアルタイム、あるいは、フレーム周期（１／６０秒等）ごとに顔画像を取得する場合に、取得された顔画像から、顔画像の属性を特定すればよい。
【０２４６】
＜ゲーム処理の詳細例＞
ここでは、図２０Ａ−図４０を参照して、顔画像を用いたキャラクタオブジェクトが登場するゲーム処理の一例を説明する。以下の処理は、セーブデータ記憶域Ｄｏに蓄積された顔画像を含む敵オブジェクトＥＯを用いて、例えば、図１４のステップ１８において、実行される処理である。
【０２４７】
まず、本実施形態において、ゲーム装置１０によるゲームプログラムの実行によってプレイヤが遊技可能なゲームの概要について説明する。本実施形態におけるゲームは、プレイヤが、ゲーム内の主人公として、ゲーム世界として用意された仮想の３次元空間に出現する敵キャラクタを撃ち落とす、いわゆるシューティングゲームである。例えば、ゲーム世界をなす仮想の３次元空間（仮想空間（ゲーム空間とも呼ばれる））は、ゲーム装置１０の表示画面（例えば、上側ＬＣＤ２２）において、プレイヤの視点（いわゆる主観視点で）で表示される。もちろん、客観視点としてもよい。プレイヤが敵キャラクタを撃ち落とすことで、得点が加算される。これに対し、敵キャラクタとプレイヤとが衝突すると（具体的には、敵キャラクタが仮想カメラの位置から一定距離以内に到達すると）、得点が減点される。
【０２４８】
また、本実施形態のゲームは、ゲーム装置１０が備える撮像部により取得される現実世界の画像（以下、「実世界画像」と呼ぶ）と、仮想空間を表現した仮想世界画像とを合成して表示する。具体的には、仮想空間を、仮想カメラに近い領域（以下、「手前側領域」と呼ぶ）と、仮想カメラから遠い領域（以下、「奥側領域」と呼ぶ）に区分して、手前側領域に存在する仮想オブジェクトを表す画像を実世界画像の手前に表示し、奥側領域に存在する仮想オブジェクトを実世界画像の背後に表示する。より具体的には、後述するように、手前側領域に存在する仮想オブジェクトを実世界画像よりも優先し、かつ、実世界画像を奥側領域に存在する仮想オブジェクトよりも優先して合成する。
【０２４９】
実世界画像と仮想世界画像との合成の手法は問わない。例えば、仮想オブジェクトと同じ仮想空間に、実世界画像をオブジェクトとして存在させて（より具体的には、例えば、仮想オブジェクトのテクスチャとして貼り付けて）、実世界画像を仮想オブジェクトとともに共通の仮想カメラでレンダリングしてもよい。
【０２５０】
また、別の例では、第１の仮想カメラ（以下、実世界描画用カメラと呼ぶ）から実世界画像をレンダリングして第１のレンダリング画像とし、第２の仮想カメラ（以下、仮想世界描画用カメラと呼ぶ）から仮想オブジェクトをレンダリングして第２のレンダリング画像とし、第１のレンダリング画像と第２のレンダリング画像とを、手前側領域に存在する仮想オブジェクトを実世界画像よりも優先し、かつ、実世界画像を奥側領域に存在する仮想オブジェクトよりも優先するように、合成してもよい。
【０２５１】
前者の方法では、典型的には、実世界画像をテクスチャとして適用したオブジェクト（以下、このオブジェクトをスクリーンオブジェクトと呼ぶ）を手前側領域と奥側領域の境界となる位置に配置し、敵オブジェクトなどの仮想オブジェクトとともに共通の仮想カメラから見て描画してもよい。この場合、典型的には、実世界画像が貼り付けられるオブジェクトは、仮想カメラから一定距離で、かつ、法線が仮想カメラの視線方向と一致するような面を有するオブジェクトであり、この面（以下、境界面と呼ぶ）に実世界画像をテクスチャとして貼り付けてもよい。
【０２５２】
また、後者の方法では、仮想オブジェクトを手前側領域と奥側領域との境界面（以下、単に境界面と呼ぶ）に対して奥行判定（Ｚバッファによる判定）を行いつつレンダリングして上記第２のレンダリング画像とし、仮想カメラから一定距離でかつ法線が仮想カメラの視線方向と一致するような面に実世界画像をテクスチャとして貼り付けてレンダリングして上記第１のレンダリング画像とする。そして、第２のレンダリング画像を第１のレンダリング画像に優先して合成するようにすれば、実世界画像が境界面に存在しているように見える画像が合成される。
【０２５３】
いずれの方法においても、実世界画像は仮想カメラの視野範囲を包含するように、仮想カメラからの距離および視野角と実世界画像オブジェクトの大きさ（視線方向についての大きさ）との関係が設定される。
【０２５４】
なお、以下では、前者の方法を第１の描画方法と呼び、後者の方法を第２の描画方法と呼ぶ。
【０２５５】
また、ゲーム上における所定のイベント発生条件が満たされると、実世界画像の一部が開口され、奥側領域の仮想空間がその開口を通じて見えるように表示される。また、手前側領域には敵キャラクタオブジェクトが存在し、さらに、奥側領域には、所定の条件を満たすと特別な敵キャラクタ（いわゆる「ボスキャラ」）が出現する。ボスキャラクタを撃ち落とすことで、ステージクリアとなる。ステージは幾つか用意されており、全てのステージをクリアすることでゲームクリアとなる。これに対し、所定のゲームオーバー条件が満たされると、ゲームオーバーとなる。
【０２５６】
実世界画像に対する開口は、上述の第１の描画方法の典型例では、スクリーンオブジェクトの境界面に対して開口の位置を示すデータを設定してもよい。より具体的には、境界面に適用されるテクスチャ（いわゆるαテクスチャ）の不透明度で開口または非開口を示すようにしてもよい。また、第２の描画方法では、境界面に対して開口の位置を示すデータを設定してもよい。
【０２５７】
また、本実施形態では、実世界画像に対して開口／非開口を設定したが、実世界画像に対して他の画像処理を行うようにしてもよい。例えば、実世界画像に汚れを付けたりぼかし処理をしたりするなど当業者の技術常識による任意の画像処理を行うことができる。これらの例でも、境界面や境界面に対して、画像処理を行う位置を示すデータが設定されるようにしてもよい。
【０２５８】
＜ゲーム世界＞
このように本実施形態に係るゲームでは、実画像の背後にも仮想空間（奥側領域）が存在することが感じられ、奥行き感が向上した仮想空間を表すゲーム画面が表示される。なお、実世界画像は、単眼カメラで撮像された状態の通常画像であってもよく、複眼カメラで撮像された状態のステレオ画像であってもよい。
【０２５９】
本実施形態に係るゲームでは、実世界画像として、外側撮像部２３で撮像された画像を用いる。すなわち、ゲームのプレイ中に外側撮像部２３で撮像されたプレイヤの周囲の実世界画像（リアルタイムに取得される実世界の動画）が用いられる。従って、ゲーム装置１０を保持したユーザ（ゲームのプレイヤ）が、ゲームのプレイ中にゲーム装置１０を左右方向、あるいは上下方向に向きを変えて外側撮像部２３の撮像範囲を変更すると、上側ＬＣＤ２２に表示される実世界画像も、撮像範囲の変更に追従して変更される。
【０２６０】
ここで、ゲームプレイ中におけるゲーム装置１０の向きの変更は、大略して、（１）プレイヤの意図、または（２）ゲーム上の意図（シナリオ）に従って行われる。プレイヤがプレイ中にゲーム装置１０の向きを意図的に変えることで、外側撮像部２３で撮像される実世界画像が変化し、これにより、上側ＬＣＤ２２に表示される実世界画像を意図的に変更することができる。
【０２６１】
また、ゲーム装置１０が備える角速度センサ４０によりゲーム装置１０の向きの変化が検出され、それに応じて仮想カメラの向きを変更する。より具体的には、外側撮像部２３の向きの変化方向に仮想カメラを現在の向きから変化させる。さらに、外側撮像部２３の向きの変化量（角度）だけ、仮想カメラを現在の向きから変化させる。すなわち、ゲーム装置１０の向きを変えると、実世界画像が変化するとともに、仮想空間のうちの表示される範囲が変化する。すなわち、ゲーム装置１０の向きを変更することにより、実世界画像と仮想世界画像が連動して変化し、これにより、現実世界と仮想世界とが関連付いているかのような合成画像を表示することができる。なお、本実施形態においては、仮想カメラの位置は変更しないが、ゲーム装置１０の移動を検出して仮想カメラの位置を変更してもよい。
【０２６２】
なお、第２の描画方法においては、このような仮想カメラの向き変更処理は、仮想世界描画用カメラに適用され、実世界描画用カメラについては適用されない。
【０２６３】
また、ゲームプレイ中に、画面の端（例えば、右端、左端）のような局所にオブジェクトが表示されると、プレイヤに対し、オブジェクトを画面の中心に捉えようとする心理が自然に働き、プレイヤはゲーム装置１０（外側撮像部２３）を動かす。この結果、画面に表示される実世界画像が変わる。このようなゲーム装置１０の向きの変更（実世界画像変更）は、ゲームのシナリオに従って表示されるオブジェクトが意図的に画面の端に表示されるようにプログラミングすることによって、プレイヤが自然に行うようにすることができる。
【０２６４】
＜仮想空間の詳細＞
（実世界画像の描画）
外側撮像部２３で撮像された実世界画像は、仮想空間の手前側領域と奥側領域との境界位置に存在して見えるように合成される。図２０Ａは、本実施形態における仮想空間の一例を示す。また、図２０Ｂは、本実施形態におけるスクリーンモデルとαテクスチャの関係を示す。第１の描画方法では、実世界画像の表示のため、図２０Ａに示すように、仮想空間内に仮想カメラの位置を中心とする球体モデル（上述のスクリーンモデル）を設定し、この球体の内面に実世界画像を貼り付け、スクリーンオブジェクトを形成してもよい。より具体的には、スクリーンモデルのうち仮想カメラの視体積内となる部分の全体にテクスチャとして貼り付けられる。スクリーンモデルのうちこの部分以外については、透明に設定されるため画面上で視認されない。この例では、境界面は球体面であり、すなわち、図２０Ａで示すように、球体の表面により仮想カメラ側が手前側領域（本発明の「第２領域」に相当）であり、球体の表面より仮想カメラからみて遠い側が奥側領域（本発明の「第１領域」に相当）である。
【０２６５】
第２の描画方法では、実世界画像の表示のため、仮想空間内には、実世界画像のテクスチャを貼り付けるための平面ポリゴンが配置される。仮想空間において、平面ポリゴンの実世界描画用カメラに対する相対位置は、常に固定される。すなわち、平面ポリゴンは、実世界描画用カメラから一定の距離を空けて配置され、その法線方向が実世界描画用カメラの視点（視軸）に一致するように配置される。
【０２６６】
また、この平面ポリゴンは、実世界描画用カメラの視野範囲を包含するように設定される。具体的には、平面ポリゴンの大きさとその仮想カメラからの距離は、平面ポリゴンが仮想カメラの視野範囲を包含可能となるように設定される。この平面ポリゴンの仮想カメラ側の面全体に実世界画像を貼り付けるようにしたので、仮想カメラで、この実世界画像が貼り付けられた平面ポリゴンを描画すると、仮想カメラにより生成される画像において、実世界画像がその全域に対応するように表示される。
【０２６７】
なお、図２１に示すように、境界面を円筒状にしてもよい。図２１は、本実施形態における仮想空間の別の例を示す。この場合、仮想空間には、仮想カメラの位置に立てられた鉛直軸（本実施形態においては、仮想空間のＹ軸が鉛直方向に対応し、Ｘ軸およびＺ軸が水平方向に対応するとする）を中心軸とする仮想の円筒周面（境界面）が配置される。ただし、前述の通り、この円筒周面は視認されるオブジェクトではなく、開口処理において用いられるオブジェクトである。この円筒の外周面は、仮想空間を、仮想カメラが位置する第１空間（本発明の「第２領域」に相当）と、この第１空間の周りに存在する第２空間（本発明の「第１領域」に相当）とに区分する。
【０２６８】
（実世界画像を開口させるための処理）
さらに、本実施形態に係るゲームでは、実世界画像に開口を設け、実世界画像の背後の奥側領域の存在をプレイヤに認識させる。より明確に言うと、実世界画像のうちこの開口の部分は、透明または半透明で表示され、その背後にある世界がこの部分に合成される。このため、ゲーム内で、所定のイベントの発生を契機に、実世界画像の一部が開口して（消去されて）、その開口を通して実世界画像の背後に存在する他の仮想空間（奥側領域）を示す画像が表示される。
【０２６９】
このような、実世界画像に開口を設けて奥側領域を表示する処理は、本実施形態において、境界面は球体面であり、第１の描画方法では、図２０Ａおよび図２０Ｂに示すように、上述の球体のスクリーンオブジェクトの内面に貼り付けられるテクスチャにより実現される。以下、このテクスチャのことをスクリーン用αテクスチャ（後述する、開口判定用データ）と呼ぶ。本実施形態では、スクリーン用αテクスチャは仮想カメラを中心として少なくとも或る方向に３６０度周回する部分に貼り付けられる。より具体的には、図２０Ｂで示すように、スクリーン用αテクスチャは、球体のうち中央部分、言い換えると、仮想カメラの位置を中心として、ＸＹ平面に平行な方向に３６０度周回させた、Ｙ方向に所定の幅を有する部分（以下、αテクスチャ適用部と呼ぶ）に貼り付けられる。このようにすることにより、スクリーン用αテクスチャのデータの持ち方を簡単にすることができる。具体的には、本実施形態では、スクリーン用αテクスチャは矩形形状である。このαテクスチャが図２０Ａで示す部分に貼り付けられることにより、スクリーン用αテクスチャの各ドットの情報は、スクリーンオブジェクトのうちαテクスチャ適用部の各座標に対応する。
【０２７０】
上述のように実世界画像が貼り付けられ、αテクスチャが設定されたスクリーンオブジェクトを仮想カメラで描画することにより、開口部を有する実世界画像が境界面（球体内面）に存在するように描画されることになる。αテクスチャのうち実世界画像に対応する部分は、仮想カメラによる描画により計算される。
【０２７１】
第２の描画方法においても、仮想空間の境界面（ここでは球体内面）に対して、開口の位置を示すデータが設定される。典型的には、境界面の各点について開口の有無を示すデータが設定される。より具体的には、上述と同様の球体オブジェクトが仮想オブジェクトの存在する仮想世界に配置され、この球体オブジェクトに対して同様のαテクスチャが設定される。そして、実世界画像のレンダリング時に、αテクスチャが設定された球体オブジェクトのうち仮想世界描画用カメラで描画される部分に対応する部分のαテクスチャを、上述の平面ポリゴンに適用してレンダリングする。または、この部分のαテクスチャを用いて、実世界画像に対して開口部を透明化する処理を行った後、この処理後の実世界画像を前述の平面ポリゴンに貼り付けて実世界描画用カメラでレンダリングする。なお、この球体オブジェクトは、開口の計算にのみ使用されるオブジェクトであり、仮想世界の描画時に描画されないオブジェクトである。
【０２７２】
なお、本実施形態では、開口部を示すデータは境界面の各点ごとに情報を有するようなデータであるが、境界面において開口を有する位置を計算式で定義するような情報でもよい。
【０２７３】
第２空間には、開口を通じて仮想カメラの視野に収まる第２空間の背景画像（テクスチャ）を貼り付けるためのポリゴン（オブジェクト）が配置される。第２空間の背景は、「奥壁」と呼ぶこともある。
【０２７４】
第１空間には、敵キャラクタや、敵キャラクタを撃ち落とすための弾を表す各種のキャラクタを示すオブジェクトが配置される。第２空間にも所定のオブジェクト（例えば、敵キャラクタのうちの一部）が配置される。仮想空間上に配置された各オブジェクトは、予めプログラミングされたロジック（アルゴリズム）に従って仮想空間内を移動する。
【０２７５】
さらに、敵キャラクタのうちの一部は、境界面に形成された開口を通じて第１空間と第２空間との間を行き来することもできる。または、自ら境界面に開口を形成して第１空間と第２空間との間を行き来することができる。開口を形成するゲーム上の所定イベントは、例えば、敵キャラクタが境界面に衝突するようなイベント（衝突イベント）である。あるいは、ゲームシナリオの進行上、所定のタイミングで境界面が破壊され、第２空間にいた敵キャラクタが第１空間に進入するイベント（敵キャラクタ出現イベント）である。あるいは、時間経過に応じて自動的に開口が形成されるようにしてもよい。また、プレイヤの所定のゲーム操作に応じて、開口を修復することができる。例えば、プレイヤは、形成された開口に対して弾を当てることで、開口を小さくする（修復する）こともできる。
【０２７６】
図２２は、実施形態における画像処理プログラムの一例であるゲームプログラムにおいて定義される仮想の３次元空間（ゲーム世界）を示す。なお、上述したように、本実施形態では、境界面は球体であるが、図２２では簡便のため、境界面を円筒状に示す。上述したように、本実施形態に係るゲームでは、ゲーム装置１０の上側ＬＣＤ２２には、仮想の３次元空間を表現した仮想世界画像と実世界画像が合成されて表示される。
【０２７７】
また、図２２において示されるとおり、本実施形態におけるゲーム上の仮想空間は、仮想カメラの位置を中心軸とする球体面で形成された境界面３によって第１空間１と第２空間２とに分けられている。
【０２７８】
境界面３には、ゲーム装置１０に内蔵する実カメラによって撮像された実世界画像であるカメラ画像ＣＩ（図２３）は、第１の描画方法においては後述するステップ８１および８２、また、カメラ画像ＣＩは、第２の描画方法においては後述するステップ８３からステップ８５の処理により、境界面３の位置に存在しているかのように、仮想世界画像と合成される。
【０２７９】
本実施形態における実世界画像は平面視の画像である。また仮想世界画像も平面視の画像である。すなわち、上側ＬＣＤ２２には平面視の画像が表示される。ただし、実世界画像は、立体視可能な画像であってもよい。本発明は、実世界画像の種類によって限定されない。なお、本実施形態におけるカメラ画像ＣＩは、静止画であっても、リアルタイムの実世界画像（動画像）であってもよい。本実施形態におけるゲームプログラムでは、カメラ画像ＣＩは、リアルタイムの実世界画像であるとする。また、実世界画像であるカメラ画像ＣＩは、カメラの種類によって限定されない。例えば、カメラ画像ＣＩは、ゲーム装置１０に外部接続可能なカメラによって得られた画像であってもよい。さらに、本実施形態では、カメラ画像ＣＩは、外側撮像部２３（複眼カメラ）および／または内側撮像部２４（単眼カメラ）から取得した画像であればよい。本実施形態におけるゲームプログラムでは、カメラ画像ＣＩは、外側撮像部２３の外側左撮像部２３ａおよび外側右撮像部２３ｂの一方を単眼カメラとして用いることにより取得される画像であるとする。
【０２８０】
上記したように第１空間１は、仮想カメラから見て境界面３より手前の空間であり、境界面３によって囲まれた空間である。また、第２空間２は、仮想カメラから見て境界面３の背後の空間である。図２０Ａおよび図２１において図示はされていないが、境界面３を囲む奥壁ＢＷが存在する。つまり、第２空間２は、境界面３と奥壁ＢＷとの間に存在する空間である。奥壁ＢＷは、任意の画像が貼り付けられる。例えば、奥壁ＢＷには、予め用意された宇宙空間を表す画像が貼り付けられ、第１空間１の背後には宇宙空間である第２空間２の存在が表示される。すなわち、仮想カメラから見て、手前から順に、第１空間１、境界面３、第２空間２、奥壁ＢＷが配置される。
【０２８１】
ただし、上述のとおり、本発明の画像処理プログラムはゲームプログラムに限定される訳ではなく、これらの設定およびルールは、本発明の画像処理プログラムを限定するものではない。なお、敵オブジェクトＥＯは、図２２に示されるとおり、仮想の３次元空間内を移動し、上述の境界面３を通って、第１空間１と第２空間２とを往来することができる。境界面３のうち、仮想カメラによって撮像される領域を通って、敵オブジェクトＥＯが第１空間１と第２空間２との間を移動した場合には、上側ＬＣＤ２２に表示される画像においては、敵オブジェクトＥＯが実世界画像を通り抜けて奥側から手前側に、または、手前側から奥側に移動するように表現される。
【０２８２】
画面には、ゲームのシナリオやイベントにより実世界画像に生じた開口（穴）を使って第１空間１と第２空間２とを往来する敵オブジェクトＥＯの様子が表示される。図２２および図２４には、敵オブジェクトＥＯが境界面３に開口を作って、または、境界面３上に既に存在する開口を通って、第１空間１と第２空間２とを行き来する様子が図示されている。
【０２８３】
なお、本実施形態における画像処理プログラムでは、第１空間１または第２空間２に存在するオブジェクトは、敵オブジェクトＥＯ、弾オブジェクトＢＯ、および奥壁ＢＷの３つであるが、本発明の画像処理プログラムは、オブジェクトの種類に限定されない。本実施形態における画像処理プログラムにおいて、オブジェクトは、仮想空間（第１空間１および第２空間２）に存在する仮想物体である。例えば、本実施形態に係る画像処理プログラムにおいて、障害物のオブジェクト等の任意のオブジェクトが存在してもよい。
【０２８４】
＜表示形態例＞
図２３〜図２６は、上側ＬＣＤ２２に表示されるゲーム画面の一例を示す。以下、各図の表示形態例について説明する。
【０２８５】
まず、図２３〜図２６において共通に表示される照準カーソルＡＬについて説明する。図２３〜図２６において、上側ＬＣＤ２２には、共通して、ゲーム装置１０を用いた攻撃操作（例えば、ボタン１４Ｂ（Ａボタン）の押下）に応じて発射される弾オブジェクトＢＯの照準カーソルＡＬが表示されている。本実施形態のゲームプログラムでは、照準カーソルＡＬは、ゲーム装置１０が実行するプログラムに応じて所定の方向を向くように設定されている。
【０２８６】
例えば、照準カーソルＡＬは、仮想カメラの視線方向、つまり、上側ＬＣＤ２２の画面中央に固定されているように設定される。この場合、上述のとおり、本実施形態において、外側撮像部２３の撮像方向の変化に応じて、仮想カメラ（第１の描画方法における仮想カメラまたは第２の描画方法における仮想世界描画用カメラ）の視線方向を変更するので、プレイヤは、ゲーム装置１０の向きを変えることで、照準カーソルＡＬの仮想空間内における向きを変更できる。そして、プレイヤは、例えば、ゲーム装置１０が備えるボタン１４Ｂ（Ａボタン）を、下側ハウジング１１を把持した右手の親指で押下することにより攻撃操作を行う。これにより、プレイヤは、攻撃操作による弾オブジェクトＢＯの発射を行い、本実施形態のゲーム上における敵オブジェクトＥＯの退治や、境界面３に存在する開口の修復をする。
【０２８７】
次に、図２３〜図２６について各図個別に説明する。
【０２８８】
図２３において、上側ＬＣＤ２２には、第１空間１に存在する敵オブジェクトＥＯと、ゲーム装置１０に内蔵する実カメラによって撮像されたカメラ画像ＣＩと、が表示されている。敵オブジェクトＥＯは、任意に設定される。
【０２８９】
敵オブジェクトＥＯは、例えば、ゲーム装置１０のデータ保存用外部メモリ４６等に記憶された画像（例えば、人の顔写真）をテクスチャとして用い、所定形状の３次元ポリゴンモデル（人の頭部の３次元形状を表すポリゴンモデル）に、所定の方法で貼り付けたオブジェクトである。
【０２９０】
また、本実施形態において、上側ＬＣＤ２２に表示されるカメラ画像ＣＩは、上述のとおり、ゲーム装置１０に内蔵する実カメラで撮像されたリアルタイムの実世界画像である。その他、例えば、カメラ画像ＣＩは、ゲーム装置１０のデータ保存用外部メモリ４６等に記憶された画像（例えば、風景写真）であってもよい。
【０２９１】
カメラ画像ＣＩが上側ＬＣＤ２２に表示された状態において、敵オブジェクトＥＯは任意に移動することができる。例えば、第１空間１に存在する敵オブジェクトＥＯは、第２空間２に移動することができる。図２４は、第１空間１に存在する敵オブジェクトＥＯが、第１空間１から第２空間２へ移動する様子の一例を示す。図２４に示した一例では、第１空間１に存在する敵オブジェクトＥＯは、境界面３上に開口を作って、第２空間２へ移動する。第２空間２に移動した敵オブジェクトＥＯは、境界面３上の非開口領域において仮想カメラから見た位置において影（シルエットモデル）ＥＳとして表示される。また、第２空間２は、境界面３上の開口を通して視認される。つまり、仮想カメラの視野内の境界面３上に開口が存在する場合、上側ＬＣＤ２２には、当該開口を通して第２空間２の画像の一部が表示される。第２空間２の画像は、具体的には、第２空間２に存在するオブジェクト、例えば、第２空間２に存在する敵オブジェクトＥＯや、奥壁ＢＷである。影ＥＳは、敵オブジェクトＥＯの影を示す表示である。図２７Ａは、敵オブジェクトＥＯの影のシルエットモデルを上から見た図を示す。また、図２７Ｂは、敵オブジェクトＥＯの影のシルエットモデル例を示す。図２７Ａおよび図２７Ｂに示すように、本実施形態においては、敵オブジェクトＥＯについて、複数の向きごとにシルエットモデルが設定されている。具体的には、シルエットモデルは、例えば、図２７Ａに示す８枚の平面ポリゴンである。このシルエットモデル（８枚の平面ポリゴン）は、実体モデルである敵オブジェクトＥＯと同じ位置に配置される。また、各平面ポリゴンは、実体モデルに内包される大きさである（実体モデルからはみ出ない）。また、各平面ポリゴンにはその面の法線方向から見た敵オブジェクトＥＯの影画像が描いたテクスチャが貼り付けられる。敵オブジェクトＥＯが境界面３の非開口領域の背後に存在する場合には、このシルエットモデルが描画されることにより影ＥＳが表示される。
【０２９２】
なお、８枚の平面ポリゴンのすべてがレンダリングされる。敵オブジェクトＥＯが境界面３の非開口領域の背後に存在する場合、奥行判定（デプス判定）により、敵オブジェクトＥＯの実体モデルはこの境界面（スクリーンオブジェクト）３に隠されるため描画されない。しかしながら、シルエットモデルは、境界面（スクリーンオブジェクト）３に対してデプス判定をしないように設定されているため、敵オブジェクトＥＯ（およびそのシルエットモデル）が境界面３の非開口領域の背後に存在する場合であっても、シルエットモデルは描画されて、図２４や図２５に示すように影が表示される。しかしながら、敵オブジェクトＥＯが境界面３の前方に存在する場合や、境界面３の開口領域の背後に存在する場合は、シルエットモデルは実体モデルより奥に存在し、敵オブジェクトＥＯの実体モデルが描画され、それによりシルエットモデルは描画されないため、影は表示されない。これは、シルエットモデルが敵オブジェクトＥＯの実体モデルに内包されるように設定されているからである。
【０２９３】
上側ＬＣＤ２２には、以下の優先順位で画像が合成されて表示される。
【０２９４】
（１）第１空間１に存在するオブジェクトの画像（２）実世界画像のうち非開口領域については、第２空間２に存在するオブジェクトの影画像と実世界画像の合成画像（例えば影画像が半透明で実世界画像に合成される）（３）実世界画像のうち開口部領域については第２空間２に存在するオブジェクトの画像（実体画像）が優先的に合成され、さらにその奥に奥壁画像が合成される。ただし、第２空間２に存在する敵オブジェクトＥＯの移動状態によっては、敵オブジェクトＥＯが開口領域と非開口領域との両方にまたがって存在する場面がある。つまり、仮想カメラから見た位置において、敵オブジェクトＥＯが開口のふちに存在する場面がある。図２５は、このような、第２空間２に存在する敵オブジェクトＥＯが、境界面３上に設定された開口のふちに移動した状態を示す。図２５において示されるとおり、第２空間２に存在する敵オブジェクトＥＯについて、仮想カメラから見て、開口を通して第２空間２が視認できる範囲についてはそのままの画像が、開口を通して第２空間２が視認できない範囲については影ＥＳが、上側ＬＣＤ２２に表示される。
【０２９５】
より具体的には、図２８に示すように、各オブジェクトには不透明度（アルファ値）のデータが設定される。図２８は、本実施形態において各オブジェクトに設定される不透明度（アルファ値）の例を示す。敵オブジェクトの実体モデルには、そのテクスチャにモデル全体について不透明度が１である設定がされる。また、敵オブジェクトのシルエットモデル（平面ポリゴン）には、そのテクスチャに影画像の全体について不透明度が１である設定がされる。弾のモデルについても同様である。敵オブジェクトのうち半透明のオブジェクトのモデルやエフェクト用のモデルについては、そのテクスチャに、例えば、そのモデル全体について不透明度０．６が設定される。スクリーンオブジェクト（図２０Ａに示される球体のスクリーンモデル）には、マテリアルとして不透明度０．２が設定され、そのテクスチャであるαテクスチャに、各点ごとに１または０が設定される。１が非開口部を示し、０が開口部を示す。すなわち、スクリーンオブジェクトには、不透明度値として、マテリアルの設定とテクスチャの設定の２つが施される。
【０２９６】
また、敵オブジェクト、弾オブジェクト、半透明の敵オブジェクト、エフェクトオブジェクト、スクリーンオブジェクトの間は、互いにデプス判定有効である。「影用の平面ポリゴンと敵オブジェクトとの間」「影用の平面ポリゴンと弾オブジェクトとの間」「影用の平面ポリゴンと半透明の敵オブジェクトとの間」「影用の平面ポリゴンとエフェクトオブジェクトとの間」は、互いにデプス判定有効である。影用の平面ポリゴンとスクリーンオブジェクトとの間は、デプス判定無効である。
【０２９７】
デプス判定が有効な場合には、通常の透視投影に従い、レンダリングされる。仮想カメラからの奥行方向に応じて陰面消去される。デプス判定が無効の場合には、対象オブジェクトが自身のオブジェクトより仮想カメラに近い側に存在していてもレンダリングされる。
【０２９８】
そして、本実施形態においては、レンダリング時に、オブジェクトごとにレンダリングの式を設定することができる。具体的には以下のように設定される。
【０２９９】
敵オブジェクトの実体、弾オブジェクト、半透明の敵オブジェクト、エフェクトオブジェクトは、以下の式で描画される。
【０３００】
「自身の色×自身の不透明度＋背景の色×（１−自身の不透明度）」
スクリーンオブジェクトは、以下の式で描画される。
【０３０１】
「自身の色（実世界画像の色）×自身のテクスチャの不透明度＋背景の色×（１−自身のテクスチャの不透明度）」
敵オブジェクトのシルエットモデルは、以下の式で描画される。
【０３０２】
「自身の色×（１−背景のマテリアルの不透明度）＋背景の色×背景のマテリアルの不透明度）」
なお、敵オブジェクトが描画される場合、その背景はスクリーンオブジェクト（境界面３）であるから、上式において、「背景のマテリアルの不透明度」は「スクリーンオブジェクト（境界面３）のマテリアルの不透明度」である。
【０３０３】
上述のような様々な設定により、敵オブジェクトが境界面の非開口部の背後に存在するときには、実体は表示されずに影が表示され、敵オブジェクトが境界面の前方に存在するときおよび敵オブジェクトが境界面の開口部に存在するときには、影は表示されずに実体が表示される。
【０３０４】
また、本実施形態におけるゲームでは、境界面３上に存在する開口は、弾オブジェクトＢＯを当てることにより修復され得る。図２６は、境界面３に存在する開口に弾オブジェクトＢＯを当てることにより、当該開口を塞ぐ様子を示す。図２６に示されるとおり、例えば弾オブジェクトＢＯが当該境界面３上に存在する非開口領域に衝突したときに、衝突点から一定範囲の境界面について非開口のデータ設定がされる。これにより、衝突点から一定範囲に開口があったときに当該開口は塞がれる。なお、本実施形態では、開口にあたった弾オブジェクトＢＯは消滅する（したがって、図２６において弾オブジェクトＢＯは消滅している）。また、弾オブジェクトＢＯは境界面３上の開口に当たったときには、当該開口を通り抜けて第２空間に移動する。
【０３０５】
なお、上述したように、上側ＬＣＤ２２には、ゲーム装置１０に内蔵する実カメラによって撮像されたリアルタイムの実世界画像が境界面３上にあるかのように見える画像として表示されている。実空間内においてゲーム装置１０の方向を変えることによって、ゲーム装置１０で撮像される撮像範囲が変わるため、上側ＬＣＤ２２に表示されるカメラ画像ＣＩも変化する。この場合、ゲーム装置１０は、実空間内におけるゲーム装置１０の動きに応じて、上記仮想空間内における上記仮想カメラ（第２の描画方法については、仮想世界描画用カメラ）の方向を変化させる。これによって、実空間内に配置されているように表示されている敵オブジェクトＥＯや境界面３上に存在する開口は、実空間内におけるゲーム装置１０の方向が変わっても実空間内における同じ位置に配置されているように表示される。例えば、ゲーム装置１０の実カメラによる撮像方向を左へ変えるとする。この場合、上側ＬＣＤ２２に表示されている敵オブジェクトＥＯや境界面３上に存在する開口の表示位置が、実カメラの撮像方向を変えた方向の逆方向（右方向）に移動、すなわち敵オブジェクトＥＯおよび境界面３上に存在する開口が配置されている仮想空間の仮想カメラ（第２の描画方法については仮想世界描画用カメラ）の方向が実カメラと同じ左方向に移動する。したがって、敵オブジェクトＥＯや境界面３上に存在する開口は、ゲーム装置１０の方向が変化して実カメラの撮像範囲が変わったとしても、あたかもカメラ画像ＣＩで表現された実空間内に配置されているように上側ＬＣＤ２２に表示される。
【０３０６】
《画像処理の動作例》
次に、図２９〜図３１、図３２Ａおよび図３２Ｂを参照して、ゲーム装置１０で実行される本実施形態における画像処理プログラムによる具体的な画像処理の動作例について説明する。図２９は、当該画像処理プログラムを実行することによってゲーム装置１０が画像処理する動作例の一例を示すフローチャートである。図３０は、図２９のステップ５３で行われる敵オブジェクト関連処理の詳細な動作の一例を示すサブルーチンのフローチャートである。図３１は、図２９のステップ５４で行われる弾オブジェクト関連処理の詳細な動作の一例を示すサブルーチンのフローチャートである。図３２Ａおよび図３２Ｂは、図２９のステップ５７で行われる表示画像の更新処理（第１の描画方法および第２の描画方法）の詳細な動作の一例を示すサブルーチンのフローチャートである。
【０３０７】
《画像処理例》
図２９を参照して、情報処理部３１の動作について説明する。まず、ゲーム装置１０の電源（電源ボタン１４Ｆ）がＯＮされると、ＣＰＵ３１１によってブートプログラム（図示せず）が実行され、これにより内蔵メモリまたは外部メモリ４５やデータ保存用外部メモリ４６に格納されているプログラムがメインメモリ３２にロードされる。そして、当該ロードされたプログラムが情報処理部３１（ＣＰＵ３１１）で実行されることによって、図２９に示すステップが実行される。なお、図２９〜図３２Ａにおいては、本発明の画像処理に直接関連しない画像処理およびその他周辺の処理についての記載を省略する。
【０３０８】
図２９において、情報処理部３１は、画像処理における初期設定を行い（ステップ５１）、次のステップ５２に処理を進める。例えば、情報処理部３１は、仮想世界画像（仮想空間の画像）を生成するための仮想カメラの初期位置や初期方向を仮想カメラデータＤｊに設定し、当該仮想カメラが配置される仮想空間の座標軸（例えば、ＸＹＺ軸）を設定する。次に、情報処理部３１は、ゲーム装置１０の各構成部より各種データを取得し（ステップ５２）、次のステップ５３に処理を進める。例えば、情報処理部３１は、現在選択されている撮像部（本実施形態では外側撮像部２３）によって撮像されたカメラ画像を用いて、実カメラ画像データＤｂを更新する。また、情報処理部３１は、操作ボタン１４やアナログスティック１５を操作したことを示すデータを取得して、操作子データＤａ１を更新する。さらに、情報処理部３１は、角速度センサ４０によって検出された角速度を示す角速度データを取得して、角速度データＤａ２を更新する。
【０３０９】
次に、情報処理部３１は、敵オブジェクト関連処理を実行し（ステップ５３）、次のステップ５４に処理を進める。以下、図３０を参照して、敵オブジェクト関連処理について説明する。
【０３１０】
図３０において、情報処理部３１は、敵オブジェクトＥＯが出現する条件を満たしているか否かを判断する（ステップ６１）。例えば、敵オブジェクトＥＯが出現する条件として、所定時間毎に敵オブジェクトＥＯが出現してもいいし、敵オブジェクトＥＯが仮想世界から消滅したことに応じて新たな敵オブジェクトＥＯが出現してもいいし、ランダムのタイミングで敵オブジェクトＥＯを出現させてもよい。なお、敵オブジェクトＥＯが出現する条件は、例えば、メインメモリ３２に保持されている各種プログラム群Ｐａにより設定される。
【０３１１】
そして、情報処理部３１は、敵オブジェクトＥＯが出現する条件を満たしている場合、次のステップ６２に処理を進める。一方、情報処理部３１は、敵オブジェクトＥＯが出現する条件を満たしていない場合、次のステップ６３に処理を進める。
【０３１２】
ステップ６２において、情報処理部３１は、出現条件を満たした敵オブジェクトＥＯに対応する敵オブジェクトデータＤｆを生成、および初期設定を行って、次のステップ６３に処理を進める。例えば、情報処理部３１は、メインメモリ３２に保持されている各種プログラム群Ｐａを用いて、実体データＤｆ１、シルエットデータＤｆ２、開口形状データＤｆ３、および敵オブジェクトＥＯに対応するポリゴンのデータを取得する。そして、情報処理部３１は、当該各データを含んだ敵オブジェクトデータＤｆを生成する。また、例えば、情報処理部３１は、生成した敵オブジェクトデータＤｆに含まれる、敵オブジェクトＥＯに対応するポリゴンの仮想空間上における配置方向や配置位置を示すデータ、および敵オブジェクトＥＯの仮想空間上における移動速度や移動方向を示すデータの初期設定を行う。当該初期設定は周知の方法で行われる。
【０３１３】
次に、情報処理部３１は、仮想空間に配置されている敵オブジェクトＥＯを移動させ（ステップ６３）、次のステップ６４に処理を進める。一例として、情報処理部３１は、敵オブジェクトデータＤｅに含まれる敵オブジェクトＥＯの配置位置を示すデータを、当該敵オブジェクトデータＤｅに含まれる敵オブジェクトＥＯの仮想空間上における移動速度や移動方向を示すデータに基づいて更新する。この際、情報処理部３１は、敵オブジェクトデータＤｅに含まれる敵オブジェクトＥＯの配置方向を示すデータを、上記移動方向を示すデータに基づいて更新する。更新後、敵オブジェクトデータＤｅに含まれる敵オブジェクトＥＯの仮想空間上における移動速度や移動方向を示すデータを任意に更新してもよい。移動速度や移動方向を示すデータを更新することで、敵オブジェクトＥＯは、仮想空間上を、任意の速度、任意の方向に移動することができる。
【０３１４】
次に、情報処理部３１は、敵オブジェクトＥＯが仮想カメラ（第１の描画方法における仮想カメラまたは第２の描画方法における仮想世界描画用カメラ。）の位置から一定距離まで到達したか否かを判定する（ステップ６４）。例えば、情報処理部３１は、敵オブジェクトデータＤｅに含まれる敵オブジェクトＥＯの配置位置を示すデータと、仮想カメラデータＤｊに含まれる仮想カメラ（第１の描画方法における仮想カメラまたは第２の描画方法における仮想世界描画用カメラ）の配置位置を示すデータとを比較する。そして、情報処理部３１は、２つのデータが所定の条件（例えば、敵オブジェクトＥＯの配置位置と仮想カメラの配置位置との間の距離が所定の値よりも小さくなる）を満たした場合、敵オブジェクトＥＯが仮想カメラの位置から一定距離まで到達したと判定し、２つのデータが所定の条件を満たさない場合、敵オブジェクトＥＯは仮想カメラの位置まで到達していないと判定する。なお、以下、第１の描画方法および第２の描画方法を区別せず、単に「仮想カメラ」と表記した場合、第１の描画方法における仮想カメラまたは第２の描画方法における仮想世界描画用カメラを指す。情報処理部３１は、敵オブジェクトＥＯが仮想カメラの位置まで到達したと判定した場合、次のステップ６５に処理を進める。一方、情報処理部３１は、敵オブジェクトＥＯが仮想カメラの位置まで到達していないと判定した場合、ステップ６６に処理を進める。
【０３１５】
ステップ６５において、情報処理部３１は、減点処理を行って、次のステップ６６に処理を進める。例えば、情報処理部３１は、得点データＤｈが示すゲームの得点を所定値だけ減点し、減点後の得点を用いて得点データＤｈを更新する。なお、上記減点処理においては、情報処理部３１は、上記仮想カメラの位置まで到達した敵オブジェクトＥＯを仮想空間から消滅させる処理（例えば、仮想カメラの位置まで到達した敵オブジェクトＥＯに関する敵オブジェクトデータＤｅを初期化し、当該敵オブジェクトＥＯが仮想空間に存在しない状態にする）を行ってもよい。また、当該減点処理における所定値は、任意の値でよく、例えば、メインメモリ３２に保持されている各種プログラム群Ｐａによって設定されてもよい。
【０３１６】
ステップ６６において、情報処理部３１は、敵オブジェクトＥＯが境界面３を通過する（敵オブジェクトＥＯが第１空間１と第２空間２との間を移動する）か否かを判定する。例えば、情報処理部３１は、敵オブジェクトデータＤｅに含まれる敵オブジェクトＥＯの配置位置を示すデータと、境界面データＤｄに含まれる境界面３の配置位置を示すデータとを比較する。そして、情報処理部３１は、２つのデータが所定の条件を満たした場合、敵オブジェクトＥＯが境界面３を通過すると判定し、２つのデータが所定の条件を満たさない場合、敵オブジェクトＥＯが境界面３を通過しないと判定する。なお、所定の条件とは、例えば、敵オブジェクトＥＯの仮想空間上の座標（配置位置）が、境界面３の球体表面の条件式を満たすことである。上述のとおり、境界面３の仮想空間上の配置位置を示すデータは、境界面３の仮想空間上の存在範囲を示し、例えば、球体表面（本実施形態における境界面３の形状）の条件式である。敵オブジェクトＥＯの配置位置が当該条件式を満たす場合、敵オブジェクトＥＯは、仮想空間において境界面３上に存在することになる。本実施形態では、例えばこのような場合に、敵オブジェクトＥＯが境界面３を通過すると判定する。
【０３１７】
情報処理部３１は、敵オブジェクトＥＯが境界面３を通過すると判定した場合、次のステップ６７に処理を進める。一方、情報処理部３１は、敵オブジェクトＥＯが境界面３を通過しないと判定した場合、当該サブルーチンによる処理を終了する。
【０３１８】
ステップ６７において、情報処理部３１は、境界面データＤｄに含まれる開口判定用データの更新処理を行って、当該サブルーチンによる処理を終了する。本処理は、敵オブジェクトＥＯが境界面３を通過することによりできる境界面３上の開口情報を境界面データＤｄに登録するための処理である。例えば、第１の描画方法および第２の描画方法において、情報処理部３１は、境界面データＤｄに含まれる開口判定用データの、敵オブジェクトＥＯが境界面３を通過する仮想空間上の位置に対応する位置を中心とした領域のアルファ値と開口形状データＤｆ３のアルファ値とを乗算する。開口形状データＤｆ３は、敵オブジェクトＥＯの配置位置を中心とした、アルファ値「０」が格納されたテクスチャデータである。そのため、当該乗算によって、敵オブジェクトＥＯの配置位置（敵オブジェクトＥＯが通過する境界面３上の座標）を中心として開口が生成される領域の開口判定用データのアルファ値は「０」となる。つまり、情報処理部３１は、境界面３上に既に開口が存在するか否かを判定することなく、境界面の状態（具体的には開口判定用データ）を更新することができる。なお、敵オブジェクトと境界面の衝突位置に既に開口が存在するか否かを判定するようにしてもよい。そして、開口が存在しない場合には、当該衝突位置に対応する実世界画像が破片となって飛び散るエフェクトを表示してもよい。
【０３１９】
また、上記開口判定用データの更新処理においては、情報処理部３１は、開口が生成されたことの演出処理（例えば、開口が生成された位置において壁が崩れる演出を行う）を行ってもよい。この場合、情報処理部３１は、敵オブジェクトＥＯが境界面３を通過する位置（開口を生成する範囲）が既に開口状態であったか否かの判定をする必要がある。情報処理部３１は、例えば、開口形状データＤｆ３のアルファ値を「０」から「１」に反転させたデータと上記乗算した開口判定用データのアルファ値とを乗算することにより、開口を生成する範囲が既に開口状態であったかどうかの判定をすることができる。すなわち、開口を生成する範囲全てが既に開口状態であった場合、開口判定用データのアルファ値は「０」であるから、当該乗算結果は「０」である。他方、開口を生成する範囲の一部でも開口状態ではない場合、開口判定用データのアルファ値は「０」でない部分が存在するため、当該乗算結果は「０」以外となる。
【０３２０】
なお、敵オブジェクトＥＯの開口形状データＤｆ３は、敵オブジェクトＥＯの形状に対応したアルファ値「０」を格納したテクスチャデータであるが、情報処理部３１は、所定のイベントにより当該テクスチャデータのアルファ値を「１」に変換してもよい。当該変更後上記処理が行われた場合、開口形状データＤｆ３のアルファ値が「１」であるため、開口判定用データのアルファ値は変更されない。この場合、敵オブジェクトＥＯは、開口を作らず、境界面３を通過する。すなわち、これによって、敵オブジェクトＥＯが、境界面３をすり抜けるかのような演出を行うことができる（図２２参照）。なお、所定のイベントとは、例えば、乱数や所定の間隔で定められた時間間隔であってもよいし、ゲーム上の所定条件が満たされたことであってもよい。そして、これらは、例えば、メインメモリ３２に保持されている各種プログラム群Ｐａによって設定されてもよい。
【０３２１】
図２９に戻り、上記ステップ５３における敵オブジェクト関連処理の後、情報処理部３１は、弾オブジェクト関連処理を行い（ステップ５４）、次のステップ５５に処理を進める。以下、図３１を参照して、弾オブジェクト関連処理について説明する。
【０３２２】
図３１において、情報処理部３１は、設定されている移動速度ベクトルに応じて、仮想空間内で弾オブジェクトＢＯを移動させ（ステップ７１）、次のステップ７２に処理を進める。例えば、情報処理部３１は、弾オブジェクトデータＤｇに含まれる移動速度ベクトルを示すデータに基づいて、弾オブジェクトＢＯの配置方向や配置位置を示すデータを更新する。この際、情報処理部３１は、周知の方法で、当該移動速度ベクトルを示すデータを更新してもよい。また、例えば、情報処理部３１は、弾オブジェクトＢＯの種類に応じて、当該移動速度ベクトルを示すデータの更新方法を変えてもよい。例えば、弾オブジェクトＢＯがボールである場合、情報処理部３１は、仮想空間上鉛直方向における重力の影響を考慮して、当該移動速度ベクトルを示すデータを更新してもよい。
【０３２３】
次に、情報処理部３１は、ゲーム装置１０のユーザによって発射操作が行われたか否かを判断する（ステップ７２）。例えば、情報処理部３１は、操作子データＤａ１を参照して、ユーザが所定の発射操作（例えば、ボタン１４Ｂ（Ａボタン）の押下）を行ったか否かを判断する。そして、情報処理部３１は、発射操作が行われた場合、次のステップ７３に処理を進める。一方、情報処理部３１は、発射操作が行われていない場合、次のステップ７４に処理を進める。
【０３２４】
ステップ７３において、情報処理部３１は、発射操作に応じて、仮想空間における仮想カメラの位置に弾オブジェクトＢＯを配置し、当該弾オブジェクトＢＯに対する移動速度ベクトルを設定して、次のステップ７４に処理を進める。例えば、情報処理部３１は、当該発射操作に対応する弾オブジェクトデータＤｇを生成する。そして、例えば、情報処理部３１は、仮想カメラデータＤｊに含まれる仮想カメラの配置位置や配置方向（視線方向）を示すデータを、生成した弾オブジェクトデータＤｇに含まれる弾オブジェクトＢＯの配置位置や配置方向を示すデータに格納する。また、例えば、情報処理部３１は、生成した弾オブジェクトデータＤｇに含まれる移動速度ベクトルを示すデータに任意の値を格納する。当該移動速度ベクトルを示すデータに格納する値は、メインメモリ３２に保持されている各種プログラム群Ｐａによって設定されてもよい。
【０３２５】
ステップ７４において、情報処理部３１は、敵オブジェクトＥＯと弾オブジェクトＢＯとが仮想空間内で接触したか否かを判断する。例えば、情報処理部３１は、敵オブジェクトデータＤｆに含まれる敵オブジェクトＥＯの配置位置を示すデータと、弾オブジェクトデータＤｇに含まれる弾オブジェクトＢＯの配置位置を示すデータとを比較して、敵オブジェクトＥＯと弾オブジェクトＢＯとが仮想空間内で接触したか否かを判断する。例えば、情報処理部３１は、敵オブジェクトＥＯの配置位置を示すデータと弾オブジェクトＢＯの配置位置を示すデータとが所定の条件を満たした場合、敵オブジェクトＥＯと弾オブジェクトＢＯとが接触したと判定する。また、そうではない場合、情報処理部３１は、敵オブジェクトＥＯと弾オブジェクトＢＯとが接触していないと判定する。なお、所定の条件とは、例えば、敵オブジェクトＥＯの配置位置と弾オブジェクトＢＯの配置位置との間の距離が所定の値よりも小さくなることである。当該所定の値は、例えば、敵オブジェクトＥＯの大きさに基づいた値であってもよい。
【０３２６】
そして、情報処理部３１は、敵オブジェクトＥＯと弾オブジェクトＢＯとが接触したと判定した場合、次のステップ７５に処理を進める。一方、情報処理部３１は、敵オブジェクトＥＯと弾オブジェクトＢＯとが接触していないと判定した場合、次のステップ７６に処理を進める。
【０３２７】
ステップ７５において、情報処理部３１は、加点処理を行って、次のステップ７６に処理を進める。例えば、上記加点処理においては、情報処理部３１は、得点データＤｈが示すゲームの得点を所定数だけ加点し、加点後の得点を用いて得点データＤｈを更新する。また、上記加点処理においては、情報処理部３１は、上記ステップ８４で接触したと判定された両者（すなわち、敵オブジェクトＥＯと弾オブジェクトＢＯ）を仮想空間から消滅させる処理（例えば、弾オブジェクトＢＯと接触した敵オブジェクトＥＯおよび敵オブジェクトＥＯに接触した弾オブジェクトＢＯに関するそれぞれの敵オブジェクトデータＤｅおよび弾オブジェクトデータＤｇを初期化し、当該敵オブジェクトＥＯおよび弾オブジェクトＢＯが仮想空間に存在しない状態にする）を行う。なお、当該加点処理における所定値は、任意の値でよく、例えば、メインメモリ３２に保持されている各種プログラム群Ｐａによって設定されてもよい。
【０３２８】
ステップ７６において、情報処理部３１は、弾オブジェクトＢＯが境界面３上の非開口領域に接触したか否かを判断する。例えば、情報処理部３１は、弾オブジェクトデータＤｇに含まれる弾オブジェクトＢＯの配置位置を示すデータと、開口判定用データとを用いて、弾オブジェクトＢＯが境界面３上の非開口領域に接触したか否かを判定する。
【０３２９】
例えば、情報処理部３１は、弾オブジェクトデータＤｇに含まれる弾オブジェクトＢＯの配置位置を示すデータが、上記敵オブジェクトＢＯの処理と同様に、境界面３の球体表面の条件式を満たすか否かを判定する。そして、情報処理部３１は、弾オブジェクトＢＯの配置位置を示すデータが、当該球体表面の条件式を満たさない場合、弾オブジェクトＢＯが境界面３上に接触していないと判定する。他方、弾オブジェクトＢＯの配置位置を示すデータが、境界面３の球体表面の条件式を満たす場合、弾オブジェクトＢＯは、仮想空間上、境界面３上に存在することになる。このとき、情報処理部３１は、例えば、当該弾オブジェクトＢＯが存在する境界面３上の位置に対応する位置を中心とした所定の領域について、開口判定用データのアルファ値を取得する。この所定の領域は、弾オブジェクトＢＯと境界面３との接触点を中心とした所定領域である。そして、当該所定領域の少なくとも一部に対応する開口判定用データのアルファ値が非開口領域に対応するアルファ値「１」である場合、弾オブジェクトＢＯが境界面３上の非開口領域に接触したと判定する。
【０３３０】
そして、情報処理部３１は、弾オブジェクトＢＯが境界面３上の非開口領域に接触したと判定した場合、次のステップ７７に処理を進める。一方、情報処理部３１は、弾オブジェクトＢＯが境界面３上の非開口領域に接触していないと判定した場合、次のステップ７８に処理を進める。
【０３３１】
ステップ７７において、情報処理部３１は、開口判定用データの更新処理を行って、次のステップ７８に処理を進める。例えば、上記更新処理においては、情報処理部３１は、境界面３の非開口領域と接触したと判定した弾オブジェクトＢＯの配置位置に対応する境界面３上の位置を中心とした所定領域の開口判定用データのアルファ値を非開口領域に対応するアルファ値「１」に更新する。この更新処理によって、弾オブジェクトＢＯが非開口領域に接触すると、接触点を中心とした所定領域内における開口判定用データのアルファ値が全て「１」に更新される。したがって、上記接触点をした中心とした所定領域内において開口判定用データのアルファ値が「０」に設定されている部分がある場合、当該部分における開口判定用データのアルファ値も「１」に更新されることになる。つまり、境界面３に設けられた開口のふちに弾オブジェクトＢＯが接触した場合、当該接触した位置を中心とした所定領域内に含まれる開口が非開口状態に修復されることになる。また、上記更新処理においては、情報処理部３１は、上記ステップ７６で接触したと判定された弾オブジェクトＢＯを仮想空間から消滅させる処理（例えば、境界面３上の非開口領域と接触した弾オブジェクトＢＯに関する弾オブジェクトデータＤｇを初期化し、当該弾オブジェクトＢＯが仮想空間に存在しない状態にする）を行う。なお、当該更新処理における所定領域は、任意の領域でよく、例えば、メインメモリ３２に保持されている各種プログラム群Ｐａによって設定されてもよい。
【０３３２】
ステップ７８において、情報処理部３１は、弾オブジェクトＢＯが仮想空間における所定の位置まで到達したか否かを判断する。所定の位置は、例えば、仮想空間上における奥壁ＢＷが存在する位置であってもよい。この場合、例えば、情報処理部３１は、弾オブジェクトデータＤｇに含まれる弾オブジェクトＢＯの配置位置を示すデータが奥壁ＢＷに衝突したか否かを判定する。
【０３３３】
そして、情報処理部３１は、弾オブジェクトＢＯが所定の位置まで到達した場合、次のステップ７７に処理を進める。一方、情報処理部３１は、弾オブジェクトＢＯが所定の位置まで到達していない場合、当該サブルーチンによる処理を終了する。
【０３３４】
ステップ７７において、情報処理部３１は、上記ステップ７６で所定の位置に到達したと判定された弾オブジェクトＢＯを仮想空間から消滅させる処理を行い、当該サブルーチンによる処理を終了する。例えば、情報処理部３１は、上記ステップ７６で所定の位置に到達したと判定された弾オブジェクトＢＯを仮想空間から消滅させる処理（例えば、当該弾オブジェクトＢＯに関する弾オブジェクトデータＤｇを初期化し、当該弾オブジェクトＢＯが仮想空間に存在しない状態にする）を行う。
【０３３５】
図２９に戻り、上記ステップ５４における弾オブジェクト関連処理の後、情報処理部３１は、ゲーム装置１０の動きを算出して（ステップ５５）、次のステップ５６に処理を進める。一例として、情報処理部３１は、角速度データＤａ２が示す角速度を用いて、ゲーム装置１０の動き（例えば、ゲーム装置１０に設けられた実カメラにおける撮像方向の変化）を算出し、当該動きを用いて動きデータＤｉを更新する。具体的には、ユーザが実空間においてゲーム装置１０に設けられた実カメラの撮像方向を変化させた場合、ゲーム装置１０全体の向きも変化するため、ゲーム装置１０に当該変化に応じた角速度が生じる。そして、ゲーム装置１０に生じた角速度を角速度センサ４０が検出することによって、当該角速度を示すデータが角速度データＤａ２に格納される。したがって、情報処理部３１は、角速度データＤａ２が示す角速度を用いることによって、ゲーム装置１０に設けられた実カメラの撮像方向が変化した方向や変化した量（角度）をゲーム装置１０の動きとして算出することが可能となる。
【０３３６】
次に、情報処理部３１は、ゲーム装置１０の動きに応じて仮想空間における仮想カメラの方向を変更し（ステップ５６）、次のステップ５７に処理を進める。例えば、情報処理部３１は、動きデータＤｉを用いて、実空間におけるゲーム装置１０の実カメラの撮像方向変化と同じ変化を、仮想空間における仮想カメラに与え、変化後の仮想カメラの位置や方向を用いて仮想カメラデータＤｊを更新する。一例として、実空間におけるゲーム装置１０の実カメラの撮像方向が左へＡ°変化した場合、仮想空間における仮想カメラの方向も左へＡ°変化させる。これによって、実空間内に配置されているように表示されている敵オブジェクトＥＯや弾オブジェクトＢＯは、実空間内におけるゲーム装置１０の方向や位置が変わっても実空間内における同じ位置に配置されているように表示される。
【０３３７】
次に、情報処理部３１は、表示画面の更新処理を行い（ステップ５７）、次のステップ５８に処理を進める。以下、図３２Ａおよび図３２Ｂを参照して、表示画面の更新処理について説明する。図３２Ａは、第１の描画方法における表示画面の更新処理である。また、図３２Ｂは、第２の描画方法における表示画面の更新処理である。
【０３３８】
まず、第１の描画方法における表示画面の更新処理について説明する。
【０３３９】
図３２Ａにおいて、情報処理部３１は、上記ステップ５２で取得した実カメラ画像を仮想カメラの視体積内におけるスクリーンオブジェクト（境界面３）に貼り付ける処理を行い（ステップ８１）、次のステップ８２に処理を進める。例えば、情報処理部３１は、上記ステップ５２で更新した実カメラ画像データＤｂを用いて、実世界画像データＤｃに含まれる実カメラ画像のテクスチャデータを更新する。そして、情報処理部３１は、仮想カメラデータＤｊに含まれる仮想カメラの仮想空間上の配置方向および配置位置を示すデータを用いて、仮想カメラの視線方向と境界面３の重なる点を求める。情報処理部３１は、求めた点を中心として実世界画像データＤｃに含まれる上記実カメラ画像のテクスチャデータを貼り付け、境界面データＤｄを更新する。このとき、情報処理部３１は、テクスチャデータを貼り付ける領域に設定されている開口判定用データを、テクスチャデータの各画素に対応する領域分取得する。そして、情報処理部３１は、取得した開口判定用データに設定されているアルファ値（「０」または「０．２」）を上記テクスチャデータに適用する。具体的には、情報処理部３１は、貼り付ける実カメラ画像のテクスチャデータの各画素の色情報と、開口判定用データの対応する位置におけるアルファ値とを掛け算する。この処理により、上述のとおり、実世界画像に開口が表現される。なお、開口判定用データに格納されるアルファ値「０．２」（非開口領域）は、上記掛け算の際は、上述のマテリアルとしてのアルファ値「１」として取り扱われる。また、本実施形態では、境界面３に貼り付けられる実カメラ画像のテクスチャデータは、仮想カメラＣ０の視野範囲よりも領域の広い画像データである。
【０３４０】
次に、情報処理部３１は、仮想空間をレンダリングする処理により表示画像を生成し（ステップ８２）、当該サブルーチンによる処理を終了する。例えば、情報処理部３１は、境界面３（スクリーンオブジェクト）、敵オブジェクトＥＯ、弾オブジェクトＥＯ、および奥壁ＢＷが配置されている仮想空間をレンダリングした画像を生成し、当該画像を用いてレンダリング画像データＤｋに含まれる仮想空間のレンダリング画像データを更新する。また、情報処理部３１は、仮想空間のレンダリング画像データを用いて表示画像データＤｌを更新する。以下、図３３および図３４を用いて、当該レンダリング処理の一例について説明する。
【０３４１】
図３３は、仮想空間上における、敵オブジェクトＥＯ、弾オブジェクトＢＯ、境界面３（開口判定用データが設定されたスクリーンオブジェクト）および奥壁ＢＷの配置例を示す。また、図３４は、図３３における仮想カメラＣ０が原点から（Ｘ，Ｙ，Ｚ）＝（０，０，１）方向に向いているとした場合における各オブジェクトの位置関係を示す。このように、敵オブジェクトＥＯ、弾オブジェクトＢＯ、境界面３および奥壁ＢＷが、それぞれ敵オブジェクトデータＤｆ、弾オブジェクトデータＤｇ、境界面データＤｄおよび奥壁画像データＤｅに含まれる配置位置を示すデータに応じて配置されている。また、仮想空間には、仮想空間をレンダリングするための仮想カメラＣ０が、仮想カメラデータＤｊに含まれる配置方向および配置位置を示すデータに応じて配置されている。
【０３４２】
情報処理部３１は、図３３（または図３４）に示されるとおり境界面３を含み、仮想空間に配置された敵オブジェクトＥＯ、弾オブジェクトＢＯ、奥壁ＢＷを仮想カメラＣ０により透視投影でレンダリングする。このとき、情報処理部３１は、描画の優先度情報を考慮する。通常の透視投影では、境界面３により、第２空間２に存在するオブジェクトは描画されない。本実施形態のゲームでは、境界面３（実世界画像）に開口部を設けて、その開口部から第２空間２の一部が見えるようにした。また、第２空間２にあるオブジェクトの影を実世界画像に合成して描画するようにした。こうすることによって、実世界画像の向こうにさらに仮想世界が存在しているかのような感覚をユーザに与えることができる。具体的には、情報処理部３１は、描画の優先度情報を用いて、当該レンダリング処理を行う。なお、本実施形態における画像処理プログラムは、当該描画の優先度の一例として、アルファ値を用いる。
【０３４３】
上記透視投影において、第２空間２に存在するオブジェクト（本実施形態では敵オブジェクトＥＯまたは奥壁ＢＷ）は、境界面３の背後に存在する。ここで、境界面３は、上述のステップ８１により実カメラ画像のテクスチャデータが仮想カメラＣ０の視野方向（視野範囲）に貼られたスクリーンオブジェクトである。また、上記のとおり、実カメラ画像のテクスチャデータには、各位置に対応する開口判定用データが適用されている。したがって、仮想カメラＣ０の視野範囲には、開口判定用データが適用された実世界画像が存在する。
【０３４４】
なお、本実施形態では、例えば、情報処理部３１は、開口判定用データにアルファ値「０」が格納された領域（開口領域）については、第２空間２のうち開口領域から見える領域に存在する仮想オブジェクトや奥壁ＢＷの画像を描画（レンダリング）する。また、情報処理部３１は、開口判定用データに非開口領域に対応するアルファ値「０．２」が格納された領域（非開口領域としてアルファ値「１」が格納された領域として取り扱われる領域）については、第２空間２に存在する仮想オブジェクトや奥壁ＢＷは描画されない。すなわち、表示される画像において当該領域に対応する部分には、上述のステップ８１により貼り付けられた実世界画像が描画されることになる。
【０３４５】
したがって、仮想カメラＣ０から見て開口判定用データに「０」が格納された領域については、実体データＤｆ１、または、奥壁画像データＤｅに含まれる画像データが描画されるようレンダリングされる。そして、上側ＬＣＤ２２上において当該領域に対応する部分には、仮想オブジェクトや奥壁ＢＷの画像が表示されることになる。
【０３４６】
また、仮想カメラＣ０から見て開口判定用データに非開口領域を示すアルファ値「０．２」が格納された領域（非開口領域としてアルファ値「１」が格納された領域として取り扱われる領域）については、第２空間２に存在する仮想オブジェクトや奥壁ＢＷは描画されない。すなわち、上側ＬＣＤ２２に表示される画像において当該領域に対応する部分には、実世界画像が描画されることになる。ただし、前述の第２空間２に存在する敵オブジェクトＥＯの影ＥＳ（シルエットモデル）については、境界面３との間のデプス判定を無効に設定されており、境界面３のアルファ値「０．２」よりもシルエットモデルのアルファ値「１」の方が大きいため、非開口領域を示すアルファ値「１」が格納されている領域（開口判定用データにアルファ値「０．２」が格納された領域）において描画される。これにより、実世界画像上に影ＥＳの画像が描画される。
【０３４７】
また、敵オブジェクトＥＯの影ＥＳ（シルエットモデル）は実体モデルに内包されるようなサイズでかつそのように配置され、かつ、敵オブジェクトＥＯの実体モデルと影ＥＳのシルエットモデルはデプス判定有効に設定される、敵オブジェクトＥＯが第１空間１に存在する場合、シルエットモデルは実体モデルに隠されるため描画されない。
【０３４８】
なお、本実施形態における境界面３の形状は図２０Ａに示すように球体表面の中央部であるため、仮想カメラＣ０の視線方向によっては、開口判定用データが存在しない。この場合、疑似的にアルファ値を「０．２」を格納した開口判定用データが存在するものとして、上記処理を行う。つまり、開口判定用データが存在しない領域は、非開口領域を示すアルファ値「１」が格納されている領域として取り扱われる。
【０３４９】
また、本実施形態における敵オブジェクトＥＯに対応する敵オブジェクトデータＤｆに含まれるシルエットデータＤｆ２は、複数の平面ポリゴンがその法線方向を敵オブジェクトＥＯから見て各放射方向となるように設定されており、各平面ポリゴンには、敵オブジェクトＥＯをその方向から見たシルエット画像のテクスチャが適用される。したがって、本実施形態における画像処理プログラムでは、仮想空間画像における敵オブジェクトＥＯの影は、第２空間２における敵オブジェクトＥＯの向きが反映された画像として表現される。
【０３５０】
また、情報処理部３１は、照準カーソル画像データＤｍに含まれる画像データを仮想カメラＣ０の視野の中心（レンダリングする画像の中心）に優先して描画されるように上記レンダリング処理を行う。
【０３５１】
以上の処理によって、情報処理部３１は、仮想空間に配置された敵オブジェクトＥＯ、弾オブジェクトＢＯ、および奥壁ＢＷを透視投影でレンダリングし、仮想カメラＣ０から見た仮想世界画像（照準カーソルＡＬを含んだ画像）を生成し、仮想空間のレンダリング画像データを更新する（ステップ８２）。そして、更新した仮想空間のレンダリング画像データを用いて、表示画像データＤｌを更新する。
【０３５２】
次に、第２の描画方法における表示画面の更新処理について説明する。
【０３５３】
図３２Ｂにおいて、情報処理部３１は、上記ステップ５２で取得した実カメラ画像をレンダリングする処理を行い（ステップ８３）、次のステップ８４に処理を進める。例えば、情報処理部３１は、上記ステップ５２で更新した実カメラ画像データＤｂを用いて、実世界画像データＤｃに含まれる実カメラ画像のテクスチャデータを更新する。そして、情報処理部３１は、更新した実世界画像データＤｃを用いて、実カメラ画像をレンダリングした画像を生成し、生成した画像を用いて、レンダリング画像データＤｋに含まれる実カメラ画像のレンダリング画像データを更新する。以下、図３５および図３６を用いて実カメラ画像をレンダリングする処理例について説明する。
【０３５４】
本実施形態において情報処理部３１は、図３５に示すように、ゲーム装置１０の実カメラから得られた実カメラ画像をテクスチャに設定し、当該テクスチャがマッピングされた平面ポリゴンを生成する。そして、情報処理部３１は、実世界画像描画用カメラＣ１から、平行投影で上記平面ポリゴンをレンダリングした画像を実世界画像として生成する。ここで、上側ＬＣＤ２２の表示画面全面に、ゲーム装置１０の実カメラから得られた実カメラ画像全面が表示される場合の実世界画像生成方法の一例について説明する。なお、本実施形態では上側ＬＣＤ２２の表示画面全体に本実施形態の合成画像（実世界画像と仮想世界画像との合成画像）が表示されるようにしたが、上側ＬＣＤ２２の表示画面の一部領域に合成画像が表示されるようにしてもよい。この場合には、この合成画像全体に実カメラ画像全体が表示されるようにする。
【０３５５】
まず、上記平面ポリゴンを配置する仮想空間の座標の１単位に対して、ｉピクセルのテクスチャをマッピングする平面ポリゴンを考える。この場合、上記座標の１単位×１単位の領域に対して、ｉピクセル×ｉピクセルのテクスチャがマッピングされることになる。ここで、上側ＬＣＤ２２の表示画面が横Ｗｄｏｔ×縦Ｈｄｏｔであって、Ｗｄｏｔ×Ｈｄｏｔの表示画面全面と上記実カメラ画像のテクスチャ全面とが対応しているとする。つまり、カメラ画像のテクスチャデータのサイズが横Ｗピクセル×縦Ｈピクセルであるとする。
【０３５６】
この場合、当該表示画面の１ｄｏｔ×１ｄｏｔと上記実カメラ画像のテクスチャ１ピクセル×１ピクセルとが対応するように平面ポリゴンを配置することを考えればよく、図３６に示すように上記座標を定めればよい。すなわち、上記カメラ画像のテクスチャが主面全面にマッピングされた平面ポリゴンの幅がＷ／ｉ座標分となり、平面ポリゴンの縦がＨ／ｉ座標分となるように、当該平面ポリゴンを配置する仮想空間のＸＹ座標を設定する。そして、上記テクスチャがマッピングされた平面ポリゴンの主面中心を仮想空間のＸＹ座標の原点に一致させ、当該平面ポリゴンの横方向がＸ軸方向（右方向がＸ軸正方向）となり、当該平面ポリゴンの縦方向がＹ軸方向（上方向がＹ軸正方向）となるように当該平面ポリゴンを配置する。この場合、上記テクスチャがマッピングされた平面ポリゴンの主面における右上角位置が（Ｘ，Ｙ）＝（Ｗ／２ｉ，Ｈ／２ｉ）に配置され、右下角位置が（Ｘ，Ｙ）＝（Ｗ／２ｉ，−Ｈ／２ｉ）に配置され、左上角位置が（Ｘ，Ｙ）＝（−Ｗ／２ｉ，Ｈ／２ｉ）に配置され、左下角位置が（Ｘ，Ｙ）＝（−Ｗ／２ｉ，−Ｈ／２ｉ）に配置されることになる。
【０３５７】
このように配置すれば、上記座標の１単位×１単位の領域が、テクスチャのｉピクセル×ｉピクセルの領域に対応するため、平面ポリゴンの横（Ｗ／ｉ）×縦（Ｈ／ｉ）の領域は、テクスチャのＷピクセル×Ｈピクセルのサイズに対応する。
【０３５８】
以上のとおり、表示画面上の１ｄｏｔと実カメラ画像（テクスチャ）の１ピクセルとが対応するように、仮想空間の座標に配置された平面ポリゴンを平行投影でレンダリングすることによって、ゲーム装置１０の実カメラから得られた実カメラ画像に対応する実世界画像が生成される。
【０３５９】
なお、上述のとおり、実世界画像データＤｃに含まれる実カメラ画像のテクスチャデータは、実カメラ画像データＤｂによって更新されるが、実カメラ画像データＤｂの画像の横Ａ×縦Ｂのサイズと当該テクスチャデータの横Ｗ×縦Ｈのサイズが一致しない場合が存在する。この場合、情報処理部３１は、任意の方法で、当該テクスチャデータの更新を行う。例えば、情報処理部３１は、Ｗ×Ｈサイズの画像（テクスチャデータの画像）に合うように、実カメラ画像データＤｂの画像の横Ａおよび縦Ｂのサイズを拡大および縮小した画像を用いて、テクスチャデータを更新してもよい。また、例えば、実カメラ画像データＤｂの画像の横Ａおよび縦Ｂのサイズが、テクスチャデータの横Ｗおよび縦Ｈのサイズよりも大きいとする。この場合、例えば、情報処理部３１は、実カメラ画像データＤｂの画像の所定位置より、Ｗ×Ｈサイズの画像（テクスチャデータの画像）を切り出し、当該テクスチャデータを更新してもよい。また、例えば、実カメラ画像データＤｂの画像の横Ａおよび縦Ｂのサイズの少なくともどちらか一方が、テクスチャデータの横Ｗおよび縦Ｈのサイズよりも小さいとする。この場合、例えば、情報処理部３１は、実カメラ画像データＤｂの画像をテクスチャデータのサイズよりも大きくなるように拡大した後、拡大後の画像の所定の位置より、Ｗ×Ｈサイズの画像（テクスチャデータの画像）を切り出し、当該テクスチャデータを更新してもよい。
【０３６０】
また、本実施形態において、上側ＬＣＤ２２の表示画面の横×縦のサイズと、実カメラ画像のテクスチャデータの横×縦のサイズとが一致しているが、これらは一致していなくともよい。この場合、上側ＬＣＤ２２の表示画面と実世界画像のサイズが一致しないことになるが、情報処理部３１は、上側ＬＣＤ２２の表示画面に実世界画像を表示する際、周知の方法で、実世界画像のサイズを変更すればよい。
【０３６１】
次に、情報処理部３１は、図３２Ｂに示されるとおり、仮想空間をレンダリングする処理を行い（ステップ８４）、次のステップ８５に処理を進める。例えば、情報処理部３１は、開口判定用データを考慮して、敵オブジェクトＥＯ、弾オブジェクトＢＯ、および奥壁ＢＷが配置されている仮想空間をレンダリングした画像を生成し、当該画像を用いて、レンダリング画像データＤｋに含まれる仮想空間のレンダリング画像データを更新する。以下、図３７〜図３９を用いて、当該レンダリング処理の一例について説明する。
【０３６２】
図３７は、仮想空間上における、敵オブジェクトＥＯ、弾オブジェクトＢＯ、境界面３（開口判定用データ）および奥壁ＢＷの配置例を示す。また、図３８は、図３７における仮想カメラ（仮想世界描画用カメラ）が原点から（Ｘ，Ｙ，Ｚ）＝（０，０，−１）方向に向いているとした場合における各オブジェクトの位置関係を示す。このように、敵オブジェクトＥＯ、弾オブジェクトＢＯ、境界面３および奥壁ＢＷが、それぞれ敵オブジェクトデータＤｆ、弾オブジェクトデータＤｇ、境界面データＤｄおよび奥壁画像データＤｅに含まれる配置位置を示すデータに応じて配置されているとする。また、仮想空間には、仮想空間をレンダリングするための仮想世界描画用カメラＣ２が、仮想カメラデータＤｊに含まれる配置方向および配置位置を示すデータに応じて配置されている。
【０３６３】
ここでまず、境界面３（開口判定用データ）の位置について説明する。上述したとおり、本実施形態における画像処理プログラムでは、開口判定用データと実世界画像（実カメラ画像のレンダリング画像データ）の色情報とが掛け算されることで、開口が付与された実画像が生成される。したがって、例えば、実カメラ画像のレンダリング画像データ（図３５および図３６の平面ポリゴンの位置関係を参照）の横１座標×縦１座標と、仮想空間における境界面３（具体的には、開口判定用データ）の横１座標×縦１座標とが対応しているとする。つまり、図３７または図３８に示す仮想世界描画用カメラＣ２から境界面３を透視投影により見たときに、仮想世界描画用カメラＣ２による境界面３の視野範囲が実カメラ画像のレンダリング画像データの横×縦のサイズに対応しているものとする。
【０３６４】
図３９は、仮想世界描画用カメラＣ２を境界面３との位置関係の例を示す。原点から（Ｘ，Ｙ，Ｚ）＝（０，０，−１）方向に向いた仮想世界描画用カメラＣ２により境界面３を透視投影することを考える。この場合、図３９に示すＺ＝Ｚ０の位置に境界面３が配置されているとすれば、開口判定用データの横１座標×縦１座標と実カメラ画像のレンダリング画像データの横１座標×縦１座標とが対応することになる。ここで、Ｚ＝Ｚ０の位置は、境界面３を透視投影する仮想世界描画用カメラＣ２のＹ軸方向の画角をθとした場合に、仮想世界描画用カメラＣ２の注視点からＹ軸正方向への表示範囲の長さＨ／２ｉとなる位置である。なお、上述したように、Ｈは上側ＬＣＤ２２の表示画面における縦のドット数であり、ｉは仮想空間の座標の１単位に対してマッピングするテクスチャのピクセル数である。そして、仮想世界描画用カメラＣ２の中心からＺ＝Ｚ０の位置までの距離をＤ（Ｄ＞０）とすると、以下の数１が成立する。
【０３６５】
ｔａｎθ＝（Ｈ／２ｉ）／Ｄ＝Ｈ／２Ｄｉ
したがって、境界面３を考慮して、後述する敵オブジェクトＥＯ等を透視投影して仮想世界画像を生成する場合、当該仮想世界画像を生成する仮想世界描画用カメラＣ２は「Ｙ軸方向の画角θ＝ｔａｎ−１（Ｈ／２Ｄｉ）、アスペクト比＝Ｗ：Ｈ」と設定される。そして、境界面３（具体的には境界面３の状態を示す開口判定用データ）は、仮想世界描画用カメラＣ２からのビュー座標Ｚ＝Ｚ０に配置される。これにより、仮想世界描画用カメラＣ２による境界面３の視野範囲が大きさＷ×Ｈとなる。
【０３６６】
次に、仮想空間のレンダリング処理について説明する。以上の位置に境界面３が存在するものとして、情報処理部３１は、仮想空間をレンダリングした画像を生成する。情報処理部３１は、後に実世界画像を合成することを考慮して、当該レンダリング処理を行う。以下、当該レンダリング処理の一例を具体的に説明する。
【０３６７】
情報処理部３１は、図３７（または図３８）に示されるとおり境界面３が存在しているものとして、仮想空間に配置された敵オブジェクトＥＯ、弾オブジェクトＢＯ、奥壁ＢＷを仮想世界描画用カメラＣ２により透視投影でレンダリングする。このとき、情報処理部３１は、描画の優先度情報を考慮する。通常の透視投影では、仮想空間上において仮想カメラから見て手前にあるオブジェクトが優先的に描画されるようにレンダリングされる。したがって、通常の透視投影では、境界面３が存在するため、第２空間２にあるオブジェクトは描画されないことになる。本実施形態のゲームでは、境界面３（実世界画像）に開口部を設けて、その開口部から第２空間２の一部が見えるようにした。また、第２空間２にあるオブジェクトの影を実世界画像に合成して描画するようにした。こうすることによって、実世界画像の向こうにさらに仮想世界が存在しているかのような感覚をユーザに与えることができる。具体的には、情報処理部３１は、描画の優先度情報を用いて、当該レンダリング処理を行う。なお、本実施形態における画像処理プログラムは、当該描画の優先度情報の一例として、アルファ値を用いる。
【０３６８】
上記透視投影において、第２空間２に存在するオブジェクト（本実施形態では敵オブジェクトＥＯまたは奥壁ＢＷ）は、境界面３の背後に存在する。ここで、境界面３には、開口判定用データが設定されている。開口判定用データは、上述のとおり、アルファ値を格納した矩形のテクスチャデータであり、テクスチャデータ上の各座標は、仮想空間の境界面の各位置に対応する。したがって、情報処理部３１は、仮想世界描画用カメラＣ２による第２空間２に存在するオブジェクトの視野範囲に対応する開口判定用データの領域を特定することができる。
【０３６９】
なお、本実施形態では、例えば、情報処理部３１は、開口判定用データにアルファ値「０」が格納された領域（開口領域）については、第２空間２のうち開口領域から見える領域に存在する仮想オブジェクトや奥壁の画像を描画（レンダリング）する。また、情報処理部３１は、開口判定用データに非開口領域に対応するアルファ値「０．２」が格納された領域（非開口領域としてアルファ値「１」が格納された領域として取り扱われる領域）については、第２空間２に存在する仮想オブジェクトや奥壁は描画されない。すなわち、表示される画像において当該領域に対応する部分には、後述のステップ８５の合成処理により、実世界画像が描画されることになる。
【０３７０】
したがって、仮想世界描画用カメラＣ２から見て開口判定用データに「０」が格納された領域については、実体データＤｆ１、または、奥壁画像データＤｅに含まれる画像データが描画されるようレンダリングされる。そして、後述のステップＳ８５の合成処理により、上側ＬＣＤ２２上において当該領域に対応する部分には、仮想オブジェクト・奥壁の画像が表示されることになる。
【０３７１】
また、仮想世界描画用カメラＣ２から見て開口判定用データに非開口領域を示すアルファ値「０．２」が格納された領域（非開口領域としてアルファ値「１」が格納された領域として取り扱われる領域）については、第２空間２に存在する仮想オブジェクトや奥壁は描画されない。すなわち、上側ＬＣＤ２２に表示される画像において当該領域に対応する部分には、後述のステップ８５の合成処理により、実世界画像が描画されることになる。ただし、前述の敵オブジェクトＥＯの影ＥＳ（シルエットモデル）については、境界面３との間のデプス判定を無効に設定されており、境界面３のアルファ値「０．２」よりもシルエットモデルのアルファ値「１」の方が大きいため、非開口領域を示すアルファ値「１」が格納されている領域において描画される。これにより、実世界画像上に敵オブジェクトＥＯの影ＥＳが描画される。また、敵オブジェクトＥＯのシルエットモデルは実体モデルに内包されるようなサイズでかつそのように配置され、かつ、敵オブジェクトＥＯの実体モデルとシルエットモデルはデプス判定有効に設定される、敵オブジェクトＥＯが第１空間１に存在する場合、シルエットモデルは実体モデルに隠されるため描画されない。
【０３７２】
なお、本実施形態における境界面３の形状は図２０Ａに示すように球体表面の中央部であるため、仮想世界描画用カメラＣ２の視野方向によっては、開口判定用データが存在しない。この場合、疑似的にアルファ値を「０．２」を格納した開口判定用データが存在するものとして、上記処理を行う。つまり、開口判定用データが存在しない領域は、非開口領域を示すアルファ値「１」が格納されている領域として取り扱われる。
【０３７３】
なお、本実施形態における敵オブジェクトＥＯに対応する敵オブジェクトデータＤｆに含まれるシルエットデータＤｆ２は、複数の平面ポリゴンがその法線方向を敵オブジェクトから見て各放射方向となるように設定されており、各平面ポリゴンには、敵オブジェクトをその方向から見たシルエット画像のテクスチャが適用される。したがって、本実施形態における画像処理プログラムでは、仮想空間画像における敵オブジェクトＥＯの影ＥＳは、第２空間２における敵オブジェクトの向きが反映された画像として表現される。
【０３７４】
以上の処理によって、情報処理部３１は、仮想空間に配置された敵オブジェクトＥＯ、弾オブジェクトＢＯ、および奥壁ＢＷを透視投影でレンダリングし、仮想世界描画用カメラＣ２から見た仮想世界画像を生成し、仮想空間のレンダリング画像データを更新する（図３２Ｂのステップ８４）。なお、当該処理によって生成される画像は、図４０に示される表示画像から実世界画像を除いた画像である。
【０３７５】
次に、情報処理部３１は、実世界画像と仮想空間画像とを合成した表示画像を生成し（ステップ８５）、当該サブルーチンによる処理を終了する。
【０３７６】
例えば、情報処理部３１は、実カメラ画像のレンダリング画像データと仮想空間のレンダリング画像とを、仮想空間のレンダリング画像を優先して、合成することによって、実世界画像と仮想空間画像とが合成された画像を生成する。そして、情報処理部３１は、当該合成画像の中心（仮想世界描画用カメラＣ２の視野の中心）に、照準カーソル画像データに含まれる画像データを優先して合成することによって表示画像（図４０）を生成する。図４０は、第１の描画方法または第２の描画方法により生成される表示画像の一例を示す。なお、情報処理部３１は、仮想空間のレンダリング画像データに仮想空間画像が格納されていない場合、カメラ画像のレンダリング画像データに格納される実世界画像をそのまま表示画像データＤｌに格納すればよい。
【０３７７】
以上により、第１の描画方法または第２の描画方法により表示画像の更新に関する処理（サブルーチン）が完了する。
【０３７８】
図２９に戻り、上記ステップ５７における表示画像の更新に関する処理の後、情報処理部３１は、更新した表示画像を上側ＬＣＤ２２に表示して（ステップ５８）、次のステップ５９に処理を進める。例えば、情報処理部３１のＣＰＵ３１１は、上記ステップ５７により更新された表示画像データＤｌ（表示画像）をＶＲＡＭ３１３に格納する。そして、情報処理部３１のＧＰＵ３１２が、ＶＲＡＭ３１３に描画された表示画像を上側ＬＣＤ２２に出力することによって、上側ＬＣＤ２２に当該表示画像が表示される。
【０３７９】
次に、情報処理部３１は、ゲームを終了するか否かを判断する（ステップ５９）。ゲームを終了する条件としては、例えば、上記の所定の条件（ゲームクリアまたはゲームオーバー）が満たされたことや、ユーザがゲームを終了する操作を行ったこと等がある。情報処理部３１は、ゲームを終了しない場合、上記ステップ５２に戻って処理を繰り返す。一方、情報処理部３１は、ゲームを終了する場合、当該フローチャートによる処理を終了する。
【０３８０】
＜第１の実施形態に係る画像処理の作用および効果＞
以上述べたように、本実施形態に係る画像処理プログラムでは、図１５および図１６の処理で例示したように、顔画像取得処理で取得された顔画像は、ユーザがゲーム（第１のゲーム）で成功するまでは、ユーザに解放されない。すなわち、ゲームで成功するまでは、ユーザは、取得された顔画像をゲームのセーブデータ記憶域Ｄｏに保存できない。また、ユーザは、取得された顔画像を複製、変更、転送等することができない。逆に、ゲーム不成功の状態で、ゲームの再試行をやめると、取得されていた顔画像が廃棄されて、処理が終了する。また、第１のゲームの処理の仕方、例えば、実行モード、あるいは、仕様によっては、第１のゲームの結果が不成功となると、直ちに、顔画像が廃棄されて、処理が終了する。したがって、取得された顔画像が引き渡されるまで、つまり顔画像がセーブデータ記憶域Ｄｏに保存されるまで、ユーザは、ゲームに執着し、熱意を持って成功を目指すようになる。すなわち、本実施形態の画像処理プログラムによれば、ユーザが極めて真剣にゲームに取り組むことができる。
【０３８１】
また、ゲームの開始時のユーザのＧＵＩに対する操作として、「内側撮像部２４による顔画像の取得」が指示され（図１４のステップ９でＹｅｓの場合）、顔画像取得処理１（図１４のステップ１０）が実行されると、以下のような効果も期待できる。すなわち、ゲーム開始するとき（典型的には、第１のゲームを開始する前）に、内側撮像部２４を用いて撮像することで顔画像を取得すると、撮像毎に異なる顔画像が得られる。このため、例えば、他の装置に記憶されている特定の画像を選択して、選択した画像をゲームで用いる場合と比較して、ゲーム成功への意欲が増すことになる。また、外側撮像部２３による顔画像取得処理２（図１４のステップ１２）の場合にも、同様の効果が期待できる。ゲーム開始するとき（典型的には、第１のゲームを開始する前）に、外側撮像部２３を用いて撮像することで顔画像を取得しても、撮像毎に異なる顔画像が得られるからである。
【０３８２】
また、本実施形態に係る画像処理プログラムによれば、上記第１のゲームに成功することで、セーブデータ記憶域Ｄｏに、ユーザ自身の顔画像、ユーザの周りの人の顔画像、ビデオ機器で得られた画像中の顔画像、ユーザの保有する生物の顔画像等、様々な顔画像を収集することができる。ゲーム装置１０は、収集した顔画像を例えば、図７および図８のような画面に表示することができる。そして、ゲーム装置１０は、例えば、図８のような画面では、選択状態にある顔画像と関連の顔画像が反応を示す状態を表現できる。反応は、例えば、選択状態にある顔画像に向かって片目をつぶり、視線を送る、顔を向ける等である。したがって、ゲーム装置１０は、ゲーム装置１０内に収集した顔画像による仮想現実の世界に、実世界の人間関係、親密さ等に基づく関係を表現できる。その結果、顔画像を収集したユーザに、顔画像による仮想現実の世界への親近感、収集した顔画像に対する親しみ、実世界の人、あるいは生物に対する感情と同様の感情等を引き起こさせることができる。
【０３８３】
また、本実施形態の画像処理プログラムによれば、収集した顔画像を敵オブジェクトＥＯの顔面部分にテクスチャマッピングすることによって、敵オブジェクトＥＯを生成し、ゲームを実行できる。ユーザは、ゲームに登場する敵オブジェクトＥＯに、収集した顔画像を貼り付けることで、いわば、配役を自由に決定できる。したがって、ユーザは、ゲームの実行時、敵オブジェクトＥＯの顔から得られる効果によって、ますます、ゲームに熱中する可能性を高めることができる。
【０３８４】
さらに、本実施形態の画像処理プログラムによれば、敵オブジェクトＥＯを生成する際にも、敵オブジェクトＥＯに貼り付けるために、顔画像が選択状態になったときに、選択状態になった顔画像に関連する顔画像が反応を示す。したがって、敵オブジェクトＥＯの配役を決定するユーザに、仮想現実の世界への親近感、一覧表示された顔画像に対する親しみ、実世界の人に対する感情と同様の感情等を引き起こさせることができる。
【０３８５】
なお、上記第１の実施形態では、敵オブジェクトＥＯに顔画像を貼り付けることで、敵オブジェクトＥＯを生成した。しかし、このような処理は、敵オブジェクトＥＯの生成に限定される訳ではなく、ゲームに登場するキャラクタオブジェクト一般の生成に適用できる。例えば、ゲーム装置１０の操作、あるいはゲームの進行をガイドするエージェントなどに、ユーザが取得した顔画像を貼り付けるようにしてもよい。また、ゲーム装置１０に登場する、ユーザ自身を模擬したキャラクタオブジェクト、ユーザと友好的な関係でゲームに登場するキャラクタオブジェクト、ゲーム装置の持ち主を表すキャラクタオブジェクト等に、ユーザが取得した顔画像を貼り付けるようにしてもよい。
【０３８６】
上記では、顔画像として人の顔を想定したが、本発明の実施は、人の顔画像に限定されるものではなく、動物の顔画像にも適用できる。例えば、犬、猫、馬等のほ乳類、鳥類、魚類、は虫類、両生類、昆虫等、様々な動物の顔画像を取得のために、上記第１の実施形態で説明した顔画像取得処理を実行し、顔画像を収集してもよい。例えば、ゲーム装置１０によれば、図８の画面において人と人との関係で例示したように、選択状態にある人に対して、小鳥がさえずり、あるいは、犬が吠え、猫が視線を向けるというように、実世界の人と動物との関係を表現できる。逆に、ペットと主人の関係において、ペットの顔画像が選択状態にされたときに、主人とその家族に相当する顔画像が微笑む、あるいは、視線をペットの方に向けるというように、ゲーム装置１０は、実世界の感情、意識、関係を仮想世界の中に反映することできる。そして、配役決定処理により、敵オブジェクトＥＯ、その他のキャラクタオブジェクトに収集した顔を貼り付けることによって、実世界の関係をユーザに意識させつつゲームを実行させることができる。
【０３８７】
なお、ペットと主人の関係、主人とその家族の関係等は、ＵＩＦ（ユーザインターフェイス）を通じて、顔画像管理情報Ｄｎ１によって定義し、顔画像間の関係として、参照できるようにしておけばよい。単純に、好き、嫌い等の感情、好きな人のペット、嫌いな人のペットなどの感情の善し悪しを定義できるようにしておけばよい。また、例えば、主人の顔画像でのゲームの結果が成功であったときに、ゲームのセーブデータ記憶域Ｄｏに保存できた動物の顔画像は、その主人と親密な関係にあるとの設定が、顔画像管理情報Ｄｎ１に記録できるようにしてもよい。ゲーム装置１０によれば、ユーザは、以上のようにして収集した様々の顔画像を基に、キャラクタオブジェクトを生成、実世界の意識を反映したゲームを実行できるのである。
【０３８８】
また、本実施形態に係る画像処理プログラムでは、図１６に示したように、２つの外側撮像部２３（外側左撮像部２３ａおよび外側右撮像部２３ｂ）よりも先に内側撮像部２４による撮像によって顔画像を取得するように、ユーザを誘導する。内側撮像部２４は、主として、ゲーム装置１０を操作するユーザを撮像するものであるため、ユーザ以外の人の撮像には使用しづらい。また、内側撮像部２４は、主として、ゲーム装置１０を操作するユーザを撮像するものであるため、持ち主の撮像に適する。したがって、この処理によれば、ゲーム装置１０のユーザあるいは持ち主が誰もゲーム装置１０に顔画像を保存しない状態での外側撮像部２３の使用を禁止する効果がある。したがって、例えば、持ち主の特定されないゲーム装置１０、あるいは、ユーザの特定されないゲーム装置１０を第三者が用いて画像を撮像することを禁止する可能性を高めることができる。
【０３８９】
また、本実施形態に係る画像処理プログラムでは、図１９Ａ−図１９Ｃに示したように、情報処理部３１は、未取得の属性に該当する顔画像を優先して撮像をするように、ユーザを誘導する。このような処理によって、極力、属性の偏りのない顔画像取得を望むユーザの顔画像収集処理を支援することができる。
【０３９０】
また、本実施形態に係る画像処理プログラムでは、実カメラから得られた実世界画像と、当該実世界画像の背後に存在するオブジェクトを含む仮想空間画像とが合成されて表示される。
【０３９１】
したがって、本実施形態に係る画像処理プログラムは、実世界の画像を用いた背景に非現実を表す描画を行うことでユーザの興味を引くことができる画像を生成することができる。
【０３９２】
また、当該合成されて表示される画像における当該実世界画像の背後に存在するオブジェクト（例えば、第２空間２に存在する敵オブジェクトＥＯ）は、実世界画像（境界面３）に開口が存在する領域においては、実像が表示される。また、当該オブジェクトは、実世界画像に開口が存在しない領域においては、影画像が表示される（図２４参照）。さらに、当該実像および影画像は、当該オブジェクトの仮想空間上における配置方向または、移動方向に応じた向きに対応する画像である。
【０３９３】
したがって、本実施形態に係る画像処理プログラムは、実世界画像のさらに背後に存在するオブジェクトの数や移動方向等の動向をユーザが認識することができる画像を生成することができる。
【０３９４】
また、本実施形態に係る画像処理プログラムでは、奥壁ＢＷの画像データとして、宇宙の画像等の非現実空間の画像が用いられ得る。当該非現実空間の画像は、実世界画像の開口を通して視認され得る。当該開口は、仮想空間上の位置が特定される。そして、実カメラの向きと仮想カメラの向きは対応づけられている。
【０３９５】
したがって、本実施形態に係る画像処理プログラムは、実カメラの向きに応じた位置に開口を設けることができ、実世界画像の同じ位置に開口を表現することができる。すなわち、本実施形態に係る画像処理プログラムは、実カメラの向きを変えても現実空間の同じ位置に開口が表現されるため、現実空間と非現実空間とが繋がったかのごとくユーザに認識させる画像を生成することができる。
【０３９６】
また、開口が表現された実世界画像は、実カメラから得られる実世界画像とアルファ値との掛け算によって生成される。
【０３９７】
したがって、本実施形態に係る画像処理プログラムは、簡便な方法で開口を表現および生成することができる。
【０３９８】
また、敵オブジェクトＥＯが境界面３を通過することにより生成する実世界画像の開口は、敵オブジェクトデータＤｆに含まれる開口形状データＤｆ３を開口判定用データの所定の位置に掛け算することで生成される。
【０３９９】
したがって、本実施形態に係る画像処理プログラムは、簡便な方法で衝突したキャラクタの形状に対応した開口を設定することができる。
【０４００】
また、本実施形態に係る画像処理プログラムでは、アルファ値の比較によって、影画像の描画を実現することができる。また、シルエットデータＤｆ２に設定されたアルファ値の変更によって、影画像の描画のオンまたはオフを切り替えることができる。
【０４０１】
したがって、本実施形態に係る画像処理プログラムは、影画像の描画をＧＰＵに任せることができ、また、影の表示または非表示を単純な操作で切り替えることができる。
【０４０２】
（第２の実施形態）
以下、図４１および図４２を参照して、本発明の第２の実施形態に係る画像処理プログラムを実行する画像処理装置について説明する。第１の実施形態では、顔画像取得処理１（図１４のステップ１０）および顔画像取得処理２（図１４のステップ１２）において、第１のゲームが実行され、ユーザが第１のゲームで成功した場合に、ゲーム装置１０は、顔画像取得処理１および顔画像取得処理２で取得した画像をセーブデータ記憶域Ｄｏに格納することを許容する。そして、ユーザは、第１のゲームに成功すれば、同様の処理で取得した顔画像を順次、セーブデータ記憶域Ｄｏに追加していくことができる。そして、ゲーム装置１０は、セーブデータ記憶域Ｄｏに収集された顔画像から、例えば、ユーザの操作にしたがって、あるいは、自動的に、敵オブジェクトＥＯ等のキャラクタオブジェクトを作成する。そして、ゲーム装置１０は、ユーザに対して、ユーザが収集した顔画像を基に作成されたキャラクタオブジェクトを第１のゲーム（図１５のステップ１０６、図１６のステップ１２９）、あるいは、第２のゲーム（図１４のステップ１８）等に登場させ、ユーザに、実世界の人間関係等を反映した仮想世界を提供する。したがって、ユーザは、そのような実世界を反映した仮想世界で、例えば、図２０Ａ−図２６に示したようなゲームを実行し、楽しむことができる。本実施形態では、そのような実世界を反映した仮想世界での他のゲーム処理の例を説明する。本実施形態のゲームも、第１の実施形態と同様、ゲーム装置１０の情報処理部３１が、メインメモリ３２に展開された画像処理プログラムを実行することで、ユーザに提供される。また、本実施形態のゲームは、第１の実施形態のゲームと同様、例えば、図１４に示したステップ１０による顔画像取得処理１およびステップ１２による顔画像取得処理２のための第１のゲーム（図１５のステップ１０６、図１６のステップ１２９）として実行してもよい。また、本実施形態のゲームは、例えば、第２のゲーム（図１４に示したステップ１８）と同様、顔画像が収集され、ゲームのセーブデータ記憶域Ｄｏに蓄積されていることを前提として実行されるようにしてもよい。
【０４０３】
図４１は、本実施形態に係るゲーム装置１０の上側ＬＣＤ２２に表示される画面の例である。この画面の作成手順は、上記第１の実施形態と同様である。すなわち、ユーザは、例えば、ゲーム装置１０の下側ハウジング１１と上側ハウジング２１とを開状態として、図４のように、下側ハウジング１１を両手に持つ場合を想定する。このとき、ユーザは、上側ＬＣＤ２２の表示画面を見ることができる。そして、この状態では、外側撮像部２３は、例えば、ユーザの視線前方の空間を撮像することが可能である。本実施形態のゲームの実行中、ゲーム装置１０は、画面の背景に、外側撮像部２３が撮像した画像を写し出す。より具体的には、情報処理部３１は、外側撮像部２３が撮像した画像をフレーム単位で、ゲームの画面の背景部分にテクスチャマッピングしている。ユーザがゲーム装置１０を手に持って方向を変えると、変化後の外側撮像部２３の視線方向から外側撮像部２３を通じて取得された画像がゲームの背景に表示されることになる。すなわち、図４１の画面の背景には、ユーザがゲーム装置１０の外側撮像部２３を向けた方向から取得された画像が埋め込まれる。
【０４０４】
さらに、この画面では、上記背景に対して、例えば、図１０の画面例、および図１８の配役決定処理で説明した手順にしたがって作成された敵オブジェクトＥＯ１が表示されている。敵オブジェクトＥＯ１の顔面部分には、図１８の配役決定処理で選択された顔画像がテクスチャマッピングされて表示されている。なお、敵オブジェクトＥＯ１の顔面部は、必ずしもテクスチャマッピングによって形成しなくてもよく、単に、図９に示した敵オブジェクトＥＯの頭部形状の周辺部分Ｈ１３と顔画像とを組み合わせることで、敵オブジェクトＥＯ１を表示するようにしてもよい。そこで、以下では、敵オブジェクトの顔面部分に、顔画像が貼り付けられている、という記述する。
【０４０５】
さらに、図４１では、敵オブジェクトＥＯ１の周りに、敵オブジェクトＥＯ１よりも形状の小さい敵オブジェクトＥＯ２−ＥＯ７が表示されている。このように、図４１の画面では、敵オブジェクトＥＯ１−ＥＯ７の合計７個の敵オブジェクトＥＯが表示されている。ただし、本実施形態に係るゲーム装置１０の処理において、敵オブジェクトＥＯの数が７個に限定される訳でない。なお、すでに第１の実施形態で説明したように、敵オブジェクトＥＯ１−ＥＯ７等を区別する必要がない場合には、敵オブジェクトＥＯと呼ぶ。
【０４０６】
また、敵オブジェクトＥＯ１−ＥＯ７のいずれか１以上、例えば、敵オブジェクトＥＯ６には、敵オブジェクトＥＯ１と同一の顔画像が貼り付けされている。一方、他の敵オブジェクトＥＯ２−ＥＯ５等には、敵オブジェクトＥＯ１とは異なる顔画像が貼り付けられている。
【０４０７】
さらに、図４１の画面内には、敵オブジェクトＥＯ１等を攻撃するための照準カーソルＡＬが表示されている。照準カーソルＡＬと、背景および敵オブジェクトＥＯ１等の位置関係、および相対移動の関係は、第１の実施形態（図２３−図２６）で説明したものと同様である。
【０４０８】
すなわち、敵オブジェクトＥＯ１は、図４１の画面内を自在に動き回る。より具体的には、外側撮像部２３が写し出した画像を背景とする仮想空間を自在に動き回る。したがって、上側ＬＣＤ２２を見るユーザには、自身が位置する空間内を敵オブジェクトＥＯ１が自在に動くように見える。また、敵オブジェクトＥＯ２−ＥＯ７は、敵オブジェクトＥＯ１の周りに配置される。
【０４０９】
したがって、仮想空間を自在に動き回る敵オブジェクトＥＯ１−ＥＯ７に対して、ユーザがゲーム装置１０の向きを変えることで、画面に表示された照準カーソルＡＬを敵オブジェクトＥＯ１−ＥＯ７に合わせることが可能となる。敵オブジェクトＥＯ１に照準カーソルＡＬを合わせた状態で、トリガボタンに相当する操作ボタン１４Ｂ（Ａボタン）を押下することで、敵オブジェクトＥＯ１−ＥＯ７に向けて弾を撃つことができる。
【０４１０】
ただし、本実施形態のゲームでは、敵オブジェクトＥＯ１−ＥＯ７のうち、敵オブジェクトＥＯ１と同一の顔画像を有するもの以外への攻撃は、有効な攻撃とはならない。例えば、ユーザが、敵オブジェクトＥＯ１および敵オブジェクトＥＯ１と同一の顔画像を有する敵オブジェクトを攻撃した場合には、ユーザの得点となる。あるいは、敵オブジェクトの失点となる。また、敵オブジェクトＥＯ１よりも寸法の小さい、敵オブジェクトＥＯ２−ＥＯ７を攻撃した方がユーザの得点が高いものとする。あるいは、敵オブジェクトＥＯ２−ＥＯ７が攻撃された場合の敵オブジェクトの失点は、敵オブジェクトＥＯ１が攻撃された場合よりも、大きいとする。しかしながら、敵オブジェクトＥＯ２−ＥＯ７のうち、敵オブジェクトＥＯ１と異なる顔画像の敵オブジェクトへの攻撃は無効な攻撃となる。すなわち、ユーザには、敵オブジェクトＥＯ１と同一の敵オブジェクトを攻撃する義務が課せられることになる。以下、敵オブジェクトＥＯ１と異なる顔画像の敵オブジェクトを誤認用オブジェクトと呼ぶ。なお、図４１では、敵オブジェクトＥＯ２−ＥＯ７は、同一種類の頭部形状を有している。しかし、敵オブジェクトＥＯ２−ＥＯ７のうち、誤認用オブジェクトである、敵オブジェクトＥＯ２−ＥＯ５、ＥＯ７等のいずれかは、異なる種類の頭部形状を有するようにしてもよい。なお、すでに述べたように、個々の敵オブジェクトＥＯ１−ＥＯ７等を区別しない場合、単に、敵オブジェクトＥＯという。
【０４１１】
図４２により、ゲーム装置１０の情報処理部３１で実行される画像処理プログラムによる動作例を説明する。図４２は、情報処理部３１による動作の一例を示すフローチャートである。この処理では、情報処理部３１は、例えば、顔画像の選択を受け付け、敵オブジェクトを生成する（ステップ３０）。ステップ３０の処理は、例えば、図１８の配役決定処理と同様である。
【０４１２】
次に、情報処理部３１が、誤認用オブジェクトを生成する（ステップ３１）。誤認用オブジェクトの生成は、例えば、敵オブジェクトＥＯの頭部形状の顔面部分に、ステップ３０で指定された敵オブジェクトＥＯの顔画像以外の顔画像を貼り付ければよい。誤認用オブジェクトの顔画像の指定に限定はない。例えば、図７および図８に示したようなユーザが取得済みの顔画像から、誤認用オブジェクトの顔画像を選択してもよい。また、例えば、ゲーム装置１０の出荷前にデータ保存用内部メモリ３５に、事前に誤認用オブジェクトの顔画像を格納しておいてもよい。また、画像処理プログラムのインストール時、あるいは、バージョンアップ時に、誤認用オブジェクトの顔画像も、併せてデータ保存用内部メモリ３５に格納するようにしてもよい。また、例えば、敵オブジェクトＥＯの顔画像を変形させた顔画像、例えば、目、鼻、口など、顔のパーツを他の顔画像と入れ替えた顔画像を誤認用オブジェクトに用いてもよい。
【０４１３】
次に、情報処理部３１は、敵オブジェクトＥＯおよび誤認用オブジェクトによるゲームを開始する（ステップ３２）。そして、情報処理部３１は、ユーザによる攻撃があったか否かを判定する（ステップ３３）。ユーザによる攻撃は、図４１に示した照準カーソルＡＬを敵オブジェクトＥＯに合わせた状態でのトリガの入力、例えば、操作ボタン１４Ｂの押下によって検知される。ユーザによる攻撃があった場合、情報処理部３１は、適正な敵オブジェクトＥＯへの攻撃か否かを判定する（ステップ３５）。適正な敵オブジェクトＥＯに対する攻撃がなされた場合、情報処理部３１は、敵オブジェクトＥＯを破壊し、ユーザの得点を追加する（ステップ３６）。一方、ステップ３５の判定で、適正な敵オブジェクトＥＯ以外の誤認用オブジェクトへの攻撃が検知された場合、情報処理部３１は、無効な攻撃であるとして、なにもしない。さらに、ステップ３３の判定で、ユーザによる攻撃がなかった場合、情報処理部３１は、他の処理を実行する（ステップ３４）。他の処理は、例えば、それぞれのゲーム特有の処理である。例えば、図４１の敵オブジェクトＥＯ６、誤認用オブジェクトＥＯ２−ＥＯ５を増殖する処理、図４１の敵オブジェクトＥＯ６の位置と誤認用オブジェクトＥＯ２−ＥＯ７等の位置とを入れ替える処理である。
【０４１４】
そして、情報処理部３１は、ゲーム終了か否かを判定する（ステップ３７）。ゲーム終了は、例えば、ユーザが、増殖する敵オブジェクトＥＯをすべて破壊し尽くしたとき、ユーザの得点が基準値を超えた場合等である。あるいは、ゲーム終了は、例えば、敵オブジェクトＥＯが所定限度を超えて増殖した場合、ユーザの失点が所定の限度を超えた場合等である。ゲーム終了でない場合、情報処理部３１は、制御をステップ３３に戻す。
【０４１５】
以上述べたように、本実施形態の画像処理プログラムによれば、収集した顔画像を用いて、敵オブジェクトＥＯを作成してゲームを実行できる。したがって、ユーザは、現実の世界に存在する人の顔画像を基に、仮想現実の世界でのゲームを遂行することができる。
【０４１６】
また、本実施形態のゲーム装置１０によれば、適正な敵オブジェクトＥＯと、誤認用オブジェクトの組み合わせによって、ユーザの混乱を生じさせつつ、ゲームが実行される。したがって、ユーザは、敵オブジェクトＥＯの顔画像の正確な把握が求められる。その結果、ユーザには、敵オブジェクトＥＯを見分ける処理能力、集中力が要求される。したがって、本実施形態のゲーム装置１０は、ユーザにゲームを実行するときの緊張感を発生させ、あるいは、顔画像認識に伴う脳の活性化を可能とする。
【０４１７】
上記第２の実施形態では、例えば、図１４のステップ１６の配役決定処理およびステップ１８のゲーム実行の処理と同様に、ゲームのセーブデータ記憶域Ｄｏに格納済みの顔画像を基に敵オブジェクトＥＯを作成し、ゲームを実行した。しかし、図４２のステップ３０の処理として、例えば、図１５のステップ１００−ステップ１０５の処理を実行してもよい。すなわち、顔画像取得処理で取得し、ゲームのセーブデータ記憶域Ｄｏに格納前の状態で、本実施形態のゲームを実行してもよい。そして、図１５のステップ１０７−ステップ１１０と同様に、ゲームで成功した場合に、取得した顔画像をゲームのセーブデータ記憶域Ｄｏに格納すればよい。このような構成によって、第１の実施得形態と同様、ユーザは、取得した顔画像を保存するため、ますます熱心にゲームに取り組むようになる。
【０４１８】
（第３の実施形態）
以下、図４３および図４４を参照して、本発明の第３の実施形態に係る画像処理プログラムを実行する画像処理装置について説明する。本実施形態のゲームは、第１の実施形態のゲームと同様、例えば、図１４に示したステップ１０による顔画像取得処理１およびステップ１２による顔画像取得処理２のための第１のゲーム（図１５のステップ１０６、図１６のステップ１２９）として実行してもよい。また、本実施形態のゲームは、例えば、第２のゲーム（図１４に示したステップ１８）と同様、顔画像が収集され、ゲームのセーブデータ記憶域Ｄｏに蓄積されていることを前提として実行されるようにしてもよい。
【０４１９】
すなわち、第２の実施形態で述べた場合と同様、ゲーム装置１０の情報処理部３１は、本実施形態のゲームを第１の実施形態の配役決定処理（図１４のステップ１６）、および第２のゲーム（図１４のステップ１８で実行されるゲーム）の処理例として、実行する。また、ゲーム装置１０の情報処理部３１は、本実施形態のゲームを第１実施形態の第１のゲーム（図１５のステップ１０６、図１６のステップ１２９で実行されるゲーム）としても実行できる。
【０４２０】
また、上記第２の実施形態では、顔画像を取得し、取得した顔画像を含む敵オブジェクトＥＯと誤認用オブジェクトを用いたゲームの処理の一例を説明した。そして、上記第２の実施形態では、誤認用オブジェクトへの攻撃は無効な攻撃とされた。
【０４２１】
本実施形態では、第２の実施形態のゲームに代えて、誤認用オブジェクトへの攻撃が検知されると、敵オブジェクトＥＯの顔画像のパーツが、他の顔画像のパーツと入れ替わるゲームについて説明する。例えば、敵オブジェクトＥＯの周辺部分（図９のＨ１３参照）と、ユーザの顔画像を組み合わせて、敵オブジェクトＥＯを構成する。ユーザの顔画像の代わりにユーザの親しい人の顔画像を用いてもよい。この場合に、ユーザの顔画像（あるいは親しい人の顔画像）は、敵オブジェクトＥＯに拘束された状態を模擬するようにしてもよい。そして、ユーザがゲームで、敵オブジェクトＥＯに勝利した場合には、ユーザの顔画像（あるいは親しい人の顔画像）が敵オブジェクトＥＯから解放されることを模擬すればよい。一方、ユーザがゲームで、失敗を続けると、徐々に、敵オブジェクトＥＯに拘束されたユーザの顔画像（あるいは親しい人の顔画像）が変形していくことになる。そして、変形の限度が一定限度を超えるとゲーム終了となるようにすればよい。
【０４２２】
図４３は、本実施形態に係る、上側ＬＣＤ２２に表示される画面の一例である。図４３の例では、敵オブジェクトＥＯ１（第１のキャラクタオブジェクトの一例）が表示されている。また、敵オブジェクトＥＯ１の周りに、寸法が敵オブジェクトＥＯ１よりも小さい敵オブジェクトＥＯ１１（第２のキャラクタオブジェクトの一例）と、誤認用オブジェクトＥＯ１２−ＥＯ１６（第３のキャラクタオブジェクトの一例）が表示されている。敵オブジェクトＥＯ１１には、敵オブジェクトＥＯ１と同一の顔画像が貼り付けられている。一方、誤認用オブジェクトＥＯ１２−ＥＯ１６の構成は、第２の実施例の場合と同様であり、敵オブジェクトＥＯ１とは異なる顔画像が貼り付けられている。なお、図４３の構成は例示であり、寸法が敵オブジェクトＥＯ１よりも小さい敵オブジェクトＥＯ１１の数が、１個に限定される訳ではない。
【０４２３】
本実施形態のゲームにおいては、例えば、寸法の大きな敵オブジェクトＥＯ１には、照準カーソルＡＬを合わせやすいため、敵オブジェクトＥＯ１を攻撃し、弾が命中したとしても、ユーザが得られる得点、あるいは、敵オブジェクトＥＯ１に与えるダメージは小さいものとする。また、寸法の小さな敵オブジェクトＥＯ１１には、照準カーソルＡＬを合わせにくいため、敵オブジェクトＥＯ１１を攻撃し、弾が命中した場合には、ユーザが得られる得点、あるいは、敵オブジェクトＥＯ１に与えるダメージは、敵オブジェクトＥＯ１の場合よりも大きいものとする。
【０４２４】
さらに、本実施形態では、ユーザが誤認用オブジェクトＥＯ１２−ＥＯ１６を攻撃した場合には、敵オブジェクトＥＯ１に貼り付けられている顔画像のパーツが他の顔画像と入れ替えられる。例えば、図４３の場合には、すでに、敵オブジェクトＥＯ１に貼り付けられた顔画像のうち、眉と目の部分が顔画像ＥＯ１３の眉と目の部分と置き換えられている。このようにして、小さな敵オブジェクトＥＯ１１を攻撃しようとするユーザに対して、誤認用オブジェクトＥＯ１２−ＥＯ１６は、ユーザを混乱させ、敵オブジェクトＥＯ１の変形へと導こうとする。なお、図４３では、誤認用オブジェクトＥＯ１２−ＥＯ１６は、同一種類の頭部形状を有している。しかし、誤認用オブジェクトＥＯ１２−ＥＯ１６のいずれかは、異なる種類の頭部形状にしてもよい。
【０４２５】
図４４により、ゲーム装置１０の情報処理部３１で実行される画像処理プログラムによる動作例を説明する。図４４は、情報処理部３１による動作の一例を示すフローチャートである。この処理では、ステップ４０−ステップ４２の処理は、図４２のステップ３０−ステップ３２の処理と同様であるので、その説明を省略する。
【０４２６】
そして、情報処理部３１は、敵オブジェクトＥＯへの攻撃を検知すると（ステップ４３）、顔画像の変形を削減し、敵オブジェクトＥＯ１１の顔画像を本来貼り付けられている顔画像に近づける（ステップ４４）。この場合には、図４３に示した寸法の小さな敵オブジェクトＥＯ１１への攻撃には、寸法の大きな敵オブジェクトＥＯ１への攻撃よりも高い得点を付与すればよい。また、寸法の小さな敵オブジェクトＥＯ１１への攻撃には、寸法の大きな敵オブジェクトＥＯ１への攻撃よりも、顔画像の変形を削減する程度を大きくすれよい。
【０４２７】
一方、情報処理部３１は、誤認用オブジェクトＥＯ１２−ＥＯ１６等への攻撃を検知すると（ステップ４５）、現在よりも、さらに敵オブジェクトＥＯ１に貼り付けられている顔画像のパーツの置き換えを進める。すなわち、情報処理部３１は、顔画像の変形を追加する（ステップ４４）。また、情報処理部３１は、敵オブジェクトＥＯへの攻撃、誤認用オブジェクトへの攻撃以外の状態を検知した場合には、その他の処理を実行する（ステップ４７）。その他の処理は、図４２のステップ３４の場合と同様である。例えば、情報処理部３１は、敵オブジェクトＥＯを増殖する。
【０４２８】
そして、情報処理部３１は、ゲーム終了か否かを判定する（ステップ４８）。ゲーム終了の判定は、例えば、敵オブジェクトＥＯの顔画像の変形が基準の限度を超えた場合である。また、ゲーム終了の判定は、例えば、ユーザが敵オブジェクトＥＯを破壊し、所定限度の得点を得た場合である。そして、ゲーム終了でない場合、情報処理部３１は、制御をステップ４３に戻す。
【０４２９】
以上述べたように、本実施形態のゲーム装置１０によれば、ユーザが敵オブジェクトＥＯの攻撃に成功すると、変形した顔画像が復旧する。また、ユーザが誤認用オブジェクトを攻撃すると、顔画像の変形がさらに進行する。したがって、ユーザは、集中力を持ってゲームに取り組むことを要求され、ゲーム実行時の緊張感が高まり、集中力を養成することが可能になる。さらに、本実施形態のゲーム装置１０によれば、ユーザの顔画像、ユーザの親しい人の顔画像が変形されるので、ユーザは、現実の世界を投影した仮想現実の世界で、ゲームに熱中する可能性を高めることができる。
【０４３０】
上記第３の実施形態では、例えば、図４２のステップ３０、さらに、図１４のステップ１６の配役決定処理およびステップ１８のゲーム実行の処理と同様に、ゲームのセーブデータ記憶域Ｄｏに格納済みの顔画像を基に敵オブジェクトＥＯを作成し、ゲームを実行する場合を想定して説明した。しかし、図４４のステップ４０の処理として、例えば、図１５のステップ１００−ステップ１０５の処理を実行してもよい。すなわち、顔画像取得処理で取得し、ゲームのセーブデータ記憶域Ｄｏに格納前の状態で、第３の実施形態のゲームを実行してもよい。そして、図１５のステップ１０７−ステップ１１０と同様に、ゲームで成功した場合に、取得した顔画像をゲームのセーブデータ記憶域Ｄｏに格納すればよい。このような構成によって、第１の実施得形態と同様、ユーザは、ますます熱心にゲームに取り組むようになる。
【０４３１】
（第４の実施形態）
以下、図４５および図４６を参照して、本発明の第４の実施形態に係る画像処理プログラムを実行する画像処理装置について説明する。本実施形態のゲームは、第１の実施形態のゲームと同様、例えば、図１４に示したステップ１０による顔画像取得処理１およびステップ１２による顔画像取得処理２のための第１のゲーム（図１５のステップ１０６、図１６のステップ１２９）として実行してもよい。また、本実施形態のゲームは、例えば、第２のゲーム（図１４に示したステップ１８）と同様、顔画像が収集され、ゲームのセーブデータ記憶域Ｄｏに蓄積されていることを前提として実行されるようにしてもよい。
【０４３２】
すなわち、第２の実施形態で述べた場合と同様、ゲーム装置１０の情報処理部３１は、本実施形態のゲームを第１の実施形態の配役決定処理（図１４のステップ１６）、あるいは、第２のゲーム（図１４のステップ１８で実行されるゲーム）の処理例として、実行することができる。また、ゲーム装置１０の情報処理部３１は、本実施形態のゲームを第１実施形態の第１のゲーム（図１５のステップ１０６、図１６のステップ１２９で実行されるゲーム）としても実行できる。
【０４３３】
また、上記第３の実施形態では、顔画像を取得し、取得した顔画像を用いた敵オブジェクトＥＯと誤認用オブジェクトを用いたゲームの処理の一例を説明した。さらに、第３実施形態では、誤認用オブジェクトへの攻撃が検知されると、敵オブジェクトＥＯの顔画像のパーツが、他の顔画像のパーツと入れ替えられた。
【０４３４】
本実施形態では、第２の実施形態、あるいは、第３実施形態のゲームに代えて、ゲーム開始時点で、敵オブジェクトＥＯに含まれる顔のパーツが、他の顔画像のパーツと入れ替えられており、ユーザがゲームに勝利すると、敵オブジェクトＥＯに含まれる顔のパーツが元の顔画像に戻る処理を説明する。
【０４３５】
図４５は、本実施形態に係る、上側ＬＣＤ２２に表示される画面の一例である。画面の左側には、敵オブジェクトＥＯに貼り付け可能な顔画像の一覧表（登場人物欄）が登場人物として表示されている。ただし、ゲーム装置１０の画面では、顔画像の一覧表は、なくてもよい。また、例えば、情報処理部３１が、ＧＵＩを通じて、ユーザからの一覧表の表示要求操作を検知したときに、顔画像の一覧表を表示するようにしてもよい。また、顔画像の一覧表の表示箇所が、図４５のような画面の左側に限定される訳ではない。登場人物欄には、顔画像ＰＳ１−ＰＳ５等の顔画像が表示されている。
【０４３６】
また、図４５の画面には、敵オブジェクトＥＯ２０、ＥＯ２１−ＥＯ２５が表示されている。敵オブジェクトＥＯ２０、ＥＯ２１−ＥＯ２５等は、例えば、第１の実施形態の図７−９の画面、あるいは、図１８の配役決定処理に示したような選択操作で作成した敵オブジェクトＥＯである。ただし、本実施形態では、敵オブジェクトＥＯ２０は、画面中央に大きく描かれ、敵オブジェクトＥＯ２１−ＥＯ２５等は、敵オブジェクトＥＯ２０の周りに描かれている。また、例えば、敵オブジェクトＥＯ２０には、元々、顔画像ＰＳ１が貼り付けられていた。また、例えば、敵オブジェクトＥＯ２２には、顔画像ＰＳ２が貼り付けられていた。また、敵画像ＥＯ２５には、顔画像ＰＳ５が貼り付けられていた。
【０４３７】
しかしながら、本ゲームの開始前に、敵オブジェクトＥＯ２０と、ＥＯ２１−ＥＯ２５との間で、顔のパーツの入れ替えが行われる。例えば、敵オブジェクトＥＯ２０と敵オブジェクトＥＯ２２との間で、鼻が入れ替わっている。また、例えば、敵オブジェクトＥＯ２０と敵オブジェクトＥＯ２５との間で、左眉毛と左目が入れ替わっている。顔のパーツの入れ替えは、例えば、顔画像をテクスチャマッピング時に、テクスチャマッピングされる３次元モデルを構成するポリゴン単位で行えばよい。
【０４３８】
このような顔のパーツの入れ替えは、例えば、入れ替えるパーツ数と、入れ替え対象パーツをランダムに入れ替えるようにしてもよい。また、例えば、すでに行った当該ゲーム、あるいは、他のゲームの成否、得点によって、入れ替えるパーツ数を決定してもよい。例えば、すでに行ったゲームで、ユーザの成績、達成度が良好な場合には、入れ替えるパーツ数を少なくし、ユーザの成績、達成度が不調の場合には、入れ替えるパーツ数を多くするなどである。また、ゲームをレベル分けしておき、ゲームのレベルに応じて、入れ替えるパーツ数を変更してもよい。例えば、入門レベルでは、入れ替えるパーツ数を少なくし、上級レベルでは、入れ替えるパーツ数を多くするなどである。
【０４３９】
また、内側撮像部２４によりユーザの顔画像を取得して、顔認識を行い、認識された表情に応じて、入れ替えるパーツ数を決定してもよい。例えば、顔画像が笑っている場合、驚いている場合、悲しんでいる場合、無表情に近い場合などを判定し、判定結果に応じて、入れ替えるパーツ数を決定してもよい。顔の表情は、目の寸法、口の面積、口の形状、目の中心、口の中心、鼻等を基準点として、頬の輪郭の位置等から決定すればよい。例えば、ユーザの無表情状態の顔画像を事前に登録しておき、新たに、ユーザの顔画像を取得したときに得られた目の寸法、口の面積、口の形状、基準点からの頬の輪郭の位置等の値と、事前に登録した顔画像から得られた値との差分値から、ユーザの顔の表情を推定してもよい。なお、このような顔の表情の推定方法は、以上の手順に限定される訳ではなく、様々な手順を利用できる。
【０４４０】
本実施形態では、ゲーム装置１０では、ユーザが、図４５のような顔のパーツが入れ替えられた敵オブジェクトＥＯを攻撃し、敵オブジェクトＥＯと戦うゲームを実行する。攻撃の仕方は、第１の実施形態から第３の実施形態で説明した手順と同様である。そして、ユーザが、敵オブジェクトＥＯとの戦いに勝利したときに、入れ替えられたパーツが元の顔画像に復帰するようにすればよい。
【０４４１】
図４６により、ゲーム装置１０の情報処理部３１で実行される画像処理プログラムによる動作例を説明する。この処理のうち、ステップ９０の処理は、図４２のステップ３０、図４４のステップ４０と同様である。本実施形態では、ゲーム装置１０の情報処理部３１は、次に、顔のパーツの入れ替えを実行する（ステップ９１）。そして、情報処理部３１は、ゲームを実行する（ステップ９２）。そして、情報処理部３１は、ゲームが成功したか否かを判定する（ステップ９３）。ゲームが成功した場合には、情報処理部３１は、ステップ９１の処理でパーツが入れ替えられた顔を、元の撮像された状態の顔に復旧する（ステップ９４）。
【０４４２】
以上述べたように、本実施形態の画像処理プログラムによれば、例えば、内側撮像部２４によりユーザの顔画像を取得し、取得した顔画像と、他の顔画像との間で、顔のパーツが入れ替えられた状態で、ゲームが開始する。そして、ユーザが敵オブジェクトＥＯとの戦いに勝利するなど、ゲームにおいて、ユーザが成功した場合には、パーツが入れ替えられた顔画像が、元の顔画像に復旧する。
【０４４３】
したがって、例えば、顔のパーツが入れ替えられる顔画像が、ユーザ自身の顔画像である場合、あるいは、ユーザと親密な人の顔画像等である場合に、ユーザはゲームで成功するため、高い動機付けを与えられる。
【０４４４】
また、すでに他のゲームでの成績に応じて、本実施形態でのゲーム開始時の顔のパーツの入れ替えを行うことによって、ユーザに他のゲームの結果如何によるハンディキャップあるいはアドバンテージを付与できる。また、ゲームのレベルに応じて顔のパーツの入れ替えを行うことによって、ゲームのレベルの難易度を顔の変形の程度によって表現することができる。
【０４４５】
上記第４の実施形態では、例えば、図４２のステップ３０、図４４のステップ４０、あるいは、図１４のステップ１６の配役決定処理およびステップ１８のゲーム実行の処理と同様に、ゲームのセーブデータ記憶域Ｄｏに格納済みの顔画像を基に敵オブジェクトＥＯを作成し、ゲームを実行することを想定して説明した。しかし、図４５のステップ９０の処理として、例えば、図１５のステップ１００−ステップ１０５の処理を実行してもよい。すなわち、顔画像取得処理で取得し、ゲームのセーブデータ記憶域Ｄｏに格納前の状態で、本実施形態のゲームを実行してもよい。そして、図１５のステップ１０７−ステップ１１０と同様に、ゲームで成功した場合に、取得した顔画像をゲームのセーブデータ記憶域Ｄｏに格納すればよい。このような構成によって、第１の実施得形態と同様、ユーザは、取得した顔画像を保存するため、ますます熱心にゲームに取り組むようになる。
【０４４６】
（第５の実施形態）
以下、図４７〜図５１を参照して、本発明の第５の実施形態に係る画像処理プログラムを実行する画像処理装置について説明する。上述した実施形態では、顔画像をセーブデータ記憶域Ｄｏに格納するためのゲーム（例えば、第１のゲーム）を開始する前に、内側撮像部２４または外側撮像部２３が撮像したカメラ画像を用いた顔画像取得処理によって取得対象となる顔画像が取得される。そして、当該顔画像を取得した後に上記ゲームが実行され、ユーザが上記ゲームで成功した場合に、当該顔画像をセーブデータ記憶域Ｄｏに格納することが許容される。第５の実施形態では、敵オブジェクトＥＯと戦うゲームの実行中に内側撮像部２４または外側撮像部２３が撮像したカメラ画像から取得対象となる顔画像を取得し、当該顔画像の取得に成功する条件を満たすことによって当該ゲーム中に取得した顔画像をセーブデータ記憶域Ｄｏに格納することが許容される。すなわち、第５の実施形態では、所定のゲームの実行中に撮像されたカメラ画像から顔画像を取得して、当該ゲームにおいて当該顔画像の取得に成功する条件を満たすことによって当該顔画像をセーブデータ記憶域Ｄｏに格納することが許容されるため、結果的に当該ゲームが顔画像をセーブデータ記憶域Ｄｏに格納することが許容されるゲームとなる。本実施形態のゲームも、上記実施形態と同様、ゲーム装置１０の情報処理部３１が、メインメモリ３２に展開された画像処理プログラムを実行することで、ユーザに提供される。以下の説明では、ゲーム中に顔画像を取得する一例として、上述した第２のゲーム（図１４のステップ１８）の実行中に顔画像を取得する態様を用いる。
【０４４７】
図４７は、本実施形態に係るゲーム装置１０の上側ＬＣＤ２２に表示される画面の一例である。この画面の作成手順は、上記第１の実施形態と同様である。すなわち、ユーザは、例えば、ゲーム装置１０の下側ハウジング１１と上側ハウジング２１とを開状態として、図４のように、下側ハウジング１１を両手に持つ場合を想定する。このとき、ユーザは、上側ＬＣＤ２２の表示画面を見ることができる。そして、この状態では、外側撮像部２３は、例えば、ユーザの視線前方の空間を撮像することが可能である。本実施形態のゲームの実行中、ゲーム装置１０は、画面の背景に、外側撮像部２３が撮像したカメラ画像ＣＩを写し出す。より具体的には、情報処理部３１は、外側撮像部２３が撮像した画像をフレーム単位で、ゲームの画面の背景部分にテクスチャマッピングしている。すなわち、上側ＬＣＤ２２には、ゲーム装置１０に内蔵する実カメラで撮像されたリアルタイムの実世界画像（動画像）が背景部分に表示される。ユーザがゲーム装置１０を手に持って方向を変えると、変化後の外側撮像部２３の視線方向から外側撮像部２３を通じて取得された画像がゲームの背景に表示されることになる。すなわち、図４７の画面の背景には、ユーザがゲーム装置１０の外側撮像部２３を向けた方向から取得された画像が埋め込まれる。なお、図４７に示した画面例では、画面の背景として表示されているカメラ画像ＣＩの被写体として、外側撮像部２３に正面を向けた人物が含まれている。
【０４４８】
さらに、この画面では、上記背景に対して、例えば、上記実施形態で説明した手順にしたがって作成された敵オブジェクトＥＯおよび照準カーソルＡＬが表示されている。敵オブジェクトＥＯの顔面部分には、上記配役決定処理等で選択された顔画像がテクスチャマッピングされて表示されている。そして、ゲーム装置１０のユーザは、敵オブジェクトＥＯに照準カーソルＡＬを合わせた状態で、トリガボタンに相当する操作ボタン１４Ｂ（Ａボタン）を押下することで、敵オブジェクトＥＯに向けて弾を撃つことができる。
【０４４９】
ゲーム装置１０は、上記ゲーム中においても、実カメラ（例えば、外側撮像部２３）で撮像されたカメラ画像ＣＩに対して所定の顔認識処理を逐次に行い、カメラ画像ＣＩ内の被写体における人物の顔の有無を判断している。そして、ゲーム装置１０は、上記顔認識処理において、カメラ画像ＣＩ内に人物の顔が存在すると識別でき、かつ、取得対象オブジェクトＡＯを出現させる条件を満たした場合、カメラ画像ＣＩ内から顔と識別した部分から取得対象オブジェクトＡＯが出現する。
【０４５０】
図４８に示すように、取得対象オブジェクトＡＯは、カメラ画像ＣＩから抽出された顔画像が、所定のポリゴンの所定部分（例えば、人体の頭部形状を模した３次元モデルにおける顔面部分）にテクスチャマッピングされて表示される。一例として、取得対象オブジェクトＡＯは、複数のポリゴンを組み合わせて形成した頭部形状の３次元モデルの表面に、カメラ画像ＣＩ内から顔と識別した部分画像がテクスチャとして貼り付けられて表示される。なお、取得対象オブジェクトＡＯが出現するゲームでは、顔認識された顔画像が３次元モデルにテクスチャマッピングされたものに限定される訳ではない。例えば、取得対象オブジェクトＡＯは、カメラ画像ＣＩから切り取られた上記顔と識別した部分の画像が主面に貼り付けられた板状の物体として表示されてもかまわなし、単に２次元画素配列に保持された画像として表示されてもよい。
【０４５１】
例えば、取得対象オブジェクトＡＯは、敵オブジェクトＥＯと同様に上述した仮想空間に配置され、仮想カメラから取得対象オブジェクトＡＯおよび／または敵オブジェクトＥＯを見た仮想空間の画像（仮想世界画像）を、カメラ画像ＣＩから得られる実世界画像に合成することによって、取得対象オブジェクトＡＯおよび／または敵オブジェクトＥＯが実空間内に配置されているように上側ＬＣＤ２２に表示される。また、ゲーム装置１０を用いた攻撃操作（例えば、ボタン１４Ｂ（Ａボタン）の押下）に応じて、照準カーソルＡＬの方向に弾オブジェクトＢＯが発射され、取得対象オブジェクトＡＯもユーザの攻撃対象となる。そして、ユーザが取得対象オブジェクトＡＯとの戦いに勝利した場合、当該取得対象オブジェクトＡＯに貼り付けられた顔画像をセーブデータ記憶域Ｄｏに格納することができる。
【０４５２】
なお、取得対象オブジェクトＡＯとの戦いに勝利することだけでなく、敵オブジェクトＥＯを攻撃するゲーム、すなわち取得対象オブジェクトＡＯに貼り付けられる顔画像を顔認識した際に既に実行されているゲームをクリアすることを、取得対象オブジェクトＡＯの顔画像をセーブデータ記憶域Ｄｏに格納するための条件に加えてもよい。例えば、敵オブジェクトＥＯを攻撃するゲームゲームをクリアする条件としては、所定数以上の敵オブジェクトＥＯを倒すことが考えられる。この場合、敵オブジェクトＥＯを攻撃するゲームを実行する際、その途中で取得対象オブジェクトＡＯが登場して倒した場合に当該取得対象オブジェクトＡＯの顔画像を付加的に取得できるというゲーム仕様となる。
【０４５３】
なお、取得対象オブジェクトＡＯに用いる顔画像は、カメラ画像ＣＩから顔認識された１枚の顔画像（静止画像）を用いてもいいし、繰り返し撮像されているカメラ画像ＣＩを繰り返し顔認識して識別される顔画像（動画像）を用いてもよい。例えば、後者の場合、カメラ画像ＣＩとして繰り返し撮像されている人物の顔の表情等が変化した場合、当該変化が取得対象オブジェクトＡＯのテクスチャに反映される。つまり、取得対象オブジェクトＡＯに貼り付けられている顔画像の表情は、ゲーム装置１０の実カメラによって撮像されている人物の表情をリアルタイムに反映することが可能となる。
【０４５４】
また、カメラ画像ＣＩ内から顔認識された部分から出現する取得対象オブジェクトＡＯは、カメラ画像ＣＩに合成されて表示される際に当該部分と常に重複するように配置してもよい。例えば、実空間内においてゲーム装置１０の方向や位置（すなわち、外側撮像部２３の方向や位置）を変えることによって、ゲーム装置１０で撮像される撮像範囲が変わるため、上側ＬＣＤ２２に表示されるカメラ画像ＣＩも変化する。この場合、ゲーム装置１０は、実空間内におけるゲーム装置１０の動きに応じて、上記仮想空間内における上記仮想カメラの位置や方向を変化させる。これによって、実空間内に配置されているように表示されている取得対象オブジェクトＡＯは、実空間内におけるゲーム装置１０の方向や位置が変わっても実空間内における同じ位置に配置されているように表示される。また、上側ＬＣＤ２２には、ゲーム装置１０に内蔵する実カメラによって撮像されたリアルタイムの実世界画像が表示されており、被写体が実空間において移動することもあり得る。この場合、ゲーム装置１０は、繰り返し撮像されているカメラ画像ＣＩに対して顔認識処理を逐次行うことによって、カメラ画像ＣＩと合成される際に当該顔認識された位置と重なって表示されるように取得対象オブジェクトＡＯを仮想空間内に逐次配置する。したがって、ゲーム装置１０の撮像方向や撮像位置が変化したり、撮像されている人物の位置が変化したりすることによって、取得対象オブジェクトＡＯとして出現させた顔画像の位置や大きさがカメラ画像ＣＩ内で変化しても、これらの処理によって当該顔画像と重なるように取得対象オブジェクトＡＯを描画することができる。
【０４５５】
なお、上側ＬＣＤ２２に表示する取得対象オブジェクトＡＯは、現実に撮像されてカメラ画像ＣＩに表示されている顔画像に対して拡大、縮小、変形等のデフォルメを施して表示したり、当該顔画像を貼り付けたモデルの表示方向を変化させて表示したりしてもかまわない。これらの画像処理によって、実際に撮像されている顔画像と取得対象オブジェクトＡＯとの違いが生まれるため、カメラ画像ＣＩの中から取得対象オブジェクトＡＯが出現したことをゲーム装置１０のユーザが容易に判別することが可能となる。
【０４５６】
次に、図４９〜図５１を参照して、第５の実施形態に係る画像処理プログラムを実行することによる具体的な処理動作について説明する。なお、図４９は、当該画像処理プログラムを実行することによって行われるゲーム中顔画像取得処理の詳細な動作の一例を示すサブルーチンである。図５０は、図４９のステップ２０２で行われる未出現処理の詳細な動作の一例を示すサブルーチンである。図５１は、図４９のステップ２０８で行われる出現済処理の詳細な動作の一例を示すサブルーチンである。
【０４５７】
なお、これらの処理を実行するためのプログラムは、ゲーム装置１０に内蔵されるメモリ（例えば、データ保存用内部メモリ３５）や外部メモリ４５またはデータ保存用外部メモリ４６に含まれており、ゲーム装置１０の電源がオンになったときに、内蔵メモリから、または外部メモリＩ／Ｆ３３やデータ保存用外部メモリＩ／Ｆ３４を介して外部メモリ４５またはデータ保存用外部メモリ４６からメインメモリ３２に読み出されて、ＣＰＵ３１１によって実行される。
【０４５８】
第５の実施形態に係る画像処理プログラムを実行することによる処理動作は、第１の実施形態に係る画像処理プログラムを実行することによる処理動作に対して、後述するゲーム中顔画像取得処理が図２９で説明したゲーム処理の中に、ゲーム処理周期毎に実行（例えば、ステップ５２〜ステップ５９の途中で１回実行）されるだけである。したがって、以下の説明においては、第１の実施形態に対して追加された処理動作のみ説明し、他の処理動作については詳細な説明を省略する。
【０４５９】
また、第５の実施形態に係る画像処理プログラムを実行することに応じてメインメモリ３２に記憶される各種データは、出現フラグデータ、顔認識データ、および取得対象オブジェクトデータがさらに記憶されることを除いて、第１の実施形態に係る画像処理プログラムを実行することに応じて記憶される各種データと同様である。なお、上記出現フラグデータは、現時点の敵オブジェクトＥＯの出現状況が「未出現」、「出現中」、および「出現済」の何れであるのかを表す出現フラグを示すデータであり、出現フラグは、上記ステップ５１（図２９）における初期設定において「未出現」に設定されている。また、顔認識データは、繰り返し撮像されるカメラ画像ＣＩから逐次顔認識された最新の顔画像およびカメラ画像ＣＩにおける当該顔画像の位置を示すデータである。また、上記取得対象オブジェクトデータは、取得対象オブジェクトＡＯに対応する３次元モデルのデータ、当該３次元モデルにマッピングするためのテクスチャデータ、および当該３次元モデルの配置方向や配置位置を示すデータ等を含んでいる。
【０４６０】
図４９において、情報処理部３１は、取得対象オブジェクトＡＯが未出現であるか否かを判断する（ステップ２０１）。例えば、情報処理部３１は、出現フラグデータを参照して、出現フラグが「未出現」に設定されているか否かによって上記ステップ２０１における判定を行う。そして、情報処理部３１は、取得対象オブジェクトＡＯが未出現である場合、次のステップ２０２に処理を進める。一方、情報処理部３１は、取得対象オブジェクトＡＯが未出現でない場合、次のステップ２０３に処理を進める。
【０４６１】
ステップ２０２において、情報処理部３１は、未出現処理を行い、次のステップ２０３に処理を進める。以下、図５０を参照して、情報処理部３１が上記ステップ２０３で行う未出現処理について説明する。
【０４６２】
図５０において、情報処理部３１は、実カメラ画像データＤｂが示すカメラ画像に対して所定の顔認識処理を行って当該顔認識結果を顔認識データとしてメインメモリ３２に格納し（ステップ２１１）、次のステップに処理を進める。ここで、上記顔認識処理は、図５０で示すフローチャートによる処理とは別に独立して逐次上記カメラ画像を用いて情報処理部３１が行ってもかまわない。この場合、情報処理部３１は、上記カメラ画像から人物の顔が識別されたときに、上記ステップ２１１において顔認識結果を取得して当該顔認識結果を顔認識データとしてメインメモリ３２に格納する。
【０４６３】
次に、情報処理部３１は、取得対象オブジェクトＡＯが仮想空間に出現する条件を満たしているか否かを判断する（ステップ２１２）。例えば、取得対象オブジェクトＡＯが出現する条件は、上記ステップ２１１においてカメラ画像から人物の顔が識別されていることを必須条件として、ゲームが開始されてからゲームが終了するまでに１度だけ取得対象オブジェクトＡＯが出現してもいいし、所定時間毎に取得対象オブジェクトＡＯが出現してもいいし、取得対象オブジェクトＡＯが仮想世界から消滅したことに応じて新たな取得対象オブジェクトＡＯが出現してもいいし、ランダムのタイミングで取得対象オブジェクトＡＯを出現させてもよい。そして、情報処理部３１は、取得対象オブジェクトＡＯが出現する条件を満たしている場合、次のステップ２１３に処理を進める。一方、情報処理部３１は、取得対象オブジェクトＡＯが出現する条件を満たしていない場合、当該サブルーチンによる処理を終了する。
【０４６４】
ステップ２１３において、情報処理部３１は、上記ステップ２１１における顔認識処理で識別された顔の画像を、取得対象オブジェクトＡＯのテクスチャに設定して、次のステップに処理を進める。例えば、情報処理部３１は、実カメラ画像データＤｂが示すカメラ画像から、上記ステップ２１１における顔認識処理の顔認識結果が示す顔の範囲内の画像を取得対象オブジェクトＡＯのテクスチャに設定し、当該設定されたテクスチャを用いて取得対象オブジェクトデータを更新する。
【０４６５】
次に、情報処理部３１は、上記ステップ２１１における顔認識処理で識別された顔画像を用いて取得対象オブジェクトＡＯを設定し（ステップ２１４）、次のステップに処理を進める。一例として、情報処理部３１は、上記ステップ２１１における顔認識処理で識別された顔の画像の範囲に応じて、取得対象オブジェクトＡＯの出現開始時点の状態に対応するポリゴン（例えば、平面ポリゴン）のサイズおよび形状を設定し、上記ステップ２１３で設定された顔画像のテクスチャを当該ポリゴンの主面に貼り付けて出現開始時点の状態に対応する取得対象オブジェクトＡＯを設定し、取得対象オブジェクトデータを更新する。
【０４６６】
次に、情報処理部３１は、新たに取得対象オブジェクトＡＯを仮想空間に配置して（ステップ２１５）、次のステップに処理を進める。例えば、情報処理部３１は、上記カメラ画像が上側ＬＣＤ２２に表示される際、上記ステップ２１１で顔認識された顔画像の位置と重なって透視投影される仮想空間内の位置に取得対象オブジェクトＡＯを配置し、取得対象オブジェクトデータを更新する。
【０４６７】
本実施形態においては、敵オブジェクトＥＯに加えて取得対象オブジェクトＡＯを新たに配置した仮想空間を、仮想カメラから透視投影でレンダリングして画像を生成し、当該画像を少なくとも含む表示画像を表示する。ここで、取得対象オブジェクトＡＯが上側ＬＣＤ２２に表示されたカメラ画像の顔画像上から出現するように表現するために、情報処理部３１は、上記カメラ画像のテクスチャがマッピングされた境界面３における当該顔画像に対応する範囲に、取得対象オブジェクトＡＯを重ね合わせて仮想空間に配置し、配置された取得対象オブジェクトＡＯを仮想カメラから透視投影する。なお、取得対象オブジェクトＡＯを仮想空間に配置する方法については、図３３〜図３９を用いて説明した敵オブジェクトＥＯの配置例を同様であるため詳細な説明を省略する。
【０４６８】
次に、情報処理部３１は、出現フラグを「出現中」に設定して出現フラグデータを更新し（ステップ２１６）、当該サブルーチンによる処理を終了する。
【０４６９】
図４９に戻り、ステップ２０３において、情報処理部３１は、取得対象オブジェクトＡＯが出現中であるか否かを判断する。例えば、情報処理部３１は、出現フラグデータを参照して、出現フラグが「出現中」に設定されているか否かによって上記ステップ２０３における判定を行う。そして、情報処理部３１は、取得対象オブジェクトＡＯが出現中である場合、次のステップ２０４に処理を進める。一方、情報処理部３１は、取得対象オブジェクトＡＯが出現中でない場合、次のステップ２０７に処理を進める。
【０４７０】
ステップ２０４において、情報処理部３１は、出現中処理を行い、次のステップに処理を進める。例えば、上記ステップ２０４において、情報処理部３１は、カメラ画像に含まれる顔画像が立体的なオブジェクトに段階的に変化させることによって、取得対象オブジェクトＡＯの出現する様子を表現する。具体的には、情報処理部３１は、上記ステップ２１１と同様にカメラ画像に対する顔認識結果に基づいて、取得対象オブジェクトＡＯのテクスチャに設定する。そして、一例として、平面ポリゴンから所定の立体ポリゴン（例えば、複数のポリゴンを組み合わせて形成した人体の頭部形状を模した３次元モデル）まで変化させるモーフィング処理を行って取得対象オブジェクトＡＯを設定する。そして、情報処理部３１は、モーフィング処理が行われた取得対象オブジェクトＡＯを、上記ステップ２１５と同様に当該ステップ２０４で顔認識された顔画像の位置と重なって透視投影される仮想空間内の位置に配置し、取得対象オブジェクトデータを更新する。このようなモーフィング処理を行うことによって、実世界画像から識別された顔画像から取得対象オブジェクトＡＯが出現する際、取得対象オブジェクトＡＯは、当該顔画像上において徐々に平面から立体になるように表現される。
【０４７１】
なお、上記モーフィング処理によって平面ポリゴンから変化させる立体ポリゴンは、様々な形状のポリゴンが考えられる。第１の例として、上記モーフィング処理によって平面ポリゴンから予め定められたキャラクタの頭部形状を有する立体ポリゴンに変化させて取得対象オブジェクトＡＯを生成する。この場合、カメラ画像に対して顔認識処理で識別された顔の画像がテクスチャとなって、上記頭部形状のポリゴンの顔面にマッピングされる。第２の例として、上記モーフィング処理によって平面ポリゴンから所定の厚さを有する平板ポリゴンに変化させて取得対象オブジェクトＡＯを生成する。この場合、カメラ画像に対して顔認識処理で識別された顔の画像がテクスチャとなって、上記平板ポリゴンの主面にマッピングされる。第３の例として、上記モーフィング処理によって平面ポリゴンから予め定められた武器形状を有する立体ポリゴン（例えば、ミサイル形状のポリゴン）に変化させて取得対象オブジェクトＡＯを生成する。この場合、カメラ画像に対して顔認識処理で識別された顔の画像がテクスチャとなって、上記武器形状のポリゴンの一部にマッピングされる（例えば、ミサイル形状のポリゴンに対して当該ミサイルの先端にマッピングされる）。
【０４７２】
次に、情報処理部３１は、取得対象オブジェクトＡＯに対する出現中処理が終了したか否かを判断する（ステップ２０５）。例えば、情報処理部３１は、取得対象オブジェクトＡＯに対するモーフィング処理が最終段階となった場合、出現中処理が終了したと判断する。そして、情報処理部３１は、取得対象オブジェクトＡＯに対する出現中処理が終了した場合、次のステップ２０６に処理を進める。一方、情報処理部３１は、取得対象オブジェクトＡＯに対する出現中処理が終了していない場合、次のステップ２０７に処理を進める。例えば、情報処理部３１は、取得対象オブジェクトＡＯに対応するポリゴンが、上記ステップ２０４のモーフィング処理を繰り返すことによって複数のポリゴンを組み合わせて形成した人体の頭部形状を模した３次元モデルまで変化した場合、取得対象オブジェクトＡＯに対するモーフィング処理が最終段階であると判定する。
【０４７３】
ステップ２０６において、情報処理部３１は、出現フラグを「出現済」に設定して出現フラグデータを更新し、次のステップ２０７に処理を進める。
【０４７４】
ステップ２０７において、情報処理部３１は、取得対象オブジェクトＡＯが出現済であるか否かを判断する。例えば、情報処理部３１は、出現フラグデータを参照して、出現フラグが「出現済」に設定されているか否かによって上記ステップ２０７における判定を行う。そして、情報処理部３１は、取得対象オブジェクトＡＯが出現済である場合、次のステップ２０８に処理を進める。一方、情報処理部３１は、取得対象オブジェクトＡＯが出現済でない場合、当該サブルーチンによる処理を終了する。
【０４７５】
ステップ２０８において、情報処理部３１は、出現済処理を行い、当該サブルーチンによる処理を終了する。以下、図５１を参照して、情報処理部３１が上記ステップ２０８で行う出現済処理について説明する。
【０４７６】
図５１において、情報処理部３１は、実カメラ画像データＤｂが示すカメラ画像に対して所定の顔認識処理を行って当該顔認識結果を顔認識データとしてメインメモリ３２に格納し（ステップ２２１）、次のステップに処理を進める。ここで、上記顔認識処理も、図５１で示すフローチャートによる処理とは別に独立して逐次上記カメラ画像を用いて情報処理部３１が行ってもかまわない。この場合、情報処理部３１は、上記カメラ画像から人物の顔が識別されたときに、上記ステップ２２１において顔認識結果を取得して当該顔認識結果を顔認識データとしてメインメモリ３２に格納する。
【０４７７】
次に、情報処理部３１は、上記ステップ２２１における顔認識処理で識別された顔画像（カメラ画像のうちの顔領域内の画像）を、取得対象オブジェクトＡＯのテクスチャに設定し（ステップ２２２）、次のステップに処理を進める。例えば、情報処理部３１は、実カメラ画像データＤｂが示すカメラ画像から、上記ステップ２２１における顔認識処理の顔認識結果が示す顔の範囲内の画像を取得対象オブジェクトＡＯのテクスチャに設定し、当該設定されたテクスチャを用いて取得対象オブジェクトデータを更新する。
【０４７８】
次に、情報処理部３１は、上記ステップ２２１における顔認識処理で識別された顔画像に応じた取得対象オブジェクトＡＯを設定し（ステップ２２３）、次のステップに処理を進める。例えば、情報処理部３１は、複数のポリゴンを組み合わせて形成した人体の頭部形状を模した３次元モデルの顔面部分に、上記ステップ２２２で設定された顔画像のテクスチャを貼り付けて取得対象オブジェクトＡＯを設定し、取得対象オブジェクトデータを更新する。なお、上記ステップ２２３において、上記ステップ２２１における顔認識処理で識別された顔画像をテクスチャとして貼り付けたポリゴンに拡大、縮小、変形等のデフォルメを施したり、顔画像のテクスチャを変形させたりしてもかまわない。
【０４７９】
次に、情報処理部３１は、上記ステップ２２３で設定された取得対象オブジェクトＡＯを仮想空間に配置して（ステップ２２４）、次のステップに処理を進める。例えば、情報処理部３１は、上記ステップ２１５と同様に、上記カメラ画像が上側ＬＣＤ２２に表示される際、上記ステップ２２１で顔認識された顔画像の位置と重なって透視投影される仮想空間内の位置に取得対象オブジェクトＡＯを配置し、取得対象オブジェクトデータを更新する。なお、上記ステップ２２３では、顔画像のテクスチャが貼り付けられた顔面部が仮想カメラと対向するように取得対象オブジェクトＡＯを配置してもいいし、ゲームの進行状況に応じて取得対象オブジェクトＡＯの向きを任意の方向に変化させてもかまわない。
【０４８０】
次に、情報処理部３１は、取得対象オブジェクトＡＯと弾オブジェクトＢＯとが仮想空間内で接触したか否かを判断する（ステップ２２５）。例えば、情報処理部３１は、取得対象オブジェクトデータが示す取得対象オブジェクトＡＯの位置と、弾オブジェクトデータＤｇが示す弾オブジェクトＢＯの位置とを用いて、取得対象オブジェクトＡＯと弾オブジェクトＢＯとが仮想空間内で接触したか否かを判断する。そして、情報処理部３１は、取得対象オブジェクトＡＯと弾オブジェクトＢＯとが接触した場合、次のステップ２２６に処理を進める。一方、情報処理部３１は、取得対象オブジェクトＡＯと弾オブジェクトＢＯとが接触していない場合、次のステップ２２９に処理を進める。
【０４８１】
ステップ２２６において、情報処理部３１は、加点処理を行って、次のステップに処理を進める。例えば、上記加点処理においては、情報処理部３１は、得点データＤｈが示すゲームの得点を所定数だけ加点し、加点後の得点を用いて得点データＤｈを更新する。また、上記加点処理においては、情報処理部３１は、上記ステップ２２５で接触したと判定された弾オブジェクトＢＯを仮想空間から消滅させる処理（例えば、取得対象オブジェクトＡＯに接触した弾オブジェクトＢＯに関する弾オブジェクトデータＤｇを初期化し、当該弾オブジェクトＢＯが仮想空間に存在しない状態にする）を行う。
【０４８２】
次に、情報処理部３１は、弾オブジェクトＢＯと接触した取得対象オブジェクトＡＯに貼り付けられた顔画像の取得に成功したか否かを判定する（ステップ２２７）。情報処理部３１は、顔画像の取得に成功したか否かを判定する手段の一例として、ステップ２２７の処理を実行する。そして、情報処理部３１は、顔画像の取得に成功した場合、次のステップ２２８に処理を進める。一方、情報処理部３１は、顔画像の取得に成功していない場合、次のステップ２２８に処理を進める。
【０４８３】
ここで、顔画像の取得に成功とは、例えば、ユーザが、取得対象オブジェクトＡＯとの戦いにおいて勝利した場合である。一例として、仮想空間内に存在するための所定のライフ値を取得対象オブジェクトＡＯに設定し、当該取得対象オブジェクトＡＯが弾オブジェクトＢＯと接触した場合、当該ライフ値から所定数減算していく。そして、取得対象オブジェクトＡＯのライフ値が０以下となった場合、仮想空間から取得対象オブジェクトＡＯを消滅させるとともに、当該取得対象オブジェクトＡＯに貼り付けられた顔画像の取得に成功したとする。
【０４８４】
ステップ２２８において、顔画像の取得に成功した場合、情報処理部３１は、上記ステップ２２１で顔認識されたメインメモリ３２上の顔画像を示すデータを、セーブデータ記憶域Ｄｏにこれまでに保存された顔画像データに加えて保存し、次のステップ２２９に処理を進める。情報処理部３１のＣＰＵ３１１は、保存する手段の一例として、ステップ２２８の処理を実行する。上述したようにセーブデータ記憶域Ｄｏは、情報処理部３１が書き込みおよび読み出し可能な、例えば、データ保存用内部メモリ３５、データ保存用外部メモリ４６等に構築される記憶領域である。新たな顔画像のデータがセーブデータ記憶域Ｄｏに格納されることにより、情報処理部３１は、上側ＬＣＤ２２の画面に、例えば、図７および図８で説明した顔画像の一覧に追加して、新たな顔画像のデータを表示できるようになる。
【０４８５】
このとき、情報処理部３１は、新たに、当該ゲームのセーブデータ記憶域Ｄｏに保存された顔画像を管理するため、図１２で説明した顔画像管理情報Ｄｎ１を生成し保存する。すなわち、情報処理部３１は、新たに顔画像識別情報を生成し、顔画像管理情報Ｄｎ１のレコードに設定する。また、新たに、セーブデータ記憶域Ｄｏに保存された顔画像のアドレス等を顔画像データのアドレスに設定する。さらに、顔画像の取得元、性別の推定、年齢の推定、関連する顔画像の識別情報１−Ｎなどを設定する。
【０４８６】
さらに、情報処理部３１は、セーブデータ記憶域Ｄｏに追加した顔画像の属性を推定し、図１３で説明した顔画像属性集計表Ｄｎ２の集計結果を更新するようにしてもよい。すなわち、情報処理部３１は、新たに、セーブデータ記憶域Ｄｏに追加した顔画像の性別、年齢等を推定し、顔画像属性集計表Ｄｎ２の集計結果に反映するようにしてもよい。
【０４８７】
さらに、情報処理部３１は、例えば、セーブデータ記憶域Ｄｏに格納されたデータの複製、変更、無線通信モジュール３６を通じたデータの転送等をユーザに許容するようにしてもよい。そして、情報処理部３１は、ユーザのＧＵＩを通じた操作または操作ボタン１４を通じた操作にしたがって、セーブデータ記憶域Ｄｏに格納された顔画像の保存、複製、変更、転送等を実行すればよい。
【０４８８】
また、上記ステップ２２８の処理において、情報処理部３１は、顔画像の取得成功の対象となっている取得対象オブジェクトＡＯを仮想空間から消滅させてもかまわない。この場合、情報処理部３１は、顔画像の取得成功の対象となっている取得対象オブジェクトＡＯに関する取得対象オブジェクトデータを初期化し、当該取得対象オブジェクトＡＯが仮想空間に存在しない状態にする。
【０４８９】
ステップ２２９において、情報処理部３１は、仮想空間に存在している取得対象オブジェクトＡＯに貼り付けられた顔画像の取得に失敗したか否かを判定する。そして、情報処理部３１は、何れか１つの取得対象オブジェクトＡＯに対する顔画像の取得に失敗した場合、次のステップ２３０に処理を進める。一方、情報処理部３１は、何れの取得対象オブジェクトＡＯに対しても顔画像の取得に失敗していない場合、当該サブルーチンによる処理を終了する。
【０４９０】
ここで、顔画像の取得に失敗とは、例えば、ユーザが、取得対象オブジェクトＡＯとの戦いにおいて敗戦した場合である。一例として、仮想空間内に所定時間以上取得対象オブジェクトＡＯが存在し続けた場合、当該取得対象オブジェクトＡＯに貼り付けられた顔画像の取得に失敗したとする。
【０４９１】
ステップ２３０において、顔画像の取得に失敗した場合、情報処理部３１は、上記ステップ２２１で顔認識されたメインメモリ３２上の顔画像を示すデータを廃棄し、当該サブルーチンによる処理を終了する。なお、上記ステップ２３０の処理において、情報処理部３１は、顔画像の取得失敗の対象となっている取得対象オブジェクトＡＯを仮想空間から消滅させてもかまわない。この場合、情報処理部３１は、顔画像の取得失敗の対象となっている取得対象オブジェクトＡＯに関する取得対象オブジェクトデータを初期化し、当該取得対象オブジェクトＡＯが仮想空間に存在しない状態にする。
【０４９２】
このように、上述した第５の実施形態に係る図４９〜図５１の処理によれば、敵オブジェクトＥＯを攻撃するゲームの途中で撮像されたカメラ画像から顔認識された顔画像が、セーブデータ記憶域Ｄｏに新たに保存する対象となる。そして、ゲーム中に取得された顔画像をセーブデータ記憶域Ｄｏに保存するためには、ユーザは、既に実行されている当該ゲームにおいて当該顔画像の取得に成功するゲーム結果が求められる。当該ゲームでは、実カメラから得られた実世界画像に、当該実世界画像内の顔画像が抜け出たように表現された取得対象オブジェクトを示す仮想世界画像が合成されて表示されるため、当該取得対象オブジェクトが実空間内に存在しているような新たな画像を表示することができる。また、当該ゲームでは、例えば、セーブデータ記憶域Ｄｏにこれまでに保存された顔画像を用いたキャラクタオブジェクトに加えて、当該ゲーム中に取得された顔画像が貼り付けられた取得対象オブジェクトＡＯを登場させることで、ゲーム装置１０でゲームを実行するユーザは、ゲーム実行中の実世界や実世界の人間関係等を反映しつつ、新たな顔画像を収集し、セーブデータ記憶域Ｄｏに追加することができる。
【０４９３】
なお、上述した第５の実施形態では、ゲーム中に出現する取得対象オブジェクトＡＯを攻撃して勝利した場合に、当該取得対象オブジェクトＡＯに貼り付けられた顔画像をセーブデータ記憶域Ｄｏに格納することが許容される例を用いたが、取得対象オブジェクトＡＯと戦う他のゲームを実行することによって、顔画像をセーブデータ記憶域Ｄｏに格納することが許容されてもよい。一例として、敵オブジェクトと得点の多寡を競うゲームにおいて、当該ゲーム中に撮像されたカメラ画像に含まれる顔画像が貼り付けられた取得対象オブジェクトＡＯが当該ゲームに登場する。そして、ユーザがゲーム中に登場した取得対象オブジェクトＡＯよりも多い得点を得た場合に、当該取得対象オブジェクトＡＯに貼り付けられた顔画像をセーブデータ記憶域Ｄｏに格納することが許容される。他の例として、敵オブジェクトが設定した障害等をユーザが克服していくゲームにおいて、当該ゲーム中に撮像されたカメラ画像に含まれる顔画像が貼り付けられた取得対象オブジェクトＡＯが当該ゲームに登場する。そして、ユーザがゲーム中に登場した取得対象オブジェクトＡＯが設定した障害等をユーザが克服してゴールにたどり着いた場合に、当該取得対象オブジェクトＡＯに貼り付けられた顔画像をセーブデータ記憶域Ｄｏに格納することが許容される。
【０４９４】
また、上述した第１〜第５の実施形態では、図１４に示したフローチャートに基づいた画像処理において取得した顔画像（第１〜第４の実施形態では顔画像をセーブデータ記憶域Ｄｏに格納するためのゲームを実行する前に顔画像取得処理によって取得した顔画像、第５の実施形態では顔画像をセーブデータ記憶域Ｄｏに格納するためのゲームの実行中に取得した顔画像）を、セーブデータ記憶域Ｄｏに格納する対象とする例を用いたが、当該画像処理のアプリケーションとは別のアプリケーションにおいて既に取得している顔画像をセーブデータ記憶域Ｄｏに格納する対象としてもかまわない。例えば、ゲーム装置１０では、撮像部（カメラ）を内蔵しており、図１４に示したフローチャートに基づいた画像処理とは別のカメラ撮像アプリケーションによっても当該撮像部によって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータをデータ保存用内部メモリ３５やデータ保存用外部メモリ４６等の記録媒体に保存したりすることが可能である。また、ゲーム装置１０は、他の装置から撮像画像を含むデータを受信することが可能であり、通信アプリケーションを実行することによって受信したデータをデータ保存用内部メモリ３５やデータ保存用外部メモリ４６等の記録媒体に保存したりすることも可能である。このように、カメラ撮像アプリケーションや通信アプリケーションの実行によって予め得られている画像から顔認識された顔画像を、セーブデータ記憶域Ｄｏに格納する対象としてもかまわない。
【０４９５】
上記画像処理のアプリケーションとは別のアプリケーションにおいて既に取得している顔画像をセーブデータ記憶域Ｄｏに格納する対象とする場合、当該別のアプリケーションを実行した際に保存されている撮影画像に対して顔認識処理を行って顔画像を少なくとも１つ抽出し、当該抽出された顔画像を格納する対象とする。具体的には、上記第１のゲームまたは上記第２のゲームに登場させるキャラクタ（顔画像）の選択を促すために、当該キャラクタを上側ＬＣＤ２２および／または下側ＬＣＤ１２に表示する際（例えば、ステップ３０、ステップ４０、ステップ９０、ステップ１０３、ステップ１２６、ステップ１４０、ステップ１６０、ステップ１６２等）、別のアプリケーションの実行によって予め取得されている顔画像を含む少なくとも１つのキャラクタも選択対象として表示する。この場合、予め保存されている撮影画像に対して、上記キャラクタを表示する前に顔認識処理を行って顔画像を少なくとも１つ抽出しておき、抽出された顔画像から任意のものを選択対象として上記キャラクタに加えて表示する。そして、ユーザが上記抽出によって得られた顔画像を含むキャラクタをゲームに登場させることを選択した場合、ユーザが当該キャラクタとの戦いに勝利した場合、当該顔画像がセーブデータ記憶域Ｄｏに格納される。
【０４９６】
このように、上記画像処理のアプリケーションとは別のアプリケーションにおいて既に取得している顔画像もセーブデータ記憶域Ｄｏに格納する対象とすることによって、ユーザが取得可能となる顔画像のバリエーションが拡がって顔画像が収集しやすくなるとともに、ユーザが予想できない顔画像がゲームの参加対象として突然加えられるため、顔画像収集にあたっての倦怠を防止することもできる。
【０４９７】
また、上述した説明では、ゲーム装置１０に生じる角速度を検出し、当該角速度を用いて実空間におけるゲーム装置１０の動きを算出する例を用いたが、他の方式を用いてゲーム装置１０の動きを算出してもかまわない。第１の例として、ゲーム装置１０に内蔵されている加速度センサ３９が検出した加速度を用いて、ゲーム装置１０の動きを算出してもかまわない。一例として、加速度センサ３９を搭載するゲーム装置１０が静的な状態であることを前提としてコンピュータ側で処理する場合（すなわち、加速度センサ３９によって検出される加速度が重力加速度のみであるとして処理する場合）、ゲーム装置１０が現実に静的な状態であれば、検出された加速度に基づいてゲーム装置１０の姿勢が重力方向に対して傾いているか否か、またはどの程度傾いているかを知ることができる。他の例として、加速度センサ３９を搭載するゲーム装置１０が動的な状態であることを前提とする場合には、加速度センサ３９が重力加速度成分に加えて加速度センサ３９の動きに応じた加速度を検出するので、重力加速度成分を所定の処理により除去すれば、ゲーム装置１０の動き方向等を知ることができる。具体的には、加速度センサ３９を備えるゲーム装置１０がユーザの手で動的に加速されて動かされる場合に、加速度センサ３９によって生成される加速度信号を処理することによって、ゲーム装置１０の様々な動きおよび／または位置を算出することができる。また、加速度センサ３９が動的な状態であることを前提とする場合であっても、加速度センサ３９の動きに応じた加速度を所定の処理により除去すれば、重力方向に対するゲーム装置１０の傾きを知ることが可能である。
【０４９８】
第２の例として、ゲーム装置１０に内蔵されている実カメラ（外側撮像部２３または内側撮像部２４）によってリアルタイムで撮像されたカメラ画像の移動量を用いて、ゲーム装置１０の動きを算出してもかまわない。例えば、ゲーム装置１０が動くことによって、上記実カメラの撮像方向や撮像位置が変わった場合、当該実カメラで撮像されるカメラ画像も変化する。したがって、ゲーム装置１０に内蔵されている実カメラで撮像されるカメラ画像の変化を用いれば、当該実カメラの撮像方向が変化した角度や撮像位置の移動量等を算出することができる。一例として、ゲーム装置１０に内蔵されている実カメラで撮像されるカメラ画像から所定の物体を識別し、当該物体が撮像されている角度や撮像されている位置を時系列的に比較することによって、これらの変化量から当該実カメラの撮像方向が変化した角度や撮像位置の移動量等を算出することができる。他の例として、ゲーム装置１０に内蔵されている実カメラで撮像されるカメラ画像全体に対して時系列的に比較することによって、当該画像全体の撮像方向や撮像範囲の変化量から、当該実カメラの撮像方向が変化した角度や撮像位置の移動量等を算出することができる。
【０４９９】
第３の例として、上述したゲーム装置１０に生じる角速度、ゲーム装置１０に生じる加速度、およびゲーム装置１０によって撮像されたカメラ画像の少なくとも２つを組み合わせて、ゲーム装置１０の動きを算出してもかまわない。これによって、１つのパラメータからゲーム装置１０の動きを算出する場合に当該動きの推定が難しい状況において、他のパラメータを組み合わせてゲーム装置１０の動きを算出することによって、当該状況を補ったゲーム装置１０の動きの算出が可能となる。一例として、上記第２の例によるゲーム装置１０の動きを算出では、撮像されたカメラ画像が時系列的に水平方向へ動いた場合、ゲーム装置１０の撮影角度が鉛直方向を中心として回転したのか、ゲーム装置１０が水平移動したのか、正確な判定が難しいことがある。この場合、ゲーム装置１０に生じる角速度を用いれば、ゲーム装置１０が回転移動したのか水平移動したのかを容易に判定することが可能となる。
【０５００】
また、第４の例として、ゲーム装置１０の動きを、いわゆるＡＲ（拡張現実）の技術により算出してもよい。
【０５０１】
また、上述した説明では、上側ＬＣＤ２２に、外側撮像部２３および内側撮像部２４のいずれかから取得したカメラ画像ＣＩに基づいた、実世界の平面画像（上述した立体視可能な画像とは反対の意味での平面視の画像）が表示される例を主に用いたが、裸眼で立体視可能な画像（立体画像）を上側ＬＣＤ２２に表示することもできる。例えば、上述したように、ゲーム装置１０は、外側左撮像部２３ａおよび外側右撮像部２３ｂから取得したカメラ画像を用いた立体視可能な画像（立体画像）を上側ＬＣＤ２２に表示することが可能である。この場合、上側ＬＣＤ２２に表示された立体画像内に敵オブジェクトＥＯや存在したり、立体画像から取得対象オブジェクトＡＯが出現したりするように描画される。
【０５０２】
例えば、上記立体画像に敵オブジェクトＥＯや取得対象オブジェクトＡＯを描画する場合、外側左撮像部２３ａから得られた左目用画像および外側右撮像部２３ｂから得られた右目用画像を用いて、上述した画像処理を行う。具体的には、上述した画像処理において、顔認識処理を行って顔画像が抽出されるカメラ画像は、上記左目用画像および上記右目用画像の一方が用いられ、当該一方の画像から得られた顔画像のテクスチャがマッピングされた敵オブジェクトＥＯや取得対象オブジェクトＡＯが仮想空間に設定される。また、仮想空間に配置された敵オブジェクトＥＯ、取得対象オブジェクトＡＯ、および弾オブジェクトＢＯ等を、２つの仮想カメラ（ステレオカメラ）から透視変換することによって、それぞれ左目用仮想世界画像と右目用仮想世界画像とを得る。そして、左目用の実世界画像と左目用仮想世界画像とを合成して左目用表示画像を生成し、右目用の実世界画像と右目用仮想世界画像とを合成して右目用表示画像を生成し、当該左目用表示画像および当該右目用表示画像を上側ＬＣＤ２２に出力する。
【０５０３】
また、上述した説明では、ゲーム装置１０に内蔵する実カメラで撮像されたリアルタイムの動画像が上側ＬＣＤ２２に表示され、上記実カメラで撮像された動画像（カメラ画像）の中に敵オブジェクトＥＯや取得対象オブジェクトＡＯが登場するように表示されるが、本発明において上側ＬＣＤ２２に表示する画像は、様々なバリエーションが考えられる。第１の例として、予め録画された動画像およびテレビジョン放送や他の装置から得られる動画像等が上側ＬＣＤ２２に表示される。この場合、上記動画像が上側ＬＣＤ２２に表示され、敵オブジェクトＥＯや取得対象オブジェクトＡＯが当該動画像の中に登場することになる。第２の例として、ゲーム装置１０に内蔵する実カメラや他の実カメラから得られた静止画像が上側ＬＣＤ２２に表示される。この場合、実カメラから得られた静止画像が上側ＬＣＤ２２に表示され、敵オブジェクトＥＯや取得対象オブジェクトＡＯが当該静止画像の中に登場することになる。ここで、実カメラから得られる静止画像は、ゲーム装置１０に内蔵する実カメラでリアルタイムに撮像された実世界の静止画像でもいいし、当該実カメラや他の実カメラで予め撮影された実世界の静止画像でもいいし、テレビジョン放送や他の装置から得られる静止画像でもよい。
【０５０４】
また、上記実施形態では、上側ＬＣＤ２２がパララックスバリア方式の液晶表示装置であるとして、視差バリアのＯＮ／ＯＦＦを制御することにより、立体表示と平面表示とを切り替えることができる。他の実施形態では、例えば、上側ＬＣＤ２２としてレンチキュラー方式の液晶表示装置を用いて、立体画像および平面画像を表示可能としてもよい。レンチキュラー方式の場合でも、外側撮像部２３で撮像した２つの画像を縦方向に短冊状に分割して交互に配置することで画像が立体表示される。また、レンチキュラー方式の場合でも、内側撮像部２４で撮像した１つの画像をユーザの左右の目に視認させることによって、当該画像を平面表示させることができる。すなわち、レンチキュラー方式の液晶表示装置であっても、同じ画像を縦方向に短冊状に分割し、これら分割した画像を交互に配置することにより、ユーザの左右の目に同じ画像を視認させることができる。これにより、内側撮像部２４で撮像された画像を平面画像として表示することが可能である。
【０５０５】
また、上記実施例では、携帯型のゲーム装置１０を用いて説明したが、据置型のゲーム装置、あるいは、一般的なパーソナルコンピュータ等の情報処理装置で本発明の画像処理プログラムを実行して、本発明を実現してもかまわない。また、他の実施形態では、ゲーム装置に限らず任意の携帯型電子機器、例えば、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）や携帯電話、パーソナルコンピュータ、カメラ等であってもよい。例えば、携帯電話が、１つのハウジングの主面に２つの表示部と、実カメラとを備えてもよい。
【０５０６】
また、上述した説明では画像処理をゲーム装置１０で行う例を用いたが、上記画像処理における処理ステップの少なくとも一部を他の装置で行ってもかまわない。例えば、ゲーム装置１０が他の装置（例えば、サーバや他のゲーム装置）と通信可能に構成されている場合、上記画像処理における処理ステップは、ゲーム装置１０および当該他の装置が協働することによって実行してもよい。一例として、ゲーム装置１０が顔画像取得処理および顔画像の蓄積的な保存を許容させるためのゲーム処理を行い、当該ゲームに成功することによって許容される対象となった顔画像が、他の装置に保存されてもかまわない。この場合、複数のゲーム装置１０が他の装置に顔画像を蓄積的に保存していくことによって、顔画像の収集がさらに促進されるとともに、他のゲーム装置１０によって保存された顔画像を閲覧することによって違った楽しみ方も生まれることが考えられる。他の例として、他の装置が図２９におけるステップ５２〜ステップ５７までの処理を実行し、ゲーム装置１０が図２９におけるステップ５８およびステップ５９の処理を実行するように協働してもよい。このように、上記画像における処理ステップの少なくとも一部を他の装置で行うことによって、上述した画像処理と同様の処理が可能となる。すなわち、上述した画像処理は、少なくとも１つの情報処理装置により構成される情報処理システムに含まれる１つのプロセッサまたは複数のプロセッサ間の協働により実行されることが可能である。また、上記実施形態においては、ゲーム装置１０の情報処理部３１が所定のプログラムを実行することによって、上述したフローチャートによる処理が行われたが、ゲーム装置１０が備える専用回路によって上記処理の一部または全部が行われてもよい。
【０５０７】
また、上述したゲーム装置１０の形状や、それに設けられている各種操作ボタン１４、アナログスティック１５、タッチパネル１３の形状、数、および設置位置等は、単なる一例に過ぎず他の形状、数、および設置位置であっても、本発明を実現できることは言うまでもない。また、上述した画像処理で用いられる処理順序、設定値、判定に用いられる値等は、単なる一例に過ぎず他の順序や値であっても、本発明を実現できることは言うまでもない。
【０５０８】
また、上記画像処理プログラム（ゲームプログラム）は、外部メモリ４５やデータ保存用外部メモリ４６等の外部記憶媒体を通じてゲーム装置１０に供給されるだけでなく、有線または無線の通信回線を通じてゲーム装置１０に供給されてもよい。また、上記プログラムは、ゲーム装置１０内部の不揮発性記憶装置に予め記録されていてもよい。なお、上記プログラムを記憶する情報記憶媒体としては、不揮発性メモリの他に、ＣＤ−ＲＯＭ、ＤＶＤ、あるいはそれらに類する光学式ディスク状記憶媒体、フレキシブルディスク、ハードディスク、光磁気ディスク、磁気テープ、などでもよい。また、上記プログラムを記憶する情報記憶媒体としては、上記プログラムを一時的に記憶する揮発性メモリでもよい。このような記憶媒体は、コンピュータ等が読み取り可能な記録媒体ということができる。例えば、コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、上述で説明した各種機能を提供させることができる。
【０５０９】
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示に過ぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。また、当業者は、本発明の具体的な実施形態の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。また、本明細書において使用される用語は、特に言及しない限り、当該分野で通常用いられる意味で用いられることが理解されるべきである。したがって、他に定義されない限り、本明細書中で使用されるすべての専門用語および技術用語は、本発明の属する分野の当業者によって一般的に理解されるのと同じ意味を有する。矛盾する場合、本明細書（定義を含めて）が優先する。
（付記）
上記実施の形態は、以下の態様（付記と呼ぶ）で例示することができる。以下のそれぞれの付記に含まれる構成要素は、他の付記に含まれる構成要素と組み合わせることができる。
【０５１０】
（付記１）
表示装置に画像を表示するコンピュータで実行されるゲームプログラムであって、前記コンピュータに、
顔画像を取得する画像取得ステップと、
前記取得した顔画像を基に第１のキャラクタオブジェクトを作成するステップと、
前記第１のキャラクタオブジェクトとともに、前記第１のキャラクタオブジェクトとは異なる第２のキャラクタオブジェクトを表示してゲームを実行するゲーム処理ステップと、を実行させ、
前記ゲーム処理ステップは、
プレイヤの操作による前記第１のキャラクタオブジェクトへの攻撃により、前記ゲームでの成功に寄与するステップと、
プレイヤの操作による前記第２のキャラクタオブジェクトへの攻撃を無効にするステップと、を含むゲームプログラム。
【０５１１】
（付記２）
表示装置に画像を表示するコンピュータで実行されるゲームプログラムであって、前記コンピュータに、
顔画像を取得する画像取得ステップと、
前記取得した一の顔画像を含む第１のキャラクタオブジェクトを作成するステップと、
前記第１のキャラクタオブジェクトとともに、前記第１のキャラクタオブジェクトよりも寸法の小さい、前記一の顔画像を含む第２のキャラクタオブジェクトと前記第１のキャラクタオブジェクトよりも寸法の小さい、前記一の顔画像以外の顔画像を含む第３のキャラクタオブジェクトとを表示してゲームを実行するゲーム処理ステップと、を実行させ、
前記ゲーム処理ステップは、
プレイヤの操作による前記第３のキャラクタオブジェクトへの攻撃により、前記第１のキャラクタオブジェクトに含まれる前記顔画像の変形を進行させるステップと、
プレイヤの操作による前記第２のキャラクタオブジェクトへの攻撃により、前記第１のキャラクタオブジェクトに含まれる顔画像が前記取得した元の顔画像に近づくように、前記変形を後退させるステップと、を含むゲームプログラム。
【０５１２】
（付記３）
表示装置に画像を表示するコンピュータで実行されるゲームプログラムであって、前記コンピュータに、
顔画像を取得する画像取得ステップと、
前記取得した顔画像を変形させた顔画像を含むキャラクタオブジェクトを作成するステップと、
プレイヤの操作を受け付けて、前記顔画像に関連するゲームを進行するゲーム処理ステップと、
プレイヤの操作による前記ゲームでの成功または不成功を判定するステップと、
前記ゲームの結果が成功であったときに、前記変形させた顔画像が前記取得した元の顔画像に復帰するステップと、を実行させるゲームプログラム。
【０５１３】
（付記４）
表示装置を接続可能な画像処理装置であって、
顔画像を取得する画像取得手段と、
前記取得した顔画像を基に第１のキャラクタオブジェクトを作成する手段と、
前記第１のキャラクタオブジェクトとともに、前記第１のキャラクタオブジェクトとは異なる第２のキャラクタオブジェクトを前記表示装置に表示してゲームを実行するゲーム処理手段と、を備え、
前記ゲーム処理手段は、
プレイヤの操作による前記第１のキャラクタオブジェクトへの攻撃により、前記ゲームでの成功に寄与する手段と、
プレイヤの操作による前記第２のキャラクタオブジェクトへの攻撃を無効にする手段と、を含む画像処理装置。
【０５１４】
（付記５）
表示装置を接続可能な画像処理装置であって、
顔画像を取得する画像取得手段と、
前記取得した一の顔画像を含む第１のキャラクタオブジェクトを作成する手段と、
前記第１のキャラクタオブジェクトとともに、前記第１のキャラクタオブジェクトよりも寸法の小さい、前記一の顔画像を含む第２のキャラクタオブジェクトと前記第１のキャラクタオブジェクトよりも寸法の小さい、前記一の顔画像以外の顔画像を含む第３のキャラクタオブジェクトとを前記表示装置に表示してゲームを実行するゲーム処理手段と、を備え、
前記ゲーム処理手段は、
プレイヤの操作による前記第３のキャラクタオブジェクトへの攻撃により、前記第１のキャラクタオブジェクトに含まれる前記顔画像の変形を進行させる手段と、
プレイヤの操作による前記第２のキャラクタオブジェクトへの攻撃により、前記第１のキャラクタオブジェクトに含まれる顔画像が前記取得した元の顔画像に近づくように、前記変形を後退させる手段と、を含む画像処理装置。
【０５１５】
（付記６）
表示装置を接続可能な画像処理装置であって、
顔画像を取得する画像取得手段と、
前記取得した顔画像を変形させた顔画像を含むキャラクタオブジェクトを作成する手段と、
プレイヤの操作を受け付けて、前記表示装置に前記キャラクタオブジェクトを表示して前記顔画像に関連するゲームを進行するゲーム処理手段と、
プレイヤの操作による前記ゲームでの成功または不成功を判定する手段と、
前記ゲームの結果が成功であったときに、前記変形させた顔画像を前記取得した元の顔画像に復帰させる手段と、を備える画像処理装置。
【０５１６】
（付記７）
表示装置と、
顔画像を取得する画像取得手段と、
前記取得した顔画像を基に第１のキャラクタオブジェクトを作成する手段と、
前記第１のキャラクタオブジェクトとともに、前記第１のキャラクタオブジェクトとは異なる第２のキャラクタオブジェクトを前記表示装置に表示してゲームを実行するゲーム処理手段と、を備え、
前記ゲーム処理手段は、
プレイヤの操作による前記第１のキャラクタオブジェクトへの攻撃により、前記ゲームでの成功に寄与する手段と、
プレイヤの操作による前記第２のキャラクタオブジェクトへの攻撃を無効にする手段と、を含む画像処理装置。
【０５１７】
（付記８）
表示装置と、
顔画像を取得する画像取得手段と、
前記取得した一の顔画像を含む第１のキャラクタオブジェクトを作成する手段と、
前記第１のキャラクタオブジェクトとともに、前記第１のキャラクタオブジェクトよりも寸法の小さい、前記一の顔画像を含む第２のキャラクタオブジェクトと前記第１のキャラクタオブジェクトよりも寸法の小さい、前記一の顔画像以外の顔画像を含む第３のキャラクタオブジェクトとを前記表示装置に表示してゲームを実行するゲーム処理手段と、を備え、
前記ゲーム処理手段は、
プレイヤの操作による前記第３のキャラクタオブジェクトへの攻撃により、前記第１のキャラクタオブジェクトに含まれる前記顔画像の変形を進行させる手段と、
プレイヤの操作による前記第２のキャラクタオブジェクトへの攻撃により、前記第１のキャラクタオブジェクトに含まれる顔画像が前記取得した元の顔画像に近づくように、前記変形を後退させる手段と、を含む画像処理装置。
【０５１８】
（付記９）
表示装置と、
顔画像を取得する画像取得手段と、
前記取得した顔画像を変形させた顔画像を含むキャラクタオブジェクトを作成する手段と、
プレイヤの操作を受け付けて、前記表示装置に前記キャラクタオブジェクトを表示して前記顔画像に関連するゲームを進行するゲーム処理手段と、
プレイヤの操作による前記ゲームでの成功または不成功を判定する手段と、
前記ゲームの結果が成功であったときに、前記変形させた顔画像を前記取得した元の顔画像に復帰させる手段と、を備える画像処理装置。
【０５１９】
（付記１０）
撮像装置と、
前記撮像装置によって取得した画像を含む情報を表示する表示装置と、
前記撮像装置および表示装置と連携する画像処理装置とを備える画像処理システムであって、
前記画像処理装置は、
顔画像を取得する画像取得手段と、
前記取得した顔画像を基に第１のキャラクタオブジェクトを作成する手段と、
前記第１のキャラクタオブジェクトとともに、前記第１のキャラクタオブジェクトとは異なる第２のキャラクタオブジェクトを前記表示装置に表示してゲームを実行するゲーム処理手段と、を備え、
前記ゲーム処理手段は、
プレイヤの操作による前記第１のキャラクタオブジェクトへの攻撃により、前記ゲームでの成功に寄与する手段と、
プレイヤの操作による前記第２のキャラクタオブジェクトへの攻撃を無効にする手段と、を含む画像処理システム。
【０５２０】
（付記１１）
撮像装置と、
前記撮像装置によって取得した画像を含む情報を表示する表示装置と、
前記撮像装置および表示装置と連携する画像処理装置とを備える画像処理システムであって、
前記画像処理装置は、
顔画像を取得する画像取得手段と、
前記取得した一の顔画像を含む第１のキャラクタオブジェクトを作成する手段と、
前記第１のキャラクタオブジェクトとともに、前記第１のキャラクタオブジェクトよりも寸法の小さい、前記一の顔画像を含む第２のキャラクタオブジェクトと前記第１のキャラクタオブジェクトよりも寸法の小さい、前記一の顔画像以外の顔画像を含む第３のキャラクタオブジェクトとを前記表示装置に表示してゲームを実行するゲーム処理手段と、を備え、
前記ゲーム処理手段は、
プレイヤの操作による前記第３のキャラクタオブジェクトへの攻撃により、前記第１のキャラクタオブジェクトに含まれる前記顔画像の変形を進行させる手段と、
プレイヤの操作による前記第２のキャラクタオブジェクトへの攻撃により、前記第１のキャラクタオブジェクトに含まれる顔画像が前記取得した元の顔画像に近づくように、前記変形を後退させる手段と、を含む画像処理システム。
【０５２１】
（付記１２）
撮像装置と、
前記撮像装置によって取得した画像を含む情報を表示する表示装置と、
前記撮像装置および表示装置と連携する画像処理装置とを備える画像処理システムであって、
前記画像処理装置は、
顔画像を取得する画像取得手段と、
前記取得した顔画像を変形させた顔画像を含むキャラクタオブジェクトを作成する手段と、
プレイヤの操作を受け付けて、前記表示装置に前記キャラクタオブジェクトを表示して前記顔画像に関連するゲームを進行するゲーム処理手段と、
プレイヤの操作による前記ゲームでの成功または不成功を判定する手段と、
前記ゲームの結果が成功であったときに、前記変形させた顔画像を前記取得した元の顔画像に復帰させる手段と、を備える画像処理システム。
【０５２２】
（付記１３）
表示装置に画像を表示するコンピュータが、
顔画像を取得する画像取得ステップと、
前記取得した顔画像を基に第１のキャラクタオブジェクトを作成するステップと、
前記第１のキャラクタオブジェクトとともに、前記第１のキャラクタオブジェクトとは異なる第２のキャラクタオブジェクトを表示してゲームを実行するゲーム処理ステップと、を実行し、
前記ゲーム処理ステップは、
プレイヤの操作による前記第１のキャラクタオブジェクトへの攻撃により、前記ゲームでの成功に寄与するステップと、
プレイヤの操作による前記第２のキャラクタオブジェクトへの攻撃を無効にするステップと、を含む情報処理方法。
【０５２３】
（付記１４）
表示装置に画像を表示するコンピュータが、
顔画像を取得する画像取得ステップと、
前記取得した一の顔画像を含む第１のキャラクタオブジェクトを作成するステップと、
前記第１のキャラクタオブジェクトとともに、前記第１のキャラクタオブジェクトよりも寸法の小さい、前記一の顔画像を含む第２のキャラクタオブジェクトと前記第１のキャラクタオブジェクトよりも寸法の小さい、前記一の顔画像以外の顔画像を含む第３のキャラクタオブジェクトとを表示してゲームを実行するゲーム処理ステップと、を実行し、
前記ゲーム処理ステップは、
プレイヤの操作による前記第３のキャラクタオブジェクトへの攻撃により、前記第１のキャラクタオブジェクトに含まれる前記顔画像の変形を進行させるステップと、
プレイヤの操作による前記第２のキャラクタオブジェクトへの攻撃により、前記第１のキャラクタオブジェクトに含まれる顔画像が前記取得した元の顔画像に近づくように、前記変形を後退させるステップと、を含む情報処理方法。
【０５２４】
（付記１５）
表示装置に画像を表示するコンピュータが、
顔画像を取得する画像取得ステップと、
前記取得した顔画像を変形させた顔画像を含むキャラクタオブジェクトを作成するステップと、
プレイヤの操作を受け付けて、前記顔画像に関連するゲームを進行するゲーム処理ステップと、
プレイヤの操作による前記ゲームでの成功または不成功を判定するステップと、
前記ゲームの結果が成功であったときに、前記変形させた顔画像が前記取得した元の顔画像に復帰するステップと、を実行する情報処理方法。
【産業上の利用可能性】
【０５２５】
本発明に係るゲームプログラム、画像処理装置、画像処理システム、および画像処理方法は、実世界画像と仮想世界画像とを合成して新たな画像を生成することが可能であり、各種画像を表示装置に表示する処理を行うゲームプログラム、画像処理装置、画像処理システム、および画像処理方法等として有用である。
【符号の説明】
【０５２６】
１０…ゲーム装置
１１…下側ハウジング
１２…下側ＬＣＤ
１３…タッチパネル
１４…操作ボタン
１５…アナログスティック
１６…ＬＥＤ
１７…挿入口
１８…マイクロフォン用孔
１９…無線スイッチ
２１…上側ハウジング
２２…上側ＬＣＤ
２３…外側撮像部
２３ａ…外側左撮像部
２３ｂ…外側右撮像部
２４…内側撮像部
２５…３Ｄ調整スイッチ
２６…３Ｄインジケータ
２７…スクリーンカバー
２８…タッチペン
３１…情報処理部
３１１…ＣＰＵ
３１２…ＧＰＵ
３１３…ＶＲＡＭ
３２…メインメモリ
３３…外部メモリＩ／Ｆ
３４…データ保存用外部メモリＩ／Ｆ
３５…データ保存用内部メモリ
３６…無線通信モジュール
３７…ローカル通信モジュール
３８…ＲＴＣ
３９…加速度センサ
４０…角速度センサ
４１…電源回路
４２…Ｉ／Ｆ回路
４３…マイク
４４…スピーカ
４５…外部メモリ
４６…データ保存用外部メモリ
【図１】
0005827007.tif 000002
【図２】
0005827007.tif 000003
【図３Ａ】
0005827007.tif 000004
【図３Ｂ】
0005827007.tif 000005
【図３Ｃ】
0005827007.tif 000006
【図３Ｄ】
0005827007.tif 000007
【図４】
0005827007.tif 000008
【図５】
0005827007.tif 000009
【図６】
0005827007.tif 000010
【図７】
0005827007.tif 000011
【図８】
0005827007.tif 000012
【図９】
0005827007.tif 000013
【図１０】
0005827007.tif 000014
【図１１】
0005827007.tif 000015
【図１２】
0005827007.tif 000016
【図１３】
0005827007.tif 000017
【図１４】
0005827007.tif 000018
【図１５】
0005827007.tif 000019
【図１６】
0005827007.tif 000020
【図１７】
0005827007.tif 000021
【図１８】
0005827007.tif 000022
【図１９Ａ】
0005827007.tif 000023
【図１９Ｂ】
0005827007.tif 000024
【図１９Ｃ】
0005827007.tif 000025
【図２０Ａ】
0005827007.tif 000026
【図２０Ｂ】
0005827007.tif 000027
【図２１】
0005827007.tif 000028
【図２２】
0005827007.tif 000029
【図２３】
0005827007.tif 000030
【図２４】
0005827007.tif 000031
【図２５】
0005827007.tif 000032
【図２６】
0005827007.tif 000033
【図２７Ａ】
0005827007.tif 000034
【図２７Ｂ】
0005827007.tif 000035
【図２８】
0005827007.tif 000036
【図２９】
0005827007.tif 000037
【図３０】
0005827007.tif 000038
【図３１】
0005827007.tif 000039
【図３２Ａ】
0005827007.tif 000040
【図３２Ｂ】
0005827007.tif 000041
【図３３】
0005827007.tif 000042
【図３４】
0005827007.tif 000043
【図３５】
0005827007.tif 000044
【図３６】
0005827007.tif 000045
【図３７】
0005827007.tif 000046
【図３８】
0005827007.tif 000047
【図３９】
0005827007.tif 000048
【図４０】
0005827007.tif 000049
【図４１】
0005827007.tif 000050
【図４２】
0005827007.tif 000051
【図４３】
0005827007.tif 000052
【図４４】
0005827007.tif 000053
【図４５】
0005827007.tif 000054
【図４６】
0005827007.tif 000055
【図４７】
0005827007.tif 000056
【図４８】
0005827007.tif 000057
【図４９】
0005827007.tif 000058
【図５０】
0005827007.tif 000059
【図５１】
0005827007.tif 000060