(57)【要約】【課題】  直感的な操作による選択操作をプレイヤに提供し、操作性を高めることができるゲームプログラムおよびゲーム装置を提供すること。【解決手段】  座標検出ステップにて、ポインティングデバイスを通じて入力される表示画面上の位置を示す座標値を単位時間間隔で検出する。また、操作状態判別ステップにて、プレイヤがポインティングデバイスを用いて第１のオブジェクトを操作中であるか否かを判別する。そして、操作状態判別ステップにより操作中と判別されたときに、選択判定ステップにて、上記座標値に基づき、ポインティングデバイスの入力軌跡が第２のオブジェクトを囲むような閉領域を形成したかを判定する。そして、当該閉領域が形成されていれば、第１および第２のオブジェクトに所定の動作を行わせる。【選択図】  図２２
2006311966.tif 000002
【特許請求の範囲】
【請求項１】
ゲーム画像を表示するための表示画面と当該表示画面に関連して設けられるポインティングデバイスとを備えるゲーム装置のコンピュータに、
前記ポインティングデバイスからの出力信号に基づいて、当該ポインティングデバイスを通じて入力される前記表示画面上の位置を示す座標値を逐次検出する座標検出ステップと、
前記ポインティングデバイスを用いてプレイヤが第１のオブジェクトを操作している状態であるか否かを前記ポインティングデバイスからの出力信号に基づいて判別する操作状態判別ステップと、
前記操作状態判別ステップにおいて、プレイヤが第１のオブジェクトを操作している状態であると判別されたときに、前記座標検出ステップにより検出された座標値群に基づいて、第２のオブジェクトが選択されたかを判定する選択判定ステップと、
前記選択判定ステップによって第２のオブジェクトが選択されたと判定されたときに、前記第１のオブジェクトと前記第２のオブジェクトとの何れか一方が他方に影響を及ぼす動作を行わせる影響動作処理ステップとを実行させる、ゲームプログラム。
【請求項２】
前記選択判定ステップは、前記座標検出ステップにより検出された座標値群に基づいて、プレイヤの入力軌跡が第２のオブジェクトを囲む軌跡を形成したか否かを判定し、囲む軌跡を形成したと判定したときに当該第２のオブジェクトが選択されたと判定することを特徴とする、請求項１記載のゲームプログラム。
【請求項３】
前記座標検出ステップによって検出された座標値群に基づいて、連続する各座標値を結ぶ線分データ群を算出する線分データ算出ステップと、
前記線分データ群により示される入力軌跡と、前記線分データ群のうち最新の線分データとが交差したか否かを判定する交差判定ステップと、
前記交差判定ステップにより前記入力軌跡と前記最新の線分データとが交差したと判定されたときに、前記入力軌跡に基づいて決定される前記表示画面上の領域に第２のオブジェクトが存在するか否かを判定する存在判定ステップとを前記コンピュータに更に実行させ、
前記選択判定ステップは、前記存在判定ステップにより前記第２のオブジェクトが存在すると判定されたときに、当該第２のオブジェクトが選択されたと判定することを特徴とする、請求項１記載のゲームプログラム。
【請求項４】
ゲーム画像を表示するための表示画面と当該表示画面に関連して設けられるポインティングデバイスとを備えるゲーム装置のコンピュータに、
前記ポインティングデバイスからの出力信号に基づいて、当該ポインティングデバイスを通じて入力される前記表示画面上の位置を示す座標値を単位時間間隔で検出する座標検出ステップと、
前記座標検出ステップによって検出された座標値群に基づいて、連続する各座標値の間を結ぶ線分データ群を算出する線分データ算出ステップと、
前記線分データ群により示される入力軌跡が、前記表示画面上のオブジェクトを少なくとも１つ以上囲んでいるか否かを判定する囲み判定ステップと、
前記囲み判定ステップによってオブジェクトが少なくとも１つ以上囲まれたと判定されたときに、当該オブジェクトを選択状態とする選択ステップと、
前記選択ステップによってオブジェクトが選択されたと判定されたときに、当該選択されたオブジェクトに所定の動作を行わせる動作処理ステップとを実行させる、ゲームプログラム。
【請求項５】
前記線分データ群により示される入力軌跡と、前記線分データ群のうち最新の線分データとが交差したか否かを判定する交差判定ステップと、
前記交差判定ステップにより前記入力軌跡と前記最新の線分データとが交差したと判定されたときに、前記入力軌跡に基づいて決定される前記表示画面上の領域に前記オブジェクトが存在するか否かを判定する存在判定ステップとを前記コンピュータに更に実行させ、
前記選択ステップは、前記存在判定ステップにより前記オブジェクトが存在すると判定されたときに、当該オブジェクトを選択状態とすることを特徴とする、請求項４記載のゲームプログラム。
【請求項６】
ゲーム画像を表示するための表示画面と当該表示画面に関連して設けられるポインティングデバイスとを備えるゲーム装置のコンピュータに、
前記ポインティングデバイスからの出力信号に基づいて、当該ポインティングデバイスを通じて入力される前記表示画面上の位置を示す座標値を逐次検出する座標検出ステップと、
前記座標検出ステップによって検出された座標値群に基づいて、連続する各座標値の間の距離および方向を示す線分データ群を算出する線分データ算出ステップと、
前記算出された線分データ群に対して所定の計算を行うことで補完入力軌跡データを算出する補完軌跡算出ステップと、
前記算出された補完入力軌跡データをメモリに格納する補完軌跡格納ステップと、
前記格納された補完入力軌跡データに基づいて所定のゲーム処理を行うゲーム処理ステップとを実行させる、ゲームプログラム。
【請求項７】
前記線分データ群のうち最新の線分データに所定の計算を施した線分データを補完線分データとしてメモリに格納する補完線分生成ステップを前記コンピュータに更に実行させ、
前記補完軌跡算出ステップは、前記線分データ群に前記補完線分データを加えることで前記補完入力軌跡データを算出することを特徴とする、請求項６記載のゲームプログラム。
【請求項８】
前記ポインティングデバイスを用いてプレイヤが第１のオブジェクトを操作している状態であるか否かを前記ポインティングデバイスからの出力信号に基づいて判別する操作状態判別ステップと、
前記操作状態判別ステップにおいて、プレイヤが第１のオブジェクトを操作している状態であると判別されたときに、前記補完入力軌跡に基づいて決定される前記表示画面上の領域に第２のオブジェクトが存在するか否かを判定する存在判定ステップと、
前記存在判定ステップにより、第２のオブジェクトが存在すると判定されたときに、前記第１のオブジェクトと前記第２のオブジェクトとの何れか一方が他方に影響を及ぼす動作を行わせる影響動作処理ステップとを前記コンピュータに更に実行させる、請求項６記載のゲームプログラム。
【請求項９】
前記補完入力軌跡に基づいて決定される前記表示画面上の領域にオブジェクトが存在するか否かを判定する存在判定ステップと、
前記存在判定ステップにより前記オブジェクトが存在すると判定されたときに、当該オブジェクトを選択状態とする選択ステップとを前記コンピュータに更に実行させる、請求項６記載のゲームプログラム。
【請求項１０】
請求項１から９のいずれかに記載のゲームプログラムを記憶した記憶手段と、
前記記憶手段に記憶されたゲームプログラムを実行するプログラム実行手段とを備えたゲーム装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲームプログラムおよびゲーム装置に関し、より特定的には、入力装置としてポインティングデバイスを用いたゲームプログラムおよびゲーム装置に関する。
【背景技術】
【０００２】
従来より、プレイヤが操作するオブジェクトに、その他のオブジェクトへの攻撃等の所定の動作を行わせるゲームがある。当該所定の動作を行わせる方法として、以下のようなものがある。
【０００３】
例えば、ＡＲＰＧ（アクションロールプレイングゲーム）のようなゲームにおいて、プレイヤオブジェクトを敵オブジェクトの至近距離まで近づけた状態でプレイヤが攻撃ボタンを押すことにより、プレイヤキャラクタが剣を振る動作を行って敵キャラクタを攻撃する。
【０００４】
また、非特許文献１に記載されているゲームでは、プレイヤは、複数の第１オブジェクトを従えたプレイヤオブジェクトを移動させることができ、さらにコントローラのスティックを操作することでカーソルを目標物に合わせることができる。そして、カーソルが目標物に合った状態で更にボタンを押すことで、プレイヤオブジェクトが第１オブジェクトの１つを目標物に投げつける。すると、残りの第１オブジェクトが当該目標物に応じて自動的に攻撃等の所定の動作を開始する。
【非特許文献１】「ファミ通増刊ピクミンブック」、株式会社エンターブレイン、Ｐ３６〜３７、２００１年１１月
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の従来の方法には以下のような問題点がある。
【０００６】
まず、プレイヤが敵オブジェクトを攻撃したい場合に、敵に近づいて攻撃ボタンを押すという一連の動作を要求することは、ゲーム内容によっては必ずしも適切でないときがある。
【０００７】
また、プレイヤキャラが従えているオブジェクトを投げることで、自動的に所定の動作を開始させるという方法においても、カーソルを目的物に合わせるという操作が必要となる。そのため、ゲームの内容によっては、カーソルを合わせるという操作が煩わしく、操作性を低下させてしまうことがある。
【０００８】
それ故に、本発明の目的は、プレイヤに直感的な操作で選択操作を行わせて、操作性を高めることができるゲームプログラムおよびゲーム装置を提供することである。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明は以下のような構成を採用した。
【００１０】
第１の発明は、ゲーム画像を表示するための表示画面（１２）と当該表示画面に関連して設けられるポインティングデバイス（１５）とを備えるゲーム装置のコンピュータに、座標検出ステップ（Ｓ２）と、操作状態判別ステップ（Ｓ９）と、選択判定ステップ（Ｓ５１）と、影響動作処理ステップ（Ｓ５３、Ｓ５４）とを実行させるゲームプログラムである。座標検出ステップは、ポインティングデバイスからの出力信号に基づいて、当該ポインティングデバイスを通じて入力される表示画面上の位置を示す座標値を単位時間間隔で検出する。操作状態判別ステップは、ポインティングデバイスを用いてプレイヤが第１のオブジェクトを操作している状態であるか否かをポインティングデバイスからの出力信号に基づいて判別する。選択判定ステップは、操作状態判別ステップにおいて、プレイヤが第１のオブジェクトを操作している状態であると判別されたときに、座標検出ステップにより検出された座標値群に基づいて、第２のオブジェクトが選択されたかを判定する。影響動作処理ステップは、選択判定ステップによって第２のオブジェクトが選択されたと判定されたときに、第１のオブジェクトと第２のオブジェクトとの何れか一方が他方に影響を及ぼす動作を行わせる。
【００１１】
第２の発明は、第１の発明において、選択判定ステップでは、座標検出ステップにより検出された座標値群に基づいて、プレイヤの入力軌跡が第２のオブジェクトを囲む軌跡を形成したか否かを判定し、囲む軌跡を形成したと判定したときに当該第２のオブジェクトが選択されたと判定する。
【００１２】
第３の発明は、第１の発明において、線分データ算出ステップ（Ｓ４３）と、交差判定ステップ（Ｓ４６）と、存在判定ステップ（Ｓ５１）とを更に実行させる。線分データ算出ステップは、座標検出ステップによって検出された座標値群に基づいて、連続する各座標値を結ぶ線分データ群を算出する。交差判定ステップは、線分データ群により示される入力軌跡と、線分データ群のうち最新の線分データとが交差したか否かを判定する。存在判定ステップは、交差判定ステップにより入力軌跡と最新の線分データとが交差したと判定されたときに、入力軌跡に基づいて決定される表示画面上の領域に第２のオブジェクトが存在するか否かを判定する。更に、選択判定ステップは、存在判定ステップにより第２のオブジェクトが存在すると判定されたときに、当該第２のオブジェクトが選択されたと判定する。
【００１３】
第４の発明は、ゲーム画像を表示するための表示画面（１２）と当該表示画面に関連して設けられるポインティングデバイス（１５）とを備えるゲーム装置のコンピュータに、座標検出ステップ（Ｓ２）と、線分データ算出ステップ（Ｓ４３）と、囲み判定ステップ（Ｓ４７）と、選択ステップ（Ｓ８１）と、動作処理ステップ（Ｓ８３、Ｓ８４）とを実行させるゲームプログラムである。座標検出ステップは、ポインティングデバイスからの出力信号に基づいて、当該ポインティングデバイスを通じて入力される表示画面上の位置を示す座標値を単位時間間隔で検出する。線分データ算出ステップは、座標検出ステップによって検出された座標値群に基づいて、連続する各座標値の間を結ぶ線分データ群を算出する。囲み判定ステップは、線分データ群により示される入力軌跡が、表示画面上のオブジェクトを少なくとも１つ以上囲んでいるか否かを判定する。選択ステップは、囲み判定ステップによってオブジェクトが少なくとも１つ以上囲まれたと判定されたときに、当該オブジェクトを選択状態とする。動作処理ステップは、選択ステップによってオブジェクトが選択されたと判定されたときに、当該選択されたオブジェクトに所定の動作を行わせる。
【００１４】
第５の発明は、第４の発明において、線分データ群により示される入力軌跡と、線分データ群のうち最新の線分データとが交差したか否かを判定する交差判定ステップと、交差判定ステップにより入力軌跡と最新の線分データとが交差したと判定されたときに、入力軌跡に基づいて決定される表示画面上の領域にオブジェクトが存在するか否かを判定する存在判定ステップとをコンピュータに更に実行させる。また、選択ステップは、存在判定ステップによりオブジェクトが存在すると判定されたときに、当該オブジェクトを選択状態とすることを特徴とする。
【００１５】
第６の発明は、ゲーム画像を表示するための表示画面（１２）と当該表示画面に関連して設けられるポインティングデバイス（１５）とを備えるゲーム装置のコンピュータに、座標検出ステップ（Ｓ２）と、線分データ算出ステップ（Ｓ４３）と、補完軌跡算出ステップ（Ｓ４４）と、補完軌跡格納ステップ（Ｓ４４）と、ゲーム処理ステップとを実行させるゲームプログラムである。座標検出ステップは、ポインティングデバイスからの出力信号に基づいて、当該ポインティングデバイスを通じて入力される表示画面上の位置を示す座標値を単位時間間隔で検出する。線分データ算出ステップは、座標検出ステップによって検出された座標値群に基づいて、連続する各座標値の間の距離および方向を示す線分データ群を算出する。補完軌跡算出ステップは、算出された線分データ群に対して所定の計算を行うことで補完入力軌跡データを算出する。補完軌跡格納ステップは、算出された補完入力軌跡データをメモリに格納する。ゲーム処理ステップは、格納された補完入力軌跡データに基づいて所定のゲーム処理を行う。
【００１６】
第７の発明は、第６の発明において、線分データ群のうち最新の線分データに所定の計算を施した線分データを補完線分データとしてメモリに格納する補完線分生成ステップ（Ｓ４４）をコンピュータに更に実行させる。また、補完軌跡算出ステップは、線分データ群に補完線分データを加えることで補完入力軌跡データを算出する。
【００１７】
第８の発明は、第６の発明において、操作状態判別ステップ（Ｓ９）と、存在判定ステップ（Ｓ５１）と、影響動作処理ステップ（Ｓ５３、Ｓ５４）とをコンピュータに更に実行させる。操作状態判別ステップは、ポインティングデバイスを用いてプレイヤが第１のオブジェクトを操作している状態であるか否かをポインティングデバイスからの出力信号に基づいて判別する。存在判定ステップは、操作状態判別ステップにおいて、プレイヤが第１のオブジェクトを操作している状態であると判別されたときに、補完入力軌跡に基づいて決定される表示画面上の領域に第２のオブジェクトが存在するか否かを判定する。影響動作処理ステップは、存在判定ステップにより、第２のオブジェクトが存在すると判定されたときに、第１のオブジェクトと第２のオブジェクトとの何れか一方が他方に影響を及ぼす動作を行わせる。
【００１８】
第９の発明は、第６の発明において、存在判定ステップと、選択ステップとをコンピュータに更に実行させる。存在判定ステップは、補完入力軌跡に基づいて決定される表示画面上の領域にオブジェクトが存在するか否かを判定する。選択ステップは、存在判定ステップによりオブジェクトが存在すると判定されたときに、当該オブジェクトを選択状態とする。
【００１９】
なお、以上の発明は、上記ゲームプログラムが実行されるコンピュータを備えるゲーム装置の形態によって提供されてもよい。
【発明の効果】
【００２０】
第１の発明によれば、ポインティングデバイスを用いてあるキャラクタを操作しているときに、当該操作の一連の流れに組み込む形で選択操作を行うことが可能となる。その結果、選択のためのボタンを押すなどの別途の操作が不要になり、操作性に優れたゲームをプレイヤに提供することができる。
【００２１】
第２の発明によれば、「囲む」という操作で選択ができる。そのため、より直感的で分かりやすい操作感覚をプレイヤに提供することができる。また、「囲む」という操作自体もプレイヤによる意図的な操作であるため、誤操作等によるプレイヤの意図しない選択がなされることを防ぐこともできる。その結果、操作性の良いゲームをプレイヤに提供することができる。
【００２２】
第３の発明によれば、プレイヤの一度の入力である入力軌跡が交差したときに、当該入力軌跡により示される画面上の領域内にオブジェクトが存在すれば、そのオブジェクトが選択されることになる。従って、第２の発明と同様に、直感的で且つプレイヤの意図的な操作に基づいたオブジェクトの選択操作をプレイヤに提供することができる。
【００２３】
第４の発明によれば、ポインティングデバイスを用いた操作により、プレイヤの一度の入力である入力軌跡が画面上の所定のオブジェクトを囲んだと判定されれば、当該オブジェクトが選択されたとして、当該囲まれたオブジェクトに所定の動作を行わせることができる。従って、選択のためのボタンを押すなどの別途の操作が必要な従来のゲームに比べ、直感的な操作感覚のゲームをプレイヤに提供することができる。
【００２４】
第５の発明によれば、プレイヤの一度の入力である入力軌跡が交差したときに、当該入力軌跡により示される画面上の領域内にオブジェクトが存在すれば、そのオブジェクトが選択されることになる。従って、第３の発明と同様に、直感的で且つプレイヤの意図的な操作に基づいたオブジェクトの選択操作をプレイヤに提供することができる。
【００２５】
第６の発明によれば、ポインティングデバイスを用いたプレイヤの入力操作について補完することができる。そのため、プレイヤが意図した操作につき、プレイヤは当該操作を完了したつもりであっても、実際には完了していなかったというときに、当該操作を補完することによりプレイヤの意図したとおりの操作を実現することができる。従って、操作性に優れたゲームをプレイヤに提供することができる。
【００２６】
第７の発明によれば、プレイヤの一度の入力である入力軌跡の最後の部分について補完を行うため、よりプレイヤの意図を反映した補完を行うことができる。
【００２７】
第８の発明によれば、ポインティングデバイスを用いてあるキャラクタを操作しているときに、当該操作の一連の流れに組み込む形で、所定のオブジェクトに所定の動作を行わせることができる。そのため、選択や行動決定のためのボタンを押すなどの別途の操作が不要になり、操作性に優れたゲームをプレイヤに提供することができる。
【００２８】
第９の発明によれば、ポインティングデバイスを用いたプレイヤの操作に更に補完を加えて、所定のオブジェクトを選択する。そのため、プレイヤがあるオブジェクトを選択する操作を行ったつもりであるにも関わらず、プレイヤの意図に反して選択が行われていないという状況を防ぐことができ、操作性の良いゲームをプレイヤに提供することができる。
【００２９】
また、本発明のゲーム装置によれば、上述した本発明のゲームプログラムと同様の効果を得ることができる。
【発明を実施するための最良の形態】
【００３０】
（第１の実施形態）
以下、本発明の実施形態に係るゲーム装置の構成および動作を説明する。
【００３１】
図１は、本発明の一実施形態に係るゲーム装置の外観図である。図１において、ゲーム装置１０は、第１のＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）１１および第２のＬＣＤ１２を含む。ハウジング１３は上側ハウジング１３ａと下側ハウジング１３ｂとによって構成されており、第１のＬＣＤ１１は上側ハウジング１３ａに収納され、第２のＬＣＤ１２は下側ハウジング１３ｂに収納される。第１のＬＣＤ１１および第２のＬＣＤ１２の解像度はいずれも２５６ｄｏｔ×１９２ｄｏｔである。なお、本実施形態では表示装置としてＬＣＤを用いているが、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置など、他の任意の表示装置を利用することができる。また任意の解像度のものを利用することができる。
【００３２】
上側ハウジング１３ａには、後述する１対のスピーカ（図２の３０ａ、３０ｂ）からの音を外部に放出するための音抜き孔１８ａ、１８ｂが形成されている。
【００３３】
下側ハウジング１３ｂには、入力装置として、十字スイッチ１４ａ、スタートスイッチ１４ｂ、セレクトスイッチ１４ｃ、Ａボタン１４ｄ、Ｂボタン１４ｅ、Ｘボタン１４ｆ、Ｙボタン１４ｇ、Ｌボタン１４ＬおよびＲボタン１４Ｒが設けられている。また、さらなる入力装置として、第２のＬＣＤ１２の画面上にタッチパネル１５が装着されている。また、下側ハウジング１３ｂには、電源スイッチ１９や、メモリカード１７やスティック１６を収納するための挿入口も設けられている。
【００３４】
タッチパネル１５としては、例えば抵抗膜方式や光学式（赤外線方式）や静電容量結合式など、任意の方式のものを利用することができる。タッチパネル１５は、その表面をスティック１６で触れると、その接触位置に対応する座標データを出力する機能を有している。なお、以下ではプレイヤがタッチパネル１５をスティック１６で操作するものとして説明を行うが、スティック１６の代わりにペン（スタイラスペン）や指でタッチパネル１５を操作することももちろん可能である。本実施形態では、タッチパネル１５として、第２のＬＣＤ１２の解像度と同じく２５６ｄｏｔ×１９２ｄｏｔの解像度（検出精度）のものを利用する。ただし、必ずしもタッチパネル１５の解像度と第２のＬＣＤ１２の解像度が一致している必要はない。
【００３５】
メモリカード１７はゲームプログラムを記録した記録媒体であり、下部ハウジング１３ｂに設けられた挿入口に着脱自在に装着される。
【００３６】
次に、図２を参照してゲーム装置１０の内部構成を説明する。
【００３７】
図２において、ハウジング１３に収納される電子回路基板２０には、ＣＰＵコア２１が実装される。ＣＰＵコア２１には、バス２２を介して、コネクタ２３が接続されるとともに、入出力インターフェース回路（図面ではＩ／Ｆ回路と記す）２５、第１ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２６、第２ＧＰＵ２７、ＲＡＭ２４、ＬＣＤコントローラ３１、およびワイヤレス通信部３３が接続される。コネクタ２３には、メモリカード１７が着脱自在に接続される。メモリカード１７は、ゲームプログラムを記憶するＲＯＭ１７ａと、バックアップデータを書き換え可能に記憶するＲＡＭ１７ｂを搭載する。メモリカード１７のＲＯＭ１７ａに記憶されたゲームプログラムはＲＡＭ２４にロードされ、ＲＡＭ２４にロードされたゲームプログラムがＣＰＵコア２１によって実行される。ＲＡＭ２４には、ゲームプログラムの他にも、ＣＰＵコア２１がゲームプログラムを実行して得られる一時的なデータや、ゲーム画像を生成するためのデータが記憶される。Ｉ／Ｆ回路２５には、タッチパネル１５、右スピーカ３０ａ、左スピーカ３０ｂおよび図１の十字スイッチ１４ａやＡボタン１４ｄ等から成る操作スイッチ部１４が接続される。右スピーカ３０ａと左スピーカ３０ｂは、音抜き孔１８ａ、１８ｂの内側にそれぞれ配置される。
【００３８】
第１ＧＰＵ２６には、第１ＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）２８が接続され、第２ＧＰＵ２７には、第２ＶＲＡＭ２９が接続される。第１ＧＰＵ２６は、ＣＰＵコア２１からの指示に応じて、ＲＡＭ２４に記憶されているゲーム画像を生成するためのデータに基づいて第１のゲーム画像を生成し、第１ＶＲＡＭ２８に描画する。第２ＧＰＵ２７は、同様にＣＰＵコア２１からの指示に応じて第２のゲーム画像を生成し、第２ＶＲＡＭ２９に描画する。第１ＶＲＡＭ２８および第２ＶＲＡＭ２９はＬＣＤコントローラ３１に接続されている。
【００３９】
ＬＣＤコントローラ３１はレジスタ３２を含む。レジスタ３２はＣＰＵコア２１からの指示に応じて０または１の値を記憶する。ＬＣＤコントローラ３１は、レジスタ３２の値が０の場合は、第１ＶＲＡＭ２８に描画された第１のゲーム画像を第１のＬＣＤ１１に出力し、第２ＶＲＡＭ２９に描画された第２のゲーム画像を第２のＬＣＤ１２に出力する。また、レジスタ３２の値が１の場合は、第１ＶＲＡＭ２８に描画された第１のゲーム画像を第２のＬＣＤ１２に出力し、第２ＶＲＡＭ２９に描画された第２のゲーム画像を第１のＬＣＤ１１に出力する。
【００４０】
なお、上記のようなゲーム装置１０の構成は単なる一例に過ぎず、本発明は、ポインティングデバイス（タッチパネル、マウス、タッチパッド等）と少なくとも１つの表示装置を有する任意のコンピュータシステムに適用することができる。また、本発明のゲームプログラムは、メモリカード１７などの外部記憶媒体を通じてコンピュータシステムに供給されるだけでなく、有線または無線の通信回線を通じてコンピュータシステムに供給されてもよいし、さらにはコンピュータシステム内部の不揮発性記憶装置に予め記録されていてもよい。
【００４１】
次に、図３〜図１２を用いて、本実施形態で想定するゲームの概要について説明する。図３は、本実施形態で想定するゲームの画面の一例である。本ゲームでは、プレイヤキャラクタ４１が画面上に散らばっており、初期状態では、各プレイヤキャラクタ４１は、其々の動作プログラムに沿って独自に行動している。この状態で、プレイヤは、画面上に散らばっているプレイヤキャラクタ４１のうち、任意のプレイヤキャラクタ４１を操作対象として選択する操作を行う。この選択操作には２パターンあり、単一のプレイヤキャラクタ４１を選択する場合と、複数のプレイヤキャラクタ４１を選択する場合とがある。単一のプレイヤキャラクタ４１を選択する場合は、図４に示すように、選択したいプレイヤキャラクタ４１を直接スティック１６（または指）で押さえる操作を行う。一方、複数のプレイヤキャラクタを選択するときは、選択したいプレイヤキャラクタ群をスティック１６で囲む操作を行う。具体的には、図５に示すように、プレイヤは、タッチパネル１５上において、スティック１６を移動させる操作を行う。このとき、プレイヤは、スティック１６を移動させた軌跡が任意のプレイヤキャラクタ４１を囲むような操作を行う。この軌跡は、タッチパネル１５上においてプレイヤによる入力が行われた位置を示すものであり、以下、この軌跡を入力軌跡と呼ぶ。そして、任意のプレイヤキャラクタ群を囲むと、囲まれたプレイヤキャラクタ群は、好ましくは一箇所に寄り集まり、隊列を構成する。このとき、図６に示すように、当該プレイヤキャラクタ群は、輪形の赤い円６１（以下、指示待ち輪と呼ぶ）で囲まれた状態で表示される。以下、この状態を指示可能状態と呼ぶ。また、これは単一のプレイヤキャラクタ４１を選択した場合も同様である。すなわち、単一のプレイヤキャラクタ４１を選択した場合は、図７に示すように、プレイヤキャラクタ４１が１匹だけの隊列が構成されることになる。そして、この指示可能状態にある隊列にプレイヤがタッチすると、プレイヤがタッチパネル１５からスティック１６を離すまでの間、上記指示待ち輪６１が輪形の黄色の円６２（以下、操作輪と呼ぶ）に変わる。これは、当該隊列を移動操作中であることを示すものである。同時に、プレイヤがタッチパネル１５に触れていることを示すものでもある。以下、当該操作輪６２が表示された状態を操作中状態と呼ぶ。そして、この操作中状態においてタッチパネル１５に触れたままスティック１６を移動させると、スティック１６の接触位置（より正確には、スティック１６の接触位置に対応するゲーム世界中の地点）を移動目標として、当該移動目標に向かって各フォーカスキャラが各々の速度で移動を開始する。このようにしてプレイヤは、図８および図９に示すように、当該隊列を引っ張るようにして移動させることができる。そして、当該隊列を画面上のいろんな場所に移動させて、隊列を組んでいるプレイヤキャラクタ群に様々な行動（以下「仕事」と呼ぶ）を行わせる。この仕事の内容としては、例えば、敵キャラクタ４３を攻撃することや、落ちている食料４２を基地に運ぶことや、隊列に入っていないプレイヤキャラクタ４１を隊列に加えること等がある。本ゲームは、上記のような操作を繰り返して、プレイヤキャラクタ４１をゲーム内の世界で生活させるゲームである。
【００４２】
また、ゲーム画像には、入力軌跡を示す入力軌跡表示５１が表示される（図５に示す太線）。入力軌跡表示５１は、タッチパネル１５に対して入力が行われた位置に対応する表示画面上の位置に表示される。つまり、タッチパネル１５においてプレイヤがスティック１６を実際に移動させた位置に入力軌跡表示５１が表示される。図５においては、入力軌跡が円に近い形状であることが分かる。入力軌跡表示５１によって、プレイヤは自身の入力操作による入力軌跡を明確且つ直感的に知ることができる。従って、プレイヤは、プレイヤキャラクタ４１等をうまく囲めているかどうかや、次に説明する「切る」という操作がうまく行えたか否か等を即座に知ることができる。なお、当該入力軌跡表示５１は、一定時間表示された後、自動的に消去されていく。
【００４３】
また、本実施形態では、上記仕事を行わせるに際して、画面上の様々なオブジェクトのうち、どのオブジェクトに対して「仕事」を行うか、すなわち、仕事を行う対象（以下、仕事対象と呼ぶ）を指定する必要がある。この仕事対象の指定について、図１０〜図１４を用いて説明する。図１０は、上述したような隊列を移動中の状態を示す図である。この状態から、タッチパネル１５に触れたままスティック１６で所定のオブジェクトを囲む操作を行うと、そのオブジェクトに対して所定の「仕事」が開始されるものである。図１１は、タッチパネルに触れたままスティック１６で敵キャラクタ４３を囲む操作を示す図である。この場合は、図１２に示すように、敵キャラクタ４３に対して攻撃が開始されることになる。また、図１３に示すように、隊列に入っていないプレイヤキャラクタ４１を囲むと、図１４に示すように、当該囲んだプレイヤキャラクタ４１を隊列に加えることができる。このように、本実施形態では、隊列を移動させているときに、スティック１６でオブジェクトを囲むような操作を行うことにより、当該囲んだオブジェクトに応じた動作をフォーカスキャラ及び囲んだオブジェクトに行わせることができる。
【００４４】
また、隊列が指示可能状態、すなわち、隊列がプレイヤの操作を待っている状態のときに、隊列に入っていないプレイヤキャラクタ４１をスティック１６で囲むと、当該囲まれたプレイヤキャラクタ４１を隊列に加えることができる。
【００４５】
次に、ゲーム処理の際にＲＡＭ２４に記憶されるデータについて説明する。図１５は、図２に示したＲＡＭ２４のメモリマップを示す図解図である。図１５において、ＲＡＭ２４は、ゲームプログラム記憶領域２４０およびデータ記憶領域２５０を含む。ゲームプログラム記憶領域２４０は、ＣＰＵコア２１によって実行されるゲームプログラムを記憶し、このゲームプログラムは、ゲームメイン処理プログラム２４１と、ゲーム画像生成プログラム２４２と、ゲーム画像表示プログラム２４３と、タッチ入力検出プログラム２４４などによって構成される。
【００４６】
ゲームメイン処理プログラム２４１は、上述したようなゲームのメインルーチンを処理するためのプログラムである。ゲーム画像生成プログラム２４２は、後述する画像データ２５１を用いて、プレイヤキャラクタ４１、敵キャラクタ４３、敵キャラクタ以外のノンプレイヤキャラおよび背景オブジェクトなどのゲーム画像を生成するためのプログラムである。ゲーム画像表示プログラム２４３は、ゲーム画像生成プログラム２４２によって生成されたゲーム画像をＬＣＤ１１およびＬＣＤ１２に表示するためのプログラムである。
【００４７】
タッチ入力検出プログラム２４４は、プレイヤによるタッチ入力があるか否かを一定時間（本実施形態では、１フレーム）毎に検出して、後述のタッチ入力フラグ２５５の成立（オン）／不成立（オフ）を制御する。更に、タッチ入力があるときは、当該タッチ入力による検出座標に対応する座標データを入力座標リスト２５２に時系列に従って記憶（一時記憶）するためのプログラムである。ここで、タッチ入力があるか否かは、タッチ入力による検出座標に対応する座標データがタッチパネル１５から入力されるか否かで判断される。
【００４８】
なお、図示は省略するが、ゲームプログラム記憶領域２４０には、音再生プログラムやバックアッププログラムなども記憶される。音再生プログラムは、音データを用いて、ゲームに必要な音を再生するためのプログラムである。また、バックアッププログラムは、ゲームの進行に従って発生するデータ（ゲームの途中データや結果データ）をプレイヤの指示や所定のタイミング（イベント）に従ってメモリカード１７のＲＡＭ２４に記憶（セーブ）するためのプログラムである。
【００４９】
データ記憶領域２５０には、画像データ２５１、入力座標リスト２５２、仕事内容決定テーブル２５３などのデータが記憶されるとともに、交差フラグ２５４、タッチ入力フラグ２５５、フォーカスフラグ２５６、操作中フラグ２５７などのフラグも記憶される。
【００５０】
画像データ２５１は、ゲーム画像（プレイヤキャラクタ、ノンプレイヤキャラクタ（敵キャラクタを含む）、背景オブジェクト、所定のキャラクタ）を生成するためのデータ（ポリゴンデータやテクスチャデータなど）である。
【００５１】
入力座標リスト２５２は、入力順番と上記座標データとの組の集合である。本実施形態では、プレイヤによって入力された座標データは、所定の単位時間間隔で検出される。座標データは、プレイヤの入力が連続している間（プレイヤの指等がタッチパネルから離れていない間）、図１６に示すように、１つのリストとしてＲＡＭ２４に記憶される。
【００５２】
仕事内容決定テーブル２５３は、ロックオンしたオブジェクトの種類に基づいて実際に行う仕事の内容を決定するためのテーブルである。図１７に示すように、仕事内容決定テーブル２５３は、オブジェクトの種類と仕事の処理内容と優先度との組の集合から成る。
【００５３】
交差フラグ２５４は、入力座標リスト２５２に基づいて示される入力軌跡が交差したか、すなわち閉領域を形成したか否かを示すフラグである。後述する交差判定処理において、入力軌跡が閉領域を形成したと判定されるとオンになる。
【００５４】
タッチ入力フラグ２５５は、タッチ入力のオン／オフの状態を示すフラグであり、タッチ入力検出プログラム２４４に従ってオン／オフが切替えられる。
【００５５】
フォーカスフラグ２５６は、画面上に表示される複数のプレイヤキャラクタ４１のうち、プレイヤが選択したキャラ、すなわち、プレイヤが操作し得るキャラクタを示すフラグである。そのため、当該フラグは、各プレイヤキャラクタ毎に設定されている。プレイヤに選択されている状態のときはオンになり、選択されていないときはオフになる。また、当該フラグがオンのキャラクタ群が隊列を構成することになる。すなわち、フォーカスフラグ２５６がオンのキャラクタは、隊列を構成して、指示待ち輪６１で囲まれることになる。
【００５６】
操作中フラグ２５７は、上記フォーカスフラグ２５６がオンのキャラ（以下、フォーカスキャラと称す）に対して、スティック１６を用いて何らかの操作を行っている状態か否かを示すフラグである。当該フラグがオンのときは、操作輪６２が表示されることになる。当該フラグがオフのときは、プレイヤはフォーカスキャラの操作を行っていないことを示す。
【００５７】
なお、図１８は、参考のために上記各フラグの内容をまとめた表である。また、図示は省略するが、データ記憶領域２５０には、ゲームに必要な音を出力するための音データや、ゲームの進行に伴って発生するデータ（ゲームの途中データ、結果データ）やフラグ（イベントフラグ）なども記憶される。
【００５８】
次に、ゲーム装置１０において実行されるゲーム処理の流れを図１９〜図２４を用いて説明する。図１９は、ゲーム装置１０において実行されるゲーム処理の流れを示すフローチャートである。ゲーム装置１０の電源が投入されると、ゲーム装置１０のＣＰＵコア２１は、図示しないブートＲＯＭに記憶されている起動プログラムを実行し、ＲＡＭ２４等の各ユニットが初期化される。そして、メモリカード１７に格納されたゲームプログラムがＲＡＭ２４に読み込まれ、当該ゲームプログラムの実行が開始される。その結果、第１ＧＰＵ２６を介して第１ＬＣＤ１１にゲーム画像が表示されることによって、ゲームが開始される（ステップＳ１）。
【００５９】
次に、ステップＳ２において、タッチ入力が検出される。すなわち、タッチパネル１５から入力される座標データが検出される。その結果、タッチ入力が無ければ（ステップＳ２でＮＯ）、後述のタッチオフ処理（ステップＳ１１）が行われる。一方、タッチ入力が検出されれば（ステップＳ２でＹＥＳ）、更に、タッチ入力位置を入力座標リスト２５２に格納する。つまり、タッチパネル１５から入力された座標データを時系列に従って入力座標リスト２５２に一時記憶する。そして、続くステップＳ３において、タッチ入力フラグがＯＮか否か、つまり、タッチパネルを押しつづけている状態（以下、継続入力）か、押し初めの状態（以下、新規入力）かの判定が行われる。
【００６０】
ステップＳ３の判定の結果、新規入力であれば（ステップＳ３でＮＯ）、続くステップＳ４において、画面に表示されているプレイヤキャラクタ４１の何れかが選択されたか否かが判定される。ステップＳ４においては、入力座標位置が何れかのプレイヤキャラクタ４１の当たり判定領域内であるか否かで、当該選択がされたか否かを判定する。なお、当該当たり判定領域については、上記初期化処理において設定されているものとする。また、既に隊列が存在しているときは、当該隊列の当たり判定の対象となる。隊列の当たり判定の設定については、後述のタッチオフ処理（ステップＳ１２）において行われる。
【００６１】
ステップＳ４の判定の結果、何れのプレイヤキャラクタ４１も選択されてないときは（ステップＳ４でＮＯ）、ステップＳ７の画面描画処理へ進む。一方、ステップＳ４の判定の結果、何れかのプレイヤキャラクタ４１が選択されたとき（ステップＳ４でＹＥＳ）、続くステップＳ５において当該プレイヤキャラクタ４１を選択状態にするためのフォーカス処理が行われる。図２０は、上記ステップＳ５で示したフォーカス処理の詳細を示すフローチャートである。ここでは、フォーカスフラグ２５６をオンにすることで、当該プレイヤキャラクタ４１をフォーカスキャラ（プレイヤが操作し得る状態のキャラ）とする処理が行われる。
【００６２】
図２０において、まず、上記指定されたプレイヤキャラのフォーカスフラグ２５６がＯＮか否かが判定される（ステップＳ２１）。その結果、フォーカスフラグ２５６がオフであれば（ステップＳ２１でＮＯ）、ステップＳ２２において、全てのプレイヤキャラクタ４１のフォーカスフラグ２５６をＯＦＦにする処理がなされる。これはすなわち、既にフォーカスフラグ２５６がオンのキャラがいるときを想定して、一旦全プレイヤキャラクタ４１のフォーカスフラグ２５６をオフ、すなわち、選択状態を解除するものである。次に、ステップＳ２３において、上記選択されたプレイヤキャラクタ４１のフォーカスフラグ２５６がオンに設定される。これにより、以前、他のプレイヤキャラクタ４１が選択状態になっていても、今回選択したプレイヤキャラクタ４１にフォーカスが移り、選択状態とすることができる。一方、上記ステップＳ２１の判定の結果、フォーカスフラグ２５６がオンであれば（ステップＳ２１でＹＥＳ）、既に存在するフォーカスキャラ（隊列）を指定したこととなるため、そのまま当該フォーカス処理が終了する。なお、当該フォーカスキャラは、プレイヤに操作されない限りは動かずにその場に待機する。
【００６３】
図１９に戻り、次に、ステップＳ６において、上記フォーカスキャラを操作中であることを示す操作輪６２を表示する処理を行う。図２１は、上記ステップＳ６で示した操作輪表示処理の詳細を示すフローチャートである。図２１において、まず、操作中フラグ２５７がＯＮに設定される（ステップＳ３１）。次に、上記フォーカスキャラを中心とする操作輪６２が生成される（ステップＳ３２）。以上で、操作輪表示処理は終了する。
【００６４】
図１９に戻り、次に、ステップＳ７において画面描画処理が行われる。これにより、上記操作輪６２等が表示されることになる。その後、ステップＳ８において、ゲーム終了か否かが判定される。ゲーム終了条件が満たされていないときは（ステップＳ８でＹＥＳ）、上記ステップＳ２の処理に戻る。一方、ゲーム終了条件が満たされているときは（ステップＳ８でＮＯ）、当該ゲーム処理は終了する。
【００６５】
次に、上記ステップＳ２において、タッチ入力がなかったとき（ステップＳ２でＮＯ）の処理（ステップＳ１２）について説明する。本処理は、タッチパネル１５からスティック１６を離したとき、すなわちタッチオフしたときに行われる処理である。ここでは、入力座標リスト２５２を初期化する処理が行われる。更に、操作中フラグ２５７がオンであれば、当該操作中フラグ２５７をオフにし、上記操作輪６２を消去する処理が行われる。そして、操作輪６２の代りに指示待ち輪６１を生成する処理が行われる。このとき、当該指示待ち輪６１の内側の領域について、当該隊列の当たり判定範囲とする設定も併せて行われる。つまり、プレイヤが隊列（フォーカスキャラあるいは指示待ち輪６１内の領域）に触れているときは黄色の操作輪６２が表示されて当該隊列を移動することができる状態であり、プレイヤがスティック１６を離したタイミングで、黄色の操作輪６２が赤色の指示待ち輪６１に切り替わり、隊列はその場で待機してプレイヤの操作を待つことになる。一方、操作中フラグ２５７がオフのときは、フォーカスキャラ（隊列）が存在すれば、当該フォーカスキャラを囲むような上記指示待ち輪６１が生成される。フォーカスキャラが存在しなければ、そのままタッチオフ処理が終了する。以上で、図１９のステップＳ１２におけるタッチオフ処理が終了する。
【００６６】
次に、上記ステップＳ３において、継続操作と判定されたとき（ステップＳ３でＮＯ）の処理について説明する。まず、ステップＳ９において、操作中フラグ２５７がオンであるか否かが判定される。ステップＳ９の判定の結果、操作中フラグ２５７がオンであれば（ステップＳ９でＹＥＳ）、これはすなわちフォーカスキャラ（隊列）をプレイヤが操作中であることを意味する。このときは、次に述べる操作中処理（ステップＳ１０）が行われる。
【００６７】
ステップＳ１０の処理について、図２２〜図２７を用いて説明する。図２２は、上記ステップＳ１０で示した操作中処理の詳細を示すフローチャートである。当該操作中処理においては、主にスティック１６により入力された入力軌跡が何らかのオブジェクトを囲んだかどうか、すなわち、入力軌跡が交差して閉領域を形成したかどうかの判定、およびそれに伴う動作処理が行われる。
【００６８】
図２２において、まず、ステップＳ４１で、入力軌跡表示５１を画面上に表示する処理が行われる。なお、このステップＳ４１の処理の詳細については、本発明と直接関連しないので、その説明は省略する。次に、ステップＳ４２において、入力座標リスト２５２の座標データが３件未満かどうかの判定がなされる。その結果、３件未満と判定されれば（ステップＳ４２でＹＥＳ）、そのまま操作中処理が終了する。これは、後述の入力軌跡の交差判定処理において最低限必要となる、２つ以上の線分データを算出することができないためである。一方、ステップＳ４２の判定の結果、入力座標リスト２５２に座標データが３件以上あれば（ステップＳ４２でＮＯ）、次のステップＳ４３の処理へ進む。
【００６９】
ステップＳ４３においては、入力座標リスト２５２のｎ−１番目とｎ番目の座標データを結ぶ線分データＨｎが算出される。ここで、線分とは、ある２点を結ぶ線をいう。続くステップＳ４４において、当該線分データＨｎの長さをｋ倍した補完線分データＫが算出され、ＲＡＭ２４に一時的に格納される。ここで、線分データＨｎと補完線分データＫとは、始点となる座標は同じであり、終点となる座標が異なるものとする（線分Ｈｎを延ばした形になる）。なお、ｋの値は予め定められた値である。
【００７０】
次に、ステップＳ４５において、上記ステップＳ４３で算出された線分データＨｎを次に述べる交差判定処理の引数である線分データＷに設定する。続いて、ステップＳ４６で、当該線分データＷが入力軌跡のいずれかと交差しているか、すなわち入力軌跡が閉領域を形成したか否かを判定する。
【００７１】
図２３は、上記ステップＳ４６で示した交差判定処理の詳細を示すフローチャートである。当該交差判定処理は、入力座標リスト２５２の、隣接する座標データを結ぶ線分のうち、一番最後の入力に係る線分（線分データＷ）が、その他の線分のいずれかと交わっているかを判定するものである。
【００７２】
図２３において、まず、入力軌跡が交差したか否か（つまり、閉領域を形成したか否か）の結果を示す戻り値となる交差フラグをオフにする（ステップＳ７１）。続いて、ステップＳ７２において、入力座標リストの入力順番を示す変数ｍを１にする。次に、ｍの値が、入力座標リスト２５２の入力順番ｎ−１の値と等しいか、すなわち、入力座標リストの最後から２つ目の入力順番の値であるか否かを判定する（ステップＳ７３）。その結果、同じ値であれば（ステップＳ７３でＹＥＳ）、そのまま交差判定処理を終了する。つまり、一番最後の入力に係る線分同士が交差判定されることを防ぐものである。一方、異なる値であれば（ステップＳ７３でＮＯ）、入力座標リスト２５２のｍ番目とｍ＋１番目の座標データを結ぶ線分データＬを算出する（ステップＳ７４）。次に、ステップＳ７５において、線分データＬと線分データＷが交差しているかの判定を行う、これは、例えば、線分ＬとＷの交点を求め、その交点が２つの線分の範囲にあるかを調べることで判定することが考えられる。また、これに限らず、線分Ｌを境界線として、線分Ｗを構成する２つの点が線分Ｌに対して両側に存在するとき、両線分は交差すると判定するようにしてもよい。
【００７３】
ステップＳ７５の判定の結果、線分ＬとＷが交差していないと判定されれば（ステップＳ７５でＮＯ）、ステップＳ７６でｍに１を加算して、ステップＳ７３の処理に戻る。つまり、最初は入力座標リストの１番目と２番目の座標を結ぶ線分と、線分Ｗとが交差判定され、その後は、入力座標リストの２番目と３番目の座標を結ぶ線分と線分Ｗとが、その次は、入力座標リストの３番目と４番目の座標を結ぶ線分と線分Ｗとが、というように順番に交差判定されていくことになる。一方、線分ＬとＷが交差していると判定されれば（ステップＳ７５でＹＥＳ）、続くステップＳ７７において、交差フラグをオンにする。以上で、交差判定処理が終了する。
【００７４】
図２２に戻り、ステップＳ４６の交差判定処理が終わると、続くステップＳ４７において、交差フラグがオンか否かが判定される。その結果、交差フラグがオン、すなわち入力軌跡が閉領域を形成したものであれば（ステップＳ４７でＹＥＳ）、処理がステップＳ５１に進められる。一方、交差フラグがオフのときは（ステップＳ４７でＮＯ）、続くステップＳ４８において、上記ステップＳ４５で算出された補完線分データＫを線分データＷに設定する。次に、ステップＳ４９において、上述した交差判定処理を行う。つまり、補完線分Ｋが、入力軌跡を構成するいずれかの線分と交差するか否かが判定される。これは、例えば、図２４に示すように、プレイヤにとっては敵キャラクタ４３を囲んだつもりで操作したにも関わらず、閉領域を形成するには入力軌跡が少し足りなかったというようなときを想定したものである。つまり、このような少しだけ入力軌跡が足りないというようなときであっても、最後に検出される線分を延ばすことによって、結果的に閉領域を描いたものと判定させるものである。図２４に示したような入力軌跡のときは、図２５に示すような補完入力軌跡が認識され、その結果、当該補完入力軌跡は閉領域が形成されていると判定されることとなる。これにより、操作性への悪印象をプレイヤに与えることを防止することが可能となる。なお、当該交差判定処理は、上述したステップＳ４６の処理と同様であるため、詳細な説明は省略する。
【００７５】
ステップＳ４９における交差判定処理が終われば、次に、ステップＳ５０において、交差フラグがオンか否かが判定される。その結果、交差フラグがオフ、すなわち、補完入力軌跡によっても閉領域が形成されていないと判定されたときは（ステップＳ５０でＮＯ）、そのまま操作中処理が終了する。一方、交差フラグがオン、すなわち補完入力軌跡によって閉領域が形成されたと判定されれば（ステップＳ５０でＹＥＳ）、続くステップＳ５１で、当該閉領域に相当する画面上の領域内に何らかのオブジェクトが存在しているか否かが判定される。これは、例えば、上記交差していると判定がされたときにおける線分ＷとＬの交点を始点及び終点とし、入力座標リスト２５２に基づいて各座標データ（補完線分にて交差したと判定されたときは、当該補完線分データＫも含む）を時系列に従って線で結ぶことで示される多角形を閉領域として算出する。そして、当該閉領域（多角形）を構成する各点を通る直線（辺）を境界線として、あるオブジェクトの座標と閉領域の中心とを結ぶ線分が、その直線（辺）のいずれとも交差しなければ、そのオブジェクトは閉領域内に存在していると判定する（この判定を、画面内の全てのオブジェクトについて行う）ことが考えられる。また、各オブジェクトの座標値と閉領域内に相当する座標値（座標範囲）とを比較し、一致するものがあるかどうかで判定するようにしてもよい。そして、当該判定の結果、閉領域内にオブジェクトが存在していなければ（ステップＳ５１でＮＯ）、そのまま操作中の処理は終了する。
【００７６】
一方、ステップＳ５１の判定の結果、何らかのオブジェクトがいると判定されたときは（ステップＳ５１でＹＥＳ）、続くステップＳ５２で、閉領域内のオブジェクトが２以上存在するか否かが判定される。その結果、閉領域内のオブジェクトが２以上いない（つまり、１つしか存在しない）ときは（ステップＳ５２でＮＯ）、仕事内容決定テーブル２５３を参照し、当該オブジェクトの種類に応じた仕事処理が開始される（ステップＳ５３）。ここで、仕事処理とは、当該閉領域内のオブジェクト（以下、対象オブジェクトと称す）とフォーカスキャラとの間において、何れか一方が他方に何らかの影響を及ぼす処理のことをいう。換言すれば、対象オブジェクトの方向にフォーカスキャラが向きを変えるだけ等の、対象オブジェクトに何ら変化が生じないような処理は、当該仕事処理には含まれない。具体的な仕事処理の内容としては、例えば、図１１に示すように、対象オブジェクトが敵キャラクタ４３であれば、フォーカスキャラが当該敵キャラクタ４３への攻撃を行う処理（図１２参照）が該当する。これはすなわち、フォーカスキャラが敵キャラクタ４３のパラメータ値（体力値など）を減少させるという影響を及ぼすことである。また、敵キャラクタ４３がフォーカスキャラに攻撃を行う処理も該当する。つまり、敵キャラクタ４３がフォーカスキャラのパラメータ値を減少させるという影響を及ぼすことに該当する。その他、例えば、対象オブジェクトが食料４２であれば、フォーカスキャラが当該食料４２を基地に運ぶ処理、すなわち、フォーカスキャラが食料４２を移動する処理（食料４２の存在する座標値が変化する）が仕事処理に該当する。また、対象オブジェクトがフォーカスキャラ以外のプレイヤキャラクタ４１であれば、当該プレイヤキャラクタのフォーカスフラグ２５６をオンにし（パラメータの変更に相当）、隊列に加える処理が仕事処理に該当する（図１３、１４参照）。
【００７７】
一方、ステップＳ５２の判定の結果、閉領域内にオブジェクトが複数存在したときは（ステップＳ５２でＹＥＳ）、閉領域内の各オブジェクトの種別に基づいて、仕事内容決定テーブル２５３からそれぞれの優先度の値を取得する。そして、優先度の値に一番小さい値が設定されているオブジェクト種別のオブジェクトを対象オブジェクトとして、上記仕事処理を開始する（ステップＳ５３）。例えば、敵キャラクタとプレイヤキャラクタが混在しているときは、敵キャラクタのほうが優先度の値が低い（図１７参照）。そのため、フォーカスキャラは、敵キャラクタ４３への攻撃動作を開始することになる。また、同じ種類のオブジェクトが複数いるときは、プレイヤキャラクタ４１であれば、それら全部隊列に加える。プレイヤキャラクタ４１以外のオブジェクトであれば、フォーカスキャラに一番近いオブジェクトのみを対象オブジェクトとする。なお、プレイヤキャラクタ４１以外のオブジェクトであっても、その囲まれたオブジェクト全部について、上記優先順位に従って順次対象オブジェクトに指定し、仕事処理を行っていくようにしても良い。以上で、操作中処理が終了する。
【００７８】
図１９に戻り、次に、ステップＳ９における判定の結果、操作中フラグ２５７がオフのときに行われる処理について説明する。ステップＳ９の判定で操作中フラグ２５７がオフということは、画面上の隊列以外の部分をタッチし続けていることを意味する。このときは、ステップＳ１１において、次に説明する非操作中処理が行われる。
【００７９】
図２６は、上記ステップＳ１１で示した非操作中処理の詳細を示すフローチャートである。図２６においては、まず、ステップＳ４１〜Ｓ５０の処理により、入力軌跡表示処理とプレイヤの入力軌跡が閉領域を形成したか否かの判定が行われる。このステップＳ４１〜Ｓ５０までの処理は、上述した操作中処理におけるステップＳ４１〜Ｓ５０の処理と同様であるため、詳細な説明は省略する。
【００８０】
ステップＳ５０の判定で、閉領域が形成されていないときは、処理を次のステップＳ６２の解散処理に進める。この解散処理では、隊列が構成されているときにおいて所定の条件が満たされれば、当該隊列を解散するための処理が行われる。なお、当該ステップＳ６２の処理については、本発明と直接関連しないので、詳細な説明は省略する。
【００８１】
一方、ステップＳ４７あるいはＳ５０の判定の結果、閉領域が形成されたと判断されたときは（ステップＳ４７あるいはＳ５０でＹＥＳ）、続くステップＳ６１で、隊列編成処理が行われる。図２７は、ステップＳ６１における隊列編成処理の詳細を示すフローチャートである。図２７において、まず、フォーカスキャラ以外のプレイヤキャラクタが、閉領域内に存在するか否かが判断される（ステップＳ８１）。その結果、閉領域内にプレイヤキャラクタ４１が存在しなければ（ステップＳ８１でＮＯ）、そのまま隊列編成処理を終了する。一方、プレイヤキャラクタ４１が存在したときは（ステップＳ８１でＹＥＳ）、フォーカスキャラが存在するか否かが判定される（ステップＳ８２）。フォーカスキャラが存在すれば（ステップＳ８２でＹＥＳ）、ステップＳ８３に進み、囲んだプレイヤキャラクタ４１を隊列に加える処理が開始される。フォーカスキャラが存在しなければ（ステップＳ８２でＮＯ）、ステップＳ８４に進み、囲まれたプレイヤキャラクタ４１を１つの隊列として構成する処理が行われる。このステップＳ８４の処理では、囲まれたプレイヤキャラクタ４１のフォーカスフラグをオンにして一箇所に寄せ集め、操作輪６２で囲んで表示する処理が行われる。なお、当該ステップＳ８４の処理における処理の詳細は、本発明と直接関連しないので、その説明を省略する。以上で、非操作中処理が終了する。
【００８２】
図１９に戻り、ステップＳ１１における非操作中処理が終われば、次に、上述したステップＳ７の画面描画処理が行われる。続いて、ステップＳ８において、ゲーム終了条件が満たされているか否かが判定される。ゲーム終了条件が満たされていないときは（ステップＳ８でＹＥＳ）、上記ステップＳ２に戻って処理を繰り返す。一方、ゲーム終了条件が満たされているときは（ステップＳ８でＮＯ）、当該ゲーム処理は終了する。以上で、本実施形態に係るゲーム処理は終了する。
【００８３】
このように、本実施形態によれば、ポインティングデバイスを用いてプレイヤキャラクタを移動操作しているときに、当該移動操作の一連の流れに組み込む形で選択操作を行うことが可能となる。そのため、選択のためのボタンを押すなどの別途の操作が不要になり、操作性に優れたゲームをプレイヤに提供することができる。
【００８４】
なお、上記実施形態では、スティック１６（あるいは指）を用いた操作を例として説明したが、これに限らず、ポインティングデバイスとして、例えばマウスを用いてもよい。この場合は、マウスの左ボタンを押したままマウスを移動させる操作が、上述したスティック１６をタッチパネル１５に接触させたまま移動させる操作に相当する。また、マウスの左ボタンから指を離す操作が、タッチオフ操作に相当することになる。
【００８５】
また、上述の実施形態においては、非操作中の処理における隊列編成処理（ステップＳ６１）では、プレイヤキャラクタ４１のみを仕事処理の対象としている。これに限らず、操作中処理（ステップＳ１０）と同様に、プレイヤキャラ以外のオブジェクトを処理対象としてもよい。つまり、図２８のステップＳ７１において、プレイヤキャラクタに限らず、何らかのオブジェクトを囲んだか否かを判断させるようにする。その結果、何らかのオブジェクトを囲んだと判定され、かつフォーカスキャラが存在すれば、当該囲んだオブジェクトとフォーカスキャラとの間で仕事処理を開始させるようにしてもよい。一方、何らかのオブジェクトを囲んでも、フォーカスキャラが存在しないときは、何の処理も行われないようにしてもよい。
【００８６】
更に、上述の実施形態では、フォーカスキャラを移動操作中に、当該操作の一連の流れでオブジェクトを囲む操作を行ったときに仕事処理を行わせているが、選択の方法は囲むことに限らない。例えば、仕事処理の対象としたいオブジェクトを入力軌跡が通過するような操作を行ったとき、上記仕事処理を開始するようにしてもよい。この場合は、各オブジェクトに設定されている当たり判定領域を入力軌跡が通過したか否かを判定し、通過していれば、仕事処理を開始するようにすればよい。
【図面の簡単な説明】
【００８７】
【図１】本発明の一実施形態に係るゲーム装置の外観図
【図２】ゲーム装置の内部構成図
【図３】本実施形態で想定するゲームの画面の一例
【図４】単一のプレイヤキャラクタを指定する様子を示す図
【図５】複数のプレイヤキャラクタを指定する様子を示す図
【図６】プレイヤキャラクタが複数の隊列を示す図
【図７】プレイヤキャラクタが１匹だけの隊列を示す図
【図８】プレイヤキャラクタを移動中の状態を示す図
【図９】プレイヤキャラクタを移動中の状態を示す図
【図１０】隊列を移動中の状態を示す図
【図１１】タッチパネルに触れたままスティック１６で敵キャラクタ４３を囲む操作を示す図
【図１２】敵キャラクタ４３に対して攻撃を行っていることを示す図
【図１３】隊列に入っていないプレイヤキャラクタ４１を囲む操作を示す図
【図１４】囲んだプレイヤキャラクタ４１が隊列に加わることを示す図
【図１５】ＲＡＭ２４のメモリマップを示す図解図
【図１６】入力座標リスト２５２の一例を示す図
【図１７】仕事内容決定テーブル２５３の一例を示す図
【図１８】本実施形態で使われる各フラグについてまとめた表
【図１９】ゲーム装置１０において実行されるゲーム処理の流れを示すフローチャート
【図２０】図１９のステップＳ５で示したフォーカス処理の詳細を示すフローチャート
【図２１】図１９のステップＳ６で示した操作輪表示処理の詳細を示すフローチャート
【図２２】図１９のステップＳ１０で示した操作中処理の詳細を示すフローチャート
【図２３】図２２のステップＳ４５、Ｓ４９で示した交差判定処理の詳細を示すフローチャート
【図２４】敵キャラクタを囲む様子を示す図
【図２５】補完入力軌跡の一例を示す図
【図２６】図１９のステップＳ１１で示した非操作中処理の詳細を示すフローチャート
【図２７】図２６のステップＳ６１で示した隊列編成処理の詳細を示すフローチャート
【符号の説明】
【００８８】
１０  ゲーム装置
１１  第１のＬＣＤ
１２  第２のＬＣＤ
１３  ハウジング
１３ａ  上側ハウジング
１３ｂ  下側ハウジング
１４  操作スイッチ部
１４ａ  十字スイッチ
１４ｂ  スタートスイッチ
１４ｃ  セレクトスイッチ
１４ｄ  Ａボタン
１４ｅ  Ｂボタン
１４ｆ  Ｘボタン
１４ｇ  Ｙボタン
１４Ｌ  Ｌボタン
１４Ｒ  Ｒボタン
１５  タッチパネル
１６  スティック
１７  メモリカード
１７ａ  ＲＯＭ
１７ｂ  ＲＡＭ
１８ａ，１８ｂ  音抜き孔
１９  電源スイッチ
２０  電子回路基板
２１  ＣＰＵコア
２２  バス
２３  コネクタ
２４  ＲＡＭ
２５  Ｉ／Ｆ回路
２６  第１ＧＰＵ
２７  第２ＧＰＵ
２８  第１ＶＲＡＭ
２９  第２ＶＲＡＭ
３０ａ  右スピーカ
３０ｂ  左スピーカ
３１  ＬＣＤコントローラ
３２  レジスタ
４１  プレイヤキャラクタ
４２  食料
４３  敵キャラクタ
５１  入力軌跡表示
６１  指示待ち輪
６２  操作輪
【図１】
2006311966.tif 000003
【図２】
2006311966.tif 000004
【図３】
2006311966.tif 000005
【図４】
2006311966.tif 000006
【図５】
2006311966.tif 000007
【図６】
2006311966.tif 000008
【図７】
2006311966.tif 000009
【図８】
2006311966.tif 000010
【図９】
2006311966.tif 000011
【図１０】
2006311966.tif 000012
【図１１】
2006311966.tif 000013
【図１２】
2006311966.tif 000014
【図１３】
2006311966.tif 000015
【図１４】
2006311966.tif 000016
【図１５】
2006311966.tif 000017
【図１６】
2006311966.tif 000018
【図１７】
2006311966.tif 000019
【図１８】
2006311966.tif 000020
【図１９】
2006311966.tif 000021
【図２０】
2006311966.tif 000022
【図２１】
2006311966.tif 000023
【図２２】
2006311966.tif 000024
【図２３】
2006311966.tif 000025
【図２４】
2006311966.tif 000026
【図２５】
2006311966.tif 000027
【図２６】
2006311966.tif 000028
【図２７】
2006311966.tif 000029