(57)【要約】      （修正有）【課題】非可視光ノイズ光源が存在する場合、当該ノイズ光源を確実に検出しプレーヤに知らせる。【解決手段】表示部１９０の上下位置に配置された一対の赤外線発光源としての識別体８ａ、８ｂをガン型コントローラ１０に内蔵された赤外線カメラ１８で撮影し、この撮像画像に含まれる前記複数の識別体の位置に基づき、前記表示部１９０上における前記ガン型コントローラ１０の指示位置３０を特定し、特定された前記指示位置を反映したゲーム用の画像を生成する画像生成システムである。  このシステムは、表示部１９０に前記撮像画像を表示し、撮像画像に含まれる前記識別体の表示位置と関連づけた探索経路に沿って前記ガン型コントローラ１０の向きを変化させることをプレーヤに指示する探索動作指示部１１８ａと、探索動作指示実行中に得られる撮像画像に含まれるノイズ光源を特定しプレーヤに告知するノイズ光源特定処理を行なう特定処理部１１８ｂとを含む。【選択図】図２
2007267850.tif 000002
【特許請求の範囲】
【請求項１】
ゲーム用の画像を生成するためのプログラムであって、
非可視光撮影可能な撮像手段を有するポインティングデバイスによる表示部上における指示位置を検出するために、表示部に関連付けられて配置され非可視光を発する複数の識別体を前記撮像手段で撮影した撮像画像に含まれる前記複数の識別体の位置を検出する識別体位置検出部と、
前記検出された前記各識別体の位置に基づき、前記表示部上における前記ポインティングデバイスの指示位置を特定する位置特定処理を行う指示位置特定部と、
前記非可視光のノイズ光源を検出しプレーヤに告知するノイズ光源検出処理を行なうノイズ光源検出部と、
してコンピュータを機能させ、特定された前記指示位置を反映したゲームの画像を生成するとともに、
前記ノイズ光源検出部は、
前記表示部に撮像画像を表示し、撮像画像に含まれる前記識別体の表示位置と関連づけて設定され前記撮像画像より広いエリアである所定探索エリアの撮像をプレーヤに指示する探索動作指示処理を行う探索動作指示部と、
前記探索動作指示実行中に得られる撮像画像に基づき前記探索エリアに存在するノイズ光源の位置を特定しプレーヤに告知するノイズ光源特定処理を行なう特定処理部と、
を含むことを特徴とするプログラム。
【請求項２】
請求項１において、
前記探索動作指示部は、
前記撮像画像に含まれる識別体位置に関連付けた位置に特定オブジェクトを表示し、前記探索動作指示処理として、撮像画像として映しだされる前記探索エリア上の前記探索位置に前記特定オブジェクトの移動目標オブジェクトを表示することを特徴とするプログラム。
【請求項３】
請求項１、２のいずれかにおいて、
前記探索動作指示部は、
前記探索動作指示処理として、前記識別体が表示される撮像画像の４隅の少なくとも一つを探索位置として指示することを特徴とするプログラム。
【請求項４】
請求項１において、
前記探索動作指示部は、
前記表示部に撮像画像を探索用画像として表示し、前記探索エリアにおいて前記探索用画像として撮像済のエリアを識別表示することで、残りの探索エリアの撮像をプレーヤに指示する探索動作指示処理を行うことを特徴とするプログラム。
【請求項５】
請求項１〜４のいずれかにおいて、
前記識別体位置検出部は、
前記表示部の外部に設置された前記複数の識別体を前記撮像手段で撮影した撮像画像に含まれる各識別体の位置を検出することを特徴とするプログラム。
【請求項６】
請求項1〜５のいずれかにおいて、
前記ポインティングデバイスはシューティングデバイスとして形成され、
ゲームモードには、前記特定された指示位置を、シューティングデバイスの照準位置とするシューティング用のゲーム画像を生成することを特徴とするプログラム。
【請求項７】
請求項１〜６のいずれかのプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項８】
ゲーム用の画像を生成するための画像生成システムであって、
非可視光撮影可能な撮像手段を有するポインティングデバイスによる表示部上における指示位置を検出するために、表示部に関連付けられて配置され非可視光を発する複数の識別体を前記撮像手段で撮影した撮像画像に含まれる前記複数の識別体の位置を検出する識別体位置検出部と、
前記検出された前記各識別体の位置に基づき、前記表示部上における前記ポインティングデバイスの指示位置を特定する位置特定処理を行う指示位置特定部と、
前記非可視光のノイズ光源を検出しプレーヤに告知するノイズ光源検出処理を行なうノイズ光源検出部と
を含み、特定された前記指示位置を反映したゲーム用の画像を生成するとともに、
前記ノイズ光源検出部は、
前記表示部に撮像画像を表示し、撮像画像に含まれる前記識別体の表示位置と関連づけて設定され前記撮像画像より広いエリアである所定探索エリアの撮像をプレーヤに指示する探索動作指示処理を行う探索動作指示部と、
前記探索動作指示実行中に得られる撮像画像に基づき前記探索エリアに存在するノイズ光源の位置を特定しプレーヤに告知するノイズ光源特定処理を行なう特定処理部と、
を含むことを特徴とする画像生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報記憶媒体、及び画像生成システムに関する。
【背景技術】
【０００２】
従来より、ガン型コントローラ（広義にはシューティングデバイス。更に広義にはポインティングデバイス）を用いて画面上のターゲットオブジェクトをシューティングして楽しむガンゲームと呼ばれる分野のゲームが人気を博している。このガンゲームでは、プレーヤ（操作者）がガン型コントローラの引き金を引くと、ショットの着弾位置（広義には指示位置）が、ガン型コントローラが内蔵する撮像手段を利用して光学的に検出される。そして、検出された着弾位置にターゲット（標的）オブジェクトが存在する場合には当たりと判定され、ターゲットオブジェクトが存在しない場合には外れと判定される。このようなガンゲームをプレイすることによりプレーヤは、現実世界における射撃を仮想体験できるようになる。
【０００３】
このようなガンゲームにおいては、ゲーム画面内の所定位置に非可視光である２つの赤外光スポットを投写し、これをガン型コントローラに内蔵された赤外線撮像手段で撮影し、この撮像画像データに含まれる２つの赤外光スポットの位置に基づき、着弾位置を検出する構成を採用していた。
【０００４】
このような着弾位置検出のための従来技術としては、例えば特開平８−２２６７９３号公報に記載のものがある。
【０００５】
しかし、このような従来技術では、表示画面の周囲に、赤外光を発する他のノイズ光源が存在する場合や、表示部上に例えば周囲に存在する照明、窓から差し込む太陽の光、その他各種の熱源が映り込んだ場合には、着弾位置を正確に検出することができないという問題があった。
【０００６】
特に、前記ノイズ光源は、非可視光を発する光源であるため、プレーヤはノイズ光源がどこに存在するかを特定できず、有効な対策をとることが難しいという問題があった。
【特許文献１】特開平８−２２６７９３号公報
【特許文献２】特開２００１−７０６３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、このような課題に鑑みなされたものであり、その目的は、ポインティングデバイスによる表示部上における指示位置の特定の妨げとなる非可視光を発するノイズ光源が存在する場合でも、当該ノイズ光源を確実に検出しプレーヤに知らせることにより、指示位置を適切に反映したゲーム用の画像生成を可能とする画像生成システム、プログラム及び情報記憶媒体を提供することにある。
【課題を解決するための手段】
【０００８】
（1）本発明は、画像を生成するための画像生成システムであって、
非可視光撮影可能な撮像手段を有するポインティングデバイスによる表示部上における指示位置を検出するために、表示部に関連付けられて配置され非可視光を発する複数の識別体を前記撮像手段で撮影した撮像画像に含まれる前記複数の識別体の位置を検出する識別体位置検出部と、
前記検出された前記各識別体の位置に基づき、前記表示部上における前記ポインティングデバイスの指示位置を特定する位置特定処理を行う指示位置特定部と、
前記非可視光のノイズ光源を検出しプレーヤに告知するノイズ光源検出処理を行なうノイズ光源検出部と、
を含み、特定された前記指示位置を反映したゲーム用の画像を生成するとともに、
前記ノイズ光源検出部は、
前記表示部に撮像画像を表示し、撮像画像に含まれる前記識別体の表示位置と関連づけて設定され前記撮像画像より広いエリアである所定探索エリアの撮像をプレーヤに指示する探索動作指示処理を行う探索動作指示部と、
前記探索動作指示実行中に得られる撮像画像に基づき前記探索エリアに存在するノイズ光源の位置を特定しプレーヤに告知するノイズ光源特定処理を行なう特定処理部と、
を含む画像生成システムに関係する。
【０００９】
また本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶（記録）した情報記憶媒体に関係する。
【００１０】
ここにおいて、前記非可視光を発する複数の識別体は、表示部に表示される画面内に含まれるように表示してもよく、又は表示部の外に配置するように構成してもよい。
【００１１】
前記非可視光を発する複数の識別体としては、例えば赤外光を発する光源を識別体として用いてもよい。
【００１２】
本発明は、ポインティングデバイスを用いて、ゲーム用の画面が表示される表示部の所望位置を指示することを可能とするものである。この際、ポインティングデバイスに設けられた非可視光を撮影可能な撮像手段から出力される撮像画像データが、識別体位置検出部に入力される。
【００１３】
そして、識別体位置検出部は、この撮像画像に含まれる複数の識別体の位置を検出する。前記撮像画面内における複数の識別体の位置は表示部の関連付けられるため、撮像画像に含まれる複数の識別体の位置を検出することにより、表示部上におけるポインティングデバイスの指示位置を特定し、特定された支持位置を反映したゲーム用の画像を生成することができる。
【００１４】
このとき、撮像手段で撮影される画像中に、前記識別体以外のノイズ光源が含まれる場合には、ポインティングデバイスの指示位置を正確に検出することができない。特に、当該ノイズ光源が非可視領域の光を発する場合には、そのノイズ光源の存在をプレーヤが認識することが難しく、当然のことながらその存在位置を特定することも難しい。本発明ではこのようなノイズ光源を検出し、ユーザーに告知するノイズ光源検出処理部を含む。
【００１５】
具体的には、前記表示部に撮像画像を表示し、撮像画像に含まれる前記識別体の表示位置と関連づけて設定され前記撮像画像より広いエリアである所定探索エリアの撮像をプレーヤに指示する探索動作指示処理を行う。
【００１６】
そして、プレーヤが、この探索動作指示に従い、指示された探索エリアの撮像を行うようにポインティングデバイスの向きを変化させると、ポインティングデバイスに設けられた撮像手段によって撮影される撮像領域が順次変化することとなる。
【００１７】
ノイズ光源検出部は、この探索動作指示実行中に得られる撮像画像に、前記識別体以外のノイズ光源が含まれるか否かを判断し、ノイズ光源が含まれる場合にはその位置を特定しユーザーに告知するノイズ光源特定処理を行う。
【００１８】
前記複数の識別体の配置は予め特定処理部において認識されているため、撮像画像に含まれる光源の中から、その存在位置や、光源の大きさ等によりノイズ光源を特定することができる。
【００１９】
このように、本発明によれば、ポインティングデバイスを用いた指示位置検出の妨げとなる非可視光ノイズ光源が存在する場合であっても、これを確実に検出し、その位置をプレーヤに告知することができるため、プレーヤはこれを受けてそのノイズ光源を容易に取り除くことができ、この結果、撮像画像に含まれる識別体の位置に基づき、ポインティングデバイスによる表示部上における指示位置を確実に検出し、その検出位置を反映したゲーム画像を生成し表示することが可能となる。
【００２０】
特に、本発明によれば、周囲に複数の非可視光ノイズ光源が存在するような環境下においてゲームを行う場合であっても、これらのノイズ光源を確実に排除し、良好なゲーム実行環境を整え、ゲームを楽しむことが可能となる。
【００２１】
なお、前記ノイズ光源の探索動作指示処理にあたり、プレーヤに指示する探索経路は、プレーヤにとってできるだけ分かりやすい経路を設定し指示することが好ましい。
【００２２】
また、本発明においてノイズ光源は、それ自身がノイズ光を発する光源、他の光源からのノイズ光を反射して光る光源、表示部に映り込む他の光源等からのノイズ光、その他のノイズ光を発する部分など、自発光のタイプも反射光のタイプも含むノイズ源を幅広く意味する。
【００２３】
（２）また、本発明のプログラム、情報記憶媒体、及び画像生成システムにおいて、
前記探索動作指示部は、
前記撮像画像に含まれる識別体位置に関連付けた位置に特定オブジェクトを表示し、前記探索動作指示処理として、撮像画像として映しだされる前記探索エリア上の前記探索位置に前記特定オブジェクトの移動目標オブジェクトを表示する構成を採用するようにしてもよい。
【００２４】
本発明によれば、当該探査経路に沿ってポインティングデバイスの向き変化することをユーザーに指示する探索指示処理を行うために、表示された撮像画面内に、ポインティングデバイスの向きを変化させる経路の指標となる特定オブジェクトを表示させる構成を採用する。
【００２５】
この特定オブジェクトは、撮像画像に含まれる複数の識別体のいずれかを特定オブジェクトとして使用してもよく、又前記複数の識別体の相対位置から特定される位置に新たに特定オブジェクトを表示してもよい。
【００２６】
このように、当該撮像画像上の探索位置に、この特定オブジェクトの移動目標となる移動目標オブジェクトを表示することで、視覚的に分かり易く探索経路を指示しプレーヤに探索動作を行わせることができる。
【００２７】
（３）また、本発明のプログラム、情報記憶媒体、及び画像生成システムにおいて、
前記探索動作指示部は、
前記探索動作指示処理として、前記識別体が表示される撮像画像の４隅の少なくとも一つを探索位置として指示する構成を採用するようにしてもよい。
【００２８】
これにより、配置された識別体の周囲に存在する非可視光ノイズ光源を、広範囲に探索し、その存在位置を特定することができる。
【００２９】
（４）また、本発明のプログラム、情報記憶媒体、及び画像生成システムにおいて、
前記探索動作指示部は、
前記表示部に撮像画像を探索用画像として表示し、前記探索エリアにおいて前記探索用画像として撮像済のエリアを識別表示することで、残りの探索エリアの撮像をプレーヤに指示する探索動作指示処理を行う構成を採用するようにしてもよい。
【００３０】
これにより、探索エリアを塗りつぶす要領で、判り易い探索動作指示処理を行うことができる。
【００３１】
（５）また、本発明のプログラム、情報記憶媒体、及び画像生成システムにおいて、
前記識別体位置検出部は、
前記表示部の外部に設置された前記複数の識別体を前記撮像手段で撮影した撮像画像に含まれる各識別体の位置を検出する構成を採用するようにしてもよい。
【００３２】
（６）また、本発明のプログラム、情報記憶媒体、及び画像生成システムにおいて、
前記ポインティングデバイスはシューティングデバイスとして形成され、
ゲームモードには、前記特定された指示位置を、シューティングデバイスの照準位置とするシューティング用のゲーム画像を生成する構成を採用するようにしてもよい。
【発明を実施するための最良の形態】
【００３３】
以下、本発明の好適な実施形態について図面を用いて説明する。なお以下では、本発明を、ガン型コントローラを用いたガンゲーム（シューティングゲーム）に適用した場合を例にとり説明するが、本発明はこれに限定されず、種々のゲームに適用できる。また、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００３４】
１．構成
図１に、本実施形態を家庭用ゲームシステムに適用した場合の例について示す。
【００３５】
実施例のゲームシステムは、家庭用ゲーム機２と、テレビ４及び銃を模して作られたガン型ゲームコントローラ１０（広義にはシューティングデバイス更に広義にはポインティングデバイス他の説明でも同様）とを含む。
【００３６】
前記家庭用ゲーム機２には、画像生成用のプログラム及び当該プログラムを使用したシューティングゲーム用のプログラムが記憶された情報記憶媒体１８０がセットされ、前記プログラム等を用いてシューティングゲーム用のゲーム演算が実行され、テレビ４の表示部１９０上にゲーム画面が生成表示される。
【００３７】
プレーヤは前記ガン型コントローラ１０を用い、表示部１９０のゲーム画面上に映し出されるターゲット（標的）オブジェクトを狙って、トリガ１４を引く。
【００３８】
すると、ガン型コントローラ１０が内蔵するカメラ（撮像手段）により、銃身方向の画像が撮像され、この撮像画像データに基づき、ガン型コントローラ１０の指示位置３０が検出される。この指示位置３０は、本実施の形態ではガン型コントローラ１０の照準位置を表す。
【００３９】
そして、プレーヤがトリガ１４を引くタイミングで検出された指示位置３０が、画面上に表示されるターゲットオブジェクトの表示位置と一致した場合に当たりと判定され、一致しなかった場合には外れと判定される。
【００４０】
本実施の形態で、前記表示部１９０の外部には、複数の識別体８ａ、８ｂが着脱可能に取付けられている。本実施の形態では表示部１９０の中心位置を挟んで点対象となる位置に一対の識別体８ａ、８ｂが取付けられている。これら各識別体８ａ、８ｂは、コントローラに内蔵されたカメラによって識別可能なものとして形成すればよく、本実施の形態では、非可視光である赤外線を発光する発光源を識別体８ａ、８ｂとして用いる。
【００４１】
ここでは、前記識別体８ａ、８ｂは、その中間地点が表示部１９０の中央部と一致するような配置となっている。
【００４２】
これにより、コントローラ１０に内蔵されたカメラの撮像画像に含まれれる識別体８ａ、８ｂの位置を検出することにより、検出された両識別体８ａ、８ｂの中間位置が表示部１９０の中心位置として特定され、従って撮像画像に含まれる各識別体８ａ、８ｂの位置を特定することにより、ガン型コントローラ１０によって指示される表示部１９０上における指示位置３０を特定することができる。
【００４３】
図２に、本実施形態の画像生成システム（ゲームシステム、位置検出システム）のブロック図を示す。なお本実施形態の画像生成システムは図２の構成要素（各部）の一部を省略した構成としてもよい。
【００４４】
ガン型コントローラ１０は、銃の形を模して形成されたポインティングデバイス１２（ケーシング）と、ポインティングデバイス１２の握り部に設けられた引き金１４と、ポインティングデバイス１２の銃口付近に内蔵されるレンズ１６（光学系）及びＣＣＤカメラ１８を含む。
【００４５】
前記ＣＣＤカメラ１８は、前記識別体８ａ、８ｂの発する非可視光を検出可能なＣＣＤセンサー素子をマトリックス状に配置して構成されたものであり、本実施の形態では赤外線領域の光を十分な感度を持って検出可能なＣＣＤセンサー素子をマトリックス状に配置して構成されている。
【００４６】
そして、前記ＣＣＤカメラ１８は、受光面の中心部の法線が前記ポインティングデバイスの銃口方向に向くように設置され、銃口方向の画像を、所定の周期、好ましくは１／６０秒周期で撮像可能に構成されている。
【００４７】
又、前記ガン型コントローラ１０の内部には、コントローラ全体の制御を行う処理部２０と、家庭用ゲーム機との間のインターフェースとして機能する通信部２２とを含む。
【００４８】
前記家庭用ゲーム機２の本体装置９０は、処理部１００、記憶部１７０、通信部１９６を含んで構成され、更にこの本体装置９０には、前述した表示部１９０及び音出力部１９２が接続されている。
【００４９】
本実施の形態において音出力部１９２及び表示部１８０は、図１に示すテレビ４として一体的に設けられている。
【００５０】
処理部１００は、ゲーム処理部１１０、画像生成部１２０、音生成部１３０として機能する。
【００５１】
ゲーム処理部１１０は、情報記憶媒体１８０に記憶されるプログラム、データや、ガン型コントローラ１０との間の通信情報（撮像画像情報、トリガ操作情報等）に基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの各種の処理を行う。この場合、処理部１００は、記憶部１７０をワーク領域として使用して各種の処理を行う。
【００５２】
ゲーム処理部１１０が行う処理としては、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、オブジェクト（１又は複数のプリミティブ）の位置や回転角度（Ｘ、Ｙ又はＺ軸回り回転角度）を求める処理、オブジェクトを動作させる処理（モーション処理）、仮想カメラを制御する処理（仮想カメラの位置や回転角度を求める処理）、マップ、建物などのオブジェクトをオブジェクト空間へ配置する処理、ヒットチェック処理、ゲーム結果（成果、成績）を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などがある。
【００５３】
記憶部１７０は、処理部１００のワーク領域となるもので、その機能はＲＡＭ（ＶＲＡＭ）などにより実現できる。情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、ハードディスク、メモリカード、メモリーカセット、磁気ディスク、或いはメモリ（ＲＯＭ）などにより実現できる。処理部１００は、情報記憶媒体１８０に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体１８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）が記憶される。
【００５４】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、テレビ、ＣＲＴなどにより実現できる。音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【００５５】
なお本実施形態の各部としてコンピュータを機能させるためのプログラム（データ）は、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０（記憶部１７０）に配信してもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含めることができる。
【００５６】
前記ゲーム処理部１１０は、識別体位置検出部１１２、指示位置特定部１１４、距離条件判定部１１６、ノイズ光源検出部１１８として機能する。なお、これらの一部を省略する構成にしてもよい。
【００５７】
識別体位置検出部１１２は、カメラ１８の撮像画像データを読み込み、記憶部１７０の撮像画像用のフレームメモリ１７６に書き込む処理を行う。そして、このフレームメモリ１７６に記憶された撮像画像データは、カメラ１８から撮像画像データが出力されるフレーム周期毎に順次更新される。
【００５８】
本実施の形態では、赤外線領域に高い感度を持つＣＣＤカメラ１８が用いられており、これにより、例えば図３に示すように、撮像画像において一対の識別体８ａ、８ｂは、マーカＭａ、Ｍｂとして表示される。
【００５９】
そして、識別体位置検出部１１２は、撮像画像用フレームメモリ１７６に記憶された前記各フレーム毎の撮像画像データに基づき、撮像画像内における前記複数のマーカＭａ、Ｍｂの位置を検出する。
【００６０】
演算処理部１１９は、このように指示位置３０が特定されると、特定された指示位置を反映した画像を生成するための演算処理を行う。
【００６１】
例えば、画面上に指示位置３０を示す所与の特定オブジェクト、例えばカーソルなどを表示させる処理を行う。
【００６２】
指示位置検出部１１４は、更に撮像画像に含まれる前記マーカＭａ、Ｍｂが、位置特定処理を行うための特定処理条件を満足しているか否かを判定する条件判定処理を行い、満足していない場合には、その旨をプレーヤに警告する警告出力処理を行う。
【００６３】
本実施の形態では２つの識別体８ａ、８ｂに対応した２つのマーカＭａ、Ｍｂが撮像画像に含まれることが、位置特定処理を行うための特定処理条件を満足することになる。従って、この条件を満足していない場合には、その旨をユーザに警告出力する処理を行う。
【００６４】
このような警告出力処理は、表示部１９０を介して前記警告出力を表示させてもよく、音生成部１３０を介して音出力部１９２から、その旨を音声出力するように構成してもよい。
【００６５】
この警告出力処理により、プレーヤはガン型コントローラ１０の向きが前記位置特定を行うための条件を満足していないこと（撮像エリアに２つの識別体８ａ、８ｂが含まれていないこと）を即座に認識し、ガン型コントローラ１０を適正な向きへ向け直すことができる。
【００６６】
距離条件判定部１１６は、撮像画像用フレームメモリ１７６に順次更新記憶される撮像画像中における前記マーカＭａ、Ｍｂからの距離が、適正距離であるか否かを判断する。その距離が近すぎる場合には、プレーヤに対し表示部１９０からもっと離れてプレーするように警告する警告出力処理を行い、前記マーカＭａ、Ｍｂ間の距離が離れすぎている場合には、もっと表示部１９０に近づいてプレーを行う旨の警告出力処理を行う。
【００６７】
即ち、撮像画像に含まれるマーカＭａ、Ｍｂ間の距離は、表示部１９０とガン型コントローラ１０との距離に依存する。従って、前記マーカＭａ、Ｍｂ間の距離が近すぎる場合にはガン型コントローラ１０が表示部１９０に近寄りすぎていると判断することができ、又前記マーカＭａ、Ｍｂからの距離が離れすぎている場合には、表示部１９０からガン型コントローラ１０が離れすぎると判断することができ、この判定出力をプレーヤに警告出力という形で伝えることにより、プレーヤは表示部１９０と適正な距離を保った状態でゲームを行うことができる。
【００６８】
前記警告出力処理は、表示部１９０上に表示される画面上にその旨を警告出力してもよく、又音出力部１９２を介して音声により警告出力を行ってもよい。
【００６９】
ノイズ光源検出部１１８は、ノイズ光源チェックモード時に、識別体８ａ、８ｂの周囲に存在する非可視光のノイズ光源を検出し、ユーザーに告知するノイズ光源検出処理を行う。
【００７０】
例えば、識別体８ａ、８ｂの周囲に、赤外光等を発する光源が存在すると、これらがノイズ光源になって正確な指示位置３０の特定が困難となる。
【００７１】
このため、本実施の形態は、前述したように識別体８ａ、８ｂの周囲に存在するノイズ光源を検出し、その位置をユーザーに告知するノイズ光源検出処理を行う。
【００７２】
本実施の形態において、前記ノイズ光源検出部１１８は、探索動作指示部１１８ａと、特定処理部１１８ｂとを含む。
【００７３】
探索動作指示部１１８ａは、撮像画像用フレームメモリ１７６に順次更新記録される撮像画像を表示部１９０上に表示させると共に、この撮像画像に含まれる前記マーカＭａ、Ｍｂの表示位置と関連づけて設定され前記撮像画像より広いエリアである所定探索エリアの撮像をプレーヤに指示する探索動作指示処理を行う。
【００７４】
ここでは、撮像画像に含まれる前記マーカＭａ、Ｍｂの表示位置と関連付けた探索経路に沿って、ポインティングデバイスとしてのガン型コントローラ１０の向きを変化させることをユーザーに指示する探索動作指示処理を行う。この探索動作指示処理は、表示部１９０上に表示される撮像画面内に探索経路を表示することにより行う。
【００７５】
プレーヤは、指示される探索経路に沿ってガン型コントローラ１０の向きを変化させる。
【００７６】
特定処理部１１８ｂは、前記探索動作指示中に得られる撮像画像に前記マーカＭａ、Ｍｂ以外のノイズ光源が含まれているか否かを判断し、ノイズ光源が含まれていると判断した場合には、前記ノイズ光源の位置を、ユーザーに告知するノイズ光源特定処理を行う。
【００７７】
これにより、プレーヤは目に見えないノイズ光源が存在している場合でも、ノイズ光源の存在及びその存在位置を知ることができるため、プレーヤは当該ノイズ光源を識別体８ａ、８ｂの周辺から除去し、適正な環境下でゲームを行うことができる。
【００７８】
画像生成部１２０は、処理部１００で行われる種々の処理の結果に基づいて画像処理を行い、ゲーム画像を生成し、表示部１９０に出力する。例えば、いわゆる３次元ゲームの画像を生成する場合には、まず、座標変換、クリッピング処理、透視変換、或いは光源計算等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ（プリミティブ面の頂点（構成点）に付与される位置座標、テクスチャ座標、色（輝度）データ、法線ベクトル或いはα値等）が作成される。そして、この描画データ（プリミティブ面データ）に基づいて、ジオメトリ処理後のオブジェクト（１又は複数プリミティブ面）の画像が、描画バッファ１７２（フレームバッファ、ワークバッファ等の画素単位で画像情報を記憶できるバッファ）に描画される。これにより、オブジェクト空間内において仮想カメラ（所与の視点）から見える画像が生成されるようになる。なお、本実施形態により生成されて表示部１９０に表示される画像は、３次元画像であってもよいし、２次元画像であってもよい。
【００７９】
画像生成部１２０は、テクスチャ記憶部１７４に記憶されるテクスチャ（テクセル値）をオブジェクトにマッピングするための処理を行う。具体的には、オブジェクト（プリミティブ面）の頂点に設定（付与）されるテクスチャ座標等を用いてテクスチャ記憶部１７４からテクスチャ（色、α値などの表面プロパティ）を読み出す。そして、２次元の画像又はパターンであるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理やバイリニア補間（テクセル補間）などを行う。
【００８０】
音生成部１３０は、処理部１００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部１９２（スピーカ）に出力する。
【００８１】
また、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【００８２】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末（ゲーム機、携帯電話）を用いて生成してもよい。
【００８３】
２．本実施形態の手法
２−１：識別体の設置
ゲーム開始に先立ちゲーム画面が表示される表示部１９０の外側に複数の識別体８ａ、８ｂを設置する。本実施の形態では、図１に示すように表示部１９０の上方及び下方に２つの識別体８ａ、８ｂを、表示部１９０の中心を挟んで点対称となるように配置する。
【００８４】
従って、２つの識別体８ａ、８ｂの上を結んだ線の中心位置が、表示部１９０の中心位置と一致することになる。なお、本実施の形態では２つの識別体８ａ、８ｂを表示部１９０の周囲に配置する場合を例にとり説明するが、必要に応じて３つ以上の識別体を、表示部１９０の周囲に配置してもよい。
【００８５】
前述したように各識別体８ａ、８ｂは、非可視光である赤外光を発する光源として形成されており、ガン型コントローラ１０を表示部１９０方向に向けると、図３に示すように各識別体８ａ、８ｂに対応したマーカＭａ、Ｍｂが撮像画像中に含まれる。
【００８６】
前記ガン型コントローラ１０の銃身方向と表示部１９０上における指示位置を一致させるために、本実施の形態のゲームシステムは、ノイズ光源チェックモードに設定される。
【００８７】
すると、表示部１９０上には、図５に示す画面５０が生成表示される。
【００８８】
この画面５０には、ＣＣＤカメラ１８で撮像されている撮像画像５２と、「照準の初期設定を行います」というメッセージＡと、「マーカを基準位置に移動し、トリガを引いてください」とメッセージＡ２が表示される。
【００８９】
撮像画像５２内にはその中心点を挟んで点対称の位置に各マーカＭａ、Ｍｂの基準位置を表すターゲットマーカＴａ、Ｔｂが表示される。メッセージＡ２に従い、マーカＭａ、ＭｂがターゲットマーカＴａ、Ｔｂに重なるようにガン型コントローラ１０の向きを調整し、これらが重なったタイミングでトリガ１４を操作する。
【００９０】
これにより、現在の状態で、ガン型コントローラ１０の指示位置３０が表示部１９０の中心位置を指していると指示位置特定部１１４が認識し、指示位置特定用の初期条件の設定が終了する。
【００９１】
即ち、マーカＭａ、ＭｂがターゲットマーカＴａ、Ｔｂと重なっている状態では、図４（Ｂ1）に示すように、ＣＣＤカメラ１８の撮像画像のｘ、ｙ座標の原点Ｏが、表示部１９０の中心位置と一致し、更にこの時、撮像画像のｙ軸上に前記マーカＭａ、Ｍｂが位置していると初期設定される。これにより、撮像画像内におけるマーカＭａ、Ｍｂの位置と表示部１９０の各位置との関連付けが行われる。
【００９２】
２−２：指示位置３０の検出
図４には、撮像画像５２に含まれるマーカＭａ、Ｍｂの位置に基づき、ガン型コントローラ１０の指示位置３０（図４ではｐで表される）を特定する処理が示されている。
【００９３】
図４（Ａ）には、その処理の手順を示すフローチャートが示され、図４（Ｂ１）乃至（Ｂ３）には、撮像画像５２を用いた指示位置（Ｐ）を特定する処理の説明図が示されている。
【００９４】
まず、図３に示す撮像画像５２が得られた場合には、図４（Ａ）に示すように、この撮像画像５２に含まれる各マーカＭａ、Ｍｂの重心位置ｑ１、ｑ２の（ｘ、ｙ）座標を求め、次に重心位置ｑ１、ｑ２を結ぶ直線のｙ軸に対する傾きθを求める処理を行う。
【００９５】
図４（Ｂ１）は、その処理の具体例が示されている。
【００９６】
次に、このようにして求めた重心位置ｑ１、ｑ２のｘｙ座標及び前記傾きθに基づき、ステップＳ１２、Ｓ１４では、ガン型コントローラ１０の指示位置３０を特定する処理が行われる。
【００９７】
即ちステップＳ１２では、図４（Ｂ２）に示すように、ガン型コントローラ１０の銃身の傾きを補正する処理、即ち撮像画像５２に含まれる重心位置ｑ１、ｑ２を結ぶ直線を、原点Ｏを中心としてθ回転変換し、新たな重心位置ｑ１’、ｑ２’を求める処理を行う。
【００９８】
次に、ステップＳ１４では、新たな重心位置ｑ１’、ｑ２’を結ぶ直線の中点ｈのｘｙ座標を求め、原点Ｏを介して、前記中点ｈと点対称の位置Ｐを表示部１９０上における指示位置３０として特定する処理を行う。
【００９９】
以上のようにして、本実施の形態によれば、撮像画像５２に含まれるマーカＭａ、Ｍｂの位置に基づき、ガン型コントローラ１０の指示位置３０を特定することができる。
【０１００】
従って、このように特定された指示位置３０を反映したゲーム演算処理が行われ、ゲーム画面を生成することが可能となる。
【０１０１】
２−３：警告出力処理
ここで、撮像画像５２に含まれるマーカＭａ、Ｍｂに基づき指示位置３０を特定するためには、撮像画像５２に所定個数以上のマーカＭａ、Ｍｂが含まれることが必要となる。本実施の形態のように、２個の識別体８ａ、８ｂを用いている場合には、撮像画像５２に２個のマーカが含まれていなければ、この特定処理条件を満足していないと判断されることになる。そして、満足していない場合には、その旨をユーザーに警告する警告出力処理を行う。
【０１０２】
図６には、その具体例が示されている。
【０１０３】
図６（Ａ１）乃至（Ａ３）には、撮像画像５２に含まれるマーカＭａ、Ｍｂの個数が減少していく一例が示され、図６（Ｂ１）乃至（Ｂ３）には、その時ゲーム画面上の指示位置３０上に表示されるカーソルオブジェクトＫの一例が示されている。
【０１０４】
本実施の形態では、撮像画像に２個以上のマーカＭａ、Ｍｂが含まれている場合に、特定処理条件を満足すると判断され、ゲーム画面６０上に表示されるカーソルＫは赤色に表示される。
【０１０５】
そして、図６（Ａ２）に示すように、撮像画像５２から１つのマーカＭｂが外れると、撮像画像中に残るマーカの数は１個となる。この時、撮像画像５２からはずれたマーカＭｂが、例えば過去に直線的に移動している場合には、ゲーム画面６０上における指示位置３０の移動経路も予想され、指示位置も予想されるため、予想された指示位置にカーソルＫが表示される。この時カーソルＫは、撮像画像５２に含まれるマーカの数が１個になったことをプレーヤに知らせるため、青色で点滅するように表示される。
【０１０６】
更に図６（Ａ３）に示すように、撮像画像５２から２つのマーカＭａ、Ｍｂが外れ、撮像画像５２内にマーカが存在しなくなった場合には、図６（Ｂ３）に示すように、カーソルＫはゲーム画面６０の縁に停止した状態で、白色の点滅を行うように表示される。
【０１０７】
このように、撮像画像５２内に適正な数、本実施の形態では２個のマーカＭａ、Ｍｂが存在している場合と、撮像画像５２内に１個のマーカしか存在しない場合と、さらには撮像画像５２内に全くマーカが存在しない場合を判断する条件判定処理を行い、これら各状態に応じてカーソルＫの表示色を変更する構成を採用する。これにより、プレーヤに位置特定処理のための特定処理条件が、段階的に損なわれていることを視覚的に且つ正確に知らせることができ、これを見たプレーヤは、ガン型コントローラ１０の向きを表示部１９０の適正な方向に戻し、ゲームを続行することが可能となる。
【０１０８】
特に、上記構成を採用することにより、ガン型コントローラ１０の指示位置３０の特定が全くできなくなるという事態の発生を事前に又は事後的にいち早くプレーヤに知らせ、プレーヤにガン型コントローラ１０の向きを適正な方向に戻すことを促すことにより、ゲーム画面上における指示位置３０の検出を適正に行うことが可能となる。
【０１０９】
なお、図６（Ａ２）に示すように、撮像画像５２の周辺に、所定幅のチェックエリア５４を設定しておき、撮像画像５２に含まれるマーカが外側に外れる方向に移動しながら当該チェックエリア５４にさしかかった場合には、当該マーカの重心位置座標に基づきこれを検出し、マーカが撮像画像５２から外れる危険性が大きいことをプレーヤに予告表示するように構成してもよい。このようにすることにより、位置特定処理を行うための特定処理条件が損なわれる可能性が高い状況を、事前にプレーヤに知らせることが可能となる。このような予告警告処理は、例えばゲーム画面６０に表示されるカーソルＫの表示形態を変更するように行ってもよい。例えば、チェックエリア５４に近づくにしたがいカーソルＫが点滅を開始し、チェックエリア５４にさしかかった場合にはその点滅周期を短くするようにして、プレーヤに警告するように構成してもよい。
【０１１０】
２−４；ノイズ光源の検出
撮像画像５２に含まれるマーカＭａ、Ｍｂの位置に基づき、ガン型コントローラ１０の指示位置３０を検出するためには、識別体８ａ、８ｂの周囲にノイズ光源が存在しないことが重要となる。特に、本実施の形態では、識別体８ａ、８ｂは非可視光である赤外光を発生する光源を用いて形成されているため、その周囲に赤外光を発する熱源等が存在したり、赤外光そのものを発生する光源等が存在している場合、プレーヤがこれを視認できないため、ノイズ光源を予め取り除いて、位置特定処理を良好に行うための環境を調えておくことは難しい。
【０１１１】
このようなノイズ光源を検出し、その位置を特定するために、本実施の形態では以下のような光源検出処理を行う。
【０１１２】
ノイズ光源検出処理は、前記図５に示すノイズ光源チェックモード時に行われる構成を採用する。
【０１１３】
ここでは、前記表示部１９０に撮像画像５２-１を表示し、撮像画像５２-１に含まれる前記識別体の表示位置と関連づけて設定され前記撮像画像より広いエリアである、図７の５２−Ａ乃至５２−Ｄの領域を探索エリアとして設定し、プレーヤに撮像を指示する探索動作指示処理を行う。
【０１１４】
まず、図５に示すように、撮像画像５２のターゲットマーカＴａ、Ｔｂに、マーカＭａ、Ｍｂが重なるようにガン型コントローラ１０の向きを設定し、この状態でトリガ１４を操作すると、図７、図８に示すように、マーカＭａとマーカＭｂとの中間位置に特定オブジェクトＯＢが表示される。この特定オブジェクトＯＢは、常にマーカＭａとマーカＭｂとの中間位置に表示される。
【０１１５】
そして、前記探索エリアにおいて、この撮像画像５２−１の４隅に対応する位置に、移動目標オブジェクトＭＴａ、ＭＴｂ、ＭＴｃ、ＭＴｄを順次表示し、当該移動目標オブジェクトに向けてガン型コントローラ１０の向きを変化させる探索動作指示処理を行う。
【０１１６】
この指示処理に従い、特定オブジェクトＯＢを移動目標オブジェクトＭＴａ、ＭＴｂ、ＭＴｃ、ＭＴｄの順に移動することにより、カメラ１８により５２−Ａ、５２−Ｂ、５２−Ｃ、５２−Ｄという識別体８ａ、８ｂ周囲の領域の画像を、探索エリアの画像として撮像することができる。
【０１１７】
即ち、カメラ１８の撮像エリアの４倍の探索エリアを撮像することができ、この探索エリア内に非可視光である赤外光を発するノイズ光源が存在する場合には、これを確実に検出できると共に、このマーカＭａ、Ｍｂとの相対位置関係に基づき、当該ノイズ光源の位置を特定し、プレーヤに知らせることができる。
【０１１８】
例えば、図８（Ａ）に示すように、撮像画像５２−１の左上には、最初の移動目標オブジェクトＭＴａが表示され、これにより当該移動目標オブジェクトＭＴａに向けて特定オブジェクトＯＢを移動するようにガン型コントローラ１０の向きを変えることが指示される。そして、この特定オブジェクトＯＢが移動目標オブジェクトＭＴａに重なった状態で図７に示す撮像画像５２−Ａを得ることができる。
【０１１９】
次に、表示部１９０上に表示される撮像画像５２−Ａには、図８（Ｂ）に示すように次の移動目標オブジェクトＭＴｂが表示され、当該移動目標オブジェクトに向けて特定オブジェクトＯＢを移動する旨の探索動作指示が行われる。
【０１２０】
この指示に従って、ガン型コントローラ１０を右方向に向けている途中で、図８（Ｃ）に示すようなノイズ光源ＮＬを含んだ撮像画像５２−ＡＢが得られると、特定処理部１１８ｂは、「不正な光源があります。この光源を隠すかマーカをずらしてください」と、ノイズ光源ＮＬが存在す旨のメッセージを表示すると共に、その位置を撮像画像５２−ＡＢ上に表示する。
【０１２１】
これにより、プレーヤは、特定オブジェクトＯＢ（識別体８ａ、８ｂ）との相対位置関係において、ノイズ光源ＮＬの存在位置を特定することができ、当該ノイズ光源ＮＬを図７の５２−Ａ乃至５２−Ｄの領域から外に移動し、又当該領域内に入ってこないようにノイズ光源ＮＬを覆い隠すことができる。
【０１２２】
このようにして、識別体８ａ、８ｂの周囲に存在するノイズ光源を広範囲に検出し、これを除去することにより、その後のゲーム演算時における、ガン型コントローラ１０を用いた表示部１９０上における指示位置３０の検出を確実に且つスムーズに行うことが可能となる。
【０１２３】
なお、本実施の形態では、移動目標オブジェクトに沿ってガン型コントローラ１０の向きを変化させるときの指標として、常にマーカＭａとマーカＭｂとの中間位置に表示される特定オブジェクトＯＢを表示する場合を例にとり説明したが、本発明はこれに限らず、これ以外のオブジェクトを指標として用いてもよく、例えば撮像画像５２−１に含まれるマーカＭａ、Ｍｂのいずれか一方を指標として用い、当該指標を前記移動目標オブジェクトに向けて順次移動するように指示する構成を採用してもよい。
【０１２４】
又、前記４つの移動目標オブジェクトを順次表示することに代え、探索エリアに設定された移動経路そのものを撮像画像５２上に画像表示し、この移動経路に沿って特定オブジェクトＯＢが移動するようにガン型コントローラ１０の向きを変化させるように探索動作指示を行う構成を採用してもよい。
【０１２５】
又、上記手法に代え、撮像画像に含まれる前記マーカＭａ、Ｍｂの表示位置と関連づけて設定さた前記撮像画像より広いエリアである、図７の５２−Ａ乃至５２−Ｄの領域を探索エリアとして設定し、前記探索動作指示部１１８ａは、前記表示部１９０に撮像画像を探索用画像として表示し、プレーヤに撮像を指示する探索動作指示処理を行う。このとき、前記探索エリア５２−Ａ乃至５２−Ｄにおいて探索用画像として撮像済のエリアを識別表示（例えば塗り絵の要領で、撮影済エリアを黒色に表示し、未撮影のエリアを白色表示する）することで、残りの探索エリアの撮像をプレーヤに指示する探索動作指示処理を行う構成を採用するようにしてもよい。
【０１２６】
これによっても、探索エリアを塗りつぶす要領で、判り易い探索動作指示処理を行うことができる。
【０１２７】
３．本実施の形態の処理
次に、本実施の形態の詳細な処理例について、図９乃至図１１に示すフローチャートを用いて説明する。
【０１２８】
３−１：ノイズ光源チェック
まず、表示部１９０の外部に、図１に示すように、一対の識別体８ａ、８ｂを設置すると、まず最初に、図４のステップ１００で示すノイズ光源チェック処理が実行される。
【０１２９】
図１０のフローチャートには、このノイズ光源チェック処理の一連の手順が示されている。
【０１３０】
ステップＳ２０において、プレーヤに対して表示部１９０の周辺に設けられた一対の識別体８ａ、８ｂの中心に銃を向けるように指示がなされ、これにより、指示位置特定のための初期設定が行われる。
【０１３１】
次にステップＳ２２で、撮像画像５２に含まれるマーカＭａ、Ｍｂの数が２個であるか否かの判断が行われ、ここでは２個のマーカＭａ、Ｍｂが含まれるため、条件を満足する登判断され、次に、ステップＳ２４乃至Ｓ２６に示す一連のノイズ光源検出処理が実行される。
【０１３２】
まず、ステップＳ２４では、ｉ＝０に設定され、次にステップＳ２６ではｉ＝０番目の移動目標オブジェクトＭＴａのデータの読出が行われ、次にステップＳ２８では、当該移動目標オブジェクトＭＴａを図８（Ａ）に示すように撮像画像５２内に表示し、当該移動目標オブジェクトＭＴａに向け特定オブジェクトＯＢを移動させるように指示する探索動作指示を行う。
【０１３３】
そして、ステップＳ３０では、この探索動作指示中に得られる撮像画像内に含まれる光源のデータの読み込みを行い、ステップＳ３２では、得られた光源の数がＮより大きいか否かの判断を行う。ここでは、Ｎ＝２であるため、検出された光源の数が３個以上の場合には、ステップＳ３４に移行し、ここで不正な光点、即ちノイズ光源を発見したと判定され、当該ノイズ光源が存在する旨の表示及びその位置を画面上に表示する。
【０１３４】
この表示により、プレーヤは、ノイズ光源の存在を認識することができ、当該ノイズ光源を識別体８ａ、８ｂから遠ざけることができる。
【０１３５】
ステップＳ３６では、検出された光源の数が１個未満か否かが判断され、撮像画像中に一つの光源も存在しないと判断された場合には、ステップＳ３８に移行する。ここでは、ガン型コントローラ１０の向きがチェック範囲の外に向いていると判断（識別体８ａ、８ｂの存在しないエリアに向いていると判断）され、元の位置に戻すことを指示する警告表示が行われる。
【０１３６】
ステップＳ４０では、現在の特定オブジェクトＯＢの位置を計算し、画面上に表示する処理を行う。
【０１３７】
次に、ステップＳ４２で、特定オブジェクトＯＢが指示されたｉ＝０番目の目標オブジェクトＭＴａに到達したと判断されると、そのｉを一つインクリメントして、２番目の移動目標オブジェクトＭＴｂに対しステップＳ２６乃至Ｓ４４の処理を同様に繰り返して行う。
【０１３８】
このような処理をｉがインクリメントされる毎に順次繰り返し、すべての移動目標オブジェクトＭＴａ、ＭＴｂ、ＭＴｃ、ＭＴｄに対してする処理が終了したとステップＳ４６で判断した時点で、ノイズ光源の検出処理は終了する。
【０１３９】
３−２：ゲーム演算処理
図９に示すステップＳ１００のノイズ光源チェック処理が終了すると、次に図９のステップＳ２００のゲーム演算処理が実行される。
【０１４０】
図１１のフローチャートは、このゲーム演算処理の具体的な手順を示す。
【０１４１】
まず、ステップＳ２１０で、カメラ１８の撮像画像データの読み込みを行い、ステップＳ２１２で、この撮像画像データに含まれるマーカＭａ、Ｍｂの位置及び数の検出を行う。
【０１４２】
次にステップＳ２１４で、マーカの数がＮ個（補実施の形態ではＮ＝２個）であるか否かの判定が行われ、マーカの数が２個であると判定された場合には、ステップＳ２１６で指示位置特定処理が行われ、特定された指示位置３０にカーソルオブジェクトＫが赤色で表示される（ステップＳ２１８）。
【０１４３】
また、ステップＳ２１６の指示位置特定処理の詳細は、前述した図４（Ａ）に示すフローチャートで説明したため、ここではその説明は省略する。
【０１４４】
また、ステップＳ２１４で、マーカの数が２個ではないと判断されると、次にステップＳ２２０で指示位置の特定が可能か否か、即ち、撮像画像に１個のマーカ含まれているか否かが判断される。
【０１４５】
１個のマーカが含まれていると判断された場合には、指示位置を推定することで特定できるため、ステップＳ２２２で当該指示位置を特定する処理を行い、特定された指示位置３０にカーソルオブジェクトＫを青色で表示する。
【０１４６】
このように、カーソルオブジェクトＫを青色で表示することにより、撮像画像には１個のマーカしか含まれなくなったことをプレーヤに警告して知らせることができる。
【０１４７】
また、ステップＳ２２０で、撮像画像に１個のマーカも含まれず、指示位置の特定が不可能であると判断されると、次にステップＳ２２６で、ゲーム画面上のカーソルオブジェクトＫを白色で表示し、指示位置の特定ができなくなった旨をプレーヤに知らせる。
【０１４８】
このように、撮像画像中にマーカが２つ含まれている正常な場合と、１つしか含まれていない場合と、全く含まれていない場合とで、ゲーム画面上に表示するカーソルオブジェクトＫの色を変化させることにより、プレーヤに現在の状況を視覚的に正確に認識させることができ、プレーヤに対しガン型コントローラ１０を常に識別体８ａ、８ｂが存在するエリアに向けることを促すことができる。
【０１４９】
このようなステップＳ２１０乃至Ｓ２２６の一連の処理を、ゲームが終了するまで繰り返して行う。
【０１５０】
４．ハードウェア構成
図１２に本実施の形態を実現できるハードウェア構成の例を示す。メインプロセッサ９００は、ＤＶＤ９８２（情報記憶媒体。ＣＤでもよい。）に格納されたプログラム、通信インターフェース９９０を介してダウンロードされたプログラム、或いはＲＯＭ９５０に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などを実行する。コプロセッサ９０２は、メインプロセッサ９００の処理を補助するものであり、マトリクス演算（ベクトル演算）を高速に実行する。例えばオブジェクトを移動させたり動作（モーション）させる物理シミュレーションに、マトリクス演算処理が必要な場合には、メインプロセッサ９００上で動作するプログラムが、その処理をコプロセッサ９０２に指示（依頼）する。
【０１５１】
ジオメトリプロセッサ９０４は、メインプロセッサ９００上で動作するプログラムからの指示に基づいて、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、マトリクス演算を高速に実行する。データ伸張プロセッサ９０６は、圧縮された画像データや音データのデコード処理を行ったり、メインプロセッサ９００のデコード処理をアクセラレートする。これにより、オープニング画面やゲーム画面においてＭＰＥＧ方式等で圧縮された動画像を表示できる。
【０１５２】
描画プロセッサ９１０は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画（レンダリング）処理を実行する。オブジェクトの描画の際には、メインプロセッサ９００は、ＤＭＡコントローラ９７０を利用して、描画データ（頂点データや他のパラメータ）を描画プロセッサ９１０に渡すと共に、必要であればテクスチャ記憶部１７４にテクスチャを転送する。すると描画プロセッサ９１０は、描画データやテクスチャに基づいて、Ｚバッファなどを利用した隠面消去を行いながら、オブジェクトをフレームバッファ９２２に描画する。また描画プロセッサ９１０は、αブレンディング（半透明処理）、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエイリアシング、シェーディング処理なども行う。
【０１５３】
サウンドプロセッサ９３０は、多チャンネルのＡＤＰＣＭ音源などを内蔵し、ＢＧＭ、効果音、音声などのゲーム音を生成し、スピーカ９３２を介して出力する。ゲームコントローラ９４２やメモリカード９４４からのデータはシリアルインターフェース９４０を介して入力される。
【０１５４】
ＲＯＭ９５０にはシステムプログラムなどが格納される。業務用ゲームシステムの場合にはＲＯＭ９５０が情報記憶媒体として機能し、ＲＯＭ９５０に各種プログラムが格納される。なおＲＯＭ９５０の代わりにハードディスクを利用してもよい。ＲＡＭ９６０は各種プロセッサの作業領域となる。ＤＭＡコントローラ９７０は、プロセッサ、メモリ間でのＤＭＡ転送を制御する。ＤＶＤドライブ９８０（ＣＤドライブでもよい。）は、プログラム、画像データ、或いは音データなどが格納されるＤＶＤ９８２（ＣＤでもよい。）にアクセスする。通信インターフェース９９０はネットワーク（通信回線、高速シリアルバス）を介して外部との間でデータ転送を行う。
【０１５５】
なお本実施の形態の各部（各手段）の処理は、その全てをハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【０１５６】
そして、本実施の形態の各部の処理をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア（コンピュータ）を本実施の形態の各部として機能させるためのプログラムが格納される。より具体的には、上記プログラムが、ハードウェアである各プロセッサ９０２、９０４、９０６、９１０、９３０に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ９０２、９０４、９０６、９１０、９３０は、その指示と渡されたデータとに基づいて本発明の各部の処理を実現する。
【０１５７】
以上のように、本発明には、本実施の形態で説明したものに限定されず、これらと均等な手法も本発明の範囲に含まれる。
【０１５８】
また本発明は種々のゲーム（格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等）に適用できる。また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々の画像生成システムに適用できる。
【０１５９】
本実施の形態では、シューティングゲームにおけるガン型コントローラ１０の照準位置検出に用いる場合を例にとり説明したが、本発明はこれに限らず、これ以外の各種用途に適用することができる。例えば、ゲームの種類によっては、例えばプレーヤオブジェクトの移動する方向や、各種アイテムを、前記ポインティングデバイスを用いて指示し、当該指示位置を反映したゲーム画像を生成するような構成を採用することも可能である。
【０１６０】
又、単に表示部１９０上における位置を指示するだけではなく、前記識別体８ａ、８ｂが複数設けられているため、コントローラの表示部に対する回転や傾き等の検出にも用いることができる。
【０１６１】
又、本実施の形態では識別体８ａ、８ｂを２個用いる場合を例にとり説明したが、より制度の高い指示位置の検出を行うためには、３個以上の識別体を用いる構成を採用してもよい。
【０１６２】
又、本実施の形態では、識別体を表示部の周囲に設けたが、表示部と関連の無い所望の位置に複数の識別体を配置してもよい。この場合でも、当該各識別体をポインティングデバイスの撮像手段で撮影した撮像画像内におけるマーカＭａ、Ｍｂの位置と表示部の各位置とを関連付けておくことによって、ポインティングデバイスにより表示部の所望位置を指示することができる。
【０１６３】
又、本実施の形態では、識別体として、赤外光を発光する光源を用いる場合を例にとり説明したが、本発明はこれに限らず、これ以外の非可視光を発生する識別体を用いてもよく、又撮像画像上において認識可能なものであるならば、所定のマーク等を識別体として用いてもよい。
【図面の簡単な説明】
【０１６４】
【図１】本実施の形態を家庭用ゲームシステムに適用した場合の例。
【図２】本実施の形態の画像生成システムのブロック図の例。
【図３】撮像画像の一例を示す説明図。
【図４】撮像画像を用いて指示位置を検出する処理の説明図。
【図５】ノイズ光源チェック画面の一例を示す説明図。
【図６】指示位置を特定するための条件と、これに対応して表示されるカーソルオブジェクトとの対応関係の説明図。
【図７】ノイズ光源検出処理の説明図。
【図８】ノイズ光源検出処理の際に表示される画面の説明図。
【図９】本実施の形態の具体的な処理のフローチャートである。
【図１０】本実施の形態のノイズ光源チェック処理の具体的な処理のフローチャート図。
【図１１】本実施の形態の具体的な指示位置特定処理のフローチャート図。
【図１２】本実施の形態を実現できるハードウエア構成の一例を示す図。
【符号の説明】
【０１６５】
２  家庭用のゲーム機
４  テレビ
６  ハウジング
８ａ、８Ｂ  識別体
１０  ガン型コントローラ
１２  ポインティングデバイス（ケーシング）
１８  カメラ
３０  指示位置
５２  撮像画像
６０  ゲーム画像
９０  本体装置
１００  処理部
１１０  ゲーム処理部
１１２  識別体位置検出部
１１４  指示位置特定部
１１６  距離条件判定部
１１８  ノイズ光源検出部
１１８ａ  探索動作指示部
１１８ｂ  特定処理部
１７０  記憶部
１７６  撮像画像用フレームメモリ
１８０  情報記憶媒体
１９０  表示部
１９２  音出力部
１９６  通信部
Ｋ  カーソルオブジェクト
ＯＢ  特定オブジェクト
Ｍａ、Ｍｂ  マーカ
ＭＴａ、ＭＴｂ、ＭＴｃ、ＭＴｄ  移動目標オブジェクト
ＮＬ  ノイズ光源
Ｔａ、Ｔｂ  ターゲットマーカ
【図１】
2007267850.tif 000003
【図２】
2007267850.tif 000004
【図３】
2007267850.tif 000005
【図４】
2007267850.tif 000006
【図５】
2007267850.tif 000007
【図６】
2007267850.tif 000008
【図７】
2007267850.tif 000009
【図８】
2007267850.tif 000010
【図９】
2007267850.tif 000011
【図１０】
2007267850.tif 000012
【図１１】
2007267850.tif 000013
【図１２】
2007267850.tif 000014