(57)【特許請求の範囲】
【請求項１】
発光体を有する入力デバイスの姿勢情報を取得する受付部と、
仮想空間において操作オブジェクトの動作を制御する操作オブジェクト制御部と、
仮想空間において非操作オブジェクトの動作を制御する非操作オブジェクト制御部と、
操作オブジェクトの位置と、入力デバイスの姿勢情報から、非操作オブジェクトの探索方向を決定する探索方向決定部と、
探索方向に非操作オブジェクトが存在するか判定する判定部と、
前記判定部により非操作オブジェクトが存在することが判定されると、発光体の点灯を制御する点灯制御部と、を備え、
前記判定部は、非操作オブジェクトが存在することを判定すると、非操作オブジェクトのステータス情報を取得し、
前記点灯制御部は、ステータス情報にもとづいて、発光体の点灯を制御することを特徴とするゲーム装置。
【請求項２】
ステータス情報は、非操作オブジェクトと操作オブジェクトの距離に応じて非操作オブジェクトに対して設定されることを特徴とする請求項１に記載のゲーム装置。
【請求項３】
コンピュータに、
発光体を有する入力デバイスの姿勢情報を取得する機能と、
仮想空間において操作オブジェクトの動作を制御する機能と、
仮想空間において非操作オブジェクトの動作を制御する機能と、
操作オブジェクトの位置と、入力デバイスの姿勢情報から、非操作オブジェクトの探索方向を決定する機能と、
探索方向に非操作オブジェクトが存在するか判定する機能と、
非操作オブジェクトが存在することを判定した場合に、非操作オブジェクトのステータス情報を取得する機能と、
非操作オブジェクトが存在することが判定されると、ステータス情報にもとづいて、発光体の点灯を制御する機能と、
を実現させるためのプログラム。
【請求項４】
請求項３に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲーム制御技術に関し、とくに、ユーザが入力デバイスを利用してゲームキャラクタを動作させるゲーム装置に関する。
【背景技術】
【０００２】
ゲーム装置の処理能力の向上に伴い、３次元的にモデリングされたゲームフィールド内でプレイヤーキャラクタおよびノンプレイヤーキャラクタを動作させるゲームが数多く登場している。また近年では、ゲームの入力デバイスとしてワイヤレス型のゲームコントローラが普及し、また、従来式のボタン操作による入力だけでなく、ユーザが動かすオブジェクトをカメラで撮像して、カメラ画像におけるオブジェクトの動きをゲームの入力として利用する技術も提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−１４０７０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
入力デバイスとゲームは密接な関係をもち、新しい入力デバイスが登場すると、その入力デバイスの特徴を活かしたゲームアプリケーションが開発される。本発明者は、ユーザの多様化した要求を満足させるべく、ユーザが動かす入力デバイスに連動する新たなゲームアプリケーションを想到するに至った。
【０００５】
そこで本発明は、ユーザによる入力デバイスの動きを、ゲームのオブジェクトの動作に反映させる技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のある態様のゲーム装置は、発光体を有する入力デバイスの姿勢情報を取得する受付部と、仮想空間において操作オブジェクトの動作を制御する操作オブジェクト制御部と、仮想空間において非操作オブジェクトの動作を制御する非操作オブジェクト制御部と、操作オブジェクトの位置と、入力デバイスの姿勢情報から、非操作オブジェクトの探索方向を決定する探索方向決定部と、探索方向に非操作オブジェクトが存在するか判定する判定部と、判定部により非操作オブジェクトが存在することが判定されると、発光体の点灯を制御する点灯制御部とを備える。
【０００７】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【０００８】
本発明によると、ユーザによる入力デバイスの動きを、ゲームのキャラクタの動作に反映させる技術を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施例にかかるゲームシステムの使用環境を示す図である。
【図２】入力デバイスの外観構成を示す図である。
【図３】入力デバイスの内部構成を示す図である。
【図４】ゲーム装置の構成を示す図である。
【図５】アプリケーション処理部の構成を示す図である。
【図６】探索レーダ使用中の表示画面例を示す図である。
【図７】探索制御部の構成を示す図である。
【図８】ＮＰＣ判定部のノンプレイヤーキャラクタ検出機能を説明するための図である。
【図９】探索制御部の処理を示すフローチャートである。
【図１０】捕獲具使用中の表示画面例を示す図である。
【図１１】ノンプレイヤーキャラクタの捕獲過程を示す図である。
【図１２】衝突制御部の構成を示す図である。
【図１３】衝突制御部の処理を示すフローチャートである。
【図１４】パチンコの表示画面例を示す図である。
【発明を実施するための形態】
【００１０】
本発明の実施例は、ゲームコントローラとして機能する入力デバイスの実空間における位置情報および／または姿勢情報を取得し、その情報をもとにゲームソフトウェアを実行可能なゲーム装置を提供する。
【００１１】
図１は、本発明の実施例にかかるゲームシステム１の使用環境を示す。ゲームシステム１は、ゲームソフトウェアを実行するゲーム装置１０と、ゲーム装置１０による処理結果を出力する表示装置１２と、入力デバイス２０と、入力デバイス２０を撮像する撮像装置１４を備える。
【００１２】
入力デバイス２０は、ユーザが操作指示を行うための操作入力装置であり、ゲーム装置１０は、入力デバイス２０における操作指示をもとにゲームアプリケーションを処理して、ゲームアプリケーションの処理結果を示す画像信号を生成する処理装置である。
【００１３】
入力デバイス２０は、ユーザによる操作指示をゲーム装置１０に伝送する機能をもち、本実施例ではゲーム装置１０との間で無線通信可能な無線コントローラとして構成される。入力デバイス２０とゲーム装置１０は、Bluetooth（ブルートゥース）（登録商標）プロトコルを用いて無線接続を確立してもよい。なお入力デバイス２０は、無線コントローラに限らず、ゲーム装置１０とケーブルを介して接続される有線コントローラであってもよい。
【００１４】
入力デバイス２０はバッテリにより駆動され、ゲームを進行させる操作指示を行うための複数のボタンを有して構成される。ユーザが入力デバイス２０のボタンを操作すると、その操作指示が無線によりゲーム装置１０に送信される。ゲーム装置１０は、入力デバイス２０から操作指示を受信し、操作指示に応じてゲーム進行を制御して、ゲーム画像信号を生成する。生成されたゲーム画像信号は、表示装置１２より出力される。
【００１５】
撮像装置１４は、ＣＣＤ撮像素子またはＣＭＯＳ撮像素子などから構成されるビデオカメラであり、実空間を所定の周期で撮像して、周期ごとのフレーム画像を生成する。たとえば、撮像装置１４の撮像速度は３０枚／秒として、表示装置１２のフレームレートと一致させてもよい。撮像装置１４は、ＵＳＢ（Universal Serial Bus）あるいはその他のインタフェースを介してゲーム装置１０と接続する。
【００１６】
表示装置１２は画像を出力するディスプレイであって、ゲーム装置１０において生成された画像信号を受けて、ゲーム画面を表示する。表示装置１２は、ディスプレイおよびスピーカを有するテレビであってよく、またコンピュータディスプレイであってもよい。表示装置１２は、ゲーム装置１０に有線ケーブルで接続されてよく、また無線ＬＡＮ（Local Area Network）などにより無線接続されてもよい。
【００１７】
本実施例のゲームシステム１において、入力デバイス２０は発光体を有する。ゲーム中、発光体は所定色で発光し、撮像装置１４により撮像される。撮像装置１４は入力デバイス２０を撮像し、フレーム画像を生成してゲーム装置１０に供給する。ゲーム装置１０はフレーム画像を取得して、フレーム画像における発光体の画像の位置および大きさから、実空間における発光体の位置情報を導出する。ゲーム装置１０は、位置情報をゲームの操作指示として取り扱い、プレイヤーキャラクタの動作を制御するなど、ゲームの処理に反映させる。本実施例のゲーム装置１０は、入力デバイス２０のボタンなどの操作入力だけでなく、取得した発光体画像の位置情報も用いてゲームアプリケーションを処理する機能をもつ。
【００１８】
入力デバイス２０の発光体は、複数色で発光可能に構成される。発光体は、ゲーム装置１０からの発光指示により、発光色を変更できる。
【００１９】
また入力デバイス２０は加速度センサおよびジャイロセンサを有する。センサの検出値は、所定周期でゲーム装置１０に送信され、ゲーム装置１０は、センサの検出値を取得して、実空間における入力デバイス２０の姿勢情報を取得する。ゲーム装置１０は、姿勢情報をゲームの操作指示として取り扱い、ゲームの処理に反映させる。このように本実施例のゲーム装置１０は、取得した入力デバイス２０の姿勢情報も用いてゲームアプリケーションを処理する機能をもつ。
【００２０】
図２は、入力デバイス２０の外観構成を示す。図２（ａ）は、入力デバイス２０の上面構成を示し、図２（ｂ）は、入力デバイス２０の下面構成を示す。入力デバイス２０は、発光体２２およびハンドル２４を有する。発光体２２は、その外側を光透過性を有する樹脂で球体に形成され、内側に発光ダイオードや電球などの発光素子を有する。内側の発光素子が発光すると、外側の球体全体が光る。ハンドル２４の上面には、操作ボタン３０、３２、３４、３６、３８が設けられ、下面には操作ボタン４０が設けられる。ユーザはハンドル２４の端部を手で把持した状態で、操作ボタン３０、３２、３４、３６、３８を親指で操作し、操作ボタン４０を人差し指で操作する。操作ボタン３０、３２、３４、３６、３８は、押下式に構成され、ユーザは押下することで操作する。操作ボタン４０は、アナログ量を入力できるものであってよい。
【００２１】
ユーザは表示装置１２に表示されるゲーム画面を見ながらゲームを行う。撮像装置１４は、ゲームアプリケーションの実行中に発光体２２を撮像する必要があるため、その撮像範囲が表示装置１２と同じ方向を向くように配置されることが好ましい。一般にユーザは表示装置１２の正面でゲームをプレイすることが多いため、撮像装置１４は、その光軸の方向が表示装置１２の正面方向と一致するように配置される。具体的に、撮像装置１４は、表示装置１２の近傍において、表示装置１２の表示画面をユーザが視認可能な位置を撮像範囲に含むように配置されることが好ましい。これにより、撮像装置１４は、入力デバイス２０を撮像できる。
【００２２】
図３は、入力デバイス２０の内部構成を示す。入力デバイス２０は、無線通信モジュール４８、処理部５０、発光部６２および操作ボタン３０、３２、３４、３６、３８、４０を備える。無線通信モジュール４８は、ゲーム装置１０の無線通信モジュールとの間でデータを送受信する機能をもつ。処理部５０は、入力デバイス２０における所期の処理を実行する。
【００２３】
処理部５０は、メイン制御部５２、入力受付部５４、３軸加速度センサ５６、３軸ジャイロセンサ５８および発光制御部６０を有する。メイン制御部５２は、無線通信モジュール４８との間で必要なデータの送受を行う。
【００２４】
入力受付部５４は、操作ボタン３０、３２、３４、３６、３８、４０からの入力情報を受け付け、メイン制御部５２に送る。３軸加速度センサ５６は、ＸＹＺの３軸方向の加速度成分を検出する。３軸ジャイロセンサ５８は、ＸＺ平面、ＺＹ平面、ＹＸ平面における角速度を検出する。なお、ここでは、入力デバイス２０の幅方向をＸ軸、高さ方向をＹ軸、長手方向をＺ軸と設定する。３軸加速度センサ５６および３軸ジャイロセンサ５８は、入力デバイス２０のハンドル２４内に配置され、ハンドル２４内の中心近傍に配置されることが好ましい。無線通信モジュール４８は、操作ボタンからの入力情報とともに、３軸加速度センサ５６による検出値情報、および３軸ジャイロセンサ５８による検出値情報を、所定の周期でゲーム装置１０の無線通信モジュールに送信する。この送信周期は、たとえば１１．２５ｍ秒に設定される。
【００２５】
発光制御部６０は、発光部６２の発光を制御する。発光部６２は、赤色ＬＥＤ６４ａ、緑色ＬＥＤ６４ｂ、青色ＬＥＤ６４ｃを有し、複数色の発光を可能とする。発光制御部６０は、赤色ＬＥＤ６４ａ、緑色ＬＥＤ６４ｂ、青色ＬＥＤ６４ｃの発光を調整して、発光部６２を所望の色に発光させる。
【００２６】
無線通信モジュール４８はゲーム装置１０から発光指示を受け取ると、メイン制御部５２に供給し、メイン制御部５２は、発光制御部６０に発光指示を供給する。発光制御部６０は、発光部６２が発光指示により指定された色で発光するように、赤色ＬＥＤ６４ａ、緑色ＬＥＤ６４ｂ、青色ＬＥＤ６４ｃの発光を制御する。たとえば発光制御部６０は、各ＬＥＤをＰＷＭ（パルス幅変調）制御で点灯制御してもよい。
【００２７】
図４は、ゲーム装置１０の構成を示す。ゲーム装置１０は、フレーム画像取得部８０、画像処理部８２、デバイス情報導出部８４、無線通信モジュール８６、入力受付部８８、出力部９０およびアプリケーション処理部１００を備える。本実施例におけるゲーム装置１０の処理機能は、ＣＰＵ、メモリ、メモリにロードされたプログラムなどによって実現され、ここではそれらの連携によって実現される構成を描いている。プログラムは、ゲーム装置１０に内蔵されていてもよく、また記録媒体に格納された形態で外部から供給されるものであってもよい。したがってこれらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者に理解されるところである。なおハードウェアの構成上、ゲーム装置１０は複数のＣＰＵを有してもよい。
【００２８】
無線通信モジュール８６は、入力デバイス２０の無線通信モジュール４８との間で無線通信を確立する。これにより入力デバイス２０は、操作ボタンの状態情報、３軸加速度センサ５６および３軸ジャイロセンサ５８の検出値情報を、ゲーム装置１０に所定の周期で送信できるようになる。
【００２９】
無線通信モジュール８６は、入力デバイス２０から送信される操作ボタンの状態情報、およびセンサ検出値情報を受信し、入力受付部８８に供給する。入力受付部８８は、ボタン状態情報およびセンサ検出値情報を分離し、アプリケーション処理部１００に引き渡す。アプリケーション処理部１００は、ボタン状態情報およびセンサ検出値情報を、ゲームの操作指示として受け取る。アプリケーション処理部１００は、センサ検出値情報を、入力デバイス２０の姿勢情報として取り扱う。
【００３０】
フレーム画像取得部８０はＵＳＢインタフェースとして構成され、撮像装置１４から所定の撮像速度（たとえば３０フレーム／秒）でフレーム画像を取得する。画像処理部８２は、フレーム画像から発光体画像を抽出する。画像処理部８２は、フレーム画像中の発光体画像の位置、および大きさを特定する。入力デバイス２０の発光体２２が、たとえばユーザ環境内で使われそうにない色で点灯することで、画像処理部８２は、フレーム画像から高精度に発光体画像を抽出できる。画像処理部８２は、フレーム画像データを所定の閾値を用いて２値化処理し、２値化された画像を生成してもよい。この２値化処理により、所定の閾値より大きい輝度を保持する画素の画素値が“１”に符号化され、所定の閾値以下の輝度を保持する画素の画素値が“０”に符号化される。この所定の閾値を超える輝度で発光体２２を点灯させることで、画像処理部８２は、２値化された画像から、発光体画像の位置および大きさを特定できる。たとえば画像処理部８２は、フレーム画像における発光体画像の重心座標と、発光体画像の半径を特定する。
【００３１】
デバイス情報導出部８４は、画像処理部８２で特定された発光体画像の位置および大きさから、撮像装置１４からみた入力デバイス２０の位置情報を導出する。デバイス情報導出部８４は、発光体画像の重心座標からカメラ座標における位置座標を導出し、また発光体画像の半径から、撮像装置１４からの距離情報を導出する。この位置座標および距離情報は、入力デバイス２０の位置情報を構成する。デバイス情報導出部８４は、フレーム画像ごとに入力デバイス２０の位置情報を導出し、アプリケーション処理部１００に引き渡す。アプリケーション処理部１００は、入力デバイス２０の位置情報を、ゲームの操作指示として受け取る。
【００３２】
アプリケーション処理部１００は、入力デバイス２０の位置情報および姿勢情報と、ボタン状態情報とからゲームを進行させて、ゲームアプリケーションの処理結果を示す画像信号を生成する。画像信号は出力部９０から表示装置１２に送られ、表示画像として出力される。
【００３３】
図５は、アプリケーション処理部１００の構成を示す。アプリケーション処理部１００は、操作指示受付部１０２、制御部１１０、パラメータ保持部１５０、３次元データ保持部１５２および画像生成部１５４を備える。
【００３４】
操作指示受付部１０２は、デバイス情報導出部８４から入力デバイス２０の位置情報を、入力受付部８８から入力デバイス２０の姿勢情報およびボタン状態情報を、それぞれ操作指示として受け付ける。制御部１１０は、操作指示受付部１０２が受け付けた操作指示にもとづいてゲームプログラムを実行し、ゲームを進行させる。パラメータ保持部１５０は、ゲームの進行に必要なパラメータを保持する。３次元データ保持部１５２は、ゲーム世界を構成するオブジェクトなどの３次元データを保持する。画像生成部１５４は、ゲーム空間内のカメラの視点位置と視線方向を設定し、３次元データをレンダリングして、制御部１１０により制御されるゲーム世界を表現した表示画面、すなわち操作オブジェクトの動作および非操作オブジェクトの動作に応じた表示画面を生成する。
【００３５】
制御部１１０は、操作オブジェクト制御部１１２、アイテム決定部１１４、非操作オブジェクト制御部１１６、衝突制御部１１８、探索制御部１２０および表示制御部１２２を含む。
【００３６】
操作オブジェクト制御部１１２は、操作指示受付部１０２で受け付けた操作指示に応じて、操作オブジェクトの動作を制御する。ここで操作オブジェクトは、ユーザが操作可能なオブジェクトであり、代表的にはプレイヤーキャラクタを含む。なお、ここでは、プレイヤーキャラクタが使用するアイテムも、操作オブジェクトに含まれる。アイテム決定部１１４は、ユーザからのボタン状態情報にしたがって、プレイヤーキャラクタが使用するアイテムを決定する。後述するが、プレイヤーキャラクタが利用するアイテムとして、探索レーダ、捕獲具、殴打武器、投擲武器などが用意されている。
【００３７】
非操作オブジェクト制御部１１６は、非操作オブジェクトの動作を制御する。非操作オブジェクトは、ユーザが操作しないオブジェクトであり、代表的にはノンプレイヤーキャラクタを含む。
【００３８】
実施例のゲーム装置１０が実行するゲームでは、ユーザが操作するプレイヤーキャラクタが、アイテムの１つである探索レーダを用いて、３次元的にモデリングされたゲーム世界に存在する非操作オブジェクトを探索する。非操作オブジェクトを発見すると、プレイヤーキャラクタは、その非操作オブジェクトをロックオンして、追跡する。非操作オブジェクトは、プレイヤーキャラクタからの追跡をうけると、逃げるように動作制御される。プレイヤーキャラクタは、非操作オブジェクトに近づくと、殴打武器を用いて殴打したり、また捕獲具を用いて捕獲する。また、プレイヤーキャラクタは、投擲武器を用いて非操作オブジェクトにダメージを与えることもできる。
【００３９】
衝突制御部１１８は、ゲーム空間において、操作オブジェクトと非操作オブジェクトとの衝突判定を行う。この衝突判定は、たとえばプレイヤーキャラクタが殴打武器を用いてノンプレイヤーキャラクタを殴打する際、またプレイヤーキャラクタが捕獲具を用いてノンプレイヤーキャラクタを捕獲する際、またプレイヤーキャラクタが投擲武器をノンプレイヤーキャラクタに投げた際など、様々なゲームシーンにおいて実行される。
【００４０】
探索制御部１２０は、ゲーム空間において、探索方向に非操作オブジェクトが存在するか判定する。この探索処理は、プレイヤーキャラクタが探索レーダを用いて非操作オブジェクトを探索する際に実行される。表示制御部１２２は、プレイヤーキャラクタの移動に応じて、３次元のゲーム世界をレンダリングするためのカメラを制御し、画像生成部１５４に表示画面を生成させる。以下、各構成の動作の詳細を説明する。
【００４１】
ユーザが入力デバイス２０の操作ボタン３４を押下すると、入力受付部５４が操作指示を受け付け、無線通信モジュール４８が、ボタン状態情報としてゲーム装置１０に送信する。ゲーム装置１０において、無線通信モジュール８６がボタン状態情報を受信し、入力受付部８８が、アプリケーション処理部１００に供給する。アプリケーション処理部１００において操作指示受付部１０２は、操作ボタン３４の押下操作を、探索処理の操作指示として受け付ける。アイテム決定部１１４は、操作ボタン３４が押下されたことを示すボタン状態情報をもとに、探索レーダを、プレイヤーキャラクタが使用するアイテムとして決定する。
【００４２】
図６は、探索レーダ使用中の表示画面例を示す。表示画面には、プレイヤーキャラクタ２００、探索レーダ２０２、ノンプレイヤーキャラクタ２０４および障害物２０６が表示されている。ここでプレイヤーキャラクタ２００および探索レーダ２０２は、ユーザが操作可能な操作オブジェクトであり、ノンプレイヤーキャラクタ２０４は、ユーザが操作不能な非操作オブジェクトである。ゲーム空間において、ノンプレイヤーキャラクタ２０４は、非操作オブジェクト制御部１１６により動作される。障害物２０６は静止した非操作オブジェクトであり、３次元空間における位置は、３次元データ保持部１５２に保持されたデータにより定められている。表示制御部１２２は、ワールド座標で表現されるゲーム空間において、ユーザから入力される操作指示に応じたプレイヤーキャラクタ２００の移動方向や移動量に応じて、仮想カメラの視線方向と視点位置を決定する。画像生成部１５４は、決定された視点位置に仮想カメラを配置し、決定された視線方向に仮想カメラの光軸を向けて、３次元データ保持部１５２に保持された３次元データをレンダリングし、操作オブジェクトの動作および非操作オブジェクトの動作に応じた表示画面を生成する。
【００４３】
図７は、探索制御部１２０の構成を示す。探索制御部１２０は、探索方向決定部２１０、ノンプレイヤーキャラクタ（以下、「ＮＰＣ」とも呼ぶ）判定部２１２、ロックオン処理部２１４および点灯制御部２１６を有する。探索制御部１２０は、操作ボタン３４が押下されていることを示すボタン状態情報が送信されている間、ノンプレイヤーキャラクタを探索する探索処理を実行する。したがって、ユーザは、操作ボタン３４を押下することで探索処理を開始させ、操作ボタン３４の押下を解除することで、探索処理を終了させることができる。
【００４４】
探索方向決定部２１０は、操作指示受付部１０２から入力デバイス２０の姿勢情報を取得し、ノンプレイヤーキャラクタを探索する方向を決定する。探索方向は、ゲーム空間において、プレイヤーキャラクタ２００の位置および仮想カメラの視線方向を基準として、入力デバイス２０の姿勢を用いて定められる。入力デバイス２０の基準姿勢は、ゲームアプリケーションの実行前に予め登録されており、たとえば、入力デバイス２０の長手方向を、ディスプレイに対して垂直とした姿勢を、実３次元空間における基準姿勢として登録しておく。このように入力デバイス２０の基準姿勢を登録しておくことで、実空間における入力デバイス２０の向きを、ゲーム空間における仮想カメラの視線方向に実質的に一致させることができ、入力デバイス２０の向きと、ゲーム空間における探索方向とを合わせることが可能となる。
【００４５】
探索方向決定部２１０は、３軸加速度センサ５６および３軸ジャイロセンサ５８の検出値情報から、入力デバイス２０の姿勢を検出する。入力デバイス２０の姿勢は、基準姿勢に対する変化量として検出され、実３次元空間におけるベクトルで表現される。探索方向決定部２１０は、検出した入力デバイス２０の姿勢と、ゲーム世界の仮想３次元空間におけるカメラの視線方向から、プレイヤーキャラクタ２００の位置における探索方向を決定する。具体的には、基準姿勢に対する変化量を、カメラの視線ベクトルに対する変化量として処理することで、探索方向が決定される。また、検出された入力デバイス２０の姿勢は、ゲーム世界の仮想３次元空間において、ノンプレイヤーキャラクタを探索する方向としてそのまま利用されてもよい。ＮＰＣ判定部２１２は、検出された探索方向にノンプレイヤーキャラクタが存在するか判定する。
【００４６】
図８は、ＮＰＣ判定部２１２のノンプレイヤーキャラクタ検出機能を説明するための図である。図８は、図示の都合上、仮想２次元空間を示しているが、ＮＰＣ判定部２１２は、実際には仮想３次元空間においてノンプレイヤーキャラクタを検出する。図８に示す空間において、フレーム領域２２０で切り出された領域で、図６に示す表示画面が形成されている。なお、図８に示す２次元空間では、矢印で示す方向が、基準姿勢により特定される基準方向である。
【００４７】
図６に示す表示画面では、ノンプレイヤーキャラクタ２０４のみが表示されているが、図８に示す仮想空間においては、障害物２０６の裏側にノンプレイヤーキャラクタ２０８が存在し、プレイヤーキャラクタ２００の背後にノンプレイヤーキャラクタ２１８が存在している。ＮＰＣ判定部２１２は、プレイヤーキャラクタ２００から見えるノンプレイヤーキャラクタ２０４だけでなく、プレイヤーキャラクタ２００から見えないノンプレイヤーキャラクタ２０８、２１８も検出できる。
【００４８】
ＮＰＣ判定部２１２は、探索方向にノンプレイヤーキャラクタが存在するか判定する。たとえば、ＮＰＣ判定部２１２は、ゲーム空間内に存在するノンプレイヤーキャラクタを囲むボックス（バウンダリーボックス）を設定し、プレイヤーキャラクタ２００の位置を始点として、探索方向を示す無限長のベクトルに、バウンダリーボックスが交わるか判定することで、ノンプレイヤーキャラクタの存在の有無を判定する。バウンダリーボックスは、ノンプレイヤーキャラクタを中心に配置する仮想球体であってよい。設定するバウンダリーボックスの大きさは、プレイヤーキャラクタ２００の位置からの距離に比例して定められる。つまり、プレイヤーキャラクタ２００とノンプレイヤーキャラクタとの距離が小さければ、そのノンプレイヤーキャラクタに設定されるバウンダリーボックスは小さく、距離が大きければバウンダリーボックスは大きく設定される。これにより、探索方向に、視野角のような角度をもたせることができ、ノンプレイヤーキャラクタの存在確認を効果的に実行できる。なお、ＮＰＣ判定部２１２は、探索方向を示す無限長のベクトルとノンプレイヤーキャラクタとの距離を計算し、計算した距離が閾値内である場合に、ノンプレイヤーキャラクタの存在を判定してもよい。この閾値は、プレイヤーキャラクタ２００からの距離に応じて大きく設定される。
【００４９】
またＮＰＣ判定部２１２は、プレイヤーキャラクタ２００を頂点とし、探索方向を中心軸とする仮想円錐を設定し、この仮想円錐内にノンプレイヤーキャラクタが含まれる場合に、ノンプレイヤーキャラクタの存在を判定してもよい。
【００５０】
ＮＰＣ判定部２１２は、ワールド座標で表現されるゲーム空間における探索方向の仰角に応じて、探索範囲を変化させてもよい。たとえば、プレイヤーキャラクタ２００と同一面における探索範囲よりも、プレイヤーキャラクタ２００から上向き方向を探索したときの探索範囲を広げてもよい。ＮＰＣ判定部２１２は、入力デバイス２０が水平よりも上向きにされたとき、たとえば水平時に設定するよりもバウンダリーボックスを大きく設定することで探索範囲を広げ、ノンプレイヤーキャラクタを発見しやすくしてもよい。このように、３次元仮想空間において、探索方向が水平面から角度をもつ場合に、探索範囲を水平面よりも広げることで、２次元空間にはない３次元ゲーム空間の特徴を有効活用することができる。
【００５１】
ＮＰＣ判定部２１２は、ノンプレイヤーキャラクタが存在することを検出すると、その旨を点灯制御部２１６に通知する。点灯制御部２１６は、その通知を受けると、入力デバイス２０の発光体２２の点灯を制御する。具体的に点灯制御部２１６は、発光体２２の発光色を変更させる発光指示を生成し、無線通信モジュール８６から入力デバイス２０に送信させる。通常時、発光体２２がたとえば青色で発光していれば、点灯制御部２１６は、青色とは異なる色での発光指示を生成する。ＮＰＣ判定部２１２は、探索方向にノンプレイヤーキャラクタが存在する間、その旨を点灯制御部２１６に通知し続け、点灯制御部２１６は、その通知を受けている間、無線通信モジュール８６から発光指示を送信させる。たとえば、発光指示により指定される発光色は、ユーザの注意を喚起する赤色とされる。なお、発光体２２の画像認識精度を高めるために、ＮＰＣ判定部２１２は、撮像装置１４の撮像範囲に含まれる色とは異なる色を発光色として指示してもよい。たとえばＮＰＣ判定部２１２は、複数の発光色の候補から、最も画像認識精度の高い色、具体的には撮像装置１４のフレーム画像に含まれない色を選択して、発光指示を生成してもよい。
【００５２】
入力デバイス２０において、無線通信モジュール４８が発光指示を受信すると、メイン制御部５２が、発光制御部６０に供給する。発光制御部６０は、発光指示で指定された発光色となるように、発光部６２の発光を制御する。これにより、発光部６２は、指定された色で発光する。
【００５３】
ユーザは、発光体２２の色の変化を見て、ノンプレイヤーキャラクタを発見できたことを認識する。このときユーザが操作ボタン３４の押下操作を解除すると、ロックオン処理部２１４が、探索処理の終了を判定して、発見したノンプレイヤーキャラクタをロックオンする。ここで「ロックオン」とは、プレイヤーキャラクタ２００の進行方向を自動的にノンプレイヤーキャラクタに向けることであり、ノンプレイヤーキャラクタが逃げ回っても、ユーザが操作ボタン４０を操作し続けていれば、プレイヤーキャラクタ２００が、ロックオンしたノンプレイヤーキャラクタを追いかけることができる。なお、操作ボタン３４の押下操作の解除時に、ＮＰＣ判定部２１２が探索方向にノンプレイヤーキャラクタが存在していないことを判定していれば、ロックオン処理部２１４は、ノンプレイヤーキャラクタをロックオンできない。なお探索処理により、探索範囲に複数のノンプレイヤーキャラクタが存在していることが判定されている場合、ロックオン処理部２１４は、プレイヤーキャラクタ２００から最も近い距離にいるノンプレイヤーキャラクタをロックオンしてもよい。
【００５４】
なお、画像処理部８２は、点灯制御部２１６から発光体２２の発光指示を受け取り、発光体２２の発光色を常に把握しておく。これにより、画像処理部８２は、フレーム画像を２値化処理する際の、ＲＧＢ画素のそれぞれに対する閾値を発光色に応じて再設定し、再設定した閾値をもとにフレーム画像を２値化処理することで、発光色が変化しても、発光体画像の位置および大きさの特定を継続して実行できる。
【００５５】
図９は、探索制御部１２０の処理を示すフローチャートである。操作指示受付部１０２が操作ボタン３４の押下を示すボタン状態情報を受け付けると（Ｓ１０）、探索制御部１２０が探索処理を開始する。探索方向決定部２１０は、仮想３次元空間のプレイヤーキャラクタ２００の位置、入力デバイス２０の姿勢情報、および仮想カメラの視線ベクトルから、ノンプレイヤーキャラクタの探索方向を決定する（Ｓ１２）。ＮＰＣ判定部２１２は、決定された探索方向にノンプレイヤーキャラクタが存在するか判定し（Ｓ１４）、ノンプレイヤーキャラクタを検出すると（Ｓ１４のＹ）、検出したことを点灯制御部２１６に通知する。このときＮＰＣ判定部２１２は、ＮＰＣ検出フラグをＯＮに設定し、このフラグ値を点灯制御部２１６に通知してもよい。なお、ＮＰＣ検出フラグは、ノンプレイヤーキャラクタが検出されなければＯＦＦに設定されている。点灯制御部２１６は、フラグＯＮ値を受け取ると、入力デバイス２０の発光体２２を点灯制御して、発光色を変化させる（Ｓ１６）。ノンプレイヤーキャラクタが探索方向に検出されなければ（Ｓ１４のＮ）、発光体２２の発光色は変化しない。操作指示受付部１０２が、操作ボタン３４の押下を示すボタン状態情報を受け付ける間（Ｓ１８のＮ）、Ｓ１２〜Ｓ１６の処理は繰り返し実行される。
【００５６】
操作指示受付部１０２が、操作ボタン３４の押下操作が解除されたことを示すボタン状態情報を受け付けると（Ｓ１８のＹ）、ロックオン処理部２１４は、ＮＰＣ検出フラグ値を参照する（Ｓ２０）。ＮＰＣ検出フラグ値がＯＮであれば（Ｓ２０のＹ）、探索方向に存在することが検出されたノンプレイヤーキャラクタにロックオン処理を実行する（Ｓ２２）。なお、ＮＰＣ検出フラグ値がＯＦＦであれば（Ｓ２０のＮ）、ロックオン処理は実行されない。以上で、探索制御部１２０の探索処理は終了する。
【００５７】
点灯制御部２１６は、ノンプレイヤーキャラクタを発見したときに、入力デバイス２０の発光体２２の発光色を変化させるが、このとき、発見したノンプレイヤーキャラクタのステータス情報に応じて、発光色を決定してもよい。
【００５８】
非操作オブジェクト制御部１１６は、ノンプレイヤーキャラクタのステータス情報を決定する。たとえばステータス情報として、ノンプレイヤーキャラクタが、プレイヤーキャラクタ２００の存在に気づいているか否かの情報が設定される。ノンプレイヤーキャラクタがプレイヤーキャラクタ２００の存在に気づいていることの条件としては、ノンプレイヤーキャラクタの視野角にプレイヤーキャラクタ２００が含まれていること、且つ、ノンプレイヤーキャラクタとプレイヤーキャラクタ２００との距離が所定値以下であること、である。非操作オブジェクト制御部１１６は、ノンプレイヤーキャラクタごとに、この条件が満足されているか否かを管理し、状態フラグ値として設定しておく。条件を満足していれば、状態フラグ値はＯＮに設定され、満足していなければＯＦＦに設定される。なお、プレイヤーキャラクタ２００およびノンプレイヤーキャラクタは、互いに動いているため、この状態フラグ値は、所定の周期で更新される必要がある。
【００５９】
ＮＰＣ判定部２１２は、探索方向にノンプレイヤーキャラクタが存在することを検出すると、そのノンプレイヤーキャラクタの状態フラグ値を取得して、点灯制御部２１６に通知する。点灯制御部２１６は、状態フラグ値に応じて、発光体２２の発光色を決定する。これによりユーザは、発光体２２の発光色を見ることで、発見したノンプレイヤーキャラクタが、プレイヤーキャラクタ２００に気づいているか否かを認識できるため、ノンプレイヤーキャラクタの追いかけ方を決めることができる。たとえば、プレイヤーキャラクタ２００に気づいているノンプレイヤーキャラクタをロックオンした後、普通に追いかけると、非操作オブジェクト制御部１１６が、そのノンプレイヤーキャラクタを猛ダッシュで逃げ回るように動作させる場合、ゆっくりと追いかけるようにすることで、ノンプレイヤーキャラクタを捕獲しやすくできる。
【００６０】
このとき非操作オブジェクト制御部１１６は、ノンプレイヤーキャラクタに設定された状態フラグ値をもとに、動作パターンを切り替えて、ノンプレイヤーキャラクタの動作を制御する。上記したように、あるノンプレイヤーキャラクタの状態フラグ値がＯＮに設定されている場合、そのノンプレイヤーキャラクタにプレイヤーキャラクタ２００が通常の速度で近づいてくることを検出すると、非操作オブジェクト制御部１１６が、動作パターンの切替を行い、ノンプレイヤーキャラクタを、プレイヤーキャラクタ２００から高速で離れるように動作制御する。一方、この場合に、プレイヤーキャラクタ２００がノンプレイヤーキャラクタに通常よりも遅い速度で近づいてくることを検出すると、非操作オブジェクト制御部１１６は、動作パターンを変更せずに、通常の動作パターンでノンプレイヤーキャラクタを動作制御する。
【００６１】
なお、ノンプレイヤーキャラクタが、プレイヤーキャラクタ２００の存在に気づいているか否かを特定するステータス情報について説明したが、ＮＰＣ判定部２１２は、他のステータス情報をもとに、発光色を決定してもよい。たとえば、ステータス情報として、発見したノンプレイヤーキャラクタとプレイヤーキャラクタ２００との距離情報を設定してもよく、また探索範囲で発見したノンプレイヤーキャラクタの数情報を設定してもよい。またＮＰＣ判定部２１２は、ステータス情報に応じて発光色を変化させるほか、たとえば点灯と消灯を繰り返させる点滅指示を生成してもよく、また複数色を周期的に切り替える多色切替指示を生成してもよい。
【００６２】
以上のようにノンプレイヤーキャラクタをロックオンすると、ユーザが、操作ボタン４０を操作することで、プレイヤーキャラクタ２００が、ロックオンしたノンプレイヤーキャラクタを追いかける。この処理は、操作オブジェクト制御部１１２により行われる。このとき、アイテム決定部１１４は、探索レーダを使用する前に使っていたアイテムを、プレイヤーキャラクタが使用するアイテムとして決定する。たとえば、探索レーダを使用する前に捕獲具を使用していれば、探索処理の終了後、捕獲具がアイテムとして決定される。
【００６３】
図１０は、捕獲具使用中の表示画面例を示す。表示画面には、プレイヤーキャラクタ２００、ノンプレイヤーキャラクタ２２２および捕獲アミ２２４が表示されている。捕獲アミ２２４は捕獲具の１つの態様であり、ノンプレイヤーキャラクタ２２２を捕獲アミ２２４に入れて、床や壁にアミのリング部分（アミ枠）を押しつけることで、捕獲が完了する。なお、捕獲が完了すると、そのノンプレイヤーキャラクタ２２２は捕獲アミ２２４の中で消滅する。
【００６４】
図１１は、ノンプレイヤーキャラクタ２２２の捕獲過程を示す図である。図１１（ａ）は、捕獲アミ２２４の中にノンプレイヤーキャラクタ２２２を入れた状態を示す。捕獲アミ２２４に入れた状態で所定時間放置すると、ノンプレイヤーキャラクタ２２２は、捕獲アミ２２４から逃げ出すことができる。また、ノンプレイヤーキャラクタ２２２が捕獲アミ２２４に入った状態で、ユーザが操作ボタン３２を押下すると、ノンプレイヤーキャラクタ２２２を捕獲アミ２２４から放出することができる。このように、本ゲームアプリケーションでは、ユーザに様々な楽しみ方が提供される。
【００６５】
図１１（ｂ）は、捕獲アミ２２４のリング部分を床２２６に押しつけた状態を示す。捕獲アミ２２４にノンプレイヤーキャラクタ２２２を入れた時点から所定時間内に捕獲アミ２２４のリング部分を床２２６に押しつけることで、捕獲が完了する。このときノンプレイヤーキャラクタ２２２は、捕獲アミ２２４内から消滅する。なお、リング部分を押しつける対象は、床２２６に限らず、壁など、ゲーム世界において固定されたオブジェクトであればよい。
【００６６】
図１２は、衝突制御部１１８の構成を示す。衝突制御部１１８は、衝突判定部２３０、衝突態様決定部２３２および動作決定部２３４を有する。衝突制御部１１８は、操作オブジェクトと、非操作オブジェクトとの衝突制御を実行する。衝突判定部２３０は、操作オブジェクトと非操作オブジェクトとの衝突判定を行い、衝突を検出すると、衝突態様決定部２３２が、衝突の態様を決定する。動作決定部２３４は、衝突態様に応じて、操作オブジェクトまたは非操作オブジェクトの少なくとも一方の動作を決定する。
【００６７】
操作オブジェクト制御部１１２は、操作ボタン４０が操作されたことを示すボタン状態情報をもとに、プレイヤーキャラクタ２００に、ロックオンしたノンプレイヤーキャラクタ２２２を追跡させる。プレイヤーキャラクタ２００がノンプレイヤーキャラクタ２２２に近づくと、ユーザは操作ボタン４０の押下を解除する。以後、操作オブジェクト制御部１１２は、入力デバイス２０の位置情報および姿勢情報をもとに、プレイヤーキャラクタ２００および捕獲アミ２２４の動作を制御する。具体的に、操作オブジェクト制御部１１２は、プレイヤーキャラクタ２００の前後方向の動きを、フレーム画像中の発光体画像の大きさから導出される距離情報により決定し、左右方向の動きを、フレーム画像中の発光体画像の位置座標により決定する。さらに具体的には、操作ボタン４０の押下が解除された時点の距離情報および位置座標からの差分値で、それぞれの動きが決定される。また操作オブジェクト制御部１１２は、捕獲アミ２２４の動きを、姿勢情報により決定する。ユーザが入力デバイス２０をアミに見立てて動かすと、操作オブジェクト制御部１１２が、捕獲アミ２２４の動きを、ユーザによる入力デバイス２０の動きと同じように制御する。これにより、ユーザの動きとプレイヤーキャラクタ２００の動きとを連動させることができる。
【００６８】
衝突判定部２３０は、捕獲アミ２２４とノンプレイヤーキャラクタ２２２の衝突判定を行う。衝突判定部２３０は、既知の衝突判定アルゴリズムを用いて、捕獲アミ２２４のリング部分の内側に形成される平面と、ノンプレイヤーキャラクタ２２２との衝突判定を行う。衝突が検出されたとき、衝突態様決定部２３２は、衝突の態様を決定する。
【００６９】
操作オブジェクト制御部１１２は、入力デバイス２０から送信されるセンサ検出値情報から捕獲アミ２２４の移動速度を導出し、移動させる。このように操作オブジェクト制御部１１２は、加速度センサ検出値情報を用いて捕獲アミ２２４の移動速度を検出してもよい。また操作オブジェクト制御部１１２は、デバイス情報導出部８４で導出された、フレームごとの入力デバイス２０の位置情報から、捕獲アミ２２４の移動速度を導出してもよい。衝突判定部２３０が、捕獲アミ２２４のリング部分に形成される平面と、ノンプレイヤーキャラクタ２２２との衝突を判定すると、衝突態様決定部２３２は、衝突時の捕獲アミ２２４の移動速度を取得する。このとき衝突態様決定部２３２は、捕獲アミ２２４の移動速度が所定速度以下であるか判定して、その判定結果に応じて衝突態様を決定し、動作決定部２３４に通知する。
【００７０】
動作決定部２３４は、決定された衝突態様が捕獲アミ２２４の移動速度が所定速度以下であることを示す場合、ノンプレイヤーキャラクタ２２２の動作を、捕獲アミ２２４内から所定時間脱出できないものとして決定する。この決定された動作は非操作オブジェクト制御部１１６に通知され、非操作オブジェクト制御部１１６は、この通知を受けて、所定時間の間は、捕獲アミ２２４内でノンプレイヤーキャラクタ２２２を動かすように制御する。一方、動作決定部２３４は、決定された衝突態様が捕獲アミ２２４の移動速度が所定速度を超えていることを示す場合に、ノンプレイヤーキャラクタ２２２の動作を、捕獲アミ２２４に入ったらすぐに消滅するように決定する。この決定された動作は非操作オブジェクト制御部１１６に通知され、非操作オブジェクト制御部１１６は、この通知を受けて、捕獲アミ２２４内にノンプレイヤーキャラクタ２２２が入ったらすぐに消滅するように制御する。
【００７１】
このように、センサ検出値情報および／または入力デバイス２０の位置情報に応じて衝突態様を決定し、その衝突態様によりノンプレイヤーキャラクタ２２２の動作を決定することで、入力デバイス２０の特徴を活かしたゲームを実現できる。なお、衝突態様によりプレイヤーキャラクタ２００の動作を決定してもよい。また移動速度により衝突態様を決定したが、加速度により衝突態様を決定してもよい。
【００７２】
なお、ノンプレイヤーキャラクタ２２２の動作が、捕獲アミ２２４内に所定時間とどまるように決定された場合、プレイヤーキャラクタ２００が、捕獲アミ２２４を床や壁に押しつけることで、ノンプレイヤーキャラクタ２２２を消滅させることができる。衝突判定部２３０は、捕獲アミ２２４のリング部分と床や壁との衝突判定を行う。衝突が検出されたとき、衝突態様決定部２３２は、リング部分に形成される平面と、床平面との角度に応じて、衝突態様を決定する。平面同士の角度は、各平面の垂線同士の角度により求められる。衝突態様決定部２３２は、平面同士の角度が所定角度以上であるか判定して、その判定結果に応じて衝突態様を決定し、動作決定部２３４に通知する。
【００７３】
なお、この衝突態様は、衝突判定により決定されてもよいが、ゲーム空間内の床や壁のワールド座標と、捕獲アミ２２４のリング部分のワールド座標の位置関係から決定されてもよい。
【００７４】
動作決定部２３４は、決定された衝突態様が平面同士の角度が所定値以上であることを示す場合、ノンプレイヤーキャラクタ２２２の動作を、捕獲アミ２２４内から脱出できるものとして決定する。この決定された動作は非操作オブジェクト制御部１１６に通知され、非操作オブジェクト制御部１１６は、この通知を受けて、捕獲アミ２２４にノンプレイヤーキャラクタ２２２が入った時点から所定時間が経過すると、捕獲アミ２２４から脱出するように制御する。一方、動作決定部２３４は、決定された衝突態様が平面同士の角度が所定値より小さいことを示す場合、ノンプレイヤーキャラクタ２２２の動作を、消滅するように決定する。この決定された動作は非操作オブジェクト制御部１１６に通知され、非操作オブジェクト制御部１１６は、この通知を受けて、捕獲アミ２２４内のノンプレイヤーキャラクタ２２２を消滅するように制御する。
【００７５】
なお、ノンプレイヤーキャラクタ２２２が捕獲アミ２２４に捕らえられた状態で、ユーザが入力デバイス２０の操作ボタン４０を操作すると、非操作オブジェクト制御部１１６が、入力デバイス２０の姿勢情報から、捕獲アミ２２４のリング部分に形成される平面に垂直な方向に、ノンプレイヤーキャラクタ２２２を放出する。このように、本ゲームでは、捕獲アミ２２４とノンプレイヤーキャラクタ２２２との衝突態様に応じて、ノンプレイヤーキャラクタ２２２の動作に様々なバリエーションをもたせることができる。
【００７６】
図１３は、衝突制御部１１８の処理を示すフローチャートである。衝突判定部２３０は、操作オブジェクトと非操作オブジェクトとの衝突判定を行う（Ｓ３０）。衝突が検出されなければ（Ｓ３０のＮ）、この衝突制御処理は進行しない。衝突が検出されると（Ｓ３０のＹ）、衝突態様決定部２３２が、衝突態様を決定する（Ｓ３２）。動作決定部２３４は、衝突態様に応じて、操作オブジェクトまたは非操作オブジェクトの少なくとも一方の動作を決定する（Ｓ３４）。
【００７７】
本ゲームにおいて、捕獲具はデフォルトアイテムとして設定され、探索処理の終了後は、常に捕獲具がアイテムとして決定されるが、ユーザは操作ボタン３６を押下することで、プレイヤーキャラクタ２００の使用アイテムを変更できる。アイテム決定部１１４は、殴打武器を、プレイヤーキャラクタが使用するアイテムとして決定する。
【００７８】
ハリセンは殴打武器の１つの態様である。現実のハリセンは、紙を蛇腹状に折り、一方をテープなどで巻いて握りを作り、反対側を扇子状に開いて作られる。プレイヤーキャラクタ２００は、ハリセンでノンプレイヤーキャラクタを叩くことができる。ハリセンの向きは、入力デバイス２０の姿勢情報により定められる。衝突判定部２３０は、ハリセンとノンプレイヤーキャラクタの衝突判定を行う。
【００７９】
操作オブジェクト制御部１１２は、入力デバイス２０から送信されるセンサ検出値情報からハリセンの移動速度を導出し、移動させる。衝突判定部２３０が、ハリセンと、ノンプレイヤーキャラクタとの衝突を判定すると、動作決定部２３４が、衝突時のハリセンの移動方向および移動速度から、ノンプレイヤーキャラクタ２２２が吹っ飛ぶ方向と速さを決定する。この決定された動作は非操作オブジェクト制御部１１６に通知され、非操作オブジェクト制御部１１６は、この通知を受けて、ノンプレイヤーキャラクタ２２２を動作させる。
【００８０】
なおハリセンは、殴打武器として利用されるが、蛇腹部分を団扇のようにして風を起こすように利用されてもよい。操作オブジェクト制御部１１２は、入力デバイス２０の姿勢情報によりハリセンを動かす向きを定め、殴打武器または団扇のいずれかでハリセンを動作させる。
【００８１】
またユーザが操作ボタン３６を押下すると、アイテム決定部１１４が、投擲武器を、プレイヤーキャラクタが使用するアイテムとして決定してもよい。
図１４（ａ）は、投擲武器の１つの態様であるパチンコの表示画面例を示す。ユーザが操作ボタン４０を操作すると、操作オブジェクト制御部１１２は、パチンコ２４０をプレイヤーキャラクタ２００にもたせる。ここでは、プレイヤーキャラクタ２００の図示を省略している。操作オブジェクト制御部１１２は、操作ボタン４０が操作された時点の入力デバイス２０の位置情報および姿勢情報を、初期状態情報として取得する。操作オブジェクト制御部１１２は、姿勢情報から、パチンコ２４０の方向を定める。
【００８２】
図１４（ｂ）は、入力デバイス２０が撮像装置１４から離れる方向に移動したときの表示画面例を示す。この例では、パチンコのゴム紐は、操作ボタン４０を操作がされた時の位置からの移動量に応じて、引っ張られる。ゴム紐には弾がセットされ、操作ボタン４０の押下操作が解除されると、図１４（ｃ）に示すように弾が投擲される。操作オブジェクト制御部１１２は、弾の飛距離を、初期位置からの移動量と、また操作ボタン４０の押下時間に応じて定めてもよい。
【００８３】
以下、本ゲームにおいて用意されるアイテムを示す。
１）トング
ユーザが操作ボタン３０と操作ボタン４０を同時に押すことで、プレイヤーキャラクタ２００が、トングを使って非操作オブジェクトをつかむことができる。
２）おたま
プレイヤーキャラクタ２００が、おたまを使って水やお湯をすくい、ノンプレイヤーキャラクタにかけることができる。非操作オブジェクト制御部１１６は、水やお湯の温度により、ノンプレイヤーキャラクタの動作を変化させる。
なお、入力デバイス２０の特徴を活かした他のアイテムが用意されてもよい。
【００８４】
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【００８５】
１・・・ゲームシステム、１０・・・ゲーム装置、１２・・・表示装置、１４・・・撮像装置、２０・・・入力デバイス、２２・・・発光体、２４・・・ハンドル、４８・・・無線通信モジュール、５０・・・処理部、５２・・・メイン制御部、５４・・・入力受付部、５６・・・３軸加速度センサ、５８・・・３軸ジャイロセンサ、６０・・・発光制御部、６２・・・発光部、８０・・・フレーム画像取得部、８２・・・画像処理部、８４・・・デバイス情報導出部、８６・・・無線通信モジュール、８８・・・入力受付部、９０・・・出力部、１００・・・アプリケーション処理部、１０２・・・操作指示受付部、１１０・・・制御部、１１２・・・操作オブジェクト制御部、１１４・・・アイテム決定部、１１６・・・非操作オブジェクト制御部、１１８・・・衝突制御部、１２０・・・探索制御部、１２２・・・表示制御部、１５０・・・パラメータ保持部、１５２・・・３次元データ保持部、１５４・・・画像生成部、２１０・・・探索方向決定部、２１２・・・ＮＰＣ判定部、２１４・・・ロックオン処理部、２１６・・・点灯制御部、２３０・・・衝突判定部、２３２・・・衝突態様決定部、２３４・・・動作決定部。
【図１】
0005453006.tif 000002
【図２】
0005453006.tif 000003
【図３】
0005453006.tif 000004
【図４】
0005453006.tif 000005
【図５】
0005453006.tif 000006
【図６】
0005453006.tif 000007
【図７】
0005453006.tif 000008
【図８】
0005453006.tif 000009
【図９】
0005453006.tif 000010
【図１０】
0005453006.tif 000011
【図１１】
0005453006.tif 000012
【図１２】
0005453006.tif 000013
【図１３】
0005453006.tif 000014
【図１４】
0005453006.tif 000015